/// <summary>
        /// 推送接口
        /// </summary>
        /// <param name="param">轨迹查询结果</param>
        /// <returns></returns>
        public ActionResult SavePushRecord(string param)
        {
            try
            {
                WriteInLog log = new WriteInLog();
                log.writeInLog("物流推送数据:" + param);
                Kd100Push           entity         = Newtonsoft.Json.JsonConvert.DeserializeObject <Kd100Push>(param);
                LastResult          dd             = entity.lastResult;
                TelphoneOrderEntity telOrderEntity = telphoneorderbll.GetEntityByNu(dd.nu);
                if (telOrderEntity != null)
                {
                    telOrderEntity.Sign       = int.Parse(dd.state);//0在途中、1已揽收、2疑难、3已签收、4退签、5同城派送中、6退回、7转单
                    telOrderEntity.ModifyDate = DateTime.Now;
                    telphoneorderbll.SaveStateForm(telOrderEntity.ID, telOrderEntity);
                }

                return(Content(new PushReturnMessage100 {
                    result = true, returnCode = "200", message = "成功"
                }.ToString()));
            }
            catch (Exception ex)
            {
                return(Content(new PushReturnMessage100 {
                    result = false, returnCode = "200", message = ex.Message
                }.ToString()));
            }
        }
Exemple #2
0
        public ActionResult SaveForm(string keyValue, TelphoneOrderEntity entity)
        {
            if (!string.IsNullOrEmpty(keyValue))
            {
                TelphoneOrderEntity oldentity = telphoneorderbll.GetEntity(keyValue);
                //老快递单号为空,新快递单号不为空,初次发货才请求快递接口
                if (!string.IsNullOrEmpty(entity.Numbers) && string.IsNullOrEmpty(oldentity.Numbers))
                {
                    kdn.orderTracesSubByJson(entity);//快递鸟免费接口,不传真实数据联系方式
                    entity.Sign = 0;
                }
            }
            else
            {
                //订阅接口
                if (!string.IsNullOrEmpty(entity.Numbers))
                {
                    //kd100.orderTracesSubByJson(entity.Express,entity.Numbers);
                    kdn.orderTracesSubByJson(entity);//快递鸟免费接口,不传真实数据联系方式
                    entity.Sign = 0;
                }
                entity.CheckMark = 1;//手动添加跳过审核,已审核状态
            }

            telphoneorderbll.SaveForm(keyValue, entity);
            return(Success("操作成功。"));
        }
Exemple #3
0
 /// <summary>
 /// 修改状态
 /// </summary>
 /// <param name="keyValue">主键值</param>
 /// <param name="entity">实体对象</param>
 /// <returns></returns>
 public void SaveStateForm(string keyValue, TelphoneOrderEntity entity)
 {
     try
     {
         service.SaveStateForm(keyValue, entity);
     }
     catch (Exception)
     {
         throw;
     }
 }
        /// <summary>
        /// 微信提醒
        /// </summary>
        public void SendToUser(TelphoneOrderEntity entity)
        {
            string url = "https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token=" + GetToken();

            string touser  = ConfigurationManager.AppSettings["touser"];
            string message = "{\"touser\":\"" + touser + "\"," +
                             "\"msgtype\":\"text\"," +
                             "\"text\": " +
                             "{\"content\":\"有客户提交了预约资料" +
                             "\n预约号码:" + entity.Telphone +
                             "\n客户名称:" + entity.Consignee +
                             "\n联系电话:" + entity.Contact +
                             "\n地址:" + entity.Pro + entity.City + entity.Area + entity.Address +
                             " \"} }";
            string str = GetResponseData(message, @url);
        }
        /// <summary>
        /// Json方式  物流信息订阅
        /// </summary>
        /// <returns></returns>
        public string orderTracesSubByJson(TelphoneOrderEntity entity)
        {
            string requestData = "{'OrderCode': 'SF201608081055208281'," +    //o订单编号
                                 "'ShipperCode':'" + entity.Express + "'," +  //r快递公司编码
                                 "'LogisticCode':'" + entity.Numbers + "'," + //r快递单号
                                 "'PayType':1," +                             //o邮费支付方式:1-现付,2-到付,3-月结,4-第三方支付
                                 "'ExpType':1," +                             //o快递类型:1-标准快件
                                 "'CustomerName':''," +                       //o电子面单客户账号(与快递网点申请)
                                 "'CustomerPwd':''," +                        //o电子面单密码
                                 "'MonthCode':''," +                          //o月结编号
                                 "'IsNotice':0," +                            //o是否通知快递员上门揽件:0-通知;1-不通知;默认为1
                                 "'Cost':1.0," +                              //o快递运费
                                 "'OtherCost':1.0," +                         //o其他费用
                                 "'Sender':" +                                //发件人
                                 "{" +                                        //+r发件人+r发件人手机+r省+r市+r县+r地址
                                 "'Name':'LV','Mobile':'15018442396','ProvinceName':'山东','CityName':'临沂','ExpAreaName':'兰山区','Address':'奥斯卡上品公馆'}," +
                                 "'Receiver':" +                              //收件人
                                 "{" +
                                 "'Name':'GCCUI','Mobile':'15018442396','ProvinceName':'北京','CityName':'北京','ExpAreaName':'朝阳区','Address':'三里屯街道雅秀大厦'}," +
                                 "'Commodity':" +
                                 "[{" +
                                 "'GoodsName':'鞋子','Goodsquantity':1,'GoodsWeight':1.0}]," +
                                 "'Weight':1.0," +
                                 "'Quantity':1," +
                                 "'Volume':0.0," +
                                 "'Remark':'小心轻放'}";

            Dictionary <string, string> param = new Dictionary <string, string>();

            param.Add("RequestData", HttpUtility.UrlEncode(requestData, Encoding.UTF8));
            param.Add("EBusinessID", EBusinessID);
            param.Add("RequestType", "1008");
            string dataSign = encrypt(requestData, AppKey, "UTF-8");

            param.Add("DataSign", HttpUtility.UrlEncode(dataSign, Encoding.UTF8));
            param.Add("DataType", "2");

            string result = sendPost(ReqURL, param);

            //根据公司业务处理返回的信息......

            return(result);
        }
        public ActionResult SaveForm(TelphoneOrderEntity entity, string smsCode)
        {
            //1.验证手机验证码是否有效,是否过期
            var sms = smsBll.GetList("{}").Where(t => t.Tel == entity.Contact && t.Type == (int)SmsType.号码预定).OrderByDescending(t => t.CreateDate).FirstOrDefault();

            if (sms != null)
            {
                ValidateSmsCode(sms, smsCode);

                string[] tels    = entity.Telphone.Split(',');
                string[] amounts = entity.PaidDate.ToString().Split(',');
                for (int i = 0; i < tels.Length; i++)
                {
                    entity.Telphone = tels[i];
                    entity.Amount   = Convert.ToDecimal(amounts[i]);

                    if (Request["keyValue"] == null)
                    {
                        entity.OrderCode = codeRuleBLL.GetBillCode("c576c3f7-631d-4108-baaf-1495bdc0d6bb");
                        //ViewBag.OrderCode = codeRuleBLL.GetBillCode(SystemInfo.CurrentUserId, "", ((int)CodeRuleEnum.Telphone_OrderCode).ToString());
                    }

                    entity.CheckMark = 0;
                    //插入预约号码
                    orderBll.SaveForm("", entity);

                    //SendToUser(entity);//微信提醒到配置的openid
                    //SendToTemplate();
                }


                return(Content("true"));
            }
            else
            {
                return(Content("验证码有误"));
            }
        }
        /// <summary>
        /// 推送接口
        /// </summary>
        /// <param name="requestType">101-轨迹查询结果</param>
        /// <param name="requestData">请求内容需进行URL(utf-8)编码。请求内容只支持JSON格式。</param>
        /// <param name="DataSign">	数据内容签名(把(请求内容(未编码)+AppKey)进行MD5加密,然后Base64编码)</param>
        /// <returns></returns>
        public ActionResult SavePushRecord(string requestData, string requestType, string DataSign)
        {
            string     url = Request.Url.ToString();
            WriteInLog log = new WriteInLog();

            log.writeInLog(url);
            log.writeInLog(requestData);
            try
            {
                TracesPushRecord entity = Newtonsoft.Json.JsonConvert.DeserializeObject <TracesPushRecord>(requestData);
                log.writeInLog("序列化完毕");
                //保存跟进记录
                //telphoneorderbll.SavePushRecord(entity);

                foreach (var item in entity.Data)
                {
                    TelphoneOrderEntity telOrderEntity = telphoneorderbll.GetEntityByNu(item.LogisticCode);
                    if (telOrderEntity != null)
                    {
                        telOrderEntity.Sign = item.State;                    //0-无轨迹,1-已揽收,2-在途中,3-签收,4-问题件
                        var ItemTraces = item.Traces[item.Traces.Count - 1]; //最后一个为最新状态
                        telOrderEntity.AcceptTime    = ItemTraces.AcceptTime;
                        telOrderEntity.AcceptStation = ItemTraces.AcceptStation;
                        //保存物流状态
                        telphoneorderbll.SaveStateForm(telOrderEntity.ID, telOrderEntity);
                    }
                }
                return(Content(new PushReturnMessage {
                    EBusinessID = "1363273", UpdateTime = DateTime.Now, Success = true, Reason = "成功"
                }.ToString()));
            }
            catch (Exception ex)
            {
                return(Content(new PushReturnMessage {
                    EBusinessID = "1363273", UpdateTime = DateTime.Now, Success = false, Reason = "写入数据库失败"
                }.ToString()));
            }
        }
 public ActionResult SaveForm(string keyValue, TelphoneOrderEntity entity)
 {
     telphoneorderbll.SaveForm(keyValue, entity);
     return(Success("操作成功。"));
 }
        public ActionResult GetEntityByTelphone(string Telphone)
        {
            TelphoneOrderEntity entity = orderBll.GetEntityByTelphone(Telphone);

            return(Content(JsonConvert.SerializeObject(entity)));
        }