From 3aef471b170a703b501ddb4d9d2a12791d07ff28 Mon Sep 17 00:00:00 2001
From: rk <94314517@qq.com>
Date: 星期三, 15 四月 2026 20:06:56 +0800
Subject: [PATCH] 代码生成
---
server/services/src/main/java/com/doumee/service/business/impl/DriverInfoServiceImpl.java | 198 ++++++++++++++++++++++++++++++------------------
1 files changed, 123 insertions(+), 75 deletions(-)
diff --git a/server/services/src/main/java/com/doumee/service/business/impl/DriverInfoServiceImpl.java b/server/services/src/main/java/com/doumee/service/business/impl/DriverInfoServiceImpl.java
index e67a9b0..796cf5e 100644
--- a/server/services/src/main/java/com/doumee/service/business/impl/DriverInfoServiceImpl.java
+++ b/server/services/src/main/java/com/doumee/service/business/impl/DriverInfoServiceImpl.java
@@ -17,6 +17,7 @@
import com.doumee.dao.business.MultifileMapper;
import com.doumee.dao.business.SmsrecordMapper;
import com.doumee.dao.business.CategoryMapper;
+import com.doumee.biz.system.SystemDictDataBiz;
import com.doumee.dao.business.model.Category;
import com.doumee.dao.business.model.DriverInfo;
import com.doumee.dao.business.model.Member;
@@ -24,12 +25,14 @@
import com.doumee.dao.business.model.Smsrecord;
import com.doumee.dao.vo.AccountResponse;
import com.doumee.dao.dto.AuditDTO;
+import com.doumee.dao.dto.ChangeStatusDTO;
import com.doumee.dao.dto.DriverLoginRequest;
import com.doumee.dao.dto.DriverRegisterRequest;
import com.doumee.dao.dto.DriverVerifyRequest;
import com.doumee.service.business.AliSmsService;
import com.doumee.service.business.DriverInfoService;
import com.alibaba.fastjson.JSONObject;
+import com.github.yulichang.wrapper.MPJLambdaWrapper;
import org.apache.commons.lang3.RandomStringUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
@@ -74,6 +77,9 @@
@Autowired
private CategoryMapper categoryMapper;
+
+ @Autowired
+ private SystemDictDataBiz systemDictDataBiz;
@Override
public Integer create(DriverInfo driverInfo) {
@@ -139,71 +145,41 @@
@Override
public PageData<DriverInfo> findPage(PageWrap<DriverInfo> pageWrap) {
IPage<DriverInfo> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
- QueryWrapper<DriverInfo> queryWrapper = new QueryWrapper<>();
+ MPJLambdaWrapper<DriverInfo> queryWrapper = new MPJLambdaWrapper<>();
Utils.MP.blankToNull(pageWrap.getModel());
pageWrap.getModel().setDeleted(Constants.ZERO);
- if (pageWrap.getModel().getId() != null) {
- queryWrapper.lambda().eq(DriverInfo::getId, pageWrap.getModel().getId());
+
+ // 鍙告満濮撳悕/鎵嬫満鍙凤紙鍏抽敭瀛楁ā绯婃煡璇級
+ if (StringUtils.isNotBlank(pageWrap.getModel().getKeyword())) {
+ queryWrapper.and(w -> w
+ .like(DriverInfo::getName, pageWrap.getModel().getKeyword())
+ .or()
+ .like(DriverInfo::getTelephone, pageWrap.getModel().getKeyword()));
}
- if (pageWrap.getModel().getDeleted() != null) {
- queryWrapper.lambda().eq(DriverInfo::getDeleted, pageWrap.getModel().getDeleted());
+ // 杞︾墝鍙�
+ if (StringUtils.isNotBlank(pageWrap.getModel().getCarCode())) {
+ queryWrapper.like(DriverInfo::getCarCode, pageWrap.getModel().getCarCode());
}
- if (pageWrap.getModel().getCreateUser() != null) {
- queryWrapper.lambda().eq(DriverInfo::getCreateUser, pageWrap.getModel().getCreateUser());
- }
- if (pageWrap.getModel().getCreateTime() != null) {
- queryWrapper.lambda().ge(DriverInfo::getCreateTime, Utils.Date.getStart(pageWrap.getModel().getCreateTime()));
- queryWrapper.lambda().le(DriverInfo::getCreateTime, Utils.Date.getEnd(pageWrap.getModel().getCreateTime()));
- }
- if (pageWrap.getModel().getUpdateUser() != null) {
- queryWrapper.lambda().eq(DriverInfo::getUpdateUser, pageWrap.getModel().getUpdateUser());
- }
- if (pageWrap.getModel().getUpdateTime() != null) {
- queryWrapper.lambda().ge(DriverInfo::getUpdateTime, Utils.Date.getStart(pageWrap.getModel().getUpdateTime()));
- queryWrapper.lambda().le(DriverInfo::getUpdateTime, Utils.Date.getEnd(pageWrap.getModel().getUpdateTime()));
- }
- if (pageWrap.getModel().getRemark() != null) {
- queryWrapper.lambda().eq(DriverInfo::getRemark, pageWrap.getModel().getRemark());
- }
- if (pageWrap.getModel().getName() != null) {
- queryWrapper.lambda().like(DriverInfo::getName, pageWrap.getModel().getName());
- }
- if (pageWrap.getModel().getTelephone() != null) {
- queryWrapper.lambda().like(DriverInfo::getTelephone, pageWrap.getModel().getTelephone());
- }
- if (pageWrap.getModel().getIdcard() != null) {
- queryWrapper.lambda().eq(DriverInfo::getIdcard, pageWrap.getModel().getIdcard());
- }
- if (pageWrap.getModel().getMaritalStatus() != null) {
- queryWrapper.lambda().eq(DriverInfo::getMaritalStatus, pageWrap.getModel().getMaritalStatus());
- }
- if (pageWrap.getModel().getCarType() != null) {
- queryWrapper.lambda().eq(DriverInfo::getCarType, pageWrap.getModel().getCarType());
- }
- if (pageWrap.getModel().getCarCode() != null) {
- queryWrapper.lambda().like(DriverInfo::getCarCode, pageWrap.getModel().getCarCode());
- }
- if (pageWrap.getModel().getCardStartDate() != null) {
- queryWrapper.lambda().ge(DriverInfo::getCardStartDate, Utils.Date.getStart(pageWrap.getModel().getCardStartDate()));
- queryWrapper.lambda().le(DriverInfo::getCardStartDate, Utils.Date.getEnd(pageWrap.getModel().getCardStartDate()));
- }
- if (pageWrap.getModel().getCardEndDate() != null) {
- queryWrapper.lambda().ge(DriverInfo::getCardEndDate, Utils.Date.getStart(pageWrap.getModel().getCardEndDate()));
- queryWrapper.lambda().le(DriverInfo::getCardEndDate, Utils.Date.getEnd(pageWrap.getModel().getCardEndDate()));
- }
+ // 鐘舵��
if (pageWrap.getModel().getStatus() != null) {
- queryWrapper.lambda().eq(DriverInfo::getStatus, pageWrap.getModel().getStatus());
+ queryWrapper.eq(DriverInfo::getStatus, pageWrap.getModel().getStatus());
}
- if (pageWrap.getModel().getAuditTime() != null) {
- queryWrapper.lambda().ge(DriverInfo::getAuditTime, Utils.Date.getStart(pageWrap.getModel().getAuditTime()));
- queryWrapper.lambda().le(DriverInfo::getAuditTime, Utils.Date.getEnd(pageWrap.getModel().getAuditTime()));
+ // 瀹℃壒鐘舵��
+ if (pageWrap.getModel().getAuditStatus() != null) {
+ queryWrapper.eq(DriverInfo::getAuditStatus, pageWrap.getModel().getAuditStatus());
}
- if (pageWrap.getModel().getAuditUser() != null) {
- queryWrapper.lambda().eq(DriverInfo::getAuditUser, pageWrap.getModel().getAuditUser());
+ // 鍒涘缓鏃ユ湡鑼冨洿
+ if (pageWrap.getModel().getCreateTimeStart() != null) {
+ queryWrapper.ge(DriverInfo::getCreateTime, Utils.Date.getStart(pageWrap.getModel().getCreateTimeStart()));
}
- if (pageWrap.getModel().getMemberId() != null) {
- queryWrapper.lambda().eq(DriverInfo::getMemberId, pageWrap.getModel().getMemberId());
+ if (pageWrap.getModel().getCreateTimeEnd() != null) {
+ queryWrapper.le(DriverInfo::getCreateTime, Utils.Date.getEnd(pageWrap.getModel().getCreateTimeEnd()));
}
+ // 瀛愭煡璇細浣欓
+ queryWrapper.selectAll(DriverInfo.class)
+ .select(" ( select ifnull(sum(r.OPT_TYPE * r.AMOUNT),0) from revenue r where r.MEMBER_TYPE = 1 and r.MEMBER_ID= t.id and r.VAILD_STATUS = 1 ) as memberAmount ")
+ .selectAs(Category::getName,DriverInfo::getCarTypeName)
+ .leftJoin(Category.class, Category::getId,DriverInfo::getCarType);
for (PageWrap.SortData sortData : pageWrap.getSorts()) {
if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
queryWrapper.orderByDesc(sortData.getProperty());
@@ -211,7 +187,11 @@
queryWrapper.orderByAsc(sortData.getProperty());
}
}
- return PageData.from(driverInfoMapper.selectPage(page, queryWrapper));
+ PageData<DriverInfo> pageData = PageData.from(driverInfoMapper.selectPage(page, queryWrapper));
+ for (DriverInfo d : pageData.getRecords()) {
+ d.setGender(Constants.getGenderByIdCard(d.getIdcard()));
+ }
+ return pageData;
}
@Override
@@ -315,9 +295,6 @@
member.setBusinessStatus(Constants.ZERO);
member.setPassword(secure.encryptPassword(defaultPassword, salt));
member.setSalt(salt);
- member.setWorkerIdentity(Constants.ZERO);
- member.setDriverIdentity(Constants.ZERO);
- member.setChefIdentity(Constants.ZERO);
member.setAmount(Constants.ZERO.longValue());
member.setTotalAmount(Constants.ZERO.longValue());
member.setStatus(Constants.ZERO);
@@ -329,7 +306,7 @@
member.setUseIdentity(Constants.ZERO);
memberMapper.insert(member);
- // 鍒涘缓鍙告満鍩虹淇℃伅锛坰tatus=0锛屾敞鍐岀姸鎬侊級
+ // 鍒涘缓鍙告満鍩虹淇℃伅
DriverInfo driverInfo = new DriverInfo();
driverInfo.setDeleted(Constants.ZERO);
driverInfo.setCreateTime(now);
@@ -337,6 +314,7 @@
driverInfo.setTelephone(telephone);
driverInfo.setMemberId(member.getId());
driverInfo.setStatus(Constants.ZERO);
+ driverInfo.setAuditStatus(null);
driverInfoMapper.insert(driverInfo);
}
@@ -408,10 +386,9 @@
if (Objects.isNull(driverInfo)) {
throw new BusinessException(ResponseStatus.DATA_EMPTY);
}
- // 鐘舵�佹牎楠岋細status=0(娉ㄥ唽)鎴杝tatus=3(瀹℃壒椹冲洖)鍙彁浜よ璇�
- if (driverInfo.getStatus() != null
- && !Constants.equalsInteger(driverInfo.getStatus(), Constants.ZERO)
- && !Constants.equalsInteger(driverInfo.getStatus(), Constants.THREE)) {
+ // 鐘舵�佹牎楠岋細auditStatus=null(鏈彁浜�)鎴朼uditStatus=2(瀹℃壒椹冲洖)鍙彁浜よ璇�
+ if (driverInfo.getAuditStatus() != null
+ && !Constants.equalsInteger(driverInfo.getAuditStatus(), Constants.TWO)) {
throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "褰撳墠鐘舵�佷笉鍏佽鎻愪氦璁よ瘉");
}
// 鏍规嵁杞﹁締绫诲瀷鍒ゆ柇鏄惁闇�瑕侀┚椹惰瘉
@@ -458,7 +435,7 @@
.set(DriverInfo::getCardEndDate, request.getCardEndDate())
.set(DriverInfo::getIdcardImg, request.getIdcardImg())
.set(DriverInfo::getIdcardImgBack, request.getIdcardImgBack())
- .set(DriverInfo::getStatus, Constants.ONE)
+ .set(DriverInfo::getAuditStatus, Constants.ZERO)
.set(DriverInfo::getUpdateTime, now)
.set(DriverInfo::getAuditRemark, null)
.set(DriverInfo::getAuditTime, null)
@@ -533,37 +510,108 @@
if (Objects.isNull(driverInfo)) {
throw new BusinessException(ResponseStatus.DATA_EMPTY);
}
- // 鍙湁鐘舵�佷负1(寰呭鎵�)涓斿凡濉啓璁よ瘉淇℃伅鎵嶈兘瀹℃壒
- if (!Constants.equalsInteger(driverInfo.getStatus(), Constants.ONE)
+ // 鍙湁瀹℃壒鐘舵�佷负0(寰呭鎵�)涓斿凡濉啓璁よ瘉淇℃伅鎵嶈兘瀹℃壒
+ if (!Constants.equalsInteger(driverInfo.getAuditStatus(), Constants.ZERO)
|| StringUtils.isBlank(driverInfo.getIdcard())) {
throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "褰撳墠鐘舵�佷笉鍏佽瀹℃壒");
}
Date now = new Date();
- // 瀹℃壒缁撴灉锛歛uditDTO.auditStatus 0=閫氳繃鈫抎riverInfo.status=2锛�1=鎷掔粷鈫抎riverInfo.status=3
- Integer newStatus;
+ // 瀹℃壒缁撴灉锛歛uditDTO.auditStatus 0=閫氳繃鈫抋uditStatus=1锛�1=鎷掔粷鈫抋uditStatus=2
+ Integer newAuditStatus;
if (Constants.equalsInteger(auditDTO.getAuditStatus(), Constants.ZERO)) {
- newStatus = Constants.TWO; // 瀹℃壒閫氳繃
+ newAuditStatus = Constants.ONE; // 瀹℃壒閫氳繃
+ // 瀹℃壒閫氳繃鏃跺徃鏈哄畾绾т负蹇呭~
+ if (auditDTO.getDriverLevel() == null || auditDTO.getDriverLevel() < 1 || auditDTO.getDriverLevel() > 5) {
+ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "瀹℃壒閫氳繃鏃跺繀椤诲~鍐欏徃鏈哄畾绾�");
+ }
} else if (Constants.equalsInteger(auditDTO.getAuditStatus(), Constants.ONE)) {
- newStatus = Constants.THREE; // 瀹℃壒椹冲洖
+ newAuditStatus = Constants.TWO; // 瀹℃壒椹冲洖
} else {
throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "瀹℃壒鐘舵�佸弬鏁伴敊璇�");
}
- // 鏇存柊鍙告満鐘舵��
+ // 鏇存柊鍙告満瀹℃壒鐘舵��
driverInfoMapper.update(new UpdateWrapper<DriverInfo>().lambda()
- .set(DriverInfo::getStatus, newStatus)
+ .set(DriverInfo::getAuditStatus, newAuditStatus)
.set(DriverInfo::getAuditTime, now)
.set(DriverInfo::getAuditRemark, auditDTO.getAuditRemark())
.set(DriverInfo::getAuditUser, auditDTO.getAuditUser())
+ .set(auditDTO.getDriverLevel() != null, DriverInfo::getDriverLevel, auditDTO.getDriverLevel())
.set(DriverInfo::getUpdateTime, now)
.eq(DriverInfo::getId, auditDTO.getId()));
// 鏇存柊浼氬憳鍙告満璁よ瘉鐘舵�侊細閫氳繃=2锛岄┏鍥�=3
- Integer driverStatus = Constants.equalsInteger(newStatus, Constants.TWO) ? Constants.TWO : Constants.THREE;
+ Integer driverStatus = Constants.equalsInteger(newAuditStatus, Constants.ONE) ? Constants.TWO : Constants.THREE;
memberMapper.update(new UpdateWrapper<Member>().lambda()
.set(Member::getBusinessStatus, driverStatus)
.set(Member::getUpdateTime, now)
.eq(Member::getId, driverInfo.getMemberId()));
}
+ @Override
+ public DriverInfo getDetail(Integer id) {
+ DriverInfo driverInfo = driverInfoMapper.selectById(id);
+ if (Objects.isNull(driverInfo) || Constants.equalsInteger(driverInfo.getDeleted(), Constants.ONE)) {
+ throw new BusinessException(ResponseStatus.DATA_EMPTY);
+ }
+ // 鎷兼帴鍥剧墖鍓嶇紑
+ String imgPrefix = "";
+ try {
+ imgPrefix = systemDictDataBiz.queryByCode(Constants.SYSTEM, Constants.RESOURCE_PATH).getCode()
+ + systemDictDataBiz.queryByCode(Constants.SYSTEM, Constants.DRIVER_FILES).getCode();
+ } catch (Exception e) {
+ // 鏈厤缃椂蹇界暐
+ }
+ driverInfo.setImgPrefix(imgPrefix);
+ driverInfo.setGender(Constants.getGenderByIdCard(driverInfo.getIdcard()));
+ // 鏌ヨ杞﹁締绫诲瀷鍚嶇О鍜屾槸鍚﹂渶瑕侀┚椹惰瘉
+ if (driverInfo.getCarType() != null) {
+ Category category = categoryMapper.selectById(driverInfo.getCarType());
+ if (Objects.nonNull(category)) {
+ driverInfo.setCarTypeName(category.getName());
+ driverInfo.setNeedLicense(Constants.equalsInteger(Integer.valueOf(category.getOtherField()), Constants.ONE) ? Constants.ONE : Constants.ZERO);
+ }
+ }
+ // 鏌ヨ鐓х墖鍒楄〃锛歰bjType=6杞﹁締鐓х墖銆�7椹鹃┒璇佺収鐗囥��8鍏朵粬璧勬枡鐓х墖
+ List<Multifile> multifileList = multifileMapper.selectList(new QueryWrapper<Multifile>().lambda()
+ .eq(Multifile::getObjId, driverInfo.getId())
+ .in(Multifile::getObjType, 6, 7, 8)
+ .orderByAsc(Multifile::getSortnum));
+ if (!CollectionUtils.isEmpty(multifileList)) {
+ for (Multifile mf : multifileList) {
+ mf.setFileurlFull(imgPrefix + mf.getFileurl());
+ if (Constants.equalsInteger(mf.getObjType(), 6)) {
+ driverInfo.getCarImgList().add(mf);
+ } else if (Constants.equalsInteger(mf.getObjType(), 7)) {
+ driverInfo.getLicenseImgList().add(mf);
+ } else if (Constants.equalsInteger(mf.getObjType(), 8)) {
+ driverInfo.getOtherImgList().add(mf);
+ }
+ }
+ }
+ return driverInfo;
+ }
+
+ @Override
+ public void changeStatus(ChangeStatusDTO dto) {
+ if (dto.getId() == null) {
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "涓婚敭涓嶈兘涓虹┖");
+ }
+ if (dto.getStatus() == null || (dto.getStatus() != 0 && dto.getStatus() != 1)) {
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "鐘舵�佸弬鏁伴敊璇紝0=鍚敤锛�1=绂佺敤");
+ }
+ DriverInfo driverInfo = driverInfoMapper.selectById(dto.getId());
+ if (Objects.isNull(driverInfo) || Constants.equalsInteger(driverInfo.getDeleted(), Constants.ONE)) {
+ throw new BusinessException(ResponseStatus.DATA_EMPTY);
+ }
+ driverInfo.setStatus(dto.getStatus());
+ driverInfo.setUpdateTime(new Date());
+ driverInfoMapper.updateById(driverInfo);
+ // 鑱斿姩淇敼浼氬憳鐘舵�侊紙member涓婚敭涓巇river_info涓婚敭涓�鑷达級
+ memberMapper.update(new UpdateWrapper<Member>().lambda()
+ .set(Member::getStatus, dto.getStatus())
+ .set(Member::getUpdateTime, new Date())
+ .eq(Member::getId, driverInfo.getId()));
+ }
+
/**
* 鎵归噺淇濆瓨闄勪欢璁板綍
*/
--
Gitblit v1.9.3