/// <summary> /// 更新采购单 /// </summary> /// <param name="inputDto"></param> /// <returns></returns> public ReturnInfo UpdateSalesOrder(ConSalesOrderInputDto inputDto) { ReturnInfo RInfo = new ReturnInfo(); StringBuilder sb = new StringBuilder(); ConSalesOrder Order = _ConSalesOrderReposity.GetById(inputDto.SOID).FirstOrDefault(); if (Order == null) { sb.Append("该采购单不存在,请检查!"); RInfo.IsSuccess = false; RInfo.ErrorInfo = sb.ToString(); return(RInfo); } else //采购单存在 { Order.REALID = inputDto.REALID; Order.NAME = inputDto.NAME; Order.CUSID = inputDto.CUSID; Order.SALESPERSON = inputDto.SALESPERSON; Order.MODIFYDATE = inputDto.MODIFYDATE; Order.MODIFYUSER = inputDto.MODIFYUSER; _unitOfWork.RegisterDirty(Order); //如果原来存在行项,则先删除 List <ConSalesOrderRow> Rows = _ConSalesOrderRowReposity.GetBySOID(inputDto.SOID).ToList(); if (Rows.Count > 0) //如果存在行项 { foreach (ConSalesOrderRow Row in Rows) { _unitOfWork.RegisterDeleted(Row); } } ///添加新的选择行项 foreach (ConSalesOrderRowInputDto Row in inputDto.RowData) { ConSalesOrderRow salesOrderRow = new ConSalesOrderRow(); salesOrderRow = Mapper.Map <ConSalesOrderRowInputDto, ConSalesOrderRow>(Row); salesOrderRow.SOID = inputDto.SOID; salesOrderRow.CREATEUSER = inputDto.CREATEUSER; salesOrderRow.CREATEDATE = DateTime.Now; salesOrderRow.MODIFYUSER = inputDto.MODIFYUSER; salesOrderRow.MODIFYDATE = DateTime.Now; salesOrderRow.STATUS = 0; _unitOfWork.RegisterNew(salesOrderRow); } try { _unitOfWork.Commit(); RInfo.IsSuccess = true; return(RInfo); } catch (Exception ex) { sb.Append(ex.Message); RInfo.IsSuccess = false; RInfo.ErrorInfo = sb.ToString(); return(RInfo); } } }
/// <summary> /// 创建销售单 /// </summary> /// <param name="inputDto"></param> /// <returns></returns> public ReturnInfo AddSalesOrder(ConSalesOrderInputDto inputDto) { ReturnInfo RInfo = new ReturnInfo(); if (string.IsNullOrEmpty(inputDto.NAME)) { throw new Exception("销售单名称不能为空!"); } if (string.IsNullOrEmpty(inputDto.SALESPERSON)) { throw new Exception("请选择销售人!"); } String MaxID = _ConSalesOrderReposity.GetMaxID(); //获取最大采购单ID String NowID = Helper.GenerateID("SO", MaxID); //产生销售单编号 inputDto.SOID = NowID; try { ConSalesOrder salesOrder = new ConSalesOrder(); salesOrder = Mapper.Map <ConSalesOrderInputDto, ConSalesOrder>(inputDto); salesOrder.STATUS = 0; _unitOfWork.RegisterNew(salesOrder); foreach (var Row in inputDto.RowData) { ConSalesOrderRow salesOrderRow = new ConSalesOrderRow(); salesOrderRow = Mapper.Map <ConSalesOrderRowInputDto, ConSalesOrderRow>(Row); salesOrderRow.SOID = NowID; salesOrderRow.CREATEUSER = inputDto.CREATEUSER; salesOrderRow.CREATEDATE = DateTime.Now; salesOrderRow.MODIFYUSER = inputDto.MODIFYUSER; salesOrderRow.MODIFYDATE = DateTime.Now; salesOrderRow.STATUS = 0; _unitOfWork.RegisterNew(salesOrderRow); } bool result = _unitOfWork.Commit(); RInfo.IsSuccess = result; RInfo.ErrorInfo = inputDto.SOID; return(RInfo); } catch (Exception ex) { _unitOfWork.Rollback(); RInfo.IsSuccess = false; RInfo.ErrorInfo = ex.Message; return(RInfo); } }
/// <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 (btnDealMan.Tag == null) { throw new Exception("请选择销售人!"); } if (ListCons.Rows.Count == 0) { throw new Exception("请选择销售行项"); } ConSalesOrderInputDto Data = new ConSalesOrderInputDto(); Data.REALID = txtRealID.Text; Data.NAME = txtName.Text; Data.CUSID = Convert.ToInt32(btnCustomer.Tag); Data.SALESPERSON = btnDealMan.Tag.ToString(); Data.CREATEUSER = Client.Session["UserID"].ToString(); Data.CREATEDATE = DateTime.Now; Data.MODIFYUSER = Client.Session["UserID"].ToString(); Data.MODIFYDATE = DateTime.Now; List <ConSalesOrderRowInputDto> RowData = new List <ConSalesOrderRowInputDto>(); //获取行项数据 foreach (ListViewRow Row in ListCons.Rows) { frmSalesCreateLayout Layout = Row.Control as frmSalesCreateLayout; ConPurAndSaleCreateInputDto conPurAndSaleCreateInputDto = Layout.getData(); ConSalesOrderRowInputDto row = new ConSalesOrderRowInputDto(); row.CID = conPurAndSaleCreateInputDto.CID; row.IMAGE = conPurAndSaleCreateInputDto.IMAGE; row.QUANTSALED = conPurAndSaleCreateInputDto.QUANTPURCHASED; row.REALPRICE = conPurAndSaleCreateInputDto.REALPRICE; RowData.Add(row); } Data.RowData = RowData; ReturnInfo RInfo = new ReturnInfo(); if (String.IsNullOrEmpty(SOID)) //创建耗材采购单 { RInfo = autofacConfig.ConSalesOrderService.AddSalesOrder(Data); if (RInfo.IsSuccess) //创建成功 { this.Close(); //关闭当前界面,返回到列表界面 ShowResult = ShowResult.Yes; Toast("销售单" + RInfo.ErrorInfo + "创建成功!"); } else //创建失败 { throw new Exception(RInfo.ErrorInfo); } } else //更新耗材采购单 { Data.SOID = SOID; RInfo = autofacConfig.ConSalesOrderService.UpdateSalesOrder(Data); if (RInfo.IsSuccess) //创建成功 { this.Close(); //关闭当前界面,返回到列表界面 ShowResult = ShowResult.Yes; Toast("销售单" + SOID + "编辑成功!"); } else //创建失败 { throw new Exception(RInfo.ErrorInfo); } } } catch (Exception ex) { Toast(ex.Message); } }