llj
昨天 a91fdba94705dd25cecccc7a4a5dcc2b3f2c09a6
WebAPI/Controllers/QC_POStockInCheckBillController.cs
@@ -104,7 +104,7 @@
        }
        #endregion
        #region 来料检验单根据源单获取信息-源单为生产订单(1102)
        #region 来料检验单根据源单获取信息-源单为采购订单(1102)
        /// <summary>
        ///参数:string sql。
        ///返回值:object。
@@ -971,6 +971,15 @@
            string OperationType = sArray[2].ToString().Trim();
            string user = sArray[3].ToString();
            string Value = sArray[4].ToString();
            string BadReason = null;
            if (sArray.Length > 4)
            {
                BadReason = sArray[5].ToString();
            }
            if (String.IsNullOrWhiteSpace(BadReason) == true)
            {
                BadReason = "[]";
            }
            bool bResult;
            try
            {
@@ -1003,6 +1012,18 @@
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                // 判断单据是否重复
                DataSet ds2 = oCN.RunProcReturn("select top 1 HInterID from QC_POStockInCheckBillMain where HInterID=" + mainList[0].HInterID, "QC_POStockInCheckBillMain");
                if(ds2.Tables[0].Rows.Count > 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "此单据有误!单据重复提交!";
                    objJsonResult.data = 1;
                    return objJsonResult;
                }
                BillNew.omodel.HYear = sYear;
                BillNew.omodel.HPeriod = sPeriod;
                //固定赋值=================================
@@ -1036,14 +1057,16 @@
                BillNew.omodel.HTakeSampleCheckBillID = ClsPub.isLong(mainList[0].HTakeSampleCheckBillID);
                BillNew.omodel.HTakeSampleCheckBillNo = ClsPub.isStrNull(mainList[0].HTakeSampleCheckBillNo);
                BillNew.omodel.HRemarkSN = ClsPub.isStrNull(mainList[0].HRemarkSN);
                BillNew.omodel.HCheckQty = mainList[0].HCheckQty;
                List<Model.ClsQC_POStockInCheckBillSub> subList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsQC_POStockInCheckBillSub>>(msg3);
                List<Model.ClsQC_POStockInCheckBillSub_BadReason> badReasonList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsQC_POStockInCheckBillSub_BadReason>>(BadReason);
                BillNew.DetailColl = new List<Model.ClsQC_POStockInCheckBillSub>();
                for (int i = 0; i < subList.ToArray().Length; i++)
                {
                    if (i >= 0)//HQty
                    {
                        LogService.Write(subList[i]);
                        Model.ClsQC_POStockInCheckBillSub oSub = new Model.ClsQC_POStockInCheckBillSub();
                        oSub.HEntryID = i + 1;
                        oSub.HRemark = ClsPub.isStrNull(subList[i].HRemark);
@@ -1088,6 +1111,8 @@
                        oSub.HQualityStdID = DBUtility.ClsPub.isLong(subList[i].HQualityStdID);
                        oSub.HInspectMethodID = DBUtility.ClsPub.isLong(subList[i].HInspectMethodID);
                        oSub.HInspectBasisID = DBUtility.ClsPub.isLong(subList[i].HInspectBasisID);
                        oSub.HInspectValQ = subList[i].HInspectValQ;
                        BillNew.DetailColl.Add(oSub);
                    }
                    else
@@ -1097,6 +1122,25 @@
                        objJsonResult.Message = "无明细行信息!";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                }
                for (int i = 0; i < badReasonList.ToArray().Length; i++)
                {
                    if (i >= 0)//HQty
                    {
                        Model.ClsQC_POStockInCheckBillSub_BadReason oSub = new Model.ClsQC_POStockInCheckBillSub_BadReason();
                        oSub.HInterID = mainList[0].HInterID;
                        oSub.HEntryID = i + 1;
                        oSub.HRemark = ClsPub.isStrNull(subList[i].HRemark);
                        oSub.HCloseMan = DBUtility.ClsPub.isStrNull(badReasonList[i].HCloseMan);
                        oSub.HEntryCloseDate = DBUtility.ClsPub.isDate(badReasonList[i].HEntryCloseDate);
                        oSub.HCloseType = DBUtility.ClsPub.isBool(badReasonList[i].HCloseType);
                        oSub.HBillNo_bak = DBUtility.ClsPub.isStrNull(mainList[0].HBillNo);
                        oSub.HQty = badReasonList[i].HQty;
                        oSub.HBadReasonID = badReasonList[i].HBadReasonID;
                        BillNew.DetailCol1_BadReason.Add(oSub);
                    }
                }
@@ -1160,6 +1204,58 @@
        }
        #endregion
        #region [检验单获取 不良原因]
        [Route("QC_POStockInCheckBill_BadReason/getBadReasonList")]
        [HttpGet]
        public object getBadReasonList(Int64 HInterID, string user)
        {
            DataSet ds;
            try
            {
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                List<object> columnNameList = new List<object>();
                ds = oCN.RunProcReturn("select * from QC_POStockInCheckBillSub_BadReason  where  HInterID=" + HInterID, "QC_POStockInCheckBillSub_BadReason");
                //添加列名
                foreach (DataColumn col in ds.Tables[0].Columns)
                {
                    Type dataType = col.DataType;
                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名
                }
                if (ds.Tables[0].Rows.Count > 0)
                {
                    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 = 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 [来料入库检验单]
        /// <summary>
        /// 返回列表