From eacb49d3dbcb2a70605e3400327911a3ea3a88de Mon Sep 17 00:00:00 2001
From: yangle <admin@YINMOU>
Date: 星期三, 12 二月 2025 13:51:50 +0800
Subject: [PATCH] 生产用料清单新增 修改功能完善
---
WebAPI/Controllers/SCGL/Sc_PPBomBillController.cs | 254 ++++++++++++++++++++++++++++++++++++++++++++++++++
Model/生产管理/ClsSc_PPBomBillMain.cs | 1
2 files changed, 255 insertions(+), 0 deletions(-)
diff --git "a/Model/\347\224\237\344\272\247\347\256\241\347\220\206/ClsSc_PPBomBillMain.cs" "b/Model/\347\224\237\344\272\247\347\256\241\347\220\206/ClsSc_PPBomBillMain.cs"
index a89bf0e..c79a7e4 100644
--- "a/Model/\347\224\237\344\272\247\347\256\241\347\220\206/ClsSc_PPBomBillMain.cs"
+++ "b/Model/\347\224\237\344\272\247\347\256\241\347\220\206/ClsSc_PPBomBillMain.cs"
@@ -46,6 +46,7 @@
public Int64 HSeOrderEntrySEQ; //閿�鍞鍗曡鍙�
public Int64 HICMOEntrySEQ; //鐢熶骇璁㈠崟琛屽彿
public string HREQSRC; //闇�姹傛潵婧�
+ public string HICMOBillNo; //闇�姹傛潵婧�
public Int64 HICMOEntryID;
public Int64 HPRDORGID;
diff --git a/WebAPI/Controllers/SCGL/Sc_PPBomBillController.cs b/WebAPI/Controllers/SCGL/Sc_PPBomBillController.cs
index 6465722..5f3ddc6 100644
--- a/WebAPI/Controllers/SCGL/Sc_PPBomBillController.cs
+++ b/WebAPI/Controllers/SCGL/Sc_PPBomBillController.cs
@@ -91,6 +91,50 @@
}
}
+ [Route("Sc_PPBomBill/Editlist")]
+ [HttpGet]
+ public object Editlist(string sWhere)
+ {
+ try
+ {
+ List<object> a = new List<object>();
+ //鍒ゆ柇鏄惁鏈夋煡璇㈡潈闄�
+
+
+ if (sWhere == null || sWhere.Equals(""))
+ {
+ ds = oCN.RunProcReturn("select * from h_v_IF_PPBomBillList order by hmainid desc ", "h_v_IF_PPBomBillList");
+ }
+ else
+ {
+ string sql1 = "select * from h_v_IF_PPBomBillList where 1 = 1 ";
+ string sql = sql1 + sWhere + " order by hmainid desc ";
+ ds = oCN.RunProcReturn(sql, "h_v_IF_PPBomBillList");
+ }
+ foreach (DataColumn col in ds.Tables[0].Columns)//閬嶅巻ds涓涓�涓〃锛圱ables[0]锛夌殑鎵�鏈夊垪锛圕olumns锛夋瘡娆″惊鐜腑锛宑ol鍙橀噺浼氭寔鏈夊綋鍓嶅垪鐨勫紩鐢�
+ {
+ Type dataType = col.DataType; //鑾峰彇褰撳墠鏁版嵁绫诲瀷浼犲叆 鑷畾涔夊彉閲廳atadataType
+ string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; //瀛楃涓叉嫾鎺� // 灏嗗垪鍚嶅拰鏁版嵁绫诲瀷淇℃伅鎷兼帴鎴愪竴涓狫SON鏍煎紡鐨勫瓧绗︿覆
+ a.Add(JsonConvert.DeserializeObject(ColmString));//鑾峰彇鍒癉ataColumn鍒楀璞$殑鍒楀悕
+ }
+
+ objJsonResult.code = "1";
+ objJsonResult.count = 1;
+ objJsonResult.Message = "Sucess锛�";
+ objJsonResult.data = ds.Tables[0];
+ objJsonResult.list = a;
+ return objJsonResult;
+ }
+ catch (Exception e)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "Exception锛�" + e.ToString();
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ }
+
#region 鐢熶骇鐢ㄦ枡娓呭崟鍒楄〃鍒嗛〉鍒楄〃
[Route("Sc_PPBomBill/page")]
@@ -304,6 +348,216 @@
}
#endregion
+ #region 鐢熶骇鐢ㄦ枡鍗� 淇濆瓨/缂栬緫鍔熻兘 鏂版柟娉�
+ [Route("Sc_PPBomBill/sc_PPBomBillAdd")]
+ [HttpPost]
+ public object sc_PPBomBillAdd([FromBody] JObject sMainSub)
+ {
+ var _value = sMainSub["sMainSub"].ToString();
+ string msg1 = _value.ToString();
+ string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
+
+ try
+ {
+ string msg2 = sArray[0].ToString(); //涓昏〃鏁版嵁
+ string msg3 = sArray[1].ToString(); //瀛愯〃鏁版嵁
+ int OperationType = int.Parse(sArray[2].ToString()); // 鏁版嵁绫诲瀷 1娣诲姞 3淇敼
+ string user = sArray[3].ToString();
+
+ //鍒ゆ柇鏄惁鏈夌紪杈戞潈闄�
+ if (!DBUtility.ClsPub.Security_Log("QC_TestSampleCheckBill_Edit", 1, false, user))
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "鏃犵紪杈戞潈闄�!";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+
+ ClsSc_PPBomBillMain list = Newtonsoft.Json.JsonConvert.DeserializeObject<ClsSc_PPBomBillMain>(msg2);
+ string BillType = "3720";
+ string HBillSubType = "3720";
+ long HInterID = list.HInterID;//閫掑叆type寰楀埌鐨勫崟鎹甀D
+ string HBillNo = list.HBillNo;//閫掑叆type寰楀埌鐨勫崟鎹彿
+ int HBillStatus = 1;
+ string HMaker = user;//鍒跺崟浜�
+ int HYear = DateTime.Now.Year;
+ double HPeriod = DateTime.Now.Month;
+ long HICMOInterID = list.HICMOInterID;//浠诲姟鍗旾D
+ long HICMOEntryID = list.HICMOEntryID;//浠诲姟鍗旾D
+ string HICMOBillNo = list.HICMOBillNo;//浠诲姟鍗旾D
+ long HMaterID = list.HMaterID;//浜у搧ID
+ long HUnitID = list.HUnitID;//璁¢噺鍗曚綅
+ long HPRDORGID = list.HPRDORGID;//缁勭粐ID
+ long HICMOEntrySEQ = list.HICMOEntrySEQ;
+ DateTime HDate = list.HDate;
+ double HQty = list.HQty;
+ long HDeptID = list.HDeptID;
+ string HRemark = list.HRemark;
+ string HChecker = "";
+ string HCheckDate = "";
+ string HSeOrderBillNo = "";
+ long HSeOrderInterID = 0;
+ long HSeOrderEntryID = 0;
+ long HENTRUSTORGID = 0;
+ long HPARENTOWNERID = 0;
+ long HPARENTOWNERTYPEID = 0;
+ long HERPInterID = 0;
+ long HSeOrderEntrySEQ = 0;
+ string HERPBillType = "";
+ string HREQSRC = "";
+
+ oCN.BeginTran();
+ if (OperationType== 1)
+ {
+ ds = oCN.RunProcReturn("select * from Sc_PPBomBillMain where HBillNo='" + HBillNo + "'", "Sc_PPBomBillMain");
+ if (ds.Tables[0].Rows.Count == 1)
+ {
+ oCN.RollBack();
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "鍗曟嵁鍙烽噸澶嶏紒";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ //涓昏〃
+ oCN.RunProc(@"Insert Into Sc_PPBomBillMain
+ (HInterID,HYear,HPeriod,HBillType,HBillSubType,HDate,HBillNo,HBillStatus,HICMOInterID
+ ,HICMOEntryID,HMaterID,HUnitID,HQty,HDeptID,HMaker,HMakeDate,HChecker,HCheckDate
+ ,HSeOrderBillNo,HSeOrderInterID,HSeOrderEntryID,HPRDORGID,HENTRUSTORGID,HPARENTOWNERID
+ ,HPARENTOWNERTYPEID,HERPInterID,HERPBillType,HSeOrderEntrySEQ,HICMOEntrySEQ,HREQSRC,HRemark)
+ values(" + HInterID + "," + DateTime.Now.Year + "," + DateTime.Now.Month + ",'" + BillType + "','" +
+ HBillSubType + "','" + HDate + "','" + HBillNo + "','" + HBillStatus + "'," + HICMOInterID +
+ "," + HICMOEntryID + ",'" + HMaterID + "'," + HUnitID + "," + HQty + "," + HDeptID +
+ ",'" + HMaker + "',getdate(),'" + HChecker + "','" + HCheckDate + "','" + HSeOrderBillNo + "'," + HSeOrderInterID + "," + HSeOrderEntryID + "," + HPRDORGID + "," + HENTRUSTORGID + "," + HPARENTOWNERID + "," +
+ HPARENTOWNERTYPEID + "," + HERPInterID + ",'" + HERPBillType + "'," + HSeOrderEntrySEQ + "," + HICMOEntrySEQ + ",'" + HREQSRC + "','"+ HRemark + "')");
+ }
+ else if (OperationType == 3 )
+ { //淇敼
+ oCN.RunProc("update Sc_PPBomBillMain set " +
+ "HRemark='" + HRemark + "', HChecker='" + HMaker + "', HCheckDate=getdate()" +
+ ",HDeptID=" + HDeptID + ",HICMOInterID=" + HICMOInterID + ",HICMOEntryID=" + HICMOEntryID + ",HMaterID=" + HMaterID + ",HUnitID=" + HUnitID + ",HICMOEntrySEQ=" + HICMOEntrySEQ + " ,HQty=" + HQty + " where HInterID=" + HInterID);
+
+ //鍒犻櫎瀛愯〃
+ oCN.RunProc("delete from Sc_PPBomBillSub where HInterID='" + HInterID + "'");
+ }
+ else
+ {
+ oCN.RollBack();
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "鎿嶄綔绫诲瀷鏃犳晥锛�";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+
+ List<ClsSc_PPBomBillSub> DetailColl = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClsSc_PPBomBillSub>>(msg3);
+ int i = 0;
+ foreach (ClsSc_PPBomBillSub oSub in DetailColl)
+ {
+ i++;
+ string HMaterNumber = oSub.HMaterNumber;
+ string HUnitNumber = oSub.HUnitNumber;
+ long HQtyMust = 0;
+ long HSourceInterID = oSub.HSourceInterID;
+ long HSourceEntryID = oSub.HSourceEntryID;
+ long HCHILDSUPPLYORGID = oSub.HCHILDSUPPLYORGID;
+ long HSUPPLYORGID = oSub.HSUPPLYORGID;
+ long HENTRUSTPICKORGID = oSub.HENTRUSTPICKORGID;
+ long HSRCTRANSORGID = oSub.HSRCTRANSORGID;
+ long HGROUPBYOWNERID = oSub.HGROUPBYOWNERID;
+ long HOWNERID = oSub.HOWNERID;
+ long HAuxPropID = oSub.HAuxPropID;
+ long HERPEntryID = oSub.HERPEntryID;
+ long HProcessID = oSub.HProcessID;
+ long HICMOENTRYSEQ = oSub.HICMOENTRYSEQ;
+ long HOPERID = oSub.HOPERID;
+ long HSEQ = i;
+ long HSTOCKSTATUSID = oSub.HSTOCKSTATUSID;
+ long HOPTQUEUE = oSub.HOPTQUEUE;
+ long HLOT = oSub.HLOT;
+ long HRESERVETYPE = oSub.HRESERVETYPE;
+ string HOWNERTYPEID = oSub.HOWNERTYPEID;
+ double HRelationQty = oSub.HRelationQty;
+ double HMoveStockQty = oSub.HMoveStockQty;
+ double HQtyScrap = oSub.HQtyScrap;
+ double HBackRelationQty = oSub.HBackRelationQty;
+ double HNumerator = oSub.HNumerator;
+ double HDenominator = oSub.HDenominator;
+ double HSelPickedQty = oSub.HSelPickedQty;
+ double HSELPRCDRETURNQTY = oSub.HSELPRCDRETURNQTY;
+ string HSourceBillNo = oSub.HSourceBillNo;
+ string HSourceBillType = oSub.HSourceBillType;
+ string HBatchNO = oSub.HBatchNO;
+ string HMTONo = oSub.HMTONo;
+ string HPROJECTNO = oSub.HPROJECTNO;
+
+ if (oSub.HQty <= 0 || oSub.HQty == null)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "绗�" + i + "琛岋紝鏁伴噺涓嶈兘涓�0鎴栬�呭皬浜�0";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+
+ if (oSub.HMaterID == 0)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "绗�" + i + "琛岋紝鐗╂枡涓嶈兘涓虹┖";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+
+ if (oSub.HUnitID == 0)
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "绗�" + i + "琛岋紝璁¢噺鍗曚綅涓嶈兘涓虹┖";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+
+ Int64 NewHEntryID = i;
+
+ oCN.RunProc($@"Insert into Sc_PPBomBillSub
+ (HInterID,HEntryID,HMaterID,HMaterNumber,HUnitID,HUnitNumber,HSPID,HQty,HQtyMust,HWHID,HRemark
+ ,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HICMOInterID,HICMOEntryID,HICMOBillNo
+ ,HCHILDSUPPLYORGID,HSUPPLYORGID,HENTRUSTPICKORGID,HSRCTRANSORGID,HGROUPBYOWNERID,HOWNERID,HOWNERTYPEID
+ ,HRelationQty,HMoveStockQty,HAuxPropID,HBatchNO,HMTONo,HQtyScrap,HERPInterID,HERPEntryID
+ ,HBackRelationQty,HNumerator,HDenominator,HBASEUNITID,HProcessID,HICMOENTRYSEQ,HPROJECTNO
+ ,HOPERID,HSEQ,HSTOCKSTATUSID,HLOT,HOPTQUEUE,HRESERVETYPE,HSelPickedQty,HSELPRCDRETURNQTY)
+ values({HInterID},{NewHEntryID},{oSub.HMaterID},'{HMaterNumber}',{oSub.HUnitID},'{HUnitNumber}',{oSub.HSPID},{(oSub.HQty == null ? 0 : oSub.HQty)}
+ ,{HQtyMust},{oSub.HWHID},'{oSub.HRemark}',{HSourceInterID},{HSourceEntryID},'{HSourceBillNo}','{HSourceBillType}',{HICMOInterID},{HICMOEntryID},'{HICMOBillNo}',{HCHILDSUPPLYORGID},{HSUPPLYORGID},{HENTRUSTPICKORGID},{HSRCTRANSORGID},{HGROUPBYOWNERID},{HOWNERID},'{HOWNERTYPEID}',{HRelationQty},{HMoveStockQty},{HAuxPropID},'{HBatchNO}','{HMTONo}',{HQtyScrap},{HERPInterID},
+ {HERPEntryID},{HBackRelationQty},{HNumerator},{HDenominator},{oSub.HBASEUNITID},{HProcessID},{HICMOENTRYSEQ},'{HPROJECTNO}',{HOPERID},{HSEQ},{HSTOCKSTATUSID},{HLOT},{HOPTQUEUE},{HRESERVETYPE},{HSelPickedQty},{HSELPRCDRETURNQTY})");
+ }
+
+
+
+ oCN.Commit();
+
+ objJsonResult.code = "1";
+ objJsonResult.count = 1;
+ objJsonResult.Message = "鏂板鍗曟嵁鎴愬姛锛�";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ catch (Exception e)
+ {
+ oCN.RollBack();
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "Exception锛�" + e.ToString();
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ }
+
+
+
+ #endregion
+
#region 鐢熶骇鐢ㄦ枡鍗� 淇濆瓨/缂栬緫鍔熻兘
[Route("Sc_PPBomBill/PPBomBillEdit")]
[HttpPost]
--
Gitblit v1.9.1