From f76084c29964fb0bd45c7fd8da2d1837ae995608 Mon Sep 17 00:00:00 2001 From: yangle <admin@YINMOU> Date: 星期五, 29 十一月 2024 13:23:40 +0800 Subject: [PATCH] 多人刷卡开工 保存子表 --- WebAPI/Controllers/Kf_ICStockBillMainController.cs | 240 +++++++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 221 insertions(+), 19 deletions(-) diff --git a/WebAPI/Controllers/Kf_ICStockBillMainController.cs b/WebAPI/Controllers/Kf_ICStockBillMainController.cs index 4a81141..c09cec1 100644 --- a/WebAPI/Controllers/Kf_ICStockBillMainController.cs +++ b/WebAPI/Controllers/Kf_ICStockBillMainController.cs @@ -1,4 +1,5 @@ -锘縰sing Newtonsoft.Json.Linq; +锘縰sing Newtonsoft.Json; +using Newtonsoft.Json.Linq; using System; using System.Collections.Generic; using System.Data; @@ -17,38 +18,56 @@ private json objJsonResult = new json(); SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); DataSet ds; - + #region 閿�鍞��璐у崟鏌ヨ [Route("Kf_ICStockBillMain/GetCStockBillList")] [HttpGet] - public object GetCStockBillList(string sWhere) + public object GetCStockBillList(string sWhere,string user) { try { - if (sWhere == null || sWhere.Equals("")) - { - ds = oCN.RunProcReturn("select * from h_v_IF_Kf_ICStockBillMain where 1=1", "h_v_IF_Kf_ICStockBillMain"); - } - else - { - string sql = "select * from h_v_IF_Kf_ICStockBillMain where 1 = 1 " + sWhere; - ds = oCN.RunProcReturn(sql, "h_v_IF_Kf_ICStockBillMain"); - } - if (ds == null || ds.Tables[0].Rows.Count == 0) + List<object> columnNameList = new List<object>(); //瀹氫箟澹版槑鍙橀噺 锛屾妸閫氳繃 new List<object>()鍒涘缓鐨� 瀹炰緥锛岃祴鍊肩粰鍙橀噺 + //鍒ゆ柇鏄惁鏈夋煡璇㈡潈闄� + if (!DBUtility.ClsPub.Security_Log("Kf_ICStockBill_Query", 1, false, user)) { objJsonResult.code = "0"; objJsonResult.count = 0; - objJsonResult.Message = "false锛�"; + objJsonResult.Message = "鏃犳潈闄愭煡璇�!"; objJsonResult.data = null; return objJsonResult; } + + if (sWhere == null || sWhere.Equals("")) + { + ds = oCN.RunProcReturn("select * from h_v_IF_Kf_ICStockBillMain where 1=1 order by hmainid desc", "h_v_IF_Kf_ICStockBillMain"); + } else { - objJsonResult.code = "1"; - objJsonResult.count = 1; - objJsonResult.Message = "Sucess锛�"; - objJsonResult.data = ds.Tables[0]; - return objJsonResult; + string sql = "select * from h_v_IF_Kf_ICStockBillMain where 1 = 1 " + sWhere + " order by hmainid desc"; + ds = oCN.RunProcReturn(sql, "h_v_IF_Kf_ICStockBillMain"); } + 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鏍煎紡鐨勫瓧绗︿覆 + columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//鑾峰彇鍒癉ataColumn鍒楀璞$殑鍒楀悕 + } + //if (ds.Tables[0].Rows.Count != 0 || ds != null) + //{ + objJsonResult.code = "1"; + objJsonResult.count = 1; + objJsonResult.Message = "Sucess锛�"; + objJsonResult.data = ds.Tables[0]; + objJsonResult.list = columnNameList; + return objJsonResult; + //} + //else + //{ + //objJsonResult.code = "0"; + //objJsonResult.count = 0; + //objJsonResult.Message = "鏃犳暟鎹�"; + //objJsonResult.data = null; + //return objJsonResult; + //} } catch (Exception e) { @@ -59,5 +78,188 @@ return objJsonResult; } } + #endregion + + #region 瀹℃牳鍙婂弽瀹℃牳 + [Route("Kf_ICStockBillMain/AuditProcessReportList")] + [HttpGet] + public object AuditProcessReportList(int HInterID, int IsAudit, string CurUserName) + { + + try + { + //IsAudit=1 瀹℃牳锛� IsAudit=2 鍙嶅鏍� + //缂栬緫鏉冮檺 + if (!DBUtility.ClsPub.Security_Log_second("Kf_ICStockBill_Check", 1, false, CurUserName)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏃犲鏍告潈闄愶紒"; + objJsonResult.data = null; + return objJsonResult; + } + + Int64 lngBillKey = 0; + lngBillKey = DBUtility.ClsPub.isLong(HInterID); + if (lngBillKey == 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁ID涓虹┖锛�"; + objJsonResult.data = null; + return objJsonResult; + } + + //杩涜 浼氳鏈熼棿 缁撹处 鐨勫垽鏂拰鎺у埗 + string s = ""; + int sYear = 0; + int sPeriod = 0; + DateTime HDate = DateTime.Now; + if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod(HDate, ref sYear, ref sPeriod, ref s) == false) + { + objJsonResult.Message = s; + return objJsonResult; + } + + + DLL.ClsKf_SellOutBackBill oBill = new DLL.ClsKf_SellOutBackBill(); + if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo)) + { + if (oBill.omodel.HCloseMan != "") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁宸插叧闂�,涓嶈兘杩涜瀹℃牳"; + objJsonResult.data = null; + return objJsonResult; + } + + if (oBill.omodel.HDeleteMan != "") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁宸蹭綔搴�,涓嶈兘杩涜瀹℃牳"; + objJsonResult.data = null; + return objJsonResult; + } + + if (IsAudit == 1) + { + if (oBill.omodel.HBillStatus == 2) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "褰撳墠鍗曟嵁宸插鏍革紝鏃犻渶鍐嶆瀹℃牳"; + objJsonResult.data = null; + return objJsonResult; + } + else + { + string HCheckDate = DateTime.Now.Date.ToString(); + oCN.BeginTran(); + oCN.RunProc(" Update Kf_ICStockBillMain set HChecker='" + CurUserName + "',HCheckDate='" + HCheckDate + "',HBillStatus=2 Where HBillType='1247' and HInterID=" + HInterID); + //瀹℃牳鏇存柊 鍙婃椂搴撳瓨琛� 澧炲姞搴撳瓨 + ds = oCN.RunProcReturn("exec h_KF_UPDateICinventory '" + oBill.omodel.HInterID + "','" + oBill.omodel.HBillType + "','1'", "h_KF_UPDateICinventory"); + + //=========================瀹℃牳鍙嶅鏍稿悗璐熷簱瀛樻帶鍒� + DataSet ds2 = oCN.RunProcReturn("Exec h_p_KF_ICinventoryStockCtrl '" + oBill.omodel.HInterID + "', '" + oBill.omodel.HBillType + "'", "h_p_KF_ICinventoryStockCtrl"); + if (ds2 == null) + { + oCN.RollBack(); + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:" + "搴撳瓨鏇存柊鍚庢帶鍒跺垽鏂け璐�"; + objJsonResult.data = null; + return objJsonResult; + } + if (DBUtility.ClsPub.isStrNull(ds2.Tables[0].Rows[0]["HBack"]) != "0") + { + oCN.RollBack(); + string sReturn = "搴撳瓨鏇存柊澶辫触锛�" + DBUtility.ClsPub.isStrNull(ds2.Tables[0].Rows[0]["HBackRemark"]); + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:" + sReturn; + objJsonResult.data = null; + return objJsonResult; + } + //============================ + + oCN.Commit(); + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "瀹℃牳鎴愬姛锛�"; + objJsonResult.data = 1; + return objJsonResult; + } + } + else + { + if (oBill.omodel.HBillStatus == 1) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "褰撳墠鍗曟嵁鏈鏍革紝鏃犻渶鍙嶅鏍�"; + objJsonResult.data = null; + return objJsonResult; + } + else + { + string HCheckDate = DateTime.Now.Date.ToString(); + oCN.BeginTran(); + oCN.RunProc(" Update Kf_ICStockBillMain set HChecker=' ',HCheckDate=null,HBillStatus=1 Where HBillType='1247' and HInterID=" + HInterID); + //瀹℃牳鏇存柊 鍙婃椂搴撳瓨琛� 鍑忓皯搴撳瓨 + ds = oCN.RunProcReturn("exec h_KF_UPDateICinventory '" + oBill.omodel.HInterID + "','" + oBill.omodel.HBillType + "','2'", "h_KF_UPDateICinventory"); + + //=========================瀹℃牳鍙嶅鏍稿悗璐熷簱瀛樻帶鍒� + DataSet ds2 = oCN.RunProcReturn("Exec h_p_KF_ICinventoryStockCtrl '" + oBill.omodel.HInterID + "', '" + oBill.omodel.HBillType + "'", "h_p_KF_ICinventoryStockCtrl"); + if (ds2 == null) + { + oCN.RollBack(); + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:" + "搴撳瓨鏇存柊鍚庢帶鍒跺垽鏂け璐�"; + objJsonResult.data = null; + return objJsonResult; + } + if (DBUtility.ClsPub.isStrNull(ds2.Tables[0].Rows[0]["HBack"]) != "0") + { + oCN.RollBack(); + string sReturn = "搴撳瓨鏇存柊澶辫触锛�" + DBUtility.ClsPub.isStrNull(ds2.Tables[0].Rows[0]["HBackRemark"]); + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:" + sReturn; + objJsonResult.data = null; + return objJsonResult; + } + //============================ + + oCN.Commit(); + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "鍙嶅鏍告垚鍔燂紒"; + objJsonResult.data = 1; + return objJsonResult; + } + } + } + else + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁鏈壘鍒�"; + objJsonResult.data = null; + return objJsonResult; + } + } + catch (Exception e) + { + 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