# Conflicts:
#	njzscloud-svr/src/main/java/com/njzscloud/supervisory/biz/service/BizCompanyService.java
localizer
ljw 2025-09-19 00:49:16 +08:00
commit 269bf7ae48
57 changed files with 745 additions and 89 deletions

View File

@ -19,6 +19,7 @@ import lombok.AccessLevel;
import lombok.NoArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import java.io.ByteArrayInputStream;
import java.io.InputStream;
import java.nio.charset.StandardCharsets;
import java.util.Date;
@ -107,14 +108,15 @@ public final class AliOSS {
oe.getHostId(),
bucketName,
objectName);
throw Exceptions.error("文件服务器错误");
// throw Exceptions.error("文件服务器错误");
} catch (ClientException ce) {
log.error("阿里云下载文件失败,错误信息:{}、存储桶:{}、对象名称:{}",
ce.getMessage(),
bucketName,
objectName);
throw Exceptions.error("文件服务器错误");
// throw Exceptions.error("文件服务器错误");
}
return Tuple2.create(new ByteArrayInputStream(new byte[0]), "");
}
public static String uploadFile(String objectName, String contentType, InputStream inputStream) {

View File

@ -1,4 +1,4 @@
package com.njzscloud.supervisory.biz.contant;
package com.njzscloud.supervisory.biz.constant;
import com.njzscloud.common.core.ienum.DictStr;
import lombok.Getter;

View File

@ -1,4 +1,4 @@
package com.njzscloud.supervisory.biz.contant;
package com.njzscloud.supervisory.biz.constant;
import com.njzscloud.common.core.ienum.DictStr;
import lombok.Getter;

View File

@ -1,4 +1,4 @@
package com.njzscloud.supervisory.biz.contant;
package com.njzscloud.supervisory.biz.constant;
import com.njzscloud.common.core.ienum.DictStr;
import lombok.Getter;

View File

@ -3,7 +3,7 @@ package com.njzscloud.supervisory.biz.controller;
import com.njzscloud.common.core.utils.R;
import com.njzscloud.common.mp.support.PageParam;
import com.njzscloud.common.mp.support.PageResult;
import com.njzscloud.supervisory.biz.contant.AuditStatus;
import com.njzscloud.supervisory.biz.constant.AuditStatus;
import com.njzscloud.supervisory.biz.pojo.entity.BizCompanyEntity;
import com.njzscloud.supervisory.biz.pojo.param.ModifyBizCompanyParam;
import com.njzscloud.supervisory.biz.pojo.param.SearchCompanyParam;

View File

@ -4,7 +4,7 @@ import com.njzscloud.common.core.utils.R;
import com.njzscloud.common.mp.support.PageParam;
import com.njzscloud.common.mp.support.PageResult;
import com.njzscloud.common.security.util.SecurityUtil;
import com.njzscloud.supervisory.biz.contant.AuditStatus;
import com.njzscloud.supervisory.biz.constant.AuditStatus;
import com.njzscloud.supervisory.biz.pojo.entity.BizProjectEntity;
import com.njzscloud.supervisory.biz.pojo.result.SearchBizProjectResult;
import com.njzscloud.supervisory.biz.service.BizProjectService;

View File

@ -3,7 +3,7 @@ package com.njzscloud.supervisory.biz.controller;
import com.njzscloud.common.core.utils.R;
import com.njzscloud.common.mp.support.PageParam;
import com.njzscloud.common.mp.support.PageResult;
import com.njzscloud.supervisory.biz.contant.AuditStatus;
import com.njzscloud.supervisory.biz.constant.AuditStatus;
import com.njzscloud.supervisory.biz.pojo.entity.BizTruckEntity;
import com.njzscloud.supervisory.biz.pojo.param.SearchTruckParam;
import com.njzscloud.supervisory.biz.pojo.result.SearchTruckResult;

View File

@ -18,4 +18,6 @@ public interface BizAuditConfigMapper extends BaseMapper<BizAuditConfigEntity> {
IPage<SearchAuditConfigResult> paging(Page<Object> page, @Param("ew") QueryWrapper<BizAuditConfigEntity> ew);
void modify(@Param("id") Long id, @Param("cityRole") String cityRole, @Param("areaRole") String areaRole);
String getAreaName(@Param("area") String area);
}

View File

@ -1,7 +1,7 @@
package com.njzscloud.supervisory.biz.pojo.entity;
import com.baomidou.mybatisplus.annotation.*;
import com.njzscloud.supervisory.biz.contant.AuditStatus;
import com.njzscloud.supervisory.biz.constant.AuditStatus;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;

View File

@ -2,7 +2,7 @@ package com.njzscloud.supervisory.biz.pojo.entity;
import com.baomidou.mybatisplus.annotation.*;
import com.njzscloud.common.mp.support.handler.j.JsonTypeHandler;
import com.njzscloud.supervisory.biz.contant.BizObj;
import com.njzscloud.supervisory.biz.constant.BizObj;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;

View File

@ -1,7 +1,7 @@
package com.njzscloud.supervisory.biz.pojo.entity;
import com.baomidou.mybatisplus.annotation.*;
import com.njzscloud.supervisory.biz.contant.AuditStatus;
import com.njzscloud.supervisory.biz.constant.AuditStatus;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

View File

@ -2,7 +2,7 @@ package com.njzscloud.supervisory.biz.pojo.entity;
import com.baomidou.mybatisplus.annotation.*;
import com.njzscloud.common.mp.support.handler.j.JsonTypeHandler;
import com.njzscloud.supervisory.biz.contant.AuditStatus;
import com.njzscloud.supervisory.biz.constant.AuditStatus;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
@ -25,6 +25,7 @@ public class BizProjectEntity {
* Id
*/
@TableId(type = IdType.ASSIGN_ID)
private Long id;
/**

View File

@ -1,12 +1,14 @@
package com.njzscloud.supervisory.biz.pojo.entity;
import com.baomidou.mybatisplus.annotation.*;
import com.njzscloud.supervisory.biz.contant.AuditStatus;
import com.njzscloud.common.mp.support.handler.j.JsonTypeHandler;
import com.njzscloud.supervisory.biz.constant.AuditStatus;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;
import java.time.LocalDateTime;
import java.util.List;
/**
*
@ -67,7 +69,17 @@ public class BizTruckEntity {
*
*/
private String auditMemo;
/**
*
*/
@TableField(typeHandler = JsonTypeHandler.class)
private List<String> truckLicenseDate;
/**
*
*/
@TableField(typeHandler = JsonTypeHandler.class)
private List<String> qualificationDate;
/**
* Id; sys_user.id
*/

View File

@ -1,6 +1,6 @@
package com.njzscloud.supervisory.biz.pojo.param;
import com.njzscloud.supervisory.biz.contant.AuditStatus;
import com.njzscloud.supervisory.biz.constant.AuditStatus;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

View File

@ -1,6 +1,6 @@
package com.njzscloud.supervisory.biz.pojo.param;
import com.njzscloud.supervisory.biz.contant.AuditStatus;
import com.njzscloud.supervisory.biz.constant.AuditStatus;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

View File

@ -1,7 +1,7 @@
package com.njzscloud.supervisory.biz.pojo.param;
import com.njzscloud.supervisory.biz.contant.AuditStatus;
import com.njzscloud.supervisory.biz.contant.BizObj;
import com.njzscloud.supervisory.biz.constant.AuditStatus;
import com.njzscloud.supervisory.biz.constant.BizObj;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

View File

@ -1,7 +1,7 @@
package com.njzscloud.supervisory.biz.pojo.param;
import com.njzscloud.supervisory.biz.contant.AuditStatus;
import com.njzscloud.supervisory.biz.contant.BizObj;
import com.njzscloud.supervisory.biz.constant.AuditStatus;
import com.njzscloud.supervisory.biz.constant.BizObj;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
@ -17,7 +17,7 @@ public class SearchCompanyParam {
*/
private BizObj bizObj;
private String station;
private Integer station;
/**
*

View File

@ -1,6 +1,6 @@
package com.njzscloud.supervisory.biz.pojo.param;
import com.njzscloud.supervisory.biz.contant.AuditStatus;
import com.njzscloud.supervisory.biz.constant.AuditStatus;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;

View File

@ -1,7 +1,7 @@
package com.njzscloud.supervisory.biz.pojo.result;
import com.njzscloud.supervisory.biz.contant.AuditStatus;
import com.njzscloud.supervisory.biz.contant.BizObj;
import com.njzscloud.supervisory.biz.constant.AuditStatus;
import com.njzscloud.supervisory.biz.constant.BizObj;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

View File

@ -2,7 +2,7 @@ package com.njzscloud.supervisory.biz.pojo.result;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.njzscloud.supervisory.biz.contant.AuditStatus;
import com.njzscloud.supervisory.biz.constant.AuditStatus;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

View File

@ -1,6 +1,6 @@
package com.njzscloud.supervisory.biz.pojo.result;
import com.njzscloud.supervisory.biz.contant.AuditStatus;
import com.njzscloud.supervisory.biz.constant.AuditStatus;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

View File

@ -1,10 +1,12 @@
package com.njzscloud.supervisory.biz.pojo.result;
import com.njzscloud.supervisory.biz.contant.AuditStatus;
import com.njzscloud.supervisory.biz.constant.AuditStatus;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;
import java.util.List;
/**
*
*/
@ -63,4 +65,14 @@ public class SearchTruckResult {
*/
private String auditMemo;
/**
*
*/
private List<String> truckLicenseDate;
/**
*
*/
private List<String> qualificationDate;
}

View File

@ -31,6 +31,7 @@ public class BizAuditConfigService extends ServiceImpl<BizAuditConfigMapper, Biz
/**
*
*/
@Transactional(rollbackFor = Exception.class)
public void add(BizAuditConfigEntity bizAuditConfigEntity) {
AppProperties.DefaultPlace defaultPlace = appProperties.getDefaultPlace();
bizAuditConfigEntity.setProvince(defaultPlace.getProvince())
@ -39,8 +40,12 @@ public class BizAuditConfigService extends ServiceImpl<BizAuditConfigMapper, Biz
.setCityName(defaultPlace.getCityName());
Assert.isTrue(StrUtil.isNotBlank(bizAuditConfigEntity.getArea()), () -> Exceptions.clierr("区县不能为空"));
Assert.isTrue(StrUtil.isNotBlank(bizAuditConfigEntity.getAreaName()), () -> Exceptions.clierr("区县名称不能为空"));
String area = bizAuditConfigEntity.getArea();
Assert.isTrue(StrUtil.isNotBlank(area), () -> Exceptions.clierr("区县不能为空"));
String areaName = baseMapper.getAreaName(area);
Assert.isTrue(StrUtil.isNotBlank(areaName), () -> Exceptions.clierr("区县名称不能为空"));
bizAuditConfigEntity.setAreaName(areaName);
String areaRole = bizAuditConfigEntity.getAreaRole();
if (StrUtil.isNotBlank(areaRole)) {
Assert.isTrue(StrUtil.isNotBlank(bizAuditConfigEntity.getCityRole()), () -> Exceptions.clierr("市级审核员不能为空"));

View File

@ -13,8 +13,8 @@ import com.njzscloud.common.mp.support.PageParam;
import com.njzscloud.common.mp.support.PageResult;
import com.njzscloud.common.security.support.UserDetail;
import com.njzscloud.common.security.util.SecurityUtil;
import com.njzscloud.supervisory.biz.contant.AuditStatus;
import com.njzscloud.supervisory.biz.contant.BizObj;
import com.njzscloud.supervisory.biz.constant.AuditStatus;
import com.njzscloud.supervisory.biz.constant.BizObj;
import com.njzscloud.supervisory.biz.mapper.BizCompanyMapper;
import com.njzscloud.supervisory.biz.pojo.entity.BizCompanyEntity;
import com.njzscloud.supervisory.biz.pojo.param.AddBizCompanyParam;
@ -177,15 +177,18 @@ public class BizCompanyService extends ServiceImpl<BizCompanyMapper, BizCompanyE
}
String companyName = searchCompanyParam.getCompanyName();
String legalRepresentative = searchCompanyParam.getLegalRepresentative();
Integer station = searchCompanyParam.getStation();
return PageResult.of(baseMapper.paging(pageParam.toPage(), Wrappers.query()
// .eq("a.station", Boolean.FALSE)
.eq(StrUtil.isNotBlank(aStatus), "a.audit_status", aStatus)
.eq(StrUtil.isNotBlank(searchCompanyParam.getStation()), "a.station", searchCompanyParam.getStation())
.eq("a.station", station != null && station == 1)
// .eq(StrUtil.isNotBlank(searchCompanyParam.getStation()), "a.station", searchCompanyParam.getStation())
.in(CollUtil.isNotEmpty(bizObjList), "b.biz_obj", bizObjList)
.like(StrUtil.isNotBlank(companyName), "a.company_name", companyName)
.like(StrUtil.isNotBlank(legalRepresentative), "a.legal_representative", legalRepresentative)
.like(StrUtil.isNotBlank(uscc), "a.uscc", uscc)
));
}
@Transactional(rollbackFor = Exception.class)

View File

@ -2,18 +2,19 @@ package com.njzscloud.supervisory.biz.service;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Assert;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njzscloud.common.core.ex.Exceptions;
import com.njzscloud.common.core.ienum.Dict;
import com.njzscloud.common.mp.support.PageParam;
import com.njzscloud.common.mp.support.PageResult;
import com.njzscloud.common.security.support.UserDetail;
import com.njzscloud.common.security.util.SecurityUtil;
import com.njzscloud.supervisory.biz.contant.AuditStatus;
import com.njzscloud.supervisory.biz.contant.BizObj;
import com.njzscloud.supervisory.biz.constant.AuditStatus;
import com.njzscloud.supervisory.biz.constant.BizObj;
import com.njzscloud.supervisory.biz.mapper.BizDriverMapper;
import com.njzscloud.supervisory.biz.pojo.entity.BizDriverEntity;
import com.njzscloud.supervisory.biz.pojo.param.AddDriverParam;
@ -50,6 +51,7 @@ public class BizDriverService extends ServiceImpl<BizDriverMapper, BizDriverEnti
.setBizObj(BizObj.SiJi)
);
BizDriverEntity bizDriverEntity = BeanUtil.copyProperties(addDriverParam, BizDriverEntity.class)
.setAuditStatus(AuditStatus.DaiShenHe)
.setUserId(driverUserId)
.setCompanyId(searchCompanyResult.getId());
this.save(bizDriverEntity);
@ -94,12 +96,20 @@ public class BizDriverService extends ServiceImpl<BizDriverMapper, BizDriverEnti
public PageResult<BizDriverEntity> paging(PageParam pageParam, BizDriverEntity bizDriverEntity) {
String driverName = bizDriverEntity.getDriverName();
String phone = bizDriverEntity.getPhone();
Wrapper<BizDriverEntity> queryWrapper = Wrappers.<BizDriverEntity>query()
QueryWrapper<BizDriverEntity> ew = Wrappers.<BizDriverEntity>query()
.like(StrUtil.isNotBlank(driverName), "d.driver_name", driverName)
.like(StrUtil.isNotBlank(phone), "d.phone", phone);
UserDetail userDetail = SecurityUtil.loginUser();
BizObj parse = Dict.parse(userDetail.getBizObj(), BizObj.values());
if (parse == BizObj.QiYe
|| parse == BizObj.GeTi
) {
SearchCompanyResult searchCompanyResult = baseMapper.selectCompanyByUserId(userDetail.getUserId());
ew.eq("d.company_id", searchCompanyResult.getId());
}
Page<BizDriverEntity> page = new Page<>(pageParam.getCurrent(), pageParam.getSize());
return PageResult.of(baseMapper.selectPageWithCompanyName(page, queryWrapper));
return PageResult.of(baseMapper.selectPageWithCompanyName(page, ew));
}
public PageResult<BizDriverEntity> dispensabilityList(PageParam pageParam, String keywords) {
@ -122,24 +132,24 @@ public class BizDriverService extends ServiceImpl<BizDriverMapper, BizDriverEnti
*/
@Transactional(rollbackFor = Exception.class)
public void audit(AuditDriverParam auditDriverParam) {
Assert.isTrue(auditDriverParam.getAuditStatus() == AuditStatus.TongGuo ||
auditDriverParam.getAuditStatus() == AuditStatus.BoHui, "错误的审核状态");
Assert.isTrue(auditDriverParam.getAuditStatus() == AuditStatus.TongGuo ||
auditDriverParam.getAuditStatus() == AuditStatus.BoHui, "错误的审核状态");
BizDriverEntity oldData = getById(auditDriverParam.getId());
if (oldData == null) {
throw Exceptions.exception("未找到要审核的司机信息");
}
if (oldData.getAuditStatus() != AuditStatus.DaiShenHe) {
throw Exceptions.exception("当前状态不能审核");
}
boolean updated = update(Wrappers.<BizDriverEntity>lambdaUpdate()
.set(BizDriverEntity::getAuditStatus, auditDriverParam.getAuditStatus())
.set(BizDriverEntity::getAuditMemo, auditDriverParam.getAuditMemo())
.eq(BizDriverEntity::getId, auditDriverParam.getId())
.eq(BizDriverEntity::getAuditStatus, AuditStatus.DaiShenHe));
if (!updated) {
throw Exceptions.exception("数据状态已改变,无法审核");
}

View File

@ -7,7 +7,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njzscloud.common.core.ex.Exceptions;
import com.njzscloud.common.mp.support.PageParam;
import com.njzscloud.common.mp.support.PageResult;
import com.njzscloud.supervisory.biz.contant.AuditStatus;
import com.njzscloud.supervisory.biz.constant.AuditStatus;
import com.njzscloud.supervisory.biz.mapper.BizProjectMapper;
import com.njzscloud.supervisory.biz.pojo.entity.BizProjectEntity;
import com.njzscloud.supervisory.biz.pojo.result.SearchBizProjectResult;

View File

@ -3,15 +3,18 @@ package com.njzscloud.supervisory.biz.service;
import cn.hutool.core.lang.Assert;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.IService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njzscloud.common.core.ex.Exceptions;
import com.njzscloud.common.core.ienum.Dict;
import com.njzscloud.common.mp.support.PageParam;
import com.njzscloud.common.mp.support.PageResult;
import com.njzscloud.common.security.support.UserDetail;
import com.njzscloud.common.security.util.SecurityUtil;
import com.njzscloud.supervisory.biz.contant.AuditStatus;
import com.njzscloud.supervisory.biz.constant.AuditStatus;
import com.njzscloud.supervisory.biz.constant.BizObj;
import com.njzscloud.supervisory.biz.mapper.BizTruckMapper;
import com.njzscloud.supervisory.biz.pojo.entity.BizTruckEntity;
import com.njzscloud.supervisory.biz.pojo.param.SearchTruckParam;
@ -83,11 +86,18 @@ public class BizTruckService extends ServiceImpl<BizTruckMapper, BizTruckEntity>
String companyName = searchTruckParam.getCompanyName();
String licensePlate = searchTruckParam.getLicensePlate();
AuditStatus auditStatus = searchTruckParam.getAuditStatus();
return PageResult.of(baseMapper.paging(pageParam.toPage(), Wrappers.<SearchTruckResult>query()
QueryWrapper<SearchTruckResult> ew = Wrappers.<SearchTruckResult>query()
.eq(auditStatus != null, "a.audit_status", auditStatus)
.like(StrUtil.isNotBlank(companyName), "b.company_name", companyName)
.like(StrUtil.isNotBlank(licensePlate), "a.license_plate", licensePlate)
));
.like(StrUtil.isNotBlank(licensePlate), "a.license_plate", licensePlate);
UserDetail userDetail = SecurityUtil.loginUser();
BizObj parse = Dict.parse(userDetail.getBizObj(), BizObj.values());
if (parse == BizObj.QiYe
|| parse == BizObj.GeTi
) {
ew.eq("b.user_id", userDetail.getUserId());
}
return PageResult.of(baseMapper.paging(pageParam.toPage(), ew));
}
@Transactional(rollbackFor = Exception.class)

View File

@ -0,0 +1,5 @@
package com.njzscloud.supervisory.constant;
public interface Constant {
String ROLE_SHORT_BARGE = "ROLE_SHORT_BARGE";
}

View File

@ -0,0 +1,44 @@
package com.njzscloud.supervisory.customer.controller;
import com.njzscloud.common.core.utils.R;
import com.njzscloud.common.mp.support.PageParam;
import com.njzscloud.common.mp.support.PageResult;
import com.njzscloud.supervisory.customer.pojo.param.SearchCustomerParam;
import com.njzscloud.supervisory.customer.pojo.result.SearchCustomerResult;
import com.njzscloud.supervisory.customer.service.CustomerService;
import lombok.RequiredArgsConstructor;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
/**
*
*/
@RestController
@RequestMapping("/customer")
@RequiredArgsConstructor
public class CustomerController {
private final CustomerService customerService;
/**
*
*/
@GetMapping("/paging")
public R<PageResult<SearchCustomerResult>> paging(PageParam pageParam, SearchCustomerParam searchCustomerParam) {
return R.success(customerService.paging(pageParam, searchCustomerParam));
}
/**
*
*/
@GetMapping("/short_barge")
public R<?> shortBarge(
@RequestParam("enable") Boolean enable,
@RequestParam("customerId") Long customerId
) {
customerService.shortBarge(enable, customerId);
return R.success();
}
}

View File

@ -0,0 +1,18 @@
package com.njzscloud.supervisory.customer.mapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.njzscloud.supervisory.customer.pojo.result.SearchCustomerResult;
import com.njzscloud.supervisory.customer.pojo.result.ShortBargeInfoResult;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@Mapper
public interface CustomerMapper {
IPage<SearchCustomerResult> paging(@Param("page") Page<SearchCustomerResult> page, @Param("ew") QueryWrapper<Object> ew);
List<ShortBargeInfoResult> shortBargeInfo(@Param("ew") QueryWrapper<Object> ew);
}

View File

@ -0,0 +1,22 @@
package com.njzscloud.supervisory.customer.pojo.param;
import com.njzscloud.supervisory.biz.constant.BizObj;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;
@Getter
@Setter
@ToString
@Accessors(chain = true)
public class SearchCustomerParam {
/**
*
*/
private BizObj bizObj;
/**
*
*/
private String customerName;
}

View File

@ -0,0 +1,104 @@
package com.njzscloud.supervisory.customer.pojo.result;
import com.njzscloud.supervisory.biz.constant.AuditStatus;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;
import java.time.LocalDateTime;
@Getter
@Setter
@ToString
@Accessors(chain = true)
public class SearchCompanyResult {
/**
* id
*/
private Long id;
/**
*
*/
private String uscc;
/**
*
*/
private String companyName;
/**
*
*/
private String businessLicense;
/**
*
*/
private LocalDateTime licenseStartTime;
/**
*
*/
private LocalDateTime licenseEndTime;
/**
*
*/
private String legalRepresentative;
/**
*
*/
private String province;
/**
*
*/
private String city;
/**
*
*/
private String area;
/**
*
*/
private String town;
/**
*
*/
private String provinceName;
/**
*
*/
private String cityName;
/**
*
*/
private String areaName;
/**
*
*/
private String townName;
/**
*
*/
private String address;
/**
*
*/
private Double lng;
/**
*
*/
private Double lat;
/**
*
*/
private String contacts;
/**
*
*/
private String phone;
/**
*
*/
private AuditStatus auditStatus;
/**
*
*/
private String auditMemo;
}

View File

@ -0,0 +1,58 @@
package com.njzscloud.supervisory.customer.pojo.result;
import com.njzscloud.supervisory.biz.constant.BizObj;
import com.njzscloud.supervisory.sys.user.contant.Gender;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;
import java.time.LocalDateTime;
@Getter
@Setter
@ToString
@Accessors(chain = true)
public class SearchCustomerResult {
/**
* Id
*/
private Long id;
/**
*
*/
private String customerName;
/**
*
*/
private String avatar;
/**
*
*/
private Gender gender;
/**
*
*/
private String email;
/**
*
*/
private String customerPhone;
/**
*
*/
private BizObj bizObj;
/**
*
*/
private LocalDateTime regdate;
/**
*
*/
private Boolean shortBarge;
/**
*
*/
private SearchCompanyResult company;
}

View File

@ -0,0 +1,15 @@
package com.njzscloud.supervisory.customer.pojo.result;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.experimental.Accessors;
@Getter
@Setter
@ToString
@Accessors(chain = true)
public class ShortBargeInfoResult {
private Long userId;
private Boolean shortBarge;
}

View File

@ -0,0 +1,95 @@
package com.njzscloud.supervisory.customer.service;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.lang.Assert;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.metadata.OrderItem;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.njzscloud.common.core.ex.Exceptions;
import com.njzscloud.common.core.utils.GroupUtil;
import com.njzscloud.common.mp.support.PageParam;
import com.njzscloud.common.mp.support.PageResult;
import com.njzscloud.supervisory.biz.constant.BizObj;
import com.njzscloud.supervisory.customer.mapper.CustomerMapper;
import com.njzscloud.supervisory.customer.pojo.param.SearchCustomerParam;
import com.njzscloud.supervisory.customer.pojo.result.SearchCustomerResult;
import com.njzscloud.supervisory.customer.pojo.result.ShortBargeInfoResult;
import com.njzscloud.supervisory.sys.user.service.UserRoleService;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import java.util.stream.Stream;
@Slf4j
@Service
@RequiredArgsConstructor
public class CustomerService {
private final CustomerMapper customerMapper;
private final UserRoleService userRoleService;
public PageResult<SearchCustomerResult> paging(PageParam pageParam, SearchCustomerParam searchCustomerParam) {
Page<SearchCustomerResult> page = pageParam.toPage();
page.addOrder(OrderItem.desc("b.regdate"), OrderItem.desc("a.id"));
String customerName = searchCustomerParam.getCustomerName();
QueryWrapper<Object> ew = Wrappers.query()
.and(StrUtil.isNotBlank(customerName), it ->
it.like("a.nickname", customerName)
.or().like("c.contacts", customerName)
.or().like("d.driver_name", customerName)
.or().like("c.company_name", customerName)
);
BizObj bizObj = searchCustomerParam.getBizObj();
if (bizObj != null) {
Assert.isTrue(bizObj == BizObj.GeRen
|| bizObj == BizObj.ChanFeiDanWei
|| bizObj == BizObj.QingYunGongSi
, () -> Exceptions.clierr("客户类型错误"));
if (bizObj == BizObj.GeRen) {
ew.eq("a.biz_obj", bizObj);
} else if (bizObj == BizObj.ChanFeiDanWei) {
ew.in("a.biz_obj", Stream.of(
BizObj.WuYe,
BizObj.ShiGongDanWei,
BizObj.ChaiQian,
BizObj.SheQu).map(BizObj::getVal).collect(Collectors.toList()));
} else if (bizObj == BizObj.QingYunGongSi) {
ew.in("a.biz_obj", Stream.of(
BizObj.QiYe,
BizObj.GeTi).map(BizObj::getVal).collect(Collectors.toList()));
}
} else {
ew.in("a.biz_obj", Stream.of(
BizObj.GeRen,
BizObj.WuYe,
BizObj.ShiGongDanWei,
BizObj.ChaiQian,
BizObj.SheQu,
BizObj.QiYe,
BizObj.GeTi).map(BizObj::getVal).collect(Collectors.toList()));
}
IPage<SearchCustomerResult> paging = customerMapper.paging(page, ew);
List<SearchCustomerResult> records = paging.getRecords();
if (CollUtil.isEmpty(records)) return PageResult.of(paging);
List<Long> collect = records.stream().map(SearchCustomerResult::getId).collect(Collectors.toList());
List<ShortBargeInfoResult> shortBargeInfoResults = customerMapper.shortBargeInfo(Wrappers.query()
.in("a.user_id", collect).groupBy("a.user_id"));
Map<Long, Boolean> map = GroupUtil.k_o(shortBargeInfoResults, ShortBargeInfoResult::getUserId, ShortBargeInfoResult::getShortBarge);
for (SearchCustomerResult record : records) {
record.setShortBarge(map.getOrDefault(record.getId(), false));
}
return PageResult.of(paging);
}
public void shortBarge(Boolean enable, Long customerId) {
userRoleService.shortBarge(enable, customerId);
}
}

View File

@ -9,7 +9,6 @@ import com.baomidou.mybatisplus.extension.service.IService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njzscloud.common.mp.support.PageParam;
import com.njzscloud.common.mp.support.PageResult;
import com.njzscloud.common.mqtt.util.MqttUtil;
import com.njzscloud.supervisory.device.contant.DeviceCode;
import com.njzscloud.supervisory.device.mapper.DeviceInfoMapper;
import com.njzscloud.supervisory.device.pojo.entity.DeviceInfoEntity;
@ -44,6 +43,10 @@ public class DeviceInfoService extends ServiceImpl<DeviceInfoMapper, DeviceInfoE
* @param deviceInfoEntity
*/
public void add(DeviceInfoEntity deviceInfoEntity) {
Map<String, Object> config = deviceInfoEntity.getConfig();
if (MapUtil.isEmpty(config)) {
deviceInfoEntity.setConfig(MapUtil.empty());
}
this.save(deviceInfoEntity);
}
@ -267,7 +270,7 @@ public class DeviceInfoService extends ServiceImpl<DeviceInfoMapper, DeviceInfoE
Integer weight = data.getInteger("weight");
String frontPhoto = data.getString("photoFront");
String bodyPhoto = data.getString("photoBody");
if (weight == null || weight <= 200) {
if (weight == null || weight == 0) {
// 播语音
playVoice(sn, "{}磅重异常,请重新称重", licensePlate);
return resBuilder
@ -306,15 +309,18 @@ public class DeviceInfoService extends ServiceImpl<DeviceInfoMapper, DeviceInfoE
}
private void open(String sn) {
MqttUtil.publish("zsy/1/barrier", MapUtil.builder()
log.info("开门: {}", sn);
/* MqttUtil.publish("zsy/1/barrier", MapUtil.builder()
.put("deviceNo", sn)
.build());
.build()); */
}
private void playVoice(String sn, String content, Object... params) {
MqttUtil.publish("zsy/1/voice", MapUtil.builder()
String format = StrUtil.format(content, params);
log.info("播语音: {} {}", sn, format);
/* MqttUtil.publish("zsy/1/voice", MapUtil.builder()
.put("deviceNo", sn)
.put("text", StrUtil.format(content, params))
.build());
.put("text", format)
.build()); */
}
}

View File

@ -1,8 +1,10 @@
package com.njzscloud.supervisory.geo.pojo.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.handlers.JacksonTypeHandler;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
@ -15,7 +17,7 @@ import lombok.experimental.Accessors;
@Setter
@ToString
@Accessors(chain = true)
@TableName("geo_fence_config")
@TableName(value = "geo_fence_config", autoResultMap = true)
public class GeoFenceConfigEntity {
/**
@ -27,6 +29,7 @@ public class GeoFenceConfigEntity {
/**
*
*/
private String config;
@TableField(typeHandler = JacksonTypeHandler.class)
private Object config;
}

View File

@ -2,7 +2,7 @@ package com.njzscloud.supervisory.order.pojo.entity;
import com.baomidou.mybatisplus.annotation.*;
import com.njzscloud.common.mp.support.handler.j.JsonTypeHandler;
import com.njzscloud.supervisory.biz.contant.AuditStatus;
import com.njzscloud.supervisory.biz.constant.AuditStatus;
import com.njzscloud.supervisory.order.contant.*;
import lombok.Getter;
import lombok.Setter;
@ -181,6 +181,15 @@ public class OrderInfoEntity {
*
*/
private Long carInOutId;
/**
*
*/
private String expectTime;
/**
*
*/
private String estimatedQuantity;
/**
* Id; sys_user.id
*/

View File

@ -1,6 +1,6 @@
package com.njzscloud.supervisory.order.pojo.param;
import com.njzscloud.supervisory.biz.contant.AuditStatus;
import com.njzscloud.supervisory.biz.constant.AuditStatus;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

View File

@ -1,6 +1,6 @@
package com.njzscloud.supervisory.order.pojo.param;
import com.njzscloud.supervisory.biz.contant.AuditStatus;
import com.njzscloud.supervisory.biz.constant.AuditStatus;
import com.njzscloud.supervisory.order.contant.CheckStatus;
import lombok.Getter;
import lombok.Setter;

View File

@ -1,6 +1,6 @@
package com.njzscloud.supervisory.order.pojo.result;
import com.njzscloud.supervisory.biz.contant.AuditStatus;
import com.njzscloud.supervisory.biz.constant.AuditStatus;
import com.njzscloud.supervisory.goods.contant.MoneyStrategy;
import com.njzscloud.supervisory.order.contant.*;
import lombok.Getter;
@ -47,6 +47,9 @@ public class OrderPagingResult {
*/
private Long stationId;
private String stationName;
/**
*
*/

View File

@ -20,8 +20,8 @@ import com.njzscloud.common.mp.support.PageResult;
import com.njzscloud.common.security.support.UserDetail;
import com.njzscloud.common.security.util.SecurityUtil;
import com.njzscloud.common.sn.support.SnUtil;
import com.njzscloud.supervisory.biz.contant.AuditStatus;
import com.njzscloud.supervisory.biz.contant.BizObj;
import com.njzscloud.supervisory.biz.constant.AuditStatus;
import com.njzscloud.supervisory.biz.constant.BizObj;
import com.njzscloud.supervisory.biz.pojo.entity.BizAuditConfigEntity;
import com.njzscloud.supervisory.biz.service.BizAuditConfigService;
import com.njzscloud.supervisory.order.contant.CheckStatus;
@ -158,7 +158,7 @@ public class OrderInfoService extends ServiceImpl<OrderInfoMapper, OrderInfoEnti
orderItem.setColumn("a.create_time");
orderItem.setAsc(false);
page.addOrder(orderItem);
return PageResult.of(baseMapper.paging(page, Wrappers.<OrderPagingResult>query()
QueryWrapper<OrderPagingResult> ew = Wrappers.<OrderPagingResult>query()
.like(StrUtil.isNotBlank(sn), "a.sn", sn)
.like(StrUtil.isNotBlank(licensePlate), "a.license_plate", licensePlate)
.like(StrUtil.isNotBlank(nickname), "h.nickname", nickname)
@ -167,8 +167,22 @@ public class OrderInfoService extends ServiceImpl<OrderInfoMapper, OrderInfoEnti
.in(CollUtil.isNotEmpty(orderStatusList), "a.order_status", orderStatusList)
.eq(checkStatus != null, "a.check_status", checkStatus)
.ge(startTime != null, "a.create_time", startTime)
.le(endTime != null, "a.create_time", endTime)
));
.le(endTime != null, "a.create_time", endTime);
UserDetail userDetail = SecurityUtil.loginUser();
BizObj parse = Dict.parse(userDetail.getBizObj(), BizObj.values());
if (parse == BizObj.GeRen
|| parse == BizObj.WuYe
|| parse == BizObj.ShiGongDanWei
|| parse == BizObj.ChaiQian
|| parse == BizObj.SheQu
) {
ew.eq("a.user_id", userDetail.getUserId());
} else if (parse == BizObj.QiYe
|| parse == BizObj.GeTi
) {
ew.eq("g.user_id", userDetail.getUserId());
}
return PageResult.of(baseMapper.paging(page, ew));
}
public PageResult<OrderPagingResult> auditPaging(PageParam pageParam, OrderPagingSearchParam orderPagingSearchParam) {
@ -313,6 +327,7 @@ public class OrderInfoService extends ServiceImpl<OrderInfoMapper, OrderInfoEnti
OrderInfoEntity orderInfo = this.getById(startTransportOrderParam.getOrderId());
Assert.notNull(orderInfo, () -> Exceptions.clierr("订单不存在"));
Assert.isTrue(orderInfo.getOrderStatus() == OrderStatus.YiJieDan, () -> Exceptions.clierr("当前订单状态,无法开始运输"));
Assert.isTrue(orderInfo.getAuditStatus() == AuditStatus.TongGuo, () -> Exceptions.clierr("当前订单未审核完成,无法开始运输"));
this.updateById(new OrderInfoEntity()
.setId(orderInfo.getId())
.setCargoPhoto(startTransportOrderParam.getCargoPhoto())
@ -465,7 +480,7 @@ public class OrderInfoService extends ServiceImpl<OrderInfoMapper, OrderInfoEnti
imgType = ImgUtil.IMAGE_TYPE_JPG;
}
String qrcode = QrCodeUtil.generateAsBase64(orderCertificateParam.getLink(), new QrConfig(width, height), imgType);
String qrcode = QrCodeUtil.generateAsBase64(orderCertificateParam.getLink() + "?orderId=" + orderCertificateParam.getOrderId(), new QrConfig(width, height), imgType);
return new OrderCertificateResult()
.setOrderDetail(this.detail(orderCertificateParam.getOrderId()))

View File

@ -2,7 +2,7 @@ package com.njzscloud.supervisory.sys.auth.pojo.result;
import com.njzscloud.common.security.support.EndpointResource;
import com.njzscloud.common.security.support.MenuResource;
import com.njzscloud.supervisory.biz.contant.BizObj;
import com.njzscloud.supervisory.biz.constant.BizObj;
import com.njzscloud.supervisory.biz.pojo.result.SearchCompanyResult;
import com.njzscloud.supervisory.sys.user.contant.Gender;
import lombok.Getter;

View File

@ -1,7 +1,7 @@
package com.njzscloud.supervisory.sys.user.pojo.entity;
import com.baomidou.mybatisplus.annotation.*;
import com.njzscloud.supervisory.biz.contant.BizObj;
import com.njzscloud.supervisory.biz.constant.BizObj;
import com.njzscloud.supervisory.sys.user.contant.Gender;
import lombok.Getter;
import lombok.Setter;

View File

@ -3,7 +3,7 @@ package com.njzscloud.supervisory.sys.user.pojo.param;
import cn.hutool.core.util.StrUtil;
import com.njzscloud.common.mvc.validator.Constrained;
import com.njzscloud.common.mvc.validator.ValidRule;
import com.njzscloud.supervisory.biz.contant.BizObj;
import com.njzscloud.supervisory.biz.constant.BizObj;
import com.njzscloud.supervisory.sys.user.contant.Gender;
import lombok.Getter;
import lombok.Setter;

View File

@ -3,7 +3,7 @@ package com.njzscloud.supervisory.sys.user.pojo.param;
import cn.hutool.core.util.StrUtil;
import com.njzscloud.common.mvc.validator.Constrained;
import com.njzscloud.common.mvc.validator.ValidRule;
import com.njzscloud.supervisory.biz.contant.BizObj;
import com.njzscloud.supervisory.biz.constant.BizObj;
import com.njzscloud.supervisory.sys.user.contant.Gender;
import lombok.Getter;
import lombok.Setter;

View File

@ -1,6 +1,6 @@
package com.njzscloud.supervisory.sys.user.pojo.result;
import com.njzscloud.supervisory.biz.contant.BizObj;
import com.njzscloud.supervisory.biz.constant.BizObj;
import com.njzscloud.supervisory.sys.role.pojo.result.RoleDetailResult;
import com.njzscloud.supervisory.sys.user.contant.Gender;
import lombok.Getter;

View File

@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.IService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njzscloud.common.core.ex.Exceptions;
import com.njzscloud.supervisory.constant.Constant;
import com.njzscloud.supervisory.sys.role.pojo.entity.RoleEntity;
import com.njzscloud.supervisory.sys.role.pojo.result.RoleDetailResult;
import com.njzscloud.supervisory.sys.role.service.RoleService;
@ -58,4 +59,24 @@ public class UserRoleService extends ServiceImpl<SysUserRoleMapper, SysUserRoleE
this.saveBatch(roleIds.stream().map(roleId -> new SysUserRoleEntity().setRoleId(roleId).setUserId(userId)).collect(Collectors.toList()));
}
@Transactional(rollbackFor = Exception.class)
public void shortBarge(Boolean enable, Long customerId) {
RoleEntity roleEntity = roleService.getOne(Wrappers.<RoleEntity>lambdaQuery().eq(RoleEntity::getRoleCode, Constant.ROLE_SHORT_BARGE));
if (roleEntity == null) {
roleEntity = new RoleEntity()
.setRoleCode(Constant.ROLE_SHORT_BARGE)
.setMemo("短驳角色")
.setRoleName("短驳角色");
roleService.save(roleEntity);
}
if (enable) {
SysUserRoleEntity sysUserRoleEntity = this.getOne(Wrappers.<SysUserRoleEntity>lambdaQuery().eq(SysUserRoleEntity::getUserId, customerId).eq(SysUserRoleEntity::getRoleId, roleEntity.getId()));
if (sysUserRoleEntity == null) {
this.save(new SysUserRoleEntity().setRoleId(roleEntity.getId()).setUserId(customerId));
}
} else {
this.remove(Wrappers.<SysUserRoleEntity>lambdaQuery().eq(SysUserRoleEntity::getUserId, customerId).eq(SysUserRoleEntity::getRoleId, roleEntity.getId()));
}
}
}

View File

@ -13,7 +13,7 @@ import com.njzscloud.common.mp.support.PageResult;
import com.njzscloud.common.security.contant.AuthWay;
import com.njzscloud.common.security.util.EncryptUtil;
import com.njzscloud.common.security.util.SecurityUtil;
import com.njzscloud.supervisory.biz.contant.BizObj;
import com.njzscloud.supervisory.biz.constant.BizObj;
import com.njzscloud.supervisory.biz.pojo.param.AddBizCompanyParam;
import com.njzscloud.supervisory.biz.service.BizCompanyService;
import com.njzscloud.supervisory.sys.role.pojo.entity.RoleEntity;
@ -148,14 +148,21 @@ public class UserService extends ServiceImpl<UserMapper, UserEntity> implements
String codeId = userRegisterParam.getAccount().getCodeId();
String code = userRegisterParam.getAccount().getCode();
Assert.isTrue(EncryptUtil.checkCode(codeId, code), () -> Exceptions.clierr("验证码错误"));
String phone = userRegisterParam.getAccount().getPhone();
UserAccountEntity one = userAccountService.getOne(Wrappers.<UserAccountEntity>lambdaQuery().eq(UserAccountEntity::getPhone, phone));
if (one != null) {
return SecurityUtil.registrationToken(phone, AuthWay.PHONE);
} else {
AddUserParam addUserParam = BeanUtil.copyProperties(userRegisterParam, AddUserParam.class);
addUserParam.setAccount(BeanUtil.copyProperties(userRegisterParam.getAccount(), AddUserAccountParam.class));
this.add(addUserParam);
return SecurityUtil.registrationToken(phone, AuthWay.PHONE);
}
}
AddUserParam addUserParam = BeanUtil.copyProperties(userRegisterParam, AddUserParam.class);
addUserParam.setAccount(BeanUtil.copyProperties(userRegisterParam.getAccount(), AddUserAccountParam.class));
Long userId = this.add(addUserParam);
if (bizObj == BizObj.GeRen) {
return SecurityUtil.registrationToken(userRegisterParam.getAccount().getPhone(), AuthWay.PHONE);
}
UserRegisterParam.Company company = userRegisterParam.getCompany();
Assert.notNull(company, "公司信息不能为空");

View File

@ -3,6 +3,9 @@ spring:
url: jdbc:mysql://47.115.226.143:3306/njzscloud?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai&nullCatalogMeansCurrent=true&allowPublicKeyRetrieval=true&allowMultiQueries=true
username: root
password: zsy2022
# url: jdbc:mysql://localhost:33061/njzscloud?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai&nullCatalogMeansCurrent=true&allowPublicKeyRetrieval=true&allowMultiQueries=true
# username: root
# password: admin888999
security:
auth-ignores:
- /auth/obtain_code
@ -11,13 +14,19 @@ spring:
- /district/tree
- /sys_sn_config/add
- /test/**
- /device_info/report1
- /device_info/report2
app:
default-place:
province: 340000
city: 341100
province-name: 安徽省
city-name: 滁州市
province: 320000
city: 320100
province-name: 江苏省
city-name: 南京市
# province: 340000
# city: 341100
# province-name: 安徽省
# city-name: 滁州市
oss:
type: ali
@ -31,3 +40,6 @@ oss:
mybatis-plus:
tunnel:
enable: false
AppID: wx3c06d9dd4e56c58d
AppSecret: ff280a71a4c06fc2956178f8c472ef96

View File

@ -5,17 +5,15 @@
<update id="modify">
update biz_audit_config
<set>
<if test="cityRole != null">city_role = #{cityRole},</if>
<if test="areaRole != null">area_role = #{areaRole},</if>
<if test="city_role == ''">city_role = null,</if>
<if test="areaRole == ''">area_role = null,</if>
city_role = #{cityRole},
area_role = #{areaRole}
</set>
where id = #{id}
</update>
<select id="paging" resultType="com.njzscloud.supervisory.biz.pojo.result.SearchAuditConfigResult">
SELECT a.*,
b.role_name,
c.role_name
b.role_name city_role_name,
c.role_name area_role_name
FROM biz_audit_config a
LEFT JOIN sys_role b ON b.role_code = a.city_role
LEFT JOIN sys_role c ON c.role_code = a.area_role
@ -23,4 +21,9 @@
${ew.customSqlSegment}
</if>
</select>
<select id="getAreaName" resultType="java.lang.String">
SELECT district_name
FROM sys_district
WHERE id = #{area}
</select>
</mapper>

View File

@ -2,7 +2,11 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njzscloud.supervisory.biz.mapper.BizTruckMapper">
<select id="paging" resultType="com.njzscloud.supervisory.biz.pojo.result.SearchTruckResult">
<resultMap id="SearchTruckResultMap" autoMapping="true" type="com.njzscloud.supervisory.biz.pojo.result.SearchTruckResult">
<result property="truckLicenseDate" column="truck_license_date" typeHandler="com.njzscloud.common.mp.support.handler.j.JsonTypeHandler"/>
<result property="qualificationDate" column="qualification_date" typeHandler="com.njzscloud.common.mp.support.handler.j.JsonTypeHandler"/>
</resultMap>
<select id="paging" resultMap="SearchTruckResultMap">
SELECT
a.id,
a.company_id,
@ -19,6 +23,8 @@
a.modifier_id,
a.create_time,
a.modify_time,
a.truck_license_date,
a.qualification_date,
a.deleted
FROM biz_truck a
INNER JOIN biz_company b ON b.id = a.company_id AND b.deleted = 0

View File

@ -0,0 +1,66 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.njzscloud.supervisory.customer.mapper.CustomerMapper">
<resultMap id="SearchCompanyResultMap" autoMapping="true" type="com.njzscloud.supervisory.customer.pojo.result.SearchCompanyResult">
<result column="contacts_phone" property="phone"/>
<result column="company_id" property="id"/>
<result column="audit_status" property="auditStatus" typeHandler="com.njzscloud.common.mp.support.handler.e.EnumTypeHandlerDealer"/>
</resultMap>
<resultMap id="SearchCustomerResultMap" autoMapping="true" type="com.njzscloud.supervisory.customer.pojo.result.SearchCustomerResult">
<result column="biz_obj" property="bizObj" typeHandler="com.njzscloud.common.mp.support.handler.e.EnumTypeHandlerDealer"/>
<result column="gender" property="gender" typeHandler="com.njzscloud.common.mp.support.handler.e.EnumTypeHandlerDealer"/>
<association property="company" resultMap="SearchCompanyResultMap"/>
</resultMap>
<select id="paging" resultMap="SearchCustomerResultMap">
SELECT a.id,
IF(c.contacts IS NOT NULL, c.contacts, IF(d.driver_name IS NOT NULL, d.driver_name, a.nickname)) customer_name,
IF(c.phone IS NOT NULL, c.phone, IF(d.phone IS NOT NULL, d.phone, a.phone)) customer_phone,
a.avatar,
a.gender,
a.email,
a.biz_obj,
b.regdate,
c.id company_id,
c.uscc,
c.company_name,
c.business_license,
c.license_start_time,
c.license_end_time,
c.legal_representative,
c.province,
c.city,
c.area,
c.town,
c.province_name,
c.city_name,
c.area_name,
c.town_name,
c.address,
c.lng,
c.lat,
c.contacts,
c.phone contacts_phone,
c.audit_status,
c.audit_memo
FROM sys_user a
INNER JOIN sys_user_account b ON b.user_id = a.id AND b.deleted = 0
LEFT JOIN biz_company c ON c.user_id = a.id AND c.station = 0 AND c.deleted = 0
LEFT JOIN biz_driver d ON d.user_id = a.id AND d.deleted = 0
<if test="ew.customSqlSegment != null and ew.customSqlSegment != ''">
${ew.customSqlSegment}
</if>
</select>
<select id="shortBargeInfo"
resultType="com.njzscloud.supervisory.customer.pojo.result.ShortBargeInfoResult">
SELECT a.user_id,
IF(COUNT(1) > 0, 1, 0) short_barge
FROM sys_user_role a
INNER JOIN sys_role b ON b.id = a.role_id AND b.role_code = 'ROLE_SHORT_BARGE' AND b.deleted = 0
<if test="ew.customSqlSegment != null and ew.customSqlSegment != ''">
${ew.customSqlSegment}
</if>
</select>
</mapper>

View File

@ -105,7 +105,8 @@
h.phone,
j.company_name,
k.nickname checker_name,
l.project_name
l.project_name,
m.company_name station_name
FROM order_info a
LEFT JOIN order_cargo_place b ON b.id = a.cargo_place_id
LEFT JOIN order_goods c ON c.id = a.goods_id
@ -118,6 +119,7 @@
LEFT JOIN biz_company j ON j.user_id = a.user_id
LEFT JOIN sys_user k ON k.id = a.checker_id
LEFT JOIN biz_project l ON l.id = a.project_id
LEFT JOIN biz_company m ON m.id = a.station_id AND m.station = 1
</sql>
<resultMap id="OrderPagingResultMap" autoMapping="true" type="com.njzscloud.supervisory.order.pojo.result.OrderPagingResult">

View File

@ -4,7 +4,7 @@
"avatar": "data:image/png;base64,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",
"version": "4.9.4",
"createdTime": "2023-4-13 11:53:52",
"updatedTime": "2025-9-16 15:32:56",
"updatedTime": "2025-9-18 16:51:03",
"dbConns": [],
"profile": {
"default": {
@ -9522,6 +9522,23 @@
"id": "BDEB2A86-88EF-4451-8D6D-E8C26FA0A905",
"baseType": "9B6B9E10-DB11-4409-878B-5868A19CD9B0"
},
{
"defKey": "goods_category_id",
"defName": "产品类型Id",
"comment": "",
"type": "BIGINT",
"len": "",
"scale": "",
"primaryKey": false,
"notNull": true,
"autoIncrement": false,
"defaultValue": "",
"hideInGraph": false,
"refDict": "",
"baseType": "9B6B9E10-DB11-4409-878B-5868A19CD9B0",
"extProps": {},
"id": "90332F5D-F68F-4A18-A053-D0C571134930"
},
{
"defKey": "goods_name",
"defName": "产品名称",
@ -10538,6 +10555,40 @@
"extProps": {},
"id": "29E07EDF-8ACA-4D31-8175-C4EDE6F46147"
},
{
"defKey": "expect_time",
"defName": "期望运输时间",
"comment": "",
"type": "VARCHAR",
"len": 255,
"scale": "",
"primaryKey": false,
"notNull": true,
"autoIncrement": false,
"defaultValue": "''",
"hideInGraph": false,
"refDict": "",
"baseType": "AA07828C-4FCB-4EDA-9B51-53A3F264F231",
"extProps": {},
"id": "2B0F8437-62CD-41F5-8465-77010DC1BF1B"
},
{
"defKey": "estimated_quantity",
"defName": "预估量",
"comment": "",
"type": "VARCHAR",
"len": 20,
"scale": "",
"primaryKey": false,
"notNull": true,
"autoIncrement": false,
"defaultValue": "''",
"hideInGraph": false,
"refDict": "",
"baseType": "AA07828C-4FCB-4EDA-9B51-53A3F264F231",
"extProps": {},
"id": "CC96C264-9E59-4443-AE8D-8C365DBD8590"
},
{
"defKey": "creator_id",
"defName": "创建人 Id",
@ -15157,6 +15208,40 @@
"extProps": {},
"id": "FA9EAD94-049E-4BF0-8C07-C8A648ED5F0A"
},
{
"defKey": "truck_license_date",
"defName": "行驶证有效期",
"comment": "",
"type": "VARCHAR",
"len": 512,
"scale": "",
"primaryKey": false,
"notNull": true,
"autoIncrement": false,
"defaultValue": "'[]'",
"hideInGraph": false,
"refDict": "",
"baseType": "AA07828C-4FCB-4EDA-9B51-53A3F264F231",
"extProps": {},
"id": "44B62491-42F4-477D-ADF6-604A04A0AC8E"
},
{
"defKey": "qualification_date",
"defName": "合格证有效期",
"comment": "",
"type": "VARCHAR",
"len": 512,
"scale": "",
"primaryKey": false,
"notNull": true,
"autoIncrement": false,
"defaultValue": "'[]'",
"hideInGraph": false,
"refDict": "",
"baseType": "AA07828C-4FCB-4EDA-9B51-53A3F264F231",
"extProps": {},
"id": "AD7A2BD5-F5DF-4EC9-A167-A1CF67189F02"
},
{
"defKey": "creator_id",
"defName": "创建人 Id",