From 4ee00850f197d769481f73acb8ed79ab1c75b84d Mon Sep 17 00:00:00 2001
From: rk <94314517@qq.com>
Date: 星期五, 14 十一月 2025 11:41:24 +0800
Subject: [PATCH] 问题修复
---
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CarsServiceImpl.java | 92 +++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 90 insertions(+), 2 deletions(-)
diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CarsServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CarsServiceImpl.java
index 5fed85e..bc14916 100644
--- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CarsServiceImpl.java
+++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CarsServiceImpl.java
@@ -1,5 +1,7 @@
package com.doumee.service.business.impl;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -7,6 +9,7 @@
import com.doumee.core.annotation.excel.ExcelImporter;
import com.doumee.core.constants.ResponseStatus;
import com.doumee.core.exception.BusinessException;
+import com.doumee.core.utils.DateUtil;
import com.doumee.service.business.third.model.LoginUserInfo;
import com.doumee.service.business.third.model.PageData;
import com.doumee.service.business.third.model.PageWrap;
@@ -38,6 +41,8 @@
import java.math.BigDecimal;
import java.util.*;
+import java.util.concurrent.TimeUnit;
+import java.util.stream.Collectors;
/**
* 杞﹁締淇℃伅琛⊿ervice瀹炵幇
@@ -108,9 +113,9 @@
model.setCreateDate(new Date());
model.setCreator(loginUserInfo.getId());
model.setEditDate(new Date());
+ model.setIsdeleted(Constants.ZERO);
model.setEdirot(loginUserInfo.getId());
model.setStatus(Constants.ZERO);
- model.setIsdeleted(Constants.ZERO);
model.setHkStatus(Constants.ZERO);
model.setAuthStatus(Constants.ZERO);
model.setRemark("");
@@ -355,10 +360,26 @@
@Override
public List<Cars> findList(Cars cars) {
+ if(Objects.nonNull(cars) && Objects.nonNull(cars.getType())
+ && Constants.equalsInteger(Constants.ZERO,cars.getType())){
+ return this.getGwCar();
+ }
+ cars.setType(null);
QueryWrapper<Cars> wrapper = new QueryWrapper<>(cars);
wrapper.lambda().eq(Cars::getIsdeleted,Constants.ZERO);
return carsMapper.selectList(wrapper);
}
+
+ public List<Cars> getGwCar(){
+ List<Cars> list = carsMapper.selectJoinList(Cars.class,
+ new MPJLambdaWrapper<Cars>().selectAll(Cars.class)
+ .leftJoin(Category.class,Category::getId,Cars::getCateId)
+ .eq(Category::getBizType,Constants.FOUR)
+ .eq(Cars::getIsdeleted,Constants.ZERO)
+ );
+ return list;
+ }
+
@Override
public PageData<Cars> findPage(PageWrap<Cars> pageWrap) {
@@ -494,7 +515,7 @@
if(importing!=null && importing){
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝宸插瓨鍦ㄨ溅杈嗗鍏ヤ换鍔℃鍦ㄦ墽琛屼腑锛岃绋嶅悗鍐嶈瘯锛�");
}
- redisTemplate.opsForValue().set(Constants.RedisKeys.IMPORTING_CARS,true);
+ redisTemplate.opsForValue().set(Constants.RedisKeys.IMPORTING_CARS,true,30, TimeUnit.MINUTES);
try {
ExcelImporter ie = null;
List<CarsImport> dataList =null;
@@ -694,4 +715,71 @@
}
+
+ @Override
+ public void jdyPushCarInfo(String dataInfo){
+ JSONObject dataInfoJSON = JSONObject.parseObject(dataInfo);
+ if(dataInfoJSON.isEmpty()){
+ return;
+ }
+ String op = dataInfoJSON.getString("op");
+ //鍒犻櫎锛歞ata_remove 鏂板锛歞ata_add 淇敼锛歞ata_update
+ if(StringUtils.isEmpty(op)){
+ return;
+ }
+ JSONObject dataJSON = dataInfoJSON.getJSONObject("data");
+ String no = dataJSON.getString("_id");
+ if(StringUtils.isEmpty(no)){
+ return;
+ }
+ if(op.equals("data_remove")){
+ carsMapper.update(new UpdateWrapper<Cars>().lambda()
+ .set(Cars::getEditDate, DateUtil.getCurrDate())
+ .set(Cars::getIsdeleted,Constants.ONE).eq(Cars::getJdyId,no));
+ return;
+ }
+
+ String status = dataJSON.getString("status");
+ String carCode = dataJSON.getString("car_code");
+ Cars cars = carsMapper.selectOne(new QueryWrapper<Cars>()
+ .lambda().eq(Cars::getJdyId,no).last("limit 1"));
+ if(Objects.isNull(cars)){
+ cars = new Cars();
+ cars.setCreateDate(new Date());
+ cars.setEditDate(new Date());
+ cars.setJdyId(no);
+ }else{
+ cars.setEditDate(new Date());
+ }
+ cars.setIsdeleted(Constants.ZERO);
+ cars.setCode(StringUtils.isBlank(carCode)?null:carCode);
+ cars.setStatus(StringUtils.isNotBlank(status)&&StringUtils.equals(status,"鍙敤")?0:1);
+ JSONObject driverJSON = dataJSON.getJSONObject("driver");
+ if(!driverJSON.isEmpty()){
+ String driverName = driverJSON.getString("name");
+ String driverUserName = driverJSON.getString("username");
+ if(StringUtils.isNotBlank(driverUserName)){
+ Member driverMember = memberMapper.selectOne(new QueryWrapper<Member>().lambda().eq(Member::getIsdeleted,Constants.ZERO).eq(Member::getDdId,driverUserName).last("limit 1 "));
+ if(Objects.nonNull(driverMember)){
+ cars.setMemberId(driverMember.getId());
+ }
+ }
+ }
+ JSONObject createJSON = dataJSON.getJSONObject("creator");
+ if(!createJSON.isEmpty()){
+ String createName = createJSON.getString("name");
+ String createUserName = createJSON.getString("username");
+ if(StringUtils.isNotBlank(createUserName)){
+ Member createMember = memberMapper.selectOne(new QueryWrapper<Member>().lambda().eq(Member::getIsdeleted,Constants.ZERO).eq(Member::getDdId,createUserName).last("limit 1 "));
+ if(Objects.nonNull(createMember)){
+ cars.setMemberId(createMember.getId());
+ }
+ }
+ }
+ carsMapper.insertOrUpdate(cars);
+ }
+
+
+
+
}
--
Gitblit v1.9.3