private static void SetBGIDAndSCID(CustBussiness info) { string bgid = ""; string scid = ""; string errormsg = ""; BLL.Util.GetBIGDSCID_UserID(info.CreateUserID, info.BGID, info.SCID, out bgid, out scid, out errormsg); if (string.IsNullOrEmpty(errormsg) && (!string.IsNullOrEmpty(bgid) && !string.IsNullOrEmpty(scid))) { info.BGID = bgid; info.SCID = scid; } else { BLL.Loger.Log4Net.Info(errormsg); } }
private void UpdateBusinessDataByCallID(CustBussiness info) { long callID = long.Parse(info.CallID); int BGID = int.Parse(info.BGID); int SCID = int.Parse(info.SCID); int createuserid = int.Parse(info.CreateUserID); //查询现在表 if (BLL.CallRecord_ORIG_Business.Instance.IsExistsByCallID(callID)) { BLL.Loger.Log4Net.Info("在系统中已经存在业务数据,更新!callID=" + callID); //外呼时要记录当前坐席所属业务组 //初始化是新建记录,但在业务操作页,最后保存时需更新记录 BLL.Loger.Log4Net.Info("准备更新数据:"); Entities.CallRecord_ORIG_Business model = new CallRecord_ORIG_Business(); model.CallID = callID; model.BGID = BGID; model.SCID = SCID; model.BusinessID = info.BusinessID; model.CreateUserID = createuserid; model.CreateTime = DateTime.Now; int recID = BLL.CallRecord_ORIG_Business.Instance.Update(model); BLL.Loger.Log4Net.Info("更新完毕:"); } else { BLL.Loger.Log4Net.Info("准备插入数据:"); Entities.CallRecord_ORIG_Business model = new CallRecord_ORIG_Business(); model.CallID = callID; model.BGID = BGID; model.SCID = SCID; model.BusinessID = info.BusinessID; model.CreateUserID = createuserid; model.CreateTime = DateTime.Now; int recID = BLL.CallRecord_ORIG_Business.Instance.Insert(model); model.RecID = recID; string descMsg = string.Empty; BitAuto.ISDC.CC2012.BLL.GetLogDesc.getAddLogInfo(model, out descMsg); BLL.Loger.Log4Net.Info(descMsg); BLL.Loger.Log4Net.Info("插入完毕:"); } }
private EnumResult VefiyCustData(CustBussiness info, out Entities.CallRecord_ORIG orig, out BitAuto.YanFa.Crm2009.Entities.DMSMember member) { orig = null; member = null; if (string.IsNullOrEmpty(info.CustName)) { return(EnumResult.CustNameEmpty); } int sex = 0; if (info.Sex != string.Empty && !int.TryParse(info.Sex, out sex)) { return(EnumResult.SexPatternError); } else if (info.Sex == string.Empty) { info.Sex = "1"; } else if (sex > 2 || sex < 1) { return(EnumResult.SexPatternError); } if (info.Tels == null) { return(EnumResult.CustTelEmpty); } else if (info.Tels.Length == 0) { return(EnumResult.CustTelEmpty); } else if (info.Tels.Length > 2) { return(EnumResult.CustTelPatternError); } //Regex reTel = new Regex(@"(^0[0-9]{2,3}[0-9]{7,8}$)|(^13[0-9]{9}$)|(^15[0-9]{9}$)|(^18[0-9]{9}$)|(^19[0-9]{9}$)|(^14[0-9]{9}$)|(^400\d{7}$)"); foreach (string str in info.Tels) { if (!BLL.Util.IsTelephoneAnd400Tel(str)) { return(EnumResult.CustTelPatternError); } } int temp = 0; long templong = 0; if (string.IsNullOrEmpty(info.CallID)) { return(EnumResult.CallIDEmpty); } else if (!long.TryParse(info.CallID, out templong)) { return(EnumResult.CallIDPatternError); } else { orig = BLL.CallRecord_ORIG.Instance.GetCallRecord_ORIGByCallID(long.Parse(info.CallID)); if (orig == null) { return(EnumResult.CallIDNotExist); } else { info.CreateUserID = orig.CreateUserID.ToString(); } } if (string.IsNullOrEmpty(info.BusinessID)) { return(EnumResult.BusinessIDEmpty); } if (string.IsNullOrEmpty(info.BGID)) { return(EnumResult.BGIDEmpty); } if (!int.TryParse(info.BGID, out temp)) { return(EnumResult.BGIDPatternError); } if (string.IsNullOrEmpty(info.SCID)) { return(EnumResult.SCIDEmpty); } if (!int.TryParse(info.SCID, out temp)) { return(EnumResult.SCIDPatternError); } if (!string.IsNullOrEmpty(info.MemberCode)) { member = BitAuto.YanFa.Crm2009.BLL.DMSMember.Instance.GetDMSMemberByMemberCode(info.MemberCode); if (member == null) { return(EnumResult.MemberCodeError); } } return(EnumResult.Success); }
public EnumResult InsertCustData(string Verifycode, string jsonDataStr) { BLL.Loger.Log4Net.Info("准备验证:"); string msg = string.Empty; if (BLL.CallRecord_ORIG_Authorizer.Instance.Verify(Verifycode, 0, ref msg, "插入话务与任务关联数据,授权失败。")) { BLL.Loger.Log4Net.Info("验证通过"); JavaScriptSerializer serializer = new JavaScriptSerializer(); CustBussiness info = null; try { BLL.Loger.Log4Net.Info("Json串:" + jsonDataStr); info = serializer.Deserialize <CustBussiness>(jsonDataStr); BLL.Loger.Log4Net.Info("Json格式转换成功"); } catch (Exception ex) { BLL.Loger.Log4Net.Info("Json格式转换失败,失败原因:" + ex.Message); return(EnumResult.JsonPatternError); } Entities.CallRecord_ORIG orig; BitAuto.YanFa.Crm2009.Entities.DMSMember member; EnumResult vefiyResult = VefiyCustData(info, out orig, out member); if (vefiyResult == EnumResult.Success) { try { //0 获取分组分类 SetBGIDAndSCID(info); //1 插入个人信息表 string custId = string.Empty; string errMsg = string.Empty; int custCategory = 4; if (!string.IsNullOrEmpty(info.MemberCode)) { //3-经销商;4-个人 custCategory = 3; } if (BLL.CustBasicInfo.Instance.InsertCustInfo(info.CustName, info.Tels, CommonFunction.ObjectToInteger(info.Sex), (int)orig.CreateUserID, custCategory, null, null, out errMsg, out custId)) { BLL.Loger.Log4Net.Info("插入客户成功"); //删除经销商 BLL.DealerInfo.Instance.Delete(custId); if (!string.IsNullOrEmpty(info.MemberCode)) { //插入 Entities.DealerInfo model_Dealer = new Entities.DealerInfo(); model_Dealer.CustID = custId; model_Dealer.MemberCode = info.MemberCode; model_Dealer.Name = member.Name; model_Dealer.Status = 0; model_Dealer.CreateTime = DateTime.Now; model_Dealer.CreateUserID = (int)orig.CreateUserID; BLL.DealerInfo.Instance.Insert(model_Dealer); BLL.Loger.Log4Net.Info("插入经销商信息成功"); } //2 插入访问记录 string tel = BLL.Util.HaoMaProcess(orig.ANI); long callid = CommonFunction.ObjectToLong(info.CallID, -2); int businesstype = (int)VisitBusinessTypeEnum.S0_其他系统; int tasksource = orig.CallStatus == 2 ? 2 : 1; BitAuto.ISDC.CC2012.Web.AjaxServers.CustBaseInfo.OperPopCustBasicInfo.OperCustVisitBusiness(custId, info.BusinessID, callid, businesstype, tasksource, (int)orig.CreateUserID, tel); //3 插入话务业务表 UpdateBusinessDataByCallID(info); //插入来去电表 CallRecordInfoInfo recordInfo = new CallRecordInfoInfo(); recordInfo.CallID = long.Parse(info.CallID); recordInfo.SCID = int.Parse(info.SCID); recordInfo.TaskID = info.BusinessID; recordInfo.TaskTypeID = (int)ProjectSource.None; recordInfo.BGID = int.Parse(info.BGID); recordInfo.CustID = custId; recordInfo.CustName = info.CustName; recordInfo.Contact = info.CustName; long recId = 0; BLL.CallRecordInfo.Instance.InsertCallRecordInfoToHuiMaiChe(recordInfo, orig, out recId); return(EnumResult.Success); } else { return(EnumResult.Fail); } } catch (Exception ex) { BLL.Loger.Log4Net.Error("【插入客户信息+话务】", ex); return(EnumResult.Fail); } } else { BLL.Loger.Log4Net.Info("Json验证失败:msg=" + vefiyResult.ToString()); return(vefiyResult); } } else { BLL.Loger.Log4Net.Info("验证失败!msg=" + msg); return(EnumResult.VerifyError); } }