From 1161def58a2e6a6bcbfa96268d9b34618a9f7f2d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9B=B9=E7=A3=8A?= <45566618@qq.com> Date: Thu, 18 Jul 2024 21:12:33 +0800 Subject: [PATCH] =?UTF-8?q?=E5=9B=A2=E8=B4=AD=E3=80=81=E9=99=90=E6=97=B6?= =?UTF-8?q?=E7=A7=92=E6=9D=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../app/AppMassagePackageController.java | 32 +- .../bl/massage/dao/MassagePackageDao.java | 2 + .../bl/massage/entity/MassagePackage.java | 65 +- .../service/MassagePackageService.java | 4 +- .../impl/MassagePackageServiceImpl.java | 97 +++ .../app/AppUserPackageOrderController.java | 25 +- .../modules/bl/order/dao/UserPackageDao.java | 2 + .../bl/order/dao/UserPackageDetailDao.java | 2 + .../bl/order/dao/UserPackageOrderDao.java | 7 + .../dao/UserPackageOrdersMappingDao.java | 2 + .../bl/order/entity/UserPackageOrder.java | 53 +- .../service/UserPackageDetailService.java | 1 + .../service/UserPackageOrderService.java | 12 + .../UserPackageOrdersMappingService.java | 2 + .../bl/order/service/UserPackageService.java | 6 + .../impl/UserPackageDetailServiceImpl.java | 7 + .../impl/UserPackageOrderServiceImpl.java | 588 +++++++++++++++++- .../UserPackageOrdersMappingServiceImpl.java | 6 +- .../service/impl/UserPackageServiceImpl.java | 12 + .../pay/controller/app/AliPayController.java | 266 +++++++- .../app/ApiWeiXinPayController.java | 7 + .../sqx/modules/pay/service/WxService.java | 2 + .../pay/service/impl/WxServiceImpl.java | 257 +++++++- .../mapper/bl/massage/MassagePackageDao.xml | 93 ++- .../mapper/bl/order/UserPackageDao.xml | 5 + .../mapper/bl/order/UserPackageDetailDao.xml | 4 + .../mapper/bl/order/UserPackageOrderDao.xml | 46 ++ .../bl/order/UserPackageOrdersMappingDao.xml | 5 + 28 files changed, 1586 insertions(+), 24 deletions(-) diff --git a/src/main/java/com/sqx/modules/bl/massage/app/AppMassagePackageController.java b/src/main/java/com/sqx/modules/bl/massage/app/AppMassagePackageController.java index eb2d208..b2e2d9f 100644 --- a/src/main/java/com/sqx/modules/bl/massage/app/AppMassagePackageController.java +++ b/src/main/java/com/sqx/modules/bl/massage/app/AppMassagePackageController.java @@ -1,16 +1,15 @@ package com.sqx.modules.bl.massage.app; +import com.sqx.common.utils.DateUtils; import com.sqx.common.utils.Result; import com.sqx.modules.app.annotation.Login; import com.sqx.modules.bl.massage.entity.MassagePackage; +import com.sqx.modules.bl.massage.entity.MassagePackageDetail; import com.sqx.modules.bl.massage.service.MassagePackageService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import java.text.SimpleDateFormat; import java.util.Date; @@ -23,7 +22,7 @@ public class AppMassagePackageController { @Autowired private MassagePackageService service; -// @Login + @Login @GetMapping("/findPage") @ApiOperation("查询按服务包(分页)") public Result findPage(MassagePackage massagePackage){ @@ -31,7 +30,7 @@ public class AppMassagePackageController { return service.findPage(massagePackage); } -// @Login + @Login @GetMapping("/findPackageAndMassagePage") @ApiOperation("查询按服务包及项目(分页)") public Result findPackageAndMassagePage(MassagePackage massagePackage){ @@ -39,4 +38,25 @@ public class AppMassagePackageController { return service.findPackageAndMassagePage(massagePackage); } + @Login + @GetMapping("/findAppActivityPage") + @ApiOperation("查询按服务包(分页)") + public Result findAppActivityPage(MassagePackage massagePackage){ + return service.findAppActivityPage(massagePackage); + } + + @Login + @GetMapping("/getAppGroupDetail") + @ApiOperation("查询团购详情") + public Result getAppGroupDetail(@RequestAttribute("userId") Long userId,MassagePackage massagePackage){ + return service.getAppGroupDetail(userId,massagePackage); + } + + @Login + @GetMapping("/getAppFlashDetail") + @ApiOperation("查询限时秒杀详情") + public Result getAppFlashDetail(@RequestAttribute("userId") Long userId,MassagePackage massagePackage){ + return service.getAppFlashDetail(userId,massagePackage); + } + } diff --git a/src/main/java/com/sqx/modules/bl/massage/dao/MassagePackageDao.java b/src/main/java/com/sqx/modules/bl/massage/dao/MassagePackageDao.java index 03a0543..fb1a723 100644 --- a/src/main/java/com/sqx/modules/bl/massage/dao/MassagePackageDao.java +++ b/src/main/java/com/sqx/modules/bl/massage/dao/MassagePackageDao.java @@ -19,4 +19,6 @@ public interface MassagePackageDao extends BaseMapper { int updatePrice(MassagePackage massagePackage); int delete(MassagePackage massagePackage); IPage findPackageAndMassagePage(Page page,@Param("params") MassagePackage massagePackage); + IPage findAppActivityPage(Page page,@Param("params") MassagePackage massagePackage); + MassagePackage getAppActivityDetail(Long id); } \ No newline at end of file diff --git a/src/main/java/com/sqx/modules/bl/massage/entity/MassagePackage.java b/src/main/java/com/sqx/modules/bl/massage/entity/MassagePackage.java index 58de91f..5499490 100644 --- a/src/main/java/com/sqx/modules/bl/massage/entity/MassagePackage.java +++ b/src/main/java/com/sqx/modules/bl/massage/entity/MassagePackage.java @@ -37,6 +37,12 @@ public class MassagePackage implements Serializable { */ private Integer type; + /** + * 类型名称 + */ + @TableField(exist = false) + private String typeName; + /** * 原价 */ @@ -112,16 +118,47 @@ public class MassagePackage implements Serializable { */ private Long classifyId; + /** + * 服务分类 + */ + @TableField(exist = false) + private Long classifyName; + /** * 等级 3新手 4专家 5资深 */ private Integer level; /** - * 类型名称 + * 组团人数 + */ + private Integer groupNum; + + /** + * 正在拼团人数 */ @TableField(exist = false) - private String typeName; + private Integer buyGroupNum; + + /** + * 开始时间 + */ + private String startTime; + + /** + * 结束时间 + */ + private String endTime; + + /** + * 是否活动0否1是 + */ + private Integer isActivity; + + /** + * 是否只限新用户0否1是 + */ + private Integer isNewer; /** * 服务次数 @@ -129,6 +166,30 @@ public class MassagePackage implements Serializable { @TableField(exist = false) private Integer serviceCount; + /** + * 服务时长 + */ + @TableField(exist = false) + private Integer duration; + + /** + * 是否限制性别 0不限制 1男 2女 + */ + @TableField(exist = false) + private Integer isSex; + + /** + * 适用人群 + */ + @TableField(exist = false) + private String applyPeople; + + /** + * 简介 + */ + @TableField(exist = false) + private String jianjie; + /** * 分类标识 */ diff --git a/src/main/java/com/sqx/modules/bl/massage/service/MassagePackageService.java b/src/main/java/com/sqx/modules/bl/massage/service/MassagePackageService.java index 764a6d9..69a74a2 100644 --- a/src/main/java/com/sqx/modules/bl/massage/service/MassagePackageService.java +++ b/src/main/java/com/sqx/modules/bl/massage/service/MassagePackageService.java @@ -14,6 +14,8 @@ public interface MassagePackageService extends IService { int updateStatus(MassagePackage massagePackage); int updatePrice(MassagePackage massagePackage); int delete(MassagePackage massagePackage); - Result findPackageAndMassagePage(MassagePackage massagePackage); + Result findAppActivityPage(MassagePackage massagePackage); + Result getAppGroupDetail(Long userId,MassagePackage massagePackage); + Result getAppFlashDetail(Long userId,MassagePackage massagePackage); } \ No newline at end of file diff --git a/src/main/java/com/sqx/modules/bl/massage/service/impl/MassagePackageServiceImpl.java b/src/main/java/com/sqx/modules/bl/massage/service/impl/MassagePackageServiceImpl.java index f5729eb..9c75ac6 100644 --- a/src/main/java/com/sqx/modules/bl/massage/service/impl/MassagePackageServiceImpl.java +++ b/src/main/java/com/sqx/modules/bl/massage/service/impl/MassagePackageServiceImpl.java @@ -2,16 +2,39 @@ package com.sqx.modules.bl.massage.service.impl; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.sqx.common.utils.DateUtils; import com.sqx.common.utils.PageUtils; import com.sqx.common.utils.Result; +import com.sqx.modules.app.entity.UserEntity; +import com.sqx.modules.app.service.UserService; +import com.sqx.modules.bl.collect.entity.CollectMassage; +import com.sqx.modules.bl.collect.service.CollectMassageService; import com.sqx.modules.bl.massage.dao.MassagePackageDao; import com.sqx.modules.bl.massage.entity.MassagePackage; +import com.sqx.modules.bl.massage.entity.MassagePackageDetail; import com.sqx.modules.bl.massage.service.MassagePackageService; +import com.sqx.modules.bl.order.entity.UserPackageOrder; +import com.sqx.modules.bl.order.service.UserPackageOrderService; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.Date; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + @Service public class MassagePackageServiceImpl extends ServiceImpl implements MassagePackageService { + @Autowired + UserPackageOrderService orderService; + + @Autowired + private CollectMassageService collectMassageService; + + @Autowired + private UserService userService; + @Override public Result findPage(MassagePackage massagePackage){ Page pages=new Page<>(massagePackage.getPage(),massagePackage.getLimit()); @@ -58,4 +81,78 @@ public class MassagePackageServiceImpl extends ServiceImpl pages=new Page<>(massagePackage.getPage(),massagePackage.getLimit()); + return Result.success().put("data",new PageUtils(baseMapper.findAppActivityPage(pages,massagePackage))); + } + + /** + * 查询团购详情 + * @param userId + * @param massagePackage + * @return 团购详情(拼团人数,正在拼团订单,正在拼团人,时间,差几人拼成) + */ + @Override + public Result getAppGroupDetail(Long userId,MassagePackage massagePackage){ + //插入浏览历史 + CollectMassage collectMassage=new CollectMassage(); + collectMassage.setClassify(2); + collectMassage.setUserId(userId); + collectMassage.setProjectId(massagePackage.getId()); + collectMassage.setFlag(3); + collectMassageService.insertCollect(collectMassage); + Map map = new HashMap(); + MassagePackage entity = baseMapper.getAppActivityDetail(massagePackage.getId()); + List groupNoList = orderService.getActivityOrderList(massagePackage.getId(),4); + int groupNum = entity.getGroupNum(); + Map userMap = new HashMap(); + if(groupNoList.size()>0){ + for(int i=0;i< groupNoList.size();i++){ + UserPackageOrder userPackageOrder = groupNoList.get(i); + userPackageOrder.setStartTime(entity.getStartTime()); + userPackageOrder.setEndTime(entity.getEndTime()); + int lessNum = userPackageOrder.getLessNum(); + lessNum = groupNum - lessNum; + userPackageOrder.setLessNum(lessNum); + String groupNo = userPackageOrder.getGroupNo(); + List orderList = orderService.getActivityOrderListByGroupNo(groupNo); + if(orderList.size()>0){ + for(UserPackageOrder order : orderList){ + UserEntity user = userService.selectUserById(order.getUserId()); + String phone = user.getPhone().trim(); + phone = phone.substring(phone.length()-4); + order.setPhone(phone); + order.setAvatar(user.getAvatar()); + userMap.put(order.getUserId(),phone); + } + userPackageOrder.setOrderList(orderList); + } + } + } + entity.setBuyGroupNum(map.size()); + map.put("groupData",entity); + map.put("ordersData",groupNoList); + return Result.success(map); + } + + /** + * 查询限时秒杀详情 + * @param userId + * @param massagePackage + */ + @Override + public Result getAppFlashDetail(Long userId,MassagePackage massagePackage){ + //插入浏览历史 + CollectMassage collectMassage=new CollectMassage(); + collectMassage.setClassify(2); + collectMassage.setUserId(userId); + collectMassage.setProjectId(massagePackage.getId()); + collectMassage.setFlag(4); + collectMassageService.insertCollect(collectMassage); + MassagePackage entity = baseMapper.getAppActivityDetail(massagePackage.getId()); + return Result.success().put("data",entity); + } + } \ No newline at end of file diff --git a/src/main/java/com/sqx/modules/bl/order/app/AppUserPackageOrderController.java b/src/main/java/com/sqx/modules/bl/order/app/AppUserPackageOrderController.java index 6f4c6a4..5580cc0 100644 --- a/src/main/java/com/sqx/modules/bl/order/app/AppUserPackageOrderController.java +++ b/src/main/java/com/sqx/modules/bl/order/app/AppUserPackageOrderController.java @@ -41,7 +41,7 @@ public class AppUserPackageOrderController { @PostMapping("/findUserPackageOrders") @ApiOperation("查询服务包订单") public Result findUserPackageOrders(@RequestBody UserPackageOrder userPackageOrder){ - //入参:用户ID,代金券IDS,原总金额,应付总金额,会员优惠比, + //入参:用户ID return service.findUserPackageOrders(userPackageOrder); } @@ -53,5 +53,28 @@ public class AppUserPackageOrderController { return service.selectOrdersDetails(ordersId); } + @Login + @PostMapping("/insertGroupOrders") + @ApiOperation("添加团购订单") + public Result insertGroupOrders(@RequestBody UserPackageOrder userPackageOrder){ + //入参:用户ID,代金券IDS,会员优惠比,团号,开始时间,结束时间,是否只限新用户 + return service.insertGroupOrders(userPackageOrder); + } + + @Login + @PostMapping("/payGroupOrders") + @ApiOperation("支付团购订单") + public Result payGroupOrders(Long ordersId){ + //入参:用户ID,代金券IDS,会员优惠比,团号, + return service.payGroupOrders(ordersId); + } + + @Login + @PostMapping("/insertFlashOrders") + @ApiOperation("添加限时秒杀订单") + public Result insertFlashOrders(@RequestBody UserPackageOrder userPackageOrder){ + //入参:用户ID,代金券IDS,会员优惠比,开始时间,结束时间,是否只限新用户 + return service.insertFlashOrders(userPackageOrder); + } } diff --git a/src/main/java/com/sqx/modules/bl/order/dao/UserPackageDao.java b/src/main/java/com/sqx/modules/bl/order/dao/UserPackageDao.java index b2fa820..f4b919b 100644 --- a/src/main/java/com/sqx/modules/bl/order/dao/UserPackageDao.java +++ b/src/main/java/com/sqx/modules/bl/order/dao/UserPackageDao.java @@ -24,4 +24,6 @@ public interface UserPackageDao extends BaseMapper { UserPackage getMyPackageById(Long id); + int deletePackageByOrders(Long ordersId); + } \ No newline at end of file diff --git a/src/main/java/com/sqx/modules/bl/order/dao/UserPackageDetailDao.java b/src/main/java/com/sqx/modules/bl/order/dao/UserPackageDetailDao.java index a2014f9..54da8eb 100644 --- a/src/main/java/com/sqx/modules/bl/order/dao/UserPackageDetailDao.java +++ b/src/main/java/com/sqx/modules/bl/order/dao/UserPackageDetailDao.java @@ -25,4 +25,6 @@ public interface UserPackageDetailDao extends BaseMapper { UserPackageDetail findMassagePackageDetailsUsed(Long mainId); + int deleteDetailByMain(Long mainId); + } \ No newline at end of file diff --git a/src/main/java/com/sqx/modules/bl/order/dao/UserPackageOrderDao.java b/src/main/java/com/sqx/modules/bl/order/dao/UserPackageOrderDao.java index ff60655..278fbcb 100644 --- a/src/main/java/com/sqx/modules/bl/order/dao/UserPackageOrderDao.java +++ b/src/main/java/com/sqx/modules/bl/order/dao/UserPackageOrderDao.java @@ -32,5 +32,12 @@ public interface UserPackageOrderDao extends BaseMapper { int updateStatus(UserPackageOrder userPackageOrder); + List getActivityOrderList(Long id,Integer status); + + List getActivityOrderListByGroupNo(String groupNo,Long userId); + + int updateStatusByGroupNo(UserPackageOrder userPackageOrder); + + List getUnGroupOrderList(); } \ No newline at end of file diff --git a/src/main/java/com/sqx/modules/bl/order/dao/UserPackageOrdersMappingDao.java b/src/main/java/com/sqx/modules/bl/order/dao/UserPackageOrdersMappingDao.java index 3f82092..a48aa62 100644 --- a/src/main/java/com/sqx/modules/bl/order/dao/UserPackageOrdersMappingDao.java +++ b/src/main/java/com/sqx/modules/bl/order/dao/UserPackageOrdersMappingDao.java @@ -15,4 +15,6 @@ public interface UserPackageOrdersMappingDao extends BaseMapper couponUserList; + @TableField(exist = false) + private List orderList; + public UserPackageOrder() {} } diff --git a/src/main/java/com/sqx/modules/bl/order/service/UserPackageDetailService.java b/src/main/java/com/sqx/modules/bl/order/service/UserPackageDetailService.java index 15725ab..c1d8b95 100644 --- a/src/main/java/com/sqx/modules/bl/order/service/UserPackageDetailService.java +++ b/src/main/java/com/sqx/modules/bl/order/service/UserPackageDetailService.java @@ -13,4 +13,5 @@ public interface UserPackageDetailService extends IService { Result findAppUsedQuantity(UserPackageDetail userPackageDetail); Result getMyPackageDetail(UserPackageDetail userPackageDetail); UserPackageDetail findMassagePackageDetailsUsed(Long mainId); + int deleteDetailByMain(Long mainId); } diff --git a/src/main/java/com/sqx/modules/bl/order/service/UserPackageOrderService.java b/src/main/java/com/sqx/modules/bl/order/service/UserPackageOrderService.java index 564a474..1078b78 100644 --- a/src/main/java/com/sqx/modules/bl/order/service/UserPackageOrderService.java +++ b/src/main/java/com/sqx/modules/bl/order/service/UserPackageOrderService.java @@ -5,6 +5,7 @@ import com.sqx.common.utils.Result; import com.sqx.modules.bl.order.entity.UserPackageOrder; import javax.servlet.http.HttpServletRequest; +import java.util.List; public interface UserPackageOrderService extends IService { Result findPage(UserPackageOrder userPackageOrder); @@ -19,4 +20,15 @@ public interface UserPackageOrderService extends IService { Result findUserPackageOrders(UserPackageOrder userPackageOrder); + List getActivityOrderList(Long id,Integer status); + + List getActivityOrderListByGroupNo(String groupNo); + + Result insertGroupOrders(UserPackageOrder userPackageOrder); + + Result payGroupOrders(Long ordersId); + + Result insertFlashOrders(UserPackageOrder userPackageOrder); + + } diff --git a/src/main/java/com/sqx/modules/bl/order/service/UserPackageOrdersMappingService.java b/src/main/java/com/sqx/modules/bl/order/service/UserPackageOrdersMappingService.java index ba7979a..c49cac0 100644 --- a/src/main/java/com/sqx/modules/bl/order/service/UserPackageOrdersMappingService.java +++ b/src/main/java/com/sqx/modules/bl/order/service/UserPackageOrdersMappingService.java @@ -12,4 +12,6 @@ public interface UserPackageOrdersMappingService extends IService findListByOrdersId(Long ordersId); int insert(UserPackageOrdersMapping userPackageOrdersMapping); + + int deleteByOrdersId(Long ordersId); } \ No newline at end of file diff --git a/src/main/java/com/sqx/modules/bl/order/service/UserPackageService.java b/src/main/java/com/sqx/modules/bl/order/service/UserPackageService.java index 9d3d2a0..40650f7 100644 --- a/src/main/java/com/sqx/modules/bl/order/service/UserPackageService.java +++ b/src/main/java/com/sqx/modules/bl/order/service/UserPackageService.java @@ -4,6 +4,8 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.sqx.common.utils.Result; import com.sqx.modules.bl.order.entity.UserPackage; +import java.util.List; + public interface UserPackageService extends IService { Result findList(UserPackage userPackage); @@ -15,4 +17,8 @@ public interface UserPackageService extends IService { Result findMyPackageList(UserPackage userPackage); UserPackage getMyPackageById(Long id); + + int deletePackageByOrders(Long ordersId); + + List findList(Long ordersId); } \ No newline at end of file diff --git a/src/main/java/com/sqx/modules/bl/order/service/impl/UserPackageDetailServiceImpl.java b/src/main/java/com/sqx/modules/bl/order/service/impl/UserPackageDetailServiceImpl.java index 710c0f9..df5e3d1 100644 --- a/src/main/java/com/sqx/modules/bl/order/service/impl/UserPackageDetailServiceImpl.java +++ b/src/main/java/com/sqx/modules/bl/order/service/impl/UserPackageDetailServiceImpl.java @@ -75,4 +75,11 @@ public class UserPackageDetailServiceImpl extends ServiceImpl getActivityOrderList(Long id,Integer status){ + return baseMapper.getActivityOrderList(id,status); + } + + /** + * 获取拼团订单信息 + * @param groupNo + * @return + */ + @Override + public List getActivityOrderListByGroupNo(String groupNo){ + return baseMapper.getActivityOrderListByGroupNo(groupNo,null); + } + + @Override + @Transactional + public Result insertGroupOrders(UserPackageOrder userPackageOrder){ + try { + Long userId = userPackageOrder.getUserId(); + String groupNo = userPackageOrder.getGroupNo(); + int isNewer = userPackageOrder.getIsNewer(); + String startTimeStr = userPackageOrder.getStartTime(); + String endTimeStr = userPackageOrder.getEndTime(); + Date startTime = DateUtils.stringToDate(startTimeStr,"yyyy-MM-dd HH:mm:ss"); + Date endTime = DateUtils.stringToDate(endTimeStr,"yyyy-MM-dd HH:mm:ss"); + if(startTime.getTime()>System.currentTimeMillis()){ + return Result.error("团购还未开始,请稍后重试!"); + } + if(endTime.getTime() list = baseMapper.getActivityOrderListByGroupNo(groupNo,userId); + if(list.size()>0){ + for(UserPackageOrder orders : list){ + if(orders.getStatus().equals(1) || orders.getStatus().equals(4)){ + return Result.error("您已参与此团购,无法重复参加!"); + } + //取消代金券 + if (orders.getCouponId() != null) { + String couponIds = orders.getCouponId(); + if(couponIds.length()>0) { + String[] couponArr = couponIds.trim().split(","); + for(int i=0;i classifyIdArr = Lists.newArrayList(); + List ordersPackageList = userPackageOrder.getOrdersPackageList(); + for (UserPackageOrdersMapping ordersPackage : ordersPackageList) { + MassagePackage massagePackage = massagePackageService.getById(ordersPackage.getPackageId()); + BigDecimal sum = massagePackage.getPrice().multiply(new BigDecimal(ordersPackage.getNum())); + sum = sum.setScale(0,BigDecimal.ROUND_UP); + if(massagePackage.getIsCanCoupon() == 1){ + canCouponMoney = canCouponMoney.add(sum); + } + if(massagePackage.getIsCanVip() == 1){ + canVipMoney = canVipMoney.add(sum); + } + totalMoney = totalMoney.add(sum); + Long classifyId = massagePackage.getClassifyId(); + classifyIdArr.add(classifyId); + } + + BigDecimal couponMinMoney = BigDecimal.ZERO;//所有代金券的使用额度总和 + List CouponUserList = Lists.newArrayList(); + String couponIds = userPackageOrder.getCouponId(); + if(couponIds!=null && couponIds.length()>0){ + if(canCouponMoney.compareTo(BigDecimal.ZERO)==0){ + return Result.error("此次团购不支持优惠券!"); + } + String[] couponArr = couponIds.trim().split(","); + BigDecimal couponMoney = new BigDecimal(0); + int count = 0; + for(int i=0;i0) { + UserVip userVip = userVipService.selectUserVipByUserId(userPackageOrder.getUserId()); + if (userVip != null) { + if (userVip.getIsVip() == 1) { + //获取用户到期时间 + Date date = DateUtils.stringToDate(userVip.getEndTime(),"yyyy-MM-dd HH:mm:ss"); + if (date.getTime() >= System.currentTimeMillis()) { + VipDetails vipDetails = vipDetailsDao.selectOne(new QueryWrapper().eq("vip_name_type", userVip.getVipNameType())); + if (vipDetails != null) { + vipRate = vipDetails.getRate(); + } + } + } + } + } + userPackageOrder.setVipRate(vipRate); + BigDecimal vipMoney = canVipMoney; + BigDecimal unCanVipMoney = totalMoney.subtract(canVipMoney);//非会员优惠金额 + canVipMoney = canVipMoney.multiply(userPackageOrder.getVipRate()).divide(new BigDecimal(100));//对可用vip的金额进行优惠 + canVipMoney = canVipMoney.setScale(0,BigDecimal.ROUND_UP); + BigDecimal vipReductionMoney = vipMoney.subtract(canVipMoney); + userPackageOrder.setVipReductionMoney(vipReductionMoney);//会员减免金额 + totalMoney = canVipMoney.add(unCanVipMoney);//优惠后的总金额 + totalMoney = totalMoney.subtract(userPackageOrder.getCouponMoney());//减去优惠券额度后的总金额 + userPackageOrder.setPayMoney(totalMoney); + userPackageOrder.setCreateTime(DateUtils.format(new Date())); + userPackageOrder.setStatus(0); + userPackageOrder.setOrdersNo(getGeneralOrder()); + userPackageOrder.setGroupNo(getGeneralGroupNo()); + //插入订单表 + baseMapper.insertOrders(userPackageOrder); + Long ordersId = userPackageOrder.getOrdersId(); + //插入订单代金券表 + if(CouponUserList.size()>0){ + for(int i=0;ilambdaUpdate().eq(CouponUser::getId, couponUser.getId()).set(CouponUser::getStatus, 1)); + } + userPackageOrder.setCouponUserList(CouponUserList); + } + //插入用户-服务包-订单-服务包与订单映射关系表 + for (UserPackageOrdersMapping ordersPackage : ordersPackageList) { + ordersPackage.setOrdersId(ordersId); + userPackageOrdersMappingService.insert(ordersPackage); + } + } catch (Exception e) { + e.printStackTrace(); + log.error("添加订单异常" + e.getMessage(), e); + } + return Result.success().put("data", userPackageOrder); + } + + @Override + @Transactional + public Result payGroupOrders(Long ordersId) { + try { + UserPackageOrder orders = baseMapper.getById(ordersId); + if (orders == null) { + return Result.error("订单生成失败,请重新下单!"); + }else if(orders.getStatus()==1){ + return Result.error("订单已支付!"); + }else if(orders.getStatus()==2){ + return Result.error("订单已退款!"); + }else if(orders.getStatus()==3){ + return Result.error("订单支付超时,请重新发起购买!"); + } + UserMoney userMoney = userMoneyService.selectUserMoneyByUserId(orders.getUserId()); + if (userMoney.getMoney().doubleValue() < orders.getPayMoney().doubleValue()) { + return Result.error("钱包余额不足,请充值!"); + } + userMoneyService.updateMoney(2, orders.getUserId(), orders.getPayMoney().doubleValue()); + UserMoneyDetails userMoneyDetails = new UserMoneyDetails(); + //查询用户当前余额 + UserMoney userNowMoney = userMoneyService.selectUserMoneyByUserId(orders.getUserId()); + //插入余额 + userMoneyDetails.setBalance(userNowMoney.getMoney()); + //插入操作类型为已操作用户余额 + userMoneyDetails.setManipulateType(2); + userMoneyDetails.setMoney(orders.getPayMoney()); + userMoneyDetails.setUserId(orders.getUserId()); + userMoneyDetails.setContent("订单号:" + orders.getOrdersNo() + ",已经下单成功!"); + userMoneyDetails.setTitle("支付服务包订单"); + userMoneyDetails.setType(2); + userMoneyDetails.setState(2); + userMoneyDetails.setCreateTime(DateUtils.format(new Date())); + userMoneyDetails.setBlRole(1); + userMoneyDetails.setBlFlag(1); + userMoneyDetailsService.insert(userMoneyDetails); + orders.setStatus(4);//团购中 + orders.setPayWay(5); + orders.setPayTime(DateUtils.format(new Date())); + baseMapper.updateStatus(orders); + //获取支付已支付的数量是否满足此次团购人数,是则完成此次拼团,并将商品发送给客户 + int buyGroupNum = 0; + int groupNum = 0; + List list = baseMapper.getActivityOrderListByGroupNo(orders.getGroupNo(),null); + if(list.size()>0){ + for(UserPackageOrder userPackageOrder : list) { + if (userPackageOrder.getStatus().equals(1) || userPackageOrder.getStatus().equals(4)) { + buyGroupNum++; + } + } + } + MassagePackage massagePackage = null; + List mappingList = userPackageOrdersMappingService.findListByOrdersId(ordersId); + if(mappingList.size()>0){ + Long packageId = mappingList.get(0).getPackageId(); + massagePackage = massagePackageService.getById(packageId); + groupNum = massagePackage.getGroupNum(); + } + if(buyGroupNum>0 && groupNum>0 && buyGroupNum>=groupNum){ + for(UserPackageOrder userPackageOrder : list) { + if (userPackageOrder.getStatus().equals(1) || userPackageOrder.getStatus().equals(4)) { + //删除单据防止重复数据 + List userPackageList = userPackageService.findList(userPackageOrder.getOrdersId()); + if(userPackageList.size()>0){ + for(UserPackage userPackage : userPackageList){ + userPackageService.removeById(userPackage.getId()); + userPackageDetailService.deleteDetailByMain(userPackage.getId()); + } + } + //插入单据 + List packageOrderMappingList = userPackageOrdersMappingService.findListByOrdersId(userPackageOrder.getOrdersId()); + for (UserPackageOrdersMapping ordersPackage : packageOrderMappingList) { + int quantity = ordersPackage.getNum(); + for(int i=0;i userPackageDetailList = userPackageDetailService.findMassagePackageDetails(userPackageDetail); + if(userPackageDetailList.size()>0){ + for(int j=0;jSystem.currentTimeMillis()){ + return Result.error("限时秒杀还未开始,请稍后重试!"); + } + if(endTime.getTime() classifyIdArr = Lists.newArrayList(); + List ordersPackageList = userPackageOrder.getOrdersPackageList(); + for (UserPackageOrdersMapping ordersPackage : ordersPackageList) { + MassagePackage massagePackage = massagePackageService.getById(ordersPackage.getPackageId()); + BigDecimal sum = massagePackage.getPrice().multiply(new BigDecimal(ordersPackage.getNum())); + sum = sum.setScale(0,BigDecimal.ROUND_UP); + if(massagePackage.getIsCanCoupon() == 1){ + canCouponMoney = canCouponMoney.add(sum); + } + if(massagePackage.getIsCanVip() == 1){ + canVipMoney = canVipMoney.add(sum); + } + totalMoney = totalMoney.add(sum); + Long classifyId = massagePackage.getClassifyId(); + classifyIdArr.add(classifyId); + } + BigDecimal couponMinMoney = BigDecimal.ZERO;//所有代金券的使用额度总和 + List CouponUserList = Lists.newArrayList(); + String couponIds = userPackageOrder.getCouponId(); + if(couponIds!=null && couponIds.length()>0){ + if(canCouponMoney.compareTo(BigDecimal.ZERO)==0){ + return Result.error("此次限时秒杀不支持优惠券!"); + } + String[] couponArr = couponIds.trim().split(","); + BigDecimal couponMoney = new BigDecimal(0); + int count = 0; + for(int i=0;i0) { + UserVip userVip = userVipService.selectUserVipByUserId(userPackageOrder.getUserId()); + if (userVip != null) { + if (userVip.getIsVip() == 1) { + //获取用户到期时间 + Date date = DateUtils.stringToDate(userVip.getEndTime(),"yyyy-MM-dd HH:mm:ss"); + if (date.getTime() >= System.currentTimeMillis()) { + VipDetails vipDetails = vipDetailsDao.selectOne(new QueryWrapper().eq("vip_name_type", userVip.getVipNameType())); + if (vipDetails != null) { + vipRate = vipDetails.getRate(); + } + } + } + } + } + userPackageOrder.setVipRate(vipRate); + BigDecimal vipMoney = canVipMoney; + BigDecimal unCanVipMoney = totalMoney.subtract(canVipMoney);//非会员优惠金额 + canVipMoney = canVipMoney.multiply(userPackageOrder.getVipRate()).divide(new BigDecimal(100));//对可用vip的金额进行优惠 + canVipMoney = canVipMoney.setScale(0,BigDecimal.ROUND_UP); + BigDecimal vipReductionMoney = vipMoney.subtract(canVipMoney); + userPackageOrder.setVipReductionMoney(vipReductionMoney);//会员减免金额 + totalMoney = canVipMoney.add(unCanVipMoney);//优惠后的总金额 + totalMoney = totalMoney.subtract(userPackageOrder.getCouponMoney());//减去优惠券额度后的总金额 + userPackageOrder.setPayMoney(totalMoney); + userPackageOrder.setCreateTime(DateUtils.format(new Date())); + userPackageOrder.setStatus(0); + userPackageOrder.setOrdersNo(getGeneralOrder()); + //插入订单表 + baseMapper.insertOrders(userPackageOrder); + Long ordersId = userPackageOrder.getOrdersId(); + //插入订单代金券表 + if(CouponUserList.size()>0){ + for(int i=0;ilambdaUpdate().eq(CouponUser::getId, couponUser.getId()).set(CouponUser::getStatus, 1)); + } + userPackageOrder.setCouponUserList(CouponUserList); + } + //插入用户-服务包-订单-服务包与订单映射关系表 + for (UserPackageOrdersMapping ordersPackage : ordersPackageList) { + ordersPackage.setOrdersId(ordersId); + userPackageOrdersMappingService.insert(ordersPackage); + } + } catch (Exception e) { + e.printStackTrace(); + log.error("添加订单异常" + e.getMessage(), e); + } + return Result.success().put("data", userPackageOrder); + } /** * 每5分钟自动扫描未支付订单,进行取消,释放代金券 @@ -428,6 +920,88 @@ public class UserPackageOrderServiceImpl extends ServiceImpl ordersList = baseMapper.getUnGroupOrderList(); + for (UserPackageOrder orders : ordersList) { + BigDecimal userMoney = orders.getPayMoney(); + //取消订单 + orders.setStatus(2);//取消状态 + orders.setRefundTime(DateUtils.format(new Date()));//取消时间 + orders.setRefundMoney(userMoney); + baseMapper.updateById(orders); + //取消代金券 + if (orders.getCouponId() != null) { + String couponIds = orders.getCouponId(); + if(couponIds.length()>0) { + String[] couponArr = couponIds.trim().split(","); + for(int i=0;i 0){ + boolean refund = wxService.refund(orders.getOrdersNo(), orders.getPayMoney(), userMoney, orders.getPayWay()); + if (!refund) { + log.error("订单号:"+orders.getOrdersNo()+"团购订单支付宝退款失败!"); + continue; + } + } + userMoneyDetails.setManipulateType(1); + userMoneyDetails.setBlFlag(2); + } else if (orders.getPayWay() == 6) { + if(userMoney.compareTo(BigDecimal.ZERO) > 0) { + String data = aliPayController.alipayRefund(orders.getOrdersNo(), userMoney); + if (StringUtils.isNotBlank(data)) { + log.error(data); + JSONObject jsonObject = JSON.parseObject(data); + JSONObject alipay_trade_refund_response = jsonObject.getJSONObject("alipay_trade_refund_response"); + String code1 = alipay_trade_refund_response.getString("code"); + if (!"10000".equals(code1)) { + log.error("订单号:"+orders.getOrdersNo()+"团购订单微信退款失败!"); + continue; + } + } else { + log.error("订单号:"+orders.getOrdersNo()+"团购订单微信退款失败!"); + continue; + } + } + userMoneyDetails.setManipulateType(1); + userMoneyDetails.setBlFlag(2); + } else { + userMoneyService.updateMoney(1, orders.getUserId(), userMoney.doubleValue()); + //查询用户当前余额 + UserMoney userNowMoney = userMoneyService.selectUserMoneyByUserId(orders.getUserId()); + //插入余额 + userMoneyDetails.setBalance(userNowMoney.getMoney()); + //插入操作类型为已操作用户余额 + userMoneyDetails.setManipulateType(2); + userMoneyDetails.setBlFlag(1); + } + userMoneyDetails.setMoney(userMoney); + userMoneyDetails.setUserId(orders.getUserId()); + userMoneyDetails.setContent("订单号:" + orders.getOrdersNo() + ",已原路退款!"); + userMoneyDetails.setTitle("团购订单退款"); + userMoneyDetails.setType(1); + userMoneyDetails.setState(2); + userMoneyDetails.setCreateTime(DateUtils.format(new Date())); + userMoneyDetails.setBlRole(1); + userMoneyDetailsService.save(userMoneyDetails); + } + } + public String getGeneralOrder() { Date date = new Date(); String newString = String.format("%0" + 4 + "d", (int) ((Math.random() * 9 + 1) * 1000)); @@ -436,4 +1010,12 @@ public class UserPackageOrderServiceImpl extends ServiceImpl findList(Long ordersId){ + UserPackage userPackage = new UserPackage(); + userPackage.setOrdersId(ordersId); + return baseMapper.findList(userPackage); + } + } \ No newline at end of file diff --git a/src/main/java/com/sqx/modules/pay/controller/app/AliPayController.java b/src/main/java/com/sqx/modules/pay/controller/app/AliPayController.java index 36d5c8e..2cdc687 100644 --- a/src/main/java/com/sqx/modules/pay/controller/app/AliPayController.java +++ b/src/main/java/com/sqx/modules/pay/controller/app/AliPayController.java @@ -1081,7 +1081,7 @@ public class AliPayController { userMoneyDetails.setBlFlag(1); userMoneyDetailsService.save(userMoneyDetails); - orders.setStatus(2); + orders.setStatus(1); orders.setPayWay(payDetails.getClassify()); orders.setPayTime(sdf.format(new Date())); userPackageOrderDao.updateStatus(orders); @@ -1138,6 +1138,112 @@ public class AliPayController { } } } + }else if(payDetails.getType()==8) { + UserPackageOrder orders = userPackageOrderDao.getByNo(outTradeNo); + UserMoneyDetails userMoneyDetails = new UserMoneyDetails(); + userMoneyDetails.setManipulateType(1); + userMoneyDetails.setUserId(orders.getUserId()); + userMoneyDetails.setMoney(orders.getPayMoney()); + userMoneyDetails.setContent("订单号:" + orders.getOrdersNo() + ",已经下单成功!"); + userMoneyDetails.setTitle("支付团购订单"); + userMoneyDetails.setType(2); + userMoneyDetails.setState(2); + userMoneyDetails.setCreateTime(sdf.format(new Date())); + userMoneyDetails.setBlRole(1); + userMoneyDetails.setBlFlag(1); + userMoneyDetailsService.save(userMoneyDetails); + orders.setStatus(4);//拼团中 + orders.setPayWay(payDetails.getClassify()); + orders.setPayTime(sdf.format(new Date())); + userPackageOrderDao.updateStatus(orders); + //获取支付已支付的数量是否满足此次团购人数,是则完成此次拼团,并将商品发送给客户 + int buyGroupNum = 0; + int groupNum = 0; + List list = userPackageOrderDao.getActivityOrderListByGroupNo(orders.getGroupNo(),null); + if(list.size()>0){ + for(UserPackageOrder userPackageOrder : list) { + if (userPackageOrder.getStatus().equals(1) || userPackageOrder.getStatus().equals(4)) { + buyGroupNum++; + } + } + } + MassagePackage massagePackage = null; + List mappingList = userPackageOrdersMappingService.findListByOrdersId(orders.getOrdersId()); + if(mappingList.size()>0){ + Long packageId = mappingList.get(0).getPackageId(); + massagePackage = massagePackageService.getById(packageId); + groupNum = massagePackage.getGroupNum(); + } + if(buyGroupNum>0 && groupNum>0 && buyGroupNum>=groupNum){ + for(UserPackageOrder userPackageOrder : list) { + if (userPackageOrder.getStatus().equals(1) || userPackageOrder.getStatus().equals(4)) { + //删除单据防止重复数据 + List userPackageList = userPackageService.findList(userPackageOrder.getOrdersId()); + if(userPackageList.size()>0){ + for(UserPackage userPackage : userPackageList){ + userPackageService.removeById(userPackage.getId()); + userPackageDetailService.deleteDetailByMain(userPackage.getId()); + } + } + //插入单据 + List packageOrderMappingList = userPackageOrdersMappingService.findListByOrdersId(userPackageOrder.getOrdersId()); + for (UserPackageOrdersMapping ordersPackage : packageOrderMappingList) { + int quantity = ordersPackage.getNum(); + for(int i=0;i userPackageDetailList = userPackageDetailService.findMassagePackageDetails(userPackageDetail); + if(userPackageDetailList.size()>0){ + for(int j=0;j list = userPackageOrderDao.getActivityOrderListByGroupNo(orders.getGroupNo(),null); + if(list.size()>0){ + for(UserPackageOrder userPackageOrder : list) { + if (userPackageOrder.getStatus().equals(1) || userPackageOrder.getStatus().equals(4)) { + buyGroupNum++; + } + } + } + MassagePackage massagePackage = null; + List mappingList = userPackageOrdersMappingService.findListByOrdersId(orders.getOrdersId()); + if(mappingList.size()>0){ + Long packageId = mappingList.get(0).getPackageId(); + massagePackage = massagePackageService.getById(packageId); + groupNum = massagePackage.getGroupNum(); + } + if(buyGroupNum>0 && groupNum>0 && buyGroupNum>=groupNum){ + for(UserPackageOrder userPackageOrder : list) { + if (userPackageOrder.getStatus().equals(1) || userPackageOrder.getStatus().equals(4)) { + //删除单据防止重复数据 + List userPackageList = userPackageService.findList(userPackageOrder.getOrdersId()); + if(userPackageList.size()>0){ + for(UserPackage userPackage : userPackageList){ + userPackageService.removeById(userPackage.getId()); + userPackageDetailService.deleteDetailByMain(userPackage.getId()); + } + } + //插入单据 + List packageOrderMappingList = userPackageOrdersMappingService.findListByOrdersId(userPackageOrder.getOrdersId()); + for (UserPackageOrdersMapping ordersPackage : packageOrderMappingList) { + int quantity = ordersPackage.getNum(); + for(int i=0;i userPackageDetailList = userPackageDetailService.findMassagePackageDetails(userPackageDetail); + if(userPackageDetailList.size()>0){ + for(int j=0;j list = userPackageOrderDao.getActivityOrderListByGroupNo(orders.getGroupNo(),null); + if(list.size()>0){ + for(UserPackageOrder userPackageOrder : list) { + if (userPackageOrder.getStatus().equals(1) || userPackageOrder.getStatus().equals(4)) { + buyGroupNum++; + } + } + } + MassagePackage massagePackage = null; + List mappingList = userPackageOrdersMappingService.findListByOrdersId(orders.getOrdersId()); + if(mappingList.size()>0){ + Long packageId = mappingList.get(0).getPackageId(); + massagePackage = massagePackageService.getById(packageId); + groupNum = massagePackage.getGroupNum(); + } + if(buyGroupNum>0 && groupNum>0 && buyGroupNum>=groupNum){ + for(UserPackageOrder userPackageOrder : list) { + if (userPackageOrder.getStatus().equals(1) || userPackageOrder.getStatus().equals(4)) { + //删除单据防止重复数据 + List userPackageList = userPackageService.findList(userPackageOrder.getOrdersId()); + if(userPackageList.size()>0){ + for(UserPackage userPackage : userPackageList){ + userPackageService.removeById(userPackage.getId()); + userPackageDetailService.deleteDetailByMain(userPackage.getId()); + } + } + //插入单据 + List packageOrderMappingList = userPackageOrdersMappingService.findListByOrdersId(userPackageOrder.getOrdersId()); + for (UserPackageOrdersMapping ordersPackage : packageOrderMappingList) { + int quantity = ordersPackage.getNum(); + for(int i=0;i userPackageDetailList = userPackageDetailService.findMassagePackageDetails(userPackageDetail); + if(userPackageDetailList.size()>0){ + for(int j=0;j list = userPackageOrderDao.getActivityOrderListByGroupNo(orders.getGroupNo(),null); + if(list.size()>0){ + for(UserPackageOrder userPackageOrder : list) { + if (userPackageOrder.getStatus().equals(1) || userPackageOrder.getStatus().equals(4)) { + buyGroupNum++; + } + } + } + MassagePackage massagePackage = null; + List mappingList = userPackageOrdersMappingService.findListByOrdersId(orders.getOrdersId()); + if(mappingList.size()>0){ + Long packageId = mappingList.get(0).getPackageId(); + massagePackage = massagePackageService.getById(packageId); + groupNum = massagePackage.getGroupNum(); + } + if(buyGroupNum>0 && groupNum>0 && buyGroupNum>=groupNum){ + for(UserPackageOrder userPackageOrder : list) { + if (userPackageOrder.getStatus().equals(1) || userPackageOrder.getStatus().equals(4)) { + //删除单据防止重复数据 + List userPackageList = userPackageService.findList(userPackageOrder.getOrdersId()); + if(userPackageList.size()>0){ + for(UserPackage userPackage : userPackageList){ + userPackageService.removeById(userPackage.getId()); + userPackageDetailService.deleteDetailByMain(userPackage.getId()); + } + } + //插入单据 + List packageOrderMappingList = userPackageOrdersMappingService.findListByOrdersId(userPackageOrder.getOrdersId()); + for (UserPackageOrdersMapping ordersPackage : packageOrderMappingList) { + int quantity = ordersPackage.getNum(); + for(int i=0;i userPackageDetailList = userPackageDetailService.findMassagePackageDetails(userPackageDetail); + if(userPackageDetailList.size()>0){ + for(int j=0;j and m.status=#{params.status} @@ -73,6 +73,7 @@ from bl_massage_package a left join sys_dict b on a.type = b.id where a.status = 1 + and a.is_activity = 0 and (a.city like concat('%',#{params.city},'%') or a.city='不限') @@ -94,5 +95,95 @@ order by sales desc,id asc + + + \ No newline at end of file diff --git a/src/main/resources/mapper/bl/order/UserPackageDao.xml b/src/main/resources/mapper/bl/order/UserPackageDao.xml index 82b8596..c90a05c 100644 --- a/src/main/resources/mapper/bl/order/UserPackageDao.xml +++ b/src/main/resources/mapper/bl/order/UserPackageDao.xml @@ -156,4 +156,9 @@ where a.id = #{id} + + DELETE FROM bl_user_package + WHERE orders_id = #{ordersId} + + \ No newline at end of file diff --git a/src/main/resources/mapper/bl/order/UserPackageDetailDao.xml b/src/main/resources/mapper/bl/order/UserPackageDetailDao.xml index 67e3ae5..5f966d9 100644 --- a/src/main/resources/mapper/bl/order/UserPackageDetailDao.xml +++ b/src/main/resources/mapper/bl/order/UserPackageDetailDao.xml @@ -218,5 +218,9 @@ where a.main_id = #{mainId} + + DELETE FROM bl_user_package_detail + WHERE main_id = #{mainId} + \ No newline at end of file diff --git a/src/main/resources/mapper/bl/order/UserPackageOrderDao.xml b/src/main/resources/mapper/bl/order/UserPackageOrderDao.xml index cf9c91a..d2a08f5 100644 --- a/src/main/resources/mapper/bl/order/UserPackageOrderDao.xml +++ b/src/main/resources/mapper/bl/order/UserPackageOrderDao.xml @@ -10,6 +10,7 @@ a.user_id, b.user_name, a.vip_rate, + a.vip_reduction_money, a.old_sum_money, a.sum_money, a.pay_money, @@ -40,6 +41,7 @@ a.user_id, b.user_name, a.vip_rate, + a.vip_reduction_money, a.old_sum_money, a.sum_money, a.pay_money, @@ -63,6 +65,7 @@ a.user_id, b.user_name, a.vip_rate, + a.vip_reduction_money, a.old_sum_money, a.sum_money, a.pay_money, @@ -109,6 +112,9 @@ vip_rate, + + vip_reduction_money, + old_sum_money, @@ -150,6 +156,9 @@ #{vipRate}, + + #{vipReductionMoney}, + #{oldSumMoney}, @@ -198,6 +207,7 @@ a.orders_no, a.user_id, a.vip_rate, + a.vip_reduction_money, a.old_sum_money, a.sum_money, a.pay_money, @@ -223,4 +233,40 @@ where orders_id = #{ordersId} + + + + + + update bl_user_package_order + set status = #{status} + where group_no = #{groupNo} + + + + \ No newline at end of file diff --git a/src/main/resources/mapper/bl/order/UserPackageOrdersMappingDao.xml b/src/main/resources/mapper/bl/order/UserPackageOrdersMappingDao.xml index 199d434..4f8ce96 100644 --- a/src/main/resources/mapper/bl/order/UserPackageOrdersMappingDao.xml +++ b/src/main/resources/mapper/bl/order/UserPackageOrdersMappingDao.xml @@ -61,4 +61,9 @@ ) + + DELETE FROM bl_user_package_order_mapping + WHERE orders_id = #{ordersId} + + \ No newline at end of file