//获取混工单组号 public IEnumerable <SelectListItem> GetWorkOrderGroupNoList() { using (WorkOrderGroupDetailServiceClient client = new WorkOrderGroupDetailServiceClient()) { PagingConfig cfg = new PagingConfig() { IsPaging = false }; MethodReturnResult <IList <WorkOrderGroupDetail> > result = client.Gets(ref cfg); if (result.Code <= 0) { List <string> ii = new List <string>(); for (int i = 0; i < result.Data.Count; i++) { ii.Add(result.Data[i].Key.WorkOrderGroupNo.ToString()); } //result.Data.Distinct(); return(from item in ii.Distinct() select new SelectListItem() { Text = item, Value = item //,Selected = false }); } } return(new List <SelectListItem>()); }
public async Task <ActionResult> Query(WorkOrderGroupQueryDetailViewModel model) { if (ModelState.IsValid) { using (WorkOrderGroupDetailServiceClient client = new WorkOrderGroupDetailServiceClient()) { await Task.Run(() => { StringBuilder where = new StringBuilder(); if (model != null) { if (!string.IsNullOrEmpty(model.ProductCode)) { where.AppendFormat(" {0} Key.ProductCode LIKE '{1}%'" , where.Length > 0 ? "AND" : string.Empty , model.ProductCode.ToString().Trim().ToUpper()); } if (!string.IsNullOrEmpty(model.OrderNumber)) { where.AppendFormat(" {0} Key.OrderNumber LIKE '{1}%'" , where.Length > 0 ? "AND" : string.Empty , model.OrderNumber.ToString().Trim().ToUpper()); } if (!string.IsNullOrEmpty(model.WorkOrderGroupNo)) { where.AppendFormat(" {0} Key.WorkOrderGroupNo LIKE '{1}%'" , where.Length > 0 ? "AND" : string.Empty , model.WorkOrderGroupNo.ToString().Trim().ToUpper()); } } PagingConfig cfg = new PagingConfig() { OrderBy = "Nums Desc,ItemNo Asc", Where = where.ToString() }; MethodReturnResult <IList <WorkOrderGroupDetail> > result = client.Gets(ref cfg); if (result.Code == 0) { ViewBag.PagingConfig = cfg; ViewBag.List = result.Data; } }); } } return(PartialView("_ListPartial")); }
//初始化混工单组号的值 public string SetWorkOrderGroupNo() { string WorkOrderGroupNo = ""; using (WorkOrderGroupDetailServiceClient client = new WorkOrderGroupDetailServiceClient()) { PagingConfig cfg = new PagingConfig() { IsPaging = false //,OrderBy = "Key.WorkOrderGroupNo Desc" }; MethodReturnResult <IList <WorkOrderGroupDetail> > result = client.Gets(ref cfg); if (result.Code <= 0 && result.Data.Count > 0) { List <int> ii = new List <int>(); for (int h = 0; h < result.Data.Count; h++) { string ss = result.Data[h].Key.WorkOrderGroupNo.ToString(); ii.Add(Convert.ToInt32(result.Data[h].Key.WorkOrderGroupNo.ToString().Substring(5, ss.Length - 5))); } //获取最大序列号 int temp = 0; for (int x = 0; x < ii.Count; x++) { if (temp < ii[x]) { temp = ii[x]; } } //string n = result.Data[0].Key.WorkOrderGroupNo.ToString(); //string j = result.Data[0].Key.WorkOrderGroupNo.ToString().Substring(5, n.Length - 5); //int i = Convert.ToInt32(j) + 1; int i = temp + 1; WorkOrderGroupNo = "GROUP" + Convert.ToString(i); } else { WorkOrderGroupNo = "GROUP1"; } } return(WorkOrderGroupNo); }
// // GET: /PPM/WorkOrderGroupDetail/ public async Task <ActionResult> Index() { using (WorkOrderGroupDetailServiceClient client = new WorkOrderGroupDetailServiceClient()) { await Task.Run(() => { PagingConfig cfg = new PagingConfig() { OrderBy = "Nums Desc,ItemNo Asc" }; MethodReturnResult <IList <WorkOrderGroupDetail> > result = client.Gets(ref cfg); if (result.Code == 0) { ViewBag.PagingConfig = cfg; ViewBag.List = result.Data; } }); } return(View(new WorkOrderGroupQueryDetailViewModel())); }
public async Task <ActionResult> PagingQuery(string where, string orderBy, int?currentPageNo, int?currentPageSize) { if (ModelState.IsValid) { int pageNo = currentPageNo ?? 0; int pageSize = currentPageSize ?? 20; if (Request["PageNo"] != null) { pageNo = Convert.ToInt32(Request["PageNo"]); } if (Request["PageSize"] != null) { pageSize = Convert.ToInt32(Request["PageSize"]); } using (WorkOrderGroupDetailServiceClient client = new WorkOrderGroupDetailServiceClient()) { await Task.Run(() => { PagingConfig cfg = new PagingConfig() { PageNo = pageNo, PageSize = pageSize, Where = where ?? string.Empty, OrderBy = orderBy ?? string.Empty }; MethodReturnResult <IList <WorkOrderGroupDetail> > result = client.Gets(ref cfg); if (result.Code == 0) { ViewBag.PagingConfig = cfg; ViewBag.List = result.Data; //ViewBag.GroupNoList = GetWorkOrderGroupNoList(); //ViewBag.GroupNo = SetWorkOrderGroupNo(); } }); } } return(PartialView("_ListPartial")); }
public async Task <ActionResult> Save(WorkOrderGroupDetailViewModel model) { DateTime now = DateTime.Now; MethodReturnResult rst = new MethodReturnResult(); if (model.WorkOrderGroupNo == "" || model.WorkOrderGroupNo == null) { rst.Code = 1000; rst.Message = "混工单组号不可为空!"; return(Json(rst)); } if (model.OrderNumber == "" || model.OrderNumber == null) { rst.Code = 1000; rst.Message = "工单不可为空!"; return(Json(rst)); } if (model.ProductCode == "" || model.ProductCode == null) { rst.Code = 1000; rst.Message = "产品编码不可为空!"; return(Json(rst)); } using (WorkOrderServiceClient client0 = new WorkOrderServiceClient()) { PagingConfig cfg0 = new PagingConfig() { IsPaging = false, Where = string.Format(@"Key LIKE '{0}%' AND OrderState='0' AND CloseType=0" , model.OrderNumber.Trim().ToUpper()), OrderBy = "Key" }; MethodReturnResult <IList <WorkOrder> > result0 = client0.Get(ref cfg0); if (result0.Code <= 0 && result0.Data != null) { if (model.ProductCode.Trim().ToUpper() == result0.Data[0].MaterialCode.ToString()) { #region 新增规则 using (WorkOrderGroupDetailServiceClient client = new WorkOrderGroupDetailServiceClient()) { //获取混工单组规则中该组的最大序列号 StringBuilder where = new StringBuilder(); if (model != null) { if (!string.IsNullOrEmpty(model.WorkOrderGroupNo)) { where.AppendFormat(" {0} Key.WorkOrderGroupNo LIKE '{1}%'" , where.Length > 0 ? "AND" : string.Empty , model.WorkOrderGroupNo.ToString().Trim().ToUpper()); } } PagingConfig cfg = new PagingConfig() { OrderBy = "ItemNo Desc", Where = where.ToString() }; MethodReturnResult <IList <WorkOrderGroupDetail> > result = client.Gets(ref cfg); if (result != null && result.Data.Count > 0) { //判断新增工单是否已存在至混工单组 StringBuilder where1 = new StringBuilder(); if (model != null) { if (!string.IsNullOrEmpty(model.WorkOrderGroupNo)) { where1.AppendFormat(" {0} Key.OrderNumber = '{1}'" , where1.Length > 0 ? "AND" : string.Empty , model.OrderNumber.ToString().Trim().ToUpper()); } } PagingConfig cfg1 = new PagingConfig() { //OrderBy = "ItemNo Desc", Where = where1.ToString() }; MethodReturnResult <IList <WorkOrderGroupDetail> > result1 = client.Gets(ref cfg1); if (result1 != null && result1.Data.Count > 0) { rst.Code = 1000; rst.Message = string.Format("新增工单{0}已存在至混工单组{1}中!" , model.OrderNumber.Trim().ToUpper() , result1.Data[0].Key.WorkOrderGroupNo.ToString()); return(Json(rst)); } if (model.ProductCode.Trim().ToUpper() == result.Data[0].Key.ProductCode.ToString()) { int i = 1; if (result.Code == 0 && result.Data.Count > 0) { i = Convert.ToInt32(result.Data[0].ItemNo.ToString()) + 1; } string n = model.WorkOrderGroupNo.ToString().Trim().ToUpper(); WorkOrderGroupDetail obj = new WorkOrderGroupDetail() { Key = new WorkOrderGroupDetailKey() { WorkOrderGroupNo = model.WorkOrderGroupNo.ToString().Trim().ToUpper(), OrderNumber = model.OrderNumber.ToString().Trim().ToUpper(), ProductCode = model.ProductCode.ToString().Trim().ToUpper() }, Nums = Convert.ToInt32(n.Substring(5, n.Length - 5)), ItemNo = i, CreateTime = DateTime.Now, Creator = User.Identity.Name, Editor = User.Identity.Name, EditTime = DateTime.Now, Description = result.Data[0].Description }; rst = await client.AddAsync(obj); if (rst.Code == 0) { rst.Message = string.Format(PPMResources.StringResource.WorkOrderGroupDetail_Save_Success, obj.Key.ToString()); } return(Json(rst)); } else { rst.Code = 1000; rst.Message = string.Format("新增工单{0}的产品编码{1}与混工单组的产品编码{2}不一致!" , model.OrderNumber.Trim().ToUpper() , model.ProductCode.Trim().ToUpper() , result.Data[0].Key.ProductCode.ToString()); return(Json(rst)); } } else { //获取混工单组规则中该组的最大序列号 StringBuilder where1 = new StringBuilder(); if (model != null) { if (!string.IsNullOrEmpty(model.WorkOrderGroupNo)) { where1.AppendFormat(" {0} Key.OrderNumber = '{1}'" , where1.Length > 0 ? "AND" : string.Empty , model.OrderNumber.ToString().Trim().ToUpper()); } } PagingConfig cfg1 = new PagingConfig() { //OrderBy = "ItemNo Desc", Where = where1.ToString() }; MethodReturnResult <IList <WorkOrderGroupDetail> > result1 = client.Gets(ref cfg1); if (result1 != null && result1.Data.Count > 0) { rst.Code = 1000; rst.Message = string.Format("新增工单{0}已存在至混工单组{1}中!" , model.OrderNumber.Trim().ToUpper() , result1.Data[0].Key.WorkOrderGroupNo.ToString()); return(Json(rst)); } else { int i = 1; string n = model.WorkOrderGroupNo.ToString().Trim().ToUpper(); WorkOrderGroupDetail obj = new WorkOrderGroupDetail() { Key = new WorkOrderGroupDetailKey() { WorkOrderGroupNo = model.WorkOrderGroupNo.ToString().Trim().ToUpper(), OrderNumber = model.OrderNumber.ToString().Trim().ToUpper(), ProductCode = model.ProductCode.ToString().Trim().ToUpper() }, Nums = Convert.ToInt32(n.Substring(5, n.Length - 5)), ItemNo = i, CreateTime = DateTime.Now, Creator = User.Identity.Name, Editor = User.Identity.Name, EditTime = DateTime.Now, Description = model.Description, }; rst = await client.AddAsync(obj); if (rst.Code == 0) { rst.Message = string.Format(PPMResources.StringResource.WorkOrderGroupDetail_Save_Success, obj.Key.ToString()); } return(Json(rst)); } } } #endregion } else { rst.Code = 1000; rst.Message = string.Format("工单号{0}对应的产品编码{1}与界面上的产品编码{2}不一致!" , model.OrderNumber.Trim().ToUpper() , result0.Data[0].MaterialCode.ToString() , model.ProductCode.Trim().ToUpper()); return(Json(rst)); } } else { rst.Code = 1000; rst.Message = string.Format("工单号{0}不存在或已关闭!", model.OrderNumber.Trim().ToUpper()); return(Json(rst)); } } }