yl
2023-09-21 77a5d0b49691eed59891ea3c156381edef871c72
VueWebApi/Controllers/ProductionManagementController.cs
@@ -32,6 +32,7 @@
        /// </summary>
        /// <param name="erporderstus">订单状态码</param>
        /// <param name="erpordercode">订单编号</param>
        /// <param name="saleordercode">销售单号</param>
        /// <param name="partcode">产品编码</param>
        /// <param name="partname">产品名称</param>
        /// <param name="partspec">产品规格</param>
@@ -45,8 +46,10 @@
        /// <returns></returns>
        [Route(template: "ErpOrderSearch")]
        [HttpGet]
        public HttpResponseMessage ErpOrderSearch(string erporderstus = null, string erpordercode = null, string partcode = null, string partname = null, string partspec = null, string paystartdate = null, string payenddate = null, string creatuser = null, int page = 0, int rows = 0, string prop = null, string order = null)
        public HttpResponseMessage ErpOrderSearch(string erporderstus = null, string erpordercode = null,string saleordercode=null, string partcode = null, string partname = null, string partspec = null, string paystartdate = null, string payenddate = null, string creatuser = null, int page = 0, int rows = 0, string prop = null, string order = null)
        {
            var stu_torgcode = HttpContext.Current.Request.Cookies["stu_torgcode"].Value.ToString(); //所属组织
            var stu_torgtypecode = HttpContext.Current.Request.Cookies["description"].Value.ToString(); //所属组织类型
            string paydatestartdate = "";  //预计开工开始时间
            string paydateenddate = "";    //预计开工结束时间
            string paydatestartdate1 = "";  //预计完工开始时间
@@ -63,7 +66,7 @@
            }
            int startNum = rows * (page - 1) + 1;  //起始记录rowNum
            int endNum = rows * page;   //结束记录 rowNum
            mes = ProductionManagementBLL.ErpOrderSearch(erporderstus, erpordercode, partcode, partname, partspec, startNum, paydatestartdate, paydateenddate, paydatestartdate1, paydateenddate2, creatuser, endNum, prop, order);
            mes = ProductionManagementBLL.ErpOrderSearch(stu_torgcode, stu_torgtypecode,erporderstus, erpordercode, saleordercode, partcode, partname, partspec, startNum, paydatestartdate, paydateenddate, paydatestartdate1, paydateenddate2, creatuser, endNum, prop, order);
            return TJson.toJson(mes);
        }
        #endregion
@@ -80,6 +83,7 @@
        {
            string erporderid = obj["erporderid"].ToString(); //订单id
            string erpordercode = obj["erpordercode"].ToString(); //订单编号
            string saleordercode = obj["saleordercode"].ToString(); //销售订单号
            string partcode = obj["partcode"].ToString(); //产品编码
            string wkshopcode = obj["wkshopcode"].ToString(); //车间编码
            string warehousecode = obj["warehousecode"].ToString(); //仓库编码
@@ -89,7 +93,7 @@
            string relse_qty = obj["relse_qty"].ToString(); //已下单数量
            string saleOrderDeliveryDate = obj["saleOrderDeliveryDate"].ToString(); //交付时间
            var username = HttpContext.Current.Request.Cookies["admin"].Value.ToString(); //操作人员
            mes = ProductionManagementBLL.MarkSaveErpOrder(erporderid, erpordercode, partcode, wkshopcode, warehousecode, erpqty, markqty, ordernum, relse_qty, saleOrderDeliveryDate, username);
            mes = ProductionManagementBLL.MarkSaveErpOrder(erporderid, erpordercode, saleordercode, partcode, wkshopcode, warehousecode, erpqty, markqty, ordernum, relse_qty, saleOrderDeliveryDate, username);
            return TJson.toJson(mes);
        }
        #endregion
@@ -105,9 +109,25 @@
        [HttpPost]
        public HttpResponseMessage ClosedErpOrder(string erporderid, string erpordercode)
        {
            //var username = HttpContext.Current.Request.Cookies["admin"].Value.ToString(); //操作人员
            var username = "Admin";
            var username = HttpContext.Current.Request.Cookies["admin"].Value.ToString(); //操作人员
            mes = ProductionManagementBLL.ClosedErpOrder(erporderid, erpordercode, username);
            return TJson.toJson(mes);
        }
        #endregion
        #region[ERP订单删除]
        /// <summary>
        /// ERP订单删除
        /// </summary>
        /// <param name="erporderid">订单id</param>
        /// <param name="erpordercode">订单号</param>
        /// <returns></returns>
        [Route(template: "DeleteErpOrder")]
        [HttpPost]
        public HttpResponseMessage DeleteErpOrder(string erporderid, string erpordercode)
        {
            var username = HttpContext.Current.Request.Cookies["admin"].Value.ToString(); //操作人员
            mes = ProductionManagementBLL.DeleteErpOrder(erporderid, erpordercode, username);
            return TJson.toJson(mes);
        }
        #endregion
@@ -121,6 +141,7 @@
        /// <param name="mesorderstus">工单状态码</param>
        /// <param name="mesordercode">工单编号</param>
        /// <param name="sourceorder">源单单号</param>
        /// <param name="saleordercode">销售单号</param>
        /// <param name="ordertype">单据类型</param>
        /// <param name="partcode">产品编码</param>
        /// <param name="partname">产品名称</param>
@@ -134,11 +155,13 @@
        /// <returns></returns>
        [Route(template: "MesOrderSearch")]
        [HttpGet]
        public HttpResponseMessage MesOrderSearch(int page, int rows, string prop, string order, string mesorderstus = null, string mesordercode = null, string sourceorder = null, string ordertype = null, string partcode = null, string partname = null, string partspec = null, string creatuser = null, string createdate = null)
        public HttpResponseMessage MesOrderSearch(int page, int rows, string prop, string order, string mesorderstus = null, string mesordercode = null, string sourceorder = null,string saleordercode=null, string ordertype = null, string partcode = null, string partname = null, string partspec = null, string creatuser = null, string createdate = null)
        {
            var stu_torgcode = HttpContext.Current.Request.Cookies["stu_torgcode"].Value.ToString(); //所属组织
            var stu_torgtypecode = HttpContext.Current.Request.Cookies["description"].Value.ToString(); //所属组织类型
            int startNum = rows * (page - 1) + 1;  //起始记录rowNum
            int endNum = rows * page;   //结束记录 rowNum
            mes = ProductionManagementBLL.MesOrderSearch(mesorderstus, mesordercode, sourceorder, ordertype, partcode, partname, partspec, startNum, creatuser, createdate, endNum, prop, order);
            mes = ProductionManagementBLL.MesOrderSearch(stu_torgcode, stu_torgtypecode,mesorderstus, mesordercode, sourceorder, saleordercode, ordertype, partcode, partname, partspec, startNum, creatuser, createdate, endNum, prop, order);
            return TJson.toJson(mes);
        }
        #endregion
@@ -149,6 +172,7 @@
        /// </summary>
        /// <param name="mesordercode">工单编号</param>
        /// <param name="sourceorder">源单单号</param>
        /// <param name="saleordercode">销售单号</param>
        /// <param name="partcode">产品编码</param>
        /// <param name="partname">产品名称</param>
        /// <param name="partspec">产品规格</param>
@@ -161,11 +185,11 @@
        /// <returns></returns>
        [Route(template: "MesBadOrderSearch")]
        [HttpGet]
        public HttpResponseMessage MesBadOrderSearch(int page, int rows, string prop, string order, string mesordercode = null, string sourceorder = null, string partcode = null, string partname = null, string partspec = null, string creatuser = null, string createdate = null)
        public HttpResponseMessage MesBadOrderSearch(int page, int rows, string prop, string order, string mesordercode = null, string sourceorder = null,string saleordercode=null, string partcode = null, string partname = null, string partspec = null, string creatuser = null, string createdate = null)
        {
            int startNum = rows * (page - 1) + 1;  //起始记录rowNum
            int endNum = rows * page;   //结束记录 rowNum
            mes = ProductionManagementBLL.MesBadOrderSearch(mesordercode, sourceorder, partcode, partname, partspec, startNum, creatuser, createdate, endNum, prop, order);
            mes = ProductionManagementBLL.MesBadOrderSearch(mesordercode, sourceorder, saleordercode, partcode, partname, partspec, startNum, creatuser, createdate, endNum, prop, order);
            return TJson.toJson(mes);
        }
        #endregion
@@ -175,12 +199,13 @@
        /// 产品编码查找工艺路线下拉接口
        /// </summary>
        /// <param name="partcode">产品编码</param>
        /// <param name="wkshopcode">车间编码</param>
        /// <returns></returns>
        [Route(template: "PartSelectRoute")]
        [HttpGet]
        public HttpResponseMessage PartSelectRoute(string partcode)
        public HttpResponseMessage PartSelectRoute(string partcode,string wkshopcode)
        {
            mes = ProductionManagementBLL.PartSelectRoute(partcode);
            mes = ProductionManagementBLL.PartSelectRoute(partcode, wkshopcode);
            return TJson.toJson(mes);
        }
        #endregion
@@ -190,13 +215,14 @@
        /// 产品+工艺路线查找车间下拉接口
        /// </summary>
        /// <param name="partcode">产品编码</param>
        /// <param name="routecode">工艺路线编码</param>
        /// <returns></returns>
        [Route(template: "RouteSelectWkshop")]
        [HttpGet]
        public HttpResponseMessage RouteSelectWkshop(string partcode, string routecode)
        public HttpResponseMessage RouteSelectWkshop(string partcode)
        {
            mes = ProductionManagementBLL.RouteSelectWkshop(partcode, routecode);
            var stu_torgcode = HttpContext.Current.Request.Cookies["stu_torgcode"].Value.ToString(); //所属组织
            var stu_torgtypecode = HttpContext.Current.Request.Cookies["description"].Value.ToString(); //所属组织类型
            mes = ProductionManagementBLL.RouteSelectWkshop(stu_torgcode, stu_torgtypecode,partcode);
            return TJson.toJson(mes);
        }
        #endregion
@@ -387,9 +413,11 @@
        [HttpGet]
        public HttpResponseMessage MesOrderStepSearch(string orderstepqrcode = null, int page = 0, int rows = 0, string prop = null, string order = null)
        {
            var stu_torgcode = HttpContext.Current.Request.Cookies["stu_torgcode"].Value.ToString(); //所属组织
            var stu_torgtypecode = HttpContext.Current.Request.Cookies["description"].Value.ToString(); //所属组织类型
            int startNum = rows * (page - 1) + 1;  //起始记录rowNum
            int endNum = rows * page;   //结束记录 rowNum
            mes = ProductionManagementBLL.MesOrderStepSearch(orderstepqrcode, startNum, endNum, prop, order);
            mes = ProductionManagementBLL.MesOrderStepSearch(stu_torgcode, stu_torgtypecode,orderstepqrcode, startNum, endNum, prop, order);
            return TJson.toJson(mes);
        }
        #endregion
@@ -408,9 +436,11 @@
        [HttpGet]
        public HttpResponseMessage MesOrderWxStepSearch(string orderstepqrcode = null, int page = 0, int rows = 0, string prop = null, string order = null)
        {
            var stu_torgcode = HttpContext.Current.Request.Cookies["stu_torgcode"].Value.ToString(); //所属组织
            var stu_torgtypecode = HttpContext.Current.Request.Cookies["description"].Value.ToString(); //所属组织类型
            int startNum = rows * (page - 1) + 1;  //起始记录rowNum
            int endNum = rows * page;   //结束记录 rowNum
            mes = ProductionManagementBLL.MesOrderWxStepSearch(orderstepqrcode, startNum, endNum, prop, order);
            mes = ProductionManagementBLL.MesOrderWxStepSearch(stu_torgcode, stu_torgtypecode,orderstepqrcode, startNum, endNum, prop, order);
            return TJson.toJson(mes);
        }
        #endregion
@@ -429,9 +459,11 @@
        [HttpGet]
        public HttpResponseMessage MesOrderNgStepSearch(string orderstepqrcode = null, int page = 0, int rows = 0, string prop = null, string order = null)
        {
            var stu_torgcode = HttpContext.Current.Request.Cookies["stu_torgcode"].Value.ToString(); //所属组织
            var stu_torgtypecode = HttpContext.Current.Request.Cookies["description"].Value.ToString(); //所属组织类型
            int startNum = rows * (page - 1) + 1;  //起始记录rowNum
            int endNum = rows * page;   //结束记录 rowNum
            mes = ProductionManagementBLL.MesOrderNgStepSearch(orderstepqrcode, startNum, endNum, prop, order);
            mes = ProductionManagementBLL.MesOrderNgStepSearch(stu_torgcode, stu_torgtypecode,orderstepqrcode, startNum, endNum, prop, order);
            return TJson.toJson(mes);
        }
        #endregion
@@ -456,14 +488,15 @@
        /// 生产开报工:开工(开始/报工)/外协(发料/收料)时条件判断及数据返回接口
        /// </summary>
        /// <param name="OperType">操作类型:自制(ZZ)/外协(WX)</param>
        /// <param name="SelectType">操作类型:外协发料标识(OUT)/外协收料标识(IN)</param>
        /// <param name="SelectType">操作类型:自制(设备编码)/外协(发料标识(OUT)/收料标识(IN))</param>
        /// <param name="orderstepqrcode">扫描二维码信息</param>
        /// <param name="stu_torgcode">所属组织编码</param>
        /// <returns></returns>
        [Route(template: "MesOrderStepStart")]
        [HttpGet]
        public HttpResponseMessage MesOrderStepStart(string OperType, string orderstepqrcode, string SelectType = null)
        public HttpResponseMessage MesOrderStepStart(string OperType,string stu_torgcode, string orderstepqrcode, string SelectType = null)
        {
            mes = ProductionManagementBLL.MesOrderStepStart(OperType, SelectType, orderstepqrcode);
            mes = ProductionManagementBLL.MesOrderStepStart(OperType, stu_torgcode, SelectType, orderstepqrcode);
            return TJson.toJson(mes);
        }
        #endregion
@@ -487,12 +520,15 @@
        /// <summary>
        /// 生产开报工:报工时获取生产班组下拉框
        /// </summary>
        /// <param name="wkshopcode">车间编码</param>
        /// <returns></returns>
        [Route(template: "MesOrderStepReportSelectUserGroup")]
        [HttpGet]
        public HttpResponseMessage MesOrderStepReportSelectUserGroup()
        public HttpResponseMessage MesOrderStepReportSelectUserGroup(string wkshopcode)
        {
            mes = ProductionManagementBLL.MesOrderStepReportSelectUserGroup();
            var stu_torgcode = HttpContext.Current.Request.Cookies["stu_torgcode"].Value.ToString(); //所属组织
            var stu_torgtypecode = HttpContext.Current.Request.Cookies["description"].Value.ToString(); //所属组织类型
            mes = ProductionManagementBLL.MesOrderStepReportSelectUserGroup(stu_torgcode, stu_torgtypecode,wkshopcode);
            return TJson.toJson(mes);
        }
        #endregion
@@ -507,7 +543,8 @@
        [HttpGet]
        public HttpResponseMessage MesOrderGroupSelectUser(string usergroupcode)
        {
            mes = ProductionManagementBLL.MesOrderGroupSelectUser(usergroupcode);
            var stu_torgcode = HttpContext.Current.Request.Cookies["stu_torgcode"].Value.ToString(); //所属组织
            mes = ProductionManagementBLL.MesOrderGroupSelectUser(stu_torgcode,usergroupcode);
            return TJson.toJson(mes);
        }
        #endregion
@@ -602,11 +639,11 @@
            string taskqty = obj["taskqty"].ToString(); //任务数量
            string startqty = obj["startqty"].ToString(); //开工数量
            string reportqty = obj["reportqty"].ToString(); //报工工数量
            string ngqty = obj["ngqty"].ToString(); //不良数量
            string badcode = obj["badcode"].ToString(); //不良原因编码
            string defectlist= obj["defectlist"].ToString();//不良汇总
            string remarks = obj["remarks"].ToString(); //备注
            var username = HttpContext.Current.Request.Cookies["admin"].Value.ToString(); //操作人员
            mes = ProductionManagementBLL.SavaMesOrderStepReport(mesordercode, partcode, stepseq, stepcode, eqpcode, inbarcode, reckway, usergroupcode, reportuser, taskqty, startqty, reportqty, ngqty, badcode, remarks, username);
            List<ReportDefectList> defectobjs = JsonConvert.DeserializeObject<List<ReportDefectList>>(defectlist);
            mes = ProductionManagementBLL.SavaMesOrderStepReport(mesordercode, partcode, stepseq, stepcode, eqpcode, inbarcode, reckway, usergroupcode, reportuser, taskqty, startqty, reportqty, defectobjs, remarks, username);
            return TJson.toJson(mes);
        }
        #endregion
@@ -654,11 +691,11 @@
            string inuser = obj["inuser"].ToString();  //收料人员
            string taskqty = obj["taskqty"].ToString(); //任务数量
            string sqty = obj["sqty"].ToString(); //收料数量
            string ngqty = obj["ngqty"].ToString(); //不良数量
            string badcode = obj["badcode"].ToString(); //不良原因编码
            string defectlist = obj["defectlist"].ToString();//不良汇总
            string remarks = obj["remarks"].ToString(); //备注
            var username = HttpContext.Current.Request.Cookies["admin"].Value.ToString(); //操作人员
            mes = ProductionManagementBLL.SavaMesOrderStepIn(mesordercode, partcode, stepseq, stepcode, wxcode, inbarcode, inuser, taskqty, sqty, ngqty, badcode, remarks, username);
            List<ReportDefectList> defectobjs = JsonConvert.DeserializeObject<List<ReportDefectList>>(defectlist);
            mes = ProductionManagementBLL.SavaMesOrderStepIn(mesordercode, partcode, stepseq, stepcode, wxcode, inbarcode, inuser, taskqty, sqty, defectobjs, remarks, username);
            return TJson.toJson(mes);
        }
        #endregion
@@ -684,14 +721,15 @@
        /// <summary>
        /// 工序检验扫码获取任务信息
        /// </summary>
        /// <param name="stu_torgcode">所属组织编码</param>
        /// <param name="orderstepqrcode">扫描工序二维码信息</param>
        /// <param name="checktype">检验方式FirstCheck(首检) PatroCheck(巡检)  EndCheck(完工检)</param>
        /// <returns></returns>
        [Route(template: "MesOrderStepCheckSearch")]
        [HttpGet]
        public HttpResponseMessage MesOrderStepCheckSearch(string orderstepqrcode, string checktype)
        public HttpResponseMessage MesOrderStepCheckSearch(string stu_torgcode, string orderstepqrcode, string checktype)
        {
            mes = ProductionManagementBLL.MesOrderStepCheckSearch(orderstepqrcode, checktype);
            mes = ProductionManagementBLL.MesOrderStepCheckSearch(stu_torgcode,orderstepqrcode, checktype);
            return TJson.toJson(mes);
        }
        #endregion
@@ -720,6 +758,7 @@
        [HttpPost]
        public HttpResponseMessage SaveMesOrderStepCheckItem([FromBody] JObject obj)
        {
            string stu_torgcode = obj["stu_torgcode"].ToString(); //所属组织编号
            string wocode = obj["wocode"].ToString(); //工单编号
            string partcode = obj["partcode"].ToString(); //产品编码
            string stepcode = obj["stepcode"].ToString(); //工序编码
@@ -733,7 +772,7 @@
            string ngqty = obj["ngqty"].ToString();//不合格数量
            string checkitemcont = obj["checkitemcont"].ToString(); //检验项目数据
            var username = HttpContext.Current.Request.Cookies["admin"].Value.ToString(); //操作人员
            mes = ProductionManagementBLL.SaveMesOrderStepCheckItem(wocode, partcode, stepcode, checkstandcode, check_type, sampmethod, qualitystatus, labqty, sampleqty, goodqty, ngqty, checkitemcont, username);
            mes = ProductionManagementBLL.SaveMesOrderStepCheckItem(stu_torgcode,wocode, partcode, stepcode, checkstandcode, check_type, sampmethod, qualitystatus, labqty, sampleqty, goodqty, ngqty, checkitemcont, username);
            return TJson.toJson(mes);
        }
        #endregion
@@ -761,9 +800,11 @@
        [HttpGet]
        public HttpResponseMessage MesOrderBitchClosedSearch(string mesorderstus = null, string mesordercode = null, string sourceorder = null, string ordertype = null, string partcode = null, string partname = null, string partspec = null, string creatuser = null, string createdate = null, int page = 0, int rows = 0, string prop = null, string order = null)
        {
            var stu_torgcode = HttpContext.Current.Request.Cookies["stu_torgcode"].Value.ToString(); //所属组织
            var stu_torgtypecode = HttpContext.Current.Request.Cookies["description"].Value.ToString(); //所属组织类型
            int startNum = rows * (page - 1) + 1;  //起始记录rowNum
            int endNum = rows * page;   //结束记录 rowNum
            mes = ProductionManagementBLL.MesOrderBitchClosedSearch(mesorderstus, mesordercode, sourceorder, ordertype, partcode, partname, partspec, startNum, creatuser, createdate, endNum, prop, order);
            mes = ProductionManagementBLL.MesOrderBitchClosedSearch(stu_torgcode, stu_torgtypecode,mesorderstus, mesordercode, sourceorder, ordertype, partcode, partname, partspec, startNum, creatuser, createdate, endNum, prop, order);
            return TJson.toJson(mes);
        }
        #endregion
@@ -1146,13 +1187,6 @@
        /// <summary>
        /// 生产入库提交
        /// </summary>
        /// <param name="wkshp_code">车间编码</param>
        /// <param name="erporder_code">订单编号</param>
        /// <param name="wo_code">工单编号</param>
        /// <param name="saleorder_code">销售订单号</param>
        /// <param name="orderdate">单据日期</param>
        /// <param name="ordercode">单据编码</param>
        /// <param name="storehousecode">仓库编码</param>
        /// <param name="obj">明细数据</param>
        /// <returns></returns>
        [Route(template: "ProductInHouseOrderSeave")]