|
@@ -1,5 +1,6 @@
|
|
package com.citu.module.member.service.invoice;
|
|
package com.citu.module.member.service.invoice;
|
|
|
|
|
|
|
|
+import cn.hutool.core.map.MapUtil;
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
|
import com.citu.framework.common.pojo.PageResult;
|
|
import com.citu.framework.common.pojo.PageResult;
|
|
@@ -11,15 +12,25 @@ import com.citu.module.member.controller.app.invoice.vo.InvoiceListPageReqVO;
|
|
import com.citu.module.member.controller.app.invoice.vo.InvoiceListSaveReqVO;
|
|
import com.citu.module.member.controller.app.invoice.vo.InvoiceListSaveReqVO;
|
|
import com.citu.module.member.dal.dataobject.invoice.InvoiceListDO;
|
|
import com.citu.module.member.dal.dataobject.invoice.InvoiceListDO;
|
|
import com.citu.module.member.dal.mysql.invoice.InvoiceListMapper;
|
|
import com.citu.module.member.dal.mysql.invoice.InvoiceListMapper;
|
|
|
|
+import com.citu.module.menduner.common.CommonConstants;
|
|
|
|
+import com.citu.module.menduner.im.api.ImCollectMessageReqVo;
|
|
|
|
+import com.citu.module.menduner.im.api.ImCollectUserReqVo;
|
|
|
|
+import com.citu.module.menduner.im.api.ImMessageApi;
|
|
import com.citu.module.pay.api.order.PayOrderApi;
|
|
import com.citu.module.pay.api.order.PayOrderApi;
|
|
import com.citu.module.pay.api.order.dto.PayOrderBaseRespDTO;
|
|
import com.citu.module.pay.api.order.dto.PayOrderBaseRespDTO;
|
|
|
|
+import com.citu.module.system.api.notify.NotifyMessageSendApi;
|
|
|
|
+import com.citu.module.system.api.notify.dto.NotifySendSingleToUserReqDTO;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.validation.annotation.Validated;
|
|
import org.springframework.validation.annotation.Validated;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
import javax.annotation.Resource;
|
|
|
|
|
|
|
|
+import java.util.ArrayList;
|
|
|
|
+import java.util.List;
|
|
|
|
+
|
|
import static com.citu.framework.common.exception.util.ServiceExceptionUtil.exception;
|
|
import static com.citu.framework.common.exception.util.ServiceExceptionUtil.exception;
|
|
import static com.citu.module.member.enums.ErrorCodeConstants.*;
|
|
import static com.citu.module.member.enums.ErrorCodeConstants.*;
|
|
|
|
+import static com.citu.module.menduner.common.CommonConstants.*;
|
|
|
|
|
|
;
|
|
;
|
|
|
|
|
|
@@ -38,6 +49,11 @@ public class InvoiceListServiceImpl implements InvoiceListService {
|
|
@Resource
|
|
@Resource
|
|
private PayOrderApi payOrderApi;
|
|
private PayOrderApi payOrderApi;
|
|
|
|
|
|
|
|
+ @Resource
|
|
|
|
+ private NotifyMessageSendApi notifyMessageSendApi;
|
|
|
|
+
|
|
|
|
+ @Resource
|
|
|
|
+ private ImMessageApi imMessageApi;
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public Long createInvoiceList(InvoiceListSaveReqVO createReqVO) {
|
|
public Long createInvoiceList(InvoiceListSaveReqVO createReqVO) {
|
|
@@ -61,10 +77,24 @@ public class InvoiceListServiceImpl implements InvoiceListService {
|
|
// 插入
|
|
// 插入
|
|
InvoiceListDO invoiceList = BeanUtils.toBean(createReqVO, InvoiceListDO.class);
|
|
InvoiceListDO invoiceList = BeanUtils.toBean(createReqVO, InvoiceListDO.class);
|
|
invoiceList.setUserId(loginUserId);
|
|
invoiceList.setUserId(loginUserId);
|
|
|
|
+ invoiceList.setEnterpriseId(SecurityFrameworkUtils.getLoginUserDataId());
|
|
invoiceList.setStatus(0);
|
|
invoiceList.setStatus(0);
|
|
invoiceList.setPrice(data.getPrice());
|
|
invoiceList.setPrice(data.getPrice());
|
|
invoiceListMapper.insert(invoiceList);
|
|
invoiceListMapper.insert(invoiceList);
|
|
- // 返回
|
|
|
|
|
|
+ // 发送系统通知
|
|
|
|
+ NotifySendSingleToUserReqDTO reqDTO = new NotifySendSingleToUserReqDTO()
|
|
|
|
+ .setTemplateCode(NOTIFY_SYS_INVOICE)
|
|
|
|
+ .setTemplateParams(
|
|
|
|
+ MapUtil.<String, Object>builder()
|
|
|
|
+ .put("1", invoiceList.getPrice()/100)
|
|
|
|
+ .put("2", invoiceList.getTitle())
|
|
|
|
+ .build()
|
|
|
|
+ );
|
|
|
|
+ for (Long userId : CommonConstants.notifySysUserId) {
|
|
|
|
+ reqDTO.setUserId(userId);
|
|
|
|
+ notifyMessageSendApi.sendSingleMessageToAdmin(reqDTO);
|
|
|
|
+ }
|
|
|
|
+
|
|
return invoiceList.getId();
|
|
return invoiceList.getId();
|
|
}
|
|
}
|
|
|
|
|
|
@@ -99,6 +129,7 @@ public class InvoiceListServiceImpl implements InvoiceListService {
|
|
@Override
|
|
@Override
|
|
public PageResult<InvoiceListDO> getInvoiceListPage(InvoiceListPageReqVO pageReqVO) {
|
|
public PageResult<InvoiceListDO> getInvoiceListPage(InvoiceListPageReqVO pageReqVO) {
|
|
pageReqVO.setUserId(SecurityFrameworkUtils.getLoginUserId());
|
|
pageReqVO.setUserId(SecurityFrameworkUtils.getLoginUserId());
|
|
|
|
+ pageReqVO.setEnterpriseId(SecurityFrameworkUtils.getLoginUserDataId());
|
|
return invoiceListMapper.selectPage(pageReqVO);
|
|
return invoiceListMapper.selectPage(pageReqVO);
|
|
}
|
|
}
|
|
|
|
|
|
@@ -121,6 +152,18 @@ public class InvoiceListServiceImpl implements InvoiceListService {
|
|
int update = invoiceListMapper.update(null, new LambdaUpdateWrapper<InvoiceListDO>()
|
|
int update = invoiceListMapper.update(null, new LambdaUpdateWrapper<InvoiceListDO>()
|
|
.eq(InvoiceListDO::getId, reqVo.getId()).set(InvoiceListDO::getFileUrl, reqVo.getFileUrl()).set(InvoiceListDO::getStatus, reqVo.getStatus()));
|
|
.eq(InvoiceListDO::getId, reqVo.getId()).set(InvoiceListDO::getFileUrl, reqVo.getFileUrl()).set(InvoiceListDO::getStatus, reqVo.getStatus()));
|
|
|
|
|
|
|
|
+ if (update > 0) {
|
|
|
|
+ // 发送im系统消息
|
|
|
|
+ ImCollectMessageReqVo imCollectMessageReqVo = new ImCollectMessageReqVo();
|
|
|
|
+ List<ImCollectUserReqVo> userVoList = new ArrayList<>();
|
|
|
|
+ ImCollectUserReqVo userVo = new ImCollectUserReqVo();
|
|
|
|
+ userVo.setUserId(invoiceListDO.getUserId());
|
|
|
|
+ userVo.setEnterpriseId(invoiceListDO.getEnterpriseId());
|
|
|
|
+ userVoList.add(userVo);
|
|
|
|
+ imCollectMessageReqVo.setUserVoList(userVoList);
|
|
|
|
+ imCollectMessageReqVo.setMessage(IM_SYS_ENTERPRISE_INVOICE_TEMPLATE);
|
|
|
|
+ imMessageApi.systemMessage(imCollectMessageReqVo);
|
|
|
|
+ }
|
|
return update;
|
|
return update;
|
|
}
|
|
}
|
|
|
|
|