From a58c13460d41ff70b1e5852297867b359820b98a Mon Sep 17 00:00:00 2001
From: 沈泽 <211959439@qq.com>
Date: 星期三, 03 十一月 2021 16:58:59 +0800
Subject: [PATCH] 1

---
 WebAPI/Models/QC_POStockInCheckBillSub.cs             |   32 ++++
 WebAPI/Controllers/QC_POStockInCheckBillController.cs |  305 +++++++++++++++++++++++++++++++++++++++++++
 WebAPI/Models/QC_POStockInCheckBill.cs                |   55 +++++++
 WebAPI/WebAPI.csproj                                  |    3 
 4 files changed, 395 insertions(+), 0 deletions(-)

diff --git a/WebAPI/Controllers/QC_POStockInCheckBillController.cs b/WebAPI/Controllers/QC_POStockInCheckBillController.cs
new file mode 100644
index 0000000..55f96fe
--- /dev/null
+++ b/WebAPI/Controllers/QC_POStockInCheckBillController.cs
@@ -0,0 +1,305 @@
+锘縰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
+{
+
+    public class QC_POStockInCheckBillController : ApiController
+    {
+        public DBUtility.ClsPub.Enum_BillStatus BillStatus;
+
+        private json objJsonResult = new json();
+        public DataSet ds = new DataSet();
+        public WebServer webserver = new WebServer();
+        SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
+        //DataSet ds;
+
+
+        /// <summary>
+        /// 杩斿洖鍒楄〃
+        ///鍙傛暟锛歴tring sql銆�
+        ///杩斿洖鍊硷細object銆�
+        /// </summary>
+       [Route("QC_POStockInCheckBill/GetPOStockInCheckBill")]
+        [HttpGet]
+        public object GetPOStockInCheckBill(string sWhere)
+        {
+            try
+            {
+
+                ds = QC_POStockInCheckBill(sWhere);
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "杩斿洖璁板綍鎴愬姛锛�";
+                objJsonResult.data = ds.Tables[0];
+                return objJsonResult;
+            }
+            catch (Exception ex)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "娌℃湁杩斿洖浠讳綍璁板綍锛�" + ex.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+
+        public static DataSet QC_POStockInCheckBill(string sWhere)
+        {
+            if (sWhere == null || sWhere.Equals(""))
+            {
+                return new SQLHelper.ClsCN().RunProcReturn("select * from h_v_QC_Edit_POStockInCheckBillList order by 鏃ユ湡 desc", "h_v_QC_Edit_POStockInCheckBillList");
+            }
+            else
+            {
+                string sql1 = "select * from h_v_QC_Edit_POStockInCheckBillList where 1 = 1 ";
+                string sql = sql1 + sWhere + "order by 鏃ユ湡 desc";
+                return new SQLHelper.ClsCN().RunProcReturn(sql, "h_v_QC_Edit_POStockInCheckBillList");
+            }
+
+        }
+       
+        #region[缂栬緫鏃惰幏鍙栬〃澶存暟鎹甝
+        [Route("QC_POStockInCheckBill/QC_POStockInCheckBillListCheckDetail")]
+        [HttpGet]
+        public ApiResult<DataSet> QC_POStockInCheckBillListCheckDetail(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_Edit_POStockInCheckBillList  where hmainid= " + HID + " ", "h_v_QC_Edit_POStockInCheckBillList");
+            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_POStockInCheckBill/QC_POStockInCheckBillListProjectDetai")]
+        [HttpGet]
+        public object QC_POStockInCheckBillListProjectDetai(string sqlWhere)
+        {
+            DataSet ds;
+            try
+            {
+                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
+                string sql1 = "SELECT 鏃ユ湡,鍗曟嵁鍙�,琛ㄥご澶囨敞, 渚涘簲鍟嗗悕绉�,渚涘簲鍟嗕唬鐮�,浜у搧鍐呯爜" +
+                    ", 浜у搧鍚嶇О, 浜у搧鍨嬪彿, 妫�楠屽憳浠g爜, 妫�楠屽憳鍚嶇О, 鍒跺崟浜�, 鍒跺崟鏃ユ湡, 瀹℃牳浜�" +
+                    ", 瀹℃牳鏃ユ湡, 淇敼浜�, 淇敼鏃ユ湡, 鍏抽棴浜�, 鍏抽棴鏃ユ湡 FROM h_v_QC_Edit_POStockInCheckBillList where 1 = 1 ";
+                string sql = sql1 + sqlWhere;
+                ds = oCN.RunProcReturn(sql, "h_v_QC_Edit_POStockInCheckBillList");
+                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_POStockInCheckBill/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 = "鏂板鍗曟嵁鎴愬姛锛�";
+            objJsonResult.data = null;
+            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();
+            try
+            {
+                msg2 = "[" + msg2.ToString() + "]";
+                List<QC_POStockInCheckBill> mainList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<QC_POStockInCheckBill>>(msg2);
+                int HYear = 2021;
+                double HPeriod = 1;
+                string HBillType = "7503";
+                string HBillSubType = "7503";
+                long HInterID = mainList[0].HInterID;//閫掑叆type寰楀埌鐨勫崟鎹甀D
+                DateTime HDate = mainList[0].HDate;//鏃ユ湡
+                string HBillNo = mainList[0].HBillNo;//閫掑叆type寰楀埌鐨勫崟鎹彿
+                long HBillStatus = mainList[0].HBillStatus;
+                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;
+                long HSupID = mainList[0].HSupID;
+                long HMaterID = mainList[0].HMaterID;
+                decimal HInStockQty = mainList[0].HInStockQty;
+                decimal HCheckQty = mainList[0].HCheckQty;
+                decimal HRightQty = mainList[0].HRightQty;
+                decimal HBadQty = mainList[0].HBadQty;
+                long HFirstCheckEmp = mainList[0].HFirstCheckEmp;
+                string HCheckerResult = mainList[0].HCheckerResult;
+                string HSteelStoveNo = mainList[0].HSteelStoveNo;
+                string HSteelCompReport = mainList[0].HSteelCompReport;
+                string HAspect = mainList[0].HAspect;
+                string HSize = mainList[0].HSize;
+
+
+                //涓昏〃
+                oCN.RunProc("Insert Into QC_POStockInCheckBillMain " +
+                "(HBillType,HBillSubType,HInterID,HBillNo,HBillStatus,HDate,HMaker,HMakeDate" +
+                ",HYear,HPeriod,HRemark" +
+                ",HSupID,HMaterID,HInStockQty,HCheckQty,HRightQty" +
+                ",HBadQty,HFirstCheckEmp,HCheckerResult" +
+                ",HSteelStoveNo,HSteelCompReport,HAspect,HSize" +
+                ") " +
+                " values('" + HBillType + "','" + HBillSubType + "'," + HInterID.ToString() + ",'" + HBillNo + "'," + HBillStatus.ToString() + ",'" + HDate + "','" + DBUtility.ClsPub.CurUserName + "',getdate()" +
+                "," + HYear.ToString() + "," + HPeriod.ToString() + ",'" + HRemark + "'" +
+                "," + HSupID.ToString() + "," + HMaterID.ToString() + "," + HInStockQty.ToString() + "," + HCheckQty.ToString() + "," + HRightQty.ToString() +
+                "," + HBadQty.ToString() + "," + HFirstCheckEmp.ToString() + ",'" + HCheckerResult + "'" +
+                ",'" + HSteelStoveNo + "','" + HSteelCompReport + "','" + HAspect + "','" + HSize + "'" +
+                ") ");
+
+                //淇濆瓨瀛愯〃
+                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_POStockInCheckBillSub> subList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<QC_POStockInCheckBillSub>>(msg3);
+            for (int i = 0; i < subList.ToArray().Length; i++)
+            {
+                string HBillNo_bak = subList[0].HBillNo_bak;
+                long HEntryID = subList[0].HEntryID;//宸ユID
+                string HCloseMan = subList[0].HCloseMan;
+                long HCloseType = subList[0].HCloseType;
+                string HRemark = subList[0].HRemark;
+                long HSourceInterID = subList[0].HSourceInterID;
+                long HSourceEntryID = subList[0].HSourceEntryID;
+                string HSourceBillNo = subList[0].HSourceBillNo;
+                string HSourceBillType = subList[0].HSourceBillType;
+                decimal HRelationQty = subList[0].HRelationQty;
+                decimal HRelationMoney = subList[0].HRelationMoney;
+                long HQCCheckClassID = subList[0].HQCCheckClassID;
+                long HQCCheckItemID = subList[0].HQCCheckItemID;
+                string HQCStd = subList[0].HQCStd;
+                string HResult = subList[0].HResult;
+                string HQCRelValue = subList[0].HQCRelValue;
+                long HProcCheckEmp = subList[0].HProcCheckEmp;
+                DateTime HProcCheckTime = subList[0].HProcCheckTime;
+
+                string sql = "Insert into QC_POStockInCheckBillSub " +
+                      " (HInterID,HBillNo_bak,HEntryID,HCloseMan" +
+                      ",HEntryCloseDate,HCloseType,HRemark,HSourceInterID" +
+                      ",HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" +
+                      ",HQCCheckClassID,HQCCheckItemID,HQCStd,HResult" +
+                      ",HQCRelValue,HProcCheckEmp,HProcCheckTime" +
+                      ") values("
+                      + HInterID.ToString() + ",'" + HBillNo_bak + "'," + HEntryID.ToString() + ",'" + HCloseMan + "'" +
+                      ",getdate()," + HCloseType + ",'" + HRemark + "'," + HSourceInterID.ToString() +
+                      "," +HSourceEntryID.ToString() + ",'" + HSourceBillNo + "','" + HSourceBillType + "'," + HRelationQty.ToString() + "," + HRelationMoney.ToString() +
+                      "," + HQCCheckClassID.ToString() + "," + HQCCheckItemID.ToString() + ",'" + HQCStd + "','" + HResult + "'" +
+                      ",'" + HQCRelValue + "'," + HProcCheckEmp.ToString() + ",'" + HProcCheckTime + "'" +
+                      ") ";
+            oCN.RunProc(sql);
+            }
+
+            objJsonResult.code = "1";
+            objJsonResult.count = 1;
+            objJsonResult.Message = null;
+            objJsonResult.data = null;
+            return objJsonResult;
+        }
+        /// <summary>
+        ///鍒犻櫎鍔熻兘
+        /// </summary>
+        /// <returns></returns>
+        [Route("QC_POStockInCheckBill/DeltetPOStockInCheckBill")]
+        [HttpGet]
+        public object DeltetPOStockInCheckBill(string HInterID)
+        {
+            try
+            {
+                oCN.BeginTran();
+                oCN.RunProc("Delete From QC_POStockInCheckBillMain where HInterID = " + HInterID);
+                oCN.RunProc("Delete From QC_POStockInCheckBillSub 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;
+            }
+        }
+
+        //
+    }
+}
\ No newline at end of file
diff --git a/WebAPI/Models/QC_POStockInCheckBill.cs b/WebAPI/Models/QC_POStockInCheckBill.cs
new file mode 100644
index 0000000..76a2ea4
--- /dev/null
+++ b/WebAPI/Models/QC_POStockInCheckBill.cs
@@ -0,0 +1,55 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Web;
+
+namespace WebAPI.Models
+{
+    public class QC_POStockInCheckBill
+    {
+        public long HYear { get; set; }
+        public long HPeriod { get; set; }
+        public string HBillType { get; set; }
+        public string HBillSubType { get; set; }
+        public long HInterID { get; set; }
+        public DateTime HDate { get; set; }
+        public string HBillNo { get; set; }
+        public long HBillStatus { get; set; }
+        public long HCheckItemNowID { get; set; }
+        public long HCheckItemNextID { get; set; }
+        public long HCheckFlowID { get; set; }
+        public string HRemark { get; set; }
+        public string HBacker { get; set; }
+        public DateTime HBackDate { get; set; }
+        public string HBackRemark { get; set; }
+        public string HChecker { get; set; }
+        public DateTime HCheckDate { get; set; }
+        public string HMaker { get; set; }
+        public DateTime HMakeDate { get; set; }
+        public string HUpDater { get; set; }
+        public DateTime HUpDateDate { get; set; }
+        public string HCloseMan { get; set; }
+        public DateTime HCloseDate { get; set; }
+        public string HDeleteMan { get; set; }
+        public DateTime HDeleteDate { get; set; }
+        public string HMainSourceBillType { get; set; }
+        public long HMainSourceInterID { get; set; }
+        public long HMainSourceEntryID { get; set; }
+        public string HMainSourceBillNo { get; set; }
+        public long HPrintQty { get; set; }
+        public long HSupID { get; set; }
+        public long HMaterID { get; set; }
+        public decimal HInStockQty { get; set; }
+        public decimal HCheckQty { get; set; }
+        public decimal HRightQty { get; set; }
+        public decimal HBadQty { get; set; }
+        public long HFirstCheckEmp { get; set; }
+        public string HCheckerResult { get; set; }
+        public string HSteelStoveNo { get; set; }
+        public string HSteelCompReport { get; set; }
+        public string HAspect { get; set; }
+        public string HSize { get; set; }
+
+
+    }
+}
\ No newline at end of file
diff --git a/WebAPI/Models/QC_POStockInCheckBillSub.cs b/WebAPI/Models/QC_POStockInCheckBillSub.cs
new file mode 100644
index 0000000..aa2b9f7
--- /dev/null
+++ b/WebAPI/Models/QC_POStockInCheckBillSub.cs
@@ -0,0 +1,32 @@
+锘縰sing System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Web;
+
+namespace WebAPI.Models
+{
+    public class QC_POStockInCheckBillSub
+    {
+        public long HInterID { get; set; }
+        public long HEntryID { get; set; }
+        public string HBillNo_bak { get; set; }
+        public string HCloseMan { get; set; }
+        public DateTime HEntryCloseDate { get; set; }
+        public long HCloseType { get; set; }
+        public string HRemark { get; set; }
+        public long HSourceInterID { get; set; }
+        public long HSourceEntryID { get; set; }
+        public string HSourceBillNo { get; set; }
+        public string HSourceBillType { get; set; }
+        public decimal HRelationQty { get; set; }
+        public decimal HRelationMoney { get; set; }
+        public long HQCCheckClassID { get; set; }
+        public long HQCCheckItemID { get; set; }
+        public string HQCStd { get; set; }
+        public string HQCRelValue { get; set; }
+        public string HResult { get; set; }
+        public long HProcCheckEmp { get; set; }
+        public DateTime HProcCheckTime { get; set; }
+
+    }
+}
\ No newline at end of file
diff --git a/WebAPI/WebAPI.csproj b/WebAPI/WebAPI.csproj
index b9a1b09..1c014c0 100644
--- a/WebAPI/WebAPI.csproj
+++ b/WebAPI/WebAPI.csproj
@@ -342,6 +342,7 @@
     <Compile Include="Controllers\Open_PrintTemController.cs" />
     <Compile Include="Controllers\Pay_OtherBalBillController.cs" />
     <Compile Include="Controllers\Pay_GroupBalBillController.cs" />
+    <Compile Include="Controllers\QC_POStockInCheckBillController.cs" />
     <Compile Include="Controllers\Pay_WorkTimesBillController.cs" />
     <Compile Include="Controllers\Pay_SingleBalBillController.cs" />
     <Compile Include="Controllers\ProductionOrderController.cs" />
@@ -456,6 +457,8 @@
     <Compile Include="Models\ClsGy_ProcPrice.cs" />
     <Compile Include="Models\Gy_WorkType.cs" />
     <Compile Include="Models\Gy_WorkPayType.cs" />
+    <Compile Include="Models\QC_POStockInCheckBillSub.cs" />
+    <Compile Include="Models\QC_POStockInCheckBill.cs" />
     <Compile Include="Models\Xt_DataDictionary_Proc.cs" />
     <Compile Include="Models\Xt_DataDictionary_View.cs" />
     <Compile Include="Models\Xt_DataDictionary_Table.cs" />

--
Gitblit v1.9.1