1
yusijie
2024-08-01 1bf3dc43e38f780864b7030f2a8aca8bf01abc05
1
2个文件已添加
40个文件已修改
2224 ■■■■■ 已修改文件
DAL/仓库管理/ClsKf_SellOutBillForLayUI.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DAL/应付管理/ClsYF_PayMentBill.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DAL/质检管理/ClsQC_FirstPieceCheckBill.cs 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DAL/质检管理/ClsQC_PatrolProcCheckOtherBill.cs 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DAL/质检管理/ClsQC_ProcessCheckBill.cs 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DAL/质检管理/ClsQC_StockCheckBill.cs 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DAL/采购管理/ClsCg_POOrderBill.cs 91 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DAL/采购管理/ClsCg_PayableBill.cs 143 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DAL/销售管理/ClsXs_ReceivableBill.cs 151 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DBUtility/业务单据/ClsXt_BaseBill.cs 71 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Model/质检管理/ClsQC_FirstPieceCheckBillMain.cs 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Model/质检管理/ClsQC_PatrolProcCheckOtherBillMain.cs 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Model/质检管理/ClsQC_ProcessCheckBillMain.cs 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Model/质检管理/ClsQC_StockCheckBillMain.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Model/销售管理/ClsXs_ReceivableBillMain.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WarM/条码打印/Gy_BarCodeBill_automaticallyByPLC_New.cs 103 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WarM/条码打印/Gy_BarCodeBill_automaticallyByPLC_New.designer.cs 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WarM/条码打印/Gy_BarCodeBill_automaticallyByPLC_New.resx 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/BaseSet/Gy_WarehouseController.cs 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/CGGL/Cg_POOrderBillController.cs 457 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/CGGL/Cg_PayableBillController.cs 39 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/Kf_ICStockBillMainController.cs 52 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/LMESController.cs 38 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/SBGL/SB_EquipICMOTechParamBillController.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/Sc_MouldRepairInBillListController.cs 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/XSGL/Kf_SellOutBillController.cs 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/XSGL/Xs_ReceivableBillController.cs 41 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/品质管理/巡检单/QC_PatrolProcCheckOtherBillController.cs 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/品质管理/工序检验单/QC_ProcessCheckBillController.cs 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/品质管理/库存检验单/QC_StockCheckBillController.cs 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/品质管理/质量报表/QC_QualityReportsController.cs 357 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/品质管理/首件检验单/QC_FirstPieceCheckBillController.cs 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/条码管理/WEBSController.cs 47 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Models/StationBill.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Models/基础资料/Warehouse.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Properties/PublishProfiles/FolderProfile.pubxml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Properties/PublishProfiles/FolderProfile16.pubxml.user 36 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Properties/PublishProfiles/FolderProfile17.pubxml 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Properties/PublishProfiles/FolderProfile17.pubxml.user 459 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Web.config 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/WebAPI.csproj.user 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
DAL/²Ö¿â¹ÜÀí/ClsKf_SellOutBillForLayUI.cs
@@ -305,7 +305,7 @@
                //控制关联数量
                //=========================保存后控制  
                DataSet ds2 = oCn.RunProcReturn("h_p_Kf_SellOutBill_AfterSaveCtrl " + omodel.HInterID.ToString() + ", '" + omodel.HBillNo + "',1 ", "h_p_Kf_SellOutBill_AfterSaveCtrl");
                DataSet ds2 = oCn.RunProcReturn("Exec h_p_Kf_SellOutBill_AfterSaveCtrl " + omodel.HInterID.ToString() + ", '" + omodel.HBillNo + "',1 ", "h_p_Kf_SellOutBill_AfterSaveCtrl");
                if (ds2 == null)
                {
                    sReturn = "保存后控制判断失败!";
@@ -550,7 +550,7 @@
                //
                //=========================保存后控制  
                DataSet ds2 = oCn.RunProcReturn("h_p_Kf_SellOutBill_AfterSaveCtrl " + omodel.HInterID.ToString() + ", '" + omodel.HBillNo + "',1 ", "h_p_Kf_SellOutBill_AfterSaveCtrl");
                DataSet ds2 = oCn.RunProcReturn("Exec h_p_Kf_SellOutBill_AfterSaveCtrl " + omodel.HInterID.ToString() + ", '" + omodel.HBillNo + "',1 ", "h_p_Kf_SellOutBill_AfterSaveCtrl");
                if (ds2 == null)
                {
                    sReturn = "保存后控制判断失败!";
DAL/Ó¦¸¶¹ÜÀí/ClsYF_PayMentBill.cs
@@ -150,13 +150,13 @@
                ",HInnerBillNo,HCheckMoney,HCheckMoneyFor,HRemainMoney,HCheckStatus,HInvoiceBillNo,HBigMoney,HReason,HMainSourceInterID,HMainSourceEntryID,HMainSourceBillNo,HMainSourceBillType" +
                ") " +
                " values('" + this.BillType + "','"  + this.HBillSubType + "'," +omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "','" + omodel.HDate + "'" +
                ", " + omodel.HYear.ToString() + "," + omodel.HPeriod.ToString() + ",'" + omodel.HRemark + "','" + DBUtility.ClsPub.CurUserName + "',getdate()" +
                "," + omodel.HYear.ToString() + "," + omodel.HPeriod.ToString() + ",'" + omodel.HRemark + "','" + DBUtility.ClsPub.CurUserName + "',getdate()" +
                ",'" + omodel.HAccDate + "'," + omodel.HSupID.ToString() + "," + omodel.HAccSupID.ToString() + "," + omodel.HSSID.ToString() + "," + omodel.HCurID.ToString() + "," + omodel.HExRate.ToString() +
                ", " + omodel.HDeptID.ToString() + "," + omodel.HEmpID.ToString() + "," + omodel.HOrgID + "," + omodel.HSumMoney.ToString() + "," + omodel.HBankID.ToString() + ",'" + omodel.HBankNo + "','" + omodel.HExplanation +"'"+
                ",'" + omodel.HSSNum + "'," + omodel.HDiscountRate.ToString() + "," + omodel.HRelSumMoney.ToString() + "," + omodel.HSumMoneyBB.ToString() + "," + omodel.HRelSumMoneyBB.ToString() + 
                ",'" + omodel.HInnerBillNo + "'," + omodel.HCheckMoney.ToString() + "," + omodel.HCheckMoneyFor.ToString() + "," + omodel.HRemainMoney.ToString() + "," + omodel.HCheckStatus.ToString() + ",'" + omodel.HInvoiceBillNo + "','" + omodel.HBigMoney + "','" + omodel.HReason +
                "," + omodel.HMainSourceInterID.ToString() + "," + omodel.HMainSourceEntryID.ToString() + ",'" + omodel.HMainSourceBillNo + "','" + omodel.HMainSourceBillType + "',"+
                "') ");
                "'," + omodel.HMainSourceInterID.ToString() + "," + omodel.HMainSourceEntryID.ToString() + ",'" + omodel.HMainSourceBillNo + "','" + omodel.HMainSourceBillType + "'"+
                " ) ");
                //插入子表
                foreach (Model.ClsYF_PayMentBillSub oSub in DetailColl)
                {
DAL/Öʼì¹ÜÀí/ClsQC_FirstPieceCheckBill.cs
@@ -208,12 +208,14 @@
                ",HSourceID,HICMOInterID,HICMOBillNo,HICMOQty,HProcExchInterID,HProcExchEntryID" +
                ",HProcExchBillNo,HProcExchQty,HMaterID,HFirstCheckEmp,HLastResult" +
                ",HMainSourceInterID,HMainSourceEntryID,HMainSourceBillNo,HMainSourceBillType,HICMOEntryID,HQCSchemeID,HShiftsID,HErrTreatment,HBatchNo" +
                ",HTakeSampleCheckBillID,HTakeSampleCheckBillNo" +
                ") " +
                " values('" + this.BillType + "','" + this.HBillSubType + "'," + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "'," + omodel.HBillStatus.ToString() + ",'" + omodel.HDate + "','" + omodel.HMaker + "',getdate()" +
                "," + omodel.HYear.ToString() + "," + omodel.HPeriod.ToString() + ",'" + omodel.HRemark + "'" +
                "," + omodel.HSourceID.ToString() + "," + omodel.HICMOInterID.ToString() + ",'" + omodel.HICMOBillNo + "'," + omodel.HICMOQty.ToString() + "," + omodel.HProcExchInterID.ToString() + "," + omodel.HProcExchEntryID.ToString() +
                ",'" + omodel.HProcExchBillNo + "'," + omodel.HProcExchQty.ToString() + "," + omodel.HMaterID.ToString() + "," + omodel.HFirstCheckEmp.ToString() + ", " + DBUtility.ClsPub.BoolToString(omodel.HLastResult) +
                "," + omodel.HMainSourceInterID + "," + omodel.HMainSourceEntryID + ",'" + omodel.HMainSourceBillNo + "','" + omodel.HMainSourceBillType  + "'," + omodel.HICMOEntryID + "," + omodel.HQCSchemeID + "," + omodel.HShiftsID + ",'" + omodel.HErrTreatment + "','" + omodel.HBatchNo + "'" +
                ","+ omodel.HTakeSampleCheckBillID + ",'"+ omodel.HTakeSampleCheckBillNo + "'" +
                ") ");
                //插入子表
                foreach (Model.ClsQC_FirstPieceCheckBillSub oSub in DetailColl)
DAL/Öʼì¹ÜÀí/ClsQC_PatrolProcCheckOtherBill.cs
@@ -114,7 +114,7 @@
                //omodel.HInterID = DBUtility.ClsPub.CreateBillID(BillType, ref DBUtility.ClsPub.sExeReturnInfo);
                //若MAINDI重复则重新获取
                oCn.BeginTran();
                //主表
                oCn.RunProc("Insert Into QC_PatrolProcCheckOtherBillMain " +
@@ -123,12 +123,14 @@
                ",HSourceID,HICMOInterID,HICMOBillNo,HICMOQty,HProcExchInterID,HProcExchEntryID" +
                ",HProcExchBillNo,HProcExchQty,HMaterID,HFirstCheckEmp,HLastResult" +
                ",HMainSourceInterID,HMainSourceEntryID,HMainSourceBillNo,HMainSourceBillType,HICMOEntryID,HQCSchemeID,HShiftsID,HErrTreatment,HBatchNo" +
                ",HTakeSampleCheckBillID,HTakeSampleCheckBillNo" +
                ") " +
                " values('" + this.BillType + "','" + this.HBillSubType + "'," + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "'," + omodel.HBillStatus.ToString() + ",'" + omodel.HDate + "','" + omodel.HMaker + "',getdate()" +
                "," + omodel.HYear.ToString() + "," + omodel.HPeriod.ToString() + ",'" + omodel.HRemark + "'" +
                "," + omodel.HSourceID.ToString() + "," + omodel.HICMOInterID.ToString() + ",'" + omodel.HICMOBillNo + "'," + omodel.HICMOQty.ToString() + "," + omodel.HProcExchInterID.ToString() + "," + omodel.HProcExchEntryID.ToString() +
                ",'" + omodel.HProcExchBillNo + "'," + omodel.HProcExchQty.ToString() + "," + omodel.HMaterID.ToString() + "," + omodel.HFirstCheckEmp.ToString() + ", " + DBUtility.ClsPub.BoolToString(omodel.HLastResult) +
                "," + omodel.HMainSourceInterID + "," + omodel.HMainSourceEntryID + ",'" + omodel.HMainSourceBillNo + "','" + omodel.HMainSourceBillType  + "'," + omodel.HICMOEntryID + "," + omodel.HQCSchemeID + "," + omodel.HShiftsID + ",'" + omodel.HErrTreatment + "','" + omodel.HBatchNo + "'" +
                "," + omodel.HMainSourceInterID + "," + omodel.HMainSourceEntryID + ",'" + omodel.HMainSourceBillNo + "','" + omodel.HMainSourceBillType + "'," + omodel.HICMOEntryID + "," + omodel.HQCSchemeID + "," + omodel.HShiftsID + ",'" + omodel.HErrTreatment + "','" + omodel.HBatchNo + "'" +
                "," + omodel.HTakeSampleCheckBillID + ",'" + omodel.HTakeSampleCheckBillNo + "'" +
                ") ");
                //插入子表
                foreach (Model.ClsQC_PatrolProcCheckOtherBillSub oSub in DetailColl)
DAL/Öʼì¹ÜÀí/ClsQC_ProcessCheckBill.cs
@@ -209,7 +209,9 @@
                ",HBarCode,HLBatchNo,HCusID,HSortBillNo,HContrctBatchNo" +
                ",HProdAreaID,HProdTypeID,HProdStoveNo,HRecipeID,HDiameter1" +
                ",HDiameter2,HRoutingInterID,HDrawingDireID,HPackTypeID" +
                ",HMainSourceInterID,HMainSourceEntryID,HMainSourceBillNo,HMainSourceBillType,HICMOEntryID,HQCSchemeID,HICMOQty,HProcExchQty,HShiftsID,HErrTreatment,HBatchNo" +
                ",HMainSourceInterID,HMainSourceEntryID,HMainSourceBillNo,HMainSourceBillType,HICMOEntryID,HQCSchemeID,HICMOQty" +
                ",HProcExchQty,HShiftsID,HErrTreatment,HBatchNo" +
                ",HTakeSampleCheckBillID,HTakeSampleCheckBillNo" +
                ") " +
                " values('" + this.BillType + "','" + this.HBillSubType + "'," + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "'," + omodel.HBillStatus.ToString() + ",'" + omodel.HDate + "','" + omodel.HMaker + "',getdate()" +
                "," + omodel.HYear.ToString() + "," + omodel.HPeriod.ToString() + ",'" + omodel.HRemark + "'"+
@@ -219,7 +221,9 @@
                ",'" + omodel.HBarCode + "','" + omodel.HLBatchNo + "'," + omodel.HCusID.ToString() + ",'" + omodel.HSortBillNo + "','" + omodel.HContrctBatchNo + "'" +
                "," + omodel.HProdAreaID.ToString() + "," + omodel.HProdTypeID.ToString() + ",'" + omodel.HProdStoveNo + "'," + omodel.HRecipeID.ToString() + "," + omodel.HDiameter1.ToString() +
                "," + omodel.HDiameter2.ToString() + "," + omodel.HRoutingInterID.ToString() + ",'" + omodel.HDrawingDireID + "'," + omodel.HPackTypeID.ToString() +
                "," + omodel.HMainSourceInterID + "," + omodel.HMainSourceEntryID + ",'" + omodel.HMainSourceBillNo + "','" + omodel.HMainSourceBillType + "'," + omodel.HICMOEntryID + "," + omodel.HQCSchemeID + "," + omodel.HICMOQty + "," + omodel.HProcExchQty + "," + omodel.HShiftsID + ",'" + omodel.HErrTreatment + "','" + omodel.HBatchNo + "'" +
                "," + omodel.HMainSourceInterID + "," + omodel.HMainSourceEntryID + ",'" + omodel.HMainSourceBillNo + "','" + omodel.HMainSourceBillType + "'," + omodel.HICMOEntryID + "," + omodel.HQCSchemeID + "," + omodel.HICMOQty + "" +
                "," + omodel.HProcExchQty + "," + omodel.HShiftsID + ",'" + omodel.HErrTreatment + "','" + omodel.HBatchNo + "'" +
                ","+ omodel.HTakeSampleCheckBillID + ",'"+ omodel.HTakeSampleCheckBillNo + "'" +
                ") ");
                //插入子表
                foreach (Model.ClsQC_ProcessCheckBillSub oSub in DetailColl)
DAL/Öʼì¹ÜÀí/ClsQC_StockCheckBill.cs
@@ -122,12 +122,14 @@
                ",HSourceID,HICMOInterID,HICMOBillNo,HICMOQty,HProcExchInterID,HProcExchEntryID" +
                ",HProcExchBillNo,HProcExchQty,HMaterID,HFirstCheckEmp,HLastResult" +
                ",HMainSourceInterID,HMainSourceEntryID,HMainSourceBillNo,HMainSourceBillType,HICMOEntryID,HQCSchemeID,HShiftsID,HErrTreatment" +
                ",HBatchNo,HInSpectQty,HRightQty,HUnRightQty,HUnKnowQty" +
                ") " +
                " values('" + this.BillType + "','" + this.HBillSubType + "'," + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "'," + omodel.HBillStatus.ToString() + ",'" + omodel.HDate + "','" + omodel.HMaker + "',getdate()" +
                "," + omodel.HYear.ToString() + "," + omodel.HPeriod.ToString() + ",'" + omodel.HRemark + "'" +
                "," + omodel.HSourceID.ToString() + "," + omodel.HICMOInterID.ToString() + ",'" + omodel.HICMOBillNo + "'," + omodel.HICMOQty.ToString() + "," + omodel.HProcExchInterID.ToString() + "," + omodel.HProcExchEntryID.ToString() +
                ",'" + omodel.HProcExchBillNo + "'," + omodel.HProcExchQty.ToString() + "," + omodel.HMaterID.ToString() + "," + omodel.HFirstCheckEmp.ToString() + ", " + DBUtility.ClsPub.BoolToString(omodel.HLastResult) +
                "," + omodel.HMainSourceInterID + "," + omodel.HMainSourceEntryID + ",'" + omodel.HMainSourceBillNo + "','" + omodel.HMainSourceBillType  + "'," + omodel.HICMOEntryID + "," + omodel.HQCSchemeID + "," + omodel.HShiftsID + ",'" + omodel.HErrTreatment + "'" +
                ",'"+ omodel.HBatchNo + "'," + omodel.HInSpectQty+","+ omodel.HRightQty + "," + omodel.HUnRightQty + "," + omodel.HUnKnowQty +
                ") ");
                //插入子表
                foreach (Model.ClsQC_StockCheckBillSub oSub in DetailColl)
DAL/²É¹º¹ÜÀí/ClsCg_POOrderBill.cs
@@ -309,8 +309,95 @@
                throw (e);
            }
        }
        //发起审批
        public bool startCheckFlow(Int64 lngBillKey, Int64 HCheckFlowID_select, ref string sReturn)
        {
            try
            {
                string HBillNo = "";                //单据号
                string HCheckFlowID = "";           //审批流ID
                string HCheckItemNowID = "";        //当前审核项目ID
                string HCheckItemNextID = "";       //待审核项目ID
                //判断是否已经发起审批
                string sql0 = "select * from Xt_BillCheckFlowStatus where HBillInterID = " + lngBillKey + " and HBillTypeID = '" + this.BillType + "'";
                DataSet ds0 = oCn.RunProcReturn(sql0, "Xt_BillCheckFlowStatus");
                if (ds0 != null && ds0.Tables[0].Rows.Count > 0)
                {
                    sReturn = "单据已发起审批,不可重复审批!";
                    return false;
                }
                //获取单据数据
                string sql = "select * from " + this.MvarItemKey + " where HInterID = " + lngBillKey;
                DataSet ds = oCn.RunProcReturn(sql, this.MvarItemKey);
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    sReturn = "单据不存在!";
                    return false;
                }
                HBillNo = ds.Tables[0].Rows[0]["HBillNo"].ToString();
                //获取单据类型对应的默认审批流
                string sql1 = "select b.HInterID,b.HCheckItemID from Xt_CheckFlowMain as a " +
                                "inner join Xt_CheckFlowSub as b on a.HInterID = b.HInterID " +
                                "where a.HBillTypeID = '" + this.BillType + "' " +
                                "and a.HInterID = " + HCheckFlowID_select + " " +
                                "order by b.HFlowNo asc";
                DataSet ds1 = oCn.RunProcReturn(sql1, "Xt_CheckFlowMain");
                if (ds1 == null || ds1.Tables[0].Rows.Count == 0)
                {
                    sReturn = "默认审批流不存在!";
                    return false;
                }
                HCheckFlowID = ds1.Tables[0].Rows[0]["HInterID"].ToString();
                HCheckItemNowID = ds1.Tables[0].Rows[0]["HCheckItemID"].ToString();
                if (ds1.Tables[0].Rows.Count >= 2)
                {
                    HCheckItemNextID = ds1.Tables[0].Rows[1]["HCheckItemID"].ToString();
                }
                else
                {
                    HCheckItemNextID = "0";
                }
                oCn.BeginTran();
                //增加 å•据审批状态表 æ•°æ®
                for (int i = 0; i < ds1.Tables[0].Rows.Count; i++)
                {
                    string sql2 = "insert into Xt_BillCheckFlowStatus" +
                        "(HBillTypeID,HBillInterID,HBillNo,HCheckFlowID,HCheckItemID,HChecker,HCheckDate,HCheckNote) " +
                        "values(" +
                        "'" + this.BillType + "'," +
                        "" + lngBillKey + "," +
                        "'" + HBillNo + "'," +
                        "" + ds1.Tables[0].Rows[i]["HInterID"].ToString() + "," +
                        "" + ds1.Tables[0].Rows[i]["HCheckItemID"].ToString() + "," +
                        "" + "''" + "," +
                        "" + "''" + "," +
                        "" + "''" + "" +
                        ")";
                    oCn.RunProc(sql2);
                }
                //更新主表 å®¡æ‰¹æµ æ•°æ®
                string sql3 = "update " + this.MvarItemKey + " set HCheckFlowID = " + HCheckFlowID + ",HCheckItemNowID=" + HCheckItemNowID + ",HCheckItemNextID=" + HCheckItemNextID + " where HInterID = " + lngBillKey;
                oCn.RunProc(sql3);
                oCn.Commit();
                return true;
            }
            catch (Exception e)
            {
                sReturn += e.Message;
                return false;
            }
        }
    }
}
DAL/²É¹º¹ÜÀí/ClsCg_PayableBill.cs
@@ -9,11 +9,11 @@
    {
        public Model.ClsCg_PayableBillMain omodel = new Model.ClsCg_PayableBillMain();
        public List<Model.ClsCg_PayableSub> DetailColl = new List<Model.ClsCg_PayableSub>();
        public List<Model.ClsCg_PayableSub> DetailCol2 = new List<Model.ClsCg_PayableSub>();
        public ClsCg_PayableBill()
        {
            base.MvarItemKeySub = "Cg_PayableSub";
            base.MvarItemKeySub2 = "";
            base.MvarItemKeySub2 = "Cg_PayableSub_Entry";
            base.MvarItemKeySub3 = "";
            base.MvarItemKeySub4 = "";
            base.MvarItemKey= "Cg_PayableBillMain";
@@ -131,7 +131,8 @@
                DeleteRelation(ref sReturn, lngBillKey);
                //删除子表
                DeleteBillSub(lngBillKey);
                //删除子表2
                DeleteBillSub2(lngBillKey);
                //插入子表
                omodel.HInterID = lngBillKey;
                //插入子表
@@ -179,6 +180,49 @@
                }
                //更新订单关联数量
                AddNewRelation(ref sReturn, omodel.HInterID);
                //插入子表2
                foreach (Model.ClsCg_PayableSub oSub in DetailCol2)
                {
                    string subSql = "insert into Cg_PayableSub_Entry" +
                        "(HInterID,HEntryID,HBillNo_bak,HMaterID,HUnitID,HQty,HPrice,HTaxPrice,HDiscountRate,HRelTaxPrice,HTaxRate,HTaxMoney" +
                        ",HlineTotal,HlineTotalBB,HMoney,HMoneyBB,HRemark" +
                        ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" +
                        ",HPOOrderInterID,HPOOrderEntryID,HPOOrderBillNo" +
                        ",HSeOrderTaxPrice,HSeOrderInterID,HSeOrderEntryID,HSeOrderBillNo) " +
                        " values(" +
                       "" + omodel.HInterID + "" +
                       "," + oSub.HEntryID + "" +
                       ",'" + omodel.HBillNo + "'" +
                       "," + oSub.HMaterID + "" +
                       "," + oSub.HUnitID + "" +
                       "," + oSub.HQty + "" +
                       "," + oSub.HPrice + "" +
                       "," + oSub.HTaxPrice + "" +
                       "," + oSub.HDiscountRate + "" +
                       "," + oSub.HRelTaxPrice + "" +
                       "," + oSub.HTaxRate + "" +
                       "," + oSub.HTaxMoney + "" +
                       "," + oSub.HlineTotal + "" +
                       "," + oSub.HlineTotalBB + "" +
                       "," + oSub.HMoney + "" +
                       "," + oSub.HMoneyBB + "" +
                       ",'" + oSub.HRemark + "'" +
                       "," + oSub.HSourceInterID + "" +
                       "," + oSub.HSourceEntryID + "" +
                       ",'" + oSub.HSourceBillNo + "'" +
                       ",'" + oSub.HSourceBillType + "'" +
                       "," + oSub.HRelationQty + "" +
                       "," + oSub.HRelationMoney + "" +
                       "," + oSub.HPOOrderInterID + "" +
                       "," + oSub.HPOOrderEntryID + "" +
                       ",'" + oSub.HPOOrderBillNo + "'" +
                       "," + oSub.HSeOrderTaxPrice + "" +
                       "," + oSub.HSeOrderInterID + "" +
                       "," + oSub.HSeOrderEntryID + "" +
                       ",'" + oSub.HSeOrderBillNo + "'" +
                        ")";
                    oCn.RunProc(subSql);
                }
                //=========================保存后控制  
                DataSet ds2 = oCn.RunProcReturn("h_p_Cg_PayableBill_AfterSaveCtrl " + omodel.HInterID  ,"h_p_Cg_PayableBill_AfterSaveCtrl");
                if (ds2 == null)
@@ -285,6 +329,49 @@
                foreach (Model.ClsCg_PayableSub oSub in DetailColl)
                {
                    string subSql = "insert into Cg_PayableSub" +
                        "(HInterID,HEntryID,HBillNo_bak,HMaterID,HUnitID,HQty,HPrice,HTaxPrice,HDiscountRate,HRelTaxPrice,HTaxRate,HTaxMoney" +
                        ",HlineTotal,HlineTotalBB,HMoney,HMoneyBB,HRemark" +
                        ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" +
                        ",HPOOrderInterID,HPOOrderEntryID,HPOOrderBillNo" +
                        ",HSeOrderTaxPrice,HSeOrderInterID,HSeOrderEntryID,HSeOrderBillNo) " +
                        " values(" +
                       "" + omodel.HInterID + "" +
                       "," + oSub.HEntryID + "" +
                       ",'" + omodel.HBillNo + "'" +
                       "," + oSub.HMaterID + "" +
                       "," + oSub.HUnitID + "" +
                       "," + oSub.HQty + "" +
                       "," + oSub.HPrice + "" +
                       "," + oSub.HTaxPrice + "" +
                       "," + oSub.HDiscountRate + "" +
                       "," + oSub.HRelTaxPrice + "" +
                       "," + oSub.HTaxRate + "" +
                       "," + oSub.HTaxMoney + "" +
                       "," + oSub.HlineTotal + "" +
                       "," + oSub.HlineTotalBB + "" +
                       "," + oSub.HMoney + "" +
                       "," + oSub.HMoneyBB + "" +
                       ",'" + oSub.HRemark + "'" +
                       "," + oSub.HSourceInterID + "" +
                       "," + oSub.HSourceEntryID + "" +
                       ",'" + oSub.HSourceBillNo + "'" +
                       ",'" + oSub.HSourceBillType + "'" +
                       "," + oSub.HRelationQty + "" +
                       "," + oSub.HRelationMoney + "" +
                       "," + oSub.HPOOrderInterID + "" +
                       "," + oSub.HPOOrderEntryID + "" +
                       ",'" + oSub.HPOOrderBillNo + "'" +
                       "," + oSub.HSeOrderTaxPrice + "" +
                       "," + oSub.HSeOrderInterID + "" +
                       "," + oSub.HSeOrderEntryID + "" +
                       ",'" + oSub.HSeOrderBillNo + "'" +
                        ")";
                    oCn.RunProc(subSql);
                }
                //插入子表Entry
                foreach (Model.ClsCg_PayableSub oSub in DetailCol2)
                {
                    string subSql = "insert into Cg_PayableSub_Entry" +
                        "(HInterID,HEntryID,HBillNo_bak,HMaterID,HUnitID,HQty,HPrice,HTaxPrice,HDiscountRate,HRelTaxPrice,HTaxRate,HTaxMoney" +
                        ",HlineTotal,HlineTotalBB,HMoney,HMoneyBB,HRemark" +
                        ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" +
@@ -473,6 +560,56 @@
                    DetailColl.Add(oSub);
                }
                //子表Entry
                DataSet DsSub2;
                DsSub2 = oCn.RunProcReturn("select * from Cg_PayableSub_Entry where HInterID = " + lngBillKey.ToString() + "order by HEntryID", "Cg_PayableSub_Entry ");
                DetailCol2.Clear();//清空
                for (int i = 0; i < DsSub2.Tables[0].Rows.Count; i++)
                {
                    Model.ClsCg_PayableSub oSub = new Model.ClsCg_PayableSub();
                    // å›ºå®šèµ‹å€¼===============================================
                    oSub.HInterID = DBUtility.ClsPub.isLong(DsSub2.Tables[0].Rows[i]["HInterID"]);
                    oSub.HEntryID = DBUtility.ClsPub.isLong(DsSub2.Tables[0].Rows[i]["HEntryID"]);
                    oSub.HBillNo_bak = DBUtility.ClsPub.isStrNull(DsSub2.Tables[0].Rows[i]["HBillNo_bak"]);
                    oSub.HCloseMan = DBUtility.ClsPub.isStrNull(DsSub2.Tables[0].Rows[i]["HCloseMan"]);
                    oSub.HCloseType = DBUtility.ClsPub.isBool(DsSub2.Tables[0].Rows[i]["HCloseType"]);
                    oSub.HEntryCloseDate = DBUtility.ClsPub.isDate(DsSub2.Tables[0].Rows[i]["HEntryCloseDate"]);
                    oSub.HSourceInterID = DBUtility.ClsPub.isLong(DsSub2.Tables[0].Rows[i]["HSourceInterID"]);
                    oSub.HSourceEntryID = DBUtility.ClsPub.isLong(DsSub2.Tables[0].Rows[i]["HSourceEntryID"]);
                    oSub.HSourceBillType = DsSub2.Tables[0].Rows[i]["HSourceBillType"].ToString().Trim();
                    oSub.HSourceBillNo = DsSub2.Tables[0].Rows[i]["HSourceBillNo"].ToString().Trim();
                    oSub.HRelationQty = DBUtility.ClsPub.isDoule(DsSub2.Tables[0].Rows[i]["HRelationQty"]);
                    oSub.HRelationMoney = DBUtility.ClsPub.isDoule(DsSub2.Tables[0].Rows[i]["HRelationMoney"]);
                    oSub.HRemark = DsSub2.Tables[0].Rows[i]["HRemark"].ToString().Trim();
                    //===================================================
                    oSub.HMaterID = DBUtility.ClsPub.isLong(DsSub2.Tables[0].Rows[i]["HMaterID"]);
                    oSub.HUnitID = DBUtility.ClsPub.isLong(DsSub2.Tables[0].Rows[i]["HUnitID"]);
                    oSub.HQty = DBUtility.ClsPub.isDoule(DsSub2.Tables[0].Rows[0]["HQty"]);
                    oSub.HPrice = DBUtility.ClsPub.isDoule(DsSub2.Tables[0].Rows[0]["HPrice"]);
                    oSub.HTaxPrice = DBUtility.ClsPub.isDoule(DsSub2.Tables[0].Rows[0]["HTaxPrice"]);
                    oSub.HDiscountRate = DBUtility.ClsPub.isDoule(DsSub2.Tables[0].Rows[0]["HDiscountRate"]);
                    oSub.HRelTaxPrice = DBUtility.ClsPub.isDoule(DsSub2.Tables[0].Rows[0]["HRelTaxPrice"]);
                    oSub.HTaxRate = DBUtility.ClsPub.isDoule(DsSub2.Tables[0].Rows[0]["HTaxRate"]);
                    oSub.HTaxMoney = DBUtility.ClsPub.isDoule(DsSub2.Tables[0].Rows[0]["HTaxMoney"]);
                    oSub.HMoney = DBUtility.ClsPub.isDoule(DsSub2.Tables[0].Rows[0]["HMoney"]);
                    oSub.HMoneyBB = DBUtility.ClsPub.isDoule(DsSub2.Tables[0].Rows[0]["HMoneyBB"]);
                    oSub.HlineTotal = DBUtility.ClsPub.isDoule(DsSub2.Tables[0].Rows[0]["HlineTotal"]);
                    oSub.HlineTotalBB = DBUtility.ClsPub.isDoule(DsSub2.Tables[0].Rows[0]["HlineTotalBB"]);
                    oSub.HPOOrderInterID = DBUtility.ClsPub.isLong(DsSub2.Tables[0].Rows[0]["HPOOrderInterID"]);
                    oSub.HPOOrderEntryID = DBUtility.ClsPub.isLong(DsSub2.Tables[0].Rows[0]["HPOOrderEntryID"]);
                    oSub.HPOOrderBillNo = DBUtility.ClsPub.isStrNull(DsSub2.Tables[0].Rows[0]["HPOOrderBillNo"]);
                    oSub.HSeOrderTaxPrice = DBUtility.ClsPub.isDoule(DsSub2.Tables[0].Rows[0]["HSeOrderTaxPrice"]);
                    oSub.HSeOrderInterID = DBUtility.ClsPub.isLong(DsSub2.Tables[0].Rows[0]["HSeOrderInterID"]);
                    oSub.HSeOrderEntryID = DBUtility.ClsPub.isLong(DsSub2.Tables[0].Rows[0]["HSeOrderEntryID"]);
                    oSub.HSeOrderBillNo = DBUtility.ClsPub.isStrNull(DsSub2.Tables[0].Rows[0]["HSeOrderBillNo"]);
                    DetailCol2.Add(oSub);
                }
                sReturn = "显示单据成功!";
                return true;
            }
DAL/ÏúÊÛ¹ÜÀí/ClsXs_ReceivableBill.cs
@@ -9,11 +9,11 @@
    {
        public Model.ClsXs_ReceivableBillMain omodel = new Model.ClsXs_ReceivableBillMain();
        public List<Model.ClsXs_ReceivableBillSub> DetailColl = new List<Model.ClsXs_ReceivableBillSub>();
        public List<Model.ClsXs_ReceivableBillSub> DetailCol2 = new List<Model.ClsXs_ReceivableBillSub>();//子表二
        public ClsXs_ReceivableBill()
        {
            base.MvarItemKeySub = "Xs_ReceivableBillSub";
            base.MvarItemKeySub2 = "";
            base.MvarItemKeySub2 = "Xs_ReceivableBillSub_Entry";
            base.MvarItemKeySub3 = "";
            base.MvarItemKeySub4 = "";
            base.MvarItemKey= "Xs_ReceivableBillMain";
@@ -115,6 +115,7 @@
                    ",HExplanation = '" + omodel.HExplanation + "'" +
                    ",HInnerBillNo = '" + omodel.HInnerBillNo + "'" +
                    ",HRemark = '" + omodel.HRemark + "'" +
                    ",HPriceType = '" + omodel.HPriceType + "'" +
                    " where HInterID = " + omodel.HInterID;
                oCn.RunProc(mainSql);
@@ -122,7 +123,8 @@
                DeleteRelation(ref sReturn, lngBillKey);
                //删除子表
                DeleteBillSub(lngBillKey);
                //删除子表2
                DeleteBillSub2(lngBillKey);
                //插入子表
                omodel.HInterID = lngBillKey;
                //插入子表
@@ -172,6 +174,51 @@
                //更新订单关联数量
                AddNewRelation(ref sReturn, omodel.HInterID);
                //插入子表Entry
                foreach (Model.ClsXs_ReceivableBillSub oSub in DetailCol2)
                {
                    string subSql = "insert into Xs_ReceivableBillSub_Entry" +
                        "(HInterID,HEntryID,HBillNo_bak,HMaterID,HUnitID,HQty,HPrice,HTaxPrice,HDiscountRate,HRelTaxPrice,HTaxRate,HTaxMoney" +
                        ",HlineTotal,HlineTotalBB,HMoney,HMoneyBB,HRemark" +
                        ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" +
                        ",HPOOrderInterID,HPOOrderEntryID,HPOOrderBillNo" +
                        ",HSeOrderTaxPrice,HSeOrderInterID,HSeOrderEntryID,HSeOrderBillNo) " +
                        " values(" +
                       "" + omodel.HInterID + "" +
                       "," + oSub.HEntryID + "" +
                       ",'" + omodel.HBillNo + "'" +
                       "," + oSub.HMaterID + "" +
                       "," + oSub.HUnitID + "" +
                       "," + oSub.HQty + "" +
                       "," + oSub.HPrice + "" +
                       "," + oSub.HTaxPrice + "" +
                       "," + oSub.HDiscountRate + "" +
                       "," + oSub.HRelTaxPrice + "" +
                       "," + oSub.HTaxRate + "" +
                       "," + oSub.HTaxMoney + "" +
                       "," + oSub.HlineTotal + "" +
                       "," + oSub.HlineTotalBB + "" +
                       "," + oSub.HMoney + "" +
                       "," + oSub.HMoneyBB + "" +
                       ",'" + oSub.HRemark + "'" +
                       "," + oSub.HSourceInterID + "" +
                       "," + oSub.HSourceEntryID + "" +
                       ",'" + oSub.HSourceBillNo + "'" +
                       ",'" + oSub.HSourceBillType + "'" +
                       "," + oSub.HRelationQty + "" +
                       "," + oSub.HRelationMoney + "" +
                       "," + oSub.HPOOrderInterID + "" +
                       "," + oSub.HPOOrderEntryID + "" +
                       ",'" + oSub.HPOOrderBillNo + "'" +
                       "," + oSub.HSeOrderTaxPrice + "" +
                       "," + oSub.HSeOrderInterID + "" +
                       "," + oSub.HSeOrderEntryID + "" +
                       ",'" + oSub.HSeOrderBillNo + "'" +
                        ")";
                    oCn.RunProc(subSql);
                }
                sReturn = "修改单据成功!";
                oCn.Commit();
                return true;
@@ -213,7 +260,7 @@
                string mainSql = "insert into Xs_ReceivableBillMain" +
                    "(HInterID,HBillNo,HDate,HYear,HPeriod,HBillType,HBillSubType" +
                    ",HMainSourceInterID,HMainSourceEntryID,HMainSourceBillNo,HMainSourceBillType" +
                    ",HMaker,HMakeDate,HSSID,HSellSID,HReceiveDate,HCusID,HCurID,HExRate,HEmpID,HMangerID,HDeptID,HExplanation,HInnerBillNo,HRemark) " +
                    ",HMaker,HMakeDate,HSSID,HSellSID,HReceiveDate,HCusID,HCurID,HExRate,HEmpID,HMangerID,HDeptID,HExplanation,HInnerBillNo,HRemark,HPriceType) " +
                    "values(" +
                    "" + omodel.HInterID + "" +
                    ",'" + omodel.HBillNo + "'" +
@@ -240,6 +287,7 @@
                    ",'" + omodel.HExplanation + "'" +
                    ",'" + omodel.HInnerBillNo + "'" +
                    ",'" + omodel.HRemark + "'" +
                    ",'" + omodel.HPriceType + "'" +
                    ")";
                oCn.RunProc(mainSql);
@@ -290,6 +338,50 @@
                //更新订单关联数量
                AddNewRelation(ref sReturn, omodel.HInterID);
                //插入子表Entry
                foreach (Model.ClsXs_ReceivableBillSub oSub in DetailCol2)
                {
                    string subSql = "insert into Xs_ReceivableBillSub_Entry" +
                        "(HInterID,HEntryID,HBillNo_bak,HMaterID,HUnitID,HQty,HPrice,HTaxPrice,HDiscountRate,HRelTaxPrice,HTaxRate,HTaxMoney" +
                        ",HlineTotal,HlineTotalBB,HMoney,HMoneyBB,HRemark" +
                        ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" +
                        ",HPOOrderInterID,HPOOrderEntryID,HPOOrderBillNo" +
                        ",HSeOrderTaxPrice,HSeOrderInterID,HSeOrderEntryID,HSeOrderBillNo) " +
                        " values(" +
                       "" + omodel.HInterID + "" +
                       "," + oSub.HEntryID + "" +
                       ",'" + omodel.HBillNo + "'" +
                       "," + oSub.HMaterID + "" +
                       "," + oSub.HUnitID + "" +
                       "," + oSub.HQty + "" +
                       "," + oSub.HPrice + "" +
                       "," + oSub.HTaxPrice + "" +
                       "," + oSub.HDiscountRate + "" +
                       "," + oSub.HRelTaxPrice + "" +
                       "," + oSub.HTaxRate + "" +
                       "," + oSub.HTaxMoney + "" +
                       "," + oSub.HlineTotal + "" +
                       "," + oSub.HlineTotalBB + "" +
                       "," + oSub.HMoney + "" +
                       "," + oSub.HMoneyBB + "" +
                       ",'" + oSub.HRemark + "'" +
                       "," + oSub.HSourceInterID + "" +
                       "," + oSub.HSourceEntryID + "" +
                       ",'" + oSub.HSourceBillNo + "'" +
                       ",'" + oSub.HSourceBillType + "'" +
                       "," + oSub.HRelationQty + "" +
                       "," + oSub.HRelationMoney + "" +
                       "," + oSub.HPOOrderInterID + "" +
                       "," + oSub.HPOOrderEntryID + "" +
                       ",'" + oSub.HPOOrderBillNo + "'" +
                       "," + oSub.HSeOrderTaxPrice + "" +
                       "," + oSub.HSeOrderInterID + "" +
                       "," + oSub.HSeOrderEntryID + "" +
                       ",'" + oSub.HSeOrderBillNo + "'" +
                        ")";
                    oCn.RunProc(subSql);
                }
                sReturn = "新增单据成功!";
                oCn.Commit();
@@ -423,6 +515,57 @@
                    DetailColl.Add(oSub);
                }
                //循环
                DataSet DsSub2;
                DsSub2 = oCn.RunProcReturn("select * from Xs_ReceivableBillSub_Entry where HInterID = " + lngBillKey.ToString() + "order by HEntryID", "Xs_ReceivableBillSub_Entry");
                DetailCol2.Clear();//清空
                for (int i = 0; i < DsSub2.Tables[0].Rows.Count; i++)
                {
                    Model.ClsXs_ReceivableBillSub oSub = new Model.ClsXs_ReceivableBillSub();
                    // å›ºå®šèµ‹å€¼===============================================
                    oSub.HInterID = DBUtility.ClsPub.isLong(DsSub2.Tables[0].Rows[i]["HInterID"]);
                    oSub.HEntryID = DBUtility.ClsPub.isLong(DsSub2.Tables[0].Rows[i]["HEntryID"]);
                    oSub.HBillNo_bak = DBUtility.ClsPub.isStrNull(DsSub2.Tables[0].Rows[i]["HBillNo_bak"]);
                    oSub.HCloseMan = DBUtility.ClsPub.isStrNull(DsSub2.Tables[0].Rows[i]["HCloseMan"]);
                    oSub.HCloseType = DBUtility.ClsPub.isBool(DsSub2.Tables[0].Rows[i]["HCloseType"]);
                    oSub.HEntryCloseDate = DBUtility.ClsPub.isDate(DsSub2.Tables[0].Rows[i]["HEntryCloseDate"]);
                    oSub.HSourceInterID = DBUtility.ClsPub.isLong(DsSub2.Tables[0].Rows[i]["HSourceInterID"]);
                    oSub.HSourceEntryID = DBUtility.ClsPub.isLong(DsSub2.Tables[0].Rows[i]["HSourceEntryID"]);
                    oSub.HSourceBillType = DsSub2.Tables[0].Rows[i]["HSourceBillType"].ToString().Trim();
                    oSub.HSourceBillNo = DsSub2.Tables[0].Rows[i]["HSourceBillNo"].ToString().Trim();
                    oSub.HRelationQty = DBUtility.ClsPub.isDoule(DsSub2.Tables[0].Rows[i]["HRelationQty"]);
                    oSub.HRelationMoney = DBUtility.ClsPub.isDoule(DsSub2.Tables[0].Rows[i]["HRelationMoney"]);
                    oSub.HRemark = DsSub2.Tables[0].Rows[i]["HRemark"].ToString().Trim();
                    //===================================================
                    oSub.HMaterID = DBUtility.ClsPub.isLong(DsSub2.Tables[0].Rows[i]["HMaterID"]);
                    oSub.HUnitID = DBUtility.ClsPub.isLong(DsSub2.Tables[0].Rows[i]["HUnitID"]);
                    oSub.HQty = DBUtility.ClsPub.isDoule(DsSub2.Tables[0].Rows[0]["HQty"]);
                    oSub.HPrice = DBUtility.ClsPub.isDoule(DsSub2.Tables[0].Rows[0]["HPrice"]);
                    oSub.HTaxPrice = DBUtility.ClsPub.isDoule(DsSub2.Tables[0].Rows[0]["HTaxPrice"]);
                    oSub.HDiscountRate = DBUtility.ClsPub.isDoule(DsSub2.Tables[0].Rows[0]["HDiscountRate"]);
                    oSub.HRelTaxPrice = DBUtility.ClsPub.isDoule(DsSub2.Tables[0].Rows[0]["HRelTaxPrice"]);
                    oSub.HTaxRate = DBUtility.ClsPub.isDoule(DsSub2.Tables[0].Rows[0]["HTaxRate"]);
                    oSub.HTaxMoney = DBUtility.ClsPub.isDoule(DsSub2.Tables[0].Rows[0]["HTaxMoney"]);
                    oSub.HMoney = DBUtility.ClsPub.isDoule(DsSub2.Tables[0].Rows[0]["HMoney"]);
                    oSub.HMoneyBB = DBUtility.ClsPub.isDoule(DsSub2.Tables[0].Rows[0]["HMoneyBB"]);
                    oSub.HlineTotal = DBUtility.ClsPub.isDoule(DsSub2.Tables[0].Rows[0]["HlineTotal"]);
                    oSub.HlineTotalBB = DBUtility.ClsPub.isDoule(DsSub2.Tables[0].Rows[0]["HlineTotalBB"]);
                    oSub.HPOOrderInterID = DBUtility.ClsPub.isLong(DsSub2.Tables[0].Rows[0]["HPOOrderInterID"]);
                    oSub.HPOOrderEntryID = DBUtility.ClsPub.isLong(DsSub2.Tables[0].Rows[0]["HPOOrderEntryID"]);
                    oSub.HPOOrderBillNo = DBUtility.ClsPub.isStrNull(DsSub2.Tables[0].Rows[0]["HPOOrderBillNo"]);
                    oSub.HSeOrderTaxPrice = DBUtility.ClsPub.isDoule(DsSub2.Tables[0].Rows[0]["HSeOrderTaxPrice"]);
                    oSub.HSeOrderInterID = DBUtility.ClsPub.isLong(DsSub2.Tables[0].Rows[0]["HSeOrderInterID"]);
                    oSub.HSeOrderEntryID = DBUtility.ClsPub.isLong(DsSub2.Tables[0].Rows[0]["HSeOrderEntryID"]);
                    oSub.HSeOrderBillNo = DBUtility.ClsPub.isStrNull(DsSub2.Tables[0].Rows[0]["HSeOrderBillNo"]);
                    DetailCol2.Add(oSub);
                }
                sReturn = "显示单据成功!";
                return true;
            }
DBUtility/ÒµÎñµ¥¾Ý/ClsXt_BaseBill.cs
@@ -251,6 +251,21 @@
                        //反审核更新 åŠæ—¶åº“存表 å‡å°‘库存 1204 1202 1203 1247 1244 1251 1210
                        ds = oCn.RunProcReturn("exec h_KF_UPDateICinventory  '" + lngBillKey.ToString() + "','" + HBillType + "','2'", "h_KF_UPDateICinventory");
                    }
                    //=========================审核反审核后负库存控制
                    DataSet ds2 = oCn.RunProcReturn("Exec h_p_KF_ICinventoryStockCtrl '" + lngBillKey.ToString() + "', '" + HBillType + "'", "h_p_KF_ICinventoryStockCtrl");
                    if (ds2 == null)
                    {
                        sReturn = "库存更新后控制判断失败!";
                        oCn.RollBack();
                        return false;
                    }
                    if (DBUtility.ClsPub.isStrNull(ds2.Tables[0].Rows[0]["HBack"]) != "0")
                    {
                        sReturn = "库存更新失败!" + DBUtility.ClsPub.isStrNull(ds2.Tables[0].Rows[0]["HBackRemark"]);
                        oCn.RollBack();
                        return false;
                    }
                    //============================
                }
                sReturn = "";
@@ -317,7 +332,26 @@
                        //反审核更新 åŠæ—¶åº“存表 å¢žåŠ åº“å­˜ 1201 1202 1203 1247 1244 1251 1210
                        //反审核更新 åŠæ—¶åº“存表 å‡å°‘库存 1205 1250 1206 1245 1239 
                        ds = oCn.RunProcReturn("exec h_KF_UPDateICinventory  '" + lngBillKey.ToString() + "','" + HBillType + "','2'", "h_KF_UPDateICinventory");
                    }else if (HBillType == "1207")
                    {
                        //更新及时库存表   å¢žåŠ è°ƒå…¥åº“å­˜,减少调出库存
                        ds = oCn.RunProcReturn("exec h_KF_UPDateICinventory_Move  '" + lngBillKey.ToString() + "','" + HBillType + "','2'", "h_KF_UPDateICinventory_Move");
                    }
                    //=========================审核反审核后负库存控制
                    DataSet ds2 = oCn.RunProcReturn("Exec h_p_KF_ICinventoryStockCtrl '" + lngBillKey.ToString() + "', '" + HBillType + "'", "h_p_KF_ICinventoryStockCtrl");
                    if (ds2 == null)
                    {
                        sReturn = "库存更新失败后控制判断失败!";
                        oCn.RollBack();
                        return false;
                    }
                    if (DBUtility.ClsPub.isStrNull(ds2.Tables[0].Rows[0]["HBack"]) != "0")
                    {
                        sReturn = "库存更新失败!" + DBUtility.ClsPub.isStrNull(ds2.Tables[0].Rows[0]["HBackRemark"]);
                        oCn.RollBack();
                        return false;
                    }
                    //============================
                }
                //写入日志
                string WorkList = "反审核单据,单据号:" + HBillNo;
@@ -429,6 +463,21 @@
                        //审核更新 åŠæ—¶åº“存表 å‡å°‘库存 1204 
                        ds = oCn.RunProcReturn("exec h_KF_UPDateICinventory  '" + lngBillKey.ToString() + "','" + HBillType + "','1'", "h_KF_UPDateICinventory");
                    }
                    //=========================审核反审核后负库存控制
                    DataSet ds2 = oCn.RunProcReturn("Exec h_p_KF_ICinventoryStockCtrl '" + lngBillKey.ToString() + "', '" + HBillType + "'", "h_p_KF_ICinventoryStockCtrl");
                    if (ds2 == null)
                    {
                        sReturn = "库存更新后控制判断失败!";
                        oCn.RollBack();
                        return false;
                    }
                    if (DBUtility.ClsPub.isStrNull(ds2.Tables[0].Rows[0]["HBack"]) != "0")
                    {
                        sReturn = "库存更新失败!" + DBUtility.ClsPub.isStrNull(ds2.Tables[0].Rows[0]["HBackRemark"]);
                        oCn.RollBack();
                        return false;
                    }
                    //============================
                }
                sReturn = "";
                return true;
@@ -499,7 +548,27 @@
                        //审核更新 åŠæ—¶åº“存表 å¢žåŠ åº“å­˜ 1201 1202 1203 1247 1244 1251 1210
                        //审核更新 åŠæ—¶åº“存表 å‡å°‘库存 1204 1250 1206 1245 1239 
                        ds = oCn.RunProcReturn("exec h_KF_UPDateICinventory  '" + lngBillKey.ToString() + "','" + HBillType + "','1'", "h_KF_UPDateICinventory");
                    }
                    }//直接调拨单审核更新
                    else if (HBillType == "1207")
                    {
                        //更新及时库存表   å‡å°‘调入库存,增加调出库存
                        ds = oCn.RunProcReturn("exec h_KF_UPDateICinventory_Move  '" + lngBillKey.ToString() + "','" + HBillType + "','1'", "h_KF_UPDateICinventory_Move");
                    }
                    //=========================审核反审核后负库存控制
                    DataSet ds2 = oCn.RunProcReturn("Exec h_p_KF_ICinventoryStockCtrl '" + lngBillKey.ToString() + "', '" + HBillType +"'", "h_p_KF_ICinventoryStockCtrl");
                    if (ds2 == null)
                    {
                        sReturn = "库存更新后控制判断失败!";
                        oCn.RollBack();
                        return false;
                    }
                    if (DBUtility.ClsPub.isStrNull(ds2.Tables[0].Rows[0]["HBack"]) != "0")
                    {
                        sReturn = "库存更新失败!" + DBUtility.ClsPub.isStrNull(ds2.Tables[0].Rows[0]["HBackRemark"]);
                        oCn.RollBack();
                        return false;
                    }
                    //============================
                }
                //写入日志
                string WorkList = "审核单据,单据号:" + HBillNo;
Model/Öʼì¹ÜÀí/ClsQC_FirstPieceCheckBillMain.cs
@@ -25,8 +25,10 @@
        public Int64 HProcID;
        public Int64 HShiftsID;
        public Int64 HTakeSampleCheckBillID;
        public string HErrTreatment;
        public string HBatchNo;
        public string HTakeSampleCheckBillNo;
    }
}
Model/Öʼì¹ÜÀí/ClsQC_PatrolProcCheckOtherBillMain.cs
@@ -37,6 +37,8 @@
        public Int64 HSampleUnRightQty;
        public string HQCStatus;
        public string HBatchNo;
        public string HTakeSampleCheckBillNo;
        public Int64 HTakeSampleCheckBillID;
        public Int64 HSampleQty;
        public Int64 HSampleSchemeID;
        public Int64 HAcceptQty;
Model/Öʼì¹ÜÀí/ClsQC_ProcessCheckBillMain.cs
@@ -43,10 +43,12 @@
        public Int64 HICMOQty;
        public Int64 HProcExchQty;
        public Int64 HTakeSampleCheckBillID;
        public Int64 HShiftsID;
        public string HErrTreatment;
        public string HBatchNo;
        public string HTakeSampleCheckBillNo;
    }
}
Model/Öʼì¹ÜÀí/ClsQC_StockCheckBillMain.cs
@@ -33,6 +33,7 @@
        public Int64 HInSpectQty;
        public Int64 HRightQty;
        public Int64 HUnRightQty;
        public Int64 HUnKnowQty;
        public Int64 HSampleDamageQty;
        public Int64 HSampleUnRightQty;
        public string HQCStatus;
Model/ÏúÊÛ¹ÜÀí/ClsXs_ReceivableBillMain.cs
@@ -17,6 +17,7 @@
        public string HReceiveDate;
        public string HExplanation;
        public string HInnerBillNo;
        public string HPriceType; //单价类型
        public bool HRedBlueFlag;       //bit       --红蓝字
        public string HHookMan;         //varchar   --勾稽人
WarM/ÌõÂë´òÓ¡/Gy_BarCodeBill_automaticallyByPLC_New.cs
@@ -13,6 +13,7 @@
using System.Drawing.Printing;
using System.IO;
using System.Management;
using System.Net.NetworkInformation;
namespace WarM
{
@@ -1017,6 +1018,12 @@
        {
            try
            {
                if (socket != null && socket.Connected)
                {
                    MessageBox.Show("已建立连接,不可重复建立连接!");
                    return;
                }
                if (grdMain.Rows.Count == 0 || grdMain.Rows[0].Cells[HMaterIDCol].Value == null || grdMain.Rows[0].Cells[HMaterIDCol].Value.ToString() == "" || grdMain.Rows[0].Cells[HMaterIDCol].Value.ToString() == "0")
                {
                    MessageBox.Show("请选择源单!");
@@ -1060,6 +1067,8 @@
                Thread thread = new Thread(ReceiveMess);
                thread.Start();
                MessageBox.Show("连接成功!");
                timer3.Enabled = true;
            }
            catch (Exception ex)
            {
@@ -1093,8 +1102,8 @@
            }
            catch (Exception ex)
            {
                MessageBox.Show("接口异常,已关闭连接:" + ex.Message);
                socket.Close();
                //MessageBox.Show("接口异常,已关闭连接:" + ex.Message);
                //socket.Close();
            }
        }
@@ -1236,6 +1245,7 @@
                if (socket.Connected)
                {
                    socket.Close();
                    MessageBox.Show("连接关闭成功!");
                }
                else
                {
@@ -1246,6 +1256,10 @@
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
            finally
            {
                timer3.Enabled = false;
            }
        }
        #endregion
@@ -2353,5 +2367,90 @@
            }
        }
        #region æ–­çº¿é‡è¿ž
        private int maxRepeatConnectTimes = 5;
        private int currentRepeatConnectTimes = 0;
        #region å®šæ—¶å™¨æ£€æµ‹è¿žæŽ¥çŠ¶æ€ã€æ–­çº¿é‡è¿ž
        private void timer3_Tick(object sender, EventArgs e)
        {
            if (currentRepeatConnectTimes < maxRepeatConnectTimes)
            {
                //判断客户端是否可以访问服务器,若不可以访问,关闭socket连接
                if (!getTargetInternetStatus())
                {
                    if (socket != null && socket.Connected)
                    {
                        socket.Close();
                    }
                    currentRepeatConnectTimes += 1;
                }
                else if (getTargetInternetStatus() && !socket.Connected)
                {
                    //若客户端可以访问服务器,socket重新连接服务器
                    try
                    {
                        socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
                        IPAddress iPAddress = IPAddress.Parse(textBox_IPParams.Text);
                        IPEndPoint point = new IPEndPoint(iPAddress, Convert.ToInt32(textBox_PortParams.Text));
                        socket.Connect(point);
                        Thread thread = new Thread(ReceiveMess);
                        thread.Start();
                        currentRepeatConnectTimes = 0;
                    }
                    catch (Exception ex)
                    {
                        currentRepeatConnectTimes += 1;
                    }
                }
            }
            else
            {
                timer3.Enabled = false;
                currentRepeatConnectTimes = 0;
                MessageBox.Show("连接已断开,请重新连接!!");
            }
        }
        #endregion
        #region èŽ·å–ç›®æ ‡è®¾å¤‡ç½‘ç»œè¿žæŽ¥çŠ¶æ€
        private bool getTargetInternetStatus()
        {
            try
            {
                string targetIp = textBox_IPParams.Text; // æ›¿æ¢ä¸ºç›®æ ‡ç”µè„‘çš„IP地址
                Ping pingSender = new Ping();
                PingOptions options = new PingOptions();
                // ä½¿ç”¨64字节的数据包,‌你可以根据需要调整这个值
                string data = "Hello from Ping!";
                byte[] buffer = Encoding.ASCII.GetBytes(data);
                int timeout = 1200; // è¶…时时间,‌单位为毫秒
                PingReply reply = pingSender.Send(targetIp, timeout, buffer, options);
                if (reply.Status == IPStatus.Success)
                {
                    return true;
                }
                else
                {
                    return false;
                }
            }
            catch (Exception ex)
            {
                return false;
            }
        }
        #endregion
        #endregion
    }
}
WarM/ÌõÂë´òÓ¡/Gy_BarCodeBill_automaticallyByPLC_New.designer.cs
@@ -147,6 +147,7 @@
            this.printDialog1 = new System.Windows.Forms.PrintDialog();
            this.printPreviewDialog1 = new System.Windows.Forms.PrintPreviewDialog();
            this.timer2 = new System.Windows.Forms.Timer(this.components);
            this.timer3 = new System.Windows.Forms.Timer(this.components);
            this.Tool.SuspendLayout();
            this.P1.SuspendLayout();
            this.tabControl_MainInfo.SuspendLayout();
@@ -887,7 +888,7 @@
            this.tabPage_ParamsInfo.Location = new System.Drawing.Point(4, 28);
            this.tabPage_ParamsInfo.Name = "tabPage_ParamsInfo";
            this.tabPage_ParamsInfo.Padding = new System.Windows.Forms.Padding(3);
            this.tabPage_ParamsInfo.Size = new System.Drawing.Size(1387, 314);
            this.tabPage_ParamsInfo.Size = new System.Drawing.Size(1786, 314);
            this.tabPage_ParamsInfo.TabIndex = 1;
            this.tabPage_ParamsInfo.Text = "配置信息";
            // 
@@ -1343,7 +1344,7 @@
            this.tabPage3.Location = new System.Drawing.Point(4, 5);
            this.tabPage3.Margin = new System.Windows.Forms.Padding(4);
            this.tabPage3.Name = "tabPage3";
            this.tabPage3.Size = new System.Drawing.Size(1398, 288);
            this.tabPage3.Size = new System.Drawing.Size(1796, 288);
            this.tabPage3.TabIndex = 2;
            this.tabPage3.Text = "档案列表";
            this.tabPage3.UseVisualStyleBackColor = true;
@@ -1363,7 +1364,7 @@
            this.grdList.ReadOnly = true;
            this.grdList.RowHeadersWidth = 30;
            this.grdList.RowTemplate.Height = 23;
            this.grdList.Size = new System.Drawing.Size(1398, 288);
            this.grdList.Size = new System.Drawing.Size(1796, 288);
            this.grdList.TabIndex = 46;
            // 
            // tabPage2
@@ -1373,7 +1374,7 @@
            this.tabPage2.Margin = new System.Windows.Forms.Padding(4);
            this.tabPage2.Name = "tabPage2";
            this.tabPage2.Padding = new System.Windows.Forms.Padding(4);
            this.tabPage2.Size = new System.Drawing.Size(1398, 288);
            this.tabPage2.Size = new System.Drawing.Size(1796, 288);
            this.tabPage2.TabIndex = 1;
            this.tabPage2.Text = "条码信息";
            this.tabPage2.UseVisualStyleBackColor = true;
@@ -1393,7 +1394,7 @@
            this.grdSub.ReadOnly = true;
            this.grdSub.RowHeadersWidth = 30;
            this.grdSub.RowTemplate.Height = 23;
            this.grdSub.Size = new System.Drawing.Size(1390, 280);
            this.grdSub.Size = new System.Drawing.Size(1788, 280);
            this.grdSub.TabIndex = 45;
            // 
            // tabPage1
@@ -1449,7 +1450,7 @@
            this.tabPage4.Location = new System.Drawing.Point(4, 5);
            this.tabPage4.Name = "tabPage4";
            this.tabPage4.Padding = new System.Windows.Forms.Padding(3);
            this.tabPage4.Size = new System.Drawing.Size(1398, 288);
            this.tabPage4.Size = new System.Drawing.Size(1796, 288);
            this.tabPage4.TabIndex = 3;
            this.tabPage4.Text = "工单条码";
            this.tabPage4.UseVisualStyleBackColor = true;
@@ -1469,7 +1470,7 @@
            this.grdBillBarCodeList.ReadOnly = true;
            this.grdBillBarCodeList.RowHeadersWidth = 30;
            this.grdBillBarCodeList.RowTemplate.Height = 23;
            this.grdBillBarCodeList.Size = new System.Drawing.Size(1392, 282);
            this.grdBillBarCodeList.Size = new System.Drawing.Size(1790, 282);
            this.grdBillBarCodeList.TabIndex = 47;
            // 
            // pageSetupDialog1
@@ -1496,6 +1497,11 @@
            // 
            this.timer2.Enabled = true;
            this.timer2.Tick += new System.EventHandler(this.timer2_Tick);
            //
            // timer3
            //
            this.timer3.Interval = 5000;
            this.timer3.Tick += new System.EventHandler(this.timer3_Tick);
            // 
            // Gy_BarCodeBill_automaticallyByPLC_New
            // 
@@ -1669,5 +1675,6 @@
        private System.Windows.Forms.PrintDialog printDialog1;
        private System.Windows.Forms.PrintPreviewDialog printPreviewDialog1;
        private System.Windows.Forms.Timer timer2;
        private System.Windows.Forms.Timer timer3;
    }
}
WarM/ÌõÂë´òÓ¡/Gy_BarCodeBill_automaticallyByPLC_New.resx
@@ -760,6 +760,9 @@
  <metadata name="timer2.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
    <value>1058, 17</value>
  </metadata>
  <metadata name="timer3.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
    <value>1177, 17</value>
  </metadata>
  <metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>64</value>
  </metadata>
WebAPI/Controllers/BaseSet/Gy_WarehouseController.cs
@@ -316,6 +316,7 @@
                string HName = list[0].HName;
                string HHelpCode = list[0].HHelpCode;
                bool HStopflag = list[0].HStopFlag;
                bool HStockCtrlFlag = list[0].HStockCtrlFlag;
                string HRemark = list[0].HRemark;
                string HBarCode = list[0].HBarCode;
                long HEmpID = list[0].HEmpID;
@@ -388,9 +389,9 @@
                    oCN.BeginTran();
                    oCN.RunProc("Insert into Gy_Warehouse  " +
                        " (HNumber,HName,HHelpCode,HShortNumber,HParentID" +
                        ",HLevel,HEndFlag,HStopflag,HRemark,HEmpID,HAddress,HPhone,HUSEORGID,HSPFlag,HCREATEORGID,HMaker,HMakeTime) " +
                        ",HLevel,HEndFlag,HStopflag,HRemark,HEmpID,HAddress,HPhone,HUSEORGID,HSPFlag,HCREATEORGID,HMaker,HMakeTime,HStockCtrlFlag) " +
                        " Values('" + HNumber + "','" + HName + "','" + HHelpCode + "','" + HShortNumber + "'," + HParentID.ToString() +
                        "," + HLevel.ToString() + "," + HEndFlag + "," + Convert.ToString(HStopflag ? 1 : 0) + ",'" + HRemark + "'," + HEmpID.ToString() + ",'" + HAddress + "','" + HPhone + "','"+ HUSEORGID + "',"+ HSPFlag + ","+ HUSEORGID + ",'"+msg3+"',getdate())", ref DBUtility.ClsPub.sExeReturnInfo);
                        "," + HLevel.ToString() + "," + HEndFlag + "," + Convert.ToString(HStopflag ? 1 : 0) + ",'" + HRemark + "'," + HEmpID.ToString() + ",'" + HAddress + "','" + HPhone + "','"+ HUSEORGID + "',"+ HSPFlag + ","+ HUSEORGID + ",'"+msg3+"',getdate(),"+ Convert.ToString(HStockCtrlFlag ? 1 : 0)+")", ref DBUtility.ClsPub.sExeReturnInfo);
                    //修改上级为非末级代码
                    oCN.RunProc("Update Gy_Warehouse set HEndflag=0 where HItemID=" + HParentID, ref DBUtility.ClsPub.sExeReturnInfo);
                    //启用仓位
@@ -423,6 +424,7 @@
                        //",HSPGroupID='" + HSPGroupID + "'" +
                        ",HUpdater='" + HUpDater + "'" +
                        ",HUpdateDate= getdate()" +
                        ",HStockCtrlFlag=" + Convert.ToString(HStockCtrlFlag ? 1 : 0) +
                        ",HRemark= '" + HRemark + "' Where HItemID=" + HItemID, ref DBUtility.ClsPub.sExeReturnInfo);
                    //修改子项目代码
                    //oCN.RunProc("exec h_p_Gy_UpdateNumber Gy_Warehouse,'" + HNumber + ".','" + this.HOldNumber + ".'", ref DBUtility.ClsPub.sExeReturnInfo);
WebAPI/Controllers/CGGL/Cg_POOrderBillController.cs
@@ -2398,6 +2398,463 @@
        }
        #endregion
        #region é‡‡è´­è®¢å• å‘起审批
        [Route("Cg_POOrderBill/StartCheckFlow_POOrderBill")]
        [HttpGet]
        public object StartCheckFlow_POOrderBill(int HInterID, int HCheckFlowID_select, string CurUserName)
        {
            string ModRightNameCheck = "Cg_POOrderBill_Check";
            DBUtility.ClsPub.CurUserName = CurUserName;
            try
            {
                ////审核权限
                //if (!DBUtility.ClsPub.Security_Log_second(ModRightNameCheck, 1, false, CurUserName))
                //{
                //    objJsonResult.code = "0";
                //    objJsonResult.count = 0;
                //    objJsonResult.Message = "审核失败!无权限!";
                //    objJsonResult.data = null;
                //    return objJsonResult;
                //}
                //HInterID数据判断
                if (HInterID <= 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "HInterID小于0!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                Int64 lngBillKey = 0;
                lngBillKey = DBUtility.ClsPub.isLong(HInterID);                                         //对HInterID进行类型的转换
                DAL.ClsCg_POOrderBill oBill = new DAL.ClsCg_POOrderBill();                              //实例化单据操作类,用于进行相关操作
                //发起审批
                if (oBill.startCheckFlow(lngBillKey, HCheckFlowID_select, ref DBUtility.ClsPub.sExeReturnInfo) == true)
                {
                    objJsonResult.code = "1";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "发起审批成功";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                else
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "发起审批失败!原因:" + DBUtility.ClsPub.sExeReturnInfo;
                    objJsonResult.data = null;
                    return objJsonResult;
                }
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "审核失败或者反审核失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region é‡‡è´­è®¢å• å¤šçº§ å®¡æ ¸/反审核
        /// <summary>
        /// </summary>
        /// <param name="HInterID">单据ID</param>
        /// <param name="IsAudit">审核(0),反审核(1)</param>
        /// <param name="CurUserName">审核人</param>
        /// <returns></returns>
        [Route("Cg_POOrderBill/AuditXs_POOrderBill_Flow")]
        [HttpGet]
        public object AuditXs_POOrderBill_Flow(int HInterID, int IsAudit, string CurUserName, string CurUserID)
        {
            //string ModRightNameCheck = "Cg_POOrderBill_Check";
            DBUtility.ClsPub.CurUserName = CurUserName;
            try
            {
                ////审核权限
                //if (!DBUtility.ClsPub.Security_Log_second(ModRightNameCheck, 1, false, CurUserName))
                //{
                //    objJsonResult.code = "0";
                //    objJsonResult.count = 0;
                //    objJsonResult.Message = "审核失败!无权限!";
                //    objJsonResult.data = null;
                //    return objJsonResult;
                //}
                //HInterID数据判断
                if (HInterID <= 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "HInterID小于0!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                Int64 lngBillKey = 0;
                lngBillKey = DBUtility.ClsPub.isLong(HInterID);                                         //对HInterID进行类型的转换
                DAL.ClsCg_POOrderBill oBill = new DAL.ClsCg_POOrderBill();                              //实例化单据操作类,用于进行相关操作
                //针对需要进行的操作,检验当前单据的状态是否支持需要进行的操作
                if (oBill.ShowBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo))                    //根据HInterID获取该单据的数据
                {
                    if (oBill.omodel.HCloseMan.Trim() != "")
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "单据已关闭!不能再次审核!";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    if (oBill.omodel.HDeleteMan.Trim() != "")
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "单据已作废!不能再次审核!";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    if (IsAudit == 0)  //审核判断
                    {
                        //判断是否已经发起审批
                        string sql0 = "select * from Xt_BillCheckFlowStatus where HBillInterID = " + lngBillKey + " and HBillTypeID = '" + oBill.BillType + "'";
                        DataSet ds0 = oCN.RunProcReturn(sql0, "Xt_BillCheckFlowStatus");
                        if (ds0 != null && ds0.Tables[0].Rows.Count == 0)
                        {
                            objJsonResult.code = "0";
                            objJsonResult.count = 0;
                            objJsonResult.Message = "审核失败!原因:单据未发起审批!";
                            objJsonResult.data = null;
                            return objJsonResult;
                        }
                        //判断单据当前状态
                        if (oBill.omodel.HChecker.Trim() != "")
                        {
                            objJsonResult.code = "0";
                            objJsonResult.count = 0;
                            objJsonResult.Message = "审核失败!原因:单据已完成审核!不能继续审核!";
                            objJsonResult.data = null;
                            return objJsonResult;
                        }
                    }
                    if (IsAudit == 1) //反审核判断
                    {
                        //判断是否存在审核过的项目
                        string sql0 = "select * from Xt_BillCheckFlowStatus where HBillInterID = " + lngBillKey + " and HBillTypeID = '" + oBill.BillType + "' and ISNULL(HChecker,'') <> ''";
                        DataSet ds0 = oCN.RunProcReturn(sql0, "Xt_BillCheckFlowStatus");
                        if (ds0 != null && ds0.Tables[0].Rows.Count == 0)
                        {
                            objJsonResult.code = "0";
                            objJsonResult.count = 0;
                            objJsonResult.Message = "反审核失败!原因:单据不存在已经审核的项目!!";
                            objJsonResult.data = null;
                            return objJsonResult;
                        }
                    }
                }
                else
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "单据不存在!原因:" + DBUtility.ClsPub.sExeReturnInfo;
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                oCN.BeginTran();
                //进行需要进行的审核/反审核操作
                if (IsAudit == 0) //审核提交
                {
                    #region å®¡æ ¸å‰çš„相关判断
                    //审核前控制=========================================
                    string sql1 = "exec h_p_Cg_POOrderBill_BeforeCheckCtrl " + oBill.omodel.HInterID + ",'" + oBill.omodel.HBillNo + "','" + CurUserName + "'";
                    ds = oCN.RunProcReturn(sql1, "h_p_Cg_POOrderBill_BeforeCheckCtrl");
                    if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "审核失败!原因:审核前判断失败,请与网络管理人员联系";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "审核失败!原因:" + ds.Tables[0].Rows[0]["HRemark"].ToString(); ;
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    //==================================================================================
                    //进行 ä¼šè®¡æœŸé—´ ç»“è´¦ çš„判断和控制
                    string s = "";
                    int sYear = 0;
                    int sPeriod = 0;
                    DateTime HDate = DateTime.Now;
                    if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod(HDate, ref sYear, ref sPeriod, ref s) == false)
                    {
                        objJsonResult.Message = s;
                        return objJsonResult;
                    }
                    #endregion
                    //获取当前审核项目
                    string sql0 = "select * from " + oBill.MvarItemKey + " where HInterID = " + lngBillKey;
                    DataSet ds0 = oCN.RunProcReturn(sql0, oBill.MvarItemKey);
                    string HCheckFlowID = ds0.Tables[0].Rows[0]["HCheckFlowID"].ToString();             //审批流内码
                    string HCheckItemNowID = ds0.Tables[0].Rows[0]["HCheckItemNowID"].ToString();       //当前审批项目内码
                    string HCheckItemNextID = ds0.Tables[0].Rows[0]["HCheckItemNextID"].ToString();     //待审批项目内码
                    //判断用户是否有权限 å®¡æ‰¹ å½“前审批流的审批项目
                    //string sql01 = "select * from Xt_CheckUserRight where HUserID = '" + CurUserID + "' and HCheckFlowInterID = " + HCheckFlowID + " and HCheckItemID = " + HCheckItemNowID + " and HValue = 1";
                    string sql01 = "select * from Xt_CheckUserRight where HUserID = '" + CurUserID + "' and HCheckFlowInterID = " + HCheckFlowID + " and HCheckItemID = " + HCheckItemNowID + "";
                    DataSet ds01 = oCN.RunProcReturn(sql01, "Xt_CheckUserRight");
                    if (ds01.Tables[0].Rows.Count == 0)
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "审核失败!原因:用户无当前审核项目的审核权限!";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    //更新 å•据审批状态表 ä¸­å¯¹åº”审核项目的审核状态
                    string sql02 = "update Xt_BillCheckFlowStatus set HChecker='" + CurUserName + "',HCheckDate=getdate() where HBillTypeID = '" + oBill.BillType + "' and HBillInterID=" + lngBillKey + " and HCheckFlowID=" + HCheckFlowID + " and HCheckItemID=" + HCheckItemNowID;
                    oCN.RunProc(sql02);
                    //判断当前审核项目是否是最后一个项目,如果是,审核后反写单据的单据状态。如果不是,获取下一个审核项目并更新到销售订单主表
                    if (HCheckItemNextID != "0")                //刚刚审核的审核项目不是最后一个审核项目
                    {
                        string sql03 = "select b.HInterID,b.HCheckItemID from Xt_CheckFlowMain as a " +
                                "inner join Xt_CheckFlowSub as b on a.HInterID = b.HInterID " +
                                "where a.HBillTypeID = '" + oBill.BillType + "' " +
                                "and a.HInterID = " + HCheckFlowID + " " +
                                "order by b.HFlowNo asc";
                        DataSet ds03 = oCN.RunProcReturn(sql03, "Xt_CheckFlowMain");
                        //获取新的当前审核项目和待审核项目
                        for (int i = 0; i < ds03.Tables[0].Rows.Count; i++)
                        {
                            if (ds03.Tables[0].Rows[i]["HCheckItemID"].ToString() == HCheckItemNextID)
                            {
                                HCheckItemNowID = HCheckItemNextID;
                            }
                            else if (HCheckItemNowID == HCheckItemNextID)
                            {
                                HCheckItemNextID = ds03.Tables[0].Rows[i]["HCheckItemID"].ToString();
                                break;
                            }
                        }
                        //新的当前审核项目为最后一个审核项目,待审核项目不存在,设为默认值"0"
                        if (HCheckItemNowID == HCheckItemNextID)
                        {
                            HCheckItemNextID = "0";
                        }
                        //更新单据主表的审批流数据
                        string sql04 = "update " + oBill.MvarItemKey + " set HCheckItemNowID=" + HCheckItemNowID + ",HCheckItemNextID=" + HCheckItemNextID + " where HInterID = " + lngBillKey;
                        oCN.RunProc(sql04);
                        objJsonResult.code = "1";
                        objJsonResult.count = 1;
                        objJsonResult.Message = "审核成功";
                        objJsonResult.data = null;
                    }
                    else                                                                //刚刚审核的审核项目是最后一个审核项目
                    {
                        //更新单据主表的审批流数据
                        HCheckItemNowID = "0";
                        HCheckItemNextID = "0";
                        string sql04 = "update " + oBill.MvarItemKey + " set HCheckItemNowID=" + HCheckItemNowID + ",HCheckItemNextID=" + HCheckItemNextID + " where HInterID = " + lngBillKey;
                        oCN.RunProc(sql04);
                        //更新单据的单据状态
                        if (oBill.CheckBill(oCN, oBill.omodel.HInterID, oBill.omodel.HBillNo, "h_p_Cg_POOrderBill_AfterCheckCtrl", CurUserName, ref DBUtility.ClsPub.sExeReturnInfo) == true)
                        {
                            objJsonResult.code = "1";
                            objJsonResult.count = 1;
                            objJsonResult.Message = "审核成功";
                            objJsonResult.data = null;
                        }
                        else
                        {
                            objJsonResult.code = "0";
                            objJsonResult.count = 0;
                            objJsonResult.Message = "审核失败!原因:" + DBUtility.ClsPub.sExeReturnInfo;
                            objJsonResult.data = null;
                            oCN.RollBack();
                            return objJsonResult;
                        }
                    }
                }
                if (IsAudit == 1) //反审核提交
                {
                    #region åå®¡æ ¸å‰çš„相关判断
                    //反审核前控制=========================================
                    DataSet ds = oCN.RunProcReturn("Exec h_p_Cg_POOrderBill_BeforeUnCheckCtrl " + oBill.omodel.HInterID + ",'" + oBill.omodel.HBillNo + "','" + CurUserName + "'", "h_p_Cg_POOrderBill_BeforeUnCheckCtrl");
                    if (ds == null)
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "反审核失败!原因:" + "反审核前判断失败!";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) != "0")
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "反审核失败!原因:" + DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]);
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    //=========================================================
                    //进行 ä¼šè®¡æœŸé—´ ç»“è´¦ çš„判断和控制
                    string s = "";
                    int sYear = 0;
                    int sPeriod = 0;
                    DateTime HDate = DateTime.Now;
                    if (DBUtility.Xt_BaseBillFun.Fun_AllowYearPeriod(HDate, ref sYear, ref sPeriod, ref s) == false)
                    {
                        objJsonResult.Message = s;
                        return objJsonResult;
                    }
                    #endregion
                    //获取需要反审核的审核项目
                    string sql0 = "select c.* from Xt_CheckFlowMain as a " +
                                  "inner join Xt_CheckFlowSub as b on a.HInterID = b.HInterID " +
                                  "inner join Xt_BillCheckFlowStatus as c on a.HBillTypeID = c.HBillTypeID and b.HCheckItemID = c.HCheckItemID " +
                                  "where c.HBillTypeID = '" + oBill.BillType + "' and c.HBillInterID = " + lngBillKey + " " +
                                  "order by b.HFlowNo asc";
                    DataSet ds0 = oCN.RunProcReturn(sql0, "Xt_BillCheckFlowStatus");
                    if (ds0 == null || ds0.Tables[0].Rows.Count == 0)
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "反审核失败!原因:未发起审批!";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    string HCheckFlowID = ds0.Tables[0].Rows[0]["HCheckFlowID"].ToString();             //审批流内码
                    string HCheckItemNowID = "0";       //当前审批项目内码
                    string HCheckItemNextID = "0";     //待审批项目内码
                    if (oBill.omodel.HBillStatus <= 1)
                    {
                        for (int i = 0; i < ds0.Tables[0].Rows.Count; i++)
                        {
                            if (ds0.Tables[0].Rows[i]["HChecker"].ToString() != "")
                            {
                                HCheckItemNowID = ds0.Tables[0].Rows[i]["HCheckItemID"].ToString();
                                HCheckItemNextID = ds0.Tables[0].Rows[i]["HCheckItemID"].ToString();
                            }
                            else
                            {
                                HCheckItemNextID = ds0.Tables[0].Rows[i]["HCheckItemID"].ToString();
                                break;
                            }
                        }
                        if (HCheckItemNowID == HCheckItemNextID)
                        {
                            HCheckItemNextID = "0";
                        }
                    }
                    else
                    {
                        HCheckItemNowID = ds0.Tables[0].Rows[ds0.Tables[0].Rows.Count - 1]["HCheckItemID"].ToString();
                        HCheckItemNextID = "0";
                    }
                    //判断用户是否有权限 å®¡æ‰¹ å½“前审批流的审批项目
                    //string sql01 = "select * from Xt_CheckUserRight where HUserID = '" + CurUserID + "' and HCheckFlowInterID = " + HCheckFlowID + " and HCheckItemID = " + HCheckItemNowID + " and HValue = 1";
                    string sql01 = "select * from Xt_CheckUserRight where HUserID = '" + CurUserID + "' and HCheckFlowInterID = " + HCheckFlowID + " and HCheckItemID = " + HCheckItemNowID + "";
                    DataSet ds01 = oCN.RunProcReturn(sql01, "Xt_CheckUserRight");
                    if (ds01.Tables[0].Rows.Count == 0)
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "反审核失败!原因:用户无当前审核项目的审核权限!";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    //更新 å•据审批状态表 ä¸­å¯¹åº”审核项目的审核状态
                    string sql02 = "update Xt_BillCheckFlowStatus set HChecker='',HCheckDate='' where HBillTypeID = '" + oBill.BillType + "' and HBillInterID=" + lngBillKey + " and HCheckFlowID=" + HCheckFlowID + " and HCheckItemID=" + HCheckItemNowID;
                    oCN.RunProc(sql02);
                    //判断反审核的单据是否已经审核完成,若审核完成,反审核需要变更单据状态。
                    if (oBill.omodel.HBillStatus <= 1)
                    {
                        //更新单据主表的审批流数据
                        string sql04 = "update " + oBill.MvarItemKey + " set HCheckItemNowID=" + HCheckItemNowID + ",HCheckItemNextID=" + HCheckItemNextID + " where HInterID = " + lngBillKey;
                        oCN.RunProc(sql04);
                        objJsonResult.code = "1";
                        objJsonResult.count = 1;
                        objJsonResult.Message = "审核成功";
                        objJsonResult.data = null;
                    }
                    else
                    {
                        //更新单据主表的审批流数据
                        string sql04 = "update " + oBill.MvarItemKey + " set HCheckItemNowID=" + HCheckItemNowID + ",HCheckItemNextID=" + HCheckItemNextID + " where HInterID = " + lngBillKey;
                        oCN.RunProc(sql04);
                        //反审核提交AbandonCheck
                        if (oBill.AbandonCheck(oCN, oBill.omodel.HInterID, oBill.omodel.HBillNo, "h_p_Xs_SeOrderBill_AfterUnCheckCtrl", CurUserName, ref DBUtility.ClsPub.sExeReturnInfo) == true)
                        {
                            objJsonResult.code = "1";
                            objJsonResult.count = 1;
                            objJsonResult.Message = "反审核成功";
                            objJsonResult.data = null;
                        }
                        else
                        {
                            objJsonResult.code = "0";
                            objJsonResult.count = 0;
                            objJsonResult.Message = "反审核失败!原因:" + DBUtility.ClsPub.sExeReturnInfo;
                            objJsonResult.data = null;
                            oCN.RollBack();
                            return objJsonResult;
                        }
                    }
                }
                oCN.Commit();
                return objJsonResult;
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "审核失败或者反审核失败!" + e.ToString();
                objJsonResult.data = null;
                oCN.RollBack();
                return objJsonResult;
            }
        }
        #endregion
    }
}
WebAPI/Controllers/CGGL/Cg_PayableBillController.cs
@@ -85,10 +85,11 @@
            string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
            string msg2 = sArray[0].ToString();                             //表头数据
            string msg3 = sArray[1].ToString();                             //子表1数据
            string refSav = sArray[2].ToString();                           //操作方式
            string msg4 = sArray[3].ToString();                             //用户
            string msg4 = sArray[2].ToString();                             //子表2数据
            string refSav = sArray[3].ToString();                           //操作方式
            string msg5 = sArray[4].ToString();                             //用户
            DBUtility.ClsPub.CurUserName = msg4;
            DBUtility.ClsPub.CurUserName = msg5;
            string UserName = "";
            string s = "";
@@ -189,6 +190,27 @@
                    oBill.DetailColl.Add(oItemSub);
                }
                //子表Entry
                //按 },{来拆分数组 //去掉【和】
                msg4 = msg4.Substring(1, msg4.Length - 2);
                msg4 = msg4.Replace("\\", "");
                msg4 = msg4.Replace("\n", "");  //\n
                //msg2 = msg2.Replace("'", "’");
                List<Model.ClsCg_PayableSub> ls2 = new List<Model.ClsCg_PayableSub>();
                ls2 = oListModels.getObjectByJson_Cg_PayableSub(msg4);
                int j = 0;
                foreach (Model.ClsCg_PayableSub oItemSub in ls2)
                {
                    j++;
                    oItemSub.HEntryID = j;
                    oItemSub.HCloseMan = "";       //行关闭
                    oItemSub.HEntryCloseDate = DBUtility.ClsPub.isDate(DateTime.Now);
                    oItemSub.HCloseType = false;   //关闭类型
                    oBill.DetailCol2.Add(oItemSub);
                }
                //进行 ä¼šè®¡æœŸé—´ ç»“è´¦ çš„判断和控制
                int sYear = 0;
@@ -253,6 +275,7 @@
            try
            {
                ds = oCN.RunProcReturn("select * from h_v_Cg_PayableBillList_EditInit where hmainid=" + HInterID, "h_v_Cg_PayableBillList_EditInit");
                objJsonResult.data = ds.Tables[0];
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
@@ -263,10 +286,16 @@
                }
                else
                {
                    ds = oCN.RunProcReturn(@"select a.*,mater.HNumber AS ç‰©æ–™ä»£ç , mater.HName AS ç‰©æ–™åç§°, mater.HModel AS è§„格型号, mater.HUnitID, unit.HName AS è®¡é‡å•位 from Cg_PayableSub_Entry AS a LEFT OUTER JOIN
                dbo.Gy_Material AS mater ON a.HMaterID = mater.HItemID LEFT OUTER JOIN
                dbo.Gy_Unit AS unit ON mater.HUnitID = unit.HItemID where HInterID=" + HInterID, "Cg_PayableSub_Entry");
                    List<Object> dataTables = new List<Object>();
                    dataTables.Add(ds.Tables[0]);
                    objJsonResult.code = "1";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "Sucess!";
                    objJsonResult.data = ds.Tables[0];
                    objJsonResult.list = dataTables;
                    return objJsonResult;
                }
            }
@@ -364,7 +393,7 @@
                oCN.RunProc("delete from Cg_PayableBillMain where HInterID = " + HInterID);
                oCN.RunProc("delete from Cg_PayableSub where HInterID= " + HInterID);
                oCN.RunProc("delete from Cg_PayableSub_Entry where HInterID= " + HInterID);
                ////删除后控制==================================================================================      
                //string sql2 = "exec h_p_Xs_ReceivableBill_AfterDelCtrl " + BillOld.omodel.HInterID + ",'" + BillOld.omodel.HBillNo + "','" + user + "'";
                //ds = oCN.RunProcReturn(sql2, "h_p_Xs_ReceivableBill_AfterDelCtrl");
WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs
@@ -148,6 +148,7 @@
                Int64 HShiftsID = list[0].HShiftsID;//生产班次
                double HToCheckQty = list[0].HToCheckQty;//取样数量
                double HLossQty = list[0].HLossQty;//遗失数量
                double HBackWorkByMaterQty = list[0].HBackWorkByMaterQty;//遗失数量
                LogService.Write($"1.字段赋值,用时" + sw.Elapsed );
@@ -390,7 +391,7 @@
                    ",HMainSourceInterID,HMainSourceBillNo,HMainSourceBillType,HLastSubProc" +
                    ",HEmpID2,HEmpID3,HEmpID4,HEmpID5,HDSQty,HChongQty,HPriceRate,HWorkTimes,HQCCheckID,HMainInterID,HPRDOrgID" +
                    ",HmaterOutqty,HProcPriceRate,HTemporaryAreaID,HWasterQty_Work,HWasterQty_Mater,HBackWorkQty,HShiftsID" +
                    ",HToCheckQty,HLossQty" +
                    ",HToCheckQty,HLossQty,HBackWorkByMaterQty" +
                    ") " +
                    " values('" + BillType + "','" + (OperationType == "5" ? "SUB" : HBillSubType)  + "'," + HInterID + ",'" + HBillNo + "'," + HBillStatus + ",getdate(),'" + HMaker + "',getdate(),'" + HMouldNum + "'" +
                    "," + HYear + "," + HPeriod + ",'" + HRemark + "','" + HSourceName + "'," + HPieceQty + "," + HWasterQty + "," + HPlanPieceQty + "," + HBadPNL +
@@ -401,7 +402,7 @@
                    "," + HMainSourceInterID + ",'" + HMainSourceBillNo + "','" + HMainSourceBillType + "'," + Convert.ToString(HLastSubProc ? 1 : 0) +
                    "," + HEmpID2 + "," + HEmpID3 + "," + HEmpID4 + "," + HEmpID5 + "," + HDSQty + "," + HChongQty + "," + HPriceRate + "," + HWorkTimes + "," + HQCCheckID + "," + HMainInterID + "," + HPRDOrgID +
                    "," + HmaterOutqty + "," + HProcPriceRate + "," + HTemporaryAreaID + "," + HWasterQty_Work + "," + HWasterQty_Mater + "," + HBackWorkQty +
                    "," + HShiftsID + "," + HToCheckQty + "," + HLossQty + ") ");
                    "," + HShiftsID + "," + HToCheckQty + "," + HLossQty + ","+ HBackWorkByMaterQty + ") ");
                    LogService.Write($"4.新增结束,用时" + sw.Elapsed);
                    LogService.Write("用户:" + user + ",日期:" + DateTime.Now + ",新增工序出站单据:" + HBillNo);
@@ -445,6 +446,7 @@
                    ",HWasterQty_Mater=" + HWasterQty_Mater +
                    ",HBackWorkQty=" + HBackWorkQty +
                    ",HShiftsID=" + HShiftsID +
                    ",HBackWorkByMaterQty=" + HBackWorkByMaterQty +
                    " where HInterID=" + HInterID);
                    LogService.Write("用户:" + user + ",日期:" + DateTime.Now + ",修改工序出站单据:" + HBillNo);
WebAPI/Controllers/Kf_ICStockBillMainController.cs
@@ -156,9 +156,35 @@
                        else
                        {
                            string HCheckDate = DateTime.Now.Date.ToString();
                            oCN.BeginTran();
                            oCN.RunProc(" Update Kf_ICStockBillMain set HChecker='" + CurUserName + "',HCheckDate='" + HCheckDate + "',HBillStatus=2 Where HBillType='1247' and HInterID=" + HInterID);
                            //审核更新 åŠæ—¶åº“存表 å¢žåŠ åº“å­˜
                            ds = oCN.RunProcReturn("exec h_KF_UPDateICinventory  '" + oBill.omodel.HInterID + "','" + oBill.omodel.HBillType + "','1'", "h_KF_UPDateICinventory");
                            //=========================审核反审核后负库存控制
                            DataSet ds2 = oCN.RunProcReturn("Exec h_p_KF_ICinventoryStockCtrl '" + oBill.omodel.HInterID + "', '" + oBill.omodel.HBillType + "'", "h_p_KF_ICinventoryStockCtrl");
                            if (ds2 == null)
                            {
                                oCN.RollBack();
                                objJsonResult.code = "0";
                                objJsonResult.count = 1;
                                objJsonResult.Message = "审核失败!原因:" + "库存更新后控制判断失败";
                                objJsonResult.data = null;
                                return objJsonResult;
                            }
                            if (DBUtility.ClsPub.isStrNull(ds2.Tables[0].Rows[0]["HBack"]) != "0")
                            {
                                oCN.RollBack();
                                string sReturn = "库存更新失败!" + DBUtility.ClsPub.isStrNull(ds2.Tables[0].Rows[0]["HBackRemark"]);
                                objJsonResult.code = "0";
                                objJsonResult.count = 1;
                                objJsonResult.Message = "审核失败!原因:" + sReturn;
                                objJsonResult.data = null;
                                return objJsonResult;
                            }
                            //============================
                            oCN.Commit();
                            objJsonResult.code = "0";
                            objJsonResult.count = 1;
                            objJsonResult.Message = "审核成功!";
@@ -179,9 +205,35 @@
                        else
                        {
                            string HCheckDate = DateTime.Now.Date.ToString();
                            oCN.BeginTran();
                            oCN.RunProc(" Update Kf_ICStockBillMain set HChecker=' ',HCheckDate=null,HBillStatus=1 Where HBillType='1247' and HInterID=" + HInterID);
                            //审核更新 åŠæ—¶åº“存表 å‡å°‘库存
                            ds = oCN.RunProcReturn("exec h_KF_UPDateICinventory  '" + oBill.omodel.HInterID + "','" + oBill.omodel.HBillType + "','2'", "h_KF_UPDateICinventory");
                            //=========================审核反审核后负库存控制
                            DataSet ds2 = oCN.RunProcReturn("Exec h_p_KF_ICinventoryStockCtrl '" + oBill.omodel.HInterID + "', '" + oBill.omodel.HBillType + "'", "h_p_KF_ICinventoryStockCtrl");
                            if (ds2 == null)
                            {
                                oCN.RollBack();
                                objJsonResult.code = "0";
                                objJsonResult.count = 1;
                                objJsonResult.Message = "审核失败!原因:" + "库存更新后控制判断失败";
                                objJsonResult.data = null;
                                return objJsonResult;
                            }
                            if (DBUtility.ClsPub.isStrNull(ds2.Tables[0].Rows[0]["HBack"]) != "0")
                            {
                                oCN.RollBack();
                                string sReturn = "库存更新失败!" + DBUtility.ClsPub.isStrNull(ds2.Tables[0].Rows[0]["HBackRemark"]);
                                objJsonResult.code = "0";
                                objJsonResult.count = 1;
                                objJsonResult.Message = "审核失败!原因:" + sReturn;
                                objJsonResult.data = null;
                                return objJsonResult;
                            }
                            //============================
                            oCN.Commit();
                            objJsonResult.code = "0";
                            objJsonResult.count = 1;
                            objJsonResult.Message = "反审核成功!";
WebAPI/Controllers/LMESController.cs
@@ -1876,6 +1876,44 @@
        }
        #endregion
        #region èžºæ¯æ£€éªŒCCD合格率
        [Route("LEMS/Sc_NutInspectionCCDPassRate")]
        [HttpGet]
        public object Sc_NutInspectionCCDPassRate(string HBatchNo, string user)
        {
            try
            {
                DataSet ds;
                List<object> columnNameList = new List<object>();
                ds = oCN.RunProcReturn("exec h_p_Sc_NutInspectionCCDPassRate '" + HBatchNo + "'", "h_p_Sc_NutInspectionCCDPassRate");
                //添加列名
                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列对象的列名
                }
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "Sucess!";
                objJsonResult.data = ds.Tables[0];
                objJsonResult.list = columnNameList;
                return objJsonResult;
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "Exception!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region é”€å”®ç»Ÿè®¡æŠ¥è¡¨
        [Route("LEMS/SeOutReportList")]
        [HttpGet]
WebAPI/Controllers/SBGL/SB_EquipICMOTechParamBillController.cs
@@ -743,7 +743,7 @@
                bool bResult;
                if (OperationType == "1")   //新增保存
                {
                    bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
                    bResult = oBill.AddBill (ref DBUtility.ClsPub.sExeReturnInfo);
                }
                else                        //编辑保存
                {
WebAPI/Controllers/Sc_MouldRepairInBillListController.cs
@@ -1248,8 +1248,6 @@
                    }
                    //================================================================================== 
                    //更新及时库存表   å‡å°‘调入库存,增加调出库存
                    ds = oCN.RunProcReturn("exec h_KF_UPDateICinventory_Move  '"+ oBill.omodel.HInterID + "','"+ oBill.omodel.HBillType+ "','1'", "h_KF_UPDateICinventory_Move");
                    //审核单据
                    if (!oBill.CheckBill(oBill.omodel.HInterID, oBill.omodel.HBillNo, "h_p_Kf_MoveStockBill_AfterCheckCtrl", user, ref DBUtility.ClsPub.sExeReturnInfo) == true)
@@ -1301,9 +1299,6 @@
                        return objJsonResult;
                    }
                    //===========================================================          
                    //更新及时库存表   å¢žåŠ è°ƒå…¥åº“å­˜,减少调出库存
                    ds = oCN.RunProcReturn("exec h_KF_UPDateICinventory_Move  '" + oBill.omodel.HInterID + "','" + oBill.omodel.HBillType + "','2'", "h_KF_UPDateICinventory_Move");
                    //反审核单据
                    if (oBill.AbandonCheck(oBill.omodel.HInterID, oBill.omodel.HBillNo, "h_p_Kf_MoveStockBill_AfterUnCheckCtrl", user, ref DBUtility.ClsPub.sExeReturnInfo) == true)
WebAPI/Controllers/XSGL/Kf_SellOutBillController.cs
@@ -593,6 +593,28 @@
                    oCN.RunProc("exec h_p_Kf_SellOutBill_Check " + HInterID + ",'" + oBill.BillType + "','" + CurUserName + "'");
                    //审核更新 åŠæ—¶åº“存表 å‡å°‘库存
                    ds = oCN.RunProcReturn("exec h_KF_UPDateICinventory  '" + HInterID + "','" + oBill.BillType + "','1'", "h_KF_UPDateICinventory");
                    //=========================审核反审核后负库存控制
                    DataSet ds2 = oCN.RunProcReturn("Exec h_p_KF_ICinventoryStockCtrl '" + HInterID + "', '" + oBill.BillType + "'", "h_p_KF_ICinventoryStockCtrl");
                    if (ds2 == null)
                    {
                        oCN.RollBack();
                        objJsonResult.code = "0";
                        objJsonResult.count = 1;
                        objJsonResult.Message = "审核失败!原因:" + "库存更新后控制判断失败";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    if (DBUtility.ClsPub.isStrNull(ds2.Tables[0].Rows[0]["HBack"]) != "0")
                    {
                        oCN.RollBack();
                        string sReturn = "库存更新失败!" + DBUtility.ClsPub.isStrNull(ds2.Tables[0].Rows[0]["HBackRemark"]);
                        objJsonResult.code = "0";
                        objJsonResult.count = 1;
                        objJsonResult.Message = "审核失败!原因:" + sReturn;
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    //============================
                    //写入日志
                    string WorkList = "审核单据,单据号:" + oBill.omodel.HBillNo;
                    string SystemName = "LMES-销售出库单模块";
WebAPI/Controllers/XSGL/Xs_ReceivableBillController.cs
@@ -94,10 +94,11 @@
            string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
            string msg2 = sArray[0].ToString();                             //表头数据
            string msg3 = sArray[1].ToString();                             //子表1数据
            string refSav = sArray[2].ToString();                           //操作方式
            string msg4 = sArray[3].ToString();                             //用户
            string msg4 = sArray[2].ToString();                             //子表2数据
            string refSav = sArray[3].ToString();                           //操作方式
            string msg5 = sArray[4].ToString();                             //用户
            DBUtility.ClsPub.CurUserName = msg4;
            DBUtility.ClsPub.CurUserName = msg5;
            string UserName = "";
            string s = "";
@@ -105,7 +106,7 @@
            try
            {
                //编辑权限
                if (!DBUtility.ClsPub.Security_Log_second("Xs_ReceivableBill_Edit", 1, false, msg4))
                if (!DBUtility.ClsPub.Security_Log_second("Xs_ReceivableBill_Edit", 1, false, msg5))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
@@ -207,6 +208,28 @@
                }
                //子表Entry
                //按 },{来拆分数组 //去掉【和】
                msg4 = msg4.Substring(1, msg4.Length - 2);
                msg4 = msg4.Replace("\\", "");
                msg4 = msg4.Replace("\n", "");  //\n
                //msg2 = msg2.Replace("'", "’");
                List<Model.ClsXs_ReceivableBillSub> ls2 = new List<Model.ClsXs_ReceivableBillSub>();
                ls2 = oListModels.getObjectByJson_Xs_ReceivableBillSub(msg4);
                int j = 0;
                foreach (Model.ClsXs_ReceivableBillSub oItemSub in ls2)
                {
                    j++;
                    oItemSub.HEntryID = j;
                    oItemSub.HCloseMan = "";       //行关闭
                    oItemSub.HEntryCloseDate = DBUtility.ClsPub.isDate(DateTime.Now);
                    oItemSub.HCloseType = false;   //关闭类型
                    oBill.DetailCol2.Add(oItemSub);
                }
                //进行 ä¼šè®¡æœŸé—´ ç»“è´¦ çš„判断和控制
                int sYear = 0;
@@ -270,6 +293,7 @@
            try
            {
                ds = oCN.RunProcReturn("select * from h_v_Xs_ReceivableBillList_EditInit where hmainid=" + HInterID, "h_v_Xs_ReceivableBillList_EditInit");
                objJsonResult.data = ds.Tables[0];
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
@@ -280,10 +304,15 @@
                }
                else
                {
                    ds = oCN.RunProcReturn(@"select a.*,mater.HNumber AS ç‰©æ–™ä»£ç , mater.HName AS ç‰©æ–™åç§°, mater.HModel AS è§„格型号, mater.HUnitID, unit.HName AS è®¡é‡å•位 from Xs_ReceivableBillSub_Entry AS a LEFT OUTER JOIN
                dbo.Gy_Material AS mater ON a.HMaterID = mater.HItemID LEFT OUTER JOIN
                dbo.Gy_Unit AS unit ON mater.HUnitID = unit.HItemID where HInterID=" + HInterID, "Xs_ReceivableBillSub_Entry");
                    List<Object> dataTables = new List<Object>();
                    dataTables.Add(ds.Tables[0]);
                    objJsonResult.code = "1";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "Sucess!";
                    objJsonResult.data = ds.Tables[0];
                    objJsonResult.list = dataTables;
                    return objJsonResult;
                }
            }
@@ -399,7 +428,7 @@
                oCN.RunProc("delete from Xs_ReceivableBillMain where HInterID = " + HInterID);
                oCN.RunProc("delete from Xs_ReceivableBillSub where HInterID= " + HInterID);
                oCN.RunProc("delete from Xs_ReceivableBillSub_Entry where HInterID= " + HInterID);
                ////删除后控制==================================================================================      
                //string sql2 = "exec h_p_Xs_ReceivableBill_AfterDelCtrl " + BillOld.omodel.HInterID + ",'" + BillOld.omodel.HBillNo + "','" + user + "'";
                //ds = oCN.RunProcReturn(sql2, "h_p_Xs_ReceivableBill_AfterDelCtrl");
WebAPI/Controllers/Æ·ÖʹÜÀí/Ѳ¼ìµ¥/QC_PatrolProcCheckOtherBillController.cs
@@ -179,6 +179,8 @@
                BillNew.omodel.HShiftsID = ClsPub.isLong(mainList[0].HShiftsID);
                BillNew.omodel.HErrTreatment = ClsPub.isStrNull(mainList[0].HErrTreatment);
                BillNew.omodel.HBatchNo = ClsPub.isStrNull(mainList[0].HBatchNo);
                BillNew.omodel.HTakeSampleCheckBillID = ClsPub.isLong(mainList[0].HTakeSampleCheckBillID);
                BillNew.omodel.HTakeSampleCheckBillNo = ClsPub.isStrNull(mainList[0].HTakeSampleCheckBillNo);
                List<Model.ClsQC_PatrolProcCheckOtherBillSub> subList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsQC_PatrolProcCheckOtherBillSub>>(msg3);
                BillNew.DetailColl = new List<Model.ClsQC_PatrolProcCheckOtherBillSub>();
                for (int i = 0; i < subList.ToArray().Length; i++)
WebAPI/Controllers/Æ·ÖʹÜÀí/¹¤Ðò¼ìÑéµ¥/QC_ProcessCheckBillController.cs
@@ -831,6 +831,8 @@
                BillNew.omodel.HShiftsID = ClsPub.isLong(mainList[0].HShiftsID);
                BillNew.omodel.HErrTreatment = ClsPub.isStrNull(mainList[0].HErrTreatment);
                BillNew.omodel.HBatchNo = ClsPub.isStrNull(mainList[0].HBatchNo);
                BillNew.omodel.HTakeSampleCheckBillID = ClsPub.isLong(mainList[0].HTakeSampleCheckBillID);
                BillNew.omodel.HTakeSampleCheckBillNo = ClsPub.isStrNull(mainList[0].HTakeSampleCheckBillNo);
                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++)
WebAPI/Controllers/Æ·ÖʹÜÀí/¿â´æ¼ìÑéµ¥/QC_StockCheckBillController.cs
@@ -136,6 +136,11 @@
                BillNew.omodel.HMainSourceBillNo = ClsPub.isStrNull(mainList[0].HMainSourceBillNo);
                BillNew.omodel.HMainSourceBillType = ClsPub.isStrNull(mainList[0].HMainSourceBillType);
                BillNew.omodel.HQCSchemeID = ClsPub.isLong(mainList[0].HQCSchemeID);                
                BillNew.omodel.HBatchNo = ClsPub.isStrNull(mainList[0].HBatchNo);
                BillNew.omodel.HInSpectQty = ClsPub.isLong(mainList[0].HInSpectQty);
                BillNew.omodel.HRightQty = ClsPub.isLong(mainList[0].HRightQty);
                BillNew.omodel.HUnRightQty = ClsPub.isLong(mainList[0].HUnRightQty);
                BillNew.omodel.HUnKnowQty = ClsPub.isLong(mainList[0].HUnKnowQty);
                BillNew.omodel.HBillStatus = 1;
                BillNew.omodel.HShiftsID = ClsPub.isLong(mainList[0].HShiftsID);
                BillNew.omodel.HErrTreatment = ClsPub.isStrNull(mainList[0].HErrTreatment);
WebAPI/Controllers/Æ·ÖʹÜÀí/ÖÊÁ¿±¨±í/QC_QualityReportsController.cs
@@ -574,5 +574,362 @@
        }
        #endregion
        #region è´¨é‡æ¨¡å— å«æ°´çŽ‡æ•°æ®å°è´¦
        /// <summary>
        /// è¿”回直通率报表列表
        ///参数:string sql。
        ///返回值:object。
        /// </summary>
        [Route("QC_CustomerAppealReport/QC_MoistureContentDataLedger")]
        [HttpGet]
        public object QC_MoistureContentDataLedger(string sWhere, string user)
        {
            try
            {
                List<object> columnNameList = new List<object>();
                if (sWhere == null || sWhere == "")
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无查询条件!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                Dictionary<object, object> dic = Newtonsoft.Json.JsonConvert.DeserializeObject<Dictionary<object, object>>(sWhere);
                string HBeginDate = dic["HBeginDate"].ToString();
                string HEndDate = dic["HEndDate"].ToString();
                string HResult = dic["HResult"].ToString();
                int HSourceID = int.Parse(dic["HSourceID"].ToString());
                ds = oCN.RunProcReturn("exec h_p_QC_MoistureContentDataLedger '" + HBeginDate + "','" + HEndDate + "','" + HResult + "'," + HSourceID, "h_p_QC_MoistureContentDataLedger");
                //添加列名
                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列对象的列名
                }
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "Sucess!";
                objJsonResult.data = ds.Tables[0];
                objJsonResult.list = columnNameList;
                return objJsonResult;
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "Exception!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region è´¨é‡æ¨¡å—    å„工序质量趋势图 æŸ¥è¯¢
        [Route("QC_CustomerAppealReport/getSc_StationOutBill_HProc")]
        [HttpGet]
        public object getSc_HMaterYieldStatistics(string sWhere, string user)
        {
            try
            {
                List<object> columnNameList = new List<object>();
                if (sWhere == null || sWhere.Equals(""))
                {
                    ds = oCN.RunProcReturn("select * from h_v_Sc_StationOutBillQuery_HProc order by æ—¥æœŸ desc", "h_v_Sc_StationOutBillQuery_HProc");
                }
                else
                {
                    string sql1 = "select * from h_v_Sc_StationOutBillQuery_HProc where 1 = 1 ";
                    string sql = sql1 + sWhere + " order by æ—¥æœŸ ";
                    ds = oCN.RunProcReturn(sql, "h_v_Sc_StationOutBillQuery_HProc");
                }
                //添加列名
                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列对象的列名
                }
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "Sucess!";
                objJsonResult.data = ds.Tables[0];
                objJsonResult.list = columnNameList;
                return objJsonResult;
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "Exception!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region è´¨é‡æ¨¡å—    è®¾å¤‡å·¥è‰ºå‚数趋势图 æ ¹æ®æµè½¬å¡èŽ·å–è®¾å¤‡
        [Route("QC_CustomerAppealReport/Get_EquipList")]
        [HttpGet]
        public object Get_EquipList(string HProcExchBillNo, string user)
        {
            try
            {
                List<object> columnNameList = new List<object>();
                ds = oCN.RunProcReturn("select distinct b.HInterID HItemID,b.HName HName  from SB_EquipICMOTechParamBillMain a left join Gy_EquipFileBillMain  b on a.HEquipID=b.HInterID where HProcExchBillNo='" + HProcExchBillNo + "'", "SB_EquipICMOTechParamBillMain");
                //添加列名
                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列对象的列名
                }
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "Sucess!";
                objJsonResult.data = ds.Tables[0];
                objJsonResult.list = columnNameList;
                return objJsonResult;
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "Exception!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region è´¨é‡æ¨¡å— è®¾å¤‡å·¥è‰ºå‚数趋势图
        [Route("QC_CustomerAppealReport/SB_EquipICMOTechParamList")]
        [HttpGet]
        public object SB_EquipICMOTechParamList(string sWhere, string user)
        {
            try
            {
                List<object> columnNameList = new List<object>();
                Dictionary<object, object> dic = Newtonsoft.Json.JsonConvert.DeserializeObject<Dictionary<object, object>>(sWhere);
                string HProcExchBillNo = dic["HProcExchBillNo"].ToString();
                string HProcName = dic["HProcName"].ToString();
                string HTechParamName = dic["HTechParamName"].ToString();
                string HEquipName = dic["HEquipName"].ToString();
                if ((HProcExchBillNo == null || HProcExchBillNo == "")&&(HProcName == null || HProcName == "") && (HTechParamName == null || HTechParamName == "") && (HEquipName == null || HEquipName == ""))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无查询条件!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                ds = oCN.RunProcReturn("exec h_p_SB_EquipICMOTechParamBillList '" + HProcExchBillNo + "','" + HProcName + "','" + HTechParamName + "',"+HEquipName, "h_p_SB_EquipICMOTechParamBillList");
                //添加列名
                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列对象的列名
                }
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "Sucess!";
                objJsonResult.data = ds.Tables[0];
                objJsonResult.list = columnNameList;
                return objJsonResult;
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "Exception!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region è´¨é‡æ¨¡å— æ€§èƒ½æŠ¥åºŸå°è´¦
        /// <summary>
        /// è¿”回直通率报表列表
        ///参数:string sql。
        ///返回值:object。
        /// </summary>
        [Route("QC_CustomerAppealReport/QC_PerformanceScrapLedger")]
        [HttpGet]
        public object QC_PerformanceScrapLedger(string sWhere, string user)
        {
            try
            {
                List<object> columnNameList = new List<object>();
                if (sWhere == null || sWhere == "")
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无查询条件!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                Dictionary<object, object> dic = Newtonsoft.Json.JsonConvert.DeserializeObject<Dictionary<object, object>>(sWhere);
                string HBeginDate = dic["HBeginDate"].ToString();
                string HEndDate = dic["HEndDate"].ToString();
                string HBatchNo = dic["HBatchNo"].ToString();
                int HMaterID = int.Parse(dic["HMaterID"].ToString());
                ds = oCN.RunProcReturn("exec h_p_QC_PerformanceScrapLedger '" + HBeginDate + "','" + HEndDate + "','" + HMaterID + "','" + HBatchNo+"'", "h_p_QC_PerformanceScrapLedger");
                //添加列名
                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列对象的列名
                }
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "Sucess!";
                objJsonResult.data = ds.Tables[0];
                objJsonResult.list = columnNameList;
                return objJsonResult;
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "Exception!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region è´¨é‡æ¨¡å— é€æµ‹ç™»è®°æ•°æ®å°è´¦
        /// <summary>
        /// è¿”回直通率报表列表
        ///参数:string sql。
        ///返回值:object。
        /// </summary>
        [Route("QC_CustomerAppealReport/QC_RegistrationForTestingReport")]
        [HttpGet]
        public object QC_RegistrationForTestingReport(string sWhere, string user)
        {
            try
            {
                List<object> columnNameList = new List<object>();
                if (sWhere == null || sWhere == "")
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无查询条件!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                Dictionary<object, object> dic = Newtonsoft.Json.JsonConvert.DeserializeObject<Dictionary<object, object>>(sWhere);
                string HBeginDate = dic["HBeginDate"].ToString();
                string HEndDate = dic["HEndDate"].ToString();
                string HBatchNo = dic["HBatchNo"].ToString();
                int HMaterID = int.Parse(dic["HMaterID"].ToString());
                ds = oCN.RunProcReturn("exec h_p_QC_RegistrationForTestingReport '" + HBeginDate + "','" + HEndDate + "','" + HMaterID + "','" + HBatchNo + "'", "h_p_QC_RegistrationForTestingReport");
                //添加列名
                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列对象的列名
                }
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "Sucess!";
                objJsonResult.data = ds.Tables[0];
                objJsonResult.list = columnNameList;
                return objJsonResult;
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "Exception!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region è´¨é‡æ¨¡å—   åˆ¶ç¨‹ç»©æ•ˆè¶‹åŠ¿å›¾(一次合格率)  æŸ¥è¯¢
        [Route("QC_CustomerAppealReport/getQC_ProcessPerformanceFirstPass")]
        [HttpGet]
        public object getQC_ProcessPerformanceFirstPass(string sWhere, string user)
        {
            try
            {
                List<object> columnNameList = new List<object>();
                if (sWhere == null || sWhere.Equals(""))
                {
                    ds = oCN.RunProcReturn("select * from h_v_QC_ProcessPerformanceFirstPassList order by æœˆä»½ desc", "h_v_QC_ProcessPerformanceFirstPassList");
                }
                else
                {
                    string sql1 = "select * from h_v_QC_ProcessPerformanceFirstPassList where 1 = 1 ";
                    string sql = sql1 + sWhere + " order by æœˆä»½ ";
                    ds = oCN.RunProcReturn(sql, "h_v_QC_ProcessPerformanceFirstPassList");
                }
                //添加列名
                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列对象的列名
                }
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "Sucess!";
                objJsonResult.data = ds.Tables[0];
                objJsonResult.list = columnNameList;
                return objJsonResult;
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "Exception!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
    }
}
WebAPI/Controllers/Æ·ÖʹÜÀí/Ê×¼þ¼ìÑéµ¥/QC_FirstPieceCheckBillController.cs
@@ -254,6 +254,8 @@
                BillNew.omodel.HShiftsID = ClsPub.isLong(mainList[0].HShiftsID);
                BillNew.omodel.HErrTreatment = ClsPub.isStrNull(mainList[0].HErrTreatment);
                BillNew.omodel.HBatchNo = ClsPub.isStrNull(mainList[0].HBatchNo);
                BillNew.omodel.HTakeSampleCheckBillID = ClsPub.isLong(mainList[0].HTakeSampleCheckBillID);
                BillNew.omodel.HTakeSampleCheckBillNo = ClsPub.isStrNull(mainList[0].HTakeSampleCheckBillNo);
                List<Model.ClsQC_FirstPieceCheckBillSub> subList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsQC_FirstPieceCheckBillSub>>(msg3);
                BillNew.DetailColl = new List<Model.ClsQC_FirstPieceCheckBillSub>();
                for (int i = 0; i < subList.ToArray().Length; i++)
WebAPI/Controllers/ÌõÂë¹ÜÀí/WEBSController.cs
@@ -8596,6 +8596,53 @@
        #endregion
        #region æ‰«ç éªŒè¯å• è¿”回补扫清单列表
        [Route("WEBSController/Gy_BarCodeConfirmBill_getSuppRushList")]
        [HttpGet]
        public object Gy_BarCodeConfirmBill_getSuppRushList(long HInterID, string HBillNo, string HBillType, long HOrgID)
        {
            try
            {
                string sql = "exec h_p_Gy_BarCodeConfirmBill_getSuppRushList " + HInterID + ",'" + HBillNo + "','" + HBillType + "'," + HOrgID;
                ds = oCn.RunProcReturn(sql, "h_p_Gy_BarCodeConfirmBill_getSuppRushList");
                if (ds == null || ds.Tables.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "没有返回任何记录!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                else
                {
                    List<object> columnNameList = new List<object>();
                    //添加列名
                    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列对象的列名
                    }
                    objJsonResult.code = "0";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "获取信息成功!";
                    objJsonResult.data = ds.Tables[0];
                    objJsonResult.list = columnNameList;
                    return objJsonResult;
                }
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "获取列表信息失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region æ‰«ç éªŒè¯å• åˆ é™¤æ‰«ç è®°å½•
        /// <summary>
WebAPI/Models/StationBill.cs
@@ -84,6 +84,7 @@
        public double HWasterQty_Work { get; set; }
        public double HWasterQty_Mater { get; set; }
        public double HBackWorkByMaterQty { get; set; }
        public double HBackWorkQty { get; set; }
        public double HToCheckQty { get; set; }
        public double HLossQty { get; set; }
WebAPI/Models/»ù´¡×ÊÁÏ/Warehouse.cs
@@ -32,6 +32,7 @@
        public string HMaker { get; set; }
        public string HUpDater { get; set; }
        public bool HStockCtrlFlag { get; set; }
    }
}
WebAPI/Properties/PublishProfiles/FolderProfile.pubxml
@@ -10,7 +10,7 @@
    <LastUsedBuildConfiguration>Debug</LastUsedBuildConfiguration>
    <LastUsedPlatform>x86</LastUsedPlatform>
    <PublishProvider>FileSystem</PublishProvider>
    <PublishUrl>D:\网站发布\智云MESWMS\API</PublishUrl>
    <PublishUrl>G:\issWeb\网站发布\API</PublishUrl>
    <WebPublishMethod>FileSystem</WebPublishMethod>
    <SiteUrlToLaunchAfterPublish />
  </PropertyGroup>
WebAPI/Properties/PublishProfiles/FolderProfile16.pubxml.user
@@ -4,7 +4,7 @@
-->
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <History>True|2024-07-29T01:30:44.3113957Z;True|2024-07-26T13:27:05.3100287+08:00;True|2024-07-25T12:57:25.7827986+08:00;True|2024-07-25T12:48:25.8401673+08:00;True|2024-07-25T12:25:00.9066053+08:00;True|2024-07-25T12:09:48.5121840+08:00;True|2024-07-25T12:07:16.8901099+08:00;True|2024-07-25T11:47:55.2038773+08:00;True|2024-07-25T11:32:21.7937362+08:00;False|2024-07-25T11:30:05.1250197+08:00;</History>
    <History>True|2024-07-30T05:46:38.2809487Z;True|2024-07-30T13:44:15.6042609+08:00;True|2024-07-30T13:41:03.9794489+08:00;True|2024-07-30T13:39:44.3877816+08:00;True|2024-07-30T13:03:34.9002627+08:00;True|2024-07-29T15:32:50.8660913+08:00;True|2024-07-29T15:30:34.1315708+08:00;True|2024-07-29T09:30:44.3113957+08:00;True|2024-07-26T13:27:05.3100287+08:00;True|2024-07-25T12:57:25.7827986+08:00;True|2024-07-25T12:48:25.8401673+08:00;True|2024-07-25T12:25:00.9066053+08:00;True|2024-07-25T12:09:48.5121840+08:00;True|2024-07-25T12:07:16.8901099+08:00;True|2024-07-25T11:47:55.2038773+08:00;True|2024-07-25T11:32:21.7937362+08:00;False|2024-07-25T11:30:05.1250197+08:00;</History>
    <_PublishTargetUrl>D:\网站发布\智云MESWMS\API</_PublishTargetUrl>
  </PropertyGroup>
  <ItemGroup>
@@ -21,28 +21,28 @@
      <publishTime>02/22/2013 16:43:40</publishTime>
    </File>
    <File Include="bin/BLL.dll">
      <publishTime>07/29/2024 09:30:25</publishTime>
      <publishTime>07/30/2024 13:46:27</publishTime>
    </File>
    <File Include="bin/BLL.pdb">
      <publishTime>07/29/2024 09:30:25</publishTime>
      <publishTime>07/30/2024 13:46:27</publishTime>
    </File>
    <File Include="bin/BouncyCastle.Crypto.dll">
      <publishTime>12/18/2020 05:32:28</publishTime>
    </File>
    <File Include="bin/DAL.dll">
      <publishTime>07/29/2024 09:30:24</publishTime>
      <publishTime>07/30/2024 13:46:25</publishTime>
    </File>
    <File Include="bin/DAL.pdb">
      <publishTime>07/29/2024 09:30:24</publishTime>
      <publishTime>07/30/2024 13:46:25</publishTime>
    </File>
    <File Include="bin/Dapper.dll">
      <publishTime>07/22/2016 22:52:40</publishTime>
    </File>
    <File Include="bin/DBUtility.dll">
      <publishTime>07/29/2024 09:30:21</publishTime>
      <publishTime>07/30/2024 13:46:23</publishTime>
    </File>
    <File Include="bin/DBUtility.pdb">
      <publishTime>07/29/2024 09:30:21</publishTime>
      <publishTime>07/30/2024 13:46:23</publishTime>
    </File>
    <File Include="bin/Grpc.Core.Api.dll">
      <publishTime>03/22/2022 13:17:26</publishTime>
@@ -87,10 +87,10 @@
      <publishTime>07/25/2012 19:48:56</publishTime>
    </File>
    <File Include="bin/Model.dll">
      <publishTime>07/29/2024 09:30:22</publishTime>
      <publishTime>07/30/2024 13:46:23</publishTime>
    </File>
    <File Include="bin/Model.pdb">
      <publishTime>07/29/2024 09:30:22</publishTime>
      <publishTime>07/30/2024 13:46:23</publishTime>
    </File>
    <File Include="bin/Models/ClsSc_MouldScrapOutBillMain.cs">
      <publishTime>05/25/2024 09:46:41</publishTime>
@@ -123,25 +123,25 @@
      <publishTime>10/23/2021 17:07:54</publishTime>
    </File>
    <File Include="bin/Pub_Class.dll">
      <publishTime>07/29/2024 09:30:19</publishTime>
      <publishTime>07/30/2024 13:46:22</publishTime>
    </File>
    <File Include="bin/Pub_Class.pdb">
      <publishTime>07/29/2024 09:30:19</publishTime>
      <publishTime>07/30/2024 13:46:22</publishTime>
    </File>
    <File Include="bin/Pub_Control.dll">
      <publishTime>07/29/2024 09:30:20</publishTime>
      <publishTime>07/30/2024 13:46:22</publishTime>
    </File>
    <File Include="bin/Pub_Control.pdb">
      <publishTime>07/29/2024 09:30:20</publishTime>
      <publishTime>07/30/2024 13:46:22</publishTime>
    </File>
    <File Include="bin/RestSharp.dll">
      <publishTime>08/31/2012 06:22:50</publishTime>
    </File>
    <File Include="bin/SQLHelper.dll">
      <publishTime>07/29/2024 09:30:20</publishTime>
      <publishTime>07/30/2024 13:46:22</publishTime>
    </File>
    <File Include="bin/SQLHelper.pdb">
      <publishTime>07/29/2024 09:30:20</publishTime>
      <publishTime>07/30/2024 13:46:22</publishTime>
    </File>
    <File Include="bin/Swashbuckle.Core.dll">
      <publishTime>02/16/2015 01:57:08</publishTime>
@@ -255,10 +255,10 @@
      <publishTime>11/24/2014 19:18:48</publishTime>
    </File>
    <File Include="bin/WebAPI.dll">
      <publishTime>07/29/2024 09:30:34</publishTime>
      <publishTime>07/30/2024 13:46:30</publishTime>
    </File>
    <File Include="bin/WebAPI.pdb">
      <publishTime>07/29/2024 09:30:34</publishTime>
      <publishTime>07/30/2024 13:46:30</publishTime>
    </File>
    <File Include="bin/WebGrease.dll">
      <publishTime>07/18/2013 01:03:52</publishTime>
@@ -453,7 +453,7 @@
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Web.config">
      <publishTime>07/29/2024 09:30:43</publishTime>
      <publishTime>07/30/2024 13:46:37</publishTime>
    </File>
  </ItemGroup>
</Project>
WebAPI/Properties/PublishProfiles/FolderProfile17.pubxml
New file
@@ -0,0 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
https://go.microsoft.com/fwlink/?LinkID=208121.
-->
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <DeleteExistingFiles>True</DeleteExistingFiles>
    <ExcludeApp_Data>False</ExcludeApp_Data>
    <LaunchSiteAfterPublish>True</LaunchSiteAfterPublish>
    <LastUsedBuildConfiguration>Debug</LastUsedBuildConfiguration>
    <LastUsedPlatform>Any CPU</LastUsedPlatform>
    <PublishProvider>FileSystem</PublishProvider>
    <PublishUrl>D:\网站发布\智云MESWMS\API</PublishUrl>
    <WebPublishMethod>FileSystem</WebPublishMethod>
    <SiteUrlToLaunchAfterPublish />
  </PropertyGroup>
</Project>
WebAPI/Properties/PublishProfiles/FolderProfile17.pubxml.user
New file
@@ -0,0 +1,459 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
https://go.microsoft.com/fwlink/?LinkID=208121.
-->
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <_PublishTargetUrl>D:\网站发布\智云MESWMS\API</_PublishTargetUrl>
    <History>True|2024-07-31T02:42:25.9690193Z;True|2024-07-31T10:39:22.9657733+08:00;</History>
  </PropertyGroup>
  <ItemGroup>
    <File Include="apiapp.json">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="bin/Aliyun.Credentials.dll">
      <publishTime>12/05/2022 15:40:12</publishTime>
    </File>
    <File Include="bin/Antlr3.Runtime.dll">
      <publishTime>02/22/2013 16:43:40</publishTime>
    </File>
    <File Include="bin/Antlr3.Runtime.pdb">
      <publishTime>02/22/2013 16:43:40</publishTime>
    </File>
    <File Include="bin/BLL.dll">
      <publishTime>07/31/2024 10:42:07</publishTime>
    </File>
    <File Include="bin/BLL.pdb">
      <publishTime>07/31/2024 10:42:07</publishTime>
    </File>
    <File Include="bin/BouncyCastle.Crypto.dll">
      <publishTime>12/18/2020 05:32:28</publishTime>
    </File>
    <File Include="bin/DAL.dll">
      <publishTime>07/31/2024 10:42:06</publishTime>
    </File>
    <File Include="bin/DAL.pdb">
      <publishTime>07/31/2024 10:42:06</publishTime>
    </File>
    <File Include="bin/Dapper.dll">
      <publishTime>07/22/2016 22:52:40</publishTime>
    </File>
    <File Include="bin/DBUtility.dll">
      <publishTime>07/31/2024 10:42:03</publishTime>
    </File>
    <File Include="bin/DBUtility.pdb">
      <publishTime>07/31/2024 10:42:03</publishTime>
    </File>
    <File Include="bin/Grpc.Core.Api.dll">
      <publishTime>03/22/2022 13:17:26</publishTime>
    </File>
    <File Include="bin/Grpc.Core.Api.pdb">
      <publishTime>03/19/2022 07:39:42</publishTime>
    </File>
    <File Include="bin/Grpc.Core.dll">
      <publishTime>03/22/2022 13:17:20</publishTime>
    </File>
    <File Include="bin/Grpc.Core.pdb">
      <publishTime>03/19/2022 07:39:48</publishTime>
    </File>
    <File Include="bin/grpc_csharp_ext.x64.dll">
      <publishTime>03/22/2022 13:17:22</publishTime>
    </File>
    <File Include="bin/grpc_csharp_ext.x86.dll">
      <publishTime>03/22/2022 13:17:22</publishTime>
    </File>
    <File Include="bin/ICSharpCode.SharpZipLib.dll">
      <publishTime>05/09/2021 01:08:30</publishTime>
    </File>
    <File Include="bin/ICSharpCode.SharpZipLib.pdb">
      <publishTime>05/09/2021 01:08:30</publishTime>
    </File>
    <File Include="bin/Kingdee.BOS.WebApi.Client.dll">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="bin/libgrpc_csharp_ext.x64.dylib">
      <publishTime>03/19/2022 07:38:44</publishTime>
    </File>
    <File Include="bin/libgrpc_csharp_ext.x64.so">
      <publishTime>03/19/2022 07:38:42</publishTime>
    </File>
    <File Include="bin/Microsoft.Azure.AppService.ApiApps.Service.dll">
      <publishTime>03/19/2015 01:02:50</publishTime>
    </File>
    <File Include="bin/Microsoft.CSharp.dll">
      <publishTime>09/26/2012 03:16:08</publishTime>
    </File>
    <File Include="bin/Microsoft.Web.Infrastructure.dll">
      <publishTime>07/25/2012 19:48:56</publishTime>
    </File>
    <File Include="bin/Model.dll">
      <publishTime>07/31/2024 10:42:04</publishTime>
    </File>
    <File Include="bin/Model.pdb">
      <publishTime>07/31/2024 10:42:04</publishTime>
    </File>
    <File Include="bin/Models/ClsSc_MouldScrapOutBillMain.cs">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="bin/Newtonsoft.Json.dll">
      <publishTime>09/07/2014 18:39:38</publishTime>
    </File>
    <File Include="bin/NPOI.dll">
      <publishTime>10/23/2021 09:07:54</publishTime>
    </File>
    <File Include="bin/NPOI.OOXML.dll">
      <publishTime>10/23/2021 09:07:56</publishTime>
    </File>
    <File Include="bin/NPOI.OOXML.pdb">
      <publishTime>10/23/2021 17:07:56</publishTime>
    </File>
    <File Include="bin/NPOI.OpenXml4Net.dll">
      <publishTime>10/23/2021 09:07:54</publishTime>
    </File>
    <File Include="bin/NPOI.OpenXml4Net.pdb">
      <publishTime>10/23/2021 17:07:54</publishTime>
    </File>
    <File Include="bin/NPOI.OpenXmlFormats.dll">
      <publishTime>10/23/2021 09:07:54</publishTime>
    </File>
    <File Include="bin/NPOI.OpenXmlFormats.pdb">
      <publishTime>10/23/2021 17:07:54</publishTime>
    </File>
    <File Include="bin/NPOI.pdb">
      <publishTime>10/23/2021 17:07:54</publishTime>
    </File>
    <File Include="bin/Pub_Class.dll">
      <publishTime>07/31/2024 10:42:03</publishTime>
    </File>
    <File Include="bin/Pub_Class.pdb">
      <publishTime>07/31/2024 10:42:03</publishTime>
    </File>
    <File Include="bin/Pub_Control.dll">
      <publishTime>07/31/2024 10:42:03</publishTime>
    </File>
    <File Include="bin/Pub_Control.pdb">
      <publishTime>07/31/2024 10:42:03</publishTime>
    </File>
    <File Include="bin/RestSharp.dll">
      <publishTime>08/31/2012 06:22:50</publishTime>
    </File>
    <File Include="bin/SQLHelper.dll">
      <publishTime>07/31/2024 10:42:03</publishTime>
    </File>
    <File Include="bin/SQLHelper.pdb">
      <publishTime>07/31/2024 10:42:03</publishTime>
    </File>
    <File Include="bin/Swashbuckle.Core.dll">
      <publishTime>02/16/2015 01:57:08</publishTime>
    </File>
    <File Include="bin/System.Buffers.dll">
      <publishTime>07/19/2017 18:01:28</publishTime>
    </File>
    <File Include="bin/System.ComponentModel.DataAnnotations.dll">
      <publishTime>09/26/2012 03:16:08</publishTime>
    </File>
    <File Include="bin/System.Configuration.dll">
      <publishTime>09/26/2012 03:16:08</publishTime>
    </File>
    <File Include="bin/System.Data.DataSetExtensions.dll">
      <publishTime>09/26/2012 03:16:08</publishTime>
    </File>
    <File Include="bin/System.Data.dll">
      <publishTime>09/26/2012 03:16:08</publishTime>
    </File>
    <File Include="bin/System.dll">
      <publishTime>09/26/2012 03:16:08</publishTime>
    </File>
    <File Include="bin/System.Drawing.dll">
      <publishTime>09/26/2012 03:16:08</publishTime>
    </File>
    <File Include="bin/System.EnterpriseServices.dll">
      <publishTime>09/26/2012 03:16:08</publishTime>
    </File>
    <File Include="bin/System.IdentityModel.Tokens.Jwt.dll">
      <publishTime>08/19/2014 18:03:34</publishTime>
    </File>
    <File Include="bin/System.Memory.dll">
      <publishTime>04/18/2019 00:24:34</publishTime>
    </File>
    <File Include="bin/System.Net.Http.dll">
      <publishTime>09/26/2012 03:16:08</publishTime>
    </File>
    <File Include="bin/System.Net.Http.Extensions.dll">
      <publishTime>02/20/2015 04:10:46</publishTime>
    </File>
    <File Include="bin/System.Net.Http.Formatting.dll">
      <publishTime>11/28/2018 21:00:36</publishTime>
    </File>
    <File Include="bin/System.Net.Http.Primitives.dll">
      <publishTime>02/20/2015 04:10:46</publishTime>
    </File>
    <File Include="bin/System.Runtime.CompilerServices.Unsafe.dll">
      <publishTime>09/19/2018 03:38:10</publishTime>
    </File>
    <File Include="bin/System.Runtime.Serialization.dll">
      <publishTime>09/26/2012 03:16:08</publishTime>
    </File>
    <File Include="bin/System.Web.ApplicationServices.dll">
      <publishTime>09/26/2012 03:16:08</publishTime>
    </File>
    <File Include="bin/System.Web.Cors.dll">
      <publishTime>11/28/2018 20:58:44</publishTime>
    </File>
    <File Include="bin/System.Web.dll">
      <publishTime>09/26/2012 03:16:08</publishTime>
    </File>
    <File Include="bin/System.Web.DynamicData.dll">
      <publishTime>09/26/2012 03:16:08</publishTime>
    </File>
    <File Include="bin/System.Web.Entity.dll">
      <publishTime>09/26/2012 03:16:08</publishTime>
    </File>
    <File Include="bin/System.Web.Extensions.dll">
      <publishTime>09/26/2012 03:16:08</publishTime>
    </File>
    <File Include="bin/System.Web.Helpers.dll">
      <publishTime>01/28/2015 12:04:30</publishTime>
    </File>
    <File Include="bin/System.Web.Http.Cors.dll">
      <publishTime>11/28/2018 21:01:26</publishTime>
    </File>
    <File Include="bin/System.Web.Http.dll">
      <publishTime>11/28/2018 21:01:00</publishTime>
    </File>
    <File Include="bin/System.Web.Http.WebHost.dll">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="bin/System.Web.Mvc.dll">
      <publishTime>01/28/2015 12:02:18</publishTime>
    </File>
    <File Include="bin/System.Web.Optimization.dll">
      <publishTime>02/11/2014 23:26:04</publishTime>
    </File>
    <File Include="bin/System.Web.Razor.dll">
      <publishTime>01/28/2015 12:02:32</publishTime>
    </File>
    <File Include="bin/System.Web.Services.dll">
      <publishTime>09/26/2012 03:16:08</publishTime>
    </File>
    <File Include="bin/System.Web.WebPages.Deployment.dll">
      <publishTime>01/28/2015 12:04:30</publishTime>
    </File>
    <File Include="bin/System.Web.WebPages.dll">
      <publishTime>01/28/2015 12:04:30</publishTime>
    </File>
    <File Include="bin/System.Web.WebPages.Razor.dll">
      <publishTime>01/28/2015 12:04:30</publishTime>
    </File>
    <File Include="bin/System.Xml.dll">
      <publishTime>09/26/2012 03:16:08</publishTime>
    </File>
    <File Include="bin/System.Xml.Linq.dll">
      <publishTime>09/26/2012 03:16:08</publishTime>
    </File>
    <File Include="bin/WebActivatorEx.dll">
      <publishTime>11/24/2014 19:18:48</publishTime>
    </File>
    <File Include="bin/WebAPI.dll">
      <publishTime>07/31/2024 10:42:11</publishTime>
    </File>
    <File Include="bin/WebAPI.pdb">
      <publishTime>07/31/2024 10:42:11</publishTime>
    </File>
    <File Include="bin/WebGrease.dll">
      <publishTime>07/18/2013 01:03:52</publishTime>
    </File>
    <File Include="bin/zh-Hans/System.Net.Http.Formatting.resources.dll">
      <publishTime>11/29/2018 21:26:02</publishTime>
    </File>
    <File Include="bin/zh-Hans/System.Web.Http.resources.dll">
      <publishTime>11/29/2018 21:26:30</publishTime>
    </File>
    <File Include="Config/kdapi.config">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Content/bootstrap.css">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Content/bootstrap.min.css">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Content/Site.css">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="DLL/BLL.dll">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="DLL/DAL.dll">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="DLL/DBUtility.dll">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="DLL/Kingdee.BOS.WebApi.Client.dll">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="DLL/Model.dll">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="DLL/Newtonsoft.Json.Net35.dll">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="DLL/Pub_Class.dll">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="DLL/Pub_Control.dll">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="DLL/SQLHelper.dll">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="fonts/glyphicons-halflings-regular.eot">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="fonts/glyphicons-halflings-regular.svg">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="fonts/glyphicons-halflings-regular.ttf">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="fonts/glyphicons-halflings-regular.woff">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Global.asax">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="grpc_csharp_ext.x64.dll">
      <publishTime>03/22/2022 13:17:22</publishTime>
    </File>
    <File Include="grpc_csharp_ext.x86.dll">
      <publishTime>03/22/2022 13:17:22</publishTime>
    </File>
    <File Include="Index.html">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="libgrpc_csharp_ext.x64.dylib">
      <publishTime>03/19/2022 07:38:44</publishTime>
    </File>
    <File Include="libgrpc_csharp_ext.x64.so">
      <publishTime>03/19/2022 07:38:42</publishTime>
    </File>
    <File Include="libman.json">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Metadata/deploymentTemplates/apiappconfig.azureresource.json">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="packages.config">
      <publishTime>06/25/2024 09:50:21</publishTime>
    </File>
    <File Include="Views/Scripts/bootstrap.js">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Views/Scripts/bootstrap.min.js">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Views/Scripts/jquery-1.10.2.js">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Views/Scripts/jquery-1.10.2.min.js">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Views/Scripts/jquery-1.10.2.min.map">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Views/Scripts/jquery.validate.js">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Views/Scripts/jquery.validate.min.js">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Views/Scripts/jquery.validate.unobtrusive.js">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Views/Scripts/jquery.validate.unobtrusive.min.js">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Views/Scripts/modernizr-2.6.2.js">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Views/Shared/Error.cshtml">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Views/Shared/_Layout.cshtml">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Views/web.config">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Views/_ViewStart.cshtml">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Web References/WebS/ClsCLD_Customer_Model.datasource">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Web References/WebS/ClsCLD_Department_Model.datasource">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Web References/WebS/ClsCLD_Employee_Model.datasource">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Web References/WebS/ClsCLD_StockPlace_Model.datasource">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Web References/WebS/ClsCLD_Supplier_Model.datasource">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Web References/WebS/ClsCLD_Warehouse_Model.datasource">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Web References/WebS/ClsGy_BadReason_Model.datasource">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Web References/WebS/ClsGy_BarCodeBill_WMS_Model.datasource">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Web References/WebS/ClsGy_BarCodeBill_WMS_Model_View.datasource">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Web References/WebS/ClsGy_Customer_Model.datasource">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Web References/WebS/ClsGy_Department_Model.datasource">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Web References/WebS/ClsGy_Employee_Model.datasource">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Web References/WebS/ClsGy_Group_Model.datasource">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Web References/WebS/ClsGy_Item30JiTai_Model.datasource">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Web References/WebS/ClsGy_Source_Model.datasource">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Web References/WebS/ClsGy_StockPlace_Model.datasource">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Web References/WebS/ClsGy_Supplier_Model.datasource">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Web References/WebS/ClsGy_Warehouse_Model.datasource">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Web References/WebS/ClsKf_ICStockBill_Mould.datasource">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Web References/WebS/ClsKf_ICStockBill_WMS.datasource">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Web References/WebS/Reference.map">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Web.config">
      <publishTime>07/31/2024 10:42:24</publishTime>
    </File>
  </ItemGroup>
</Project>
WebAPI/Web.config
@@ -22,7 +22,7 @@
        <!--<add key="FileIP" value="http://localhost:8082/LuBaoAPI"/>-->
        <!--<add key="FileIP" value="http://localhost:8080/" />-->
        <!--<add key="sUrl" value="http://183.129.128.86:9090/WEBS-WMSTest/WebService1.asmx"/>    -->
        <add key="sUrl" value="http://192.168.0.81/WEBS-WMS/WebService1.asmx"/><!--颜台式机-->
        <!--<add key="sUrl" value="http://192.168.0.81/WEBS-WMS/WebService1.asmx"/>--><!--颜台式机-->
        <!--<add key="sUrl" value="http://60.190.4.42:9003/WebService/WebService1.asmx" /> å¤å®-->
        <!--<add key="sUrl" value="http://60.190.4.42:9003/WebService/WebService1.asmx" /> -->
        <!--<add key="sUrl" value="http://10.10.130.181/WEBS-WMS/WebService1.asmx"/>    åšæ—¥ç§‘技-->
@@ -35,7 +35,7 @@
        <!--<add key="sUrl" value="http://47.96.97.237/WEBS-WMS/WebService1.asmx"/> -->    <!--测试服务器-->
        <!--<add key="surl" value="http://localhost:8082/webs/webservice1.asmx"/>    æœ¬åœ°-->
        <!--<add key="sUrl" value="http://192.168.110.57:81/WEBS/WebService1.asmx"/>-->    <!--陈雯静本地配置-->
        <!--<add key="surl" value="http://localhost/webs-web/webservice1.asmx"/>-->    <!--翁涛涛本地配置-->
        <add key="surl" value="http://localhost/webs-web/webservice1.asmx"/>    <!--翁涛涛本地配置-->
        <!--<add key="sUrl" value="http://192.168.1.57:8082/WEBS-WMS/WebService1.asmx"/>九菱-->
        <!--<add key="sUrl" value="http://61.130.182.102:18181/WEBSCS/WebService1.asmx"/>--><!--斯莫尔-->
        
WebAPI/WebAPI.csproj.user
@@ -9,7 +9,7 @@
    <WebStackScaffolding_IsAsyncSelected>False</WebStackScaffolding_IsAsyncSelected>
    <NameOfLastUsedPublishProfile>FolderProfile</NameOfLastUsedPublishProfile>
    <NameOfLastUsedPublishProfile>D:\Git\houduan\WebAPI\Properties\PublishProfiles\FolderProfile.pubxml</NameOfLastUsedPublishProfile>
    <NameOfLastUsedPublishProfile>D:\智云迈思\MES\MES-WEB-API\WebAPI\Properties\PublishProfiles\FolderProfile16.pubxml</NameOfLastUsedPublishProfile>
    <NameOfLastUsedPublishProfile>D:\智云迈思\MES\MES-WEB-API\WebAPI\Properties\PublishProfiles\FolderProfile17.pubxml</NameOfLastUsedPublishProfile>
    <LastActiveSolutionConfig>Debug|Any CPU</LastActiveSolutionConfig>
    <UseIISExpress>true</UseIISExpress>
    <Use64BitIISExpress />