diff --git a/mhd-api/mhd-api-system/src/main/java/com/mhd/system/api/model/LoginUser.java b/mhd-api/mhd-api-system/src/main/java/com/mhd/system/api/model/LoginUser.java
index 76a537dc4..3afe4170e 100644
--- a/mhd-api/mhd-api-system/src/main/java/com/mhd/system/api/model/LoginUser.java
+++ b/mhd-api/mhd-api-system/src/main/java/com/mhd/system/api/model/LoginUser.java
@@ -38,6 +38,10 @@ public class LoginUser implements Serializable
* 用户名
*/
private String username;
+ /**
+ * 用户名
+ */
+ private String realname;
/**
* 登录时间
diff --git a/mhd-common/mhd-common-core/pom.xml b/mhd-common/mhd-common-core/pom.xml
index c023cacc6..0ac4933ce 100644
--- a/mhd-common/mhd-common-core/pom.xml
+++ b/mhd-common/mhd-common-core/pom.xml
@@ -156,7 +156,7 @@
org.projectlombok
lombok
- 1.18.4
+ 1.18.22
diff --git a/mhd-common/mhd-common-core/src/main/java/com/mhd/common/core/domain/entity/TmsOrder.java b/mhd-common/mhd-common-core/src/main/java/com/mhd/common/core/domain/entity/TmsOrder.java
index c8bcfc4e1..a9f7009b7 100644
--- a/mhd-common/mhd-common-core/src/main/java/com/mhd/common/core/domain/entity/TmsOrder.java
+++ b/mhd-common/mhd-common-core/src/main/java/com/mhd/common/core/domain/entity/TmsOrder.java
@@ -522,4 +522,22 @@ public class TmsOrder implements Serializable {
@ApiModelProperty(value = "付款方名称")
private String payer;
+
+ @ApiModelProperty("客户编码nc")
+ private String customsCodeNc;
+
+ @ApiModelProperty("制单人编码nc")
+ private String makerCodeNc;
+
+ @ApiModelProperty("业务员编码nc")
+ private String salesmanCodeNc;
+
+ @ApiModelProperty("税率")
+ private BigDecimal taxRate;
+
+ @ApiModelProperty("结算币种")
+ private String settlementCurrency;
+
+ @ApiModelProperty("合同编号")
+ private String contractNo;
}
diff --git a/mhd-common/mhd-common-core/src/main/java/com/mhd/common/core/domain/po/UserDriverListPo.java b/mhd-common/mhd-common-core/src/main/java/com/mhd/common/core/domain/po/UserDriverListPo.java
index b741fabcc..81bcbabf3 100644
--- a/mhd-common/mhd-common-core/src/main/java/com/mhd/common/core/domain/po/UserDriverListPo.java
+++ b/mhd-common/mhd-common-core/src/main/java/com/mhd/common/core/domain/po/UserDriverListPo.java
@@ -301,4 +301,13 @@ public class UserDriverListPo {
@ApiModelProperty(value = "是否允许竞价(0-不允许竞价,1-允许参与竞价,2-允许查看竞价)")
private Integer isDriverBidding;
+ @ApiModelProperty(value = "用户身份")
+ private Integer userIdentity;
+
+ @ApiModelProperty(name = "车辆主体")
+ private String vehicleBody;
+
+ @ApiModelProperty(name = "")
+ private String wlhydriverId;
+
}
diff --git a/mhd-common/mhd-common-core/src/main/java/com/mhd/common/core/domain/po/UserDriverPo.java b/mhd-common/mhd-common-core/src/main/java/com/mhd/common/core/domain/po/UserDriverPo.java
index 09589eee6..5027edf44 100644
--- a/mhd-common/mhd-common-core/src/main/java/com/mhd/common/core/domain/po/UserDriverPo.java
+++ b/mhd-common/mhd-common-core/src/main/java/com/mhd/common/core/domain/po/UserDriverPo.java
@@ -185,6 +185,9 @@ public class UserDriverPo {
@ApiModelProperty(name = "用户实名认证状态:0-无状态,1-已注册未认证,2-已认证待审核,3-审核通过,4-已驳回")
private Integer userAuthStatus;
+ @ApiModelProperty(name = "车辆主体")
+ private String vehicleBody;
+
//===================车队司机参数===============
@ApiModelProperty("车队队长userId")
diff --git a/mhd-common/mhd-common-core/src/main/java/minio/MinIoUploadService.java b/mhd-common/mhd-common-core/src/main/java/minio/MinIoUploadService.java
index 9b70c9463..b7b289f68 100644
--- a/mhd-common/mhd-common-core/src/main/java/minio/MinIoUploadService.java
+++ b/mhd-common/mhd-common-core/src/main/java/minio/MinIoUploadService.java
@@ -15,10 +15,12 @@ import java.util.Calendar;
import java.util.Date;
import java.util.List;
import java.util.UUID;
+
@Service
public class MinIoUploadService {
- @Autowired(required=false)
+
private MinioClient minioClient;
+
private static String bucket="ngwl";
private static String host="http://10.102.192.5:6000";
private static String accessKey="minioadmin";
@@ -32,7 +34,7 @@ public class MinIoUploadService {
/**
* 上传到minio
- * @param
+ * @param fileName
* @throws Exception
*/
@@ -65,7 +67,7 @@ public class MinIoUploadService {
.stream(inputStream,inputStream.available(),-1).build();
//文件名称相同会覆盖
minioClient.putObject(objectArgs);
- String url =host+ "/"+bucket + "/"+fileName;
+ String url =host+"/browser/"+bucket + "/"+fileName;
//
return url;
diff --git a/mhd-common/mhd-common-security/src/main/java/com/mhd/common/security/service/TokenService.java b/mhd-common/mhd-common-security/src/main/java/com/mhd/common/security/service/TokenService.java
index a44a77d9d..a6e76396a 100644
--- a/mhd-common/mhd-common-security/src/main/java/com/mhd/common/security/service/TokenService.java
+++ b/mhd-common/mhd-common-security/src/main/java/com/mhd/common/security/service/TokenService.java
@@ -129,6 +129,7 @@ public class TokenService
if (StringUtils.isNotEmpty(token))
{
String userkey = JwtUtils.getUserKey(token);
+ redisService.deleteObject(userkey);
redisService.deleteObject(getTokenKey(userkey));
}
}
diff --git a/mhd-user-center/src/main/java/com/mhd/user/application/service/UserApplicationService.java b/mhd-user-center/src/main/java/com/mhd/user/application/service/UserApplicationService.java
index 2e0896d5d..0ccf7cd51 100644
--- a/mhd-user-center/src/main/java/com/mhd/user/application/service/UserApplicationService.java
+++ b/mhd-user-center/src/main/java/com/mhd/user/application/service/UserApplicationService.java
@@ -2042,6 +2042,7 @@ public class UserApplicationService {
VehiclePo vehiclePo = new VehiclePo();
sysUser.setUserid(userPo.getUserId());
sysUser.setUsername(userPo.getUserAccount());
+ sysUser.setRealname(userPo.getUserName());
UserDriverPo userDriverPo = userDriverDomainService.selectByUserId(userPo.getUserId());
if (ObjectUtil.isNull(userDriverPo)) {
userDriverPo = new UserDriverPo();
diff --git a/mhd-user-center/src/main/java/com/mhd/user/application/service/UserDriverApplicationService.java b/mhd-user-center/src/main/java/com/mhd/user/application/service/UserDriverApplicationService.java
index 705d88ea8..7300c47c1 100644
--- a/mhd-user-center/src/main/java/com/mhd/user/application/service/UserDriverApplicationService.java
+++ b/mhd-user-center/src/main/java/com/mhd/user/application/service/UserDriverApplicationService.java
@@ -2052,6 +2052,42 @@ public class UserDriverApplicationService {
return mapList;
}
+ public List
-
- io.minio
- minio
- 8.4.3
-
-
- com.squareup.okhttp3
- okhttp
- 4.8.1
- compile
-
diff --git a/mhd_transport/src/main/java/com/linke/transport/application/service/vehicle/VehicleApplicationService.java b/mhd_transport/src/main/java/com/linke/transport/application/service/vehicle/VehicleApplicationService.java
index 6f0c0f1ae..934ed4034 100644
--- a/mhd_transport/src/main/java/com/linke/transport/application/service/vehicle/VehicleApplicationService.java
+++ b/mhd_transport/src/main/java/com/linke/transport/application/service/vehicle/VehicleApplicationService.java
@@ -405,9 +405,7 @@ public class VehicleApplicationService {
throw new ServiceException("车牌号不能为空");
}
- if (! Pattern.matches(Constants.LICENSE_PLATE_REGEX, vehicleLicensePlateNumber)) {
- throw new ServiceException("车牌号格式不正确");
- }
+ // Removed license plate regex validation as per requirement
VehicleDto query = new VehicleDto();
query.setVehicleLicensePlateNumber(vehicle.getVehicleLicensePlateNumber());
@@ -680,9 +678,7 @@ public class VehicleApplicationService {
if (StrUtil.isEmpty(vehicleLicensePlateNumber)) {
throw new ServiceException("车牌号不能为空");
}
- if (! Pattern.matches(Constants.LICENSE_PLATE_REGEX, vehicleLicensePlateNumber)) {
- throw new ServiceException("车牌号格式不正确");
- }
+ // Removed license plate regex validation as per requirement
VehicleDto query = new VehicleDto();
query.setVehicleLicensePlateNumber(vehicle.getVehicleLicensePlateNumber());
@@ -2920,4 +2916,41 @@ public class VehicleApplicationService {
public void addVehicle(VehicleDto vehicleDto) {
}
+
+ /**
+ *
+ * @param vehicleDto
+ * @return
+ */
+ public Integer updatePilotDriver(VehicleDto vehicleDto) {
+ if (vehicleDto.getVehicleId() == null) {
+ throw new IllegalArgumentException("车辆ID不能为空");
+ }
+
+ boolean hasPilot1 = StringUtils.hasText(vehicleDto.getPilot1());
+ boolean hasPilot2 = StringUtils.hasText(vehicleDto.getPilot2());
+
+ // 两个都传了
+ if (hasPilot1 && hasPilot2) {
+ throw new IllegalArgumentException("不可同时传入");
+ }
+ // 两个都没传
+ if (!hasPilot1 && !hasPilot2) {
+ throw new IllegalArgumentException("请选择副驾");
+ }
+ UserDriverDTO userDriverDTO = new UserDriverDTO();
+ //将pilot1或是pilot2的id传给userDriverDTO,判断一下谁有值传谁
+ userDriverDTO.setUserId(Long.valueOf(hasPilot1 ? vehicleDto.getPilot1Id() : vehicleDto.getPilot2Id()));
+ userDriverDTO.setVehicleId(vehicleDto.getVehicleId());
+
+ // 更新
+ vehicleMapper.updatePilotDriver(vehicleDto);
+
+
+
+ userServiceFeign.bindVehicle(userDriverDTO);
+
+ return 1;
+
+ }
}
diff --git a/mhd_transport/src/main/java/com/linke/transport/application/service/warehouse/inBoundOrder/InboundOrderService.java b/mhd_transport/src/main/java/com/linke/transport/application/service/warehouse/inBoundOrder/InboundOrderService.java
index 727d49692..957360478 100644
--- a/mhd_transport/src/main/java/com/linke/transport/application/service/warehouse/inBoundOrder/InboundOrderService.java
+++ b/mhd_transport/src/main/java/com/linke/transport/application/service/warehouse/inBoundOrder/InboundOrderService.java
@@ -104,11 +104,11 @@ public class InboundOrderService extends ServiceImpl
* APP绑定车辆我的车辆列表查询
*/
List driverBindMyCarList(@Param("driverVehicleBindDto") DriverVehicleBindDto driverVehicleBindDto);
+
+ Integer updatePilotDriver(VehicleDto vehicleDto);
}
diff --git a/mhd_transport/src/main/java/com/linke/transport/domain/vehicle/repository/po/VehiclePo.java b/mhd_transport/src/main/java/com/linke/transport/domain/vehicle/repository/po/VehiclePo.java
index 286444a39..43b627ef7 100644
--- a/mhd_transport/src/main/java/com/linke/transport/domain/vehicle/repository/po/VehiclePo.java
+++ b/mhd_transport/src/main/java/com/linke/transport/domain/vehicle/repository/po/VehiclePo.java
@@ -425,4 +425,28 @@ public class VehiclePo extends BaseVOEntity implements Serializable
@DateTimeFormat(pattern="yyyy-MM-dd")
private Date insuranceValidityPeriod;
+
+ @ApiModelProperty(value = "副驾1")
+ private String pilot1;
+
+ @ApiModelProperty(value = "副驾1的Id")
+ private String pilot1Id;
+
+ @ApiModelProperty(value = "副驾2")
+ private String pilot2;
+
+ @ApiModelProperty(value = "副驾2的Id")
+ private String pilot2Id;
+
+ @ApiModelProperty(value = "跨境车牌")
+ private String crossPlate;
+
+ @ApiModelProperty(value = "保险")
+ private String insurance;
+
+ @ApiModelProperty(value = "签证本")
+ private String visa;
+
+ @ApiModelProperty(value = "车辆主体")
+ private Integer vehicleBody;
}
diff --git a/mhd_transport/src/main/java/com/linke/transport/domain/warehouse/material/model/Material.java b/mhd_transport/src/main/java/com/linke/transport/domain/warehouse/material/model/Material.java
index 329986365..08f97c6cb 100644
--- a/mhd_transport/src/main/java/com/linke/transport/domain/warehouse/material/model/Material.java
+++ b/mhd_transport/src/main/java/com/linke/transport/domain/warehouse/material/model/Material.java
@@ -29,8 +29,15 @@ public class Material {
private boolean codeManaged;
private String remark;
private BigDecimal weight;
+ private BigDecimal materialVolume;
+ private String materialContent;
private LocalDateTime createTime;
private LocalDateTime updateTime;
+ /**组织相关*/
+ private String topOrganizationId;
+ /**组织相关*/
+ private String organizationId;
+
// 私有构造方法
private Material(Long ownerId,
@@ -42,7 +49,9 @@ public class Material {
BigDecimal value,
boolean codeManaged,
BigDecimal weight,
- String remark) {
+ BigDecimal materialVolume,
+ String materialContent,
+ String remark,String topOrganizationId,String organizationId ) {
validateRequiredFields( category, name, unit);
this.ownerId = ownerId;
this.shipper = shipper;
@@ -54,8 +63,12 @@ public class Material {
this.codeManaged = codeManaged;
this.remark = remark;
this.weight = weight;
+ this.materialVolume = materialVolume;
+ this.materialContent = materialContent;
this.createTime = LocalDateTime.now();
this.updateTime = LocalDateTime.now();
+ this.topOrganizationId = topOrganizationId;
+ this.organizationId = organizationId;
}
@@ -69,10 +82,13 @@ public class Material {
BigDecimal value,
boolean codeManaged,
BigDecimal weight,
- String remark,
+ BigDecimal materialVolume,
+ String materialContent,
+ String remark,String topOrganizationId,String organizationId,
MaterialCodeGenerator codeGenerator) {
Material material = new Material(ownerId, shipper, category, name, model,
- unit, value, codeManaged, weight,remark
+ unit, value, codeManaged, weight, materialVolume, materialContent, remark,
+ topOrganizationId,organizationId
);
material.materialCode = codeGenerator.generate();
return material;
@@ -86,7 +102,9 @@ public class Material {
BigDecimal value,
boolean codeManaged,
BigDecimal weight,
- String remark) {
+ BigDecimal materialVolume,
+ String materialContent,
+ String remark,String topOrganizationId,String organizationId ) {
this.ownerId = ownerId;
this.shipper = shipper;
this.category = category;
@@ -94,10 +112,14 @@ public class Material {
this.model = model;
this.unit = unit;
this.weight = weight;
+ this.materialVolume = materialVolume;
+ this.materialContent = materialContent;
this.value = validateValue(value);
this.codeManaged = codeManaged;
this.remark = remark;
this.updateTime = LocalDateTime.now();
+ this.topOrganizationId = topOrganizationId;
+ this.organizationId = organizationId;
}
// 保留的核心校验
diff --git a/mhd_transport/src/main/java/com/linke/transport/domain/warehouse/material/repository/MaterialRepository.java b/mhd_transport/src/main/java/com/linke/transport/domain/warehouse/material/repository/MaterialRepository.java
index bb0799a0b..8ab55359d 100644
--- a/mhd_transport/src/main/java/com/linke/transport/domain/warehouse/material/repository/MaterialRepository.java
+++ b/mhd_transport/src/main/java/com/linke/transport/domain/warehouse/material/repository/MaterialRepository.java
@@ -56,7 +56,7 @@ public interface MaterialRepository {
* @param size 每页大小
* @return 分页的物料数据
*/
- IPage search(String shipper, String category, String name,String model,String materialCode,Boolean codeManaged,String remark,
+ IPage search(String shipper, String category, String name,String model,String materialCode,Boolean codeManaged,String remark,String materialContent,
Long current, Long size);
/**
diff --git a/mhd_transport/src/main/java/com/linke/transport/infrastructure/warehouse/material/persistence/MaterialDO.java b/mhd_transport/src/main/java/com/linke/transport/infrastructure/warehouse/material/persistence/MaterialDO.java
index 64f500bac..7662cb0c1 100644
--- a/mhd_transport/src/main/java/com/linke/transport/infrastructure/warehouse/material/persistence/MaterialDO.java
+++ b/mhd_transport/src/main/java/com/linke/transport/infrastructure/warehouse/material/persistence/MaterialDO.java
@@ -9,6 +9,7 @@ import com.baomidou.mybatisplus.annotation.TableName;
import java.math.BigDecimal;
import java.time.LocalDateTime;
+import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@@ -33,4 +34,10 @@ public class MaterialDO {
@TableLogic
@TableField("is_deleted")
private Boolean deleted;
+ private BigDecimal materialVolume;
+ private String materialContent;
+ /**组织相关*/
+ private String topOrganizationId;
+ /**组织相关*/
+ private String organizationId;
}
diff --git a/mhd_transport/src/main/java/com/linke/transport/infrastructure/warehouse/material/repository/MaterialRepositoryImpl.java b/mhd_transport/src/main/java/com/linke/transport/infrastructure/warehouse/material/repository/MaterialRepositoryImpl.java
index eb4053c48..f7a21ece1 100644
--- a/mhd_transport/src/main/java/com/linke/transport/infrastructure/warehouse/material/repository/MaterialRepositoryImpl.java
+++ b/mhd_transport/src/main/java/com/linke/transport/infrastructure/warehouse/material/repository/MaterialRepositoryImpl.java
@@ -58,7 +58,7 @@ public class MaterialRepositoryImpl implements MaterialRepository {
}
@Override
- public IPage search(String shipper, String category, String name, String model,String materialCode,Boolean codeManaged,String remark,
+ public IPage search(String shipper, String category, String name, String model,String materialCode,Boolean codeManaged,String remark,String materialContent,
Long current, Long size) {
LambdaQueryWrapper wrapper = Wrappers.lambdaQuery()
.eq(StringUtils.isNotBlank(shipper), MaterialDO :: getShipper, shipper)
@@ -68,6 +68,7 @@ public class MaterialRepositoryImpl implements MaterialRepository {
.like(StringUtils.isNotBlank(materialCode), MaterialDO :: getMaterialCode, materialCode)
.eq(null!=codeManaged, MaterialDO :: getCodeManaged, codeManaged)
.like(StringUtils.isNotBlank(remark), MaterialDO :: getRemark, remark)
+ .like(StringUtils.isNotBlank(materialContent), MaterialDO :: getMaterialContent, materialContent)
.orderByDesc(MaterialDO :: getCreateTime);
return materialMapper.selectPage(new Page<>(current, size), wrapper)
diff --git a/mhd_transport/src/main/java/com/linke/transport/interfaces/dto/vehicle/VehicleDto.java b/mhd_transport/src/main/java/com/linke/transport/interfaces/dto/vehicle/VehicleDto.java
index 5ffc6b528..fb308686f 100644
--- a/mhd_transport/src/main/java/com/linke/transport/interfaces/dto/vehicle/VehicleDto.java
+++ b/mhd_transport/src/main/java/com/linke/transport/interfaces/dto/vehicle/VehicleDto.java
@@ -413,4 +413,28 @@ public class VehicleDto extends BaseVOEntity implements Serializable
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern="yyyy-MM-dd")
private Date insuranceValidityPeriod;
+
+ @ApiModelProperty(value = "副驾1")
+ private String pilot1;
+
+ @ApiModelProperty(value = "副驾1的Id")
+ private String pilot1Id;
+
+ @ApiModelProperty(value = "副驾2")
+ private String pilot2;
+
+ @ApiModelProperty(value = "副驾2的Id")
+ private String pilot2Id;
+
+ @ApiModelProperty(value = "跨境车牌")
+ private String crossPlate;
+
+ @ApiModelProperty(value = "保险")
+ private String insurance;
+
+ @ApiModelProperty(value = "签证本")
+ private String visa;
+
+ @ApiModelProperty(value = "车辆主体")
+ private Integer vehicleBody;
}
diff --git a/mhd_transport/src/main/java/com/linke/transport/interfaces/facade/vehicle/VehicleApi.java b/mhd_transport/src/main/java/com/linke/transport/interfaces/facade/vehicle/VehicleApi.java
index a78106b4f..47692c3c7 100644
--- a/mhd_transport/src/main/java/com/linke/transport/interfaces/facade/vehicle/VehicleApi.java
+++ b/mhd_transport/src/main/java/com/linke/transport/interfaces/facade/vehicle/VehicleApi.java
@@ -65,6 +65,15 @@ public class VehicleApi extends BaseController
return getDataTable(list);
}
+ /**
+ * 车辆绑定副驾
+ */
+ @Log(title = "车辆管理-车辆绑定副驾", description = "车辆绑定副驾", businessType = BusinessType.UPDATE)
+ @PostMapping("/bindVehicle")
+ public R bindVehicle(@RequestBody VehicleDto vehicleDto){
+ return R.ok(vehicleApplicationService.updatePilotDriver(vehicleDto));
+ }
+
/**
* 查询未绑定车辆列表
*/
diff --git a/mhd_transport/src/main/java/com/linke/transport/interfaces/facadeApi/warehouse/MaterialApi.java b/mhd_transport/src/main/java/com/linke/transport/interfaces/facadeApi/warehouse/MaterialApi.java
index fd1ccf5ab..d629c421a 100644
--- a/mhd_transport/src/main/java/com/linke/transport/interfaces/facadeApi/warehouse/MaterialApi.java
+++ b/mhd_transport/src/main/java/com/linke/transport/interfaces/facadeApi/warehouse/MaterialApi.java
@@ -102,4 +102,16 @@ public class MaterialApi {
public R getMaterial(@PathVariable Long id) {
return R.ok(queryService.getMaterialDetail(id));
}
+
+ /**
+ * 获取订单选择货物详情(包含体积和物料内容)
+ *
+ * @param id 物料ID
+ * @return 物料详情,包含体积和物料内容字段
+ */
+ @GetMapping("/forOrderSelection")
+ @Log(title = "物料管理(PC)", description = "TMS-订单选择货物详情", businessType = BusinessType.OTHER)
+ public R getMaterialsForOrderSelection(@RequestParam(name = "id") Long id) {
+ return R.ok(queryService.getMaterialDetail(id));
+ }
}
diff --git a/mhd_transport/src/main/resources/mapper/vehicle/VehicleMapper.xml b/mhd_transport/src/main/resources/mapper/vehicle/VehicleMapper.xml
index f028755ee..efba73931 100644
--- a/mhd_transport/src/main/resources/mapper/vehicle/VehicleMapper.xml
+++ b/mhd_transport/src/main/resources/mapper/vehicle/VehicleMapper.xml
@@ -113,9 +113,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
SELECT
- *
+ *
FROM
vehicle
+