protected void bt_AddProduct_Click(object sender, EventArgs e) { SVM_InventoryBLL bll = new SVM_InventoryBLL((int)ViewState["InventoryID"]); int product = 0; if (int.TryParse(select_Product.SelectValue, out product) && product > 0) { PDT_Product pdt = new PDT_ProductBLL(product).Model; if (pdt == null) return; int quantity = int.Parse(tbx_Q1.Text) * pdt.ConvertFactor + int.Parse(tbx_Q2.Text); if (quantity == 0) return; SVM_Inventory_Detail _detail = bll.Items.FirstOrDefault(m => m.Product == product); if (_detail == null) { _detail = new SVM_Inventory_Detail(); decimal factoryprice = 0, price = 0; PDT_ProductPriceBLL.GetPriceByClientAndType((int)ViewState["ClientID"], product, 2, out factoryprice, out price); _detail.FactoryPrice = factoryprice; _detail.Product = pdt.ID; _detail.Quantity = quantity; _detail.InventoryID = (int)ViewState["InventoryID"]; bll.AddDetail(_detail); } else { _detail.Quantity = quantity; bll.UpdateDetail(_detail); } BindGrid(); } }
protected void bt_Submit_Click(object sender, EventArgs e) { Save(); if ((int)ViewState["InventoryID"] > 0) { SVM_InventoryBLL bll = new SVM_InventoryBLL((int)ViewState["InventoryID"]); bll.Model["SubmitFlag"] = "1"; bll.Update(); MessageBox.ShowAndRedirect(this, "数据保存并提交成功!", "InventoryList.aspx?ClientType=" + ViewState["ClientType"].ToString()); } }
protected void bt_BathApprove_Click(object sender, EventArgs e) { string ids = ""; foreach (GridViewRow gr in gv_List.Rows) { if (((CheckBox)gr.FindControl("chk_ID")).Checked == true) { ids += gv_List.DataKeys[gr.RowIndex]["SVM_Inventory_ID"].ToString() + ","; } } SVM_InventoryBLL.BatApprove(ids, (int)Session["UserID"]); BindGrid(); }
protected void btn_Inventory_Click(object sender, EventArgs e) { #region 创建空的销量列表 MCSSelectControl select_Client = (MCSSelectControl)UC_DetailView1.FindControl("SVM_Inventory_Client"); DropDownList ddl_Month = (DropDownList)UC_DetailView1.FindControl("SVM_Inventory_AccountMonth"); if (select_Client.SelectValue != "") { TextBox tbx_InventoryDate = (TextBox)UC_DetailView1.FindControl("SVM_Inventory_InventoryDate"); if (tbx_InventoryDate != null) { int id = SVM_InventoryBLL.InitProductList(int.Parse(ddl_Month.SelectedValue), int.Parse(select_Client.SelectValue), DateTime.Parse(tbx_InventoryDate.Text), (int)Session["UserID"], (bool)ViewState["IsCXP"]); //空的 Response.Redirect("InventoryBatchInput.aspx?InventoryID=" + id.ToString() + "&Flag=1&IsCXP=" + ((bool)ViewState["IsCXP"] ? "1" : "0")); } } #endregion }
protected void bt_Submit_Click(object sender, EventArgs e) { int organizecity = int.Parse(tr_OrganizeCity.SelectValue); int month = int.Parse(ddl_Month.SelectedValue); int level = int.Parse(ddl_Level.SelectedValue); int state = int.Parse(ddl_State.SelectedValue); int iscxp = int.Parse(ddl_IsCXP.SelectedValue); int result = SVM_InventoryBLL.SubmitByStaff(organizecity, (int)Session["UserID"], month, (int)ViewState["ClientType"], iscxp); if (result == -1) { MessageBox.Show(this, "您还有" + (-result).ToString() + "个客户的库存没有填写,无法提交! 填报进度请参照桌面的【填报进度表】"); } else { MessageBox.Show(this, "共成功提交" + result.ToString() + "条库存!"); BindGrid(); } }
protected void bt_Approve_Click(object sender, EventArgs e) { int organizecity = int.Parse(tr_OrganizeCity.SelectValue); int month = int.Parse(ddl_Month.SelectedValue); int level = int.Parse(ddl_Level.SelectedValue); int state = int.Parse(ddl_State.SelectedValue); int iscxp = int.Parse(ddl_IsCXP.SelectedValue); int result = SVM_InventoryBLL.ApproveByStaff(organizecity, (int)Session["UserID"], month, (int)ViewState["ClientType"], iscxp); if (result == -1) { MessageBox.Show(this, "请确认客户的库存都已提交!"); } else { MessageBox.Show(this, "审核成功"); } BindGrid(); }
protected void Save() { SVM_InventoryBLL bll = new SVM_InventoryBLL((int)ViewState["InventoryID"]); DropDownList ddl_Month = (DropDownList)UC_DetailView1.FindControl("SVM_Inventory_AccountMonth"); bll.Model.InventoryDate = DateTime.Now.Date; bll.Model.AccountMonth = int.Parse(ddl_Month.SelectedValue); bll.Model["SubmitFlag"] = "2"; bll.Update(); foreach (GridViewRow gr in gv_List.Rows) { int id = (int)gv_List.DataKeys[gr.RowIndex][0]; SVM_Inventory_Detail item = bll.GetDetailModel(id); item.Quantity = int.Parse(((TextBox)gr.FindControl("tbx_Quantity1")).Text) * new PDT_ProductBLL(item.Product).Model.ConvertFactor + int.Parse(((TextBox)gr.FindControl("tbx_Quantity2")).Text); item.Remark = ((TextBox)gr.FindControl("tbx_Remark")).Text; bll.UpdateDetail(item); } }
private void BindData() { SVM_InventoryBLL bll = new SVM_InventoryBLL((int)ViewState["InventoryID"]); ViewState["ClientID"] = bll.Model.Client; ViewState["IsCXP"] = bll.Model["IsCXP"] == "1"; UC_DetailView1.BindData(bll.Model); UC_DetailView1.SetControlsEnable(false); BindGrid(); if (bll.Model.ApproveFlag == 1) { gv_List.SetControlsEnable(false); bt_Approve.Visible = false; bt_Save.Visible = false; bt_Submit.Visible = false; bt_Del.Visible = false; tb_AddProduct.Visible = false; } else { bt_Re_Approve.Visible = false; bt_Del.Visible = (int)Session["UserID"] == bll.Model.InsertStaff; if (bll.Model["SubmitFlag"] == "1") { bt_Submit.Visible = false; //已提交 } else { bt_Approve.Visible = false; //未提交 } } if (!(bool)ViewState["IsCXP"]) { tb_AddProduct.Visible = false; } }
protected void bt_AddProduct_Click(object sender, EventArgs e) { SVM_InventoryBLL bll = new SVM_InventoryBLL((int)ViewState["InventoryID"]); int product = 0; if (int.TryParse(select_Product.SelectValue, out product) && product > 0) { PDT_Product pdt = new PDT_ProductBLL(product).Model; if (pdt == null) { return; } int quantity = int.Parse(tbx_Q1.Text) * pdt.ConvertFactor + int.Parse(tbx_Q2.Text); if (quantity == 0) { return; } SVM_Inventory_Detail _detail = bll.Items.FirstOrDefault(m => m.Product == product); if (_detail == null) { _detail = new SVM_Inventory_Detail(); decimal factoryprice = 0, price = 0; PDT_ProductPriceBLL.GetPriceByClientAndType((int)ViewState["ClientID"], product, 2, out factoryprice, out price); _detail.FactoryPrice = factoryprice; _detail.Product = pdt.ID; _detail.Quantity = quantity; _detail.InventoryID = (int)ViewState["InventoryID"]; bll.AddDetail(_detail); } else { _detail.Quantity = quantity; bll.UpdateDetail(_detail); } BindGrid(); } }
private void BindGrid() { int month = int.Parse(ddl_Month.SelectedValue); int organizecity = int.Parse(tr_OrganizeCity.SelectValue); int level = int.Parse(ddl_Level.SelectedValue); int state = int.Parse(ddl_State.SelectedValue); int iscxp = int.Parse(ddl_IsCXP.SelectedValue); if (new Addr_OrganizeCityBLL(organizecity).Model.Level >= 2 && month == AC_AccountMonthBLL.GetMonthByDate(DateTime.Today.AddDays(-10))) { if ((int)ViewState["ClientType"] == 3) { DataTable dtFillDataProgress = Org_StaffBLL.GetFillDataProgress((int)Session["UserID"], true); DataRow[] rows; if (iscxp == 1) { rows = dtFillDataProgress.Select("ItemCode='013'"); } else { rows = dtFillDataProgress.Select("ItemCode='007'"); } if (rows.Length > 0) { int ItemTargetCount = (int)rows[0]["ItemTargetCount"]; int ItemCompleteCount = (int)rows[0]["ItemCompleteCount"]; if (ItemTargetCount > ItemCompleteCount) { MessageBox.Show(this, "对不起,还有" + (ItemTargetCount - ItemCompleteCount).ToString() + "家门店库存尚未录入,无法提交或审核!具体请查看桌面填报进度表."); bt_Approve.Enabled = false; bt_Submit.Enabled = false; } } } } if (MCSTabControl1.SelectedIndex == 0) { DataTable dt_summary = SVM_InventoryBLL.GetSummaryTotal(organizecity, month, (int)ViewState["ClientType"], level, state, iscxp, (int)Session["UserID"]); dt_summary = MatrixTable.Matrix(dt_summary, new string[] { "管理片区名称" }, new string[] { "品牌", "段位" }, "金额", true, true); gv_Summary.DataSource = dt_summary; gv_Summary.DataBind(); MatrixTable.GridViewMatric(gv_Summary); if (dt_summary.Columns.Count >= 24) { gv_Summary.Width = new Unit(dt_summary.Columns.Count * 60); } else { gv_Summary.Width = new Unit(100, UnitType.Percentage); } } else { string condition = " 1=1 "; #region 组织查询条件 //管理片区及所有下属管理片区 if (tr_OrganizeCity.SelectValue != "1") { Addr_OrganizeCityBLL orgcity = new Addr_OrganizeCityBLL(int.Parse(tr_OrganizeCity.SelectValue)); string orgcitys = orgcity.GetAllChildNodeIDs(); if (orgcitys != "") { orgcitys += ","; } orgcitys += tr_OrganizeCity.SelectValue; if (CM_ClientBLL.GetModelList("OrganizeCity IN (" + orgcitys + ") AND ActiveFlag=1 AND CM_Client.ClientType=" + ViewState["ClientType"].ToString()).Count != 0) { condition += " AND SVM_Inventory.OrganizeCity IN (" + orgcitys + ")"; } else { condition += " AND CM_Client.ClientManager=" + Session["UserID"].ToString(); } } condition += " AND MCS_SYS.dbo.UF_Spilt2('MCS_SVM.dbo.SVM_Inventory',SVM_Inventory.ExtPropertys,'IsCXP')=" + ddl_IsCXP.SelectedValue; //会计月条件 condition += " AND SVM_Inventory.AccountMonth =" + ddl_Month.SelectedValue; condition += " AND CM_Client.ClientType=" + ViewState["ClientType"].ToString(); switch (ddl_State.SelectedValue) { case "1": condition += " AND SVM_Inventory.ApproveFlag=2 AND MCS_SYS.dbo.UF_Spilt2('MCS_SVM.dbo.SVM_Inventory',SVM_Inventory.ExtPropertys,'SubmitFlag')='2'"; break; case "2": condition += " AND SVM_Inventory.ApproveFlag=2 AND MCS_SYS.dbo.UF_Spilt2('MCS_SVM.dbo.SVM_Inventory',SVM_Inventory.ExtPropertys,'SubmitFlag')='1'"; break; case "3": condition += " AND SVM_Inventory.ApproveFlag=1"; break; } #endregion gv_List.ConditionString = condition; gv_List.BindGrid(); } }
private void BindGrid() { if (tr_detail.Visible) { string condition = " 1=1 "; #region 组织查询条件 //管理片区及所有下属管理片区 if (select_Client.SelectValue == "" && tr_OrganizeCity.SelectValue != "1") { Addr_OrganizeCityBLL orgcity = new Addr_OrganizeCityBLL(int.Parse(tr_OrganizeCity.SelectValue)); string orgcitys = orgcity.GetAllChildNodeIDs(); if (orgcitys != "") { orgcitys += ","; } orgcitys += tr_OrganizeCity.SelectValue; condition += " AND SVM_Inventory.OrganizeCity IN (" + orgcitys + ")"; } if (ddl_IsCXP.SelectedValue != "0") { condition += " AND MCS_SYS.dbo.UF_Spilt2('MCS_SVM.dbo.SVM_Inventory',SVM_Inventory.ExtPropertys,'IsCXP')=" + ddl_IsCXP.SelectedValue; } //会计月条件 condition += " AND SVM_Inventory.AccountMonth BETWEEN " + ddl_BeginMonth.SelectedValue + " AND " + ddl_EndMonth.SelectedValue; if (select_Client.SelectValue != "") { condition += " AND SVM_Inventory.Client = " + select_Client.SelectValue; } else { condition += " AND CM_Client.ClientType=" + ViewState["ClientType"].ToString(); if ((int)ViewState["ClientType"] == 2 && ViewState["DIClassify"] != null) { condition += " AND MCS_SYS.dbo.UF_Spilt(CM_Client.ExtPropertys,'|',7)='" + ViewState["DIClassify"].ToString() + "'"; } } if (rbl_ApproveFlag.SelectedValue != "0") { condition += " AND SVM_Inventory.ApproveFlag=" + rbl_ApproveFlag.SelectedValue; } #endregion gv_List.ConditionString = condition; gv_List.BindGrid(); } else { int organizecity = int.Parse(tr_OrganizeCity.SelectValue); int client = select_Client.SelectValue == "" ? 0 : int.Parse(select_Client.SelectValue); if (organizecity == 0) { organizecity = 1; } DataTable dt = SVM_InventoryBLL.GetSummary(organizecity, client, int.Parse(ddl_BeginMonth.SelectedValue), int.Parse(ddl_EndMonth.SelectedValue), int.Parse(ViewState["ClientType"].ToString())); int _quantity = 0; decimal _totalvalue = 0; for (int i = 0; i < dt.Rows.Count; i++) { _quantity += (int)dt.Rows[i]["SumQuantity"]; _totalvalue += (decimal)dt.Rows[i]["SumMoney"]; } DataRow dr = dt.NewRow(); dr["ProductCode"] = "合计"; dr["SumQuantity"] = _quantity; dr["SumMoney"] = _totalvalue; dt.Rows.Add(dr); gv_Summary.DataSource = dt; gv_Summary.DataBind(); } }
protected void bt_ConfirmSignIn_Click(object sender, EventArgs e) { if ((int)ViewState["ID"] != 0) { ORD_OrderDeliveryBLL bll = new ORD_OrderDeliveryBLL((int)ViewState["ID"]); pn_OrderDelivery.GetData(bll.Model); if (bll.Model["SignInTime"] == "1900-01-01") { MessageBox.Show(this, "请选择实际到货日期!"); return; } if (DateTime.Parse(bll.Model["SignInTime"]) > DateTime.Now) { MessageBox.Show(this, "实际到货日期不能大于今天!"); return; } if (new CM_ClientBLL(bll.Model.Client).Model.ClientType == 2 && SVM_InventoryBLL.GetModelList("Client=" + bll.Model.Client.ToString() + " AND AccountMonth=" + bll.Model.AccountMonth.ToString() + " AND ApproveFlag=2").Count > 0) { MessageBox.ShowAndRedirect(this, "该经销商本月还有未审核库存,请先审核库存再作此操作。", "InventoryList.aspx?ClientID=" + bll.Model.Client.ToString()); return; } ListTable <ORD_OrderDeliveryDetail> _details = ViewState["Details"] as ListTable <ORD_OrderDeliveryDetail>; #region 判断签收数量是否大于发放数量 for (int i = 0; i < gv_OrderList.Rows.Count; i++) { int id = (int)gv_OrderList.DataKeys[i]["ID"]; ORD_OrderDeliveryDetail m = new ORD_OrderDeliveryBLL().GetDetailModel(id); PDT_Product product = new PDT_ProductBLL(m.Product).Model; TextBox tbx_SignInQuantity_T = (TextBox)gv_OrderList.Rows[i].FindControl("tbx_SignInQuantity_T"); TextBox tbx_SignInQuantity = (TextBox)gv_OrderList.Rows[i].FindControl("tbx_SignInQuantity"); TextBox tbx_BadQuantity_T = (TextBox)gv_OrderList.Rows[i].FindControl("tbx_BadQuantity_T"); TextBox tbx_BadQuantity = (TextBox)gv_OrderList.Rows[i].FindControl("tbx_BadQuantity"); TextBox tbx_LostQuantity_T = (TextBox)gv_OrderList.Rows[i].FindControl("tbx_LostQuantity_T"); TextBox tbx_LostQuantity = (TextBox)gv_OrderList.Rows[i].FindControl("tbx_LostQuantity"); int SignInQuantity = (int.Parse(tbx_SignInQuantity_T.Text) * product.ConvertFactor + int.Parse(tbx_SignInQuantity.Text)); int BadQuantity = (int.Parse(tbx_BadQuantity_T.Text) * product.ConvertFactor + int.Parse(tbx_BadQuantity.Text)); int LostQuantity = (int.Parse(tbx_LostQuantity_T.Text) * product.ConvertFactor + int.Parse(tbx_LostQuantity.Text)); if (SignInQuantity < 0 || BadQuantity < 0 || LostQuantity < 0) { MessageBox.Show(this, "对不起,产品:" + product.FullName + "签收、丢失、破损的数量不能小于0"); return; } if (SignInQuantity + BadQuantity + LostQuantity != m.DeliveryQuantity) { MessageBox.Show(this, "对不起,产品:" + product.FullName + "签收、丢失、破损的数量必需等于实发数量" + GetQuantityString(m.Product, m.DeliveryQuantity)); return; } m.SignInQuantity = SignInQuantity; m.BadQuantity = BadQuantity; m.LostQuantity = LostQuantity; _details.Update(m); } #endregion bll.Model["SignInStaff"] = Session["UserID"].ToString(); bll.Model.State = 3; //已签收 bll.Update(); bll.Items = _details.GetListItem(ItemState.Modified); bll.UpdateDetail(); MessageBox.ShowAndRedirect(this, "发货单签收成功!", "OrderDeliveryList.aspx"); } }
/// <summary> /// 绑定客户信息 /// </summary> /// <param name="type">销量类型 1:经销商进货 3:经销商出货(即门店进货) 3:门店出货</param> /// <param name="sellinclient">进货客户</param> /// <param name="supplier">出货客户</param> private void BindClientInfo(int sellinclient, int supplier) { if (sellinclient > 0) { CM_Client _r = new CM_ClientBLL(sellinclient).Model; switch (_r.ClientType) { case 1: //公司仓库 hy_SellInClient.NavigateUrl = "~/SubModule/CM/Store/StoreDetail.aspx?ClientID=" + sellinclient.ToString(); break; case 2: //经销商 hy_SellInClient.NavigateUrl = "~/SubModule/CM/DI/DistributorDetail.aspx?ClientID=" + sellinclient.ToString(); break; case 3: //终端门店 hy_SellInClient.NavigateUrl = "~/SubModule/CM/RT/RetailerDetail.aspx?ClientID=" + sellinclient.ToString(); break; } hy_SellInClient.Text = "(" + _r.Code + ")" + _r.FullName; if (supplier == 0) { supplier = _r.Supplier; #region 根据门店或分销商取供货商 //成品,只取第一供货商 //赠品,先取第二供货商,如果取不到,则取第一供货商 if ((bool)ViewState["IsCXP"]) { int supplier2 = 0; int.TryParse(_r["Supplier2"], out supplier2); if (supplier2 != 0) { supplier = supplier2; } } CM_Client _s = new CM_ClientBLL(supplier).Model; ddl_SellOutClient.Items.Add(new ListItem("(" + _s.Code + ")" + _s.FullName, _s.ID.ToString())); #endregion hy_SellOutClient.Visible = false; //经销商登录时,供货商直接选择该经销商 Org_StaffBLL staff = new Org_StaffBLL((int)Session["UserID"]); if (!string.IsNullOrEmpty(staff.Model["RelateClient"])) { if (ddl_SellOutClient.Items.FindByValue(staff.Model["RelateClient"]) == null) { MessageBox.ShowAndRedirect(this, "对不起,您无法向该客户配送" + ((bool)ViewState["IsCXP"] ? "赠品" : "成品") + "!", "SalesVolumeList.aspx?Type=" + ViewState["Type"].ToString() + "&SellInClientID=" + _r.ID.ToString()); } ddl_SellOutClient.SelectedValue = staff.Model["RelateClient"]; ddl_SellOutClient.Enabled = false; } } if ((int)ViewState["VolumeID"] == 0 && new CM_ClientBLL(int.Parse(ddl_SellOutClient.SelectedValue)).Model.ClientType == 2 && SVM_InventoryBLL.GetModelList("Client=" + ddl_SellOutClient.SelectedValue + " AND AccountMonth=" + ddl_AccountMonth.SelectedValue + " AND ApproveFlag=2").Count > 0) { MessageBox.ShowAndRedirect(this, "该经销商本月还有未审核库存,请先审核库存再作此操作。", "InventoryList.aspx?ClientID=" + ddl_SellOutClient.SelectedValue); return; } } else { hy_SellInClient.Visible = false; lb_SellInTitle.Visible = false; } if (hy_SellOutClient.Visible) { if (supplier > 0) { CM_Client _s = new CM_ClientBLL(supplier).Model; switch (_s.ClientType) { case 1: //公司仓库 hy_SellOutClient.NavigateUrl = "~/SubModule/CM/Store/StoreDetail.aspx?ClientID=" + supplier.ToString(); break; case 2: //经销商 hy_SellOutClient.NavigateUrl = "~/SubModule/CM/DI/DistributorDetail.aspx?ClientID=" + supplier.ToString(); break; case 3: //终端门店 hy_SellOutClient.NavigateUrl = "~/SubModule/CM/RT/RetailerDetail.aspx?ClientID=" + supplier.ToString(); #region 绑定门店导购员 try { lbl_Promotor.Visible = true; ddl_Promotor.Visible = true; AC_AccountMonth month = new AC_AccountMonthBLL(int.Parse(ddl_AccountMonth.SelectedValue)).Model; StringBuilder condition = new StringBuilder(" PM_Promotor.BeginWorkDate<='" + month.EndDate.AddDays(1).ToString("yyyy-MM-dd") + "' AND ISNULL(PM_Promotor.EndWorkDate,GETDATE())>='" + month.BeginDate.ToString("yyyy-MM-dd") + "' AND PM_Promotor.ApproveFlag=1 "); condition.Append("AND ID in (SELECT Promotor FROM PM_PromotorInRetailer WHERE Client = " + supplier.ToString() + ")"); //if ((int)ViewState["VolumeID"] == 0) //{ // condition.Append(" AND ID NOT IN (SELECT Promotor FROM [MCS_SVM].[dbo].[SVM_SalesVolume] WHERE Type=3 AND Supplier= " + supplier.ToString() + " AND AccountMonth=" + ddl_AccountMonth.SelectedValue + " AND Promotor IS NOT NULL)"); //} ddl_Promotor.DataSource = PM_PromotorBLL.GetModelList(condition.ToString()); ddl_Promotor.DataBind(); ddl_Promotor.Items.Insert(0, new ListItem("请选择..", "0")); } catch { } #endregion break; } hy_SellOutClient.Text = "(" + _s.Code + ")" + _s.FullName; ddl_SellOutClient.Visible = false; } else { hy_SellOutClient.Visible = false; ddl_SellOutClient.Visible = false; lb_SellOutTitle.Visible = false; } } }
private void BindData() { SVM_InventoryBLL bll = new SVM_InventoryBLL((int)ViewState["InventoryID"]); ViewState["ClientID"] = bll.Model.Client; ViewState["IsCXP"] = bll.Model["IsCXP"] == "1"; UC_DetailView1.BindData(bll.Model); UC_DetailView1.SetControlsEnable(false); BindGrid(); if (bll.Model.ApproveFlag == 1) { gv_List.SetControlsEnable(false); bt_Approve.Visible = false; bt_Save.Visible = false; bt_Submit.Visible = false; bt_Del.Visible = false; tb_AddProduct.Visible = false; } else { bt_Re_Approve.Visible = false; bt_Del.Visible = (int)Session["UserID"] == bll.Model.InsertStaff; if (bll.Model["SubmitFlag"] == "1") bt_Submit.Visible = false; //已提交 else bt_Approve.Visible = false; //未提交 } if (!(bool)ViewState["IsCXP"]) tb_AddProduct.Visible = false; }