protected override MaterialReceiptViewModel NewViewModel() { MaterialReceiptViewModel materialReceiptViewModel = base.NewViewModel(); materialReceiptViewModel.ModuleDetailID = this.ModuleDetailID; return(materialReceiptViewModel); }
public ActionResult Getpage(string pagenum, string onepagecount, string express_code) { MaterialReceiptResult com = new MaterialReceiptResult(); InternationalQuiryResult coms = new InternationalQuiryResult(); if (!Regex.IsMatch(pagenum, @"(?i)^[0-9a-z\u4e00-\u9fa5]+$") && !string.IsNullOrEmpty(pagenum)) { com.Msg = "页数不正确"; com.success = false; return(Json(com)); } if (!Regex.IsMatch(onepagecount, @"(?i)^[0-9a-z\u4e00-\u9fa5]+$") && !string.IsNullOrEmpty(onepagecount)) { com.Msg = "每页数量不正确"; com.success = false; return(Json(com)); } int totil = 0; int totilpage = 0; string exmsg = string.Empty; List <MaterialReceiptModel> mylist = _service.GetMaterialReceiptList(Convert.ToInt32(pagenum), Convert.ToInt32(onepagecount), out totil, out totilpage, out exmsg, express_code); coms = _internationalQuiry.GetExpressList(); if (!string.IsNullOrEmpty(exmsg)) { com.Msg = exmsg; com.success = false; return(Json(com)); } else { MaterialReceiptViewModel mylistview = new MaterialReceiptViewModel(); mylistview.supplist = mylist; mylistview.totil = totil.ToString(); mylistview.totilcount = totilpage.ToString(); if (coms.success) { mylistview.express_info = coms.Msg; } else { mylistview.express_info = null; } com.DataResult = mylistview; com.success = true; return(Json(com)); } }
public ActionResult Detail(string ReceiptNo) { MaterialReceiptViewModel model = null; using (LineStoreServiceClient client = new LineStoreServiceClient()) { PagingConfig cfg = new PagingConfig() { OrderBy = "Key" }; MethodReturnResult <IList <LineStore> > result = client.Get(ref cfg); List <SelectListItem> LineStoreList = new List <SelectListItem>(); //LineStoreList.Add(new SelectListItem() { Text = "--Select--", Value = "select" }); foreach (LineStore item in result.Data) { LineStoreList.Add(new SelectListItem() { Text = item.Key, Value = item.Key }); } ViewBag.LineStore = LineStoreList; } using (ERPClient client = new ERPClient()) { //根据材料出库单单据号查询ERP中是否存在该出库单 MethodReturnResult <DataSet> result = client.GetERPMaterialReceiptStore(ReceiptNo); DataTable dtERP = new DataTable(); DataTable dtMES = new DataTable(); dtERP = result.Data.Tables["dtERP"]; dtMES = result.Data.Tables["dtMES"]; if (result.Data.Tables[0].Rows.Count > 0) { model = new MaterialReceiptViewModel() { ReceiptNo = dtERP.Rows[0]["VBILLCODE"].ToString(), OrderNumber = dtERP.Rows[0]["VPRODUCTBATCH"].ToString(), ReceiptDate = DateTime.Parse(dtERP.Rows[0]["DBILLDATE"].ToString()), LineStoreName = dtMES.Rows[0]["STORE_NAME"].ToString() }; } ViewBag.MaterialReceipt = model; return(View(model)); } }
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)); }