public dynamic GetPageData(string id) { var masterService = new MES_WorkshopBatchingService(); //var pQuery = ParamQuery.Instance().AndWhere("BatchingCode", id); RequestWrapper query = new RequestWrapper().LoadSettingXmlString(@" <settings defaultOrderBy='BatchingCode'> <select>*</select> <from>(SELECT t1.* ,t2.PartName RootName FROM V_MesWorkshopBatching t1 INNER JOIN dbo.PRS_Process_BOM t2 ON t1.RootPartCode=t2.PartCode) as tmp</from> <where defaultForAll='true' defaultCp='equal' defaultIgnoreEmpty='true' > <field name='BatchingCode' cp='like'></field> <field name='ContractCode' cp='like'></field> <field name='DepartmentName' cp='like'></field> </where> </settings>"); ParamQuery pQuery = query.ToParamQuery(); pQuery.AndWhere("BatchingCode", id); var data = masterService.GetDynamic(pQuery); var result = new { //主表数据 form = data, scrollKeys = masterService.ScrollKeys("BatchingCode", id), //明细数据 tab0 = new MES_WorkshopBatchingDetailService().GetDynamicList(ParamQuery.Instance().AndWhere("BatchingCode", id)) }; return(result); }
public dynamic Get(RequestWrapper query) { //string ContractCode = query["ContractCode"]; query.LoadSettingXmlString(@" <settings defaultOrderBy='a.BatchingCode'> <select>a.ContractCode,c.ProjectName,a.RootPartCode,a.IsEnable, (SELECT TOP 1 PartFigureCode FROM dbo.PRS_Process_BOM WHERE PartCode = a.RootPartCode) RootFigureCode, (SELECT TOP 1 PartName FROM dbo.PRS_Process_BOM WHERE PartCode = a.RootPartCode) RootPartName, (SELECT TOP 1 PartFigureCode FROM dbo.PRS_Process_BOM WHERE PartCode = b.PartCode) PartFigureCode,b.PartCode, (SELECT TOP 1 PartName FROM dbo.PRS_Process_BOM WHERE PartCode = b.PartCode) PartName, (SELECT TOP 1 MaterialCode FROM dbo.PRS_Process_BOM WHERE PartCode = b.PartCode) MaterialCode, a.WorkshopCode,(SELECT TOP 1 DepartmentName FROM dbo.SYS_BN_Department WHERE DepartmentCode=a.WorkshopCode) WorkshopName,b.BatchingNum, b.OutDeptCode,(SELECT WarehouseName FROM SYS_BN_Warehouse WHERE WarehouseCode=b.OutDeptCode) OutDeptName</select> <from>MES_WorkshopBatching a LEFT JOIN MES_WorkshopBatchingDetail b ON a.BatchingCode=b.BatchingCode LEFT JOIN PMS_BN_Project c ON c.ContractCode=a.ContractCode</from> <where defaultForAll='true' defaultCp='equal' defaultIgnoreEmpty='true' > <field name='a.ContractCode' cp='equal'></field> <field name='a.ProductID' cp='equal'></field> <field name='b.PartCode' cp='equal'></field> <field name='a.RootPartCode' cp='equal'></field> </where> </settings>"); var service = new MES_WorkshopBatchingService(); var pQuery = query.ToParamQuery(); var result = service.GetDynamicList(pQuery.AndWhere("a.IsEnable", 1)); return(result); }
public void Audit(string id, JObject data) { var pUpdate = ParamUpdate.Instance() .Update("MES_WorkshopBatching") .Column("ApproveState", data["status"]) .Column("ApproveRemark", data["comment"]) .Column("ApprovePerson", FormsAuth.GetUserData().UserName) .Column("ApproveDate", DateTime.Now) .AndWhere("BatchingCode", id); var service = new MES_WorkshopBatchingService(); var rowsAffected = service.Update(pUpdate); MmsHelper.ThrowHttpExceptionWhen(rowsAffected < 0, "单据审核失败[BillNo={0}],请重试或联系管理员!", id); }
public dynamic Get(RequestWrapper query) { query.LoadSettingXmlString(@" <settings defaultOrderBy='BatchingCode'> <select>*</select> <from>(SELECT t1.* ,t2.PartName RootName FROM V_MesWorkshopBatching t1 INNER JOIN dbo.PRS_Process_BOM t2 ON t1.RootPartCode=t2.PartCode) as tmp</from> <where defaultForAll='true' defaultCp='equal' defaultIgnoreEmpty='true' > <field name='BatchingCode' cp='like'></field> <field name='ContractCode' cp='like'></field> <field name='DepartmentName' cp='like'></field> </where> </settings>"); var service = new MES_WorkshopBatchingService(); var pQuery = query.ToParamQuery(); var result = service.GetDynamicListWithPaging(pQuery); return(result); }
public void Edit(dynamic data) { var BatchingCode = MmsHelper.GetOrderNumber("MES_WorkshopBatching", "BatchingCode", "PLD", "", ""); data.form.BatchingCode = BatchingCode; dynamic InsertList = data.tabs[0].inserted; foreach (dynamic item in InsertList) { item.BatchingCode = BatchingCode; } var formWrapper = RequestWrapper.Instance().LoadSettingXmlString(@" <settings> <table> MES_WorkshopBatching </table> <where> <field name='BatchingCode' cp='equal'></field> </where> </settings> "); var tabsWrapper = new List <RequestWrapper>(); tabsWrapper.Add(RequestWrapper.Instance().LoadSettingXmlString(@" <settings> <table>MES_WorkshopBatchingDetail</table> <where> <field name='ID' cp='equal'></field> </where> </settings>")); var service = new MES_WorkshopBatchingService(); var result = service.EditPage(data, formWrapper, tabsWrapper); }
public ActionResult Index(string id) { WorkTicketCode = id; //查询工票表信息 var WorkTicketCodeModel = new MES_WorkingTicketService().GetModelList(ParamQuery.Instance().AndWhere("WorkTicketCode", WorkTicketCode)).FirstOrDefault(); var WorkshopCode = WorkTicketCodeModel.WorkshopCode; //工票信息车间编码 var WorkshopName = WorkTicketCodeModel.WorkshopName; //工票信息车间名称 var PartCode = WorkTicketCodeModel.PartCode; //工票信息零件编码 //var WorkQuantity = WorkTicketCodeModel.WorkQuantity;//工票信息派工数量 var ApsCode = WorkTicketCodeModel.ApsCode; //计划编码 var ApproveState = WorkTicketCodeModel.ApproveState ?? 1; //查询计划中产品数量 var PlanNumber = new APS_ProjectProduceDetialService().GetField <int>( ParamQuery.Instance() .Select("Quantity/BomQty") .From("APS_ProjectProduceDetial") .AndWhere("ApsCode", ApsCode)); var MES_WorkshopBatchingList = new MES_WorkshopBatchingService().GetModelList(ParamQuery.Instance().AndWhere("WorkshopCode", WorkshopCode).AndWhere("PartCode", PartCode).AndWhere("IsEnable", 1)); var MES_WorkshopBatchingDetailList = new List <MES_WorkshopBatchingDetail>(); var MES_WorkTicketMateList = new List <dynamic>(); MES_WorkTicketMateList = new MES_WorkTicketMateService().GetDynamicList(ParamQuery.Instance().AndWhere("WorkTicketCode", WorkTicketCode)); if (MES_WorkTicketMateList.Count == 0) { var PRS_Process_BOMList = new PRS_Process_BOMService() .GetModelList(); if (MES_WorkshopBatchingList.Count > 0) { string BatchingCodeStr = "'" + string.Join("','", MES_WorkshopBatchingList.Select(a => a.BatchingCode)) + "'"; MES_WorkshopBatchingDetailList = new MES_WorkshopBatchingDetailService().GetModelList(ParamQuery.Instance().AndWhere("BatchingCode", BatchingCodeStr, Cp.In)); } if (MES_WorkshopBatchingDetailList.Count > 0) { MES_WorkTicketMateList = MES_WorkshopBatchingDetailList .Join(PRS_Process_BOMList, a => new { PartCode = a.PartCode, ParentCode = a.ParentCode }, b => new { PartCode = b.PartCode, ParentCode = b.ParentCode }, (a, b) => new { a, b }) //.Join(PRS_Process_BOMList, c => new { ParentCode = c.b.ParentCode }, d => new { ParentCode = d.PartCode }, (c, d) => { c,d }) .Select(r => new { InventoryCode = r.b.InventoryCode, PartCode = r.b.PartCode, ParentCode = r.b.ParentCode, InventoryName = r.a.PartName, RequiredQuantity = r.a.BatchingNum, //需求数量 TotalQuantity = r.b.PartQuantity * PlanNumber, //需求总数 WorkTicketCode = WorkTicketCode, WorkshopCode = WorkshopCode, WorkshopName = WorkshopName, IsEnable = 1, IsCrux = r.b.IsCrux }).ToList <dynamic>(); } } var code = new sys_codeService(); var model = new { dataSource = new { MES_WorkTicketMateList = MES_WorkTicketMateList, ApproveState = ApproveState }, urls = new { query = "/api/Mms/MES_WorkTicketMate", newkey = "/api/Mms/MES_WorkTicketMate/getnewkey", edit = "/api/Mms/MES_WorkTicketMate/edit" }, resx = new { noneSelect = "请先选择一条数据!", editSuccess = "保存成功!", auditSuccess = "单据已审核!" }, form = new { WorkTicketCode = "" }, defaultRow = new { }, setting = new { idField = "ID", postListFields = new string[] { "ID", "WorkTicketCode", "InventoryCode", "PartCode", "ParentCode", "InventoryName", "RequiredQuantity", "TotalQuantity", "WorkshopCode", "WorkshopName", "CreatePerson", "CreateTime", "IsEnable", "IsCrux" } } }; return(View(model)); }