示例#1
0
        /// <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("");
        }
示例#2
0
文件: HmjTest.cs 项目: Thn123/hmj
        /// <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);
        }
示例#3
0
        /// <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);
                }
            }
        }
示例#4
0
文件: WebApiHelp.cs 项目: Thn123/hmj
        /// <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);
            }
        }
示例#5
0
        /// <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);
        }
示例#6
0
        /// <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");
            }
        }
示例#7
0
        /// <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");
        }