jiangping
2024-12-20 53b6400ec10c8ca61ccec91c82c358d2488eead8
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CarUseBookServiceImpl.java
@@ -18,9 +18,11 @@
import com.doumee.dao.business.vo.ApproveDataVO;
import com.doumee.dao.business.vo.DateIntervalVO;
import com.doumee.dao.system.SystemUserMapper;
import com.doumee.dao.system.join.NoticesJoinMapper;
import com.doumee.dao.system.model.Notices;
import com.doumee.dao.system.model.SystemDictData;
import com.doumee.dao.system.model.SystemUser;
import com.doumee.service.business.ApproveService;
import com.doumee.service.business.CarUseBookService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -89,6 +91,9 @@
    @Autowired
    private WxNoticeConfigMapper wxNoticeConfigMapper;
    @Autowired
    private SystemUserMapper systemUserMapper;
    @Override
    @Transactional(rollbackFor = {Exception.class,BusinessException.class})
    public Integer create(CarUseBook carUseBook)  throws Exception {
@@ -145,13 +150,14 @@
        //发送微信公众号通知
        //发送微信公众号通知
        WxPlatNotice wxPlatNotice = new WxPlatNotice();
        Member member = memberMapper.selectById(carUseBook.getMemberId());
        if(Objects.nonNull(member) && StringUtils.isNotBlank(member.getOpenid())){
            wxPlatNotice.sendCarUseBookTemplateNotice(
        SystemUser systemUser = systemUserMapper.selectById(carUseBook.getCreator());
        if(Objects.nonNull(systemUser) && StringUtils.isNotBlank(systemUser.getOpenid())){
            carUseBook.setMemberName(systemUser.getRealname());
            wxPlatNotice.sendCarUseBookTemplateNotice(systemDictDataBiz,
                    wxNoticeConfigMapper,carUseBook,
                    WxPlatConstants.carUseBookContent.carUseBookUpload,
                    systemDictDataBiz.queryByCode(Constants.WX_PLATFORM,Constants.WX_PLATFORM_ACCESS_TOKEN).getCode(),
                    Arrays.asList(member.getOpenid().split(",")),0);
                    Arrays.asList(systemUser.getOpenid().split(",")),0);
        }
        return carUseBook.getId();
@@ -242,6 +248,22 @@
            approveList.add(approve);
        }
        model.setApproveDateVO(approveDataVO);
        Notices notices = noticesJoinMapper.selectOne(new QueryWrapper<Notices>().lambda()
                .eq(Notices::getObjId,id)
                .eq(Notices::getType,Constants.noticesObjectType.useCar)
                .eq(Notices::getUserId,memberId)
                .eq(Notices::getSendacopy,Constants.ZERO)
                .orderByDesc(Notices::getId).last(" limit 1 "));
        if(Objects.nonNull(notices)){
            if(Constants.equalsInteger(notices.getStatus(),Constants.ZERO)){
                model.setInfo("待我处理");
            }else{
                model.setInfo(notices.getInfo());
            }
        }
        return  model;
    }
@@ -500,19 +522,32 @@
        //处理待办信息
        noticesJoinMapper.update(null,new UpdateWrapper<Notices>().lambda()
                .set(Notices::getStatus,Constants.ONE)
                .set(Notices::getInfo,"已取消")
                .eq(Notices::getType,Constants.TWO)
                .eq(Notices::getObjId,carUseBook.getId())
        );
        Member member = memberMapper.selectById(carUseBook.getMemberId());
        if(Objects.nonNull(member)&&StringUtils.isNotBlank(member.getPhone())){
        SystemUser systemUser = systemUserMapper.selectById(carUseBook.getCreator());
        if(Objects.nonNull(systemUser)&&StringUtils.isNotBlank(systemUser.getMobile())){
            //用车申请取消
            SmsEmailServiceImpl.sendCarUseSms(systemDictDataBiz,
                    emayService,smsEmailMapper,smsConfigMapper,carUseBookMapper,carUseBook.getId(),
                    SmsConstants.carUseBookContent.carUseBookCancel,
                    null, Arrays.asList(member.getPhone().split(","))
                    info, Arrays.asList(systemUser.getMobile().split(","))
            );
            if(StringUtils.isNotBlank(systemUser.getOpenid())){
                carUseBook.setMemberName(systemUser.getRealname());
                WxPlatNotice wxPlatNotice = new WxPlatNotice();
                wxPlatNotice.sendCarUseBookTemplateNotice(systemDictDataBiz,
                        wxNoticeConfigMapper,
                        carUseBook,
                        WxPlatConstants.carUseBookContent.carUseBookCancel,
                        systemDictDataBiz.queryByCode(Constants.WX_PLATFORM,Constants.WX_PLATFORM_ACCESS_TOKEN).getCode(),
                        Arrays.asList(systemUser.getOpenid().split(",")),
                        Constants.TWO);
            }
        }
    }