public ActionResult Approve(MaterialReceiptExDetailQueryViewModel model) { MethodReturnResult result = new MethodReturnResult(); MaterialReceiptParamter paramter = new MaterialReceiptParamter() { ReceiptNo = model.ReceiptNo, Creator = User.Identity.Name, }; try { using (MaterialReceiptServiceClient client = new MaterialReceiptServiceClient()) { result = client.ApproveMaterialReceipt(paramter); if (result.Code == 0) { result.Message = string.Format("审批{0}成功" , model.ReceiptNo); } } } catch (Exception ex) { result.Code = 1000; result.Message = ex.Message; result.Detail = ex.ToString(); } return(Json(result)); }
public ActionResult Modify(string key) { MaterialReceiptExViewModel model = new MaterialReceiptExViewModel(); using (MaterialReceiptServiceClient client = new MaterialReceiptServiceClient()) { MethodReturnResult <MaterialReceipt> result = client.Get(key); if (result.Code == 0) { model = new MaterialReceiptExViewModel() { ReceiptNo = result.Data.Key, ReceiptDate = result.Data.ReceiptDate, OrderNumber = result.Data.OrderNumber, LineStore = result.Data.LineStore, Creator = result.Data.Creator, Editor = User.Identity.Name }; return(PartialView("_ModifyPartial", model)); } else { ModelState.AddModelError("", result.Message); } } return(PartialView("_ModifyPartial")); }
public ActionResult SaveModify(MaterialReceiptExViewModel model) { MethodReturnResult result = new MethodReturnResult(); using (MaterialReceiptServiceClient client = new MaterialReceiptServiceClient()) { MaterialReceipt MaterialReceipt = new MaterialReceipt() { Key = model.ReceiptNo, ReceiptDate = model.ReceiptDate, OrderNumber = model.OrderNumber, Description = model.Description, LineStore = model.LineStore, Creator = model.Creator, Editor = User.Identity.Name }; result = client.ModifyMaterialReceipt(MaterialReceipt); if (result.Code == 0) { result.Message = string.Format(LSMResources.StringResource.MaterialReceipt_Save_Success, model.ReceiptNo); } } return(Json(result)); }
public async Task <ActionResult> DetailQuery(MaterialReceiptDetailQueryViewModel model) { if (ModelState.IsValid) { using (MaterialReceiptServiceClient client = new MaterialReceiptServiceClient()) { await Task.Run(() => { PagingConfig cfg = new PagingConfig() { OrderBy = "CreateTime Desc,Key.ReceiptNo,Key.ItemNo", Where = GetWhereCondition(model) }; MethodReturnResult <IList <MaterialReceiptDetail> > result = client.GetDetail(ref cfg); if (result.Code == 0) { ViewBag.PagingConfig = cfg; ViewBag.List = result.Data; } }); } } if (Request.IsAjaxRequest()) { return(PartialView("_DetailListPartial", new MaterialReceiptDetailViewModel())); } else { return(View("Detail", model)); } }
public ActionResult Query(MaterialReceiptExQueryViewModel model) { if (ModelState.IsValid) { using (MaterialReceiptServiceClient client = new MaterialReceiptServiceClient()) { StringBuilder where = new StringBuilder(); if (model != null) { if (!string.IsNullOrEmpty(model.ReceiptNo)) { where.AppendFormat(" {0} Key LIKE '{1}%'" , where.Length > 0 ? "AND" : string.Empty , model.ReceiptNo); } } PagingConfig cfg = new PagingConfig() { OrderBy = "CreateTime desc", Where = where.ToString() }; MethodReturnResult <IList <MaterialReceipt> > result = client.Get(ref cfg); if (result.Code == 0) { ViewBag.PagingConfig = cfg; ViewBag.List = result.Data; } } } return(PartialView("_ListPartial")); }
public ActionResult Delete(string ReceiptNo, string MaterialLotNumber) { MethodReturnResult result = new MethodReturnResult(); MaterialReceiptDetailParamter paramter = new MaterialReceiptDetailParamter() { ReceiptNo = ReceiptNo, MaterialLotNumber = MaterialLotNumber, Creator = User.Identity.Name, IsReceiptOfCell = true }; try { using (MaterialReceiptServiceClient client = new MaterialReceiptServiceClient()) { result = client.DeleteMaterialReceiptDetail(paramter); if (result.Code == 0) { result.Message = string.Format("删除{0}成功" , MaterialLotNumber); } } } catch (Exception ex) { result.Code = 1000; result.Message = ex.Message; result.Detail = ex.ToString(); } return(Json(result)); }
public ActionResult Save(MaterialReceiptExDetailQueryViewModel model) { MethodReturnResult result = new MethodReturnResult(); MaterialReceiptDetailParamter paramter = new MaterialReceiptDetailParamter() { ReceiptNo = model.ReceiptNo, MaterialLotNumber = model.MaterialLot, Creator = User.Identity.Name, IsReceiptOfCell = true }; try { using (MaterialReceiptServiceClient client = new MaterialReceiptServiceClient()) { result = client.AddMaterialReceiptDetail(paramter); if (result.Code == 0) { result.Message = string.Format("添加{0}成功" , model.MaterialLot); } } } catch (Exception ex) { result.Code = 1000; result.Message = ex.Message; result.Detail = ex.ToString(); } return(Json(result)); }
public ActionResult GetMaterialLots(string orderNumber, string lineStoreName, string materialCode) { //根据工单获取领料记录 IList <MaterialReceiptDetail> lstMaterialReceipt = new List <MaterialReceiptDetail>(); using (MaterialReceiptServiceClient client = new MaterialReceiptServiceClient()) { PagingConfig cfg = new PagingConfig() { IsPaging = false, Where = string.Format(@" LineStoreName ='{0}' AND MaterialCode='{2}' AND EXISTS(FROM MaterialReceipt as p WHERE p.Key=self.Key.ReceiptNo AND p.OrderNumber='{1}')" , lineStoreName , orderNumber , materialCode) }; MethodReturnResult <IList <MaterialReceiptDetail> > result = client.GetDetail(ref cfg); if (result.Code <= 0 && result.Data != null) { lstMaterialReceipt = result.Data; } } //根据物料类型获取物料。 IList <LineStoreMaterialDetail> lstLineStoreMaterial = new List <LineStoreMaterialDetail>(); using (LineStoreMaterialServiceClient client = new LineStoreMaterialServiceClient()) { PagingConfig cfg = new PagingConfig() { IsPaging = false, Where = string.Format(@"Key.LineStoreName ='{0}' AND Key.MaterialCode='{1}' AND Key.OrderNumber='{2}' AND CurrentQty>0" , lineStoreName , materialCode , orderNumber) }; MethodReturnResult <IList <LineStoreMaterialDetail> > result = client.GetDetail(ref cfg); if (result.Code <= 0 && result.Data != null) { lstLineStoreMaterial = result.Data; } } var lnq = from item in lstLineStoreMaterial where lstMaterialReceipt.Any(m => m.MaterialLot == item.Key.MaterialLot) select new { Text = string.Format("{0}[{1}][{2}]", item.Key.MaterialLot, item.CurrentQty, item.Attr1), Value = item.Key.MaterialLot }; return(Json(lnq, JsonRequestBehavior.AllowGet)); }
public async Task <ActionResult> ParentQuery(MaterialReceiptDetailParentQueryViewModel model) { LineStoreMaterialDetail lsmd = null; MaterialReceiptDetail mrd = null; if (ModelState.IsValid && model.MaterialLot != null) { using (LineStoreMaterialServiceClient client = new LineStoreMaterialServiceClient()) { await Task.Run(() => { PagingConfig cfg = new PagingConfig() { Where = string.Format(" Key.MaterialLot Like '{0}'" , model.MaterialLot) }; MethodReturnResult <IList <LineStoreMaterialDetail> > result = client.GetDetail(ref cfg); if (result.Code <= 0 && result.Data != null && result.Data.Count > 0) { lsmd = result.Data[0]; } }); } if (lsmd != null) { using (MaterialReceiptServiceClient client = new MaterialReceiptServiceClient()) { await Task.Run(() => { PagingConfig cfg = new PagingConfig() { OrderBy = "CreateTime Desc,Key.ReceiptNo,Key.ItemNo", Where = string.Format("MaterialLot LIKE '{0}'" , lsmd.Attr2) }; MethodReturnResult <IList <MaterialReceiptDetail> > result = client.GetDetail(ref cfg); if (result.Code == 0 && result.Data.Count > 0 && result.Data[0] != null) { ViewBag.lsmd = lsmd; ViewBag.mrd = result.Data[0]; } }); } } } if (Request.IsAjaxRequest()) { return(PartialView("_ParentListPartial")); } else { return(View("ParentQueryIndex")); } }
public MaterialReceipt GetMaterialReceipt(string key) { using (MaterialReceiptServiceClient client = new MaterialReceiptServiceClient()) { MethodReturnResult <MaterialReceipt> rst = client.Get(key); if (rst.Code <= 0) { return(rst.Data); } } return(null); }
public ActionResult GetMaterialCodes(string orderNumber, string lineStoreName) { //根据工单获取领料记录 IList <MaterialReceiptDetail> lstMaterialReceipt = new List <MaterialReceiptDetail>(); using (MaterialReceiptServiceClient client = new MaterialReceiptServiceClient()) { PagingConfig cfg = new PagingConfig() { IsPaging = false, Where = string.Format(@" LineStoreName ='{0}' AND EXISTS(FROM MaterialReceipt as p WHERE p.Key=self.Key.ReceiptNo AND p.OrderNumber='{1}') AND (MaterialCode LIKE '11%' OR MaterialCode LIKE '1301%' OR MaterialCode LIKE '1803%' OR MaterialCode LIKE '2511%')" //电池片或硅片" , lineStoreName , orderNumber) }; MethodReturnResult <IList <MaterialReceiptDetail> > result = client.GetDetail(ref cfg); if (result.Code <= 0 && result.Data != null) { lstMaterialReceipt = result.Data; } } //根据物料类型获取物料。 IList <LineStoreMaterialDetail> lstLineStoreMaterial = new List <LineStoreMaterialDetail>(); using (LineStoreMaterialServiceClient client = new LineStoreMaterialServiceClient()) { PagingConfig cfg = new PagingConfig() { IsPaging = false, Where = string.Format(@"Key.OrderNumber='{1}' AND Key.LineStoreName ='{0}' AND CurrentQty>0 AND (Key.MaterialCode LIKE '11%' OR Key.MaterialCode LIKE '1301%' OR Key.MaterialCode LIKE '1803%' OR Key.MaterialCode LIKE '2511%')" , lineStoreName , orderNumber) }; MethodReturnResult <IList <LineStoreMaterialDetail> > result = client.GetDetail(ref cfg); if (result.Code <= 0 && result.Data != null) { lstLineStoreMaterial = result.Data; } } var lnq = from item in lstLineStoreMaterial where lstMaterialReceipt.Any(m => m.MaterialCode == item.Key.MaterialCode) select item.Key.MaterialCode; return(Json(lnq.Distinct(), JsonRequestBehavior.AllowGet)); }
public ActionResult Delete(string key) { MethodReturnResult result = new MethodReturnResult(); using (MaterialReceiptServiceClient client = new MaterialReceiptServiceClient()) { result = client.DeleteMaterialReceipt(key); if (result.Code == 0) { result.Message = string.Format(LSMResources.StringResource.MaterialReceipt_Save_Success, key); } } return(Json(result)); }
public ActionResult Save(MaterialReceiptExViewModel model) { MethodReturnResult result = new MethodReturnResult(); try { using (MaterialReceiptServiceClient client = new MaterialReceiptServiceClient()) { MethodReturnResult <MaterialReceipt> resultOfAddMaterial = new MethodReturnResult <MaterialReceipt>(); MaterialReceipt materialReceipt = new MaterialReceipt() { Key = model.ReceiptNo, ReceiptDate = model.ReceiptDate, Description = model.Description, OrderNumber = model.OrderNumber, LineStore = model.LineStore, Editor = User.Identity.Name, Creator = User.Identity.Name, }; resultOfAddMaterial = client.AddMaterialReceipt(materialReceipt); if (resultOfAddMaterial.Code == 0) { result.Message = string.Format(LSMResources.StringResource.MaterialReceipt_Save_Success , resultOfAddMaterial.Data.Key); result.Detail = resultOfAddMaterial.Data.Key; } else { result.Code = resultOfAddMaterial.Code; result.Message = resultOfAddMaterial.Message; } } } catch (Exception ex) { result.Code = 1000; result.Message = ex.Message; result.Detail = ex.ToString(); } return(Json(result)); }
// // GET: /LSM/MaterialReceiptExDetail/ public ActionResult Index(string ReceiptNo) { MaterialReceiptExDetailQueryViewModel model = new MaterialReceiptExDetailQueryViewModel(); PagingConfig cfg = new PagingConfig() { IsPaging = false, OrderBy = "Key.ItemNo", Where = string.Format(" Key.ReceiptNo = '{0}'" , ReceiptNo) }; using (MaterialReceiptServiceClient client = new MaterialReceiptServiceClient()) { MethodReturnResult <IList <MaterialReceiptDetail> > result = client.GetDetail(ref cfg); if (result.Code == 0) { ViewBag.PagingConfig = cfg; ViewBag.List = result.Data; } MethodReturnResult <MaterialReceipt> res = client.Get(ReceiptNo); if (res.Code == 0) { model.ReceiptNo = res.Data.Key; model.OrderNumber = res.Data.OrderNumber; model.LineStoreName = res.Data.LineStore; model.ReceiptDate = res.Data.ReceiptDate.ToString("yyyy-MM-dd"); ViewBag.State = res.Data.State; } } if (Request.IsAjaxRequest()) { return(PartialView("_ListPartial", new MaterialReceiptExDetailViewModel() { ReceiptNo = ReceiptNo })); } return(View("Index", model)); }
/// <summary> /// 根据电池箱号获取电池箱信息,数量,效率,颜色,供应商 /// </summary> /// <param name="q"></param> /// <returns></returns> MaterialReceiptDetail GetBox(string q) { MaterialReceiptDetail obj = new MaterialReceiptDetail(); using (MaterialReceiptServiceClient client = new MaterialReceiptServiceClient()) { MethodReturnResult <MaterialReceiptDetail> result = client.GetBoxDetail(q); if (result.Code <= 0 && result.Data != null) { obj = result.Data; } } return(obj); //return Json(new //{ // @SupplierCode = obj.SupplierCode ?? string.Empty, // @SupplierMaterialLot = obj.SupplierMaterialLot ?? string.Empty, // @Attr1 = obj.Attr1 ?? string.Empty //}, JsonRequestBehavior.AllowGet); }
public ActionResult GetOrderNumber(string MaterialLotNumber) { using (MaterialReceiptServiceClient client = new MaterialReceiptServiceClient()) { if (!string.IsNullOrEmpty(MaterialLotNumber)) { MethodReturnResult <DataSet> rst = client.GetOrderNumberByMaterialLot(MaterialLotNumber); if (rst.Code <= 0) { { var data = from item in rst.Data.Tables[0].AsEnumerable() select item["ORDER_NUMBER"].ToString(); return(Json(data, JsonRequestBehavior.AllowGet)); } } } return(null); } }
public ActionResult GetReceiptNo() { string prefix = string.Format("LMK{0:yyMMdd}", DateTime.Now); int itemNo = 0; using (MaterialReceiptServiceClient client = new MaterialReceiptServiceClient()) { PagingConfig cfg = new PagingConfig() { PageNo = 0, PageSize = 1, Where = string.Format("Key LIKE '{0}%'", prefix), OrderBy = "Key Desc" }; MethodReturnResult <IList <MaterialReceipt> > result = client.Get(ref cfg); if (result.Code <= 0 && result.Data != null && result.Data.Count > 0) { string sItemNo = result.Data[0].Key.Replace(prefix, ""); int.TryParse(sItemNo, out itemNo); } } return(Json(prefix + (itemNo + 1).ToString("0000"), JsonRequestBehavior.AllowGet)); }
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 (MaterialReceiptServiceClient client = new MaterialReceiptServiceClient()) { await Task.Run(() => { PagingConfig cfg = new PagingConfig() { PageNo = pageNo, PageSize = pageSize, Where = where ?? string.Empty, OrderBy = orderBy ?? string.Empty }; MethodReturnResult <IList <MaterialReceipt> > result = client.Get(ref cfg); if (result.Code == 0) { ViewBag.PagingConfig = cfg; ViewBag.List = result.Data; } }); } } return(PartialView("_ListPartial")); }
public async Task <ActionResult> ExportToExcel(MaterialReceiptDetailQueryViewModel model) { IList <MaterialReceiptDetail> lst = new List <MaterialReceiptDetail>(); using (MaterialReceiptServiceClient client = new MaterialReceiptServiceClient()) { await Task.Run(() => { PagingConfig cfg = new PagingConfig() { IsPaging = false, OrderBy = "CreateTime Desc,Key.ReceiptNo,Key.ItemNo", Where = GetWhereCondition(model) }; MethodReturnResult <IList <MaterialReceiptDetail> > result = client.GetDetail(ref cfg); if (result.Code == 0) { lst = result.Data; } }); } //创建工作薄。 IWorkbook wb = new HSSFWorkbook(); //设置EXCEL格式 ICellStyle style = wb.CreateCellStyle(); style.FillForegroundColor = 10; //有边框 style.BorderBottom = BorderStyle.THIN; style.BorderLeft = BorderStyle.THIN; style.BorderRight = BorderStyle.THIN; style.BorderTop = BorderStyle.THIN; IFont font = wb.CreateFont(); font.Boldweight = 10; style.SetFont(font); ICell cell = null; IRow row = null; ISheet ws = null; for (int j = 0; j < lst.Count; j++) { if (j % 65535 == 0) { ws = wb.CreateSheet(); row = ws.CreateRow(0); #region //列名 cell = row.CreateCell(row.Cells.Count); cell.CellStyle = style; cell.SetCellValue(LSMResources.StringResource.MaterialReceiptViewModel_ReceiptNo); //领料号 cell = row.CreateCell(row.Cells.Count); cell.CellStyle = style; cell.SetCellValue(LSMResources.StringResource.MaterialReceiptViewModel_OrderNumber); //工单号 cell = row.CreateCell(row.Cells.Count); cell.CellStyle = style; cell.SetCellValue(LSMResources.StringResource.MaterialReceiptViewModel_ReceiptDate); //领料日期 cell = row.CreateCell(row.Cells.Count); cell.CellStyle = style; cell.SetCellValue(LSMResources.StringResource.MaterialReceiptDetailViewModel_ItemNo); //项目号 cell = row.CreateCell(row.Cells.Count); cell.CellStyle = style; cell.SetCellValue(LSMResources.StringResource.MaterialReceiptDetailViewModel_LineStoreName); //线别仓 cell = row.CreateCell(row.Cells.Count); cell.CellStyle = style; cell.SetCellValue(LSMResources.StringResource.MaterialReceiptDetailViewModel_MaterialCode); //物料编码 cell = row.CreateCell(row.Cells.Count); cell.CellStyle = style; cell.SetCellValue("物料名称"); //物料名称 cell = row.CreateCell(row.Cells.Count); cell.CellStyle = style; cell.SetCellValue(LSMResources.StringResource.MaterialReceiptDetailViewModel_MaterialLot); //物料批号 cell = row.CreateCell(row.Cells.Count); cell.CellStyle = style; cell.SetCellValue(LSMResources.StringResource.MaterialReceiptDetailViewModel_Qty); //数量 cell = row.CreateCell(row.Cells.Count); cell.CellStyle = style; cell.SetCellValue(LSMResources.StringResource.MaterialReceiptDetailViewModel_SupplierMaterialLot); //供应商批号 cell = row.CreateCell(row.Cells.Count); cell.CellStyle = style; cell.SetCellValue(LSMResources.StringResource.MaterialReceiptDetailViewModel_SupplierCode); //供应商编码 cell = row.CreateCell(row.Cells.Count); cell.CellStyle = style; cell.SetCellValue("供应商名称"); //供应商名称 cell = row.CreateCell(row.Cells.Count); cell.CellStyle = style; cell.SetCellValue("描述"); //描述 cell = row.CreateCell(row.Cells.Count); cell.CellStyle = style; cell.SetCellValue("编辑人"); //编辑人 cell = row.CreateCell(row.Cells.Count); cell.CellStyle = style; cell.SetCellValue("编辑时间"); //编辑时间 #endregion font.Boldweight = 5; } MaterialReceiptDetail obj = lst[j]; MaterialReceipt mrObj = model.GetMaterialReceipt(obj.Key.ReceiptNo); Material m = model.GetMaterial(obj.MaterialCode); Supplier s = model.GetSupplier(obj.SupplierCode); row = ws.CreateRow(j + 1); #region //数据 cell = row.CreateCell(row.Cells.Count); cell.CellStyle = style; cell.SetCellValue(obj.Key.ReceiptNo); //领料号 cell = row.CreateCell(row.Cells.Count); cell.CellStyle = style; cell.SetCellValue(mrObj == null ? string.Empty : mrObj.OrderNumber); //工单号 cell = row.CreateCell(row.Cells.Count); cell.CellStyle = style; cell.SetCellValue(mrObj == null ? string.Empty : string.Format("{0:yyyy-MM-dd}", mrObj.ReceiptDate)); //领料日期 cell = row.CreateCell(row.Cells.Count); cell.CellStyle = style; cell.SetCellValue(obj.Key.ItemNo); //项目号 cell = row.CreateCell(row.Cells.Count); cell.CellStyle = style; cell.SetCellValue(obj.LineStoreName); //线别仓 cell = row.CreateCell(row.Cells.Count); cell.CellStyle = style; cell.SetCellValue(obj.MaterialCode); //物料编码 cell = row.CreateCell(row.Cells.Count); cell.CellStyle = style; cell.SetCellValue(m == null ? string.Empty : m.Name); //物料名称 cell = row.CreateCell(row.Cells.Count); cell.CellStyle = style; cell.SetCellValue(obj.MaterialLot); //物料批号 cell = row.CreateCell(row.Cells.Count); cell.CellStyle = style; cell.SetCellValue(obj.Qty); //数量 cell = row.CreateCell(row.Cells.Count); cell.CellStyle = style; cell.SetCellValue(obj.SupplierMaterialLot); //供应商批号 cell = row.CreateCell(row.Cells.Count); cell.CellStyle = style; cell.SetCellValue(obj.SupplierCode); //供应商编码 cell = row.CreateCell(row.Cells.Count); cell.CellStyle = style; cell.SetCellValue(s == null ? string.Empty : s.Name); //供应商名称 cell = row.CreateCell(row.Cells.Count); cell.CellStyle = style; cell.SetCellValue(obj.Description); //描述 cell = row.CreateCell(row.Cells.Count); cell.CellStyle = style; cell.SetCellValue(obj.Editor); //编辑人 cell = row.CreateCell(row.Cells.Count); cell.CellStyle = style; cell.SetCellValue(string.Format("{0:yyyy-MM-dd HH:mm:ss}", obj.EditTime)); //编辑时间 #endregion } MemoryStream ms = new MemoryStream(); wb.Write(ms); ms.Flush(); ms.Position = 0; return(File(ms, "application/vnd.ms-excel", "MaterialReceiptData.xls")); }
public async Task <ActionResult> Query(MaterialReceiptQueryViewModel model) { if (ModelState.IsValid) { using (MaterialReceiptServiceClient client = new MaterialReceiptServiceClient()) { await Task.Run(() => { StringBuilder where = new StringBuilder(); if (model != null) { if (!string.IsNullOrEmpty(model.ReceiptNo)) { where.AppendFormat(" {0} Key = '{1}'" , where.Length > 0 ? "AND" : string.Empty , model.ReceiptNo); } if (!string.IsNullOrEmpty(model.OrderNumber)) { where.AppendFormat(" {0} OrderNumber = '{1}'" , where.Length > 0 ? "AND" : string.Empty , model.OrderNumber); } if (model.StartReceiptDate != null) { where.AppendFormat(" {0} ReceiptDate >= '{1}'" , where.Length > 0 ? "AND" : string.Empty , model.StartReceiptDate); } if (model.EndReceiptDate != null) { where.AppendFormat(" {0} ReceiptDate <= '{1}'" , where.Length > 0 ? "AND" : string.Empty , model.EndReceiptDate); } } PagingConfig cfg = new PagingConfig() { OrderBy = "CreateTime Desc", Where = where.ToString() }; MethodReturnResult <IList <MaterialReceipt> > result = client.Get(ref cfg); if (result.Code == 0) { ViewBag.PagingConfig = cfg; ViewBag.List = result.Data; } }); } } if (Request.IsAjaxRequest()) { return(PartialView("_ListPartial")); } else { return(View("Index")); } }
public async Task <ActionResult> Save(MaterialReceiptViewModel model) { MethodReturnResult rst = new MethodReturnResult(); try { using (MaterialReceiptServiceClient client = new MaterialReceiptServiceClient()) { MaterialReceipt obj = new MaterialReceipt() { Key = model.ReceiptNo.ToUpper(), OrderNumber = model.OrderNumber.ToUpper(), ReceiptDate = model.ReceiptDate, Description = model.Description, Editor = User.Identity.Name, Creator = User.Identity.Name }; char splitChar = ','; var ItemNos = Request["ItemNo"].Split(splitChar); var LineStoreNames = Request["LineStoreName"].Split(splitChar); var MaterialCodes = Request["MaterialCode"].Split(splitChar); var MaterialLots = Request["MaterialLot"].Split(splitChar); var Qtys = Request["Qty"].Split(splitChar); var SupplierMaterialLots = Request["SupplierMaterialLot"].Split(splitChar); var SupplierCodes = Request["SupplierCode"].Split(splitChar); //var Descriptions = Request["DetailDescription"].Split(splitChar); //var attr1s = Request["Attr1"].Split(splitChar); List <MaterialReceiptDetail> lst = new List <MaterialReceiptDetail>(); for (int i = 0; i < ItemNos.Length; i++) { string materialCode = MaterialCodes[i].ToUpper(); string materialLot = MaterialLots[i].ToUpper(); string lineStoreName = LineStoreNames[i].ToUpper(); //根据物料批号获取当前线别仓中的物料 using (LineStoreMaterialServiceClient client1 = new LineStoreMaterialServiceClient()) { PagingConfig cfg = new PagingConfig() { PageNo = 0, PageSize = 1, Where = string.Format("Key.MaterialLot='{0}' AND Key.OrderNumber='{1}' AND Key.LineStoreName='{2}'" , materialLot , obj.OrderNumber , lineStoreName) }; MethodReturnResult <IList <LineStoreMaterialDetail> > rst1 = client1.GetDetail(ref cfg); if (rst1.Code > 0) { return(Json(rst1)); } if (rst1.Data != null && rst1.Data.Count > 0 && rst1.Data[0].Key.MaterialCode != materialCode) { rst.Code = 2002; rst.Message = string.Format("项目号[{0}]的物料批号({1})已经由物料({2})领料使用,请更换新的物料批号。" , i + 1 , materialLot , rst1.Data[0].Key.MaterialCode); return(Json(rst)); } } //判断物料批号在本次领料中是否重复。 int count = MaterialLots.Count(m => m == materialLot); if (count > 1) { int lastedIndex = MaterialLots.ToList().LastIndexOf(materialLot); rst.Code = 2003; rst.Message = string.Format("项目号[{0}]物料批号({1})与项目号[{2}]的物料批号重复,如是相同物料料号请在同一个项目号中领取。" , i + 1 , materialLot , lastedIndex + 1); return(Json(rst)); } lst.Add(new MaterialReceiptDetail() { Key = new MaterialReceiptDetailKey() { ReceiptNo = model.ReceiptNo.ToUpper(), ItemNo = i + 1 }, LineStoreName = lineStoreName, MaterialCode = materialCode, MaterialLot = materialLot, Qty = Convert.ToDouble(Qtys[i]), SupplierMaterialLot = SupplierMaterialLots[i].ToUpper(), SupplierCode = SupplierCodes[i].ToUpper(), //Description = Descriptions[i], //Attr1 = attr1, Editor = User.Identity.Name, Creator = User.Identity.Name }); } rst = await client.AddAsync(obj, lst); if (rst.Code == 0) { rst.Message = string.Format(LSMResources.StringResource.MaterialReceipt_Save_Success , obj.Key); } } } catch (Exception ex) { rst.Code = 1000; rst.Message = ex.Message; rst.Detail = ex.ToString(); } return(Json(rst)); }