From 5fccb067ad7dc2dbcdacf8db642aa471488cd8f0 Mon Sep 17 00:00:00 2001 From: yusijie <ysj@hz-kingdee.com> Date: 星期四, 20 二月 2025 15:24:29 +0800 Subject: [PATCH] Merge branch 'master' of http://101.37.171.70:10101/r/MES-WEB-API --- WebAPI/Controllers/CGGL/Cg_POOrderBillController.cs | 255 +++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 237 insertions(+), 18 deletions(-) diff --git a/WebAPI/Controllers/CGGL/Cg_POOrderBillController.cs b/WebAPI/Controllers/CGGL/Cg_POOrderBillController.cs index 7d3fc65..0db6ff1 100644 --- a/WebAPI/Controllers/CGGL/Cg_POOrderBillController.cs +++ b/WebAPI/Controllers/CGGL/Cg_POOrderBillController.cs @@ -25,7 +25,70 @@ SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); DataSet ds; - /// <summary> + #region 閲囪喘璁㈠崟鍒嗛〉鍒楄〃 + [Route("Cg_POOrderBill/page")] + [HttpGet] + public object Cg_POOrderBillPage(string sWhere, string user, int page, int size) + { + DataSet ds; + json res = new json(); + try + { + List<object> columnNameList = new List<object>(); + //鍒ゆ柇鏉冮檺 + if (!DBUtility.ClsPub.Security_Log("Cg_POOrderBillList", 3, false, user)) + { + objJsonResult.code = CodeConstant.FAIL; + objJsonResult.count = CountConstant.FAIL; + objJsonResult.Message = "鎮ㄦ病鏈夎妯″潡鏉冮檺,璇蜂笌绠$悊鍛樿仈绯伙紒"; + objJsonResult.data = null; + return objJsonResult; + } + //鍒ゆ柇鏄惁鏈夐噰璐粡鐞嗘潈闄愶紙瀹夌憺锛� + bool isCgjl = Security_Log("Cg_POOrderBill_PurchasManager", 1, true, user); + if (!isCgjl) + { + sWhere += $" and HEmpID in (select HEmpID from Gy_Czygl where Czymc='{user}' and HEmpID >0 )"; + } + + + sWhere = sWhere.Replace("'", "''"); + if (sWhere == null || sWhere.Equals("")) + { + ds = oCN.RunProcReturn("exec h_p_IF_POOrderBillList " + page + "," + size + ",''", "h_p_IF_POOrderBillList"); + } + else + { + ds = oCN.RunProcReturn("exec h_p_IF_POOrderBillList " + page + "," + size + ",'" + sWhere + "'", "h_p_IF_POOrderBillList"); + } + + //娣诲姞鍒楀悕 + foreach (DataColumn col in ds.Tables[0].Columns) + { + Type dataType = col.DataType; + string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; + columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//鑾峰彇鍒癉ataColumn鍒楀璞$殑鍒楀悕 + } + + res.code = CodeConstant.SUCCEED; + res.count = int.Parse(ds.Tables[1].Rows[0]["count"].ToString()); + res.Message = "Sucess锛�"; + res.list = columnNameList; + res.data = ds.Tables[0]; + return res; + } + catch (Exception e) + { + res.code = CodeConstant.FAIL; + res.count = CountConstant.FAIL; + res.Message = "Exception锛�" + e.ToString(); + res.data = null; + return res; + } + } + #endregion + + /// <summary> /// 杩斿洖閲囪喘璁㈠崟鍒楄〃 ///鍙傛暟锛歴tring sql銆� ///杩斿洖鍊硷細object銆� @@ -746,7 +809,8 @@ string HInnerBillNo = mainList[0].HInnerBillNo;//鍐呴儴鍗曟嵁鍙� long HWHID = mainList[0].HWHID;//浠撳簱 long HProjectID = mainList[0].HProjectID;//浠撳簱 - + string HLinkMan = mainList[0].HLinkMan;//鑱旂郴浜� + string HLinkPhone = mainList[0].HLinkPhone;//鑱旂郴浜虹數璇� List<ClsCg_POOrderBillMain> mainList2 = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClsCg_POOrderBillMain>>(msg2); DateTime dt = DateTime.Now; long HPURCHASEORGID = mainList2[0].HOrgID; @@ -827,20 +891,20 @@ ,HMaker,HMakeDate ,HERPInterID,HERPBillType,HPURCHASEORGID ,HPURCHASERGROUPID,HPROVIDERID,HSETTLEID,HCHARGEID,HBUSINESSTYPE,HPROVIDERADDRESS,HCORRESPONDORGID,HPROVIDERCONTACTID - ,HWHID,HProjectID) + ,HWHID,HProjectID,HLinkMan,HLinkPhone) values(" + HInterID + "," + DateTime.Now.Year + "," + DateTime.Now.Month + ",'" + 1102 + "','" + 1102 + "','" + HDate + "','" + HBillNo + "','" + HBillStatus + "','" + HAddress + "'," + HSSID + ",'" + HSSDate + "'," + HPSStyleID + "," + HSupID + "," + HCurID + "," + HExRate + "," + HEmpID + "," + HManagerID + "," + HDeptID + ",'" + HExplanation + "','" + HRemark + "','" + HInnerBillNo + "','" + HMaker + "',getdate()" + "," + HERPInterID + ",'" + HERPBillType + "'," + HPURCHASEORGID + "," + HPURCHASERGROUPID + "," + HPROVIDERID + "," + HSETTLEID + "," + HCHARGEID + ",'" + HBUSINESSTYPE + "','" + HPROVIDERADDRESS + "'," + HCORRESPONDORGID + "," + HPROVIDERCONTACTID + "," - + HWHID+","+ HProjectID + ")"); + + HWHID+","+ HProjectID +",'"+HLinkMan+"','"+HLinkPhone+"'"+")"); } else if (OperationType == 3 || ds.Tables[0].Rows.Count != 0) { //淇敼 DataSet dss; - dss = oCN.RunProcReturn("select * from h_v_IF_POOrderBillList where hmainid=" + HInterID + " and 鍗曟嵁鍙�='" + HBillNo + "'", "h_v_IF_POOrderBillList"); + dss = oCN.RunProcReturn("select * from h_v_IF_POOrderBillList where hmainid=" + HInterID, "h_v_IF_POOrderBillList"); //鍒ゆ柇鏄惁鍙紪杈� if (dss.Tables[0].Rows[0]["瀹℃牳浜�"].ToString() != "" && dss.Tables[0].Rows[0]["瀹℃牳浜�"] != null) { @@ -859,17 +923,39 @@ return objJsonResult; } oCN.RunProc("update Cg_POOrderBillMain set " + - "HRemark='" + HRemark + "', HUpDater='" + HMaker + "', HUpDateDate=getdate()" + + "HRemark='" + HRemark + "', HUpDater='" + HMaker + "', HUpDateDate=getdate()" + ",HBillNo='" +HBillNo +"'"+ ",HSSID=" + HSSID + ",HPSStyleID=" + HPSStyleID + ",HSupID=" + HSupID + ",HCurID=" + HCurID + ",HExRate=" + HExRate + ",HEmpID=" + HEmpID + ",HManagerID=" + HManagerID + ",HDeptID=" + HDeptID - + ",HAddress='" + HAddress + "',HSSDate='" + HSSDate + "',HWHID="+ HWHID + ",HProjectID="+ HProjectID + " where HInterID=" + HInterID); + + ",HAddress='" + HAddress + "',HSSDate='" + HSSDate + "',HWHID="+ HWHID + ",HProjectID="+ HProjectID +",HLinkMan = '"+HLinkMan+"',HLinkPhone = '"+HLinkPhone+ "' where HInterID=" + HInterID); //鍒犻櫎瀛愯〃 oCN.RunProc("delete from Cg_POOrderBillSub where HInterID='" + HInterID + "'"); } //淇濆瓨瀛愯〃 objJsonResult = AddBillSub(msg3, HInterID, OperationType); - + //鑷姩瀹℃牳璁剧疆 + if ((OperationType == 1 || OperationType == 2)) + { + objJsonResult.HInterID = HInterID.ToString(); //杩斿洖涓籌D + //绯荤粺鍙傛暟 鑷姩瀹℃牳 + string sReturn = ""; + if (oSystemParameter.ShowBill(ref sReturn) == true) + { + if (oSystemParameter.omodel.Cg_POOrderBill_AutoCheck == "Y") //绯荤粺鍙傛暟 鑷姩瀹℃牳 + { + objJsonResult.Verify = "Y"; + } + else + { + objJsonResult.Verify = "N"; + } + } + } + else if (OperationType == 3) + { + objJsonResult.HInterID = HInterID.ToString(); //杩斿洖涓籌D + objJsonResult.Verify = "N"; + } if (objJsonResult.code == "0") { objJsonResult.code = "0"; @@ -956,14 +1042,14 @@ long HBUYERWITHHOLDING = DetailColl2[i].HBUYERWITHHOLDING;//涔版柟浠f墸浠g即 string HMATERIALDESC = DetailColl2[i].HMATERIALDESC == null ? "''" : DetailColl2[i].HMATERIALDESC; //鐗╂枡璇存槑 i++; - if (oSub.HQty <= 0 || oSub.HQty == 0) - { - objJsonResult.code = "0"; - objJsonResult.count = 0; - objJsonResult.Message = "绗�" + i + "琛岋紝鏁伴噺涓嶈兘涓�0鎴栬�呭皬浜�0"; - objJsonResult.data = null; - return objJsonResult; - } + //if (oSub.HQty <= 0 || oSub.HQty == 0) + //{ + // objJsonResult.code = "0"; + // objJsonResult.count = 0; + // objJsonResult.Message = "绗�" + i + "琛岋紝鏁伴噺涓嶈兘涓�0鎴栬�呭皬浜�0"; + // objJsonResult.data = null; + // return objJsonResult; + //} if (oSub.HMaterID == 0) { @@ -1252,7 +1338,7 @@ try { - ds = oCN.RunProcReturn("select * from h_v_IF_POOrderBillList where hmainid =" + HInterID, "h_v_IF_POOrderBillList"); + ds = oCN.RunProcReturn("select * from h_v_IF_POOrderBillEdit where hmainid =" + HInterID, "h_v_IF_POOrderBillList"); if (ds == null || ds.Tables[0].Rows.Count == 0) { objJsonResult.code = "0"; @@ -3031,7 +3117,7 @@ } string sql = "select * from h_v_Cg_POOrderBillQuerySub where hmainid = "+ hmainid; - ds = oCN.RunProcReturn(sql + " order by hsubid desc", "h_v_Cg_POOrderBillQuerySub"); + ds = oCN.RunProcReturn(sql + " order by hsubid ASC", "h_v_Cg_POOrderBillQuerySub"); foreach (DataColumn col in ds.Tables[0].Columns) @@ -3058,6 +3144,139 @@ } } #endregion + + #region 閲囪喘璁㈠崟涓嬫帹鏌ヨ鍒楄〃 + [Route("Cg_POOrderBill/PushList")] + [HttpGet] + public object PushList(string HBillNo, string user) + { + try + { + List<object> columnNameList = new List<object>(); + //鍒ゆ柇鏄惁鏈夋煡璇㈡潈闄� + + if (!DBUtility.ClsPub.Security_Log("Cg_POOrderBillQuery", 1, false, user)) + { + objJsonResult.code = CodeConstant.FAIL; + objJsonResult.count = CountConstant.FAIL; + objJsonResult.Message = "鏃犳潈闄愭煡鐪�!"; + objJsonResult.data = null; + return objJsonResult; + } + string sql = "select * from h_v_IF_POOrderBillList where 鍗曟嵁鍙� = '" + HBillNo + "' and 鐘舵�� = '宸插鏍�' and 鏈叧鑱旀暟閲� > 0"; + + + ds = oCN.RunProcReturn(sql, "h_v_IF_POOrderBillList"); + + if (ds.Tables[0].Rows.Count == 0) + { + objJsonResult.code = CodeConstant.FAIL; + objJsonResult.count = CountConstant.FAIL; + objJsonResult.Message = "鎵句笉鍒扮鍚堟潯浠跺崟鎹�!"; + objJsonResult.data = null; + return objJsonResult; + } + + + foreach (DataColumn col in ds.Tables[0].Columns) + { + Type dataType = col.DataType; + string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; + columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//鑾峰彇鍒癉ataColumn鍒楀璞$殑鍒楀悕 + } + + objJsonResult.code = CodeConstant.SUCCEED; + objJsonResult.count = CountConstant.SUCCEED; + objJsonResult.Message = "Sucess锛�"; + objJsonResult.data = ds.Tables[0]; + objJsonResult.list = columnNameList; + return objJsonResult; + } + catch (Exception e) + { + objJsonResult.code = CodeConstant.FAIL; + objJsonResult.count = CountConstant.FAIL; + objJsonResult.Message = "Exception锛�" + e.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } + #endregion + + #region 鍑哄簱姹囨�� 鏌ヨ + [Route("Xs_SeOrderOutStockSumReport/Xs_SeOrderOutStockSumReportList")] + [HttpGet] + public object Xs_SeOrderOutStockSumReportList(string sWhere) + { + try + { + //鍙嶅簭鍒楀寲浼犻�掔殑鍊� + + ds = oCN.RunProcReturn($"exec h_p_Xs_SeOrderOutStockSumReport " + sWhere + "", "h_p_Xs_SeOrderOutStockSumReport"); + + List<object> listCol = new List<object>(); + foreach (DataColumn col in ds.Tables[0].Columns) + { + Type dataType = col.DataType; + string str = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; + listCol.Add(JsonConvert.DeserializeObject(str)); + } + + objJsonResult.code = "1"; + objJsonResult.count = 1; + objJsonResult.Message = "Sucess锛�"; + objJsonResult.data = ds.Tables[0]; + objJsonResult.list = listCol; + return objJsonResult; + } + catch (Exception e) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "Exception锛�" + e.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } + #endregion + + #region 鍏ュ簱姹囨�� 鏌ヨ + [Route("Cg_PoOrderInStockSumReport/Cg_PoOrderInStockSumReportList")] + [HttpGet] + public object Cg_PoOrderInStockSumReportList(string sWhere) + { + try + { + //鍙嶅簭鍒楀寲浼犻�掔殑鍊� + + ds = oCN.RunProcReturn($"exec h_p_Cg_PoOrderInStockSumReport " + sWhere + "", "h_p_Cg_PoOrderInStockSumReport"); + + List<object> listCol = new List<object>(); + foreach (DataColumn col in ds.Tables[0].Columns) + { + Type dataType = col.DataType; + string str = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; + listCol.Add(JsonConvert.DeserializeObject(str)); + } + + objJsonResult.code = "1"; + objJsonResult.count = 1; + objJsonResult.Message = "Sucess锛�"; + objJsonResult.data = ds.Tables[0]; + objJsonResult.list = listCol; + return objJsonResult; + } + catch (Exception e) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "Exception锛�" + e.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } + #endregion + } } \ No newline at end of file -- Gitblit v1.9.1