From f51c9e1bc0e82cbebd0e05130fb9a754317cbfa2 Mon Sep 17 00:00:00 2001
From: rk <94314517@qq.com>
Date: 星期二, 21 十月 2025 15:37:44 +0800
Subject: [PATCH] 月台自动叫号处理问题

---
 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkLineServiceImpl.java |   71 ++++++++++++++++++++++++++++++++---
 1 files changed, 64 insertions(+), 7 deletions(-)

diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkLineServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkLineServiceImpl.java
index 21ef83c..219b07e 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkLineServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkLineServiceImpl.java
@@ -1,16 +1,21 @@
 package com.doumee.service.business.impl;
 
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import cn.hutool.core.bean.BeanUtil;
 import com.doumee.core.annotation.excel.ExcelImporter;
 import com.doumee.core.constants.ResponseStatus;
 import com.doumee.core.exception.BusinessException;
 import com.doumee.core.utils.Constants;
-import com.doumee.core.utils.ScientificNotationTUtil;
-import com.doumee.dao.admin.request.CarsImport;
+import com.doumee.core.utils.DateUtil;
 import com.doumee.dao.admin.request.JkLineImport;
 import com.doumee.dao.business.CarsMapper;
 import com.doumee.dao.business.CategoryMapper;
+import com.doumee.dao.business.JkCustomerMapper;
+import com.doumee.dao.business.dto.TelecomLineInfoDTO;
 import com.doumee.dao.business.model.*;
+import com.doumee.dao.business.vo.TelecomCategoryDataVO;
+import com.doumee.dao.business.vo.TelecomJkLineListVO;
+import com.doumee.dao.business.vo.TelecomLineCountVO;
+import com.doumee.dao.business.vo.TelecomLineDataVO;
 import com.doumee.service.business.third.model.LoginUserInfo;
 import com.doumee.service.business.third.model.PageData;
 import com.doumee.service.business.third.model.PageWrap;
@@ -30,11 +35,12 @@
 import org.springframework.util.CollectionUtils;
 import org.springframework.web.multipart.MultipartFile;
 
-import java.math.BigDecimal;
 import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
+import java.util.Objects;
 import java.util.concurrent.TimeUnit;
+import java.util.stream.Collectors;
 
 /**
  * 浜ゆ帶-绾胯矾淇℃伅琛⊿ervice瀹炵幇
@@ -50,6 +56,8 @@
     private JkLineMapper jkLineMapper;
     @Autowired
     private CategoryMapper categoryMapper;
+    @Autowired
+    private JkCustomerMapper jkCustomerMapper;
     @Autowired
     private CarsMapper carsMapper;
 
@@ -78,6 +86,15 @@
 
     @Override
     public void deleteById(Integer id, LoginUserInfo user) {
+        JkLine c = jkLineMapper.selectById(id);
+        if(c == null||Constants.equalsInteger(c.getIsdeleted(),Constants.ONE)){
+            throw  new BusinessException(ResponseStatus.DATA_EMPTY);
+        }
+        //濡傛灉鏄柊绾胯矾锛屾鏌ユ槸鍚︽湁瀛愮嚎璺紝鏈夊垯涓嶅厑璁稿垹闄�
+        if(jkCustomerMapper.selectCount(new MPJLambdaWrapper<JkCustomer>().eq(JkCustomer::getIsdeleted,Constants.ZERO)
+                .eq(JkCustomer::getLineId,id)) >0){
+            throw  new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"绾胯矾銆�"+c.getName()+"銆戜笅宸插瓨鍦ㄥ鎴蜂俊鎭紝涓嶅厑璁稿垹闄わ紒");
+        }
         jkLineMapper.update(null,new UpdateWrapper<JkLine>().lambda()
                 .set(JkLine::getIsdeleted,Constants.ONE)
                 .set(JkLine::getEditor,user.getId())
@@ -96,6 +113,17 @@
     public void deleteByIdInBatch(List<Integer> ids, LoginUserInfo user) {
         if (CollectionUtils.isEmpty(ids)) {
             return;
+        }
+        for(Integer id :ids){
+            JkLine c = jkLineMapper.selectById(id);
+            if(c == null||Constants.equalsInteger(c.getIsdeleted(),Constants.ONE)){
+               continue;
+            }
+            //濡傛灉鏄柊绾胯矾锛屾鏌ユ槸鍚︽湁瀛愮嚎璺紝鏈夊垯涓嶅厑璁稿垹闄�
+            if(jkCustomerMapper.selectCount(new MPJLambdaWrapper<JkCustomer>().eq(JkCustomer::getIsdeleted,Constants.ZERO)
+                    .eq(JkCustomer::getLineId,id)) >0){
+                throw  new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"绾胯矾銆�"+c.getName()+"銆戜笅宸插瓨鍦ㄥ鎴蜂俊鎭紝涓嶅厑璁稿垹闄わ紒");
+            }
         }
         jkLineMapper.update(null,new UpdateWrapper<JkLine>().lambda()
                 .set(JkLine::getIsdeleted,Constants.ONE)
@@ -147,10 +175,32 @@
 
     @Override
     public List<JkLine> findList(JkLine jkLine) {
+
+        MPJLambdaWrapper<JkLine> queryWrapper = new MPJLambdaWrapper<>();
         jkLine.setIsdeleted(Constants.ZERO);
-        QueryWrapper<JkLine> wrapper = new QueryWrapper<>(jkLine);
-        wrapper.lambda().orderByAsc(JkLine::getCode);
-        return jkLineMapper.selectList(wrapper);
+        queryWrapper.selectAll(JkLine.class )
+                .selectAs(Member::getName,JkLine::getMemberName)
+                .selectAs(Cars::getCode,JkLine::getCarCode)
+                .leftJoin(Cars.class,Cars::getId,JkLine::getCarId )
+                .leftJoin(Member.class,Member::getId,Cars::getMemberId );
+        jkLine.setIsdeleted(Constants.ZERO);
+        if (jkLine.getIsdeleted() != null) {
+            queryWrapper.eq(JkLine::getIsdeleted, jkLine.getIsdeleted());
+        }
+        if (jkLine.getCategoryId() != null) {
+            queryWrapper.eq(JkLine::getCategoryId, jkLine.getCategoryId());
+        }
+        if (jkLine.getCarId() != null) {
+            queryWrapper.eq(JkLine::getCarId, jkLine.getCarId());
+        }
+        if (jkLine.getStatus() != null) {
+            queryWrapper.eq(JkLine::getStatus, jkLine.getStatus());
+        }
+        if (jkLine.getSortnum() != null) {
+            queryWrapper.eq(JkLine::getSortnum, jkLine.getSortnum());
+        }
+        queryWrapper.orderByAsc(JkLine::getCode);
+        return jkLineMapper.selectJoinList(JkLine.class,queryWrapper);
     }
   
     @Override
@@ -403,4 +453,11 @@
         }
         return null;
     }
+
+
+
+
+
+
+
 }

--
Gitblit v1.9.3