public JsonResult OrderSubmit(long id, long regionId, int count) { Result result = new Result() { success = false, msg = "未知错误", status = 0 }; bool isdataok = true; if (count < 1) { isdataok = false; result.success = false; result.msg = "错误的兑换数量!"; result.status = -8; return(Json(result)); } //Checkout List <GiftOrderItemModel> gorditemlist = new List <GiftOrderItemModel>(); #region 礼品信息判断 //礼品信息 GiftInfo giftdata = _iGiftService.GetById(id); if (giftdata == null) { isdataok = false; result.success = false; result.msg = "礼品不存在!"; result.status = -2; return(Json(result)); } if (giftdata.GetSalesStatus != GiftInfo.GiftSalesStatus.Normal) { isdataok = false; result.success = false; result.msg = "礼品已失效!"; result.status = -2; return(Json(result)); } //库存判断 if (count > giftdata.StockQuantity) { isdataok = false; result.success = false; result.msg = "礼品库存不足,仅剩 " + giftdata.StockQuantity.ToString() + " 件!"; result.status = -3; return(Json(result)); } //积分数 if (giftdata.NeedIntegral < 1) { isdataok = false; result.success = false; result.msg = "礼品关联等级信息有误或礼品积分数据有误!"; result.status = -5; return(Json(result)); } #endregion #region 用户信息判断 //限购数量 if (giftdata.LimtQuantity > 0) { int ownbuynumber = _iGiftsOrderService.GetOwnBuyQuantity(CurrentUser.Id, id); if (ownbuynumber + count > giftdata.LimtQuantity) { isdataok = false; result.success = false; result.msg = "超过礼品限兑数量!"; result.status = -4; return(Json(result)); } } var userInte = MemberIntegralApplication.GetMemberIntegral(CurrentUser.Id); if (giftdata.NeedIntegral * count > userInte.AvailableIntegrals) { isdataok = false; result.success = false; result.msg = "积分不足!"; result.status = -6; return(Json(result)); } if (giftdata.NeedGrade > 0) { //等级判定 if (!MemberGradeApplication.IsAllowGrade(CurrentUser.Id, giftdata.NeedGrade)) { isdataok = false; result.success = false; result.msg = "用户等级不足!"; result.status = -6; return(Json(result)); } } #endregion Entities.ShippingAddressInfo shipdata = GetShippingAddress(regionId); if (shipdata == null) { isdataok = false; result.success = false; result.msg = "错误的收货人地址信息!"; result.status = -6; return(Json(result)); } if (isdataok) { gorditemlist.Add(new GiftOrderItemModel { GiftId = giftdata.Id, Counts = count }); GiftOrderModel createorderinfo = new GiftOrderModel(); createorderinfo.Gifts = gorditemlist; createorderinfo.CurrentUser = CurrentUser; createorderinfo.ReceiveAddress = shipdata; Himall.Entities.GiftOrderInfo orderdata = _iGiftsOrderService.CreateOrder(createorderinfo); result.success = true; result.msg = orderdata.Id.ToString(); result.status = 1; } return(Json(result)); }
/// <summary> /// 提交并处理预约单 /// </summary> /// <param name="id"></param> /// <param name="regionId"></param> /// <param name="count"></param> /// <returns></returns> public Result SubmitOrder(GiftConfirmOrder value) { Result result = new Result() { success = false, msg = "未知错误", status = 0 }; bool isdataok = true; long id = value.ID; var regionId = value.RegionId; if (regionId < 1) { result.success = false; result.msg = "错误的收货地址!"; result.status = -8; return(result); } int count = value.Count; if (count < 1) { isdataok = false; result.success = false; result.msg = "错误的兑换数量!"; result.status = -8; return(result); } if (CurrentUser == null) { isdataok = false; result.success = false; result.msg = "用户未登录!"; result.status = -6; return(result); } //Checkout List <GiftOrderItemModel> gorditemlist = new List <GiftOrderItemModel>(); var curUser = _iMemberService.GetMember(CurrentUser.Id); if (curUser == null) { isdataok = false; result.success = false; result.msg = "用户登录错误!"; result.status = -6; return(result); } var userInte = MemberIntegralApplication.GetMemberIntegral(curUser.Id); #region 礼品信息判断 //礼品信息 GiftInfo giftdata = _iGiftService.GetById(id); if (giftdata == null) { isdataok = false; result.success = false; result.msg = "礼品不存在!"; result.status = -2; return(result); } if (giftdata.GetSalesStatus != GiftInfo.GiftSalesStatus.Normal) { isdataok = false; result.success = false; result.msg = "礼品已失效!"; result.status = -2; return(result); } //库存判断 if (count > giftdata.StockQuantity) { isdataok = false; result.success = false; result.msg = "礼品库存不足,仅剩 " + giftdata.StockQuantity.ToString() + " 件!"; result.status = -3; return(result); } //积分数 if (giftdata.NeedIntegral < 1) { isdataok = false; result.success = false; result.msg = "礼品关联等级信息有误或礼品积分数据有误!"; result.status = -5; return(result); } #endregion #region 用户信息判断 //限购数量 if (giftdata.LimtQuantity > 0) { int ownbuynumber = _iGiftsOrderService.GetOwnBuyQuantity(CurrentUser.Id, id); if (ownbuynumber + count > giftdata.LimtQuantity) { isdataok = false; result.success = false; result.msg = "超过礼品限兑数量!"; result.status = -4; return(result); } } if (giftdata.NeedIntegral * count > userInte.AvailableIntegrals) { isdataok = false; result.success = false; result.msg = "积分不足!"; result.status = -6; return(result); } if (giftdata.NeedGrade > 0) { var memgradeid = _iMemberGradeService.GetMemberGradeByUserId(curUser.Id); //等级判定 if (!_iMemberGradeService.IsOneGreaterOrEqualTwo(memgradeid, giftdata.NeedGrade)) { isdataok = false; result.success = false; result.msg = "用户等级不足!"; result.status = -6; return(result); } } #endregion ShippingAddressInfo shipdata = GetShippingAddress(regionId); if (shipdata == null) { isdataok = false; result.success = false; result.msg = "错误的收货人地址信息!"; result.status = -6; return(result); } if (isdataok) { gorditemlist.Add(new GiftOrderItemModel { GiftId = giftdata.Id, Counts = count }); GiftOrderModel createorderinfo = new GiftOrderModel(); createorderinfo.Gifts = gorditemlist; createorderinfo.CurrentUser = curUser; createorderinfo.ReceiveAddress = shipdata; GiftOrderInfo orderdata = _iGiftsOrderService.CreateOrder(createorderinfo); result.success = true; result.msg = orderdata.Id.ToString(); result.status = 1; } return(result); }
public JsonResult SubmitOrder(long id, long regionId, int count) { Result result = new Result() { success = false, msg = "未知错误", status = 0 }; Result str = result; bool flag = true; if (count < 1) { flag = false; str.success = false; str.msg = "错误的兑换数量!"; str.status = -8; return(Json(str)); } List <GiftOrderItemModel> giftOrderItemModels = new List <GiftOrderItemModel>(); UserMemberInfo member = ServiceHelper.Create <IMemberService>().GetMember(base.CurrentUser.Id); GiftInfo byId = giftser.GetById(id); if (byId == null) { flag = false; str.success = false; str.msg = "礼品不存在!"; str.status = -2; return(Json(str)); } if (byId.GetSalesStatus != GiftInfo.GiftSalesStatus.Normal) { flag = false; str.success = false; str.msg = "礼品己失效!"; str.status = -2; return(Json(str)); } if (count > byId.StockQuantity) { flag = false; str.success = false; int stockQuantity = byId.StockQuantity; str.msg = string.Concat("礼品库存不足,仅剩 ", stockQuantity.ToString(), " 件!"); str.status = -3; return(Json(str)); } if (byId.NeedIntegral < 1) { flag = false; str.success = false; str.msg = "礼品关联等级信息有误或礼品积分数据有误!"; str.status = -5; return(Json(str)); } if (byId.LimtQuantity > 0 && orderser.GetOwnBuyQuantity(base.CurrentUser.Id, id) + count > byId.LimtQuantity) { flag = false; str.success = false; str.msg = "超过礼品限兑数量!"; str.status = -4; return(Json(str)); } if (byId.NeedIntegral * count > member.AvailableIntegrals) { flag = false; str.success = false; str.msg = "积分不足!"; str.status = -6; return(Json(str)); } if (member.HistoryIntegral < byId.GradeIntegral) { flag = false; str.success = false; str.msg = "用户等级不足!"; str.status = -6; return(Json(str)); } ShippingAddressInfo shippingAddress = GetShippingAddress(new long?(regionId)); if (shippingAddress == null) { flag = false; str.success = false; str.msg = "错误的收货人地址信息!"; str.status = -6; return(Json(str)); } if (flag) { GiftOrderItemModel giftOrderItemModel = new GiftOrderItemModel() { GiftId = byId.Id, Counts = count }; giftOrderItemModels.Add(giftOrderItemModel); GiftOrderModel giftOrderModel = new GiftOrderModel() { Gifts = giftOrderItemModels, CurrentUser = member, ReceiveAddress = shippingAddress }; GiftOrderInfo giftOrderInfo = orderser.CreateOrder(giftOrderModel); str.success = true; str.msg = giftOrderInfo.Id.ToString(); str.status = 1; } return(Json(str)); }
public JsonResult SubmitOrder(long id, long regionId, int count) { Result result = new Result() { success = false, msg = "Unknown error", status = 0 }; Result str = result; bool flag = true; if (count < 1) { flag = false; str.success = false; str.msg = "Exchange quantity error!"; str.status = -8; return(Json(str)); } List <GiftOrderItemModel> giftOrderItemModels = new List <GiftOrderItemModel>(); UserMemberInfo member = ServiceHelper.Create <IMemberService>().GetMember(base.CurrentUser.Id); GiftInfo byId = giftser.GetById(id); if (byId == null) { flag = false; str.success = false; str.msg = "Gift does not exist!"; str.status = -2; return(Json(str)); } if (byId.GetSalesStatus != GiftInfo.GiftSalesStatus.Normal) { flag = false; str.success = false; str.msg = "Gift expired!"; str.status = -2; return(Json(str)); } if (count > byId.StockQuantity) { flag = false; str.success = false; int stockQuantity = byId.StockQuantity; str.msg = string.Concat("Gift inventory shortage, only remain ", stockQuantity.ToString(), " items!"); str.status = -3; return(Json(str)); } if (byId.NeedIntegral < 1) { flag = false; str.success = false; str.msg = "Gifts associated level information is wrong or points wrong!"; str.status = -5; return(Json(str)); } if (byId.LimtQuantity > 0 && orderser.GetOwnBuyQuantity(base.CurrentUser.Id, id) + count > byId.LimtQuantity) { flag = false; str.success = false; str.msg = "Exceed gift exchange quantity!"; str.status = -4; return(Json(str)); } if (byId.NeedIntegral * count > member.AvailableIntegrals) { flag = false; str.success = false; str.msg = "Lack of points!"; str.status = -6; return(Json(str)); } if (member.HistoryIntegral < byId.GradeIntegral) { flag = false; str.success = false; str.msg = "Lack of Level!"; str.status = -6; return(Json(str)); } ShippingAddressInfo shippingAddress = GetShippingAddress(new long?(regionId)); if (shippingAddress == null) { flag = false; str.success = false; str.msg = "Shipping address error!"; str.status = -6; return(Json(str)); } if (flag) { GiftOrderItemModel giftOrderItemModel = new GiftOrderItemModel() { GiftId = byId.Id, Counts = count }; giftOrderItemModels.Add(giftOrderItemModel); GiftOrderModel giftOrderModel = new GiftOrderModel() { Gifts = giftOrderItemModels, CurrentUser = member, ReceiveAddress = shippingAddress }; GiftOrderInfo giftOrderInfo = orderser.CreateOrder(giftOrderModel); str.success = true; str.msg = giftOrderInfo.Id.ToString(); str.status = 1; } return(Json(str)); }