public ApiResultModel DeleteOrder(DetailSearchModel model) { ApiResultModel resultModel = new ApiResultModel(); try { //获取当前商家用户 IShopUserBLL shopUserBll = BLLFactory <IShopUserBLL> .GetBLL("ShopUserBLL"); var user = shopUserBll.GetEntity(u => u.Id == model.UserId && u.DelFlag == ConstantParam.DEL_FLAG_DEFAULT); if (user == null) { resultModel.Msg = APIMessage.NO_USER; return(resultModel); } //如果验证Token不通过或已过期 if (DateTime.Now > user.TokenInvalidTime || model.Token != user.Token) { resultModel.Msg = APIMessage.TOKEN_INVALID; return(resultModel); } //更新最近登录时间和Token失效时间 user.LatelyLoginTime = DateTime.Now; user.TokenInvalidTime = DateTime.Now.AddDays(Convert.ToInt32(PropertyUtils.GetConfigParamValue("TokenInvalid"))); shopUserBll.Update(user); //获取指定订单 IOrderBLL orderBll = BLLFactory <IOrderBLL> .GetBLL("OrderBLL"); var order = orderBll.GetEntity(o => o.Id == model.Id && o.DelFlag == ConstantParam.DEL_FLAG_DEFAULT && o.IsStoreHided == ConstantParam.DEL_FLAG_DEFAULT); if (order != null) { if (order.OrderStatus == ConstantParam.OrderStatus_FINISH || order.OrderStatus == ConstantParam.OrderStatus_EXIT || order.OrderStatus == ConstantParam.OrderStatus_CLOSE) { order.IsStoreHided = ConstantParam.DEL_FLAG_DELETE; //删除订单 if (!orderBll.Update(order)) { resultModel.Msg = "订单删除失败"; } } else { resultModel.Msg = "当前状态的订单不能被删除"; } } else { resultModel.Msg = APIMessage.ORDER_NOEXIST; } } catch { resultModel.Msg = APIMessage.REQUEST_EXCEPTION; } return(resultModel); }
public ApiResultModel QuestionDetail([FromUri] DetailSearchModel model) { ApiResultModel resultModel = new ApiResultModel(); try { //根据用户ID查找业主 IUserBLL ownerBll = BLLFactory <IUserBLL> .GetBLL("UserBLL"); T_User owner = ownerBll.GetEntity(u => u.Id == model.UserId && u.DelFlag == ConstantParam.DEL_FLAG_DEFAULT); //如果业主存在 if (owner != null) { //如果验证Token不通过或已过期 if (DateTime.Now > owner.TokenInvalidTime || model.Token != owner.Token) { resultModel.Msg = APIMessage.TOKEN_INVALID; return(resultModel); } //更新最近登录时间和Token失效时间 owner.LatelyLoginTime = DateTime.Now; owner.TokenInvalidTime = DateTime.Now.AddDays(Convert.ToInt32(PropertyUtils.GetConfigParamValue("TokenInvalid"))); ownerBll.Update(owner); //获取问题总个数和分页数据 IQuestionBLL questionBll = BLLFactory <IQuestionBLL> .GetBLL("QuestionBLL"); var question = questionBll.GetEntity(u => u.Id == model.Id); resultModel.result = new { Id = question.Id, Title = question.Title, Desc = string.IsNullOrEmpty(question.Desc) ? "" : question.Desc, Status = question.Status, UploadTime = question.UploadTime.ToString("yyyy-MM-dd HH:mm:ss"), Imgs = string.IsNullOrEmpty(question.Imgs) ? new string[] {} : question.Imgs.Split(';'), AudioPath = question.AudioPath, VoiceDuration = question.VoiceDuration, PlaceName = question.PropertyPlace.Name, DisposesTime = question.Status == ConstantParam.NO_DISPOSE ? null : question.QuestionDisposes.FirstOrDefault().DisposeTime.ToString("yyyy-MM-dd HH:mm:ss") }; } else { resultModel.Msg = APIMessage.NO_USER; } } catch { resultModel.Msg = APIMessage.REQUEST_EXCEPTION; } return(resultModel); }
public ApiResultModel GetShopPayWay([FromUri] DetailSearchModel model) { ApiResultModel resultModel = new ApiResultModel(); try { //根据用户ID查找业主 IUserBLL ownerBll = BLLFactory <IUserBLL> .GetBLL("UserBLL"); T_User owner = ownerBll.GetEntity(u => u.Id == model.UserId && u.DelFlag == ConstantParam.DEL_FLAG_DEFAULT); //如果业主存在 if (owner != null) { //如果验证Token不通过或已过期 if (DateTime.Now > owner.TokenInvalidTime || model.Token != owner.Token) { resultModel.Msg = APIMessage.TOKEN_INVALID; return(resultModel); } //更新最近登录时间和Token失效时间 owner.LatelyLoginTime = DateTime.Now; owner.TokenInvalidTime = DateTime.Now.AddDays(Convert.ToInt32(PropertyUtils.GetConfigParamValue("TokenInvalid"))); ownerBll.Update(owner); //获取要查询的门店 IShopBLL shopBll = BLLFactory <IShopBLL> .GetBLL("ShopBLL"); var shop = shopBll.GetEntity(s => s.Id == model.Id); if (shop != null) { var PayWays = shop.ShopPaymentManagements.Select(p => p.PayTypeId).ToList(); if (PayWays.Count > 0) { resultModel.result = PayWays; } else { resultModel.result = new List <int>(); } } } else { resultModel.Msg = APIMessage.NO_USER; } } catch { resultModel.Msg = APIMessage.REQUEST_EXCEPTION; } return(resultModel); }
public ApiResultModel ShopDetail2([FromUri] DetailSearchModel model) { ApiResultModel resultModel = new ApiResultModel(); try { //根据用户ID查找业主 IUserBLL ownerBll = BLLFactory <IUserBLL> .GetBLL("UserBLL"); T_User owner = ownerBll.GetEntity(u => u.Id == model.UserId && u.DelFlag == ConstantParam.DEL_FLAG_DEFAULT); //如果业主存在 if (owner != null) { //如果验证Token不通过或已过期 if (DateTime.Now > owner.TokenInvalidTime || model.Token != owner.Token) { resultModel.Msg = APIMessage.TOKEN_INVALID; return(resultModel); } //更新最近登录时间和Token失效时间 owner.LatelyLoginTime = DateTime.Now; owner.TokenInvalidTime = DateTime.Now.AddDays(Convert.ToInt32(PropertyUtils.GetConfigParamValue("TokenInvalid"))); ownerBll.Update(owner); //获取要查看详细的门店实体对象 IShopBLL ShopBll = BLLFactory <IShopBLL> .GetBLL("ShopBLL"); T_Shop Shop = ShopBll.GetEntity(s => s.Id == model.Id); if (Shop != null) { resultModel.result = new { ShopImg = Shop.ImgPath, ShopInfoPath = "MobilePage/StoreDetail2?ShopId=" + model.Id, }; } else { resultModel.Msg = APIMessage.SHOP_NOEXIST; } } else { resultModel.Msg = APIMessage.NO_USER; } } catch { resultModel.Msg = APIMessage.REQUEST_EXCEPTION; } return(resultModel); }
public ApiResultModel SetRecordToExpensed(DetailSearchModel model) { ApiResultModel resultModel = new ApiResultModel(); try { //根据用户ID查找业主 IUserBLL ownerBll = BLLFactory <IUserBLL> .GetBLL("UserBLL"); T_User owner = ownerBll.GetEntity(u => u.Id == model.UserId && u.DelFlag == ConstantParam.DEL_FLAG_DEFAULT); //如果业主存在 if (owner != null) { //如果验证Token不通过或已过期 if (DateTime.Now > owner.TokenInvalidTime || model.Token != owner.Token) { resultModel.Msg = APIMessage.TOKEN_INVALID; return(resultModel); } //更新最近登录时间和Token失效时间 owner.LatelyLoginTime = DateTime.Now; owner.TokenInvalidTime = DateTime.Now.AddDays(Convert.ToInt32(PropertyUtils.GetConfigParamValue("TokenInvalid"))); ownerBll.Update(owner); //设置缴费记录为已在线缴费 IHouseUserExpenseDetailsBLL expenseDetailsBLL = BLLFactory <IHouseUserExpenseDetailsBLL> .GetBLL("HouseUserExpenseDetailsBLL"); var record = expenseDetailsBLL.GetEntity(e => e.Id == model.Id); if (record != null) { record.IsPayed = ConstantParam.PAYED_TRUE; record.PaymentType = 2; record.PayedDate = DateTime.Now; expenseDetailsBLL.Update(record); } else { resultModel.Msg = APIMessage.EXPENSE_RECORD_NOEXIST; } } else { resultModel.Msg = APIMessage.NO_USER; } } catch { resultModel.Msg = APIMessage.REQUEST_EXCEPTION; } return(resultModel); }
public ApiResultModel GetGoodsCategoryList([FromUri] DetailSearchModel model) { ApiResultModel resultModel = new ApiResultModel(); try { //根据用户ID查找业主 IUserBLL ownerBll = BLLFactory <IUserBLL> .GetBLL("UserBLL"); T_User owner = ownerBll.GetEntity(u => u.Id == model.UserId && u.DelFlag == ConstantParam.DEL_FLAG_DEFAULT); //如果业主存在 if (owner != null) { //如果验证Token不通过或已过期 if (DateTime.Now > owner.TokenInvalidTime || model.Token != owner.Token) { resultModel.Msg = APIMessage.TOKEN_INVALID; return(resultModel); } //更新最近登录时间和Token失效时间 owner.LatelyLoginTime = DateTime.Now; owner.TokenInvalidTime = DateTime.Now.AddDays(Convert.ToInt32(PropertyUtils.GetConfigParamValue("TokenInvalid"))); ownerBll.Update(owner); //该门店的商品类别 Expression <Func <T_GoodsCategory, bool> > where = s => s.ShopId == model.Id; //获取指定门店的类别列表 IGoodsCategoryBLL categoryBll = BLLFactory <IGoodsCategoryBLL> .GetBLL("GoodsCategoryBLL"); resultModel.result = categoryBll.GetList(where).Select(s => new { CategoryId = s.Id, CategoryName = s.Name }); } else { resultModel.Msg = APIMessage.NO_USER; } } catch { resultModel.Msg = APIMessage.REQUEST_EXCEPTION; } return(resultModel); }
public ApiResultModel OrderDetail([FromUri] DetailSearchModel model) { ApiResultModel resultModel = new ApiResultModel(); try { //获取当前商家用户 IShopUserBLL shopUserBll = BLLFactory <IShopUserBLL> .GetBLL("ShopUserBLL"); var user = shopUserBll.GetEntity(u => u.Id == model.UserId && u.DelFlag == ConstantParam.DEL_FLAG_DEFAULT); if (user == null) { resultModel.Msg = APIMessage.NO_USER; return(resultModel); } //如果验证Token不通过或已过期 if (DateTime.Now > user.TokenInvalidTime || model.Token != user.Token) { resultModel.Msg = APIMessage.TOKEN_INVALID; return(resultModel); } //更新最近登录时间和Token失效时间 user.LatelyLoginTime = DateTime.Now; user.TokenInvalidTime = DateTime.Now.AddDays(Convert.ToInt32(PropertyUtils.GetConfigParamValue("TokenInvalid"))); shopUserBll.Update(user); //获取指定订单 IOrderBLL orderBll = BLLFactory <IOrderBLL> .GetBLL("OrderBLL"); var order = orderBll.GetEntity(o => o.Id == model.Id && o.DelFlag == ConstantParam.DEL_FLAG_DEFAULT && o.IsStoreHided == ConstantParam.DEL_FLAG_DEFAULT); if (order != null) { resultModel.result = new { Id = order.Id, OrderNo = order.OrderNo, ShopName = order.Shop.ShopName, ShopPhone = string.IsNullOrEmpty(order.Shop.Phone) ? "" : order.Shop.Phone, OrderTime = order.OrderDate.ToString("yyyy-MM-dd HH:mm:ss"), OrderStatus = order.OrderStatus, Shipper = order.ShippingAddress.ShipperName + "(" + order.ShippingAddress.Telephone + ")", SendAddress = order.ShippingAddress.County.City.Province.ProvinceName + order.ShippingAddress.County.City.CityName + order.ShippingAddress.County.CountyName + " " + order.ShippingAddress.AddressDetails, PayWay = order.PayWay, BuyUserName = order.User.UserName, BuyUserHeadPic = order.User.HeadPath, BuyUserPhone = order.User.Phone, Memo = order.Memo, RecedeType = order.RecedeType, RemainingTime = order.PayDate == null || order.PayDate.Value.AddHours(2) < DateTime.Now ? "0小时0分" : (order.PayDate.Value.AddHours(2) - DateTime.Now).Hours + "小时" + (order.PayDate.Value.AddHours(2) - DateTime.Now).Minutes + "分", ExitOrderReason = order.Reason, RefundStatus = GetRefundResult(order.Id), RecedeTime = order.RecedeTime != null?order.RecedeTime.Value.ToString("yyyy-MM-dd HH:mm:ss") : "", TotalPrice = Convert.ToDouble(Convert.ToDecimal(order.OrderDetails.Select(d => d.Price).ToArray().Sum())), Freight = Convert.ToDouble(Convert.ToDecimal(order.OrderPrice) - Convert.ToDecimal(order.OrderDetails.Select(d => d.Price).ToArray().Sum())), GoodsList = order.OrderDetails.Select(d => new { SaleName = d.ShopSale.Title, SaleImg = string.IsNullOrEmpty(d.ShopSale.ImgThumbnail) ? "" : d.ShopSale.ImgThumbnail.Split(';')[0], SaledAmount = d.SaledAmount, Price = Convert.ToDouble(Convert.ToDecimal(d.Price / d.SaledAmount)) }) }; } else { resultModel.Msg = "订单已不存在"; } } catch { resultModel.Msg = APIMessage.REQUEST_EXCEPTION; } return(resultModel); }
public ApiResultModel ExpenseRecordDetail([FromUri] DetailSearchModel model) { ApiResultModel resultModel = new ApiResultModel(); try { //根据用户ID查找业主 IUserBLL ownerBll = BLLFactory <IUserBLL> .GetBLL("UserBLL"); T_User owner = ownerBll.GetEntity(u => u.Id == model.UserId && u.DelFlag == ConstantParam.DEL_FLAG_DEFAULT); //如果业主存在 if (owner != null) { //如果验证Token不通过或已过期 if (DateTime.Now > owner.TokenInvalidTime || model.Token != owner.Token) { resultModel.Msg = APIMessage.TOKEN_INVALID; return(resultModel); } //更新最近登录时间和Token失效时间 owner.LatelyLoginTime = DateTime.Now; owner.TokenInvalidTime = DateTime.Now.AddDays(Convert.ToInt32(PropertyUtils.GetConfigParamValue("TokenInvalid"))); ownerBll.Update(owner); IHouseUserExpenseDetailsBLL expenseDetailsBLL = BLLFactory <IHouseUserExpenseDetailsBLL> .GetBLL("HouseUserExpenseDetailsBLL"); var record = expenseDetailsBLL.GetEntity(e => e.Id == model.Id); if (record != null) { //返回详细数据 resultModel.result = new { RecordId = record.Id, ExpenseTypeName = record.PropertyExpenseType.Name, ExpenseDateDes = record.ExpenseDateDes, Expense = record.Expense, PayedTime = record.PayedDate != null?record.PayedDate.Value.ToString("yyyy-MM-dd HH:mm:ss") : "", PaymentType = record.PaymentType != null ? (record.PaymentType.Value == 1 ? "前台缴费" : "在线缴费") : "", PlaceName = record.BuildCompanyId == null ? record.BuildDoor.BuildUnit.Build.PropertyPlace.Name : record.BuildCompany.PropertyPlace.Name, Door = record.BuildCompanyId == null ? record.BuildDoor.BuildUnit.Build.BuildName + record.BuildDoor.BuildUnit.UnitName + record.BuildDoor.DoorName : record.BuildCompany.Name, OwnerName = record.BuildDoor != null && record.BuildDoor.HouseUsers.Count > 0 ? record.BuildDoor.HouseUsers.FirstOrDefault().Name : "", Tel = record.BuildDoor != null ? (record.BuildDoor.HouseUsers.Count > 0 ? record.BuildDoor.HouseUsers.FirstOrDefault().Phone : "") : record.BuildCompany.Phone, }; } else { resultModel.Msg = APIMessage.EXPENSE_RECORD_NOEXIST; } } else { resultModel.Msg = APIMessage.NO_USER; } } catch { resultModel.Msg = APIMessage.REQUEST_EXCEPTION; } return(resultModel); }
public ApiResultModel CreateWeixinPayTrade(DetailSearchModel model) { ApiResultModel resultModel = new ApiResultModel(); try { //根据用户ID查找业主 IUserBLL ownerBll = BLLFactory <IUserBLL> .GetBLL("UserBLL"); T_User owner = ownerBll.GetEntity(u => u.Id == model.UserId && u.DelFlag == ConstantParam.DEL_FLAG_DEFAULT); //如果业主存在 if (owner != null) { //如果验证Token不通过或已过期 if (DateTime.Now > owner.TokenInvalidTime || model.Token != owner.Token) { resultModel.Msg = APIMessage.TOKEN_INVALID; return(resultModel); } //更新最近登录时间和Token失效时间 owner.LatelyLoginTime = DateTime.Now; owner.TokenInvalidTime = DateTime.Now.AddDays(Convert.ToInt32(PropertyUtils.GetConfigParamValue("TokenInvalid"))); ownerBll.Update(owner); //生成微信支付订单 IHouseUserExpenseDetailsBLL expenseDetailsBLL = BLLFactory <IHouseUserExpenseDetailsBLL> .GetBLL("HouseUserExpenseDetailsBLL"); var record = expenseDetailsBLL.GetEntity(e => e.Id == model.Id); if (record != null) { //获取物业缴费账户信息 T_PropertyAccount wxAccount = null; if (record.BuildDoorId != null) { wxAccount = record.BuildDoor.BuildUnit.Build.PropertyPlace.PropertyAccounts.Where( a => a.AccountType == ConstantParam.PROPERTY_ACCOUNT_WeChat).FirstOrDefault(); } else { wxAccount = record.BuildCompany.PropertyPlace.PropertyAccounts.Where( a => a.AccountType == ConstantParam.PROPERTY_ACCOUNT_WeChat).FirstOrDefault(); } if (wxAccount == null) { resultModel.Msg = "该用户所属物业未设置账户信息"; return(resultModel); } //获取物业账户信息 string WeixinAppId = wxAccount.Number; string WeixinMchId = wxAccount.MerchantNo; string WeixinPayKey = wxAccount.AccountKey; //生成预订单 string result = CreateTradePost(record, WeixinAppId, WeixinMchId, WeixinPayKey); //如果请求失败 if (result == null) { resultModel.Msg = APIMessage.WEIXIN_YUORDER_FAIL; return(resultModel); } //解析返回结果 XmlDocument doc = new XmlDocument(); doc.LoadXml(result); string return_code = doc.GetElementsByTagName("return_code")[0].InnerText; //如果返回成功 if (return_code == "SUCCESS") { string result_code = doc.GetElementsByTagName("result_code")[0].InnerText; if (result_code == "SUCCESS") { //预支付交易会话标识 string prepayid = doc.GetElementsByTagName("prepay_id")[0].InnerText; //随机字符串 string str = "1234567890abcdefghijklmnopqrstuvwxyz"; Random r = new Random(); string PayRandomStr = ""; for (int i = 0; i < 32; i++) { PayRandomStr += str[r.Next(str.Length)].ToString(); } //时间戳 var timestamp = Convert.ToInt64(DateTime.Now.Subtract(DateTime.Parse("1970-1-1")).TotalMilliseconds / 10000) * 10; //签名字符串 string PaySignStr = "appid=" + WeixinAppId + "&noncestr=" + PayRandomStr + "&package=Sign=WXPay&partnerid=" + WeixinMchId + "&prepayid=" + prepayid + "×tamp=" + timestamp + "&key=" + WeixinPayKey; resultModel.result = new { appid = WeixinAppId, partnerid = WeixinMchId, package = "Sign=WXPay", prepayid = prepayid, noncestr = PayRandomStr, timestamp = timestamp, sign = PropertyUtils.GetMD5Str(PaySignStr.ToString()).ToUpper() }; } else { string err_code_des = doc.GetElementsByTagName("err_code_des")[0].InnerText; resultModel.Msg = err_code_des; } } else { string return_msg = doc.GetElementsByTagName("return_msg")[0].InnerText; resultModel.Msg = return_msg; } } else { resultModel.Msg = APIMessage.EXPENSE_RECORD_NOEXIST; } } else { resultModel.Msg = APIMessage.NO_USER; } } catch { resultModel.Msg = APIMessage.REQUEST_EXCEPTION; } return(resultModel); }