haungfuli 2 년 전
부모
커밋
534f91664d
22개의 변경된 파일604개의 추가작업 그리고 16개의 파일을 삭제
  1. 6 0
      winsea-haixin-plugin-wangluohuoyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/constant/StatusEnum.java
  2. 1 1
      winsea-haixin-plugin-wangluohuoyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/controller/DriverInfoController.java
  3. 65 0
      winsea-haixin-plugin-wangluohuoyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/controller/HyBindCarCaptainInfoController.java
  4. 50 2
      winsea-haixin-plugin-wangluohuoyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/controller/HyCarCaptainInfoController.java
  5. 6 0
      winsea-haixin-plugin-wangluohuoyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/entity/HyBindCarCaptainInfo.java
  6. 19 0
      winsea-haixin-plugin-wangluohuoyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/entity/HyCarCaptainInfo.java
  7. 4 0
      winsea-haixin-plugin-wangluohuoyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/entity/HyCarrierInfo.java
  8. 4 0
      winsea-haixin-plugin-wangluohuoyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/entity/HyFreightSettlementInfo.java
  9. 13 4
      winsea-haixin-plugin-wangluohuoyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/entity/OrderInfo.java
  10. 1 1
      winsea-haixin-plugin-wangluohuoyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/entity/VehicleTrajectoryInfo.java
  11. 2 0
      winsea-haixin-plugin-wangluohuoyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/exception/YExceptionEnum.java
  12. 19 0
      winsea-haixin-plugin-wangluohuoyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/mapper/HyBindCarCaptainInfoMapper.java
  13. 43 0
      winsea-haixin-plugin-wangluohuoyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/IHyBindCarCaptainInfoService.java
  14. 28 0
      winsea-haixin-plugin-wangluohuoyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/IHyCarCaptainInfoService.java
  15. 7 0
      winsea-haixin-plugin-wangluohuoyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/impl/DriverInfoServiceImpl.java
  16. 149 0
      winsea-haixin-plugin-wangluohuoyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/impl/HyBindCarCaptainInfoServiceImpl.java
  17. 117 0
      winsea-haixin-plugin-wangluohuoyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/impl/HyCarCaptainInfoServiceImpl.java
  18. 4 4
      winsea-haixin-plugin-wangluohuoyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/impl/HyFreightSettlementInfoServiceImpl.java
  19. 9 2
      winsea-haixin-plugin-wangluohuoyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/impl/OrderInfoServiceImpl.java
  20. 24 2
      winsea-haixin-plugin-wangluohuoyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/impl/PublishTaskInfoServiceImpl.java
  21. 32 0
      winsea-haixin-plugin-wangluohuoyun/src/main/resources/mapper/HyBindCarCaptainInfoMapper.xml
  22. 1 0
      winsea-haixin-plugin-wangluohuoyun/src/main/resources/mapper/HyFreightSettlementInfoMapper.xml

+ 6 - 0
winsea-haixin-plugin-wangluohuoyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/constant/StatusEnum.java

@@ -144,6 +144,12 @@ public enum StatusEnum {
     REPORTED_FAIL("3", "未通过", "reported_fail"),
     REPORTED_SUCESS("5", "已通过", "reported_sucess"),
 
+    //绑定车队长状态
+    CONFIRMED_BIND("1", "待确认", "confirmed_bind"),
+    REFUSE_BIND("3", "已拒绝", "refuse_bind"),
+    ALREADY_BIND("5", "已绑定", "already_bind"),
+    ALREADY_UNBIND("7", "已解绑", "already_unbind"),
+
     ;
     @Getter
     private String flag;

+ 1 - 1
winsea-haixin-plugin-wangluohuoyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/controller/DriverInfoController.java

@@ -84,7 +84,7 @@ public class DriverInfoController {
      * @param
      * @return
      */
-    @Log(title = "审核车辆信息")
+    @Log(title = "审核司机信息")
     @PostMapping("/api/examine")
     public String examine(@RequestBody HyDriverInfo hyDriverInfo) throws IOException{
         return driverInfoService.examine(hyDriverInfo);

+ 65 - 0
winsea-haixin-plugin-wangluohuoyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/controller/HyBindCarCaptainInfoController.java

@@ -1,6 +1,15 @@
 package com.yh.saas.plugin.yiliangyiyun.controller;
 
 
+import com.baomidou.mybatisplus.plugins.Page;
+import com.yh.saas.plugin.yiliangyiyun.entity.HyBindCarCaptainInfo;
+import com.yh.saas.plugin.yiliangyiyun.entity.HyCarCaptainInfo;
+import com.yh.saas.plugin.yiliangyiyun.service.IHyBindCarCaptainInfoService;
+
+import com.yh.saas.plugin.yiliangyiyun.util.Log;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 
 import org.springframework.web.bind.annotation.RestController;
@@ -17,5 +26,61 @@ import org.springframework.web.bind.annotation.RestController;
 @RequestMapping("/hyBindCarCaptainInfo")
 public class HyBindCarCaptainInfoController {
 
+    @Autowired
+    private IHyBindCarCaptainInfoService hyBindCarCaptainInfoService;
+
+    /**
+     * 绑定车队长
+     */
+    @Log(title = "绑定车队长")
+    @PostMapping("/api/binding")
+    public String binding(@RequestBody HyBindCarCaptainInfo hyBindCarCaptainInfo){
+        return hyBindCarCaptainInfoService.binding(hyBindCarCaptainInfo);
+    }
+
+    /**
+     * 解绑车队长
+     */
+    @Log(title = "解绑车队长")
+    @PostMapping("/api/unbinding")
+    public String unbinding(@RequestBody HyBindCarCaptainInfo hyBindCarCaptainInfo){
+        return hyBindCarCaptainInfoService.unbinding(hyBindCarCaptainInfo);
+    }
+
+    /**
+     * 车队长审核
+     */
+    @Log(title = "车队长审核")
+    @PostMapping("/api/examine")
+    public String examine(@RequestBody HyBindCarCaptainInfo hyBindCarCaptainInfo){
+        return hyBindCarCaptainInfoService.examine(hyBindCarCaptainInfo);
+    }
+
+    /**
+     * 车队长删除绑定
+     */
+    @Log(title = "车队长删除绑定")
+    @PostMapping("/api/deleteBind")
+    public void deleteBind(@RequestBody HyBindCarCaptainInfo hyBindCarCaptainInfo){
+        hyBindCarCaptainInfoService.deleteBind(hyBindCarCaptainInfo);
+    }
+
+    /**
+     * 绑定车队长查看页面
+     */
+    @Log(title = "绑定车队长查看页面")
+    @PostMapping("/api/getBindCarCaptain")
+    public HyBindCarCaptainInfo getBindCarCaptain(@RequestBody HyBindCarCaptainInfo hyBindCarCaptainInfo){
+        return hyBindCarCaptainInfoService.getBindCarCaptain(hyBindCarCaptainInfo);
+    }
+
+    /**
+     * 车队管理绑定司机列表
+     */
+    @Log(title = "车队管理绑定司机列表")
+    @PostMapping("/api/selectPage")
+    public Page<HyBindCarCaptainInfo> selectPage(@RequestBody HyBindCarCaptainInfo hyBindCarCaptainInfo){
+        return hyBindCarCaptainInfoService.selectPage(hyBindCarCaptainInfo);
+    }
 }
 

+ 50 - 2
winsea-haixin-plugin-wangluohuoyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/controller/HyCarCaptainInfoController.java

@@ -1,9 +1,15 @@
 package com.yh.saas.plugin.yiliangyiyun.controller;
 
 
-import org.springframework.web.bind.annotation.RequestMapping;
+import com.yh.saas.plugin.yiliangyiyun.entity.HyCarCaptainInfo;
+import com.yh.saas.plugin.yiliangyiyun.entity.HyDriverInfo;
+import com.yh.saas.plugin.yiliangyiyun.service.IHyCarCaptainInfoService;
+import com.yh.saas.plugin.yiliangyiyun.util.Log;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
 
-import org.springframework.web.bind.annotation.RestController;
+import java.io.IOException;
+import java.text.ParseException;
 
 /**
  * <p>
@@ -17,5 +23,47 @@ import org.springframework.web.bind.annotation.RestController;
 @RequestMapping("/hyCarCaptainInfo")
 public class HyCarCaptainInfoController {
 
+    @Autowired
+    private IHyCarCaptainInfoService hyCarCaptainInfoService;
+
+    /**
+     * 添加信息
+     */
+    @Log(title = "添加车队长信息")
+    @PostMapping("/api/addCarCaptain")
+    public String addCarCaptain(@RequestBody HyCarCaptainInfo hyCarCaptainInfo){
+        return hyCarCaptainInfoService.addCarCaptain(hyCarCaptainInfo);
+    }
+
+    /**
+     * 编辑信息
+     */
+    @Log(title = "编辑车队长信息")
+    @PostMapping("/api/editCarCaptain")
+    public String editCarCaptain(@RequestBody HyCarCaptainInfo hyCarCaptainInfo){
+        return hyCarCaptainInfoService.editCarCaptain(hyCarCaptainInfo);
+    }
+
+    /**
+     * 审核
+     * @param
+     * @return
+     */
+    @Log(title = "审核车队长信息")
+    @PostMapping("/api/examine")
+    public String examine(@RequestBody HyCarCaptainInfo hyCarCaptainInfo){
+        return hyCarCaptainInfoService.examine(hyCarCaptainInfo);
+    }
+
+    /**
+     * 查看车队长信息
+     * @param hyCarCaptainInfo
+     * @return
+     */
+    @Log(title = "查看车队长信息")
+    @GetMapping("/getCarCaptain")
+    HyCarCaptainInfo getCarCaptain(HyCarCaptainInfo hyCarCaptainInfo){
+        return hyCarCaptainInfoService.getCarCaptain(hyCarCaptainInfo);
+    }
 }
 

+ 6 - 0
winsea-haixin-plugin-wangluohuoyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/entity/HyBindCarCaptainInfo.java

@@ -2,6 +2,7 @@ package com.yh.saas.plugin.yiliangyiyun.entity;
 
 import java.io.Serializable;
 
+import com.baomidou.mybatisplus.annotations.TableField;
 import com.baomidou.mybatisplus.annotations.TableId;
 import com.baomidou.mybatisplus.annotations.TableName;
 
@@ -65,6 +66,11 @@ public class HyBindCarCaptainInfo extends BaseModel<HyBindCarCaptainInfo> {
      */
     private String status;
 
+    /**
+     * 审核标识(1接受2拒绝)
+     */
+    @TableField(exist = false)
+    private String examineFlag;
 
     @Override
     protected Serializable pkVal() {

+ 19 - 0
winsea-haixin-plugin-wangluohuoyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/entity/HyCarCaptainInfo.java

@@ -3,6 +3,7 @@ package com.yh.saas.plugin.yiliangyiyun.entity;
 import java.util.Date;
 import java.io.Serializable;
 
+import com.baomidou.mybatisplus.annotations.TableField;
 import com.baomidou.mybatisplus.annotations.TableId;
 import com.baomidou.mybatisplus.annotations.TableName;
 
@@ -86,6 +87,18 @@ public class HyCarCaptainInfo extends BaseModel<HyCarCaptainInfo> {
      * 收款人姓名
      */
     private String payeeName;
+    /**
+     * 道路运输经营许可证
+     */
+    private String roadTransportOperationLicense;
+    /**
+     * 道路运输经营许可证编号
+     */
+    private String roadTransportOperationLicenseNo;
+    /**
+     * 道路运输经营许可证有效期
+     */
+    private Date roadTransportOperationLicenseValidityDate;
     /**
      * 状态key(1审核中3已驳回5已认证)
      */
@@ -95,6 +108,12 @@ public class HyCarCaptainInfo extends BaseModel<HyCarCaptainInfo> {
      */
     private String status;
 
+    /**
+     * 审核标识(1通过2驳回)
+     */
+    @TableField(exist = false)
+    private String examineFlag;
+
 
     @Override
     protected Serializable pkVal() {

+ 4 - 0
winsea-haixin-plugin-wangluohuoyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/entity/HyCarrierInfo.java

@@ -67,6 +67,10 @@ public class HyCarrierInfo extends BaseModel<HyCarrierInfo> {
      * 装车净重(吨)
      */
     private Double loadingWeight;
+    /**
+     * 卸车净重(吨)
+     */
+    private Double unloadingWeight;
     /**
      * 装车时间
      */

+ 4 - 0
winsea-haixin-plugin-wangluohuoyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/entity/HyFreightSettlementInfo.java

@@ -59,6 +59,10 @@ public class HyFreightSettlementInfo extends BaseModel<HyFreightSettlementInfo>
      * 司机姓名
      */
     private String driverName;
+    /**
+     * 收款方姓名
+     */
+    private String payeeName;
     /**
      * 银行卡号码
      */

+ 13 - 4
winsea-haixin-plugin-wangluohuoyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/entity/OrderInfo.java

@@ -223,21 +223,25 @@ public class OrderInfo extends BaseModel<OrderInfo> {
      */
     private String ownerContractUrl;
     /**
-     * 司机银行卡号码
+     * 实际承运人银行卡号码
      */
     private String bankCard;
     /**
-     * 司机开户行
+     * 实际承运人开户行
      */
     private String bankDeposit;
     /**
-     * 司机开户支行
+     * 实际承运人开户支行
      */
     private String bankDepositBranch;
     /**
-     * 收款人姓名
+     * 收款方姓名(车队长姓名)
      */
     private String payeeName;
+    /**
+     * 车队长账号
+     */
+    private String carCaptainAccountNumber;
     /**
      * 司机已评价(1是)
      */
@@ -509,6 +513,11 @@ public class OrderInfo extends BaseModel<OrderInfo> {
      */
     @TableField(exist = false)
     private String weight;
+    /**
+     * 卸车净重(吨)
+     */
+    @TableField(exist = false)
+    private String unloadingWeight;
     /**
      * 装车毛重(吨)
      */

+ 1 - 1
winsea-haixin-plugin-wangluohuoyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/entity/VehicleTrajectoryInfo.java

@@ -62,7 +62,7 @@ public class VehicleTrajectoryInfo extends BaseModel<VehicleTrajectoryInfo> {
     private String area;
 
     /**
-     * 
+     * 车辆轨迹集合
      */
     private List<VehicleTrajectoryInfo> vehicleTrajectoryInfos;
 

+ 2 - 0
winsea-haixin-plugin-wangluohuoyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/exception/YExceptionEnum.java

@@ -54,6 +54,8 @@ public enum YExceptionEnum {
 	PAYEE_CARD_ADD("ERROR31", "请您添加银行卡!"),
 	CAR_FINISH_ADD("ERROR32", "尚未完成车辆认证!"),
 	SHANG_BAO_ERROR("ERROR33", "园区上报信息错误,详情见司机信息上报页面!"),
+	ID_CARD_NOT_EQUALS("ERROR34", "身份证号与司机认证信息不一致!"),
+	WAS_NOT_FOUND_USER("ERROR34", "未找到该用户!"),
 	;
 	@Getter
 	private String value;

+ 19 - 0
winsea-haixin-plugin-wangluohuoyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/mapper/HyBindCarCaptainInfoMapper.java

@@ -2,6 +2,10 @@ package com.yh.saas.plugin.yiliangyiyun.mapper;
 
 import com.yh.saas.plugin.yiliangyiyun.entity.HyBindCarCaptainInfo;
 import com.baomidou.mybatisplus.mapper.BaseMapper;
+import com.yh.saas.plugin.yiliangyiyun.entity.HyCargoOwnerPayeeInfo;
+
+import java.util.List;
+import java.util.Map;
 
 /**
  * <p>
@@ -13,4 +17,19 @@ import com.baomidou.mybatisplus.mapper.BaseMapper;
  */
 public interface HyBindCarCaptainInfoMapper extends BaseMapper<HyBindCarCaptainInfo> {
 
+    /**
+     * 根据条件查询绑定司机总数
+     *
+     * @param pageView
+     * @return
+     */
+    Integer getCountByCondition(Map<String, Object> pageView);
+
+    /**
+     * 根据条件查询绑定司机列表
+     *
+     * @param pageView
+     * @return
+     */
+    List<HyBindCarCaptainInfo> getListByCondition(Map<String, Object> pageView);
 }

+ 43 - 0
winsea-haixin-plugin-wangluohuoyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/IHyBindCarCaptainInfoService.java

@@ -1,8 +1,10 @@
 package com.yh.saas.plugin.yiliangyiyun.service;
 
+import com.baomidou.mybatisplus.plugins.Page;
 import com.yh.saas.plugin.yiliangyiyun.entity.HyBindCarCaptainInfo;
 import com.baomidou.mybatisplus.service.IService;
 
+
 /**
  * <p>
  * 记录绑定车队长信息 服务类
@@ -13,4 +15,45 @@ import com.baomidou.mybatisplus.service.IService;
  */
 public interface IHyBindCarCaptainInfoService extends IService<HyBindCarCaptainInfo> {
 
+    /**
+     * 绑定
+     * @param hyBindCarCaptainInfo
+     * @return
+     */
+    String binding(HyBindCarCaptainInfo hyBindCarCaptainInfo);
+
+    /**
+     * 解绑
+     * @param hyBindCarCaptainInfo
+     * @return
+     */
+    String unbinding(HyBindCarCaptainInfo hyBindCarCaptainInfo);
+
+    /**
+     * 审核
+     * @param hyBindCarCaptainInfo
+     * @return
+     */
+    String examine(HyBindCarCaptainInfo hyBindCarCaptainInfo);
+
+    /**
+     * 车队长删除绑定
+     * @param hyBindCarCaptainInfo
+     * @return
+     */
+    void deleteBind(HyBindCarCaptainInfo hyBindCarCaptainInfo);
+
+    /**
+     * 绑定车队长查看页面
+     * @param hyBindCarCaptainInfo
+     * @return
+     */
+    HyBindCarCaptainInfo getBindCarCaptain(HyBindCarCaptainInfo hyBindCarCaptainInfo);
+
+    /**
+     * 车队管理绑定司机列表
+     * @param hyBindCarCaptainInfo
+     * @return
+     */
+    Page<HyBindCarCaptainInfo> selectPage(HyBindCarCaptainInfo hyBindCarCaptainInfo);
 }

+ 28 - 0
winsea-haixin-plugin-wangluohuoyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/IHyCarCaptainInfoService.java

@@ -2,6 +2,7 @@ package com.yh.saas.plugin.yiliangyiyun.service;
 
 import com.yh.saas.plugin.yiliangyiyun.entity.HyCarCaptainInfo;
 import com.baomidou.mybatisplus.service.IService;
+import com.yh.saas.plugin.yiliangyiyun.entity.HyDriverInfo;
 
 /**
  * <p>
@@ -13,4 +14,31 @@ import com.baomidou.mybatisplus.service.IService;
  */
 public interface IHyCarCaptainInfoService extends IService<HyCarCaptainInfo> {
 
+    /**
+     * 添加车队长信息
+     * @param hyCarCaptainInfo
+     * @return
+     */
+    String addCarCaptain(HyCarCaptainInfo hyCarCaptainInfo);
+
+    /**
+     * 编辑车队长信息
+     * @param hyCarCaptainInfo
+     * @return
+     */
+    String editCarCaptain(HyCarCaptainInfo hyCarCaptainInfo);
+
+    /**
+     * 审核车队长信息
+     * @param hyCarCaptainInfo
+     * @return
+     */
+    String examine(HyCarCaptainInfo hyCarCaptainInfo);
+
+    /**
+     * 查看车队长信息
+     * @param hyCarCaptainInfo
+     * @return
+     */
+    HyCarCaptainInfo getCarCaptain(HyCarCaptainInfo hyCarCaptainInfo);
 }

+ 7 - 0
winsea-haixin-plugin-wangluohuoyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/impl/DriverInfoServiceImpl.java

@@ -192,6 +192,13 @@ public class DriverInfoServiceImpl extends ServiceImpl<DriverInfoMapper, HyDrive
             HyDriverInfo hyDriverInfo1 = new HyDriverInfo();
             hyDriverInfo1.setAuthenticationStatus("未认证");
             return hyDriverInfo1;
+        }else {
+            //查询银行卡信息
+            List<HyDriverPayeeInfo> hyDriverPayeeInfos = driverPayeeInfoService.selectList(new EntityWrapper<HyDriverPayeeInfo>().eq("driver_id", hyDriverInfo.getId())
+                    .eq("delete_flag", "0"));
+            if (!CollectionUtils.isEmpty(hyDriverPayeeInfos)) {
+                hyDriverInfo.setHyDriverPayeeInfoList(hyDriverPayeeInfos);
+            }
         }
         return hyDriverInfo;
     }

+ 149 - 0
winsea-haixin-plugin-wangluohuoyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/impl/HyBindCarCaptainInfoServiceImpl.java

@@ -1,10 +1,28 @@
 package com.yh.saas.plugin.yiliangyiyun.service.impl;
 
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.baomidou.mybatisplus.plugins.Page;
+import com.google.common.collect.Lists;
+import com.yh.saas.common.support.util.IdGenerator;
+import com.yh.saas.plugin.yiliangyiyun.constant.NumberConstant;
+import com.yh.saas.plugin.yiliangyiyun.constant.StatusEnum;
 import com.yh.saas.plugin.yiliangyiyun.entity.HyBindCarCaptainInfo;
+import com.yh.saas.plugin.yiliangyiyun.entity.HyCarCaptainInfo;
+import com.yh.saas.plugin.yiliangyiyun.entity.HyCargoOwnerPayeeInfo;
+import com.yh.saas.plugin.yiliangyiyun.entity.HyDriverInfo;
+import com.yh.saas.plugin.yiliangyiyun.exception.YException;
+import com.yh.saas.plugin.yiliangyiyun.exception.YExceptionEnum;
 import com.yh.saas.plugin.yiliangyiyun.mapper.HyBindCarCaptainInfoMapper;
 import com.yh.saas.plugin.yiliangyiyun.service.IHyBindCarCaptainInfoService;
 import com.baomidou.mybatisplus.service.impl.ServiceImpl;
+import com.yh.saas.plugin.yiliangyiyun.service.IHyCarCaptainInfoService;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
 
 /**
  * <p>
@@ -17,4 +35,135 @@ import org.springframework.stereotype.Service;
 @Service
 public class HyBindCarCaptainInfoServiceImpl extends ServiceImpl<HyBindCarCaptainInfoMapper, HyBindCarCaptainInfo> implements IHyBindCarCaptainInfoService {
 
+    @Autowired
+    private IHyCarCaptainInfoService hyCarCaptainInfoService;
+
+
+    /**
+     * 绑定
+     *
+     * @param
+     * @return
+     */
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public String binding(HyBindCarCaptainInfo hyBindCarCaptainInfo){
+        //新增主键id
+        hyBindCarCaptainInfo.setId(IdGenerator.generateUUID());
+        hyBindCarCaptainInfo.setStatusKey(StatusEnum.CONFIRMED_BIND.getFlag());
+        hyBindCarCaptainInfo.setStatus(StatusEnum.CONFIRMED_BIND.getName());
+        //查询是否有车队长
+        HyCarCaptainInfo hyCarCaptainInfo = hyCarCaptainInfoService.selectOne(new EntityWrapper<HyCarCaptainInfo>()
+                .eq("name", hyBindCarCaptainInfo.getCarCaptainName())
+                .eq("account_number", hyBindCarCaptainInfo.getCarCaptainAccountNumber())
+                .eq("delete_flag", "0"));
+        if (hyCarCaptainInfo != null) {
+            hyBindCarCaptainInfo.setCarCaptainCommonId(hyCarCaptainInfo.getCommonId());
+        }else {
+            throw new YException(YExceptionEnum.WAS_NOT_FOUND_USER);
+        }
+        this.insert(hyBindCarCaptainInfo);
+        return "OK";
+    }
+
+    /**
+     * 解绑
+     */
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public String unbinding(HyBindCarCaptainInfo hyBindCarCaptainInfo){
+        hyBindCarCaptainInfo.setStatusKey(StatusEnum.ALREADY_UNBIND.getFlag());
+        hyBindCarCaptainInfo.setStatus(StatusEnum.ALREADY_UNBIND.getName());
+        //主表信息编辑
+        this.updateById(hyBindCarCaptainInfo);
+        return "OK";
+    }
+
+    /**
+     * 审核
+     *
+     * @param hyBindCarCaptainInfo
+     * @return
+     */
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public String examine(HyBindCarCaptainInfo hyBindCarCaptainInfo){
+        //查询绑定
+        HyBindCarCaptainInfo hyBindCarCaptainInfo1 = this.selectById(hyBindCarCaptainInfo.getId());
+        if (hyBindCarCaptainInfo1 != null) {
+            //接受
+            if ("1".equals(hyBindCarCaptainInfo.getExamineFlag())) {
+                //更改状态
+                hyBindCarCaptainInfo1.setStatusKey(StatusEnum.ALREADY_BIND.getFlag());
+                hyBindCarCaptainInfo1.setStatus(StatusEnum.ALREADY_BIND.getName());
+            }
+            //拒绝
+            else if ("2".equals(hyBindCarCaptainInfo.getExamineFlag())) {
+                hyBindCarCaptainInfo1.setStatusKey(StatusEnum.REFUSE_BIND.getFlag());
+                hyBindCarCaptainInfo1.setStatus(StatusEnum.REFUSE_BIND.getName());
+            }
+            //更改信息
+            this.updateById(hyBindCarCaptainInfo1);
+            return "OK";
+        }
+        return "NG";
+    }
+
+    /**
+     * 车队长删除
+     *
+     * @param hyBindCarCaptainInfo
+     * @return
+     */
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public void deleteBind(HyBindCarCaptainInfo hyBindCarCaptainInfo){
+        //查询绑定
+        HyBindCarCaptainInfo hyBindCarCaptainInfo1 = this.selectById(hyBindCarCaptainInfo.getId());
+        if (hyBindCarCaptainInfo1 != null) {
+            this.deleteById(hyBindCarCaptainInfo1);
+        }
+    }
+
+    /**
+     * 绑定车队长查看页面
+     *
+     * @param hyBindCarCaptainInfo
+     * @return
+     */
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public HyBindCarCaptainInfo getBindCarCaptain(HyBindCarCaptainInfo hyBindCarCaptainInfo){
+        //查询绑定
+        HyBindCarCaptainInfo hyBindCarCaptainInfo1 = this.selectOne(new EntityWrapper<HyBindCarCaptainInfo>()
+                .eq("common_id", hyBindCarCaptainInfo.getCommonId())
+                .ne("status_key", "7")
+                .eq("delete_flag", "0"));
+        return hyBindCarCaptainInfo1;
+    }
+
+    /**
+     * 车队管理绑定司机列表
+     * @param hyBindCarCaptainInfo
+     * @return
+     */
+    @Override
+    public Page<HyBindCarCaptainInfo> selectPage(HyBindCarCaptainInfo hyBindCarCaptainInfo){
+        Map<String, Object> pageView = new HashMap<>(6);
+        pageView.put("startRecord", (hyBindCarCaptainInfo.getCurrentPage() - 1)
+                * hyBindCarCaptainInfo.getPageSize());
+        //用户id
+        pageView.put("carCaptainCommonId", hyBindCarCaptainInfo.getCarCaptainCommonId());
+        pageView.put("pageSize", hyBindCarCaptainInfo.getPageSize());
+        pageView.put("currentPage", hyBindCarCaptainInfo.getCurrentPage());
+        // 查询银行卡总数
+        Integer dataCount = baseMapper.getCountByCondition(pageView);
+        List<HyBindCarCaptainInfo> dataList = baseMapper.getListByCondition(pageView);
+        Page<HyBindCarCaptainInfo> page = new Page<>();
+        page.setRecords(dataList == null ? Lists.newArrayList() : dataList);
+        page.setTotal(dataCount == null ? 0 : dataCount);
+        page.setCurrent(hyBindCarCaptainInfo.getCurrentPage());
+        page.setSize(hyBindCarCaptainInfo.getPageSize());
+        return page;
+    }
 }

+ 117 - 0
winsea-haixin-plugin-wangluohuoyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/impl/HyCarCaptainInfoServiceImpl.java

@@ -1,10 +1,32 @@
 package com.yh.saas.plugin.yiliangyiyun.service.impl;
 
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.yh.saas.common.support.util.IdGenerator;
+import com.yh.saas.common.support.util.StringUtils;
+import com.yh.saas.plugin.yiliangyiyun.constant.NumberConstant;
+import com.yh.saas.plugin.yiliangyiyun.constant.StatusEnum;
 import com.yh.saas.plugin.yiliangyiyun.entity.HyCarCaptainInfo;
+import com.yh.saas.plugin.yiliangyiyun.entity.HyDriverInfo;
+import com.yh.saas.plugin.yiliangyiyun.entity.HyDriverPayeeInfo;
+import com.yh.saas.plugin.yiliangyiyun.entity.NewsInfo;
+import com.yh.saas.plugin.yiliangyiyun.exception.YException;
+import com.yh.saas.plugin.yiliangyiyun.exception.YExceptionEnum;
 import com.yh.saas.plugin.yiliangyiyun.mapper.HyCarCaptainInfoMapper;
+import com.yh.saas.plugin.yiliangyiyun.service.IDriverInfoService;
 import com.yh.saas.plugin.yiliangyiyun.service.IHyCarCaptainInfoService;
 import com.baomidou.mybatisplus.service.impl.ServiceImpl;
+import com.yh.saas.plugin.yiliangyiyun.util.EntityAnalyse;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+import org.springframework.util.CollectionUtils;
+
+import java.io.IOException;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+import java.util.HashSet;
+import java.util.List;
 
 /**
  * <p>
@@ -17,4 +39,99 @@ import org.springframework.stereotype.Service;
 @Service
 public class HyCarCaptainInfoServiceImpl extends ServiceImpl<HyCarCaptainInfoMapper, HyCarCaptainInfo> implements IHyCarCaptainInfoService {
 
+    @Autowired
+    private IDriverInfoService driverInfoService;
+
+
+    /**
+     * 添加信息
+     *
+     * @param
+     * @return
+     */
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public String addCarCaptain(HyCarCaptainInfo hyCarCaptainInfo){
+        //新增主键id
+        hyCarCaptainInfo.setId(IdGenerator.generateUUID());
+        hyCarCaptainInfo.setStatusKey(StatusEnum.IDENTITY_REVIEWED.getFlag());
+        hyCarCaptainInfo.setStatus(StatusEnum.IDENTITY_REVIEWED.getName());
+        //判断与司机信息身份证号是否一致
+        HyDriverInfo hyDriverInfo = driverInfoService.selectOne(new EntityWrapper<HyDriverInfo>()
+                        .eq("common_id", hyCarCaptainInfo.getCommonId())
+                        .eq("delete_flag", NumberConstant.CONSTANT0));
+        if (hyDriverInfo != null) {
+            if (hyDriverInfo.getNumberCard().equals(hyCarCaptainInfo.getIdCard())){
+                throw new YException(YExceptionEnum.ID_CARD_NOT_EQUALS);
+            }
+
+        }
+        this.insert(hyCarCaptainInfo);
+        return "OK";
+    }
+
+    /**
+     * 编辑信息
+     */
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public String editCarCaptain(HyCarCaptainInfo hyCarCaptainInfo){
+        hyCarCaptainInfo.setStatusKey(StatusEnum.IDENTITY_REVIEWED.getFlag());
+        hyCarCaptainInfo.setStatus(StatusEnum.IDENTITY_REVIEWED.getName());
+        //判断与司机信息身份证号是否一致
+        HyDriverInfo hyDriverInfo = driverInfoService.selectOne(new EntityWrapper<HyDriverInfo>()
+                .eq("common_id", hyCarCaptainInfo.getCommonId())
+                .eq("delete_flag", NumberConstant.CONSTANT0));
+        if (hyDriverInfo != null) {
+            if (hyDriverInfo.getNumberCard().equals(hyCarCaptainInfo.getIdCard())){
+                throw new YException(YExceptionEnum.ID_CARD_NOT_EQUALS);
+            }
+
+        }
+        //主表信息编辑
+        this.updateById(hyCarCaptainInfo);
+        return "OK";
+    }
+
+    /**
+     * 审核
+     *
+     * @param hyCarCaptainInfo
+     * @return
+     */
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public String examine(HyCarCaptainInfo hyCarCaptainInfo){
+        //查询车队长
+        HyCarCaptainInfo hyCarCaptainInfo1 = this.selectById(hyCarCaptainInfo.getId());
+        if (hyCarCaptainInfo1 != null) {
+            //通过
+            if ("1".equals(hyCarCaptainInfo.getExamineFlag())) {
+                //更改状态
+                hyCarCaptainInfo1.setStatusKey(StatusEnum.IDENTITY_COMPLETED.getFlag());
+                hyCarCaptainInfo1.setStatus(StatusEnum.IDENTITY_COMPLETED.getName());
+            }
+            //驳回
+            else if ("2".equals(hyCarCaptainInfo.getExamineFlag())) {
+                hyCarCaptainInfo1.setStatusKey(StatusEnum.IDENTITY_FAILED.getFlag());
+                hyCarCaptainInfo1.setStatus(StatusEnum.IDENTITY_FAILED.getName());
+            }
+            //更改信息
+            this.updateById(hyCarCaptainInfo1);
+            return "OK";
+        }
+        return "NG";
+    }
+
+    /**
+     * 查看信息
+     */
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public HyCarCaptainInfo getCarCaptain(HyCarCaptainInfo hyCarCaptainInfo){
+        HyCarCaptainInfo hyCarCaptainInfo1 = this.selectOne(new EntityWrapper<HyCarCaptainInfo>()
+                .eq("common_id", hyCarCaptainInfo.getCommonId())
+                .eq("delete_flag","0"));
+        return hyCarCaptainInfo1;
+    }
 }

+ 4 - 4
winsea-haixin-plugin-wangluohuoyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/impl/HyFreightSettlementInfoServiceImpl.java

@@ -200,9 +200,9 @@ public class HyFreightSettlementInfoServiceImpl extends ServiceImpl<HyFreightSet
                             orderInfo1.setOrderStatus(StatusEnum.DRIVER_ORDER_FINISH.getName());
                             orderInfo1.setOrderStatusKey(StatusEnum.DRIVER_ORDER_FINISH.getFlag());
                             orderInfo1.setOrderEndDate(new Date());
-                            orderInfo1.setEscalationStatus(StatusEnum.NO_REPORTED.getFlag());
+                            orderInfo1.setEscalationStatus(StatusEnum.NO_REPORTED.getName());
                             orderInfo1.setEscalationStatusKey(StatusEnum.NO_REPORTED.getFlag());
-                            orderInfo1.setReportedStatus(StatusEnum.NO_REPORTED.getFlag());
+                            orderInfo1.setReportedStatus(StatusEnum.NO_REPORTED.getName());
                             orderInfo1.setReportedStatusKey(StatusEnum.NO_REPORTED.getFlag());
 //                            //信息上报
 //                            String token = EntityAnalyse.GetJTToken();
@@ -333,9 +333,9 @@ public class HyFreightSettlementInfoServiceImpl extends ServiceImpl<HyFreightSet
                             orderInfo1.setOrderStatus(StatusEnum.DRIVER_ORDER_FINISH.getName());
                             orderInfo1.setOrderStatusKey(StatusEnum.DRIVER_ORDER_FINISH.getFlag());
                             orderInfo1.setOrderEndDate(new Date());
-                            orderInfo1.setEscalationStatus(StatusEnum.NO_REPORTED.getFlag());
+                            orderInfo1.setEscalationStatus(StatusEnum.NO_REPORTED.getName());
                             orderInfo1.setEscalationStatusKey(StatusEnum.NO_REPORTED.getFlag());
-                            orderInfo1.setReportedStatus(StatusEnum.NO_REPORTED.getFlag());
+                            orderInfo1.setReportedStatus(StatusEnum.NO_REPORTED.getName());
                             orderInfo1.setReportedStatusKey(StatusEnum.NO_REPORTED.getFlag());
 
 //                            //信息上报

+ 9 - 2
winsea-haixin-plugin-wangluohuoyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/impl/OrderInfoServiceImpl.java

@@ -686,9 +686,9 @@ public class OrderInfoServiceImpl extends ServiceImpl<OrderInfoMapper, OrderInfo
             orderInfo1.setCargoOwnerStatusKey(StatusEnum.OWNER_ORDER_FINISH.getFlag());
             orderInfo1.setCargoOwnerStatus(StatusEnum.OWNER_ORDER_FINISH.getName());
             orderInfo1.setOrderEndDate(new Date());
-            orderInfo1.setEscalationStatus(StatusEnum.NO_REPORTED.getFlag());
+            orderInfo1.setEscalationStatus(StatusEnum.NO_REPORTED.getName());
             orderInfo1.setEscalationStatusKey(StatusEnum.NO_REPORTED.getFlag());
-            orderInfo1.setReportedStatus(StatusEnum.NO_REPORTED.getFlag());
+            orderInfo1.setReportedStatus(StatusEnum.NO_REPORTED.getName());
             orderInfo1.setReportedStatusKey(StatusEnum.NO_REPORTED.getFlag());
 //            //信息上报
 //            String token = EntityAnalyse.GetJTToken();
@@ -1127,6 +1127,7 @@ public class OrderInfoServiceImpl extends ServiceImpl<OrderInfoMapper, OrderInfo
                         hyFreightSettlementInfo.setDocumentNo(orderInfo1.getOrderNo().replace("CY", "ZJLS"));
                         hyFreightSettlementInfo.setFreightAdvance(orderInfo1.getFreightAdvance());
                         hyFreightSettlementInfo.setDriverName(orderInfo1.getDriverName());
+                        hyFreightSettlementInfo.setPayeeName(orderInfo1.getPayeeName());
                         hyFreightSettlementInfo.setBankCard(orderInfo1.getBankCard());
                         hyFreightSettlementInfo.setBankDeposit(orderInfo1.getBankDeposit());
                         hyFreightSettlementInfo.setBankDepositBranch(orderInfo1.getBankDepositBranch());
@@ -1296,6 +1297,7 @@ public class OrderInfoServiceImpl extends ServiceImpl<OrderInfoMapper, OrderInfo
                     hyFreightSettlementInfo.setDocumentNo(orderInfo1.getOrderNo().replace("CY", "ZJLS"));
                     hyFreightSettlementInfo.setFreightAdvance(orderInfo1.getFreightAdvance());
                     hyFreightSettlementInfo.setDriverName(orderInfo1.getDriverName());
+                    hyFreightSettlementInfo.setPayeeName(orderInfo1.getPayeeName());
                     hyFreightSettlementInfo.setBankCard(orderInfo1.getBankCard());
                     hyFreightSettlementInfo.setBankDeposit(orderInfo1.getBankDeposit());
                     hyFreightSettlementInfo.setBankDepositBranch(orderInfo1.getBankDepositBranch());
@@ -1377,6 +1379,8 @@ public class OrderInfoServiceImpl extends ServiceImpl<OrderInfoMapper, OrderInfo
         OrderInfo orderInfo1 = this.selectById(orderInfo.getId());
         //货主签合同
         if (orderInfo.getTypeFlag().equals("1")) {
+            //查询用户信息
+            CommonUser commonUser = commonUserService.selectById(orderInfo1.getCargoCommonId());
             String pdfUrl = pdfUtil.transactionContract(orderInfo1);
             //提交
             if ("2".equals(orderInfo.getSubmitFlag())) {
@@ -1384,8 +1388,11 @@ public class OrderInfoServiceImpl extends ServiceImpl<OrderInfoMapper, OrderInfo
                 orderInfo1.setCargoOwnerAutograph(orderInfo.getCargoOwnerAutograph());
                 orderInfo1.setWtContractNo(orderInfo1.getOrderNo().replace("CY", "WTHT"));
                 orderInfo1.setOwnerContractUrl(pdfUrl);
+                //更新签名图片
+                commonUser.setSignImg(orderInfo.getCargoOwnerAutograph());
             }
             this.updateById(orderInfo1);
+            commonUserService.updateById(commonUser);
             return pdfUrl;
         }
         //司机签合同

+ 24 - 2
winsea-haixin-plugin-wangluohuoyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/service/impl/PublishTaskInfoServiceImpl.java

@@ -62,7 +62,10 @@ public class PublishTaskInfoServiceImpl extends ServiceImpl<PublishTaskInfoMappe
     private IDriverCarInfoService driverCarInfoService;
     @Autowired
     private IHyCargoOwnerPayeeInfoService hyCargoOwnerPayeeInfoService;
-
+    @Autowired
+    private IHyBindCarCaptainInfoService hyBindCarCaptainInfoService;
+    @Autowired
+    private IHyCarCaptainInfoService hyCarCaptainInfoService;
 
     /**
      * 地球半径,单位 km
@@ -1489,8 +1492,27 @@ public class PublishTaskInfoServiceImpl extends ServiceImpl<PublishTaskInfoMappe
         orderInfo.setDistance(publishTaskInfo.getDistance());
         orderInfo.setFreight(publishTaskInfo.getFreightPrice());
         orderInfo.setBillingMethod(publishTaskInfo.getBillingMethod());
-        orderInfo.setServiceCharge(150d);
+//        orderInfo.setServiceCharge(150d);
         orderInfo.setFreightAdvance(publishTaskInfo.getFreightAdvance());
+        //查询该司机是否绑定车队长
+//        HyBindCarCaptainInfo hyBindCarCaptainInfo = hyBindCarCaptainInfoService.selectOne(new EntityWrapper<HyBindCarCaptainInfo>()
+//        .eq("common_id",orderInfo.getCommonId())
+//                .eq("status_key","5")
+//                .eq("delete_flag","0"));
+//        if (hyBindCarCaptainInfo != null){
+//            //查询车队长信息
+//            HyCarCaptainInfo hyCarCaptainInfo = hyCarCaptainInfoService.selectOne(new EntityWrapper<HyCarCaptainInfo>()
+//                    .eq("common_id",hyBindCarCaptainInfo.getCarCaptainCommonId())
+//                    .eq("status_key","5")
+//                    .eq("delete_flag","0"));
+//            if (hyCarCaptainInfo != null){
+//                orderInfo.setCarCaptainAccountNumber(hyCarCaptainInfo.getAccountNumber());
+//                orderInfo.setPayeeName(hyCarCaptainInfo.getName());
+//                orderInfo.setBankCard(hyCarCaptainInfo.getBankCard());
+//                orderInfo.setBankDeposit(hyCarCaptainInfo.getBankDeposit());
+//                orderInfo.setBankDepositBranch(hyCarCaptainInfo.getBankDepositBranch());
+//            }
+//        }
         orderInfo.setOrderStatusKey(StatusEnum.OWNER_CONFIRMED.getFlag());
         orderInfo.setOrderStatus(StatusEnum.OWNER_CONFIRMED.getName());
         orderInfo.setCargoOwnerStatusKey(StatusEnum.OWNER_PENDING_STATEMENT.getFlag());

+ 32 - 0
winsea-haixin-plugin-wangluohuoyun/src/main/resources/mapper/HyBindCarCaptainInfoMapper.xml

@@ -2,4 +2,36 @@
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.yh.saas.plugin.yiliangyiyun.mapper.HyBindCarCaptainInfoMapper">
 
+    <!-- 获得绑定司机列表总数 -->
+    <select id="getCountByCondition" parameterType="Map" resultType="java.lang.Integer">
+        select
+        count(id)
+        FROM hy_bind_car_captain_info
+        WHERE
+        delete_flag = '0'
+        AND car_captain_common_id = #{carCaptainCommonId}
+    </select>
+
+    <!-- 绑定司机列表查询 -->
+    <select id="getListByCondition" parameterType="Map"
+            resultType="com.yh.saas.plugin.yiliangyiyun.entity.HyBindCarCaptainInfo">
+        SELECT
+        id,
+        common_id as commonId,
+        car_captain_common_id as carCaptainCommonId,
+        driver_name as driverName,
+        account_number as accountNumber,
+        car_captain_name as carCaptainName,
+        car_captain_account_number as carCaptainAccountNumber,
+        status_key as statusKey,
+        status
+        FROM hy_bind_car_captain_info
+        WHERE
+        delete_flag = '0'
+        AND car_captain_common_id = #{carCaptainCommonId}
+        ORDER BY create_date DESC
+        <if test="currentPage != null and currentPage != ''">
+            LIMIT ${startRecord}, ${pageSize}
+        </if>
+    </select>
 </mapper>

+ 1 - 0
winsea-haixin-plugin-wangluohuoyun/src/main/resources/mapper/HyFreightSettlementInfoMapper.xml

@@ -155,6 +155,7 @@
         f.document_no as documentNo,
         f.freight_advance as freightAdvance,
         f.driver_name as driverName,
+        f.payee_name as payeeName,
         c.phone as driverPhone,
         f.bank_card as bankCard,
         f.bank_deposit as bankDeposit,