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