From f38f94f9a14619d6877eb101058d1405d27b3bd0 Mon Sep 17 00:00:00 2001
From: ch <37327@LLOOCCY>
Date: 星期五, 30 七月 2021 08:35:58 +0800
Subject: [PATCH] 合并

---
 WebAPI/Controllers/品质管理/工序检验单/QC_ProcessCheckBillController.cs |  454 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 454 insertions(+), 0 deletions(-)

diff --git "a/WebAPI/Controllers/\345\223\201\350\264\250\347\256\241\347\220\206/\345\267\245\345\272\217\346\243\200\351\252\214\345\215\225/QC_ProcessCheckBillController.cs" "b/WebAPI/Controllers/\345\223\201\350\264\250\347\256\241\347\220\206/\345\267\245\345\272\217\346\243\200\351\252\214\345\215\225/QC_ProcessCheckBillController.cs"
new file mode 100644
index 0000000..457d2d0
--- /dev/null
+++ "b/WebAPI/Controllers/\345\223\201\350\264\250\347\256\241\347\220\206/\345\267\245\345\272\217\346\243\200\351\252\214\345\215\225/QC_ProcessCheckBillController.cs"
@@ -0,0 +1,454 @@
+锘縰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
+    //鏁版嵁搴撲富琛≦C_ProcessCheckBillMain
+    //鏁版嵁搴撳瓙琛≦C_ProcessCheckBillSub
+    public class QC_ProcessCheckBillController : ApiController
+    {
+        public DBUtility.ClsPub.Enum_BillStatus BillStatus;
+        private json objJsonResult = new json();
+        SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
+        DataSet ds;
+
+        #region 宸ュ簭妫�楠屽崟淇濆瓨
+        /// <summary>
+        /// 鏂板鍗曟嵁-淇濆瓨鎸夐挳
+        ///鍙傛暟锛歴tring sql銆�
+        ///杩斿洖鍊硷細object銆�
+        /// </summary>
+        [Route("QC_ProcessCheckBill/set_SaveBill")]
+        [HttpPost]
+        public object set_SaveBill([FromBody] JObject sMainSub)
+        {
+            var _value = sMainSub["sMainSub"].ToString();
+            string msg1 = _value.ToString();
+            //淇濆瓨鍗曟嵁
+            return objJsonResult = AddBillMain(msg1);
+        }
+
+        public json AddBillMain(string msg1)
+        {
+            string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
+            string msg2 = sArray[0].ToString();
+            string msg3 = sArray[1].ToString();
+            string OperationType = sArray[2].ToString().Trim();
+            bool bResult;
+            try
+            {
+                msg2 = "[" + msg2.ToString() + "]";
+                List<Model.ClsQC_ProcessCheckBillMain> mainList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsQC_ProcessCheckBillMain>>(msg2);
+                DAL.ClsQC_ProcessCheckBill BillNew = new DAL.ClsQC_ProcessCheckBill();
+                //鍒ゆ柇浼氳鏈熸槸鍚﹀悎鐞�
+                string s = "";
+                int sYear = 0;
+                int sPeriod = 0; 
+                DateTime HDate = mainList[0].HDate;//鏃ユ湡
+                if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod(HDate, ref sYear, ref sPeriod, ref s) == false)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = s;
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                BillNew.omodel.HYear = sYear;
+                BillNew.omodel.HPeriod = sPeriod;
+                //鍥哄畾璧嬪��=================================
+                BillNew.omodel.HInterID = mainList[0].HInterID;//閫掑叆type寰楀埌鐨勫崟鎹甀D
+                BillNew.omodel.HBillNo = mainList[0].HBillNo;//閫掑叆type寰楀埌鐨勫崟鎹彿
+                BillNew.omodel.HDate = HDate;
+                BillNew.omodel.HRemark = mainList[0].HRemark;//澶囨敞
+                BillNew.omodel.HMaker = mainList[0].HMaker;
+                BillNew.omodel.HSourceID = ClsPub.isLong(mainList[0].HSourceID);
+                BillNew.omodel.HICMOInterID = ClsPub.isLong(mainList[0].HICMOInterID);
+                BillNew.omodel.HICMOBillNo = ClsPub.isStrNull(mainList[0].HICMOBillNo);
+                BillNew.omodel.HICMOInterID = ClsPub.isLong(mainList[0].HICMOInterID);
+                BillNew.omodel.HProcExchInterID = ClsPub.isLong(mainList[0].HProcExchInterID);
+                BillNew.omodel.HProcExchEntryID = ClsPub.isLong(mainList[0].HProcExchEntryID);
+                BillNew.omodel.HProcExchBillNo = ClsPub.isStrNull(mainList[0].HProcExchBillNo);
+                BillNew.omodel.HMaterID = ClsPub.isLong(mainList[0].HMaterID);
+                BillNew.omodel.HFirstCheckEmp = ClsPub.isLong(mainList[0].HFirstCheckEmp);
+                BillNew.omodel.HCheckerResult = ClsPub.isStrNull(mainList[0].HCheckerResult);
+                BillNew.omodel.HMainSourceInterID = ClsPub.isLong(mainList[0].HMainSourceInterID);
+                BillNew.omodel.HMainSourceEntryID = ClsPub.isLong(mainList[0].HMainSourceEntryID);
+                BillNew.omodel.HMainSourceBillNo = ClsPub.isStrNull(mainList[0].HMainSourceBillNo);
+                BillNew.omodel.HMainSourceBillType = ClsPub.isStrNull(mainList[0].HMainSourceBillType);
+                BillNew.omodel.HBillStatus = 1;
+                BillNew.omodel.HProcID = ClsPub.isLong(mainList[0].HProcID);
+                List<Model.ClsQC_ProcessCheckBillSub> subList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsQC_ProcessCheckBillSub>>(msg3);
+                BillNew.DetailColl = new List<Model.ClsQC_ProcessCheckBillSub>();
+                for (int i = 0; i < subList.ToArray().Length; i++)
+                {
+                    if (i >= 0)//HQty
+                    {
+                        Model.ClsQC_ProcessCheckBillSub oSub = new Model.ClsQC_ProcessCheckBillSub();
+                        oSub.HEntryID = i+1;
+                        oSub.HRemark = ClsPub.isStrNull(subList[i].HRemark);
+                        oSub.HSourceInterID = ClsPub.isLong(subList[i].HSourceInterID);
+                        oSub.HSourceEntryID = ClsPub.isLong(subList[i].HSourceEntryID);
+                        oSub.HSourceBillType = ClsPub.isStrNull(subList[i].HSourceBillType); 
+                        oSub.HSourceBillNo = ClsPub.isStrNull(subList[i].HSourceBillNo);
+                        oSub.HRelationQty = DBUtility.ClsPub.isDoule(subList[i].HRelationQty);
+                        oSub.HRelationMoney = DBUtility.ClsPub.isDoule(subList[i].HRelationMoney);
+                        oSub.HCloseMan = DBUtility.ClsPub.isStrNull(subList[i].HCloseMan);
+                        oSub.HCloseType = DBUtility.ClsPub.isBool(subList[i].HCloseType);
+                        oSub.HQCCheckItemID = DBUtility.ClsPub.isLong(subList[i].HQCCheckItemID);
+                        oSub.HQCStd = DBUtility.ClsPub.isStrNull(subList[i].HQCStd);
+                        oSub.HResult = DBUtility.ClsPub.isStrNull(subList[i].HResult);
+                        oSub.HQCRelValue = DBUtility.ClsPub.isStrNull(subList[i].HQCRelValue);
+                        oSub.HProcCheckTime = HDate;
+                        oSub.HBillNo_bak = DBUtility.ClsPub.isStrNull(mainList[0].HBillNo); 
+                        oSub.HProcCheckEmp = ClsPub.isLong(mainList[0].HFirstCheckEmp);
+
+                        BillNew.DetailColl.Add(oSub);
+                    }
+                    else
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鏃犳槑缁嗚淇℃伅!";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+                //淇濆瓨瀹屾瘯鍚庡鐞�
+                if (OperationType.Equals("1") || OperationType.Equals("2"))
+                {
+                    bResult = BillNew.AddBill(ref ClsPub.sExeReturnInfo);
+                }
+                else
+                {
+                    bResult = BillNew.ModifyBill(BillNew.omodel.HInterID, ref ClsPub.sExeReturnInfo);
+                }
+                //鎻愮ず
+                if (bResult == true)
+                {
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    //objJsonResult.Message = "鍗曟嵁瀛樼洏瀹屾瘯!鍗曟嵁鍙�:" + mainList[0].HBillNo.Trim();
+                    objJsonResult.Message = ClsPub.sExeReturnInfo+"鍗曟嵁鍙�:" + mainList[0].HBillNo.Trim();
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "淇濆瓨澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo;
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+
+        #region 宸ュ簭妫�楠屽崟鏍规嵁婧愬崟绫诲瀷鑾峰彇淇℃伅-婧愬崟涓虹敓浜х姸鎬佷复鏃惰〃锛�3722锛�
+        /// <summary>
+        ///鍙傛暟锛歴tring sql銆�
+        ///杩斿洖鍊硷細object銆�
+        /// </summary>
+        [Route("QC_ProcessCheckBill/get_ICMOBillStatus_Tmp")]
+        [HttpGet]
+        public object get_ICMOBillStatus_Tmp(int HInterID, int HEntryID, string HBillType)
+        {
+            try
+            {
+                if (HInterID == 0 || HBillType.Equals(""))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鍙傛暟涓嶅叏锛岃幏鍙栨簮鍗曚俊鎭け璐ワ紒HInterID锛�" + HInterID + "锛汬EntryID锛�" + HEntryID + "锛汬BillType锛�" + HBillType + "锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                else
+                {
+                    ds = oCN.RunProcReturn("exec h_p_QC_GetInfoByICMOStatusBill " + HInterID + "," + HEntryID + "," + HBillType, "h_p_QC_GetInfoByICMOStatusBill");
+                }
+                if (ds == null || ds.Tables[0].Rows.Count == 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏌ヨ鏁版嵁寮傚父锛岃涓庣鐞嗗憳鑱旂郴锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                else
+                {
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "杩斿洖璁板綍鎴愬姛锛�";
+                    objJsonResult.data = ds.Tables[0];
+                    return objJsonResult;
+                }
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "鏌ヨ鏁版嵁寮傚父锛岃涓庣鐞嗗憳鑱旂郴锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 宸ュ簭妫�楠屽崟Old
+        /// <summary>
+        /// 宸ュ簭妫�楠屽崟鍒楄〃淇敼鎸夐挳鏂规硶
+        ///鍙傛暟锛歴tring sql銆�
+        ///杩斿洖鍊硷細object銆�
+        /// </summary>
+        [Route("QC_ProcessCheckBill/xg")]
+        [HttpGet]
+        public object xg(long HInterID)
+        {
+            try
+            {
+                ds = oCN.RunProcReturn("select HInterID,HBillNo,HProcExchInterID,HProcExchEntryID,HProcExchBillNo" +
+                    ",HMaterID,HProcID,HSourceID,HEmpID,HInStockQty" +
+                    ",HCheckQty,HRightQty,HBadQty,HFirstCheckEmp,HCheckerResult" +
+                    ",HBarCode,HLBatchNo,HCusID,HSortBillNo,HContrctBatchNo" +
+                    ",HProdAreaID,HProdTypeID,HProdStoveNo,HRecipeID,HDiameter1" +
+                    ",HDiameter2,HRoutingInterID,HDrawingDireID,HPackTypeID from QC_ProcessCheckBillMain where HInterID=" + HInterID, "QC_ProcessCheckBillMain");
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "";
+                objJsonResult.data = ds.Tables[0];
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+
+        /// <summary>
+        /// 淇敼鍗曟嵁-淇濆瓨鎸夐挳
+        ///鍙傛暟锛歴tring sql銆�
+        ///杩斿洖鍊硷細object銆�
+        /// </summary>
+        [Route("QC_ProcessCheckBill/AddBill1")]
+        [HttpPost]
+        public object AddBill1([FromBody] JObject oMain)
+        {
+            var _value = oMain["oMain"].ToString();
+            string msg1 = _value.ToString();
+            try
+            {
+                DAL.ClsQC_ProcessCheckBill oProcess = new DAL.ClsQC_ProcessCheckBill();
+
+                msg1 = "[" + msg1.ToString() + "]";
+                List<QC_ProcessCheckBillMain> mainList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<QC_ProcessCheckBillMain>>(msg1);
+                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;
+                long HProExchInterID = mainList[0].HProcExchInterID;
+                long HProExchEntryID = mainList[0].HProcExchEntryID;
+                string HProExchBillNo = mainList[0].HProcExchBillNo;
+                long HMaterID = mainList[0].HMaterID;
+                long HProcID = mainList[0].HProcID;
+                long HSourceID = mainList[0].HSourceID;
+                long HEmpID = mainList[0].HEmpID;
+                double HInStockQty = mainList[0].HInStockQty;
+                double HCheckQty = mainList[0].HCheckQty;
+                double HRightQty = mainList[0].HRightQty;
+                double HBadQty = mainList[0].HBadQty;
+                long HFirstCheckEmp = mainList[0].HFirstCheckEmp;
+                string HCheckerResult = mainList[0].HCheckerResult;
+                string HBarcode = mainList[0].HBarcode;
+                string HLBatchNo = mainList[0].HLBatchNo;
+                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;
+                string HProdStoveNo = mainList[0].HProdStoveNo;
+                long HRecipeID = mainList[0].HRecipeID;
+                double HDiameter1 = mainList[0].HDiameter1;
+                double HDiameter2 = mainList[0].HDiameter2;
+                long HRoutingInterID = mainList[0].HRoutingInterID;
+                long HPackTypeID = mainList[0].HPackTypeID;
+                long HDrawingDireID = mainList[0].HDrawingDireID;
+
+
+
+                //鑻AINDI閲嶅鍒欓噸鏂拌幏鍙�
+                oCN.BeginTran();
+                //涓昏〃
+                oCN.RunProc("Update QC_ProcessCheckBillMain set " +
+                    "HMaterID=" + HMaterID +
+                    ",HSourceID=" + HSourceID +
+                    ",HEmpID=" + HEmpID +
+                    ",HInStockQty=" + HInStockQty +
+                    ",HCheckQty=" + HCheckQty +
+                    ",HRightQty=" + HRightQty +
+                    ",HBadQty=" + HBadQty +
+                    ",HCusID=" + HCusID +
+                    ",HRemark= '" + HRemark + "' Where HInterID=" + HInterID, ref DBUtility.ClsPub.sExeReturnInfo);
+                //淇敼瀛愰」鐩唬鐮�
+                //oCN.RunProc("exec h_p_Gy_UpdateNumber Gy_Department,'" + HNumber + ".','" + this.HOldNumber + ".'", ref DBUtility.ClsPub.sExeReturnInfo);
+                //灏嗕笂绾� 涓洪潪鏈骇
+                //oCN.RunProc("Update Gy_Department set HEndflag=0 where HItemID=" + HInterID, ref DBUtility.ClsPub.sExeReturnInfo);
+                //
+                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.Message;
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+
+
+        /// <summary>
+        /// 宸ュ簭妫�楠屽崟鍒楄〃鍒犻櫎鎸夐挳
+        ///鍙傛暟锛歴tring sql銆�
+        ///杩斿洖鍊硷細object銆�
+        /// </summary>
+        [Route("QC_ProcessCheckBill/Delete_Json")]
+        [HttpGet]
+        public object Delete_Json(long HItemID)
+        {
+            DAL.ClsQC_ProcessCheckBill BillOld = new DAL.ClsQC_ProcessCheckBill();
+            try
+            {
+                if (BillOld.DeleteBill(HItemID, ref ClsPub.sExeReturnInfo) != true)
+                {
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "鍒犻櫎鎴愬姛";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                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;
+            }
+        }
+
+
+        /// <summary>
+        /// 杩斿洖宸ュ簭妫�楠屽崟鍒楄〃
+        ///鍙傛暟锛歴tring sql銆�
+        ///杩斿洖鍊硷細object銆�
+        /// </summary>
+        [Route("QC_ProcessCheckBill/GetProcessCheckBillList")]
+        [HttpGet]
+        public object GetProcessCheckBillList(string sWhere)
+        {
+            try
+            {
+                if (sWhere == null || sWhere.Equals(""))
+                {
+                    ds = oCN.RunProcReturn("select * from h_v_QC_ProcessCheckBillList " + sWhere, "h_v_QC_ProcessCheckBillList");
+                }
+                else
+                {
+                    string sql1 = "select * from h_v_QC_ProcessCheckBillList where 1 = 1 ";
+                    string sql = sql1 + sWhere;
+                    ds = oCN.RunProcReturn(sql, "h_v_QC_ProcessCheckBillList");
+                }
+                if (ds == null || ds.Tables[0].Rows.Count == 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "false锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                else
+                {
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "Sucess锛�";
+                    objJsonResult.data = ds.Tables[0];
+                    return objJsonResult;
+                }
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+        //
+    }
+}
\ No newline at end of file

--
Gitblit v1.9.1