From 9dfddcb21acd47446a612ea64582d45c705548e4 Mon Sep 17 00:00:00 2001 From: zrg <z18737863051@163.com> Date: 星期五, 01 十一月 2024 11:16:51 +0800 Subject: [PATCH] 1 --- WebAPI/Controllers/JHGL/Gy_RoutingBillController.cs | 265 ++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 254 insertions(+), 11 deletions(-) diff --git a/WebAPI/Controllers/JHGL/Gy_RoutingBillController.cs b/WebAPI/Controllers/JHGL/Gy_RoutingBillController.cs index 645165a..acad705 100644 --- a/WebAPI/Controllers/JHGL/Gy_RoutingBillController.cs +++ b/WebAPI/Controllers/JHGL/Gy_RoutingBillController.cs @@ -281,6 +281,30 @@ } else if (OperationType == 3 || ds.Tables[0].Rows.Count != 0) { //淇敼 + + //淇敼 + DataSet dss; + dss = oCN.RunProcReturn("select * from Gy_RoutingBillMain where HInterID=" + HInterID + " and HBillNo='" + HBillNo + "'", "Gy_RoutingBillMain"); + //鍒ゆ柇鏄惁鍙紪杈� + if ((dss.Tables[0].Rows[0]["HChecker"].ToString() != "" && dss.Tables[0].Rows[0]["HChecker"] != null) || (dss.Tables[0].Rows[0]["HBillStatus"].ToString() != "1" && dss.Tables[0].Rows[0]["HBillStatus"].ToString() != "5" && dss.Tables[0].Rows[0]["HBillStatus"].ToString() != "0")) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "姝ゅ崟鎹姸鎬佹湭鍦ㄥ垱寤烘垨閫�鍥烇紝涓嶅厑璁镐慨鏀癸紒"; + objJsonResult.data = 1; + return objJsonResult; + } + dss = oCN.RunProcReturn("select COUNT(*) as number from Sc_ProcessExchangeBillMain where HRoutingBillID = " + HInterID, "Gy_RoutingBillMain"); + //鍒ゆ柇鏄惁鍙紪杈� + if (dss.Tables[0].Rows[0]["number"].ToString() != "0") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "姝ゅ崟鎹凡缁忚寮曠敤锛屼笉鍏佽淇敼锛�"; + objJsonResult.data = 1; + return objJsonResult; + } + oCN.RunProc("update Gy_RoutingBillMain set " + "HDate='" + HDate + "',HYear='" + HYear + "',HPeriod='" + HPeriod + "',HRemark='" + HRemark + "',hupdater='" + HMaker + @@ -348,11 +372,11 @@ //鏄惁鍕鹃�夐粯璁ゅ伐鑹鸿矾绾� - if (HStandard) - { - //璁剧疆榛樿宸ヨ壓璺嚎 - oCN.RunProc("exec h_p_Gy_RoutingBillCheck " + HInterID); //璁剧疆榛樿宸ヨ壓璺嚎 - } + //if (HStandard) + //{ + // //璁剧疆榛樿宸ヨ壓璺嚎 + // oCN.RunProc("exec h_p_Gy_RoutingBillCheck " + HInterID + ",'" + user + "'"); + //} //鍒ゆ柇鏄惁閲嶅宸ュ簭鍙� ds = oCN.RunProcReturn("exec h_p_Gy_RoutingCtrl " + HInterID, "h_p_Gy_RoutingCtrl"); @@ -1246,9 +1270,18 @@ { oCN.RunProc("update Gy_RoutingBillMain set HChecker='" + CurUserName + "',HCheckDate=getdate(),HBillStatus=2 where HInterID=" + HInterID); - //鍒锋柊榛樿宸ヨ壓璺嚎 - oCN.RunProc("exec h_p_Gy_RoutingBillCheck " + HInterID); - + //鑾峰彇绯荤粺鍙傛暟 + string Ret = ""; + if (oSystemParameter.ShowBill(ref Ret)) + { + //鍒ゆ柇瀹㈡埛 + if (oSystemParameter.omodel.WMS_CampanyName == "娣诲悍绉戞妧") //绯荤粺鍙傛暟 + { + //鍒锋柊榛樿宸ヨ壓璺嚎 + oCN.RunProc("exec h_p_Gy_RoutingBillCheck " + HInterID + ",'" + CurUserName + "'"); + } + } + objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "瀹℃牳鎴愬姛"; @@ -1534,7 +1567,7 @@ " LEFT JOIN Gy_RoutingBillMain as po ON a.hmainid = po.HInterID" + " LEFT JOIN Xt_CheckItem as i ON i.HItemID = c.HCheckItemID" + " LEFT JOIN Xt_CheckUserRight as cr ON cr.HCheckItemID = i.HItemID and cr.HCheckFlowInterID = m.HInterID" + - " where po.HBillStatus = 6 and po.HCheckItemNowID = i.HItemID and cr.HUserID = '" + userid + "'"; + " where 宸ュ簭浠g爜 != '9999' and a.HBillSubType<>'SUB' and po.HBillStatus = 6 and po.HCheckItemNowID = i.HItemID and cr.HUserID = '" + userid + "'"; ds = oCN.RunProcReturn(sql, "h_v_Gy_RoutingBillList"); foreach (DataColumn col in ds.Tables[0].Columns) { @@ -1584,7 +1617,7 @@ string sql = " select DISTINCT a.*,c.HItemID as HCheckFlowStatusID,m.HName as 瀹℃壒娴�,c.HCheckFlowID,i.HName as 瀹℃壒椤圭洰鍚嶇О,c.HCheckItemID,c.HChecker as 椤圭洰瀹℃牳浜�,c.HCheckNote as 瀹℃壒娴佸鏍稿缓璁�,c.HCheckDate 瀹℃壒娴佸鏍告棩鏈� from h_v_Gy_RoutingBillList AS a LEFT JOIN Xt_BillCheckFlowStatus AS c ON a.hmainid = c.HBillInterID and a.鍗曟嵁绫诲瀷 = c.HBillTypeID" + " LEFT JOIN Xt_CheckFlowMain as m ON m.HInterID = c.HCheckFlowID" + " LEFT JOIN Xt_CheckItem as i ON i.HItemID = c.HCheckItemID" + - " where c.HCheckDate is not NUll and c.HChecker = '" + user + "'"; + " where 宸ュ簭浠g爜 != '9999' and a.HBillSubType<>'SUB' and c.HCheckDate is not NUll and c.HChecker = '" + user + "'"; ds = oCN.RunProcReturn(sql, "h_v_Gy_RoutingBillList"); foreach (DataColumn col in ds.Tables[0].Columns) { @@ -1622,6 +1655,20 @@ Int64 lngBillKey = 0; lngBillKey = DBUtility.ClsPub.isLong(HInterID); //瀵笻InterID杩涜绫诲瀷鐨勮浆鎹� DAL.ClsGy_RoutingBill oBill = new DAL.ClsGy_RoutingBill(); //瀹炰緥鍖栧崟鎹搷浣滅被锛岀敤浜庤繘琛岀浉鍏虫搷浣� + //鑾峰彇绯荤粺鍙傛暟鍒ゆ柇宸ヨ壓璺嚎鏄惁鍚敤澶氱骇瀹℃壒绂佺敤 + Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter(); + string sReturn = ""; + if (oSystemParameter.ShowBill(ref sReturn) == true) + { + if (oSystemParameter.omodel.Gy_RoutingBill_EnableMultiLevel.ToUpper() == "N") //绯荤粺鍙傛暟 鏈惎鐢ㄨ嚜鍔ㄥ鏍� + { + objJsonResult.code = CodeConstant.FAIL; + objJsonResult.count = CountConstant.FAIL; + objJsonResult.Message = "宸ヨ壓璺嚎鏈惎鐢ㄥ绾у鎵圭鐢�"; + objJsonResult.data = null; + return objJsonResult; + } + } if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo)) //鏍规嵁HInterID鑾峰彇璇ュ崟鎹殑鏁版嵁 { if (oBill.omodel.HBillStatus != 6) @@ -1689,6 +1736,21 @@ // objJsonResult.data = null; // return objJsonResult; //} + + //鑾峰彇绯荤粺鍙傛暟鍒ゆ柇宸ヨ壓璺嚎鏄惁鍚敤澶氱骇瀹℃壒绂佺敤 + Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter(); + string sReturn = ""; + if (oSystemParameter.ShowBill(ref sReturn) == true) + { + if (oSystemParameter.omodel.Gy_RoutingBill_EnableMultiLevel.ToUpper() == "N") //绯荤粺鍙傛暟 鏈惎鐢ㄨ嚜鍔ㄥ鏍� + { + objJsonResult.code = CodeConstant.FAIL; + objJsonResult.count = CountConstant.FAIL; + objJsonResult.Message = "宸ヨ壓璺嚎鏈惎鐢ㄥ绾у鎵圭鐢�"; + objJsonResult.data = null; + return objJsonResult; + } + } //HInterID鏁版嵁鍒ゆ柇 if (HInterID <= 0) @@ -1758,7 +1820,20 @@ // objJsonResult.data = null; // return objJsonResult; //} - + //鑾峰彇绯荤粺鍙傛暟鍒ゆ柇宸ヨ壓璺嚎鏄惁鍚敤澶氱骇瀹℃壒绂佺敤 + Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter(); + string sReturn = ""; + if (oSystemParameter.ShowBill(ref sReturn) == true) + { + if (oSystemParameter.omodel.Gy_RoutingBill_EnableMultiLevel.ToUpper() == "N") //绯荤粺鍙傛暟 鏈惎鐢ㄨ嚜鍔ㄥ鏍� + { + objJsonResult.code = CodeConstant.FAIL; + objJsonResult.count = CountConstant.FAIL; + objJsonResult.Message = "宸ヨ壓璺嚎鏈惎鐢ㄥ绾у鎵圭鐢�"; + objJsonResult.data = null; + return objJsonResult; + } + } //HInterID鏁版嵁鍒ゆ柇 if (HInterID <= 0) @@ -2128,5 +2203,173 @@ } #endregion + #region 宸ヨ壓璺嚎 鍏抽棴鍏跺畠鍗曟嵁 + [Route("Gy_Routing/CloseOther")] + [HttpGet] + public object CloseOther(int HInterID, string CurUserName) + { + DBUtility.ClsPub.CurUserName = CurUserName; + try + { + //鍒ゆ柇鏄惁鏈夊叧闂叾瀹冩潈闄� + if (!DBUtility.ClsPub.Security_Log("Gy_RoutingBill_CloseOther", 1, false, CurUserName)) + { + objJsonResult.code = CodeConstant.FAIL; + objJsonResult.count = CountConstant.FAIL; + objJsonResult.Message = "宸ヨ壓璺嚎鏃犳潈闄愬叧闂叾瀹冨崟鎹�!"; + objJsonResult.data = null; + return objJsonResult; + } + + oCN.BeginTran();//寮�濮嬩簨鍔� + + //鍒ゆ柇鍗曟嵁鏄惁瀛樺湪 + DataSet ds; + string sql = "select * from Gy_RoutingBillMain where HinterID = " + HInterID; + ds = oCN.RunProcReturn(sql, "Gy_RoutingBillMain"); + if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0) + { + //if (!(ds.Tables[0].Rows[0]["HChecker"] != null && ds.Tables[0].Rows[0]["HChecker"].ToString() != "")) + //{ + // objJsonResult.code = "0"; + // objJsonResult.count = 0; + // objJsonResult.Message = "鍗曟嵁鏈鏍�!涓嶅彲浠ヨ鍚敤涓鸿鐗╂枡鐨勯粯璁ゅ伐鑹鸿矾绾�!"; + // objJsonResult.data = null; + // return objJsonResult; + //} + } + else + { + objJsonResult.code = CodeConstant.FAIL; + objJsonResult.count = CountConstant.FAIL; + objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦紝妫�鏌ヨ鍗曟嵁鏄惁宸茬粡琚垹闄�!"; + objJsonResult.data = null; + return objJsonResult; + } + + //鍒锋柊榛樿宸ヨ壓璺嚎 + oCN.RunProc("exec h_p_Gy_RoutingBillClose " + HInterID + ",'" + CurUserName + "'"); + + oCN.Commit();//鎻愪氦浜嬪姟 + objJsonResult.code = CodeConstant.SUCCEED; + objJsonResult.count = CountConstant.SUCCEED; + objJsonResult.Message = "鎵ц鎴愬姛锛�"; + objJsonResult.data = null; + return objJsonResult; ; + } + catch (Exception e) + { + objJsonResult.code = CodeConstant.FAIL; + objJsonResult.count = CountConstant.FAIL; + objJsonResult.Message = "鍏抽棴鍏跺畠澶辫触澶辫触锛�" + e.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } + #endregion + + #region 寰呭け鏁堟姤琛� + /// <summary> + /// 寰呭け鏁堟姤琛� + ///鍙傛暟锛歴tring sql銆� + ///杩斿洖鍊硷細object銆� + /// </summary> + [Route("Gy_RoutingBill/getInvalidityReport")] + [HttpGet] + public object getInvalidityReport(string sWhere, string user) + { + DataSet ds; + try + { + List<object> columnNameList = new List<object>(); + //鍒ゆ柇鏄惁鏈夋煡璇㈡潈闄� + if (!DBUtility.ClsPub.Security_Log("Gy_RoutingBill_Query", 1, false, user)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "寰呭け鏁堟姤琛ㄦ棤鏉冮檺鏌ヨ!"; + objJsonResult.data = null; + return objJsonResult; + } + SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); + ds = oCN.RunProcReturn("select * from h_v_Gy_RoutingBillList where 瀹氶绫诲瀷 = '涓存椂瀹氶' and 澶辨晥鏃堕棿 BETWEEN DATEADD(DAY, -15, GETDATE()) AND GETDATE() " + sWhere + " order by hmainid desc", "h_v_Gy_RoutingBillList"); + 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 = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "娌℃湁杩斿洖浠讳綍璁板綍锛�" + e.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + return GetObjectJson(ds); + } + + #endregion + + #region 宸ヨ壓璺嚎(闆嗕綋) 鎵归噺澶氱骇瀹℃牳 + [Route("Gy_Routing/CheckAllFlow")] + [HttpGet] + public object CheckAll(string HInterIDS, int IsAudit, string CurUserName, string CurUserID) + { + try + { + //澶勭悊瀛楃涓� + if (!string.IsNullOrEmpty(HInterIDS)) + { + int[] idArray = Array.ConvertAll(HInterIDS.Split(','), int.Parse); + // 澶勭悊idArray... + for (int i = 0; i < idArray.Length; i++) + { + objJsonResult = (json)AuditGy_Routing_Flow(idArray[i], IsAudit, CurUserName, CurUserID);//瀹℃牳鎵ц + if (objJsonResult.count == 0) + { + oCN.RollBack(); + objJsonResult.Message += "绗�" + (i + 1) + "琛屽嚭鐜伴棶棰樻棤娉曠户缁畬鎴�"; + return objJsonResult; + } + } + } + else + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "璇烽�夋嫨姝g‘琛�"; + objJsonResult.data = null; + return objJsonResult; + } + + objJsonResult.code = CodeConstant.SUCCEED; + objJsonResult.count = CountConstant.SUCCEED; + objJsonResult.Message = "鎵ц鎴愬姛锛�"; + objJsonResult.data = null; + return objJsonResult; + } + catch (Exception e) + { + oCN.RollBack(); + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "瀹℃牳鎴栧弽瀹℃牳宸ヨ壓璺嚎澶辫触锛�" + e.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } + #endregion + } } \ No newline at end of file -- Gitblit v1.9.1