/// <summary> /// 页面初始化 /// </summary> private void InitInfo() { if (stockId == 0) { ClearInfo(); } else//加载单据信息 { //获取指定入库单信息 StockStoreInfoModel stockInfo = RequestStar.GetStockInfo(stockId); if (stockInfo != null) { //选择仓库 仓库编号 store = new StoreInfoModel() { StoreId = stockInfo.StoreId, StoreName = RequestStar.GetStoreInfo(stockInfo.StoreId).StoreName }; txtInStore.Text = store.StoreName; txtDealPerson.Text = stockInfo.DealPerson; txtRemark.Text = stockInfo.Remark; lblStockNo.Text = stockInfo.StockNo; txtCreator.Text = stockInfo.Creator; txtCreateTime.Text = stockInfo.CreateTime.ToShortDateString(); //单据状态 switch (stockInfo.IsChecked) { case 0: lblCheckState.Text = "待审核"; break; case 1: lblCheckState.Text = "已审核"; break; case 2: lblCheckState.Text = "作废"; //未审核作废 break; case 3: lblCheckState.Text = "已红冲"; //已审核作废称红冲 break; } //在不同审核状态下工具项的可用 SetBtnsEnabled(stockInfo.IsChecked); //获取该单据相关的商品明细列表 List <ViewStStockGoodsInfoModel> stockGoods = RequestStar.GetStockGoodsList(stockId); if (stockGoods.Count > 0) { dgvGoods.AutoGenerateColumns = false; dgvGoods.DataSource = stockGoods; SetTotalInfo(stockGoods); } else { dgvGoods.DataSource = null; dgvGoods.AllowUserToAddRows = false; } } } isOpened = RequestStar.GetOpenState(1); if (isOpened) { tsbtnAdd.Enabled = false; tsbtnSave.Enabled = false; tsbtnCheck.Enabled = false; tsddbtnAct.Enabled = false; btnAddGoods.Enabled = false; btnDelete.Enabled = false; storeList.Visible = false; lblOpenDesp.Visible = true; } else { lblOpenDesp.Visible = false; } }
/// <summary> /// 修改入库单 /// </summary> /// <param name="stockInfo"></param> /// <param name="stockGoodsList"></param> /// <returns></returns> public bool UpdateStockInfo(StockStoreInfoModel stockInfo, List <ViewStStockGoodsInfoModel> stockGoodsList) { List <StStockGoodsInfoModel> listGoods = ViewToStStockGoodsInfoModelList(stockGoodsList); return(stockStoreDAL.UpdateStockInfo(stockInfo, listGoods)); }
/// <summary> /// 单据保存 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void tsbtnSave_Click(object sender, EventArgs e) { Action act = () => { //信息接收 int storeId = 0; if (store != null) { storeId = store.StoreId; } string dealPerson = txtDealPerson.Text.Trim(); string remark = txtRemark.Text.Trim(); string creator = txtCreator.Text.Trim(); DateTime createTime = DateTime.Today; if (storeId == 0) { MsgBoxHelper.MsgErrorShow("请选择入货仓库!"); txtInStore.Focus(); return; } if (dgvGoods.DataSource == null) { MsgBoxHelper.MsgErrorShow("请选择商品!"); return; } else { List <ViewStStockGoodsInfoModel> list = dgvGoods.DataSource as List <ViewStStockGoodsInfoModel>; List <ViewStStockGoodsInfoModel> list2 = list; foreach (var vpi in list) { if (string.IsNullOrEmpty(vpi.GoodsName)) { DialogResult dr = MsgBoxHelper.MsgBoxConfirm("入库商品", $"商品不能为空,是否删除这行?"); if (dr == DialogResult.Yes) { dgvGoods.DataSource = null; list2.Remove(vpi); dgvGoods.DataSource = list2; } return; } else if (vpi.StPrice == 0) { MsgBoxHelper.MsgErrorShow($"商品:{vpi.GoodsName}的成本单价不能为0!"); return; } else if (vpi.StCount == 0) { MsgBoxHelper.MsgErrorShow($"商品:{vpi.GoodsName}的入库数量不能为0!"); return; } } } //信息封装:单据信息 明细信息 StockStoreInfoModel stockInfo = new StockStoreInfoModel() { StoreId = storeId, DealPerson = dealPerson, Remark = remark, Creator = creator, CreateTime = createTime }; //保存期初商品列表 List <ViewStStockGoodsInfoModel> listGoods = dgvGoods.DataSource as List <ViewStStockGoodsInfoModel>; foreach (var goods in listGoods) { goods.Creator = uName; } //提交 if (stockId == 0) //新单保存 { //reStr stockId,StockNo string reStr = RequestStar.AddStockInfo(stockInfo, listGoods); if (!string.IsNullOrEmpty(reStr)) { MsgBoxHelper.MsgBoxShow("期初入库单保存", "期初入库单新增保存成功!"); string[] reStrs = reStr.Split(','); stockId = reStrs[0].GetInt(); //生成的入库单编号 lblStockNo.Text = reStrs[1]; //生成的入库单号 actType = 2; tsddbtnAct.Enabled = true; SetBtnsEnabled(0); this.ReloadListHandler(); } else { MsgBoxHelper.MsgErrorShow("期初入库单保存失败!"); return; } } else//修改保存 新增后修改 单据列表页进来 { stockInfo.StockId = stockId; bool bl = RequestStar.UpdateStockInfo(stockInfo, listGoods); if (bl) { MsgBoxHelper.MsgBoxShow("期初入库单保存", "期初入库单修改保存成功!"); this.ReloadListHandler(); } } }; act.TryCatch("期初入库单提交出现异常!"); }
/// <summary> /// 添加入库单 /// </summary> /// <param name="stockInfo"></param> /// <param name="stockGoodsList"></param> /// <returns></returns> public string AddStockInfo(StockStoreInfoModel stockInfo, List <ViewStStockGoodsInfoModel> stockGoodsList) { List <StStockGoodsInfoModel> listGoods = ViewToStStockGoodsInfoModelList(stockGoodsList); return(stockStoreDAL.AddStockInfo(stockInfo, listGoods)); }