/// <summary> /// 发送积分 /// </summary> /// <param name="mobile"></param> /// <returns></returns> public string SendPiod(string mobile, string piont) { dt_Dyn_ActCreateTel_req Actreq = new dt_Dyn_ActCreateTel_req(); // 数据源类型 Actreq.TYPE = "0002"; //处理标识 Actreq.OBJECT_ID = DateTime.Now.ToString("yyyyMMddHHmmss") + CommonHelp.GetRand(10);; //活动单据类型 Actreq.PROCESS_TYPE = "ZXY"; //外部会员卡号 "会员卡号(如已传输手机号,可不用填写会员卡号)" Actreq.ACCOUNT_ID = mobile; Actreq.POSTING_DATE = DateTime.Today.ToString(); //积分类型 Actreq.POINT_TYPE = "ZBCJF01"; //积分数 要改 Actreq.POINTS = decimal.Parse(piont); //单据全局活动ID Actreq.CAMPAIGN_HE_ID = "C-00001786"; Actreq.LOYALTY_BRAND = AppConfig.LOYALTY_BRAND; //忠诚度品牌 Actreq.SOURCE_SYSTEM = AppConfig.SOURCE_SYSTEM; //来源系统 Actreq.VGROUP = AppConfig.VGROUP; //销售组织 dt_Dyn_ActCreateTel_res Actres = WebApiHelp.ActCreateTel(Actreq); return(""); }
/// <summary> /// 积分增减 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void button12_Click(object sender, EventArgs e) { //如果注册会员成功送积分 //si_Dyn_ActCreateTel_obService == si_ActCreateTel_obService dt_Dyn_ActCreateTel_req Actreq = new dt_Dyn_ActCreateTel_req(); // 数据源类型 Actreq.TYPE = "0000"; //处理标识 Actreq.OBJECT_ID = DateTime.Now.ToString("yyyyMMddHHmmss") + CommonHelp.GetRand(10); //活动单据类型 Actreq.PROCESS_TYPE = "ZXY"; //外部会员卡号 "会员卡号(如已传输手机号,可不用填写会员卡号)" Actreq.ACCOUNT_ID = "18952435467"; Actreq.POSTING_DATE = DateTime.Today.ToString(); //积分类型 Actreq.POINT_TYPE = "ZHMJF01"; //积分数 要改 Actreq.POINTS = -1; //单据全局活动ID //Actreq.CAMPAIGN_HE_ID = "CMP2820171023005"; Actreq.CAMPAIGN_HE_ID = ""; Actreq.LOYALTY_BRAND = AppConfig.LOYALTY_BRAND; //忠诚度品牌 Actreq.SOURCE_SYSTEM = AppConfig.SOURCE_SYSTEM; //来源系统 Actreq.VGROUP = AppConfig.VGROUP; //销售组织 dt_Dyn_ActCreateTel_res Actres = WebHmjApiHelp.ActCreateTel(Actreq, true); }
/// <summary> /// 积分加减接口 /// </summary> /// <param name="req"></param> /// <returns></returns> public static dt_Dyn_ActCreateTel_res ActCreateTel(dt_Dyn_ActCreateTel_req req, bool isdebug = false) { string reqStr = js.Serialize(req); string resStr = string.Empty; DateTime?timeStart = null; DateTime?timeEnd = null; string isok = "OK"; try { timeStart = DateTime.Now; logger.Info("积分加减接口si_Dyn_ActCreateTel_obService请求信息:" + reqStr); si_Dyn_ActCreateTel_obService web = new si_Dyn_ActCreateTel_obService(); dt_Dyn_ActCreateTel_res res = web.si_ActCreateTel_ob(req); resStr = js.Serialize(res); timeEnd = DateTime.Now; logger.Info("响应信息" + resStr + "\r\n"); if (res == null) { isok = "NO"; } return(res); } catch (Exception ex) { resStr = ex.Message; isok = "NO"; return(null); } finally { if (!isdebug) { datalog.DataInfo(reqStr, resStr, timeStart, timeEnd, 0, SystemCode.ActCreateTel.ToString(), isok); } } }
/// <summary> /// 积分加减接口 /// </summary> /// <param name="req"></param> /// <returns></returns> public static dt_Dyn_ActCreateTel_res ActCreateTel(dt_Dyn_ActCreateTel_req req) { try { string reqStr = js.Serialize(req); DateTime timeStart = DateTime.Now; logger.Info("积分加减接口si_Dyn_ActCreateTel_obService请求信息:" + reqStr); si_Dyn_ActCreateTel_obService web = new si_Dyn_ActCreateTel_obService(); dt_Dyn_ActCreateTel_res res = web.si_ActCreateTel_ob(req); string resStr = js.Serialize(res); DateTime timeEnd = DateTime.Now; logger.Info("响应信息" + resStr + "\r\n"); datalog.DataInfo(reqStr, resStr, timeStart, timeEnd, 0, "si_Dyn_ActCreateTel_obService", "积分加减接口"); return(res); } catch (Exception ex) { throw new Exception(ex.Message); } }
/// <summary> /// 减少或者增加积分 /// </summary> /// <param name="mobile"></param> /// <returns></returns> public string ReduceOrAddPiod(string mobile, string piont, string type) { string pont_type = "ZXY"; if (type == "reduce") { pont_type = "PRODUCT_REDEEM"; } if (type == "add") { pont_type = "ZXY"; } dt_Dyn_ActCreateTel_req Actreq = new dt_Dyn_ActCreateTel_req(); // 数据源类型 Actreq.TYPE = "0002"; //处理标识 Actreq.OBJECT_ID = DateTime.Now.ToString("yyyyMMddHHmmss") + CommonHelp.GetRand(10);; //活动单据类型 Actreq.PROCESS_TYPE = pont_type; //外部会员卡号 "会员卡号(如已传输手机号,可不用填写会员卡号)" Actreq.ACCOUNT_ID = mobile; Actreq.POSTING_DATE = DateTime.Today.ToString(); //积分类型 Actreq.POINT_TYPE = "ZBCJF01"; //积分数 要改 Actreq.POINTS = decimal.Parse(piont); //单据全局活动ID Actreq.CAMPAIGN_HE_ID = "C-00001786"; Actreq.LOYALTY_BRAND = AppConfig.LOYALTY_BRAND; //忠诚度品牌 Actreq.SOURCE_SYSTEM = AppConfig.SOURCE_SYSTEM; //来源系统 Actreq.VGROUP = AppConfig.VGROUP; //销售组织 dt_Dyn_ActCreateTel_res Actres = WebApiHelp.ActCreateTel(Actreq); #region 查询会员详情 dt_Dyn_DispMember_req w = new dt_Dyn_DispMember_req(); w.DATA_SOURCE = "0002"; w.LOYALTY_BRAND = AppConfig.LOYALTY_BRAND; //忠诚度品牌 w.SOURCE_SYSTEM = AppConfig.SOURCE_SYSTEM; //来源系统 w.VGROUP = AppConfig.VGROUP; //销售组织 w.MOB_NUMBER = mobile; //2002652891 dt_Dyn_DispMember_res dt = WebApiHelp.DispMember(w); if (dt.ZCRMT316 == null || dt.ZCRMT316.Count() <= 0) { return("未查询到该会员"); } if (dt.ZCRMT316.Count() > 1) { return("查到多条该信息,请联系开发"); } #endregion ZCRMT302_Dyn meber = dt.ZCRMT316[0]; return(meber.PARTNER); }
/// <summary> /// 绑定会员 /// </summary> /// <param name="mobile"></param> /// <returns></returns> public string BindMember(string mobile, string openid, string Nickname) { using (TransScope scope = new TransScope()) { WXCUST_FANS fans = _repo.GetFans(openid); if (fans == null) { return("3"); } CUST_MEMBER member = _repo.GetMemberByMobile(mobile, fans.ID); if (member != null) { return("2"); } #region 记录会员 dt_Dyn_DispMember_req w = new dt_Dyn_DispMember_req(); w.DATA_SOURCE = "0002"; w.LOYALTY_BRAND = AppConfig.LOYALTY_BRAND; //忠诚度品牌 w.SOURCE_SYSTEM = AppConfig.SOURCE_SYSTEM; //来源系统 w.VGROUP = AppConfig.VGROUP; //销售组织 w.MOB_NUMBER = mobile; //2002652891 dt_Dyn_DispMember_res dt = WebApiHelp.DispMember(w); if (dt.ZCRMT316 == null || dt.ZCRMT316.Count() <= 0) { return("4"); } if (dt.ZCRMT316.Count() > 1) { return("5"); } ZCRMT302_Dyn meber = dt.ZCRMT316[0]; CUST_MEMBER mebers = new CUST_MEMBER() { ADDRESS = meber.PSTREET, AVA_POINTS = (int?)meber.ZCCUR_POINT, BIRTHDAY = string.IsNullOrEmpty(meber.BIRTHDT) ? null : (DateTime?)DateTime.Parse(meber.BIRTHDT), CITY = "", COUNTRY = "", CREATE_DATE = DateTime.Now, CREATE_USER = "******", EMAIL = meber.CSMTP_ADDR, FANS_ID = fans.ID, GENDER = meber.XSEX == "2" ? true : false, MEMBERNO = meber.ACCOUNT_ID, MEM_LEVEL = meber.ZTIER, MOBILE = mobile, STATUS = 1, STORE = meber.ZH003, NAME = meber.NAME1_TEXT, PARTNER = meber.PARTNER, TYPE = meber.DATA_SOURCE == "0001" ? 0 : 1 }; double counts = _repo.Insert(mebers); #endregion //如果绑定成功需要告诉crm已经绑定 if (counts > 0) { //绑定接口 dt_Dyn_UpdateMemberShip_req updates = new dt_Dyn_UpdateMemberShip_req(); ZCRMT322_Dyn z = new ZCRMT322_Dyn(); z.DATA_SOURCE = "0002"; z.LOYALTY_BRAND = AppConfig.LOYALTY_BRAND; //忠诚度品牌 z.SOURCE_SYSTEM = AppConfig.SOURCE_SYSTEM; //来源系统 z.VGROUP = AppConfig.VGROUP; //销售组织 z.WECHATNAME = Nickname; z.WECHATFOLLOWSTATUS = "1"; z.OPENID = openid; z.ACCOUNT_ID = dt.ZCRMT316[0].ACCOUNT_ID; z.PARTNER = dt.ZCRMT316[0].PARTNER; updates.ZCRMT316 = new ZCRMT322_Dyn[] { z }; dt_Dyn_UpdateMemberShip_res ups = WebApiHelp.UpdateMemberShip(updates); //如果是待激活状态那么就要激活 if (meber.ZZAFLD000004 == "E0005") { //激活 this.ChageSatus(meber.ACCOUNT_ID); } //绑定成功送三百积分 if (fans.IS_REGISTER == null || fans.IS_REGISTER == 0) { #region 注册送积分 //如果注册会员成功送积分 //si_Dyn_ActCreateTel_obService == si_ActCreateTel_obService dt_Dyn_ActCreateTel_req Actreq = new dt_Dyn_ActCreateTel_req(); // 数据源类型 Actreq.TYPE = "0002"; //处理标识 Actreq.OBJECT_ID = DateTime.Now.ToString("yyyyMMddHHmmss") + CommonHelp.GetRand(10); //活动单据类型 Actreq.PROCESS_TYPE = "ZXY"; //外部会员卡号 "会员卡号(如已传输手机号,可不用填写会员卡号)" Actreq.ACCOUNT_ID = meber.ACCOUNT_ID; Actreq.POSTING_DATE = DateTime.Today.ToString(); //积分类型 Actreq.POINT_TYPE = "ZBCJF01"; //积分数 要改 Actreq.POINTS = decimal.Parse(AppConfig.POINTS); //单据全局活动ID Actreq.CAMPAIGN_HE_ID = "CMP2820171023005"; Actreq.LOYALTY_BRAND = AppConfig.LOYALTY_BRAND; //忠诚度品牌 Actreq.SOURCE_SYSTEM = AppConfig.SOURCE_SYSTEM; //来源系统 Actreq.VGROUP = AppConfig.VGROUP; //销售组织 dt_Dyn_ActCreateTel_res Actres = WebApiHelp.ActCreateTel(Actreq); string remak = string.Empty; if (Actres.I_ZCRMT047_dyn[0].CHECK_FLAG == "N") { remak = "新注册会员送积分失败,原因:" + Actres.I_ZCRMT047_dyn[0].MESSAGE; } #endregion string str = _repo.UpdateIsRegion(fans.ID); } } scope.Commit(); return("1"); } }
/// <summary> /// 注册会员 /// </summary> /// <param name="mobile"></param> /// <param name="openid"></param> /// <param name="nameo"></param> /// <param name="namek"></param> /// <returns></returns> public string RegisterMember(string mobile, string openid, string nameo, string namek, string brithday, string nickname, string gender) { WXCUST_FANS fans = _repo.GetFans(openid); //没有该粉丝 if (fans == null) { return("-1"); } #region 调用接口通知crm创建会员 dt_Dyn_UploadMemberShip_req req = new dt_Dyn_UploadMemberShip_req(); ZCRMT316_Dyn meber = new ZCRMT316_Dyn(); meber.MOB_NUMBER = mobile; meber.OPENID = openid; meber.NAME1_TEXT = nameo + namek;//全名 meber.DATA_SOURCE = "0002"; meber.ACCOUNT_ID = mobile; meber.NAME_LAST = nameo; meber.NAME_FIRST = namek; meber.XSEX = gender == "1" ? "2" : "1"; meber.REGION = ""; meber.BIRTHDT = brithday; meber.NAMCOUNTRY = "CN"; meber.WECHATNAME = nickname; meber.WECHATFOLLOWSTATUS = "1"; //meber.LOGINPASS2 = "111111";//兑换密码默认123456 meber.LOYALTY_BRAND = AppConfig.LOYALTY_BRAND; //忠诚度品牌 meber.SOURCE_SYSTEM = AppConfig.SOURCE_SYSTEM; //来源系统 meber.VGROUP = AppConfig.VGROUP; //销售组织 //固定死 meber.EMPID = AppConfig.EMPID; meber.DEPTID = AppConfig.DEPTID; req.ZCRMT316 = new ZCRMT316_Dyn[] { meber }; //创建会员 dt_Dyn_UploadMemberShip_res res = WebApiHelp.CreateMemberShip(req); #endregion if (res.WV_RETURN == "N") { return(res.WV_MESSAGE); } //创建成功 if (res.WV_RETURN == "Y") { //创建本地会员 CUST_MEMBER member = new CUST_MEMBER() { BIRTHDAY = DateTime.Parse(brithday), FANS_ID = fans.ID, MEMBERNO = res.ACCOUNT_ID, MOBILE = mobile, NAME = nameo + namek, STATUS = 1, STORE = AppConfig.DEPTID, TYPE = 0, //LOGINPASSON = "111111", CREATE_DATE = DateTime.Now, AVA_POINTS = 0, PARTNER = res.PARTNER, GENDER = false //REMARK = remak }; double counts = _repo.Insert(member); if (counts <= 0) { return($"请关掉页面并用手机号:{mobile},绑定!"); } else { #region 注册送积分 //如果注册会员成功送积分 //si_Dyn_ActCreateTel_obService == si_ActCreateTel_obService dt_Dyn_ActCreateTel_req Actreq = new dt_Dyn_ActCreateTel_req { // 数据源类型 TYPE = "0002", //处理标识 OBJECT_ID = DateTime.Now.ToString("yyyyMMddHHmmss") + CommonHelp.GetRand(10), //活动单据类型 PROCESS_TYPE = "ZXY", //外部会员卡号 "会员卡号(如已传输手机号,可不用填写会员卡号)" ACCOUNT_ID = res.ACCOUNT_ID, POSTING_DATE = DateTime.Today.ToString(), //积分类型 POINT_TYPE = "ZBCJF01", //积分数 要改 POINTS = decimal.Parse(AppConfig.POINTS), //单据全局活动ID CAMPAIGN_HE_ID = "C-00001786", LOYALTY_BRAND = AppConfig.LOYALTY_BRAND, //忠诚度品牌 SOURCE_SYSTEM = AppConfig.SOURCE_SYSTEM, //来源系统 VGROUP = AppConfig.VGROUP //销售组织 }; dt_Dyn_ActCreateTel_res Actres = WebApiHelp.ActCreateTel(Actreq); //if (Actres.I_ZCRMT047_dyn[0].CHECK_FLAG == "N") //{ // remak = "新注册会员送积分失败,原因:" + Actres.I_ZCRMT047_dyn[0].MESSAGE; //} #endregion #region 注册成功就要激活会员 ////如果是待激活状态那么就要激活 //dt_Dyn_ChangeMemberStatus_req reqs = new dt_Dyn_ChangeMemberStatus_req(); //reqs.DATA_SOURCE = "0002"; //reqs.ZVTWEG = "102"; ////req.STATUS_OLD = "E0000"; ////req.STATUS_NEW = "E0001"; //reqs.ACCOUNT_ID = meber.ACCOUNT_ID; //reqs.FLAG = "I";//激活 //reqs.LOYALTY_BRAND = AppConfig.LOYALTY_BRAND;//忠诚度品牌 //reqs.SOURCE_SYSTEM = AppConfig.SOURCE_SYSTEM;//来源系统 //reqs.VGROUP = AppConfig.VGROUP; //销售组织 //reqs.PASS_FLAG = "N"; //reqs.REASON = "激活"; //dt_Dyn_ChangeMemberStatus_res resok = WebApiHelp.ChangeMemberStatus(reqs); #endregion } } return("1"); }