public string execute(string request) { //1201|31.118725|121.376808|12312aasdas12312|IMEI|7a31f99279327f8b75506acbf0503973 string[] req = request.Split('|'); var sign = EncodingUtil.GetMd5(req[1] + req[2] + "aidaijia", "utf-8"); if (sign.ToLower() == req[5].ToLower()) { T_ParterEntity parter = new T_PartyDal().GetParterModelBySign(req[3].ToLower()); if (parter != null) { string lat = req[1].Trim(); string lng = req[2].Trim(); if (parter.Id == 11)//判断是博泰,对坐标进行转换 { ChangeCoords.ChangeCoordinate(ref lat, ref lng, 3, 5); } int countsum = new T_PDLoginLogDal().GetcountBysign(req[3].ToLower()); //计算使用次数 if (parter.Daycount > countsum) { //添加 double latNear = Convert.ToDouble(req[1]); double lngNear = Convert.ToDouble(req[2]); CoordinateHelper.BaiduToScott(ref lngNear, ref latNear); req[1] = latNear.ToString(); req[2] = lngNear.ToString(); List<sjinfo> users = new D_DriverInfoDal().GetNewUserByLatlng(req[1], req[2],parter.Sign); if (users.Count != 0) { //添加数据 T_ParterDyLog TPL = new T_ParterDyLog(); TPL.sign = req[3].ToLower(); TPL.lat = lat; TPL.lng = lng; TPL.imei = req[4]; TPL.addtime = DateTime.Now; //1:获取司机2:上传通话3:上传预约 TPL.typeid = 1; new T_ParterDyLogDal().AddParterDyLog(TPL); } return JsonConvert.SerializeObject(users); } else { throw new Exception("当天次数已经使用完毕!"); } } else { throw new Exception("商户标识错误"); } } else { throw new Exception("签名错误。"); } }
/// <summary> /// 立即预约,成功返回订单号 /// </summary> /// <param name="request"></param> /// <returns></returns> public string execute(string request) { //1217|1姓名|2客户手机号|3地址|4司机工号|5lat|6lng|7from|8sign|9IMEI|10MD5串|11remark|12youhui string result = "0"; string[] req = request.Split('|'); var sign = EncodingUtil.GetMd5(req[2] + "aidaijia", "utf-8"); if (sign.ToLower() == req[10].ToLower()) { ThirdPartyCoupon cc = new ThirdPartyCoupon(); //判断T_ClentInfo是否有此手机号相关信息 //如果用户不存在,创建一个新用户 CustomerInfoEntity cinfo = new D_CustomerInfoDal().GetClientInfoByPhone(req[2].Trim()); T_ParterEntity parter = new T_PartyDal().GetParterModelBySign(req[8].ToLower()); string couponCode = ""; if (parter != null) { #region 调用冯超接口检查是否新用户 if (InvokeStateService(req[2].Trim()).Equals(1)) { if (parter.url != null) { cc.isCoupon(parter.url); if (!cc.check(req[12], req[13], parter.url)) { throw new Exception("优惠码无效"); } couponCode = req[11]; } } #endregion #region 优惠码操作 //if (req.Length == 14 && parter.url != null) //{ // if (!cc.check(req[12], req[13], parter.url)) // { // throw new Exception("优惠码无效"); // } // //couponCode = cc.addCoupon(parter.Id.ToString(), req[12], req[13], cinfo); //} #endregion #region 调用web service 处理创建指定司机派单信息 DriverInfoEntity driverInfo = new D_DriverInfoDal().GetDriverInfoByUcode(req[4].Trim()); if (driverInfo == null) { throw new Exception("指定司机不存在!"); } if (driverInfo.Online == 0) { throw new Exception("该司机已经下线,不能接受您指派的任务!"); } else if (driverInfo.OnService == 1 || driverInfo.OnDOService == 1) { throw new Exception("该司机已经在服务中了,不能接受您指派的任务!"); } else { CreateOrderServiceRequestEntity createOrderEntity = new CreateOrderServiceRequestEntity(); createOrderEntity.Ucode = req[4].Trim(); createOrderEntity.RecommendCode = couponCode; createOrderEntity.Parterid = parter.Id; createOrderEntity.BusinessType = 1; // 酒后代驾 createOrderEntity.OrderFrom = 5; // 合作商 createOrderEntity.AppointTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm"); createOrderEntity.Address = req[3].Trim(); createOrderEntity.FromCellPhone = req[2].Trim(); createOrderEntity.CellPhone = req[2].Trim(); string latStr = req[5].Trim(); string lngStr = req[6].Trim(); if (parter.Id == 11)//判断是博泰,对坐标进行转换 { ChangeCoords.ChangeCoordinate(ref latStr, ref lngStr, 3, 5); } double lat; if (double.TryParse(latStr, out lat)) { createOrderEntity.Lat = lat; } double lng; if (double.TryParse(lngStr, out lng)) { createOrderEntity.Lng = lng; } createOrderEntity.AllUserCount = 1; createOrderEntity.Remark = req[11].Trim(); createOrderEntity.Status = 0; string url = string.Format("http://{0}/api/createOrder", ConfigHelper.APIServer); result = new CreateOrder().InvokeCreateOrderService(url, createOrderEntity); } #endregion } else { throw new Exception("商户标识错误。"); } } else { throw new Exception("签名错误。"); } return result; }
public string execute(string request) { //1206|1姓名|2客户手机号|3地址|4司机工号|5lat|6lng|7from|8sign|9IMEI|10MD5串|11youhui|12youhuijine string result = "0"; string[] req = request.Split('|'); var sign = EncodingUtil.GetMd5(req[2] + "aidaijia", "utf-8"); if (sign.ToLower() == req[10].ToLower()) { //判断T_ClentInfo是否有此手机号相关信息 //如果用户不存在,创建一个新用户 CustomerInfoEntity cinfo = new D_CustomerInfoDal().GetClientInfoByPhone(req[2].Trim()); T_ParterEntity parter = new T_PartyDal().GetParterModelBySign(req[8].ToLower()); if (parter != null) { #region 用户不存在则创建 if (cinfo == null) { int clentnum = new D_CustomerInfoDal().SelectSeqClent(); if (clentnum != 0) { string num = string.Empty; for (int i = 0; i < 8 - clentnum.ToString().Length; i++) { num += @"0"; } num = "U" + num + clentnum; CustomerInfoEntity customerEn = new CustomerInfoEntity() { AccountType = 2, Amount = 0, BusinessmanId = 0, Cellphone = req[2].Trim(), ParentPhone = req[2].Trim(), CustomerId = num, CustomerName = req[1].Trim(), CustomerType = 1, Email = string.Empty, HomeAddress = string.Empty, IsNewCustomer = true, LastAppointmentTime = null, LastCalledAddress = string.Empty, RecommendCode = new D_CustomerInfoDal().GenerateCustomerRecommendCode( new D_CustomerInfoDal().SelectSeqClent()), RegisterFrom = 5, //第三方API RegisterVersion = "" }; bool isture = new D_CustomerInfoDal().AddCustomerInfo(customerEn); if (!isture) { //return "0"; throw new Exception("添加新用户失败。"); } cinfo = customerEn; } else { //return "0"; throw new Exception("获取客户种子数失败。"); } } #endregion #region 优惠码操作 string couponCode = ""; if (!WebUtility.ConfigHelper.CloseSign.ToLower().Contains(req[8].ToLower())) { if (req.Length == 13 && parter.url != null) { ThirdPartyCoupon cc = new ThirdPartyCoupon(); if (!cc.check(req[11], req[12], parter.url)) { throw new Exception("优惠码无效"); } couponCode = cc.addCoupon(parter.Id.ToString(), req[11], req[12], cinfo); } log.log("1206IF:【" + request + "】CLOSESIGN【" + WebUtility.ConfigHelper.CloseSign.ToLower() + "】req[8]【" + req[8].ToLower() + "】", System.Web.HttpContext.Current.Server.MapPath("Log/log.txt")); } else { log.log("1206ELSE:【" + request + "】CLOSESIGN【" + WebUtility.ConfigHelper.CloseSign.ToLower() + "】req[8]【" + req[8].ToLower() + "】", System.Web.HttpContext.Current.Server.MapPath("Log/log.txt")); } #endregion #region 调用web service 处理创建指定司机派单信息 DriverInfoEntity driverInfo = new D_DriverInfoDal().GetDriverInfoByUcode(req[4].Trim()); if (driverInfo == null) { throw new Exception("指定司机不存在!"); } if (driverInfo.Online == 0) { throw new Exception("该司机已经下线,不能接受您指派的任务!"); } else if (driverInfo.OnService == 1 || driverInfo.OnDOService == 1) { throw new Exception("该司机已经在服务中了,不能接受您指派的任务!"); } else { CreateOrderServiceRequestEntity createOrderEntity = new CreateOrderServiceRequestEntity(); string latStr = req[5].Trim(); string lngStr = req[6].Trim(); if (parter.Id == 11)//判断是博泰,对坐标进行转换 { ChangeCoords.ChangeCoordinate(ref latStr, ref lngStr, 3, 5); } createOrderEntity.Ucode = req[4].Trim(); createOrderEntity.Parterid = parter.Id; createOrderEntity.RecommendCode = "[" + couponCode; createOrderEntity.BusinessType = 1; // 酒后代驾 createOrderEntity.OrderFrom = 5; // 合作商 createOrderEntity.AppointTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm"); createOrderEntity.Address = req[3].Trim(); createOrderEntity.FromCellPhone = req[2].Trim(); createOrderEntity.CellPhone = req[2].Trim(); double lat; double lng; if (double.TryParse(latStr, out lat)&&double.TryParse(lngStr, out lng)) { CoordinateHelper.BaiduToScott(ref lng, ref lat); createOrderEntity.Lat = lat; createOrderEntity.Lng = lng; } createOrderEntity.geoType = 1; createOrderEntity.AllUserCount = 1; createOrderEntity.Remark = string.Empty; createOrderEntity.Status = 0; string url = string.Format("http://{0}/api/createOrder", ConfigHelper.APIServer); result = new CreateOrder().InvokeCreateOrderService(url,createOrderEntity); result = result == null ? "0" : "1"; } #endregion } else { throw new Exception("商户标识错误。"); } } else { throw new Exception("签名错误。"); } return result; }
public string execute(string request) { //1206|1姓名|2客户手机号|3地址|4司机工号|5lat|6lng|7from|8sign|9IMEI|10MD5串 string result = "0"; string[] req = request.Split('|'); var sign = EncodingUtil.GetMd5(req[2] + "aidaijia", "utf-8"); if (sign.ToLower() == req[10].ToLower()) { //判断T_ClentInfo是否有此手机号相关信息 //如果用户不存在,创建一个新用户 CustomerInfoEntity cinfo = new D_CustomerInfoDal().GetClientInfoByPhone(req[2].Trim()); string cusid = string.Empty; int CustomerType = 1; int AccountType = 2; T_ParterEntity parter = new T_PartyDal().GetParterModelBySign(req[8].ToLower()); if (parter != null) { #region 用户不存在则创建 if (cinfo == null) { int clentnum = new D_CustomerInfoDal().SelectSeqClent(); if (clentnum != 0) { string num = string.Empty; for (int i = 0; i < 8 - clentnum.ToString().Length; i++) { num += @"0"; } num = "U" + num + clentnum; cusid = num; CustomerInfoEntity customerEn = new CustomerInfoEntity() { AccountType = 2, Amount = 0, BusinessmanId = 0, Cellphone = req[2].Trim(), ParentPhone = req[2].Trim(), CustomerId = num, CustomerName = req[1].Trim(), CustomerType = 1, Email = string.Empty, HomeAddress = string.Empty, IsNewCustomer = true, LastAppointmentTime = null, LastCalledAddress = string.Empty, RecommendCode = new D_CustomerInfoDal().GenerateCustomerRecommendCode( new D_CustomerInfoDal().SelectSeqClent()), RegisterFrom = 5, //第三方API RegisterVersion = "" }; bool isture = new D_CustomerInfoDal().AddCustomerInfo(customerEn); if (!isture) { return "0"; } } else { return "0"; } } else { cusid = cinfo.CustomerId; CustomerType = cinfo.CustomerType; AccountType = cinfo.AccountType; } #endregion #region 创建指定司机派单信息 DriverInfoEntity driverInfo = new D_DriverInfoDal().GetDriverInfoByUcode(req[4].Trim()); if (driverInfo == null) { throw new Exception("指定司机不存在!"); } if (driverInfo.Online == 0) { throw new Exception("该司机已经下线,不能接受您指派的任务!"); } else if (driverInfo.OnService == 1 || driverInfo.OnDOService == 1) { throw new Exception("该司机已经在服务中了,不能接受您指派的任务!"); } else { //直接派单 string distributeOrderId = new DistributeOrderInfoDAL().GenerateDistributeOrderId(new DistributeOrderInfoDAL().SelectSeqOrder()); string lat = req[5].Trim(); string lng = req[6].Trim(); if (parter.Id == 11)//判断是博泰,对坐标进行转换 { ChangeCoords.ChangeCoordinate(ref lat, ref lng, 3, 5); } DistributeOrderInfoEntity model = new DistributeOrderInfoEntity() { Address = req[3].Trim(), AppointOrderId = null, BusinessType = 10, //10酒后代驾 Cellphone = req[2].Trim(), //客户手机号 CustomerId = cusid, CustomerName = req[1].Trim(), CustomerType = CustomerType, AccountType = AccountType, AppointmentTime = DateTime.Now, DistributeOrderId = distributeOrderId, DistributeUser = cusid, DistributeUserType = 3, Fromcellphone = req[2].Trim(), Lat = float.Parse(lat), Lng = float.Parse(lng), OrderFrom = 5,//由8改为5 OrderId = null, OrderType = 1, Status = 11, Create_user = "******", Create_time = DateTime.Now, Remark = "", Ucode = req[4].Trim(), PartyId = parter.Id }; bool istrue = new DistributeOrderInfoDAL().AddDistributeOrderInfo(model); //修改派单状态:派单中 bool isupdate = new DistributeOrderInfoDAL().UpdateOnDoService(1, req[4].Trim()); DistributeOrderDetailEntity detail = new DistributeOrderDetailEntity() { DistributeOrderId = distributeOrderId, Status = 0, Ucode = req[4].Trim(), Create_user = "******" }; bool OrderDetail = new D_DistributeOrderDetailDal().CreateDistributeOrderDetail(detail); DistributeOrderStatusChangeLogEntity log = new DistributeOrderStatusChangeLogEntity() { DistributeOrderId = distributeOrderId, Status = 11, StatusText = "派单已由第三方合作商接口分配给指定司机工号" + req[4].Trim(), Create_user = "******" }; bool OrderStatusChangeLog = new D_DistributeOrderStatusChangeLogDal().CreateDistributeOrderStatusChangeLog(log); if (!istrue || !isupdate) { return "0"; } else { //添加数据 T_ParterDyLog tpl = new T_ParterDyLog(); tpl.sign = req[8]; tpl.lat = "0"; tpl.lng = "0"; tpl.imei = req[9]; tpl.addtime = DateTime.Now; //1:获取司机2:上传通话3:上传预约 tpl.typeid = 3; new T_ParterDyLogDal().AddParterDyLog(tpl); result = "1"; } } #endregion } else { throw new Exception("商户标识错误。"); } } else { throw new Exception("签名错误。"); } return result; }
public string execute(string request) { // 1204|12312aasdas12312|uid| IMEI |7a31f99279327f8b75506acbf0503973 string[] req = request.Split('|'); var sign = EncodingUtil.GetMd5(req[2] + "aidaijia", "utf-8"); if (sign.ToLower() == req[4].ToLower()) { #region old代码 //T_Parter parter = new ParterDal().GetParterModelBySign(req[1].ToLower()); //if (parter != null) //{ // int countsum = new ParterDyLogDal().GetcountBysign(req[1].ToLower()); // //计算使用次数 // if (parter.daycount > countsum) // { // //添加数据 // T_ParterDyLog TPL = new T_ParterDyLog(); // TPL.sign = req[1].ToLower(); // TPL.lat = "0"; // TPL.lng = "0"; // TPL.imei = req[3]; // TPL.addtime = DateTime.Now; // //1:获取司机2:上传通话3:上传预约4:获取评价 // TPL.typeid = 4; // new ParterDyLogDal().AddParterDyLog(TPL); // List<Pinglun> tdpl = new PingJiaDal().GetPingLuns(req[2]); // return JsonConvert.SerializeObject(tdpl); // } // else // { // throw new Exception("当天次数已经使用完毕!"); // } //} //else //{ // throw new Exception("商户标识错误"); //} #endregion T_ParterEntity parter = new T_PartyDal().GetParterModelBySign(req[1].ToLower()); if (parter != null) { int countsum = new T_PDLoginLogDal().GetcountBysign(req[1].ToLower()); //计算使用次数 if (parter.Daycount > countsum) { //添加数据 T_ParterDyLog TPL = new T_ParterDyLog(); TPL.sign = req[1].ToLower(); TPL.lat = "0"; TPL.lng = "0"; TPL.imei = req[3]; TPL.addtime = DateTime.Now; //1:获取司机2:上传通话3:上传预约4:获取评价 TPL.typeid = 4; new T_ParterDyLogDal().AddParterDyLog(TPL); List<Pinglun> tdpl2 = new List<Pinglun>(); string sjucode = new D_DriverInfoDal().GetUcodeById(req[2]); if (sjucode != "") { List<SjComment> tdpl = new D_DriverCommentDal().GetPingLuns(sjucode); if (tdpl != null) { for (int i = 0; i < tdpl.Count; i++) { Pinglun temp = new Pinglun(); temp.addtime = Convert.ToDateTime(tdpl[i].Create_time); temp.Info = tdpl[i].Comment; temp.name = tdpl[i].CustomerName; if (tdpl[i].Evaluate == 3) { temp.plstate = 0; } else if (tdpl[i].Evaluate == 2) { temp.plstate = 1; } else { temp.plstate = 2; } // 0差评1中评2好评 //新版(1,好评;2,中评;3,差评) temp.uid = Convert.ToInt32(req[2].Trim()); tdpl2.Add(temp); } } return JsonConvert.SerializeObject(tdpl2); } else { return JsonConvert.SerializeObject(tdpl2); } } else { throw new Exception("当天次数已经使用完毕!"); } } else { throw new Exception("商户标识错误"); } } else { throw new Exception("签名错误。"); } }