From be02cd78719168e0717b9e4f1df0db580d5eaa16 Mon Sep 17 00:00:00 2001
From: yangle <admin@YINMOU>
Date: 星期四, 27 四月 2023 14:55:03 +0800
Subject: [PATCH] 生产订单维护: 增加  多行下推 按钮,  根据选中的行 批量下推生成流转卡(工艺路线取物料默认的,没工艺路线的 则不生成。) 。

---
 WebAPI/Controllers/生产管理/生产任务单/Sc_ICMOBillController.cs |  198 +++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 198 insertions(+), 0 deletions(-)

diff --git "a/WebAPI/Controllers/\347\224\237\344\272\247\347\256\241\347\220\206/\347\224\237\344\272\247\344\273\273\345\212\241\345\215\225/Sc_ICMOBillController.cs" "b/WebAPI/Controllers/\347\224\237\344\272\247\347\256\241\347\220\206/\347\224\237\344\272\247\344\273\273\345\212\241\345\215\225/Sc_ICMOBillController.cs"
index 5d76142..11793f0 100644
--- "a/WebAPI/Controllers/\347\224\237\344\272\247\347\256\241\347\220\206/\347\224\237\344\272\247\344\273\273\345\212\241\345\215\225/Sc_ICMOBillController.cs"
+++ "b/WebAPI/Controllers/\347\224\237\344\272\247\347\256\241\347\220\206/\347\224\237\344\272\247\344\273\273\345\212\241\345\215\225/Sc_ICMOBillController.cs"
@@ -873,6 +873,204 @@
         }
         #endregion
 
+        #region 鐢熶骇浠诲姟鍗� 澶氳鎵归噺涓嬫帹
+        [Route("Sc_ICMOBill/Sc_ICMOReportBill_dh")]
+        [HttpGet]
+        public object Sc_ICMOReportBill_dh(string HInterID, string user, int OrganizationID)
+        {
+            try
+            {
+                //鑾峰彇鍗曟嵁ID
+                string[] HBillNo = HInterID.Split(',');
+                string Error = "";
+                int i = 0;
+                foreach (var item in HBillNo)
+                {
+                    string err = "";
+                    DAL.ClsSc_ProcessExchangeBill oBill = new DAL.ClsSc_ProcessExchangeBill();
+                    Model.ClsSc_ProcessExchangeBillMain lsmain = new Model.ClsSc_ProcessExchangeBillMain();
+                    List<Model.ClsSc_ProcessExchangeBillSub> ls = new List<Model.ClsSc_ProcessExchangeBillSub>();
+                    string HBillNOs = "";
+                    string hmainid = item.Split('|')[0];
+                    string HEntryID = item.Split('|')[1];
+
+                    ds = oCN.RunProcReturn("select * from h_v_IF_ICMOBillList where 1 = 1  and hmainid=" + hmainid + " and  HEntryID=" + HEntryID + " order by 鍗曟嵁鍙� desc", "h_v_IF_ICMOBillList");
+                    if (ds.Tables[0].Rows.Count == 0)
+                    {
+                        err = "鏃犳暟鎹�! \n";
+                    }
+                    else
+                    {
+                        string HNumber = ds.Tables[0].Rows[0]["浜у搧浠g爜"].ToString();
+                        HBillNOs = ds.Tables[0].Rows[0]["鍗曟嵁鍙�"].ToString();
+
+                        if (ds.Tables[0].Rows[0]["瀹℃牳浜�"].ToString() == "")
+                        {
+                            err = "鎵�閫夌敓浜ц鍗曚负鏈鏍哥姸鎬侊紝涓嶅厑璁镐笅鎺ㄧ敓鎴愬伐搴忔祦杞崱锛乗n";
+                        }
+
+                        if (ds.Tables[0].Rows[0]["鍏抽棴浜�"].ToString() != "")
+                        {
+                            err = "鎵�閫夌敓浜ц鍗曚负宸插叧闂姸鎬侊紝涓嶅厑璁镐笅鎺ㄧ敓鎴愬伐搴忔祦杞崱锛乗n";
+                        }
+
+                        if (ds.Tables[0].Rows[0]["浣滃簾浜�"].ToString() != "")
+                        {
+                            err = "鎵�閫夌敓浜ц鍗曚负宸蹭綔搴熺姸鎬侊紝涓嶅厑璁镐笅鎺ㄧ敓鎴愬伐搴忔祦杞崱锛乗n";
+                        }
+
+                        ds = oCN.RunProcReturn("select * from h_v_S_Sc_ICMOBillList where hmainid=" + hmainid + " and HEntryID=" + HEntryID + " and HSTOCKINORGID='" + OrganizationID + "'", "h_v_S_Sc_ICMOBillList");
+
+                        if (double.Parse(ds.Tables[0].Rows[0]["娴佽浆鍗℃暟閲�"].ToString()) == 0)
+                        {
+                            err = "鎵�閫夌敓浜ц鍗曞凡鍏ㄩ儴涓嬫帹鐢熸垚宸ュ簭娴佽浆鍗★紝鍓╀綑鍙笅鎺ㄦ暟閲忎负0锛屼笉鍏佽涓嬫帹鐢熸垚宸ュ簭娴佽浆鍗★紒\n";
+                        }
+                        lsmain.HMaker = user;  //鍒跺崟浜�
+                        lsmain.HBillType = "3772";
+                        lsmain.HBillSubType = "3772";
+                        lsmain.HDate = DBUtility.ClsPub.isDate(DateTime.Now.ToString("yyyy-MM-dd"));
+                        lsmain.HYear = DBUtility.ClsPub.isLong(DateTime.Now.Year);
+                        lsmain.HPeriod = DBUtility.ClsPub.isLong(DateTime.Now.Month);
+                        lsmain.HICMOInterID = long.Parse(ds.Tables[0].Rows[0]["hmainid"].ToString());
+                        lsmain.HICMOBillNo = ds.Tables[0].Rows[0]["鐢熶骇璁㈠崟鍙�"].ToString();
+                        lsmain.HICMOEntryID = long.Parse(ds.Tables[0].Rows[0]["HEntryID"].ToString());
+                        lsmain.HOrderProcNO = ds.Tables[0].Rows[0]["璁㈠崟璺熻釜鍙�"].ToString();
+                        lsmain.HMaterID = long.Parse(ds.Tables[0].Rows[0]["hmaterid"].ToString());
+                        lsmain.HMaterID2 = long.Parse(ds.Tables[0].Rows[0]["hmaterid"].ToString());
+                        lsmain.HMaterNumber = ds.Tables[0].Rows[0]["鐗╂枡浠g爜"].ToString();
+                        lsmain.HMaterModel = ds.Tables[0].Rows[0]["瑙勬牸鍨嬪彿"].ToString();
+                        lsmain.HBatchNo = ds.Tables[0].Rows[0]["鎵瑰彿"].ToString();
+                        lsmain.HSplitNo =1;//閮芥槸1
+                        lsmain.HUnitID = long.Parse(ds.Tables[0].Rows[0]["hunitid"].ToString());
+                        lsmain.HUnitNumber = ds.Tables[0].Rows[0]["璁¢噺鍗曚綅浠g爜"].ToString();
+                        lsmain.HPlanQty = double.Parse(ds.Tables[0].Rows[0]["璁″垝鐢熶骇鏁伴噺"].ToString());
+                        lsmain.HQty = double.Parse(ds.Tables[0].Rows[0]["娴佽浆鍗℃暟閲�"].ToString());
+                        lsmain.HPlanBeginDate = DateTime.Parse(ds.Tables[0].Rows[0]["璁″垝寮�宸ユ棩鏈�"].ToString());
+                        lsmain.HPlanEndDate = DateTime.Parse(ds.Tables[0].Rows[0]["璁″垝瀹屽伐鏃ユ湡"].ToString());
+                        lsmain.HWorkShopID = long.Parse(ds.Tables[0].Rows[0]["hdeptid"].ToString());
+                        lsmain.HProdMaterCode = ds.Tables[0].Rows[0]["浜у搧CODE"].ToString();
+                        lsmain.HSeOrderBillNo = ds.Tables[0].Rows[0]["閿�鍞鍗曞彿"].ToString();
+                        lsmain.HCusShortName = ds.Tables[0].Rows[0]["瀹㈡埛绠�绉�"].ToString();
+                        lsmain.HCusNeedMaterial = ds.Tables[0].Rows[0]["瀹㈡埛瑕佹眰鏉愭枡鎴愬垎"].ToString();
+                        lsmain.HPlanSendGoodsDate = ds.Tables[0].Rows[0]["棰勮鍑鸿揣鏃ユ湡"].ToString()==""?DateTime.Now.ToString(): ds.Tables[0].Rows[0]["棰勮鍑鸿揣鏃ユ湡"].ToString();
+                        lsmain.HSellDate = DateTime.Now.ToString();
+                        lsmain.HPRDORGID = OrganizationID;
+                        lsmain.HProdMaterName = ds.Tables[0].Rows[0]["浜у搧鍚嶇О"].ToString();
+                        lsmain.HCusName = ds.Tables[0].Rows[0]["瀹㈡埛鍚嶇О"].ToString();
+                        lsmain.HWorkRemark = ds.Tables[0].Rows[0]["鐢熶骇澶囨敞"].ToString();
+                        lsmain.HImportNote = ds.Tables[0].Rows[0]["閲嶈鎻愮ず"].ToString();
+                        lsmain.HPicNumVer = ds.Tables[0].Rows[0]["鍥惧彿鐗堟湰"].ToString();
+                        lsmain.HPicNumAssemble = ds.Tables[0].Rows[0]["鎬昏鍥惧彿"].ToString();
+                        lsmain.HMaterTexture = ds.Tables[0].Rows[0]["鏉愯川"].ToString();
+                        lsmain.HProductNum = ds.Tables[0].Rows[0]["鎴愬搧缂栧彿"].ToString();
+                        lsmain.HVerNum = ds.Tables[0].Rows[0]["鐗堟湰"].ToString();
+                        //lsmain.HCusNumber = ds.Tables[0].Rows[0]["婧愬崟瀹㈡埛缂栫爜"].ToString();
+                        //lsmain.HPickLabel = ds.Tables[0].Rows[0]["鍖呰鏍囪瘑"].ToString();
+                        //lsmain.HPickLabelNumber = ds.Tables[0].Rows[0]["鍖呰鏍囪瘑缂栫爜"].ToString();
+                        //lsmain.HXTNumber = ds.Tables[0].Rows[0]["鑺綋鐗╂枡浠g爜"].ToString();
+                        //lsmain.HXTModel = ds.Tables[0].Rows[0]["鑺綋瑙勬牸鍨嬪彿"].ToString();
+                        lsmain.HWidth = double.Parse(ds.Tables[0].Rows[0]["HWidth"].ToString());
+                        lsmain.HWeight = double.Parse(ds.Tables[0].Rows[0]["HWeight"].ToString());
+                        lsmain.HAuxUnit = int.Parse(ds.Tables[0].Rows[0]["HAuxUnit"].ToString());
+                        lsmain.HRemark2 = ds.Tables[0].Rows[0]["澶囨敞"].ToString();
+                        lsmain.HEmpID = long.Parse(ds.Tables[0].Rows[0]["HEmpID"].ToString());
+                        lsmain.HCusID = long.Parse(ds.Tables[0].Rows[0]["HCusID"].ToString());
+                        lsmain.HColorRemark = ds.Tables[0].Rows[0]["鏌撹壊瑕佹眰"].ToString();
+                        lsmain.HBLFlag = ds.Tables[0].Rows[0]["HBLFlag"].ToString() == "0" ? false : true;
+                        lsmain.HAuxQty = 0;
+                        lsmain.HAuxUnit = 0;
+
+
+                        ds = oCN.RunProcReturn("select top 1000 * from h_v_Gy_RoutingBillList a left join Gy_Process p on a.hprocid = p.HItemID where 鐗╂枡浠g爜='" + HNumber + "' and 榛樿宸ヨ壓=1", "h_v_Gy_RoutingBillList");
+
+                        if (ds.Tables[0].Rows.Count == 0)
+                        {
+                            err = "鎵�閫夌敓浜ц鍗曞搴旂墿鏂欐湭璁剧疆瀵瑰簲鐨勫伐鑹鸿矾绾匡紝涓嶅厑璁镐笅鎺ㄧ敓鎴愬伐搴忔祦杞崱锛乗n";
+                        }
+                        else
+                        {
+                            lsmain.HRoutingBillID = ds.Tables[0].Rows[0]["hmainid"].ToString();
+                            oBill.omodel = lsmain;
+
+                            int j = 0;
+                            foreach (DataRow row in ds.Tables[0].Rows)
+                            {
+                                if (row["HTProcessFlag"].ToString() == "False")
+                                {
+                                    ClsSc_ProcessExchangeBillSub sub = new ClsSc_ProcessExchangeBillSub();
+                                    sub.HEntryID = j + 1;
+                                    sub.HEntryCloseDate = DBUtility.ClsPub.isDate(DateTime.Now);
+                                    sub.HProcNo = long.Parse(row["宸ュ簭鍙�"].ToString());
+                                    sub.HProcID = long.Parse(row["HProcID"].ToString());
+                                    sub.HProcNumber = row["宸ュ簭浠g爜"].ToString();
+                                    sub.HWorkRemark = row["琛ㄤ綋澶囨敞"].ToString();
+                                    sub.HCenterID = long.Parse(row["HCenterID"].ToString());
+                                    sub.HSupID = long.Parse(row["HSupID"].ToString());
+                                    sub.HSupFlag = row["濮斿鏍囪"].ToString() == "False" ? false : true;
+                                    sub.HQty = lsmain.HQty;
+                                    sub.HTechnologyParameter = row["宸ヨ壓鍙傛暟"].ToString();
+                                    sub.HPicNum = row["鍥剧焊缂栧彿"].ToString();
+                                    sub.HProcCheckNote = row["鏈伐搴忕‘璁よ褰�"].ToString();
+                                    sub.HDeptID = 0;
+                                    sub.HDeptNumber = "";
+                                    sub.HOutPrice = 0;
+                                    sub.HRemark = "";
+                                    sub.HRelationQty_In =0;
+                                    sub.HRelationQty_Out = 0;
+                                    sub.HRelationQty_WWOrder = 0;
+                                    sub.HRelationQty_Bad = 0;
+                                    sub.HOverRate = 0;
+                                    sub.HMaxQty = 0;
+                                    sub.HPassRate = 0;
+                                    sub.HSumPassRate = 0;
+                                    j++;
+                                    oBill.DetailColl.Add(sub);
+                                }
+                            }
+                           
+                        }
+                    }
+
+                    bool bResult = false;
+                    if (err != "")
+                    {
+                        Error += "鐢熶骇璁㈠崟鍗曟嵁鍙�:" + HBillNOs + "\n" + err;
+                    }
+                    else
+                    {
+                        oBill.omodel.HBillNo = DBUtility.ClsPub.CreateBillCode("3772", ref DBUtility.ClsPub.sExeReturnInfo,true);
+                        bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
+                        oBill.DetailColl.Clear();
+
+                        if (!bResult)
+                        {
+                            Error += "淇濆瓨澶辫触,鐢熶骇璁㈠崟鍗曟嵁鍙�:" + HBillNOs + "\n" + err;
+                        }
+                        else
+                        {
+                            i++;
+                        }
+                    }
+                }
+                Error = "鎴愬姛:" + i + "琛�  !!!    " + Error;
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = Error;
+                objJsonResult.data = null;
+                return objJsonResult; ;
+
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "涓嬫帹澶辫触锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
         #region 鐢熶骇浠诲姟鍗曡幏鍙栬溅闂�
         [Route("Sc_ICMOBill/GetHDeptList")]
         [HttpGet]

--
Gitblit v1.9.1