Bladeren bron

商城各种订单消息发送

gqx 2 jaren geleden
bovenliggende
commit
e457d65bdb

+ 82 - 0
jeecg-mall-api/src/main/java/org/jeecg/modules/bus/controller/HotelController.java

@@ -15,9 +15,12 @@ import org.apache.commons.lang3.ObjectUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.jeecg.annotation.ApiLogin;
 import org.jeecg.com.util.ThirdSessionHolder;
+import org.jeecg.common.api.dto.message.MessageDTO;
 import org.jeecg.common.api.vo.Result;
 import org.jeecg.common.aspect.annotation.AutoLog;
+import org.jeecg.common.constant.CommonConstant;
 import org.jeecg.common.exception.JeecgBootException;
+import org.jeecg.common.system.api.ISysBaseAPI;
 import org.jeecg.common.system.query.QueryGenerator;
 import org.jeecg.common.util.TenantContextHolder;
 import org.jeecg.config.ApiVersion;
@@ -43,6 +46,8 @@ import org.jeecg.modules.rooms.Vo.CanUseResultVo;
 import org.jeecg.modules.rooms.entity.*;
 import org.jeecg.modules.rooms.service.*;
 import org.jeecg.modules.mall.entity.MallUserInfo;
+import org.jeecg.modules.system.entity.SysUser;
+import org.jeecg.modules.system.service.ISysUserService;
 import org.jeecg.modules.wxuser.service.IUserInfoService;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.bind.annotation.*;
@@ -104,6 +109,10 @@ public class HotelController extends WebConfig {
     private IMallOrderGoodsDetailService mallOrderGoodsDetailService;
     @Resource
     private IBusMemberBalanceLogService busMemberBalanceLogService;
+    @Resource
+    private ISysBaseAPI sysBaseAPI;
+    @Resource
+    private ISysUserService sysUserService;
     /**
      * 酒店列表查询
      *
@@ -427,6 +436,25 @@ public class HotelController extends WebConfig {
             busRoomBookingOrders.getOrderInfo().setCustomerType(1);
         }
         busRoomBookingOrdersService.bookingOrderSave(busRoomBookingOrders, isTeam);
+
+        //创建业务消息信息
+        LambdaQueryWrapper<SysUser> lambdaQueryWrapper3 = new LambdaQueryWrapper<>();
+        lambdaQueryWrapper3.eq(SysUser::getDelFlag, 0);
+        lambdaQueryWrapper3.eq(SysUser::getRelTenantIds, mallHotelOrder.getTenantId());
+        List<SysUser> sysUsers = sysUserService.list(lambdaQueryWrapper3);
+        String userIds = "";
+        for (SysUser sysUser : sysUsers) {
+            userIds += sysUser.getUsername() + ",";
+        }
+        if (userIds.length() > 0) {
+            MessageDTO messageDTO = new MessageDTO();
+            messageDTO.setFromUser("");
+            messageDTO.setToUser(userIds);
+            messageDTO.setTitle("用户预定了酒店订单");
+            messageDTO.setContent("用户预定了酒店订单");
+            messageDTO.setCategory(CommonConstant.MSG_CATEGORY_2);
+            sysBaseAPI.sendSysAnnouncement(messageDTO);
+        }
         return Result.OK("预定成功");
     }
 
@@ -571,6 +599,24 @@ public class HotelController extends WebConfig {
         updateWrapper.set(BusRoomBookingOrders::getBookingStatus, 1);
         updateWrapper.eq(BusRoomBookingOrders::getOuterOrdersNo, order.getCode());
         busRoomBookingOrdersService.update(updateWrapper);
+        //创建业务消息信息
+        LambdaQueryWrapper<SysUser> lambdaQueryWrapper = new LambdaQueryWrapper<>();
+        lambdaQueryWrapper.eq(SysUser::getDelFlag, 0);
+        lambdaQueryWrapper.eq(SysUser::getRelTenantIds, order.getTenantId());
+        List<SysUser> sysUsers = sysUserService.list(lambdaQueryWrapper);
+        String userIds = "";
+        for (SysUser sysUser : sysUsers) {
+            userIds += sysUser.getUsername() + ",";
+        }
+        if (userIds.length() > 0) {
+            MessageDTO messageDTO = new MessageDTO();
+            messageDTO.setFromUser("");
+            messageDTO.setToUser(userIds);
+            messageDTO.setTitle("酒店订单确认入住");
+            messageDTO.setContent("用户已确认酒店订单入住");
+            messageDTO.setCategory(CommonConstant.MSG_CATEGORY_2);
+            sysBaseAPI.sendSysAnnouncement(messageDTO);
+        }
         return Result.OK("确认入住成功!");
     }
 
@@ -585,6 +631,24 @@ public class HotelController extends WebConfig {
         }
         order.setStatus(3);
         mallHotelOrderService.updateById(order);
+        //创建业务消息信息
+        LambdaQueryWrapper<SysUser> lambdaQueryWrapper = new LambdaQueryWrapper<>();
+        lambdaQueryWrapper.eq(SysUser::getDelFlag, 0);
+        lambdaQueryWrapper.eq(SysUser::getRelTenantIds, order.getTenantId());
+        List<SysUser> sysUsers = sysUserService.list(lambdaQueryWrapper);
+        String userIds = "";
+        for (SysUser sysUser : sysUsers) {
+            userIds += sysUser.getUsername() + ",";
+        }
+        if (userIds.length() > 0) {
+            MessageDTO messageDTO = new MessageDTO();
+            messageDTO.setFromUser("");
+            messageDTO.setToUser(userIds);
+            messageDTO.setTitle("商城酒店订单取消");
+            messageDTO.setContent("用户已确认商城酒店订单取消");
+            messageDTO.setCategory(CommonConstant.MSG_CATEGORY_2);
+            sysBaseAPI.sendSysAnnouncement(messageDTO);
+        }
         return Result.OK("取消成功!");
     }
 
@@ -762,6 +826,24 @@ public class HotelController extends WebConfig {
         });
         mallOrderGoodsDetailService.saveBatch(mallOrderGoods.getDetailList());
 
+        //创建业务消息信息
+        LambdaQueryWrapper<SysUser> lambdaQueryWrapper = new LambdaQueryWrapper<>();
+        lambdaQueryWrapper.eq(SysUser::getDelFlag, 0);
+        lambdaQueryWrapper.eq(SysUser::getRelTenantIds, mallOrderGoods.getTenantId());
+        List<SysUser> sysUsers = sysUserService.list(lambdaQueryWrapper);
+        String userIds = "";
+        for (SysUser sysUser : sysUsers) {
+            userIds += sysUser.getUsername() + ",";
+        }
+        if (userIds.length() > 0) {
+            MessageDTO messageDTO = new MessageDTO();
+            messageDTO.setFromUser("");
+            messageDTO.setToUser(userIds);
+            messageDTO.setTitle("商城点餐订单");
+            messageDTO.setContent("商城点餐订单");
+            messageDTO.setCategory(CommonConstant.MSG_CATEGORY_2);
+            sysBaseAPI.sendSysAnnouncement(messageDTO);
+        }
         return Result.ok("提交成功");
     }
 

+ 56 - 7
jeecg-mall-api/src/main/java/org/jeecg/modules/bus/controller/MemberCardController.java

@@ -9,9 +9,12 @@ import org.apache.commons.lang3.ObjectUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.jeecg.annotation.ApiLogin;
 import org.jeecg.com.util.ThirdSessionHolder;
+import org.jeecg.common.api.dto.message.MessageDTO;
 import org.jeecg.common.api.vo.Result;
 import org.jeecg.common.aspect.annotation.AutoLog;
+import org.jeecg.common.constant.CommonConstant;
 import org.jeecg.common.exception.JeecgBootException;
+import org.jeecg.common.system.api.ISysBaseAPI;
 import org.jeecg.common.system.base.controller.JeecgController;
 import org.jeecg.common.system.query.QueryGenerator;
 import org.jeecg.common.system.vo.LoginUser;
@@ -26,6 +29,8 @@ import org.jeecg.modules.business.entity.*;
 import org.jeecg.modules.business.service.*;
 import org.jeecg.modules.business.vo.MemberCardStatVo;
 import org.jeecg.modules.mall.entity.MallUserInfo;
+import org.jeecg.modules.system.entity.SysUser;
+import org.jeecg.modules.system.service.ISysUserService;
 import org.jeecg.modules.wxuser.service.IUserInfoService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
@@ -65,6 +70,10 @@ public class MemberCardController extends WebConfig {
 	private IBusMemberPointLogService busMemberPointLogService;
 	@Resource
 	private IBusMarketRechargeService busMarketRechargeService;
+	@Resource
+	private ISysBaseAPI sysBaseAPI;
+	@Resource
+	private ISysUserService sysUserService;
 	/**
 	 * 用户购买的会员卡分页列表查询
 	 *
@@ -74,7 +83,7 @@ public class MemberCardController extends WebConfig {
 	 * @param req
 	 * @return
 	 */
-	@ApiOperation(value="bus_member_card-分页列表查询", notes="bus_member_card-分页列表查询")
+	@ApiOperation(value="用户购买的会员卡分页列表查询", notes="用户购买的会员卡分页列表查询")
 	@GetMapping(value = "/list")
 	@ApiLogin
 	@ApiVersion(group = ApiVersionConstant.FAP_MALLAPI101)
@@ -84,11 +93,12 @@ public class MemberCardController extends WebConfig {
 								   HttpServletRequest req) {
 		String tenantId = TenantContextHolder.getTenantId();
 		String userId = ThirdSessionHolder.getUserId();
-		if (StringUtils.isBlank(userId)) {
-			return Result.error("请先用手机号登录");
-		}
 		LambdaQueryWrapper<BusMemberCard> queryWrapper = QueryGenerator.initQueryWrapper(busMemberCard, req.getParameterMap()).lambda();
-		queryWrapper.eq(BusMemberCard::getUserId,userId);
+		MallUserInfo mallUserInfo = userInfoService.getById(userId);
+		queryWrapper.and(t -> {
+			t.eq(BusMemberCard::getUserId, userId);
+			t.or().eq(BusMemberCard::getMobile, mallUserInfo.getMobile());
+		});
 		queryWrapper.eq(BusMemberCard::getTenantId,tenantId);
 		Page<BusMemberCard> page = new Page<BusMemberCard>(pageNo, pageSize);
 		IPage<BusMemberCard> pageList = busMemberCardService.page(page, queryWrapper);
@@ -99,7 +109,7 @@ public class MemberCardController extends WebConfig {
 			}
 			BusMarketMember busMarketMember = busMarketMemberService.getById(item.getGradeId());
 			if (busMarketMember != null) {
-				item.setGradeName(busMarketMember.getName());
+				item.setMarketMember(busMarketMember);
 			}
 			if (ObjectUtils.isNotEmpty(item.getGroupId())) {
 				BusMarketMemberGroup busMarketMemberGroup = busMarketMemberGroupService.getById(item.getGroupId());
@@ -147,7 +157,7 @@ public class MemberCardController extends WebConfig {
 			t.eq(BusMemberCard::getUserId, userId);
 			t.or().eq(BusMemberCard::getMobile, mallUserInfo.getMobile());
 		});
-		queryWrapper.eq(BusMemberCard::getHotelId, busMemberCard.getHotelId());
+		queryWrapper.eq(BusMemberCard::getHotelId, busMemberCard.getHotelId()).orderByDesc(BusMemberCard::getCreateTime).last("limit 1");
 		BusMemberCard card = busMemberCardService.getOne(queryWrapper);
 		if (card != null) {
 			BusMarketMember member = busMarketMemberService.getById(card.getGradeId());
@@ -160,8 +170,28 @@ public class MemberCardController extends WebConfig {
 				return Result.OK("升级成功!");
 			}
 		}
+		busMemberCard.setTenantId(tenantId);
 		busMemberCard.setUserId(userId);
 		busMemberCardService.save(busMemberCard);
+
+		//创建业务消息信息
+		LambdaQueryWrapper<SysUser> lambdaQueryWrapper3 = new LambdaQueryWrapper<>();
+		lambdaQueryWrapper3.eq(SysUser::getDelFlag, 0);
+		lambdaQueryWrapper3.eq(SysUser::getRelTenantIds, busMemberCard.getTenantId());
+		List<SysUser> sysUsers = sysUserService.list(lambdaQueryWrapper3);
+		String userIds = "";
+		for (SysUser sysUser : sysUsers) {
+			userIds += sysUser.getUsername() + ",";
+		}
+		if (userIds.length() > 0) {
+			MessageDTO messageDTO = new MessageDTO();
+			messageDTO.setFromUser("");
+			messageDTO.setToUser(userIds);
+			messageDTO.setTitle("用户购买了会员卡");
+			messageDTO.setContent("用户购买了会员卡");
+			messageDTO.setCategory(CommonConstant.MSG_CATEGORY_2);
+			sysBaseAPI.sendSysAnnouncement(messageDTO);
+		}
 		return Result.OK("添加成功!");
 	}
 
@@ -272,6 +302,25 @@ public class MemberCardController extends WebConfig {
 		busMemberBalanceLog.setTenantId(tenantId);
 		busMemberBalanceLog.setStatus(0);
 		busMemberBalanceLogService.saveBalance(busMemberBalanceLog);
+
+		//创建业务消息信息
+		LambdaQueryWrapper<SysUser> lambdaQueryWrapper3 = new LambdaQueryWrapper<>();
+		lambdaQueryWrapper3.eq(SysUser::getDelFlag, 0);
+		lambdaQueryWrapper3.eq(SysUser::getRelTenantIds, busMemberBalanceLog.getTenantId());
+		List<SysUser> sysUsers = sysUserService.list(lambdaQueryWrapper3);
+		String userIds = "";
+		for (SysUser sysUser : sysUsers) {
+			userIds += sysUser.getUsername() + ",";
+		}
+		if (userIds.length() > 0) {
+			MessageDTO messageDTO = new MessageDTO();
+			messageDTO.setFromUser("");
+			messageDTO.setToUser(userIds);
+			messageDTO.setTitle("用户会员卡充值余额");
+			messageDTO.setContent("用户会员卡充值余额");
+			messageDTO.setCategory(CommonConstant.MSG_CATEGORY_2);
+			sysBaseAPI.sendSysAnnouncement(messageDTO);
+		}
 		return Result.OK("添加成功!");
 	}
 }

+ 4 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/entity/BusMemberCard.java

@@ -150,4 +150,8 @@ public class BusMemberCard implements Serializable {
     private String groupName;
     @TableField(exist = false)
     private String labelName;
+
+    @ApiModelProperty(value = "会员卡片信息")
+    @TableField(exist = false)
+    private BusMarketMember marketMember;
 }