zgq
2021-08-07 302076aee1b104fb00d7b340ea8cafc02597781c
WebAPI/Controllers/SCGL/Sc_MESBeginWorkBillController.cs
@@ -16,6 +16,7 @@
        public DataSet ds = new DataSet();
        public WebServer webserver = new WebServer();
        SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
        private WebS.WebService1 oWebs = new WebS.WebService1();
        #region 开工单
@@ -465,6 +466,46 @@
            return new SQLHelper.ClsCN().RunProcReturn(sql, "Sc_ICMOBillWorkQtyStatus_Tmp");
        }
        #endregion
        #region 报工平台产量汇验证汇报数量是否超出计划数量辑
        /// <summary>
        ///
        /// </summary>
        /// <param name="msg"></param>
        /// <returns></returns>
        [Route("Sc_MESBeginWorkBill/GetMESOverStepQty")]
        [HttpGet]
        public object GetMESOverStepQty(string sWhere)
        {
            try
            {
                ds = new SQLHelper.ClsCN().RunProcReturn("select isnull(sum(HQty),0) HQty,isnull(sum(HBadQty),0) HBadQty,isnull(sum(HWasterQty),0) HWasterQty   from Sc_ICMOBillWorkQtyStatus_Tmp with (nolock)" + sWhere, "Sc_ICMOBillWorkQtyStatus_Tmp");
                if (ds.Tables[0].Rows.Count > 0)
                {
                    objJsonResult.code = "1";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "已有产量汇报数据返回!";
                    objJsonResult.data = ds;
                }
                else
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无产量汇报数据!";
                    objJsonResult.data = null;
                }
            }
            catch (Exception ex)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = ex.Message;
                objJsonResult.data = null;
            }
            return objJsonResult;
        }
        #endregion
        #region 报工平台产量汇报保存/编辑
        /// <summary>
@@ -480,10 +521,6 @@
            string msg1 = _value.ToString();
            string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
            string msg2 = sArray[0].ToString();
            ListModels oListModels = new ListModels();
            try
            {
@@ -533,7 +570,7 @@
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "保存失败!" + DBUtility.ClsPub.sExeReturnInfo;
                    objJsonResult.Message = "保存失败!";
                    objJsonResult.data = 1;
                    return objJsonResult;
                }
@@ -552,13 +589,16 @@
        #region 报工平台产量汇报删除
        [Route("Sc_MESBeginWorkBill/DeltetMESProductReportBill")]
        [HttpGet]
        public object DeleteGetLineBindBillList(string HInterID)
        public object DeleteGetLineBindBillList(string HInterID,string HICMOInterID,string HICMOEntryID)
        {
            try
            {
                oCN.BeginTran();
                //更新切换状态值
                string sql = string.Format(@"delete Sc_ICMOBillWorkQtyStatus_Tmp  where HInterID='" + HInterID + "'");
                oCN.RunProc(sql);
                //更新产量装量临时表已汇报数量
                string sql1 = string.Format(@"update Sc_ICMOBillStatus_Tmp  set HRelationInterID=0,HSplitRelationQty=0 where HInterID='" + HInterID + "' and HICMOInterID='"+ HICMOInterID + "' and HICMOEntryID='"+ HICMOEntryID + "'");
                oCN.RunProc(sql);
                oCN.Commit();
                objJsonResult.code = "1";
@@ -583,7 +623,7 @@
        #region 报工平台报检申请保存
        [Route("Sc_MESBeginWorkBill/SaveGetMESProductReportBillList")]
        [HttpGet]
        public object SaveGetMESProductReportBillList(string ScMaxWork,string HSourceBillType, string workcode,int HSourceID,int HICMOInterID,int HICMOEntryID,string HMaker)
        public object SaveGetMESProductReportBillList(string ScMaxWork,string HSourceBillType, string workcode,int HSourceID,int HICMOInterID,int HICMOEntryID,string HMaker,string Czybm)
        {   
            ListModels oListModels = new ListModels();
            try
@@ -592,19 +632,20 @@
                string  BillType = "3711";  //单据类型 (生产汇报单)
                //得到mainid
                 long HInterID = DBUtility.ClsPub.CreateBillID(BillType, ref DBUtility.ClsPub.sExeReturnInfo);
                oCN.BeginTran();
                //oCN.BeginTran();
                //根据单号、资源ID、订单主ID、订单子ID、制单人过滤产量汇报报检申请提交数据
                string sql = string.Format(@"update Sc_ICMOBillWorkQtyStatus_Tmp set 
                                 HICMOReportInterID ='"+HInterID+"', HICMOReportBillNo='"+ ScMaxWork + "' from Sc_ICMOBillWorkQtyStatus_Tmp a where a.HICMOBillNo='" + workcode+ "' and a.HSourceID='" + HSourceID + "' and  HICMOInterID='" + HICMOInterID+ "' and a.HICMOEntryID='"+ HICMOEntryID + "' and a.HMaker='"+HMaker+"'  and HRelationInterID='0'");
                oCN.RunProc(sql);
                oCN.Commit();
                //oCN.Commit();
                //根据生产订单号查询生产订单表,拿到组织、车间
                DataSet ds0 = oCN.RunProcReturn("select HPRDORGID,HDeptID from Sc_ICMOBillMain where HBillNo='"+ workcode + "'", "Sc_ICMOBillMain");
                //查询产量汇报临时表
                ds = oCN.RunProcReturn("select top 1 * from  Sc_ICMOBillWorkQtyStatus_Tmp where HICMOReportInterID='" + HInterID + "' and HICMOReportBillNo='" + ScMaxWork + "'", "Sc_ICMOBillWorkQtyStatus_Tmp");
                if (ds.Tables[0].Rows.Count <= 0)
                if (ds.Tables[0].Rows.Count <= 0)
                {
                    //oCN.RollBack();
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "当前单据无产量汇报记录!";
@@ -624,35 +665,43 @@
                model.HGroupID = DBUtility.ClsPub.isLong(ds.Tables[0].Rows[0]["HGroupID"]);
                model.HDeptID= DBUtility.ClsPub.isLong(ds0.Tables[0].Rows[0]["HDeptID"]);
                model.HPRDORGID = DBUtility.ClsPub.isLong(ds0.Tables[0].Rows[0]["HPRDORGID"]);
                WebS.WebService1 oWebs = new WebS.WebService1();
                model.HMainSourceInterID = HICMOInterID;
                model.HMainSourceEntryID = HICMOEntryID;
                //oWebs.Timeout = 30000;
                bool flag=oWebs.set_SaveICMOProductReportBill_Layui(model, sHSourceType, ref DBUtility.ClsPub.sErrInfo);
                if (flag)
                {
                    //oCN.Commit();
                    objJsonResult.code = "1";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "保存成功!";
                    objJsonResult.data = 1;
                    return objJsonResult;
                }
                else 
                {
                    //oCN.RollBack();
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "保存失败!" + DBUtility.ClsPub.sErrInfo;
                    objJsonResult.Message = "保存失败!"+ flag+ ";"+ DBUtility.ClsPub.sErrInfo;
                    objJsonResult.data = null;
                    return objJsonResult;
                }
            }
            catch (Exception e)
            {
                //oCN.RollBack();
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "保存失败!" + e.ToString();
                objJsonResult.data = 1;
                return objJsonResult;
            }
            return objJsonResult;
        }
        #endregion
    }
}