/// <summary> /// 保存盘点修改 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnSave_Press(object sender, EventArgs e) { try { AddCIResultInputDto conInventoryInput = new AddCIResultInputDto() { IID = IID, HANDLEMAN = btnManager.Tag.ToString(), LocationId = btnLocation.Tag.ToString(), UserId = Client.Session["UserID"].ToString(), Name = txtName.Text }; ReturnInfo returnInfo = _autofacConfig.ConInventoryService.UpdateInventoryOnly(conInventoryInput); if (returnInfo.IsSuccess) { ShowResult = ShowResult.Yes; Toast("修改成功"); Close(); } else { Toast(returnInfo.ErrorInfo); } } catch (Exception ex) { Toast(ex.Message); } }
/// <summary> /// 开始盘点 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnStart_Press(object sender, EventArgs e) { try { AddCIResultInputDto inputDto = new AddCIResultInputDto { IID = lblName.BindDataValue.ToString() }; var inventory = _autofacConfig.ConInventoryService.GetConInventoryById(lblName.BindDataValue.ToString()); ReturnInfo returnInfo = _autofacConfig.ConInventoryService.AddConInventoryResult(inputDto); if (returnInfo.IsSuccess) { //((frmConInventory)Form).Bind(); frmConInventoryResult result = new frmConInventoryResult(); result.IID = lblName.BindDataValue.ToString(); result.lblWareHouse.Tag = inventory.WAREID; Form.Show(result, (MobileForm sender1, object args) => { ((frmConInventory)Form).Bind(); }); } else { throw new Exception(returnInfo.ErrorInfo); } } catch (Exception ex) { Form.Toast(ex.Message); } }
/// <summary> /// 保存盘点修改 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnSave_Press(object sender, EventArgs e) { try { if (String.IsNullOrEmpty(txtName.Text)) { throw new Exception("盘点单名称不能为空!"); } if (btnManager.Tag == null) { throw new Exception("盘点人不能为空!"); } if (btnWareHouse.Tag == null) { throw new Exception("仓库不能为空!"); } AddCIResultInputDto conInventoryInput = new AddCIResultInputDto() { IID = IID, HANDLEMAN = btnManager.Tag.ToString(), WAREID = btnWareHouse.Tag.ToString(), UserId = Client.Session["UserID"].ToString(), Name = txtName.Text }; if (btnST.Tag != null) { conInventoryInput.STID = btnST.Tag.ToString(); } if (btnSL.Tag != null) { conInventoryInput.SLID = btnSL.Tag.ToString(); } ReturnInfo returnInfo = _autofacConfig.ConInventoryService.UpdateInventoryOnly(conInventoryInput); if (returnInfo.IsSuccess) { ShowResult = ShowResult.Yes; Toast("修改成功"); Close(); } else { Toast(returnInfo.ErrorInfo); } } catch (Exception ex) { Toast(ex.Message); } }
/// <summary> /// 只更新盘点单表头 /// </summary> /// <param name="inputDto">所需数据</param> /// <returns></returns> public ReturnInfo UpdateInventoryOnly(AddCIResultInputDto inputDto) { //验证 ReturnInfo rInfo = new ReturnInfo(); StringBuilder sb = new StringBuilder(); if (sb.Length == 0) { var assInventory = _conInventoryRepository.GetConInventoryByID(inputDto.IID).FirstOrDefault(); if (assInventory != null) { assInventory.NAME = inputDto.Name; assInventory.MODIFYDATE = DateTime.Now; assInventory.HANDLEMAN = inputDto.HANDLEMAN; assInventory.WAREID = inputDto.WAREID; assInventory.STID = inputDto.STID; assInventory.SLID = inputDto.SLID; try { _unitOfWork.RegisterDirty(assInventory); bool result = _unitOfWork.Commit(); rInfo.IsSuccess = result; rInfo.ErrorInfo = sb.ToString(); return(rInfo); } catch (Exception ex) { _unitOfWork.Rollback(); sb.Append(ex.Message); rInfo.IsSuccess = false; rInfo.ErrorInfo = sb.ToString(); return(rInfo); } } else { rInfo.IsSuccess = false; sb.Append("未找到该盘点单."); rInfo.ErrorInfo = sb.ToString(); return(rInfo); } } else { rInfo.IsSuccess = false; rInfo.ErrorInfo = sb.ToString(); return(rInfo); } }
/// <summary> /// 开始盘点/结束盘点 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void plAction_Press(object sender, EventArgs e) { try { ReturnInfo rInfo = new ReturnInfo(); if (Status == InventoryStatus.未盘点) { AddCIResultInputDto inputDto = new AddCIResultInputDto { IID = IID, UserId = Client.Session["UserID"].ToString() }; var inventory = _autofacConfig.ConInventoryService.GetConInventoryById(IID); rInfo = _autofacConfig.ConInventoryService.AddConInventoryResult(inputDto); if (rInfo.IsSuccess) { Toast("盘点开始"); Bind(); } else { throw new Exception(rInfo.ErrorInfo); } } else { //盘点结束 Dictionary <string, List <decimal> > conDictionary2 = new Dictionary <string, List <decimal> >(); foreach (var key in conDictionary.Keys) { if (conDictionary[key][1] == (int)ResultStatus.待盘点) { List <decimal> list = new List <decimal>(); list.Add(0); list.Add(Convert.ToDecimal((int)ResultStatus.盘亏)); conDictionary2.Add(key, list); } else { conDictionary2.Add(key, conDictionary[key]); } } ConInventoryInputDto inputDto2 = new ConInventoryInputDto { IID = IID, WAREID = lblWareHouse.Tag.ToString(), IsEnd = true, ConDictionary = conDictionary2 }; inputDto2.IsEnd = true; rInfo = _autofacConfig.ConInventoryService.UpdateInventory(inputDto2); if (rInfo.IsSuccess) { ShowResult = ShowResult.Yes; Close(); Toast("盘点结束成功."); } else { Toast(rInfo.ErrorInfo); } } } catch (Exception ex) { Form.Toast(ex.Message); } }
/// <summary> /// 开始盘点 /// </summary> /// <param name="inputDto">开始盘点时,传给后台的数据</param> /// <returns></returns> public ReturnInfo AddConInventoryResult(AddCIResultInputDto inputDto) { ReturnInfo RInfo = new ReturnInfo(); StringBuilder sb = new StringBuilder(); if (IsExist(inputDto.IID)) { RInfo.IsSuccess = true; RInfo.ErrorInfo = sb.ToString(); return(RInfo); } else { try { //更新盘点单状态为盘点中 var inventory = _conInventoryRepository.GetConInventoryByID(inputDto.IID).FirstOrDefault(); if (inventory != null) { //添加当前的盘点单行项 List <string> conList = _conQuantRepository.GetInventoryCons(inventory.LOCATIONID).Select(a => a.CID).ToList(); inventory.STATUS = (int)InventoryStatus.盘点中; inventory.TOTAL = conList.Count; inventory.RESULTCOUNT = 0; _unitOfWork.RegisterDirty(inventory); foreach (var con in conList) { ConQuant conQuant = _conQuantRepository.GetByCID(con, inventory.LOCATIONID).FirstOrDefault(); ConInventoryResult result = new ConInventoryResult { IID = inputDto.IID, CID = con, RESULT = 0, TOTAL = conQuant.QUANTITY, CREATEDATE = DateTime.Now, CREATEUSER = inputDto.UserId, MODIFYDATE = DateTime.Now, MODIFYUSER = inputDto.UserId }; _unitOfWork.RegisterNew(result); //更新盘点的物品状态为锁定 var conq = _conQuantRepository.GetQuants(inputDto.LocationId, con).FirstOrDefault(); if (conq != null) { conq.ISLOCKED = 1; _unitOfWork.RegisterDirty(conq); } } } _unitOfWork.Commit(); RInfo.IsSuccess = true; RInfo.ErrorInfo = sb.ToString(); return(RInfo); } catch (Exception ex) { _unitOfWork.Rollback(); sb.Append(ex.Message); RInfo.IsSuccess = false; RInfo.ErrorInfo = sb.ToString(); return(RInfo); } } }