From 4441719f8b9dba3bb533c6b4c43627d1443dc171 Mon Sep 17 00:00:00 2001 From: 王 垚 <1402714037@qq.com> Date: 星期一, 21 十一月 2022 10:32:16 +0800 Subject: [PATCH] 工作日设置 --- WebAPI/Controllers/SCGL/QC_LastPieceCheckBillController.cs | 358 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 358 insertions(+), 0 deletions(-) diff --git a/WebAPI/Controllers/SCGL/QC_LastPieceCheckBillController.cs b/WebAPI/Controllers/SCGL/QC_LastPieceCheckBillController.cs new file mode 100644 index 0000000..851f08f --- /dev/null +++ b/WebAPI/Controllers/SCGL/QC_LastPieceCheckBillController.cs @@ -0,0 +1,358 @@ +锘縰sing Newtonsoft.Json.Linq; +using Pub_Class; +using System; +using System.Collections; +using System.Collections.Generic; +using System.Data; +using System.Data.SqlClient; +using System.Web.Http; +using WebAPI.Models; + +namespace WebAPI.Controllers +{ + //宸ュ簭妫�楠屽崟Controller + public class QC_LastPieceCheckBillController : ApiController + { + public DBUtility.ClsPub.Enum_BillStatus BillStatus; + + private json objJsonResult = new json(); + SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); + DataSet ds; + SQLHelper.ClsCN oCN1 = new SQLHelper.ClsCN(); + DataSet ds1; + + + #region[缂栬緫鏃惰幏鍙栬〃澶存暟鎹甝 + [Route("QC_LastPieceCheckBill/QC_LastPieceCheckBillListCheckDetail")] + [HttpGet] + public ApiResult<DataSet> QC_LastPieceCheckBillListCheckDetail(string HID) + { + if (string.IsNullOrEmpty(HID)) + return new ApiResult<DataSet> { code = -1, msg = "ID涓嶈兘涓虹┖" }; + SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); + + var dataSet = oCN.RunProcReturn("select top 1 * from h_v_QC_LastPieceCheckBillListDetail where hmainid= " + HID + " ", "h_v_QC_LastPieceCheckBillListDetail"); + if (dataSet == null || dataSet.Tables[0].Rows.Count == 0) + return new ApiResult<DataSet> { code = -1, msg = "涓嶅瓨鍦ㄧ粨绠楀崟鍙�" }; + + return new ApiResult<DataSet> { code = 1, msg = "鏌ヨ鎴愬姛", data = dataSet }; + } + #endregion + + #region[缂栬緫鏃惰幏鍙栬〃浣撴暟鎹甝 + [Route("QC_LastPieceCheckBill/QC_LastPieceCheckBillListProjectDetai")] + [HttpGet] + public object QC_LastPieceCheckBillListProjectDetai(string sqlWhere) + { + DataSet ds; + try + { + SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); + string sql1 = "SELECT 鏃ユ湡,鍗曟嵁鍙�,澶囨敞,浜у搧鍐呯爜, 浜у搧鍚嶇О" + + ", 浜у搧鍨嬪彿, 妫�楠屽憳浠g爜, 妫�楠屽憳鍚嶇О, 鍒跺崟浜�, 鍒跺崟鏃ユ湡" + + ", 瀹℃牳浜�, 瀹℃牳鏃ユ湡, 淇敼浜�, 淇敼鏃ユ湡, 鍏抽棴浜�, 鍏抽棴鏃ユ湡 FROM h_v_QC_LastPieceCheckBillListDetail where 1 = 1 "; + string sql = sql1 + sqlWhere; + ds = oCN.RunProcReturn(sql, "h_v_QC_LastPieceCheckBillListDetail"); + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "鑾峰彇淇℃伅鎴愬姛锛�"; + objJsonResult.data = ds.Tables[0]; + } + catch (Exception e) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "娌℃湁杩斿洖浠讳綍璁板綍锛�" + e.ToString(); + objJsonResult.data = null; + } + return objJsonResult; + } + #endregion + + /// <summary> + /// 鏂板鍗曟嵁-淇濆瓨鎸夐挳 + /// 浜у搧鍏ュ簱妫�楠屽崟鍒楄〃 + ///鍙傛暟锛歴tring sql銆� + ///杩斿洖鍊硷細object銆� + /// </summary> + [Route("QC_LastPieceCheckBill/AddBill")] + [HttpPost] + public object AddBill([FromBody] JObject sMainSub) + { + var _value = sMainSub["sMainSub"].ToString(); + string msg1 = _value.ToString(); + oCN.BeginTran(); + //淇濆瓨涓昏〃 + objJsonResult = AddBillMain(msg1); + if (objJsonResult.code == "0") + { + oCN.RollBack(); + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = objJsonResult.Message; + objJsonResult.data = null; + return objJsonResult; + } + oCN.Commit(); + objJsonResult.code = "1"; + objJsonResult.count = 1; + objJsonResult.Message = "鏂板鍗曟嵁鎴愬姛锛�"; + return objJsonResult; + } + + public json AddBillMain(string msg1) + { + string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); + string msg2 = sArray[0].ToString(); + string msg3 = sArray[1].ToString(); + string user = sArray[2].ToString(); + try + { + //鍒ゆ柇鏉冮檺 + if (!DBUtility.ClsPub.Security_Log("QC_POStockInCheckBill_Edit", 1, false, user)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏃犱繚瀛樻潈闄�"; + objJsonResult.data = null; + return objJsonResult; + } + + msg2 = "[" + msg2.ToString() + "]"; + List<QC_LastPieceCheckBillMain> mainList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<QC_LastPieceCheckBillMain>>(msg2); + string BillType = "7507"; + long HInterID = mainList[0].HInterID;//閫掑叆type寰楀埌鐨勫崟鎹甀D + string HBillNo = mainList[0].HBillNo;//閫掑叆type寰楀埌鐨勫崟鎹彿 + DateTime HDate = mainList[0].HDate;//鏃ユ湡 + int HYear = 2021; + double HPeriod = 1; + long HBillStatus = mainList[0].HBillStatus; + long HCheckItemNowID = mainList[0].HCheckItemNowID; + long HCkeckItemNextID = mainList[0].HCheckItemNextID; + long HCheckFlowID = mainList[0].HCheckFlowID; + string HRemark = mainList[0].HRemark;//澶囨敞 + string HBacker = mainList[0].HBacker; + DateTime HBackDate = mainList[0].HBackDate; + string HBackRemark = mainList[0].HBackRemark; + string HChecker = mainList[0].HChecker; + DateTime HCheckDate = mainList[0].HCheckDate; + string HMaker = mainList[0].HMaker; + DateTime HMakeDate = mainList[0].HMakeDate; + string HUpDater = mainList[0].HUpDater; + DateTime HUpDateDate = mainList[0].HUpDateDate; + string HCloseMan = mainList[0].HCloseMan; + DateTime HCloseDate = mainList[0].HCloseDate; + string HCloseType = mainList[0].HCloseType; + string HDeleteMan = mainList[0].HDeleteMan; + DateTime HDeleteDate = mainList[0].HDeleteDate; + string HMainSourceBillType = mainList[0].HMainSourceBillType; + long HMainSourceInterID = mainList[0].HMainSourceInterID; + long HMainSourceEntryID = mainList[0].HMainSourceEntryID; + string HMainSourceBillNo = mainList[0].HMainSourceBillNo; + double HPrintQty = mainList[0].HPrintQty; + long HICMOInterID = mainList[0].HICMOInterID; + string HICMOBillNo = mainList[0].HICMOBillNo; + Double HInStockQty = mainList[0].HInStockQty; + Double HCheckQty = mainList[0].HCheckQty; + Double HRightQty = mainList[0].HRightQTy; + Double HBadQty = mainList[0].HBadQty; + long HMaterID = mainList[0].HMaterID; + long HFirstCheckEmp = mainList[0].HFirstCheckEmp; + string HCheckerResult = mainList[0].HCheckerResult; + long HCheckDept = mainList[0].HCheckDept; + long HCheckDept2 = mainList[0].HCheckDept2; + string HCheckDeptResult = mainList[0].HCheckDeptResult; + string HCheckDeptResult2 = mainList[0].HCheckDeptResult2; + string HBarCode = mainList[0].HBarCode; + string HStoveBatchNo = mainList[0].HStoveBatchNo; + long HCusID = mainList[0].HCusID; + string HSortBillNo = mainList[0].HSortBillNo; + string HContrctBatchNo = mainList[0].HContrctBatchNo; + long HProdAreaID = mainList[0].HProdAreaID; + long HProdTypeID = mainList[0].HProdTypeID; + long HRoutingInterID = mainList[0].HRoutingInterID; + long HDrawingDireID = mainList[0].HDrawingDireID; + long HPackTypeID = mainList[0].HPackTypeID; + + //涓昏〃 + oCN.RunProc("Insert Into QC_LastPieceCheckBillMain " + + "(HBillType,HBillSubType,HInterID,HBillNo,HBillStatus,HDate,HMaker,HMakeDate" + + ",HYear,HPeriod,HRemark" + + ",HICMOInterID,HICMOBillNo,HInStockQTy,HCheckQty,HRightQty" + + ",HBadQty,HMaterID,HFirstCheckEmp,HCheckerResult,HCheckDept" + + ",HCheckDeptResult,HCheckDept2,HCheckDeptResult2,HBarCode,HStoveBatchNo" + + ",HCusID,HSortBillNo,HContrctBatchNo,HProdAreaID,HProdTypeID" + + ",HRoutingInterID,HDrawingDireID,HPackTypeID" + + ") " + + " values('" + BillType + "','" + BillType + "'," + HInterID + ",'" + HBillNo + "','" + HBillStatus + "','" + HDate + "','" + HMaker + "','" + HDate + "'" + + "," + HYear + "," + HPeriod + ",'" + HRemark + "'" + + "," + 0 + ",'" + HICMOBillNo + "'," + HInStockQty + "," + HCheckQty + "," + HRightQty + + "," + HBadQty + "," + HMaterID + "," + HFirstCheckEmp + ",'" + HCheckerResult + "'," + HCheckDept + + ",'" + HCheckDeptResult + "'," + HCheckDept2 + ",'" + HCheckDeptResult2 + "','" + HBarCode + "','" + HStoveBatchNo + "'" + + "," + HCusID + ",'" + HSortBillNo + "','" + HContrctBatchNo + "'," + HProdAreaID + "," + HProdTypeID + + "," + HRoutingInterID + "," + HDrawingDireID + "," + HPackTypeID + + ") "); + + + //淇濆瓨瀛愯〃 + objJsonResult = AddBillSub(msg3, HInterID); + if (objJsonResult.code == "0") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = objJsonResult.Message; + objJsonResult.data = null; + return objJsonResult; + } + + objJsonResult.code = "1"; + objJsonResult.count = 1; + objJsonResult.Message = null; + objJsonResult.data = null; + return objJsonResult; + } + catch (Exception e) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "Exception锛�" + e.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } + + public json AddBillSub(string msg3, long HInterID) + { + List<QC_LastPieceCheckBillSub> subList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<QC_LastPieceCheckBillSub>>(msg3); + for (int i = 0; i < subList.ToArray().Length; i++) + { + long HSourceInterID = 0;//婧愬崟涓诲唴鐮� + long HSourceEntryID = 0;//婧愬崟瀛愬唴鐮� + string HSourceBillNo = "";//婧愬崟鍗曞彿 + string HSourceBillType = "";//婧愬崟绫诲瀷 + double HRelationQty = 0;//鍏宠仈鏁伴噺 + double HRelationMoney = 0;//鍏宠仈閲戦 + + + oCN.RunProc("Insert into QC_LastPieceCheckBillSub " + + "(HInterID,HEntryID,HCloseMan,HRemark,HSourceInterID,HSourceEntryID" + + ",HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" + + ",HQCCheckClassID,HQCCheckItemID,HQCStd,HResult,HQCRelValue" + + ",HProcCheckEmp" + + ") values(" + + HInterID + "," + i + ",'" + subList[i].HCloseMan + "','" + subList[i].HRemark + "'," + HSourceInterID + "," + HSourceEntryID + "" + + ",'" + HSourceBillNo + "','" + HSourceBillType + "'," + HRelationQty + "," + HRelationMoney + + "," + subList[i].HQCCheckClassID + "," + subList[i].HQCCheckItemID + ",'" + subList[i].HQCStd + "','" + subList[i].HResult + "','" + subList[i].HQCRelvalue + "'" + + "," + subList[i].HProCheckEmp + "" + + ") "); + } + + objJsonResult.code = "1"; + objJsonResult.count = 1; + objJsonResult.Message = null; + objJsonResult.data = null; + return objJsonResult; + } + /// <summary> + ///鍒犻櫎鍔熻兘 + ///浜у搧鍏ュ簱妫�楠屽崟 + /// </summary> + /// <returns></returns> + [Route("QC_LastPieceCheckBill/DeltetLastPieceCheckBill")] + [HttpGet] + public object DeltetLastPieceCheckBill(string HInterID,string user) + { + try + { + //鏌ョ湅鏉冮檺 + if (!DBUtility.ClsPub.Security_Log("QC_POStockInCheckBill_Drop", 1, false, user)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏃犲垹闄ゆ潈闄愶紒"; + objJsonResult.data = null; + return objJsonResult; + } + + oCN.BeginTran(); + oCN.RunProc("Delete From QC_LastPieceCheckBillMain where HInterID = " + HInterID); + oCN.RunProc("Delete From QC_LastPieceCheckBillSub where HInterID = " + HInterID); + 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; + } + } + /// <summary> + /// 杩斿洖浜у搧鍏ュ簱妫�楠屽崟鍒楄〃 + ///鍙傛暟锛歴tring sql銆� + ///杩斿洖鍊硷細object銆� + /// </summary> + [Route("QC_LastPieceCheckBill/GetLastPieceCheckBillList")] + [HttpGet] + public object GetLastPieceCheckBillList(string sWhere,string user) + { + try + { + //鏌ョ湅鏉冮檺 + if (!DBUtility.ClsPub.Security_Log("QC_POStockInCheckBill_Query", 1, false, user)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒"; + objJsonResult.data = null; + return objJsonResult; + } + + if (sWhere == null || sWhere.Equals("")) + { + ds = oCN.RunProcReturn("select * from h_v_QC_LastPieceCheckBillListDetail order by hmainid desc ", "h_v_QC_LastPieceCheckBillListDetail"); + } + else + { + string sql1 = "select * from h_v_QC_LastPieceCheckBillListDetail where 1 = 1 "; + string sql = sql1 + sWhere+ " order by hmainid desc "; + ds = oCN.RunProcReturn(sql, "h_v_QC_LastPieceCheckBillListDetail"); + } + + //if (ds.Tables[0].Rows.Count != 0 || ds != null) + //{ + objJsonResult.code = "1"; + objJsonResult.count = 1; + objJsonResult.Message = "Sucess锛�"; + objJsonResult.data = ds.Tables[0]; + 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 = "Exception锛�" + e.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } + + // + } +} \ No newline at end of file -- Gitblit v1.9.1