From 9f562f48f41da1873db5c5d0d3f953c1974c5153 Mon Sep 17 00:00:00 2001
From: renkang <8417338+k94314517@user.noreply.gitee.com>
Date: 星期六, 23 十一月 2024 17:37:10 +0800
Subject: [PATCH] 客户资料 巡检任务业务

---
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractBillServiceImpl.java |  130 +++++++++++++++++++++++++------------------
 1 files changed, 76 insertions(+), 54 deletions(-)

diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractBillServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractBillServiceImpl.java
index 730db94..b8cff6b 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractBillServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/YwContractBillServiceImpl.java
@@ -1,21 +1,35 @@
 package com.doumee.service.business.impl;
 
+import com.doumee.core.constants.ResponseStatus;
+import com.doumee.core.exception.BusinessException;
 import com.doumee.core.model.LoginUserInfo;
 import com.doumee.core.model.PageData;
 import com.doumee.core.model.PageWrap;
+import com.doumee.core.utils.Constants;
 import com.doumee.core.utils.Utils;
 import com.doumee.dao.business.YwContractBillMapper;
+import com.doumee.dao.business.YwContractRoomMapper;
+import com.doumee.dao.business.model.YwContract;
 import com.doumee.dao.business.model.YwContractBill;
+import com.doumee.dao.business.model.YwContractRoom;
+import com.doumee.dao.business.model.YwCustomer;
+import com.doumee.dao.system.MultifileMapper;
+import com.doumee.dao.system.model.Multifile;
 import com.doumee.service.business.YwContractBillService;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.github.yulichang.wrapper.MPJLambdaWrapper;
+import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.util.CollectionUtils;
 
+import java.math.BigDecimal;
+import java.util.Date;
 import java.util.List;
+import java.util.Objects;
 
 /**
  * 杩愮淮鍚堝悓璐﹀崟淇℃伅琛⊿ervice瀹炵幇
@@ -28,9 +42,65 @@
     @Autowired
     private YwContractBillMapper ywContractBillMapper;
 
+    @Autowired
+    private YwContractRoomMapper ywContractRoomMapper;
+
+    @Autowired
+    private MultifileMapper multifileMapper;
+
     @Override
     public Integer create(YwContractBill ywContractBill) {
+        if(Objects.isNull(ywContractBill)
+        || Objects.isNull(ywContractBill.getContractId())
+        || Objects.isNull(ywContractBill.getTotleFee())
+        || Objects.isNull(ywContractBill.getPlanPayData())
+                || Objects.isNull(ywContractBill.getCostType())
+                || Objects.isNull(ywContractBill.getBillType())
+                || Objects.isNull(ywContractBill.getCompanyId())
+                || Objects.isNull(ywContractBill.getStartDate())
+                || Objects.isNull(ywContractBill.getEndDate())
+        ){
+            throw new BusinessException(ResponseStatus.BAD_REQUEST);
+        }
+        LoginUserInfo loginUserInfo = ywContractBill.getLoginUserInfo();
+        ywContractBill.setCreateDate(new Date());
+        ywContractBill.setCreator(loginUserInfo.getId());
+        ywContractBill.setIsdeleted(Constants.ZERO);
+        ywContractBill.setStatus(Constants.ZERO);
         ywContractBillMapper.insert(ywContractBill);
+
+        if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(ywContractBill.getYwContractRoomList())){
+            for (YwContractRoom ywContractRoom:ywContractBill.getYwContractRoomList()) {
+                if(Objects.isNull(ywContractRoom)
+                || Objects.isNull(ywContractRoom.getRoomId())){
+                    throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"璇烽�夋嫨鎴挎簮鏁版嵁");
+                }
+                ywContractRoom.setCreateDate(new Date());
+                ywContractRoom.setCreator(loginUserInfo.getId());
+                ywContractRoom.setIsdeleted(Constants.ZERO);
+                ywContractRoom.setContractId(ywContractBill.getId());
+                ywContractRoom.setType(Constants.ONE);
+
+            }
+            ywContractRoomMapper.insert(ywContractBill.getYwContractRoomList());
+        }
+
+        if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(ywContractBill.getMultifileList())){
+            for (Multifile multifile:ywContractBill.getMultifileList()) {
+                if(Objects.isNull(multifile)
+                || StringUtils.isBlank(multifile.getFileurl())
+                || StringUtils.isBlank(multifile.getName())){
+                    throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"闄勪欢淇℃伅閿欒");
+                }
+                multifile.setCreator(loginUserInfo.getId());
+                multifile.setCreateDate(new Date());
+                multifile.setIsdeleted(Constants.ZERO);
+                multifile.setObjType(Constants.MultiFile.FN_PATROL_POINT_FILE.getKey());
+                multifile.setObjId(ywContractBill.getId());
+            }
+            multifileMapper.insert(ywContractBill.getMultifileList());
+        }
+
         return ywContractBill.getId();
     }
 
@@ -88,61 +158,13 @@
     @Override
     public PageData<YwContractBill> findPage(PageWrap<YwContractBill> pageWrap) {
         IPage<YwContractBill> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
-        QueryWrapper<YwContractBill> queryWrapper = new QueryWrapper<>();
+        MPJLambdaWrapper<YwContractBill> queryWrapper = new MPJLambdaWrapper<>();
         Utils.MP.blankToNull(pageWrap.getModel());
-        if (pageWrap.getModel().getId() != null) {
-            queryWrapper.lambda().eq(YwContractBill::getId, pageWrap.getModel().getId());
-        }
-        if (pageWrap.getModel().getCreator() != null) {
-            queryWrapper.lambda().eq(YwContractBill::getCreator, pageWrap.getModel().getCreator());
-        }
-        if (pageWrap.getModel().getCreateDate() != null) {
-            queryWrapper.lambda().ge(YwContractBill::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
-            queryWrapper.lambda().le(YwContractBill::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
-        }
-        if (pageWrap.getModel().getEditor() != null) {
-            queryWrapper.lambda().eq(YwContractBill::getEditor, pageWrap.getModel().getEditor());
-        }
-        if (pageWrap.getModel().getEditDate() != null) {
-            queryWrapper.lambda().ge(YwContractBill::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
-            queryWrapper.lambda().le(YwContractBill::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
-        }
-        if (pageWrap.getModel().getIsdeleted() != null) {
-            queryWrapper.lambda().eq(YwContractBill::getIsdeleted, pageWrap.getModel().getIsdeleted());
-        }
-        if (pageWrap.getModel().getRemark() != null) {
-            queryWrapper.lambda().eq(YwContractBill::getRemark, pageWrap.getModel().getRemark());
-        }
-        if (pageWrap.getModel().getStatus() != null) {
-            queryWrapper.lambda().eq(YwContractBill::getStatus, pageWrap.getModel().getStatus());
-        }
-        if (pageWrap.getModel().getStartDate() != null) {
-            queryWrapper.lambda().ge(YwContractBill::getStartDate, Utils.Date.getStart(pageWrap.getModel().getStartDate()));
-            queryWrapper.lambda().le(YwContractBill::getStartDate, Utils.Date.getEnd(pageWrap.getModel().getStartDate()));
-        }
-        if (pageWrap.getModel().getEndDate() != null) {
-            queryWrapper.lambda().ge(YwContractBill::getEndDate, Utils.Date.getStart(pageWrap.getModel().getEndDate()));
-            queryWrapper.lambda().le(YwContractBill::getEndDate, Utils.Date.getEnd(pageWrap.getModel().getEndDate()));
-        }
-        if (pageWrap.getModel().getDetailId() != null) {
-            queryWrapper.lambda().eq(YwContractBill::getDetailId, pageWrap.getModel().getDetailId());
-        }
-        if (pageWrap.getModel().getContractId() != null) {
-            queryWrapper.lambda().eq(YwContractBill::getContractId, pageWrap.getModel().getContractId());
-        }
-        if (pageWrap.getModel().getSortnum() != null) {
-            queryWrapper.lambda().eq(YwContractBill::getSortnum, pageWrap.getModel().getSortnum());
-        }
-        if (pageWrap.getModel().getTotleFee() != null) {
-            queryWrapper.lambda().eq(YwContractBill::getTotleFee, pageWrap.getModel().getTotleFee());
-        }
-        for(PageWrap.SortData sortData: pageWrap.getSorts()) {
-            if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
-                queryWrapper.orderByDesc(sortData.getProperty());
-            } else {
-                queryWrapper.orderByAsc(sortData.getProperty());
-            }
-        }
+        queryWrapper.selectAll(YwContractBill.class)
+                .leftJoin(YwContract.class,YwContract::getId,YwContractBill::getContractId)
+                .leftJoin(YwCustomer.class,YwCustomer::getId,YwContract::getRenterId)
+        ;
+
         return PageData.from(ywContractBillMapper.selectPage(page, queryWrapper));
     }
 

--
Gitblit v1.9.3