From cb6aca0642ac8dd5de877ade168066d85acb589c Mon Sep 17 00:00:00 2001 From: doum <doum> Date: 星期五, 17 十月 2025 15:54:10 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/wuhuyancao' into wuhuyancao --- server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/JkLineServiceImpl.java | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 51 insertions(+), 4 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 c5b5fa2..3d347eb 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 @@ -10,6 +10,7 @@ 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.model.*; import com.doumee.service.business.third.model.LoginUserInfo; import com.doumee.service.business.third.model.PageData; @@ -22,6 +23,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.github.yulichang.wrapper.MPJLambdaWrapper; +import io.swagger.models.auth.In; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.redis.core.RedisTemplate; @@ -34,6 +36,7 @@ import java.util.ArrayList; import java.util.Date; import java.util.List; +import java.util.concurrent.TimeUnit; /** * 浜ゆ帶-绾胯矾淇℃伅琛⊿ervice瀹炵幇 @@ -49,6 +52,8 @@ private JkLineMapper jkLineMapper; @Autowired private CategoryMapper categoryMapper; + @Autowired + private JkCustomerMapper jkCustomerMapper; @Autowired private CarsMapper carsMapper; @@ -77,6 +82,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()) @@ -95,6 +109,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) @@ -146,10 +171,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 @@ -230,7 +277,7 @@ if(importing!=null && importing){ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝宸插瓨鍦ㄥ鍏ヤ换鍔℃鍦ㄦ墽琛屼腑锛岃绋嶅悗鍐嶈瘯锛�"); } - redisTemplate.opsForValue().set(Constants.RedisKeys.IMPORTING_JKLINE,true); + redisTemplate.opsForValue().set(Constants.RedisKeys.IMPORTING_JKLINE,true,30, TimeUnit.MINUTES); try { ExcelImporter ie = null; List<JkLineImport> dataList =null; -- Gitblit v1.9.3