protected void bt_DIUP_Click(object sender, EventArgs e) { if ((int)ViewState["ClientID"] == 0) { MessageBox.Show(this, "对不起,请您先保存后在发起申请"); return; } bt_OK_Click(null, null); CM_ClientBLL bll = new CM_ClientBLL((int)ViewState["ClientID"]); NameValueCollection dataobjects = new NameValueCollection(); dataobjects.Add("ID", ViewState["ClientID"].ToString()); dataobjects.Add("OrganizeCity", bll.Model.OrganizeCity.ToString()); dataobjects.Add("ClientName", bll.Model.FullName.ToString()); dataobjects.Add("OperateClassify", bll.Model["OperateClassify"]); dataobjects.Add("DIClassify", bll.Model["DIClassify"]); int TaskID = EWF_TaskBLL.NewTask("Distributor_Upgrade", (int)Session["UserID"], "分经销商转经销商,经销商名称:" + bll.Model.FullName, "~/SubModule/CM/DI/DistributorDetail.aspx?ClientID=" + ViewState["ClientID"].ToString(), dataobjects); if (TaskID > 0) { bll.Model["TaskID"] = TaskID.ToString(); bll.Model["State"] = "2"; bll.Update(); //new EWF_TaskBLL(TaskID).Start(); //直接启动流程 } Response.Redirect("~/SubModule/EWF/Apply.aspx?TaskID=" + TaskID.ToString()); }
protected void bt_AddApply_Click(object sender, EventArgs e) { bt_OK_Click(null, null); if (CM_LinkManBLL.GetModelList("ClientID=" + ViewState["ClientID"].ToString()).Count == 0) { MessageBox.Show(this, "对不起,请至少提供一名客户联系人!"); return; } CM_ClientBLL bll = new CM_ClientBLL((int)ViewState["ClientID"]); NameValueCollection dataobjects = new NameValueCollection(); dataobjects.Add("ID", bll.Model.ID.ToString()); dataobjects.Add("OrganizeCity", bll.Model.OrganizeCity.ToString()); dataobjects.Add("ClientName", bll.Model.FullName); dataobjects.Add("Channel", bll.Model["RTChannel"]); dataobjects.Add("StoreAnalysis", bll.Model["Store_Analysis"]); dataobjects.Add("IsACClient", bll.Model["IsACClient"]); int TaskID = EWF_TaskBLL.NewTask("Add_Retailer", (int)Session["UserID"], "终端门店名称:" + bll.Model.FullName, "~/SubModule/CM/RT/RetailerDetail.aspx?ClientID=" + ViewState["ClientID"].ToString(), dataobjects); if (TaskID > 0) { bll.Model["TaskID"] = TaskID.ToString(); bll.Model["State"] = "2"; bll.Update(); //new EWF_TaskBLL(TaskID).Start(); //直接启动流程 } Response.Redirect("~/SubModule/EWF/Apply.aspx?TaskID=" + TaskID.ToString()); }
protected void bt_RevocationApply_Click(object sender, EventArgs e) { CM_ClientBLL bll = new CM_ClientBLL((int)ViewState["ClientID"]); if (PM_PromotorInRetailerBLL.GetModelList("Client=" + bll.Model.ID.ToString() + " AND EXISTS(SELECT 1 FROM MCS_Promotor.dbo.PM_Promotor WHERE PM_Promotor.ID=PM_PromotorInRetailer.Promotor AND Dimission=1 AND ApproveFlag=1)").Count > 0) { MessageBox.Show(this, "该门店还有关联的导购,请转移或解除与该门店的关系!"); return; } NameValueCollection dataobjects = new NameValueCollection(); dataobjects.Add("ID", ViewState["ClientID"].ToString()); dataobjects.Add("OrganizeCity", bll.Model.OrganizeCity.ToString()); dataobjects.Add("ClientName", bll.Model.FullName.ToString()); dataobjects.Add("Channel", bll.Model["RTChannel"]); dataobjects.Add("CloseTime", DateTime.Now.ToShortDateString()); dataobjects.Add("Remark", "门店终止合作"); dataobjects.Add("IsKeyClient", bll.Model["IsKeyClient"].ToString()); int TaskID = EWF_TaskBLL.NewTask("Revocation_Retailer", (int)Session["UserID"], "撤销门店,名称:" + bll.Model.FullName, "~/SubModule/CM/RT/RetailerDetail.aspx?ClientID=" + ViewState["ClientID"].ToString(), dataobjects); if (TaskID > 0) { bll.Model["TaskID"] = TaskID.ToString(); bll.Model["State"] = "2"; bll.Update(); } Response.Redirect("~/SubModule/EWF/Apply.aspx?TaskID=" + TaskID.ToString()); }
protected void bt_AddApply_Click(object sender, EventArgs e) { bt_OK_Click(null, null); if ((int)ViewState["ClientID"] == 0) { MessageBox.Show(this, "对不起,请您先保存后在发起申请"); return; } CM_ClientBLL bll = new CM_ClientBLL((int)ViewState["ClientID"]); NameValueCollection dataobjects = new NameValueCollection(); dataobjects.Add("ID", ViewState["ClientID"].ToString()); dataobjects.Add("OrganizeCity", bll.Model.OrganizeCity.ToString()); dataobjects.Add("ClientName", bll.Model.FullName.ToString()); dataobjects.Add("OperateClassify", bll.Model["OperateClassify"]); dataobjects.Add("DIClassify", bll.Model["DIClassify"]); int TaskID = EWF_TaskBLL.NewTask("Add_Distributor", (int)Session["UserID"], "新增经销商流程,经销商名称:" + bll.Model.FullName, "~/SubModule/CM/DI/DistributorDetail.aspx?ClientID=" + ViewState["ClientID"].ToString(), dataobjects); if (TaskID > 0) { bll.Model["TaskID"] = TaskID.ToString(); bll.Model["State"] = "2"; bll.Update(); //new EWF_TaskBLL(TaskID).Start(); //直接启动流程 } Response.Redirect("~/SubModule/EWF/Apply.aspx?TaskID=" + TaskID.ToString()); }
protected void bt_Approve_Click(object sender, EventArgs e) { if ((int)ViewState["ClientID"] != 0) { CM_ClientBLL _bll = new CM_ClientBLL((int)ViewState["ClientID"]); _bll.Model.ApproveFlag = 1; _bll.Update(); MessageBox.ShowAndRedirect(this, "审核仓库资料成功!", "StoreDetail.aspx?ClientID=" + ViewState["ClientID"].ToString()); } }
protected void bt_Approve_Click(object sender, EventArgs e) { if ((int)ViewState["ClientID"] != 0) { CM_ClientBLL _bll = new CM_ClientBLL((int)ViewState["ClientID"]); _bll.Model.ActiveFlag = 1; if (_bll.Model.OpenTime.Year == 1900) _bll.Model.OpenTime = DateTime.Today; _bll.Model.CloseTime = new DateTime(1900, 1, 1); _bll.Model.ApproveFlag = 1; _bll.Update(); MessageBox.ShowAndRedirect(this, "审核经销商资料成功!", "DistributorDetail.aspx?ClientID=" + ViewState["ClientID"].ToString()); } }
protected void bt_Approve_Click(object sender, EventArgs e) { if ((int)ViewState["ClientID"] != 0) { CM_ClientBLL _bll = new CM_ClientBLL((int)ViewState["ClientID"]); _bll.Model.ActiveFlag = 1; if (_bll.Model.OpenTime.Year == 1900) { _bll.Model.OpenTime = DateTime.Today; } _bll.Model.CloseTime = new DateTime(1900, 1, 1); _bll.Model.ApproveFlag = 1; _bll.Update(); MessageBox.ShowAndRedirect(this, "审核经销商资料成功!", "DistributorDetail.aspx?ClientID=" + ViewState["ClientID"].ToString()); } }
protected void bt_OK_Click(object sender, EventArgs e) { CM_ClientBLL _bll = null; int ClientID = (int)Session["OwnerClient"]; _bll = new CM_ClientBLL(ClientID); pl_detail.GetData(_bll.Model); #region 判断修改项 #endregion _bll.Model.UpdateStaff = (int)Session["UserID"]; _bll.Model.OwnerClient = (int)Session["OwnerClient"]; if(_bll.Update()==0) MessageBox.Show(this, "经销商资料修改成功!"); }
protected void bt_OK_Click(object sender, EventArgs e) { CM_ClientBLL _bll = null; int ClientID = (int)Session["OwnerClient"]; _bll = new CM_ClientBLL(ClientID); pl_detail.GetData(_bll.Model); #region 判断修改项 #endregion _bll.Model.UpdateStaff = (int)Session["UserID"]; _bll.Model.OwnerClient = (int)Session["OwnerClient"]; if (_bll.Update() == 0) { MessageBox.Show(this, "经销商资料修改成功!"); } }
protected void bt_RevocationApply_Click(object sender, EventArgs e) { #region 判断有无下游客户 if (CM_ClientBLL.GetModelList("Supplier=" + ViewState["ClientID"].ToString() + " AND ActiveFlag=1").Count > 0) { MessageBox.Show(this, "对不起,该经销商下还有活跃的下游分销商或门店,无法申请撤销!"); return; } #endregion if (new FNA_FeeApplyBLL().GetDetail(@" Flag IN(1,2,4) AND AvailCost>0 AND EXISTS (SELECT ID FROM MCS_FNA.dbo.FNA_FeeApply WHERE State=3 AND ApproveFlag=1 AND ID=FNA_FeeApplyDetail.ApplyID AND Client=" + ViewState["ClientID"] + ")").Count > 0) { MessageBox.Show(this, "该经销商下还有费用未做核销,请核销后再撤销!"); return; } CM_ClientBLL bll = new CM_ClientBLL((int)ViewState["ClientID"]); NameValueCollection dataobjects = new NameValueCollection(); dataobjects.Add("ID", ViewState["ClientID"].ToString()); dataobjects.Add("OrganizeCity", bll.Model.OrganizeCity.ToString()); dataobjects.Add("ClientName", bll.Model.FullName.ToString()); dataobjects.Add("CloseTime", DateTime.Now.ToShortDateString()); dataobjects.Add("Remark", "经销商终止合作"); dataobjects.Add("OperateClassify", bll.Model["OperateClassify"]); dataobjects.Add("DIClassify", bll.Model["DIClassify"]); string Title = TreeTableBLL.GetSuperNameByLevel("MCS_SYS.dbo.Addr_OrganizeCity", "ID", "Name", "SuperID", bll.Model.OrganizeCity, ConfigHelper.GetConfigInt("OrganizeCity-CityLevel")) + "-" + "经销商中止合作流程";//办事处+经分销商名称+中止流程 int TaskID = EWF_TaskBLL.NewTask("Revocation_Distributor", (int)Session["UserID"], Title, "~/SubModule/CM/DI/DistributorDetail.aspx?ClientID=" + ViewState["ClientID"].ToString(), dataobjects); if (TaskID > 0) { bll.Model["TaskID"] = TaskID.ToString(); bll.Model["State"] = "2"; bll.Update(); } Response.Redirect("~/SubModule/EWF/Apply.aspx?TaskID=" + TaskID.ToString()); }
protected void bt_OK_Click(object sender, EventArgs e) { int ApproveCount = 0, UnApproveCount = 0, errcount = 0, LoseApproveCount = 0; string[] mixed; if (txt_OpenID.Text.Trim() != "") { string[] OpenID = Regex.Split(txt_OpenID.Text.Trim(), "\r\n", RegexOptions.IgnoreCase); if (txt_CloseID.Text.Trim() != "") { string[] CloseID = Regex.Split(txt_CloseID.Text.Trim(), "\r\n", RegexOptions.IgnoreCase); if (!CheckID(OpenID, CloseID, out mixed)) { MessageBox.Show(this, "ID为【" + mixed[0] + "】的门店ID同时出现在了【开通】与【关闭】编辑框中!"); return; } } if (txt_LoseID.Text.Trim() != "") { string[] LoseID = Regex.Split(txt_LoseID.Text.Trim(), "\r\n", RegexOptions.IgnoreCase); if (!CheckID(OpenID, LoseID, out mixed)) { MessageBox.Show(this, "ID为【" + mixed[0] + "】的门店ID同时出现在了【开通】与【失效】编辑框中!"); return; } } } if (txt_CloseID.Text.Trim() != "") { string[] CloseID = Regex.Split(txt_CloseID.Text.Trim(), "\r\n", RegexOptions.IgnoreCase); if (txt_LoseID.Text.Trim() != "") { string[] LoseID = Regex.Split(txt_LoseID.Text.Trim(), "\r\n", RegexOptions.IgnoreCase); if (!CheckID(CloseID, LoseID, out mixed)) { MessageBox.Show(this, "ID为【" + mixed[0] + "】的门店ID同时出现在了【关闭】与【失效】编辑框中!"); return; } } } if (txt_LoseID.Text.Trim() != "") { string[] LoseID = Regex.Split(txt_LoseID.Text.Trim(), "\r\n", RegexOptions.IgnoreCase); CM_ClientBLL _bll; StringBuilder approvebuild = new StringBuilder(""); for (int i = 0; i < LoseID.Length; i++) { int Client; if (!LoseID[i].Trim().Equals("") && int.TryParse(LoseID[i].Trim(), out Client)) { _bll = new CM_ClientBLL(Client); if (_bll.Model != null) { _bll.Model["ISFL"] = "3"; _bll.Update(); approvebuild.Append("ID为【" + Client.ToString() + "】的门店已失效返利 "); ApproveCount++; } else { approvebuild.Append("<span style='color: Red'>ID为【" + Client.ToString() + "】的门店未能在系统中找到 </span> "); errcount++; } } else if (!LoseID[i].Trim().Equals("") && !int.TryParse(LoseID[i].Trim(), out Client)) { approvebuild.Append("<span style='color: Red'>【" + Client.ToString() + "】不是一个有效的门店ID </span> "); errcount++; } if (i % 5 == 0 && i != 0) { approvebuild.Append("<br/>"); } } lb_LoseErrorInfo.Text = approvebuild.ToString(); } if (txt_OpenID.Text.Trim() != "") { string[] OpenID = Regex.Split(txt_OpenID.Text.Trim(), "\r\n", RegexOptions.IgnoreCase); CM_ClientBLL _bll; StringBuilder approvebuild = new StringBuilder(""); for (int i = 0; i < OpenID.Length; i++) { int Client; if (!OpenID[i].Trim().Equals("") && int.TryParse(OpenID[i].Trim(), out Client)) { _bll = new CM_ClientBLL(Client); if (_bll.Model != null) { _bll.Model["ISFL"] = "1"; _bll.Update(); approvebuild.Append("ID为【" + Client.ToString() + "】的门店已开通返利 "); ApproveCount++; } else { approvebuild.Append("<span style='color: Red'>ID为【" + Client.ToString() + "】的门店未能在系统中找到 </span> "); errcount++; } } else if (!OpenID[i].Trim().Equals("") && !int.TryParse(OpenID[i].Trim(), out Client)) { approvebuild.Append("<span style='color: Red'>【" + Client.ToString() + "】不是一个有效的门店ID </span> "); errcount++; } if (i % 5 == 0 && i != 0) { approvebuild.Append("<br/>"); } } lb_OpenErrorInfo.Text = approvebuild.ToString(); } if (txt_CloseID.Text.Trim() != "") { string[] CloseID = Regex.Split(txt_CloseID.Text.Trim(), "\r\n", RegexOptions.IgnoreCase); CM_ClientBLL _bll; StringBuilder unapprovebuild = new StringBuilder(""); for (int i = 0; i < CloseID.Length; i++) { int Client; if (!CloseID[i].Trim().Equals("") && int.TryParse(CloseID[i].Trim(), out Client)) { _bll = new CM_ClientBLL(Client); if (_bll.Model != null) { UnApproveCount++; _bll.Model["ISFL"] = "2"; _bll.Update(); unapprovebuild.Append("ID为【" + Client.ToString() + "】的门店已关闭返利 "); } else { errcount++; unapprovebuild.Append("<span style='color: Red'>ID为【" + Client.ToString() + "】的返利协议未能在系统中找到 </span>"); } } else if (!CloseID[i].Trim().Equals("") && !int.TryParse(CloseID[i].Trim(), out Client)) { unapprovebuild.Append("<span style='color: Red'>【" + Client.ToString() + "】不是一个有效的门店ID </span>"); errcount++; } if (i % 5 == 0 && i != 0) { unapprovebuild.Append("<br/>"); } } lb_CloseErrorInfo.Text = unapprovebuild.ToString(); } MessageBox.Show(this, "开通门店个数:" + ApproveCount.ToString() + @"\n关闭门店个数:" + UnApproveCount.ToString() + @"\n失效门店个数:" + LoseApproveCount.ToString() + @"\n未能导入门店个数:" + errcount.ToString()); return; }
protected void bt_OK_Click(object sender, EventArgs e) { int ApproveCount = 0, UnApproveCount = 0, errcount = 0, LoseApproveCount = 0; string[] mixed; if (txt_OpenID.Text.Trim() != "") { string[] OpenID = Regex.Split(txt_OpenID.Text.Trim().Replace("\r\n", "\n").Replace(" ", "\n"), "\n", RegexOptions.IgnoreCase); if (txt_CloseID.Text.Trim() != "") { string[] CloseID = Regex.Split(txt_CloseID.Text.Trim().Replace("\r\n", "\n").Replace(" ", "\n"), "\n", RegexOptions.IgnoreCase); if (!CheckID(OpenID, CloseID, out mixed)) { MessageBox.Show(this, "客户代码为【" + mixed[0] + "】的客户代码同时出现在了【开通】与【关闭】编辑框中!"); return; } } } if (txt_OpenID.Text.Trim() != "") { string[] OpenID = Regex.Split(txt_OpenID.Text.Trim().Replace("\r\n", "\n").Replace(" ", "\n"), "\n", RegexOptions.IgnoreCase); CM_ClientBLL _bll; StringBuilder approvebuild = new StringBuilder(""); for (int i = 0; i < OpenID.Length; i++) { if (!OpenID[i].Trim().Equals("")) { IList <CM_Client> cmlist = CM_ClientBLL.GetModelList("Code='" + OpenID[i].Trim() + "'"); if (cmlist.Count > 0) { _bll = new CM_ClientBLL(cmlist[0].ID); _bll.Model["IsRMSClient"] = "3"; _bll.Model["RMSAccountEnabled"] = "1"; _bll.Update(); approvebuild.Append("客户代码为【" + OpenID[i].Trim() + "】的门店已开通积分"); ApproveCount++; } else { approvebuild.Append("<span style='color: Red'>客户代码为【" + OpenID[i].Trim() + "】的门店未能在系统中找到 </span> "); errcount++; } } else if (!OpenID[i].Trim().Equals("")) { approvebuild.Append("<span style='color: Red'>【" + OpenID[i].Trim() + "】不是一个有效的客户代码</span> "); errcount++; } if (i % 5 == 0 && i != 0) { approvebuild.Append("<br/>"); } } lb_OpenErrorInfo.Text = approvebuild.ToString(); } if (txt_CloseID.Text.Trim() != "") { string[] CloseID = Regex.Split(txt_CloseID.Text.Trim().Replace("\r\n", "\n").Replace(" ", "\n"), "\n", RegexOptions.IgnoreCase); CM_ClientBLL _bll; StringBuilder unapprovebuild = new StringBuilder(""); for (int i = 0; i < CloseID.Length; i++) { if (!CloseID[i].Trim().Equals("")) { IList <CM_Client> cmlist = CM_ClientBLL.GetModelList("Code='" + CloseID[i].Trim() + "'"); if (cmlist.Count > 0) { _bll = new CM_ClientBLL(cmlist[0].ID); _bll.Model["IsRMSClient"] = "2"; _bll.Model["RMSAccountEnabled"] = "2"; _bll.Update(); unapprovebuild.Append("客户代码为【" + CloseID[i].Trim() + "】的门店已关闭积分"); UnApproveCount++; } else { errcount++; unapprovebuild.Append("<span style='color: Red'>ID为【" + CloseID[i].Trim() + "】的返利协议未能在系统中找到 </span>"); } } else if (!CloseID[i].Trim().Equals("")) { unapprovebuild.Append("<span style='color: Red'>【" + CloseID[i].Trim() + "】不是一个有效的客户代码 </span>"); errcount++; } if (i % 5 == 0 && i != 0) { unapprovebuild.Append("<br/>"); } } lb_CloseErrorInfo.Text = unapprovebuild.ToString(); } MessageBox.Show(this, "开通积分门店个数:" + ApproveCount.ToString() + @"\n关闭积分门店个数:" + UnApproveCount.ToString() + @"\n未能导入门店个数:" + errcount.ToString()); return; }
protected void bt_OK_Click(object sender, EventArgs e) { int ApproveCount = 0, UnApproveCount = 0, errcount = 0, LoseApproveCount = 0; string[] mixed; if (txt_OpenID.Text.Trim() != "") { string[] OpenID = Regex.Split(txt_OpenID.Text.Trim().Replace("\r\n", "\n").Replace(" ", "\n"), "\n", RegexOptions.IgnoreCase); if (txt_CloseID.Text.Trim() != "") { string[] CloseID = Regex.Split(txt_CloseID.Text.Trim().Replace("\r\n", "\n").Replace(" ", "\n"), "\n", RegexOptions.IgnoreCase); if (!CheckID(OpenID, CloseID, out mixed)) { MessageBox.Show(this, "客户代码为【" + mixed[0] + "】的客户代码同时出现在了【开通】与【关闭】编辑框中!"); return; } } } if (txt_OpenID.Text.Trim() != "") { string[] OpenID = Regex.Split(txt_OpenID.Text.Trim().Replace("\r\n", "\n").Replace(" ", "\n"), "\n", RegexOptions.IgnoreCase); CM_ClientBLL _bll; StringBuilder approvebuild = new StringBuilder(""); for (int i = 0; i < OpenID.Length; i++) { if (!OpenID[i].Trim().Equals("")) { IList<CM_Client> cmlist = CM_ClientBLL.GetModelList("Code='" + OpenID[i].Trim()+"'"); if (cmlist.Count > 0) { _bll = new CM_ClientBLL(cmlist[0].ID); _bll.Model["IsRMSClient"] = "3"; _bll.Model["RMSAccountEnabled"] = "1"; _bll.Update(); approvebuild.Append("客户代码为【" + OpenID[i].Trim() + "】的门店已开通积分"); ApproveCount++; } else { approvebuild.Append("<span style='color: Red'>客户代码为【" + OpenID[i].Trim() + "】的门店未能在系统中找到 </span> "); errcount++; } } else if (!OpenID[i].Trim().Equals("")) { approvebuild.Append("<span style='color: Red'>【" + OpenID[i].Trim() + "】不是一个有效的客户代码</span> "); errcount++; } if (i % 5 == 0 && i != 0) approvebuild.Append("<br/>"); } lb_OpenErrorInfo.Text = approvebuild.ToString(); } if (txt_CloseID.Text.Trim() != "") { string[] CloseID = Regex.Split(txt_CloseID.Text.Trim().Replace("\r\n", "\n").Replace(" ", "\n"), "\n", RegexOptions.IgnoreCase); CM_ClientBLL _bll; StringBuilder unapprovebuild = new StringBuilder(""); for (int i = 0; i < CloseID.Length; i++) { if (!CloseID[i].Trim().Equals("")) { IList<CM_Client> cmlist = CM_ClientBLL.GetModelList("Code='" + CloseID[i].Trim() + "'"); if (cmlist.Count > 0) { _bll = new CM_ClientBLL(cmlist[0].ID); _bll.Model["IsRMSClient"] = "2"; _bll.Model["RMSAccountEnabled"] = "2"; _bll.Update(); unapprovebuild.Append("客户代码为【" + CloseID[i].Trim() + "】的门店已关闭积分"); UnApproveCount++; } else { errcount++; unapprovebuild.Append("<span style='color: Red'>ID为【" + CloseID[i].Trim() + "】的返利协议未能在系统中找到 </span>"); } } else if (!CloseID[i].Trim().Equals("")) { unapprovebuild.Append("<span style='color: Red'>【" + CloseID[i].Trim() + "】不是一个有效的客户代码 </span>"); errcount++; } if (i % 5 == 0 && i != 0) unapprovebuild.Append("<br/>"); } lb_CloseErrorInfo.Text = unapprovebuild.ToString(); } MessageBox.Show(this, "开通积分门店个数:" + ApproveCount.ToString() + @"\n关闭积分门店个数:" + UnApproveCount.ToString() + @"\n未能导入门店个数:" + errcount.ToString()); return; }
/// <summary> /// 新增门店资料 /// </summary> /// <param name="User">用户</param> /// <param name="TDP"></param> /// <param name="ClientJson">门店资料Json</param> /// <returns>大于0:新增的门店ID -1:Json字符串无法解析 -2:所属经销商无效 -3:更新门店基本资料失败</returns> public static int RetailerUpdate(UserInfo User, int TDP, ClientInfo Client, out string ErrorInfo) { ErrorInfo = ""; LogWriter.WriteLog("PBMIFService.RetailerUpdate:UserName="******",TDP=" + TDP.ToString() + ",ClientInfo=" + JsonConvert.SerializeObject(Client)); if (User.OwnerType == 3) TDP = User.ClientID; try { ClientInfo c = Client; if (c == null) { ErrorInfo = "Json字符串无法解析"; return -1; } //Json字符串无法解析 CM_Client TDPClient = new CM_ClientBLL(TDP).Model; if (TDPClient == null) { ErrorInfo = "所属经销商无效"; return -2; } //所属经销商无效 #region 判断必填与重复检测 if (c.FullName == "") { ErrorInfo = "门店名称必填"; return -10; } if (c.Mobile == "") { ErrorInfo = "联系电话必填"; return -10; } if (c.Address == "") { ErrorInfo = "门店地址必填"; return -10; } if (c.Mobile.StartsWith("01")) c.Mobile = c.Mobile.Substring(1); if (c.TeleNum.Contains("-")) c.TeleNum = c.TeleNum.Replace("-", ""); if (c.Mobile.Contains("-")) c.Mobile = c.Mobile.Replace("-", ""); //检查门店资料重复 int rptclientid = CM_ClientBLL.CheckRepeat(TDP, Client.ID, c.Mobile, c.TeleNum, c.FullName, c.Address); if (rptclientid > 0) { CM_Client _rptclient = new CM_ClientBLL(rptclientid).Model; ErrorInfo = "门店资料与[" + _rptclient.FullName + "]资料重复,请勿重复新增!"; return -11; } #endregion CM_ClientBLL bll = new CM_ClientBLL(c.ID); #region 门店基本资料 bll.Model.Code = c.Code; bll.Model.FullName = c.FullName != "" ? c.FullName : c.ShortName; bll.Model.ShortName = c.ShortName == "" ? c.FullName : c.ShortName; if (c.OfficialCity > 0) bll.Model.OfficialCity = c.OfficialCity; else bll.Model.OfficialCity = TDPClient.OfficialCity; if (bll.Model.DeliveryAddress == bll.Model.Address) bll.Model.DeliveryAddress = c.Address; bll.Model.Address = c.Address; bll.Model.LinkManName = c.LinkManName; bll.Model.TeleNum = c.TeleNum == "" ? c.Mobile : c.TeleNum; if (c.Mobile.StartsWith("1") && c.Mobile.Length == 11) bll.Model.Mobile = c.Mobile; bll.Model.UpdateStaff = User.StaffID; #endregion int retailerid = bll.Update(); if (retailerid < 0) return -3; //更新门店基本资料失败 #region 设置供货商信息 CM_ClientSupplierInfo supplierinfo = bll.GetSupplierInfo(TDP); supplierinfo.Code = c.CodeBySupplier; supplierinfo.StandardPrice = c.StandardPrice; supplierinfo.TDPChannel = c.TDPChannel; supplierinfo.TDPSalesArea = c.TDPSalesArea; supplierinfo.VisitRoute = c.VisitRoute; supplierinfo.VisitSequence = c.VisitSequence; supplierinfo.VisitTemplate = c.VisitTemplate; supplierinfo.UpdateStaff = User.StaffID; bll.SetSupplierInfo(supplierinfo); #endregion #region 设置厂商管理信息 #endregion return 0; } catch (System.Exception err) { LogWriter.WriteLog("PBMIFService.RetailerAdd Exception Error!", err); return -100; } }
private void threadStartImport(BackgroundWorker worker, DoWorkEventArgs e) { DataTable dt_OfficialCity = Addr_OfficialCityBLL.GetAllOfficialCity(); DataTable dt_OrganizeCity = Addr_OrganizeCityBLL.GetAllOrganizeCity(); DataTable dt_Position = Org_PositionBLL.GetAllPostion(); bool bFind = false; StringBuilder _xhs_success = new StringBuilder("");//成功导入的记录序号(用于定期批量更新导入标志) string XH = ""; #region 导入销售人员资料 try { if (cbx_Promotor.Checked) { lb_Count.Text = dt_SalesStaff.Rows.Count.ToString(); tabControl1.SelectedIndex = 0; XH = ""; for (int i = 0; i < dt_SalesStaff.Rows.Count; i++) { worker.ReportProgress((i + 1) * 100 / this.dt_SalesStaff.Rows.Count, i); if (worker.CancellationPending) { e.Cancel = true; break; } XH = dt_SalesStaff.Rows[i]["序号"].ToString(); Org_StaffBLL staff = new Org_StaffBLL(); //序号 if (dt_SalesStaff.Rows[i]["员工工号"].ToString() != "") staff.Model["StaffCode"] = dt_SalesStaff.Rows[i]["员工工号"].ToString(); else staff.Model["StaffCode"] = FormatClientCode('S', dt_SalesStaff.Rows[i]["序号"].ToString().Trim(), dt_SalesStaff.Rows[i]["管理片区代码"].ToString().Trim()); #region 判断数据是否重复 if (Org_StaffBLL.GetStaffList("StaffCode = '" + staff.Model["StaffCode"] + "'").Count > 0) { UpdateImportFlag(1, i, "导入失败,数据重复!"); continue; } #endregion //姓名 staff.Model["RealName"] = dt_SalesStaff.Rows[i]["姓名"].ToString().Trim(); //职务 DataRow[] rows_Position = dt_Position.Select("Name = '" + dt_SalesStaff.Rows[i]["职务"].ToString().Trim() + "'"); if (rows_Position.Length == 0) { UpdateImportFlag(1, i, "导入失败,职务在系统字典中不存在!"); continue; } else staff.Model["Position"] = rows_Position[0]["ID"].ToString().Trim(); //管理片区代码 DataRow[] rows_OrganizeCity = dt_OrganizeCity.Select("Code='" + dt_SalesStaff.Rows[i]["管理片区代码"].ToString().Trim() + "'"); if (rows_OrganizeCity.Length == 0) { UpdateImportFlag(1, i, "导入失败,管理片区代码在系统字典中不存在!"); continue; } else staff.Model["OrganizeCity"] = rows_OrganizeCity[0]["ID"].ToString().Trim(); //性别 staff.Model["Sex"] = dt_SalesStaff.Rows[i]["性别"].ToString(); //bFind = false; //foreach (Dictionary_Data item in DictionaryBLL.GetDicCollections("Pub_Sex").Values) //{ // if (item.Name == dt_SalesStaff.Rows[i]["性别"].ToString().Trim()) // { // staff.Model["Sex"] = item.Code; // bFind = true; // break; // } //} //if (!bFind) //{ // UpdateImportFlag(1, i, "导入失败,性别在系统字典中不存在!"); // continue; //} //联系电话 staff.Model["TeleNum"] = dt_SalesStaff.Rows[i]["联系电话"].ToString().Trim(); //手机 staff.Model["Mobile"] = dt_SalesStaff.Rows[i]["手机"].ToString().Trim(); //城市 string cityname = dt_SalesStaff.Rows[i]["城市"].ToString().Trim(); if (cityname.Length > 3) cityname = cityname.Substring(0, 3); DataRow[] rows_OfficialCity = dt_OfficialCity.Select("Name like '" + cityname + "%'"); if (rows_OfficialCity.Length == 0) { UpdateImportFlag(1, i, "导入失败,城市在系统字典中不存在!"); continue; } else staff.Model["OfficialCity"] = rows_OfficialCity[0]["ID"].ToString().Trim(); //家庭地址 staff.Model["Address"] = dt_SalesStaff.Rows[i]["家庭地址"].ToString().Trim(); //身份证号 staff.Model["IDCode"] = dt_SalesStaff.Rows[i]["身份证号"].ToString().Trim(); //上岗时间 if (dt_SalesStaff.Rows[i]["上岗时间"].ToString().Trim() != "") staff.Model["BeginWorkTime"] = dt_SalesStaff.Rows[i]["上岗时间"].ToString().Trim(); //离岗时间 if (dt_SalesStaff.Rows[i]["离岗时间"].ToString().Trim() != "") staff.Model["EndWorkTime"] = dt_SalesStaff.Rows[i]["离岗时间"].ToString().Trim(); //银行类别 staff.Model["BankName"] = dt_SalesStaff.Rows[i]["银行类别"].ToString().Trim(); //工资卡号 staff.Model["BankAccount"] = dt_SalesStaff.Rows[i]["工资卡号"].ToString().Trim(); //在职标志 staff.Model["Dimission"] = "1"; int iret = staff.Add(); if (iret > 0) { _xhs_success.Append(XH + ","); //UpdateImportFlag(1, i, "导入成功,ID=" + iret.ToString()); #region 创建用户登录帐户 string username = staff.Model.RealName; string pwd = "000000"; MembershipUserCollection haveusers = Membership.FindUsersByName(username); if (haveusers.Count > 0) { username += "_" + haveusers.Count.ToString(); } if (staff.Model["IDCode"].Length >= 6) pwd = staff.Model["IDCode"].Substring(staff.Model["IDCode"].Length - 6); MembershipUser user = Membership.CreateUser(username, pwd, "*****@*****.**"); if (user != null) { UserBLL.Membership_SetStaffID(user.UserName, iret); Roles.AddUserToRole(user.UserName, " 全体员工"); } #endregion } else UpdateImportFlag(1, i, "导入失败,写入数据库失败!"); } UpdateSuccess(_xhs_success.ToString(), 1); } } catch (System.Exception err) { UpdateSuccess(_xhs_success.ToString(), 1); MessageBox.Show(err.Source + "~r~n" + err.StackTrace, err.Message); } #endregion Thread.Sleep(1000); #region 导入经销商 try { if (checkBox2.Checked) { lb_Count.Text = dt_Distributor.Rows.Count.ToString(); tabControl1.SelectedIndex = 1; XH = ""; for (int i = 0; i < dt_Distributor.Rows.Count; i++) { worker.ReportProgress((i + 1) * 100 / this.dt_Distributor.Rows.Count, i); if (worker.CancellationPending) { e.Cancel = true; break; } XH = dt_Distributor.Rows[i]["序号"].ToString(); CM_ClientBLL client = new CM_ClientBLL(); client.Model.ClientType = 2; //经销商 #region 编号 if (dt_Distributor.Rows[i]["经销商编号"].ToString().Trim() != "") client.Model["Code"] = dt_Distributor.Rows[i]["经销商编号"].ToString().Trim(); else client.Model["Code"] = FormatClientCode('D', dt_Distributor.Rows[i]["序号"].ToString().Trim(), dt_Distributor.Rows[i]["管理片区代码"].ToString().Trim()); #region 判断数据是否重复 if (CM_ClientBLL.GetModelList("Code = '" + client.Model["Code"] + "'").Count > 0) { UpdateImportFlag(2, i, "导入失败,数据重复!"); continue; } #endregion #endregion //全称 client.Model["FullName"] = dt_Distributor.Rows[i]["全称"].ToString().Trim(); client.Model["ShortName"] = dt_Distributor.Rows[i]["简称"].ToString().Trim(); #region 管理片区代码 DataRow[] rows_OrganizeCity = dt_OrganizeCity.Select("Code='" + dt_Distributor.Rows[i]["管理片区代码"].ToString().Trim() + "'"); if (rows_OrganizeCity.Length == 0) { UpdateImportFlag(2, i, "导入失败,管理片区代码在系统字典中不存在!"); continue; } else client.Model["OrganizeCity"] = rows_OrganizeCity[0]["ID"].ToString().Trim(); #endregion #region 联系方式 client.Model["TeleNum"] = dt_Distributor.Rows[i]["固定电话"].ToString().Trim(); client.Model["Fax"] = dt_Distributor.Rows[i]["传真"].ToString().Trim(); client.Model["PostCode"] = dt_Distributor.Rows[i]["邮编"].ToString().Trim(); client.Model["Email"] = dt_Distributor.Rows[i]["Email"].ToString().Trim(); client.Model["Address"] = dt_Distributor.Rows[i]["地址"].ToString().Trim(); #endregion #region 所在城市 string cityname = dt_Distributor.Rows[i]["城市"].ToString().Trim(); string areaname = dt_Distributor.Rows[i]["县城"].ToString().Trim(); if (areaname != "") { DataRow[] rows_OfficialCity = dt_OfficialCity.Select("Name like '" + areaname + "%'"); if (rows_OfficialCity.Length == 1) client.Model.OfficalCity = int.Parse(rows_OfficialCity[0]["ID"].ToString().Trim()); } if (cityname != "" && client.Model.OfficalCity == 0) { DataRow[] rows_OfficialCity = dt_OfficialCity.Select("Name like '" + cityname + "%'"); if (rows_OfficialCity.Length == 1) client.Model.OfficalCity = int.Parse(rows_OfficialCity[0]["ID"].ToString().Trim()); } if (client.Model["TeleNum"] != "" && client.Model.OfficalCity == 0) { Addr_OfficialCity city = null; city = Addr_OfficialCityBLL.GetCityByTeleNumOrPostCode(client.Model["TeleNum"]); if (city != null) client.Model.OfficalCity = city.ID; } if (client.Model["PostCode"] != "" && client.Model.OfficalCity == 0) { Addr_OfficialCity city = null; city = Addr_OfficialCityBLL.GetCityByTeleNumOrPostCode(client.Model["PostCode"]); if (city != null) client.Model.OfficalCity = city.ID; } if (dt_Distributor.Rows[i]["手机"].ToString().Trim() != "" && client.Model.OfficalCity == 0) { Addr_OfficialCity city = null; city = Addr_OfficialCityBLL.GetCityByTeleNumOrPostCode(dt_Distributor.Rows[i]["手机"].ToString().Trim()); if (city != null) client.Model.OfficalCity = city.ID; } if (client.Model.OfficalCity == 0) { UpdateImportFlag(2, i, "导入失败,城市在系统字典中不存在!"); continue; } #endregion #region 经销商类别 bFind = false; foreach (Dictionary_Data item in DictionaryBLL.GetDicCollections("CM_DI_Classify").Values) { if (item.Name == dt_Distributor.Rows[i]["类别"].ToString().Trim()) { client.Model["DIClassify"] = item.Code; bFind = true; break; } } if (!bFind) { UpdateImportFlag(2, i, "导入失败,类别在系统字典中不存在!"); continue; } #endregion #region 活跃状态 bFind = false; foreach (Dictionary_Data item in DictionaryBLL.GetDicCollections("CM_ActiveFlag").Values) { if (item.Name == dt_Distributor.Rows[i]["活跃状态"].ToString().Trim()) { client.Model["ActiveFlag"] = item.Code; bFind = true; break; } } if (!bFind) { UpdateImportFlag(2, i, "导入失败,活跃状态在系统字典中不存在!"); continue; } #endregion #region 纳税类型 if (dt_Distributor.Rows[i]["纳税类型"].ToString().Trim() != "") { bFind = false; foreach (Dictionary_Data item in DictionaryBLL.GetDicCollections("CM_TaxesClassify").Values) { if (item.Name == dt_Distributor.Rows[i]["纳税类型"].ToString().Trim()) { client.Model["TaxesClassify"] = item.Code; bFind = true; break; } } if (!bFind) { UpdateImportFlag(2, i, "导入失败,纳税类型在系统字典中不存在!"); continue; } } #endregion #region 市场类型 if (dt_Distributor.Rows[i]["市场类型"].ToString().Trim() != "") { bFind = false; foreach (Dictionary_Data item in DictionaryBLL.GetDicCollections("CM_MarketType").Values) { if (item.Name == dt_Distributor.Rows[i]["市场类型"].ToString().Trim()) { client.Model["MarketType"] = item.Code; bFind = true; break; } } if (!bFind) { UpdateImportFlag(2, i, "导入失败,市场类型在系统字典中不存在!"); continue; } } #endregion #region 主营渠道 if (dt_Distributor.Rows[i]["主营渠道"].ToString().Trim() != "") { bFind = false; foreach (Dictionary_Data item in DictionaryBLL.GetDicCollections("CM_RT_Channel").Values) { if (item.Name == dt_Distributor.Rows[i]["主营渠道"].ToString().Trim()) { client.Model["RTChannel"] = item.Code; bFind = true; break; } } if (!bFind) { UpdateImportFlag(2, i, "导入失败,主营渠道在系统字典中不存在!"); continue; } } #endregion //开始合作时间 if (dt_Distributor.Rows[i]["开始合作时间"].ToString().Trim() != "") client.Model["OpenTime"] = dt_Distributor.Rows[i]["开始合作时间"].ToString().Trim(); //覆盖区域 client.Model["CoverageArea"] = dt_Distributor.Rows[i]["覆盖区域"].ToString().Trim(); //主要销售奶粉品牌 client.Model["MostlyBrand"] = dt_Distributor.Rows[i]["主要销售奶粉品牌"].ToString().Trim(); //开户行类别 client.Model["BankName"] = dt_Distributor.Rows[i]["开户行类别"].ToString().Trim(); //开户行账号 client.Model["BankAccountNo"] = dt_Distributor.Rows[i]["开户行账号"].ToString().Trim(); #region 隶属一级商编号 if (client.Model["DIClassify"] != "1" && dt_Distributor.Rows[i]["隶属一级商编号"].ToString().Trim() != "") { IList<CM_Client> lists = CM_ClientBLL.GetModelList("Code='" + dt_Distributor.Rows[i]["隶属一级商编号"].ToString().Trim() + "'"); if (lists.Count > 0) { client.Model["Supplier"] = lists[0]["ID"]; } else { //UpdateImportFlag(2, i, "导入失败,隶属一级商编号在客户中不存在!"); //continue; } } else if (client.Model["DIClassify"] == "1") { client.Model.Supplier = 1223; //总部仓库 } #endregion #region 责任业代 bool fail1 = false; if (dt_Distributor.Rows[i]["责任业代"].ToString().Trim() != "") { string cityids = new Addr_OrganizeCityBLL(client.Model.OrganizeCity).GetAllChildNodeIDs(); if (cityids != "") cityids += ","; cityids += client.Model.OrganizeCity.ToString(); IList<Org_Staff> staffs = Org_StaffBLL.GetStaffList("OrganizeCity IN(" + cityids + ") AND RealName='" + dt_Distributor.Rows[i]["责任业代"].ToString().Trim() + "' AND Dimission=1"); if (staffs.Count == 1) client.Model.ClientManager = staffs[0].ID; else { fail1 = true; //UpdateImportFlag(2, i, "导入失败,责任业代在员工表中不存在!" + staffs.Count.ToString()); //continue; } } #endregion client.Model.ApproveFlag = 1; int iret = client.Add(); if (iret > 0) { //_xhs_success.Append(XH + ","); if (!fail1) UpdateImportFlag(2, i, "导入成功,ID=" + iret.ToString()); else UpdateImportFlag(2, i, "部分导入成功,责任业代在员工表中不存在!"); } else { UpdateImportFlag(2, i, "导入失败,写入数据库失败!"); continue; } #region 加入联系人 CM_LinkManBLL linkman = new CM_LinkManBLL(); linkman.Model.ClientID = iret; #region 负责人 if (dt_Distributor.Rows[i]["负责人"].ToString().Trim() != "") { linkman.Model["Name"] = dt_Distributor.Rows[i]["负责人"].ToString().Trim(); #region 负责人职务 if (dt_Distributor.Rows[i]["负责人职务"].ToString().Trim() != "") { bFind = false; foreach (Dictionary_Data item in DictionaryBLL.GetDicCollections("CM_LinkManJob").Values) { if (item.Name == dt_Distributor.Rows[i]["负责人职务"].ToString().Trim()) { linkman.Model["Job"] = item.Code; bFind = true; break; } } } #endregion //固定电话 linkman.Model["OfficeTeleNum"] = dt_Distributor.Rows[i]["固定电话"].ToString().Trim(); //手机 linkman.Model["Mobile"] = dt_Distributor.Rows[i]["手机"].ToString().Trim(); iret = linkman.Add(); if (iret > 0) { client.Model["ChiefLinkMan"] = iret.ToString(); client.Update(); } } #endregion #region 法人 if (dt_Distributor.Rows[i]["负责人"].ToString().Trim() != "") { linkman.Model["Name"] = dt_Distributor.Rows[i]["法人代表"].ToString().Trim(); linkman.Model["Job"] = "2"; //法人代表 linkman.Model["OfficeTeleNum"] = dt_Distributor.Rows[i]["法人联系电话"].ToString().Trim(); if (linkman.Model["OfficeTeleNum"].StartsWith("1")) linkman.Model["Mobile"] = linkman.Model["OfficeTeleNum"]; linkman.Add(); } #endregion #endregion } //UpdateSuccess(_xhs_success.ToString(), 2); } } catch (System.Exception err) { UpdateSuccess(_xhs_success.ToString(), 1); MessageBox.Show(err.Source + "~r~n" + err.StackTrace, err.Message); } #endregion Thread.Sleep(1000); #region 导入终端门店资料表 StringBuilder _xhs_rt_fail1 = new StringBuilder(""); StringBuilder _xhs_rt_fail2 = new StringBuilder(""); try { if (checkBox3.Checked) { lb_Count.Text = dt_Retailer.Rows.Count.ToString(); tabControl1.SelectedIndex = 2; XH = ""; for (int i = 0; i < dt_Retailer.Rows.Count; i++) { worker.ReportProgress((i + 1) * 100 / this.dt_Retailer.Rows.Count, i); if (worker.CancellationPending) { e.Cancel = true; break; } bool bsuccess = true; XH = dt_Retailer.Rows[i]["序号"].ToString(); CM_ClientBLL client = new CM_ClientBLL(); client.Model.ClientType = 3; //终端门店 #region 序号 client.Model["Code"] = dt_Retailer.Rows[i]["门店编码"].ToString().Trim(); #region 判断数据是否重复 if (CM_ClientBLL.GetModelList("Code = '" + client.Model["Code"] + "'").Count > 0) { UpdateImportFlag(3, i, "导入失败,数据重复!"); continue; } #endregion #endregion //连锁店名称 client.Model["ChainStoreName"] = dt_Retailer.Rows[i]["连锁店名称"].ToString().Trim(); //门店全称 client.Model["FullName"] = dt_Retailer.Rows[i]["门店全称"].ToString().Trim(); //门店简称 client.Model["ShortName"] = dt_Retailer.Rows[i]["门店简称"].ToString().Trim(); if (client.Model.ShortName == "") client.Model.ShortName = client.Model.FullName; #region 管理片区代码 DataRow[] rows_OrganizeCity = dt_OrganizeCity.Select("Code='" + dt_Retailer.Rows[i]["管理片区代码"].ToString().Trim() + "'"); if (rows_OrganizeCity.Length == 0) { UpdateImportFlag(3, i, "导入失败,管理片区代码在系统字典中不存在!"); continue; } else client.Model["OrganizeCity"] = rows_OrganizeCity[0]["ID"].ToString().Trim(); #endregion //固定电话 client.Model["TeleNum"] = dt_Retailer.Rows[i]["固定电话"].ToString().Trim(); if (client.Model["TeleNum"] == "") client.Model["TeleNum"] = dt_Retailer.Rows[i]["联系人手机"].ToString().Trim(); //门店地址 client.Model["Address"] = dt_Retailer.Rows[i]["门店地址"].ToString().Trim(); #region 所在城市 string cityname = dt_Retailer.Rows[i]["城市"].ToString().Trim(); string areaname = dt_Retailer.Rows[i]["县城"].ToString().Trim(); string townname = dt_Retailer.Rows[i]["乡镇"].ToString().Trim(); if (townname != "") { DataRow[] rows_OfficialCity = dt_OfficialCity.Select("Name like '" + townname + "%'"); if (rows_OfficialCity.Length == 1) client.Model.OfficalCity = int.Parse(rows_OfficialCity[0]["ID"].ToString().Trim()); } if (areaname != "" && client.Model.OfficalCity == 0) { DataRow[] rows_OfficialCity = dt_OfficialCity.Select("Name like '" + areaname + "%'"); if (rows_OfficialCity.Length == 1) client.Model.OfficalCity = int.Parse(rows_OfficialCity[0]["ID"].ToString().Trim()); } if (cityname != "" && client.Model.OfficalCity == 0) { DataRow[] rows_OfficialCity = dt_OfficialCity.Select("Name like '" + cityname + "%'"); if (rows_OfficialCity.Length > 0) client.Model.OfficalCity = int.Parse(rows_OfficialCity[0]["ID"].ToString().Trim()); } if (client.Model["TeleNum"] != "" && client.Model.OfficalCity == 0) { Addr_OfficialCity city = null; city = Addr_OfficialCityBLL.GetCityByTeleNumOrPostCode(client.Model["TeleNum"]); if (city != null) client.Model.OfficalCity = city.ID; } if (client.Model.OfficalCity == 0) { UpdateImportFlag(3, i, "导入失败,城市在系统字典中不存在!"); continue; } #endregion #region 门店渠道 if (dt_Retailer.Rows[i]["门店渠道"].ToString().Trim() != "") { bFind = false; foreach (Dictionary_Data item in DictionaryBLL.GetDicCollections("CM_RT_Channel").Values) { if (item.Name == dt_Retailer.Rows[i]["门店渠道"].ToString().Trim().ToUpper()) { client.Model["RTChannel"] = item.Code; bFind = true; break; } } if (!bFind) { UpdateImportFlag(3, i, "导入失败,门店渠道在系统字典中不存在!"); continue; } } #endregion #region 门店类型 if (dt_Retailer.Rows[i]["门店类型"].ToString().Trim() != "") { bFind = false; foreach (Dictionary_Data item in DictionaryBLL.GetDicCollections("CM_RT_Classify").Values) { if (item.Name == dt_Retailer.Rows[i]["门店类型"].ToString().Trim()) { client.Model["RTClassify"] = item.Code; bFind = true; break; } } if (!bFind) { UpdateImportFlag(3, i, "导入失败,门店类型在系统字典中不存在!"); continue; } } #endregion #region 销售代表 if (dt_Retailer.Rows[i]["销售代表工号"].ToString().Trim() != "") { IList<Org_Staff> staffs = Org_StaffBLL.GetStaffList("StaffCode='" + dt_Retailer.Rows[i]["销售代表工号"].ToString().Trim() + "' AND Dimission=1"); if (staffs.Count > 1) staffs = Org_StaffBLL.GetStaffList("StaffCode='" + dt_Retailer.Rows[i]["销售代表工号"].ToString().Trim() + "' AND Dimission=1 AND RealName='" + dt_Retailer.Rows[i]["销售代表"].ToString().Trim() + "'"); if (staffs.Count == 0) { _xhs_rt_fail2.Append(XH + ","); bsuccess = false; //UpdateImportFlag(3, i, "导入失败,销售代表在员工中不存在!"); //continue; } else if (staffs.Count > 1) { _xhs_rt_fail2.Append(XH + ","); bsuccess = false; //UpdateImportFlag(3, i, "导入失败,销售代表在员工中有多个相同姓名的员工!"); //continue; } else { client.Model["ClientManager"] = staffs[0]["ID"]; } } #endregion #region 送货经销商编号 IList<CM_Client> clients = CM_ClientBLL.GetModelList("Code='" + dt_Retailer.Rows[i]["送货经销商编号"].ToString().Trim() + "'"); if (clients.Count == 0) { _xhs_rt_fail1.Append(XH + ","); bsuccess = false; //UpdateImportFlag(3, i, "导入失败,送货经销商编号在客户中不存在!"); //continue; } else if (clients.Count > 1) { _xhs_rt_fail1.Append(XH + ","); bsuccess = false; //UpdateImportFlag(3, i, "导入失败,送货经销商编号在客户中有多个相同编号的客户!"); //continue; } else { client.Model["Supplier"] = clients[0]["ID"]; } #endregion client.Model["Salesroom"] = dt_Retailer.Rows[i]["奶粉月容量"].ToString().Trim(); client.Model["BusinessArea"] = dt_Retailer.Rows[i]["卖场面积"].ToString().Trim(); client.Model["BankName"] = dt_Retailer.Rows[i]["开户行全称"].ToString().Trim(); client.Model["AccountName"] = dt_Retailer.Rows[i]["开户名"].ToString().Trim(); client.Model["BankAccountNo"] = dt_Retailer.Rows[i]["卡账号"].ToString().Trim(); //活跃状态 client.Model["ActiveFlag"] = "1"; client.Model.ApproveFlag = 1; int iret = client.Add(); if (iret > 0) { if (bsuccess) _xhs_success.Append(XH + ","); if (_xhs_success.Length >= 10000) { UpdateSuccess(_xhs_success.ToString(), 3); UpdateFail1(_xhs_rt_fail1.ToString()); UpdateFail2(_xhs_rt_fail2.ToString()); _xhs_success = new StringBuilder(""); _xhs_rt_fail1 = new StringBuilder(""); _xhs_rt_fail2 = new StringBuilder(""); } //UpdateImportFlag(3, i, "导入成功,ID=" + iret.ToString()); } else { UpdateImportFlag(3, i, "导入失败,写入数据库失败!"); continue; } #region 加入联系人 CM_LinkManBLL linkman = new CM_LinkManBLL(); linkman.Model.ClientID = iret; //门店联系人 linkman.Model["Name"] = dt_Retailer.Rows[i]["门店联系人"].ToString().Trim(); if (linkman.Model["Name"] == "") linkman.Model.Name = "无"; //联系人职务 #region 联系人职务 if (dt_Retailer.Rows[i]["联系人职务"].ToString().Trim() != "") { bFind = false; foreach (Dictionary_Data item in DictionaryBLL.GetDicCollections("CM_LinkManJob").Values) { if (item.Name == dt_Retailer.Rows[i]["联系人职务"].ToString().Trim()) { linkman.Model["Job"] = item.Code; bFind = true; break; } } } #endregion //联系人固定电话 linkman.Model["OfficeTeleNum"] = dt_Retailer.Rows[i]["联系人固定电话"].ToString().Trim(); //联系人手机 linkman.Model["Mobile"] = dt_Retailer.Rows[i]["联系人手机"].ToString().Trim(); if (linkman.Model.Name == "无" && linkman.Model["OfficeTeleNum"] == "" && linkman.Model["Mobile"] == "") { } else { iret = linkman.Add(); if (iret > 0) { client.Model["ChiefLinkMan"] = iret.ToString(); client.Update(); } } #endregion } UpdateSuccess(_xhs_success.ToString(), 3); UpdateFail1(_xhs_rt_fail1.ToString()); UpdateFail2(_xhs_rt_fail2.ToString()); } } catch (System.Exception err) { UpdateSuccess(_xhs_success.ToString(), 3); UpdateFail1(_xhs_rt_fail1.ToString()); UpdateFail2(_xhs_rt_fail2.ToString()); MessageBox.Show(err.Source + "~r~n" + err.StackTrace, err.Message); } #endregion Thread.Sleep(1000); #region 导入促销员 try { if (checkBox4.Checked) { lb_Count.Text = dt_Promotor.Rows.Count.ToString(); tabControl1.SelectedIndex = 3; XH = ""; for (int i = 0; i < dt_Promotor.Rows.Count; i++) { worker.ReportProgress((i + 1) * 100 / this.dt_Promotor.Rows.Count, i); if (worker.CancellationPending) { e.Cancel = true; break; } XH = dt_Promotor.Rows[i]["序号"].ToString(); PM_PromotorBLL promotor = new PM_PromotorBLL(); //序号 promotor.Model["Code"] = dt_Promotor.Rows[i]["导购编号"].ToString().Trim(); //判断数据是否重复 int promotorid = 0; if (PM_PromotorBLL.GetModelList("Code = '" + promotor.Model["Code"] + "'").Count == 0) { #region 导入促销员资料 //姓名 promotor.Model["Name"] = dt_Promotor.Rows[i]["姓名"].ToString().Trim(); //管理片区代码 DataRow[] rows_OrganizeCity = dt_OrganizeCity.Select("Code='" + dt_Promotor.Rows[i]["管理片区代码"].ToString().Trim() + "'"); if (rows_OrganizeCity.Length == 0) { UpdateImportFlag(4, i, "导入失败,管理片区代码在系统字典中不存在!"); continue; } else promotor.Model["OrganizeCity"] = rows_OrganizeCity[0]["ID"].ToString().Trim(); //联系电话 promotor.Model["TeleNum"] = dt_Promotor.Rows[i]["联系电话"].ToString().Trim(); if (promotor.Model["TeleNum"] == "") { promotor.Model["TeleNum"] = dt_Promotor.Rows[i]["手机"].ToString().Trim(); } //手机 promotor.Model["Mobile"] = dt_Promotor.Rows[i]["手机"].ToString().Trim(); if (promotor.Model["Mobile"] == "" && promotor.Model["TeleNum"].StartsWith("1")) promotor.Model["Mobile"] = promotor.Model["TeleNum"]; #region 所在城市 string cityname = dt_Promotor.Rows[i]["城市"].ToString().Trim(); string areaname = dt_Promotor.Rows[i]["县城"].ToString().Trim(); string townname = dt_Promotor.Rows[i]["乡镇"].ToString().Trim(); if (townname != "") { DataRow[] rows_OfficialCity = dt_OfficialCity.Select("Name like '" + townname + "%'"); if (rows_OfficialCity.Length == 1) promotor.Model.OfficialCity = int.Parse(rows_OfficialCity[0]["ID"].ToString().Trim()); } if (areaname != "" && promotor.Model.OfficialCity == 0) { DataRow[] rows_OfficialCity = dt_OfficialCity.Select("Name like '" + areaname + "%'"); if (rows_OfficialCity.Length == 1) promotor.Model.OfficialCity = int.Parse(rows_OfficialCity[0]["ID"].ToString().Trim()); } if (cityname != "" && promotor.Model.OfficialCity == 0) { DataRow[] rows_OfficialCity = dt_OfficialCity.Select("Name like '" + cityname + "%'"); if (rows_OfficialCity.Length > 0) promotor.Model.OfficialCity = int.Parse(rows_OfficialCity[0]["ID"].ToString().Trim()); } if (promotor.Model["TeleNum"] != "" && promotor.Model.OfficialCity == 0) { Addr_OfficialCity city = null; city = Addr_OfficialCityBLL.GetCityByTeleNumOrPostCode(promotor.Model["TeleNum"]); if (city != null) promotor.Model.OfficialCity = city.ID; } if (promotor.Model.OfficialCity == 0) { UpdateImportFlag(4, i, "导入失败,城市在系统字典中不存在!"); continue; } #endregion //性别 if (dt_Promotor.Rows[i]["性别"].ToString().Trim() != "") { bFind = false; foreach (Dictionary_Data item in DictionaryBLL.GetDicCollections("PUB_Sex").Values) { if (item.Name == dt_Promotor.Rows[i]["性别"].ToString().Trim()) { promotor.Model["Sex"] = item.Code; bFind = true; break; } } if (!bFind) { UpdateImportFlag(4, i, "导入失败,性别在系统字典中不存在!"); continue; } } //分类 if (dt_Promotor.Rows[i]["分类"].ToString().Trim() != "") { bFind = false; foreach (Dictionary_Data item in DictionaryBLL.GetDicCollections("PM_PromotorClassify").Values) { if (item.Name == dt_Promotor.Rows[i]["分类"].ToString().Trim()) { promotor.Model["Classfiy"] = item.Code; bFind = true; break; } } if (!bFind) { UpdateImportFlag(4, i, "导入失败,分类在系统字典中不存在!"); continue; } } //家庭地址 promotor.Model["Address"] = dt_Promotor.Rows[i]["家庭地址"].ToString().Trim(); //身份证号 promotor.Model["IDCode"] = dt_Promotor.Rows[i]["身份证号"].ToString().Trim(); //上岗时间 if (dt_Promotor.Rows[i]["上岗时间"].ToString().Trim() != "") promotor.Model["BeginWorkDate"] = dt_Promotor.Rows[i]["上岗时间"].ToString().Trim(); //离岗时间 if (dt_Promotor.Rows[i]["离岗时间"].ToString().Trim() != "") promotor.Model["EndWorkDate"] = dt_Promotor.Rows[i]["离岗时间"].ToString().Trim(); //银行类别 promotor.Model["BankName"] = dt_Promotor.Rows[i]["银行类别"].ToString().Trim(); //工资卡号 promotor.Model["BankAccount"] = dt_Promotor.Rows[i]["工资卡号"].ToString().Trim(); //在职标志 promotor.Model["Dimission"] = "1"; promotor.Model.ApproveFlag = 1; promotorid = promotor.Add(); if (promotorid > 0) { _xhs_success.Append(XH + ","); //UpdateImportFlag(4, i, "导入成功,ID=" + iret.ToString()); } else { UpdateImportFlag(4, i, "导入失败,写入数据库失败!"); continue; } #endregion } else { promotorid = PM_PromotorBLL.GetModelList("Code = '" + promotor.Model["Code"] + "'")[0].ID; } #region 促销员所在门店 //门店编号 string rtcodes = dt_Promotor.Rows[i]["门店编号"].ToString().Trim(); if (rtcodes != "") { char[] sep = { ',' }; string[] codes = rtcodes.Split(sep); foreach (string c in codes) { if (string.IsNullOrEmpty(c)) continue; //if (c.IndexOf('-') > 0) //{ // char[] sep2 = { '-' }; // string[] codes2 = c.Split(sep2); // if (codes2.Length == 2) // { // int begincode, endcode; // if (int.TryParse(codes2[0], out begincode) && int.TryParse(codes2[1], out endcode)) // { // for (int codexh = begincode; codexh <= endcode; codexh++) // { // string code = FormatClientCode('R', codexh.ToString(), dt_Promotor.Rows[i]["管理片区代码"].ToString().Trim()); // IList<CM_Client> clients = CM_ClientBLL.GetModelList("Code='" + code + "' AND ClientType = 3"); // if (clients.Count == 1) // { // PM_PromotorInRetailerBLL pinr = new PM_PromotorInRetailerBLL(); // pinr.Model.Promotor = promotorid; // pinr.Model.Client = clients[0].ID; // pinr.Add(); // } // else // break; // } // } // } // else // { // string xhs = _xhs_success.ToString(); // if (xhs.EndsWith(",")) // { // xhs = xhs.Substring(0, xhs.Length - 1); // xhs = xhs.Substring(0, xhs.LastIndexOf(',') + 1); // _xhs_success.Remove(0, _xhs_success.Length); // _xhs_success.Append(xhs); // } // UpdateImportFlag(4, i, "导入成功,ID=" + promotorid.ToString() + ",关联所在门店失败!"); // break; // } //} //else { string code = c; IList<CM_Client> clients = CM_ClientBLL.GetModelList("Code='" + code + "' AND ClientType = 3"); if (clients.Count == 1) { PM_PromotorInRetailerBLL pinr = new PM_PromotorInRetailerBLL(); pinr.Model.Promotor = promotorid; pinr.Model.Client = clients[0].ID; pinr.Add(); } else { string xhs = _xhs_success.ToString(); if (xhs.EndsWith(",")) { xhs = xhs.Substring(0, xhs.Length - 1); xhs = xhs.Substring(0, xhs.LastIndexOf(',') + 1); _xhs_success.Remove(0, _xhs_success.Length); _xhs_success.Append(xhs); } UpdateImportFlag(4, i, "导入成功,ID=" + promotorid.ToString() + ",关联所在门店失败!"); break; } } } } #endregion } UpdateSuccess(_xhs_success.ToString(), 4); } } catch (System.Exception err) { UpdateSuccess(_xhs_success.ToString(), 1); MessageBox.Show(err.Source + "~r~n" + err.StackTrace, err.Message); } #endregion return; }