From 4476cab7907ced549b116987362ef0c895a18030 Mon Sep 17 00:00:00 2001
From: 王 垚 <1402714037@qq.com>
Date: 星期五, 02 四月 2021 17:23:07 +0800
Subject: [PATCH] 生产计划排程 页面加载 排程按钮功能

---
 src/BLL/Demo.BillView/Demo.BillView.csproj              |    2 
 src/Model/Demo.Model/Demo.Model.csproj                  |    1 
 src/BLL/Demo.BillView/PRD/ProductScheduleShowList.cs    |   92 +++++++++++
 src/BLL/Demo.BillView/PRD/ProductScheduleButtonClick.cs |  297 +++++++++++++++++++++++++++++++++++++
 src/Model/Demo.Model/Model/ENG_WORKCALFULLDATA.cs       |   60 +++++++
 5 files changed, 452 insertions(+), 0 deletions(-)

diff --git a/src/BLL/Demo.BillView/Demo.BillView.csproj b/src/BLL/Demo.BillView/Demo.BillView.csproj
index f7bb938..f5c44dd 100644
--- a/src/BLL/Demo.BillView/Demo.BillView.csproj
+++ b/src/BLL/Demo.BillView/Demo.BillView.csproj
@@ -214,6 +214,8 @@
     <Compile Include="PRD\LogService.cs" />
     <Compile Include="PRD\PODemandPlanListFilter.cs" />
     <Compile Include="PRD\PODemandPlanListLoad.cs" />
+    <Compile Include="PRD\ProductScheduleButtonClick.cs" />
+    <Compile Include="PRD\ProductScheduleShowList.cs" />
     <Compile Include="PRD\ProTardinessDetails.cs" />
     <Compile Include="PRD\ProCompleteAnalysisMateriel.cs" />
     <Compile Include="PRD\ProCompleteAnalysisDetails.cs" />
diff --git a/src/BLL/Demo.BillView/PRD/ProductScheduleButtonClick.cs b/src/BLL/Demo.BillView/PRD/ProductScheduleButtonClick.cs
new file mode 100644
index 0000000..1b0d679
--- /dev/null
+++ b/src/BLL/Demo.BillView/PRD/ProductScheduleButtonClick.cs
@@ -0,0 +1,297 @@
+锘縰sing Kingdee.BOS.Core.DynamicForm;
+using Kingdee.BOS.Core.DynamicForm.PlugIn;
+using Kingdee.BOS.Orm.DataEntity;
+using Kingdee.BOS.Util;
+using System;
+using System.ComponentModel;
+using System.Data;
+using Kingdee.BOS.ServiceHelper;
+using Kingdee.BOS.Core.DynamicForm.PlugIn.Args;
+using Kingdee.BOS.Core.Metadata.EntityElement;
+using Kingdee.BOS.Core.DynamicForm.PlugIn.ControlModel;
+using ZD.Cloud.Logger;
+using Demo.Model.Model;
+using System.Collections.Generic;
+using ZD.Share.Common;
+using System.Linq;
+using Newtonsoft.Json.Linq;
+using ZD.Cloud.WebApi;
+
+namespace Demo.BillView
+{
+    [Description("鐢熶骇鎺掔▼鍗曞姩鎬佽〃鍗�-鎸夐挳鐐瑰嚮浜嬩欢")]
+    [HotUpdate]
+    public class ProductScheduleButtonClick : AbstractDynamicFormPlugIn
+    {
+        public List<ENG_WORKCALFULLDATA> ENG_WORKCALFULLDATA = new List<ENG_WORKCALFULLDATA>();
+        /// <summary>
+        /// 椤甸潰鎸夐挳鐐瑰嚮浜嬩欢
+        /// </summary>
+        /// <param name="e"></param>
+        public override void ButtonClick(ButtonClickEventArgs e)
+        {
+            base.OnLoad(e);
+            try
+            {
+                //閫夋嫨
+                if (e.Key.ToUpper().Equals("FCHOICEBUTTONSC"))
+                {
+                    ShowFDprwEntity();
+                }
+                //鐢熶骇璁㈠崟      鏌ヨ
+                if (e.Key.ToUpper().Equals("FSEARCHBUTTONSC"))
+                {
+                    this.View.ShowErrMessage("鐢熶骇璁㈠崟鍢垮樋!");
+                }
+            }
+            catch (Exception ex)
+            {
+                LogHelper.Error("鐢熶骇鎺掔▼鍗曞姩鎬佽〃鍗�-Button鎸夐挳鐐瑰嚮浜嬩欢 鎶涘嚭寮傚父锛�" + ex.Message.ToString());
+                this.View.ShowErrMessage(ex.Message.ToString());
+
+            }
+        }
+        public override void BarItemClick(BarItemClickEventArgs e)
+        {
+            base.OnLoad(e);
+            try
+            {
+                //鎺掔▼
+                if (e.BarItemKey.ToUpper().Equals("TBPC"))
+                {
+                    ProductSchedul();
+                }
+            }
+            catch (Exception ex)
+            {
+                LogHelper.Error("鐢熶骇鎺掔▼鍗曞姩鎬佽〃鍗�-BarItem鎸夐挳鐐瑰嚮浜嬩欢 鎶涘嚭寮傚父锛�" + ex.Message.ToString());
+                this.View.ShowErrMessage(ex.Message.ToString());
+            }
+        }
+
+        /// <summary>
+        /// 鐢熶骇璁㈠崟鏁版嵁鎺ㄥ埌寰呮帓浠诲姟鏍�
+        /// </summary>
+        public void ShowFDprwEntity()
+        {
+            Entity entity = this.View.BillBusinessInfo.GetEntity("FScddEntity");
+            //鍗曟嵁浣撲俊鎭浆鎹负鍒楄〃闆嗗悎
+            DynamicObjectCollection entityDataObjoct = this.View.Model.GetEntityDataObject(entity);
+            int FChose = 0;
+            foreach (DynamicObject current in entityDataObjoct)
+            {
+                if (Convert.ToBoolean(current["FChose"]))
+                    FChose++;
+            }
+            if (FChose == 0)
+            {
+                this.View.ShowErrMessage("璇烽�夋嫨闇�瑕佸緟鎺掔殑鐢熶骇璁㈠崟鏁版嵁锛�");
+                return;
+            }
+            int i = this.View.Model.GetEntryRowCount("FDprwEntity");
+            foreach (DynamicObject current in entityDataObjoct)
+            {
+                if (!Convert.ToBoolean(current["FChose"]))
+                    continue;
+                this.Model.CreateNewEntryRow("FDprwEntity");
+                // this.Model.SetValue("FSEQ", i + 1, i);//搴忓彿
+                this.Model.SetValue("FProOrderNo", Convert.ToString(current["FProOrderNoSC"]), i);//鐢熶骇璁㈠崟鍙�  
+                this.Model.SetValue("FSRCBILLENTRYSEQ", Convert.ToString(current["FSRCBILLENTRYSEQSC"]), i);//鐢熶骇璁㈠崟鏄庣粏鍙�  
+                this.Model.SetValue("FMATERIALID", Convert.ToString(current["FMATERIALIDSC_ID"]), i);//鐗╂枡
+                this.Model.SetValue("FSCOrderCount", Convert.ToString(current["FSCOrderCountSC"]), i);//鐢熶骇璁㈠崟鏁�
+                this.Model.SetValue("FPlanBeginDate", Convert.ToString(current["FPlanBeginDateSC"]), i);//璁″垝寮�宸ユ棩鏈�
+                this.Model.SetValue("FPlanEndDate", Convert.ToString(current["FPlanEndDateSC"]), i);//璁″垝瀹屽伐鏃ユ湡  
+                this.Model.SetValue("FSalOrderNo", Convert.ToString(current["FSalOrderNoSC"]), i);//閿�鍞鍗曞彿  
+                this.Model.SetValue("FCustormer", Convert.ToString(current["FCustormerSC"]), i);//瀹㈡埛  
+                this.Model.SetValue("FSalOrderCount", Convert.ToString(current["FSalOrderCountSC"]), i);//閿�鍞鍗曟暟閲�  
+                this.Model.SetValue("FSalDeliveryDate", Convert.ToString(current["FSalDeliveryDateSC"]), i);//閿�鍞鍗曚氦璐ф湡  
+                this.Model.SetValue("FOrderRemake", Convert.ToString(current["FOrderRemakeSC"]), i);//璁㈠崟澶囨敞  
+                i++;
+            }
+        }
+
+        /// <summary>
+        /// 浜ц兘璁$畻
+        /// </summary>
+        public void Jscn()
+        {
+            //鏌ヨ鍑洪噸澶嶇敓浜х嚎瀵瑰簲鐨勫伐浣滄棩鍘嗕俊鎭�
+            string _sql = @"
+select FCalUserId,FCalUserType,FShiftId,FIsWorkTime,FDay,FDateStyle,c.FALLHOURS,b.FENTRYID from T_ENG_WORKCAL a
+left join  T_ENG_WORKCALFULLDATA b on a.FID=b.FID
+left join T_ENG_SHIFT c on b.FShiftId =c.FID
+where FDateStyle = 1 and FIsWorkTime = 1
+and FCalUserType ='ENG_RepetitiveProductLine'
+--鏉′欢涓� 宸ヤ綔鏃�+鏄惁鐢熶骇 == 1 ";
+            ENG_WORKCALFULLDATA = DBServiceHelper.ExecuteDataSet(Context, _sql).ToModelList<ENG_WORKCALFULLDATA>();
+
+            var list = new List<object>();
+            Entity entity = this.View.BillBusinessInfo.GetEntity("FDprwEntity");
+            //鍗曟嵁浣撲俊鎭浆鎹负鍒楄〃闆嗗悎
+            DynamicObjectCollection entityDataObjoct = this.View.Model.GetEntityDataObject(entity);
+            var groups = entityDataObjoct.GroupBy(x => x["FSczy_Id"]);//鐢熶骇璧勬簮鍒嗙粍锛堣绠椾紭鍏堢骇锛�
+            foreach (var group in groups)
+            {
+                var orders = group.OrderBy(x => Convert.ToDateTime(x["FPlanEndDate"]));//璁″垝瀹屽伐鏃ユ湡鎺掑簭
+                var seq = 1;
+                foreach (var order in orders)
+                {
+                    //璁$畻浜ц兘
+                    decimal FCapacity = Convert.ToDecimal(order["FCapacity"]);//灏忔椂浜ц兘
+                    decimal FSCOrderCount = Convert.ToDecimal(order["FSCOrderCount"]);//鐢熶骇璁㈠崟鏁�
+                    List<ENG_WORKCALFULLDATA> finalyResult = new List<ENG_WORKCALFULLDATA>();
+                    decimal dayFCapacity = 0;//鏃ヤ骇閲�
+                    List<ENG_WORKCALFULLDATA> _ENG_WORKCALFULLDATA = ENG_WORKCALFULLDATA.Where(x => x.FALLHOURS > 0 && x.FCalUserId == Convert.ToInt32(order["FSczy_Id"])).ToList();
+                    foreach (var item in _ENG_WORKCALFULLDATA)
+                    {
+                        if (FSCOrderCount == 0)
+                            break;
+                        dayFCapacity = FCapacity * item.FALLHOURS;
+                        decimal fqty = dayFCapacity > FSCOrderCount ? FSCOrderCount : dayFCapacity;
+                        finalyResult.Add(new Demo.Model.Model.ENG_WORKCALFULLDATA
+                        {
+                            FDay = item.FDay,
+                            FQTY = fqty
+                        }); ;
+                        //褰撴棩浜ч噺澶т簬鍓╀綑鐢熶骇璁㈠崟鏁伴噺鏃� 鎸夊皬鏃朵骇閲忓幓璁$畻闇�瑕佹椂闂� list<>鍘绘墸闄ょ浉搴旂殑宸ユ椂
+                        if (dayFCapacity > FSCOrderCount)
+                        {
+                            //鏀瑰彉list涓煇涓厓绱犲��
+                            var model = ENG_WORKCALFULLDATA.Where(c => c.FENTRYID == item.FENTRYID).FirstOrDefault();
+                            model.FALLHOURS -= Math.Ceiling(fqty / FCapacity);
+
+                        }
+                        else
+                        {
+                            var model = ENG_WORKCALFULLDATA.Where(c => c.FENTRYID == item.FENTRYID).FirstOrDefault();
+                            model.FALLHOURS = 0;
+                        }
+                        FSCOrderCount = FSCOrderCount - fqty;
+                    }
+
+                    //continue;
+
+                    //鏍规嵁鐢熶骇璁㈠崟鍙峰拰鐗╂枡鏌ヨ鏄惁瀛樺湪鏄庣粏 +鐢熶骇璁㈠崟鏄庣粏琛屽彿
+                    string sql = string.Format(@"
+/*dialect*/
+SELECT T1.FBILLNO,T2.*,t3.FNUMBER as FUnitNumber FROM T_PRD_MO T1
+ LEFT JOIN T_PRD_MOENTRY T2 ON T1.FID = T2.FID
+ join T_BD_UNIT t3 on t2.FUNITID=t3.FUNITID 
+ WHERE T1.FBILLNO = '{0}'  AND T2.FMATERIALID = '{1}' AND T2.FSEQ = '{2}'", Convert.ToString(order["FProOrderNo"]), Convert.ToString(order["FMATERIALID_Id"]), Convert.ToString(order["FSRCBILLENTRYSEQ"]));
+                    DataTable dt = DBServiceHelper.ExecuteDataSet(Context, sql).Tables[0];
+                    string FID = "";//FID 婧愬崟涓诲唴鐮�
+                    string FENTRYID = "";//FENTRYID 婧愬崟瀛愬唴鐮�
+                    string FLOT = "";//FLOT  鎵规
+                    string FQTY = "";//FQTY 鐢熶骇璁㈠崟鏁伴噺
+                    string FBILLNO = "";//FBILLNO 鍘熷崟鍙� 
+                    string FHUnitID = "";//鍗曚綅
+                    if (dt.Rows.Count > 0)
+                    {
+                        FID = dt.Rows[0]["FID"].ToString();
+                        FENTRYID = dt.Rows[0]["FENTRYID"].ToString();
+                        FLOT = dt.Rows[0]["FLOT"].ToString();
+                        FQTY = dt.Rows[0]["FQTY"].ToString();
+                        FBILLNO = dt.Rows[0]["FBILLNO"].ToString();
+                        FHUnitID = dt.Rows[0]["FUnitNumber"].ToString();
+                    }
+
+                    JObject jsonRoot = new JObject();
+                    jsonRoot.Add("Creator", "");
+                    jsonRoot.Add("NeedUpDateFields", new JArray());
+                    jsonRoot.Add("NeedReturnFields", new JArray());
+                    jsonRoot.Add("IsDeleteEntry", "true");
+                    jsonRoot.Add("SubSystemId", "");
+                    jsonRoot.Add("IsVerifyBaseDataField", "");
+
+                    JObject jsonModel = new JObject();
+                    jsonModel.Add("FPreparatDate", DateTime.Now.ToString());//缂栧埗鏃ユ湡
+                    jsonModel.Add("FSRCBILLENTRYSEQ", Convert.ToString(order["FSRCBILLENTRYSEQ"]));//鐢熶骇璁㈠崟鏄庣粏琛屽彿
+                    jsonModel.Add("FSCOrderNo", Convert.ToString(order["FProOrderNo"])); //鐢熶骇璁㈠崟鍙稦SCOrderNo
+                    jsonModel.Add("FHSeOrderBillNo", Convert.ToString(order["FSalOrderNo"]));//閿�鍞鍗曞彿
+                    //jsonModel.Add("FHOrderLev", order["FOrderLevel"].ToString());//璁㈠崟绛夌骇
+                    jsonModel.Add("FHOrderQty", Convert.ToString(order["FSalOrderCount"]));//閿�鍞鍗曟暟閲�
+                    //jsonModel.Add("FHOrderCommitDate", Convert.ToString(order["FDeliveryDate"]));//浜よ揣鏈烪OrderCommitDate
+                    jsonModel.Add("FHOrderNeedQty", FQTY);// 璁㈠崟闇�姹傛暟閲�
+                    jsonModel.Add("FPrdBillNo", FBILLNO); ;//婧愬崟缂栧彿
+                    jsonModel.Add("FPRDMOMAINID", FID); ;//婧愬崟涓诲唴鐮�
+                    jsonModel.Add("FPRDMOENTYID", FENTRYID); ;//婧愬崟瀛愬唴鐮�
+                    jsonModel.Add("FOrderQuantity", Convert.ToString(order["FSCOrderCount"])); ;//鐢熶骇璁㈠崟鏁伴噺
+                    //jsonModel.Add("FDayPlanQuantity", Convert.ToString(order["FDayPlanQuantity"])); ;//鏃ヨ鍒掓暟閲�
+                    //jsonModel.Add("FNoScheduled", Convert.ToString(order["FNoScheduled"])); ;//鏈帓鏁伴噺
+                    jsonModel.Add("FHMaterID", new JObject() { ["Fnumber"] = Convert.ToString(((order["FMATERIALID"]) as DynamicObject)?["Number"].ToString()) });//鐗╂枡
+                    jsonModel.Add("FHSourceID", new JObject() { ["Fnumber"] = Convert.ToString(((order["FSczy"]) as DynamicObject)?["Number"].ToString()) });//鐢熶骇璧勬簮
+                    jsonModel.Add("FHWorkQty", Convert.ToString(order["FCapacity"])); ;//浜ц兘
+                    jsonModel.Add("FHYX", Convert.ToString(order["FPriority"])); ;//浼樺厛绾�
+                    if (Convert.ToInt32(order["FID"]) > 0)
+                        jsonModel.Add("FID", Convert.ToString(order["FID"])); ;//鏃ヨ鍒掑伐鍗旾D
+                    JArray Entry = new JArray();
+                    foreach (var finaly in finalyResult)
+                    {
+                        JObject jsonFPOOrderEntry = new JObject();
+                        jsonFPOOrderEntry.Add("FHMasterDate", finaly.FDay); ;//涓绘棩鏈�
+                        jsonFPOOrderEntry.Add("FHQty ", finaly.FQTY); ;//鏃ヨ鍒掓暟閲�
+                        Entry.Add(jsonFPOOrderEntry);
+                    }
+                    jsonModel.Add("FEntity", Entry);
+                    jsonRoot.Add("Model", jsonModel);
+                    CloudClient cloudClient = new CloudClient("http://localhost//k3cloud/");
+                    var result = cloudClient.Save("Paez_Sc_WorkBillAutoSortBill", jsonRoot.ToString());
+                    JObject saveObj = JObject.Parse(result);
+                    string saveIsSuc = saveObj["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper();
+                    if (saveIsSuc != "TRUE")
+                    {
+                        LogHelper.Error(jsonRoot.ToString());
+                        this.View.ShowErrMessage(jsonRoot.ToString());
+                    }
+                }
+            }
+        }
+        /// <summary>
+        /// 鎺掔▼ 鎸夐挳鐐瑰嚮浜嬩欢
+        /// 鎸夌収浼樺厛绾ф帓浜� 鏃ヤ骇閲�=灏忔椂浜ч噺*宸ヤ綔鏃堕暱 
+        /// </summary>
+        public void ProductSchedul()
+        {
+            try
+            {
+                //鏌ヨ鍑洪噸澶嶇敓浜х嚎瀵瑰簲鐨勫伐浣滄棩鍘嗕俊鎭�
+                string sql = @"
+select FCalUserId,FCalUserType,FShiftId,FIsWorkTime,FDay,FDateStyle,c.FALLHOURS,b.FENTRYID from T_ENG_WORKCAL a
+left join  T_ENG_WORKCALFULLDATA b on a.FID=b.FID
+left join T_ENG_SHIFT c on b.FShiftId =c.FID
+where FDateStyle = 1 and FIsWorkTime = 1
+and FCalUserType ='ENG_RepetitiveProductLine'
+--鏉′欢涓� 宸ヤ綔鏃�+鏄惁鐢熶骇 == 1 ";
+                ENG_WORKCALFULLDATA = DBServiceHelper.ExecuteDataSet(Context, sql).ToModelList<ENG_WORKCALFULLDATA>();
+
+                Entity entity = this.View.BillBusinessInfo.GetEntity("FDprwEntity");
+                //鍗曟嵁浣撲俊鎭浆鎹负鍒楄〃闆嗗悎
+                DynamicObjectCollection entityDataObjoct = this.View.Model.GetEntityDataObject(entity);
+
+                string result = "";
+                foreach (DynamicObject current in entityDataObjoct)
+                {
+                    if (Convert.ToInt32(current["FSczy_Id"]) == 0)
+                        result += "琛屽彿锛�" + Convert.ToString(current["Seq"]) + ",鐢熶骇璧勬簮涓虹┖;";
+                    if (Convert.ToInt32(current["FCapacity"]) == 0)
+                        result += "琛屽彿锛�" + Convert.ToString(current["Seq"]) + ",灏忔椂浜ц兘涓虹┖;";
+
+                }
+                if (result.Length > 0)
+                {
+                    this.View.ShowErrMessage("璇锋鏌ユ暟鎹紝瀛樺湪鐢熶骇璧勬簮涓虹┖鐨勫崟鎹細" + result);
+                    return;
+                }
+
+                Jscn();
+                this.View.ShowMessage("鎿嶄綔鎴愬姛");
+            }
+            catch (Exception ex)
+            {
+                LogHelper.Error("鐢熶骇鎺掔▼鍗曞姩鎬佽〃鍗� 鎺掔▼鎸夐挳鐐瑰嚮鍔熻兘" + ex.Message.ToString());
+            }
+        }
+
+    }
+}
+
diff --git a/src/BLL/Demo.BillView/PRD/ProductScheduleShowList.cs b/src/BLL/Demo.BillView/PRD/ProductScheduleShowList.cs
new file mode 100644
index 0000000..f43bd42
--- /dev/null
+++ b/src/BLL/Demo.BillView/PRD/ProductScheduleShowList.cs
@@ -0,0 +1,92 @@
+锘縰sing Kingdee.BOS.Core.DynamicForm;
+using Kingdee.BOS.Core.DynamicForm.PlugIn;
+using Kingdee.BOS.Orm.DataEntity;
+using Kingdee.BOS.Util;
+using System;
+using System.ComponentModel;
+using System.Data;
+using Kingdee.BOS.ServiceHelper;
+using Kingdee.BOS.Core.DynamicForm.PlugIn.Args;
+using Kingdee.BOS.Core.Metadata.EntityElement;
+using Kingdee.BOS.Core.DynamicForm.PlugIn.ControlModel;
+using ZD.Cloud.Logger;
+
+namespace Demo.BillView
+{
+    [Description("鐢熶骇鎺掔▼鍗曞姩鎬佽〃鍗�-椤甸潰灞曠ず")]
+    [HotUpdate]
+    public class ProductScheduleShowList : AbstractDynamicFormPlugIn
+    {
+        public override void OnLoad(EventArgs e)
+        {
+            try
+            {
+                base.OnLoad(e);
+                //鐣岄潰涓嬫柟鈥滅敓浜ц鍗曗�濈殑椤电锛屽姞杞芥湭鎺掔▼宸插鏍哥殑鐢熶骇璁㈠崟 (娴嬭瘯鏈姞鏉′欢 鏇存敼鍚庡幓闄よ鏍囪)
+                string sql = @"
+SELECT A.FBILLNO,B.FSEQ,B.FMATERIALID,B.FQTY,B.FPlanStartDate,b.FPlanFinishDate,b.FSaleOrderNo,c.FCustId,d.FQTY as FQTYXSDD ,d.FNOTE,d.FPLANDELIVERYDATE,e.FSCOrderNo
+FROM T_PRD_MO a
+LEFT JOIN T_PRD_MOENTRY b on a.FID = B.FID
+left join T_SAL_ORDER c on b.FSaleOrderNo =c.FBILLNO
+left join T_SAL_ORDERENTRY d on c.FID = d.FID and b.FMATERIALID = d.FMATERIALID
+left join Sc_WorkBillSortBillMain e on b.FMATERIALID = e.FHMaterID and b.FSEQ = e.FSRCBILLENTRYSEQ and a.FBILLNO = e.FSCOrderNo
+where ISNULL(e.FSCOrderNo,'')=''";
+                DataTable dt = DBServiceHelper.ExecuteDataSet(this.Context, sql).Tables[0];
+                if (dt.Rows.Count > 0)
+                {
+                    for (int i = 0; i < dt.Rows.Count; i++)
+                    {
+                        this.Model.CreateNewEntryRow("FScddEntity");
+                        this.Model.SetValue("FSEQ", i + 1, i);//搴忓彿
+                        this.Model.SetValue("FProOrderNoSC", dt.Rows[i]["FBILLNO"], i);//鐢熶骇璁㈠崟鍙�  
+                        this.Model.SetValue("FSRCBILLENTRYSEQSC", dt.Rows[i]["FSEQ"], i);//鐢熶骇璁㈠崟鏄庣粏鍙�  
+                        this.Model.SetValue("FSCOrderCountSC", dt.Rows[i]["FQTY"], i);//鐢熶骇璁㈠崟鏁�
+                        this.Model.SetValue("FPlanBeginDateSC", dt.Rows[i]["FPlanStartDate"], i);//璁″垝寮�宸ユ棩鏈�
+                        this.Model.SetValue("FPlanEndDateSC", dt.Rows[i]["FPlanFinishDate"], i);//璁″垝瀹屽伐鏃ユ湡  
+                        this.Model.SetValue("FSalOrderNoSC", dt.Rows[i]["FSaleOrderNo"], i);//閿�鍞鍗曞彿  
+                        this.Model.SetValue("FMATERIALIDSC", dt.Rows[i]["FMATERIALID"], i);//鐗╂枡  
+                        this.Model.SetValue("FCustormerSC", dt.Rows[i]["FCustId"], i);//瀹㈡埛  
+                        this.Model.SetValue("FSalOrderCountSC", dt.Rows[i]["FQTYXSDD"], i);//閿�鍞鍗曟暟閲�  
+                        this.Model.SetValue("FSalDeliveryDateSC", dt.Rows[i]["FPLANDELIVERYDATE"], i);//閿�鍞鍗曚氦璐ф湡
+                        this.Model.SetValue("FOrderRemakeSC", dt.Rows[i]["FNOTE"], i);//璁㈠崟澶囨敞  
+                    }
+                }
+
+                //寰呮帓浠诲姟 鍒濆鍖栧姞杞�
+                sql = @"select * from Sc_WorkBillSortBillMain where FNoScheduled > 0";
+                dt = DBServiceHelper.ExecuteDataSet(this.Context, sql).Tables[0];
+                if (dt.Rows.Count > 0)
+                {
+                    for (int i = 0; i < dt.Rows.Count; i++)
+                    {
+                        this.Model.CreateNewEntryRow("FDprwEntity");
+                        this.Model.SetValue("FSczy", dt.Rows[i]["FHSourceID"], i);//鐢熶骇璧勬簮  
+                        this.Model.SetValue("FProOrderNo", dt.Rows[i]["FSCOrderNo"], i);//鐢熶骇璁㈠崟鍙�  
+                        this.Model.SetValue("FSRCBILLENTRYSEQ", dt.Rows[i]["FSRCBILLENTRYSEQ"], i);//鐢熶骇璁㈠崟鏄庣粏琛屽彿  
+                        this.Model.SetValue("FMATERIALID", dt.Rows[i]["FHMaterID"], i);//鐗╂枡浠g爜  
+                        this.Model.SetValue("FSCOrderCount", dt.Rows[i]["FOrderQuantity"], i);//鐢熶骇璁㈠崟鏁�  
+                        //this.Model.SetValue("FFinishConut", dt.Rows[i]["FNOTE"], i);//瀹屽伐鏁� 锛堟病鏈夊搴斿瓧娈碉級
+                        this.Model.SetValue("FStoredCount", dt.Rows[i]["FHInstockQty"], i);//宸插叆搴撴暟  
+                        this.Model.SetValue("FPriority", dt.Rows[i]["FHYX"], i);//浼樺厛绾�  
+                        this.Model.SetValue("FCapacity", dt.Rows[i]["FHWorkQty"], i);//浜ц兘  
+                        this.Model.SetValue("FPlanBeginDate", dt.Rows[i]["FHPlanBeginDate"], i);//璁″垝寮�濮嬫棩鏈�  
+                        this.Model.SetValue("FPlanEndDate", dt.Rows[i]["FHPlanEndDate"], i);//璁″垝瀹屽伐鏃ユ湡  
+                        this.Model.SetValue("FSalOrderCount", dt.Rows[i]["FHOrderQty"], i);//閿�鍞鍗曟暟閲�  
+                        //this.Model.SetValue("FCustormer", dt.Rows[i]["FNOTE"], i);//瀹㈡埛 锛堟病鏈夊搴斿瓧娈碉級 
+                        this.Model.SetValue("FSalOrderNo", dt.Rows[i]["FHSeOrderBillNo"], i);//閿�鍞鍗曞彿  
+                        //this.Model.SetValue("FSalDeliveryDate", dt.Rows[i]["FNOTE"], i);//閿�鍞鍗曚氦璐ф湡  锛堟病鏈夊搴斿瓧娈碉級
+                        //this.Model.SetValue("FOrderRemake", dt.Rows[i]["FNOTE"], i);//璁㈠崟澶囨敞  锛堟病鏈夊搴斿瓧娈碉級
+                        this.Model.SetValue("FID", dt.Rows[i]["FID"], i);//鏃ヨ鍒掑伐鍗旾D  
+                    }
+                }
+            }
+            catch (Exception ex)
+            {
+                LogHelper.Error("鐢熶骇鎺掔▼鍗曞姩鎬佽〃鍗�-椤甸潰灞曠ず 鎶涘嚭寮傚父锛�" + ex.Message.ToString());
+            }
+
+        }
+
+    }
+}
+
diff --git a/src/Model/Demo.Model/Demo.Model.csproj b/src/Model/Demo.Model/Demo.Model.csproj
index aa79bb3..90f388b 100644
--- a/src/Model/Demo.Model/Demo.Model.csproj
+++ b/src/Model/Demo.Model/Demo.Model.csproj
@@ -48,6 +48,7 @@
     <Compile Include="Model\CompleteAnalysisTempModel.cs" />
     <Compile Include="Model\DayPlanMaterial.cs" />
     <Compile Include="Model\DayPlanModel.cs" />
+    <Compile Include="Model\ENG_WORKCALFULLDATA.cs" />
     <Compile Include="Model\PODemandPlan\DayPlanPpbom.cs" />
     <Compile Include="Model\PODemandPlan\PODemandPlanTemp.cs" />
     <Compile Include="Model\PODemandPlan\PurchaseInventory.cs" />
diff --git a/src/Model/Demo.Model/Model/ENG_WORKCALFULLDATA.cs b/src/Model/Demo.Model/Model/ENG_WORKCALFULLDATA.cs
new file mode 100644
index 0000000..0c7ddad
--- /dev/null
+++ b/src/Model/Demo.Model/Model/ENG_WORKCALFULLDATA.cs
@@ -0,0 +1,60 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Demo.Model.Model
+{
+    /// <summary>
+    /// 鐝埗model
+    /// </summary>
+    public class ENG_WORKCALFULLDATA
+    {
+
+
+        /// <summary>
+        /// 閲嶅鐢熶骇绾縤d
+        /// </summary>
+        public long FCalUserId { get; set; }
+
+        /// <summary>
+        /// 鐝埗ID
+        /// </summary>
+        public long FShiftId { get; set; }
+
+        /// <summary>
+        /// 鏄惁鐢熶骇
+        /// </summary>
+        public long FIsWorkTime { get; set; }
+
+        /// <summary>
+        /// 鏃ユ湡
+        /// </summary>
+        public DateTime FDay { get; set; }
+
+        /// <summary>
+        /// 鏄惁宸ヤ綔鏃�
+        /// </summary>
+        public long FDateStyle { get; set; }
+
+        /// <summary>
+        /// 宸ヤ綔鏃堕暱
+        /// </summary>
+        public decimal FALLHOURS { get; set; }
+
+        /// <summary>
+        /// 鏃ヤ骇閲�
+        /// </summary>
+        public decimal FQTY { get; set; }
+
+        /// <summary>
+        /// 宸ヤ綔鏃ュ巻鏄庣粏琛ㄦ爣璇�
+        /// </summary>
+        public long FENTRYID { get; set; }
+
+        
+
+
+    }
+}

--
Gitblit v1.9.1