| @@ -489,19 +489,8 @@ public class WxCouponSendServiceImpl implements WxCouponSendService { | |||||
| public void saveOrUpdateConfig(Integer beforeDays, Integer sendType, String tenantId) { | public void saveOrUpdateConfig(Integer beforeDays, Integer sendType, String tenantId) { | ||||
| WxCouponSend config = getConfig(sendType, tenantId); | WxCouponSend config = getConfig(sendType, tenantId); | ||||
| if (Objects.isNull(config)) { | if (Objects.isNull(config)) { | ||||
| WxCouponSend couponSendQuery = new WxCouponSend(); | |||||
| couponSendQuery.setSendType(sendType); | |||||
| couponSendQuery.setTenantId(tenantId); | |||||
| couponSendQuery.setCouponId(0L); | |||||
| couponSendQuery.setTitle(EnumCouponSendSendType.BIRTHDAY.getMessage() + "配置信息 "); | |||||
| final IdWorker idWorker = IdWorker.get(); | |||||
| couponSendQuery.setId(idWorker.nextId()); | |||||
| couponSendQuery.setStatus(EnumCouponSendStatus.INVALID.getCode()); | |||||
| couponSendQuery.setCreateDate(new Date()); | |||||
| JSONObject couponSendJo = new JSONObject(); | |||||
| couponSendJo.put(WxCouponSend.KEY_BEFOREDAYS, beforeDays); | |||||
| couponSendQuery.setConditions(couponSendJo.toJSONString()); | |||||
| wxCouponSendMapper.insertSelective(couponSendQuery); | |||||
| WxCouponSend couponSendQuery = createCouponSendQuery(sendType, tenantId) ; | |||||
| insertCouponSend(beforeDays, couponSendQuery); | |||||
| } else { | } else { | ||||
| JSONObject couponSendJo = JSONObject.parseObject(config.getConditions()); | JSONObject couponSendJo = JSONObject.parseObject(config.getConditions()); | ||||
| if (Objects.isNull(couponSendJo)) { | if (Objects.isNull(couponSendJo)) { | ||||
| @@ -514,25 +503,39 @@ public class WxCouponSendServiceImpl implements WxCouponSendService { | |||||
| } | } | ||||
| } | } | ||||
| private void insertCouponSend(Integer beforeDays, WxCouponSend couponSendQuery) { | |||||
| couponSendQuery.setTitle(EnumCouponSendSendType.BIRTHDAY.getMessage() + "配置信息 "); | |||||
| final IdWorker idWorker = IdWorker.get(); | |||||
| couponSendQuery.setId(idWorker.nextId()); | |||||
| couponSendQuery.setCreateDate(new Date()); | |||||
| JSONObject couponSendJo = new JSONObject(); | |||||
| couponSendJo.put(WxCouponSend.KEY_BEFOREDAYS, beforeDays); | |||||
| couponSendQuery.setConditions(couponSendJo.toJSONString()); | |||||
| wxCouponSendMapper.insertSelective(couponSendQuery); | |||||
| } | |||||
| @Override | @Override | ||||
| public WxCouponSend getConfig(Integer sendType, String tenantId) { | public WxCouponSend getConfig(Integer sendType, String tenantId) { | ||||
| WxCouponSend couponSendQuery = new WxCouponSend(); | |||||
| couponSendQuery.setSendType(sendType); | |||||
| couponSendQuery.setTenantId(tenantId); | |||||
| couponSendQuery.setCouponId(0L); | |||||
| WxCouponSend couponSendQuery = createCouponSendQuery(sendType, tenantId) ; | |||||
| //读取会员生日券配置信息 | //读取会员生日券配置信息 | ||||
| couponSendQuery.setStatus(EnumCouponSendStatus.INVALID.getCode()); | |||||
| List<WxCouponSend> wxCouponSendList = wxCouponSendMapper.select(couponSendQuery); | List<WxCouponSend> wxCouponSendList = wxCouponSendMapper.select(couponSendQuery); | ||||
| if (CollectionUtils.isEmpty(wxCouponSendList)) { | if (CollectionUtils.isEmpty(wxCouponSendList)) { | ||||
| //默认配置 | |||||
| JSONObject couponSendJo = new JSONObject(); | |||||
| couponSendJo.put(WxCouponSend.KEY_BEFOREDAYS, 0); | |||||
| couponSendQuery.setConditions(couponSendJo.toJSONString()); | |||||
| //配置不存在,添加默认配置 | |||||
| insertCouponSend(0, couponSendQuery); | |||||
| return couponSendQuery; | return couponSendQuery; | ||||
| } | } | ||||
| return wxCouponSendList.get(0); | return wxCouponSendList.get(0); | ||||
| } | } | ||||
| private WxCouponSend createCouponSendQuery(Integer sendType, String tenantId) { | |||||
| WxCouponSend couponSendQuery = new WxCouponSend(); | |||||
| couponSendQuery.setSendType(sendType); | |||||
| couponSendQuery.setTenantId(tenantId); | |||||
| couponSendQuery.setCouponId(0L); | |||||
| couponSendQuery.setStatus(EnumCouponSendStatus.INVALID.getCode()); | |||||
| return couponSendQuery ; | |||||
| } | |||||
| @Override | @Override | ||||
| public void reduceMerchantRemainInventory(Long id, Integer remainInventory, Integer number) { | public void reduceMerchantRemainInventory(Long id, Integer remainInventory, Integer number) { | ||||
| int num = wxCouponSendMapper.reduceMerchantRemainInventory(id, remainInventory, number); | int num = wxCouponSendMapper.reduceMerchantRemainInventory(id, remainInventory, number); | ||||