diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemanufactorsubscription/BaseManufactorSubscriptionFeign.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemanufactorsubscription/BaseManufactorSubscriptionFeign.java
index 80eb561494..e76f8b8d30 100644
--- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemanufactorsubscription/BaseManufactorSubscriptionFeign.java
+++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemanufactorsubscription/BaseManufactorSubscriptionFeign.java
@@ -82,4 +82,7 @@ public interface BaseManufactorSubscriptionFeign {
@PostMapping("/pictureUpload")
public ResultBean pictureUpload(@RequestParam("sid") String sid, @RequestParam(value = "file") MultipartFile file);
+ @ApiOperation("作废")
+ @PostMapping("/cancel")
+ ResultBean cancel(@RequestParam("sid") String sid);
}
\ No newline at end of file
diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemanufactorsubscription/BaseManufactorSubscriptionFeignFallback.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemanufactorsubscription/BaseManufactorSubscriptionFeignFallback.java
index 1a9aaa8cf2..2990f76696 100644
--- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemanufactorsubscription/BaseManufactorSubscriptionFeignFallback.java
+++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemanufactorsubscription/BaseManufactorSubscriptionFeignFallback.java
@@ -93,4 +93,9 @@ public class BaseManufactorSubscriptionFeignFallback implements BaseManufactorSu
public ResultBean pictureUpload(String sid, MultipartFile file) {
return null;
}
+
+ @Override
+ public ResultBean cancel(String sid) {
+ return null;
+ }
}
\ No newline at end of file
diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basetrailer/BaseTrailerFeign.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basetrailer/BaseTrailerFeign.java
index e5b806480a..006001371d 100644
--- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basetrailer/BaseTrailerFeign.java
+++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basetrailer/BaseTrailerFeign.java
@@ -33,6 +33,8 @@ import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
+import java.util.List;
+
/**
* Project: anrui-base(基础信息)
* File: BaseTrailerFeign.java
@@ -100,6 +102,17 @@ public interface BaseTrailerFeign {
@GetMapping("/fetchBySid/{sid}")
public ResultBean fetchBySid(@PathVariable("sid") String sid);
+ /**
+ * 根据主车SID获取记录
+ *
+ * @return
+ */
+ @ApiOperation("根据主车SID获取记录")
+ @GetMapping("/getByVehSid")
+ @ResponseBody
+ public ResultBean> getByVehSid(@RequestParam("vehSid") String vehSid);
+
+
/**
* 挂车检索分页列表
*
@@ -120,7 +133,7 @@ public interface BaseTrailerFeign {
@ApiOperation("查询主车的挂车信息/上装信息")
@GetMapping("/trailerList")
- ResultBean trailerList(@RequestParam("vinSid") String vinSid,@RequestParam("contractNo") String contractNo);
+ ResultBean trailerList(@RequestParam("vinSid") String vinSid, @RequestParam("contractNo") String contractNo);
@ApiOperation("根据挂车车架号获取一条记录")
@GetMapping("/fetchByGcVinNo/{gcVinNo}")
diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basetrailer/BaseTrailerFeignFallback.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basetrailer/BaseTrailerFeignFallback.java
index 25bbd2ea18..605fb4282a 100644
--- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basetrailer/BaseTrailerFeignFallback.java
+++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basetrailer/BaseTrailerFeignFallback.java
@@ -74,6 +74,11 @@ public class BaseTrailerFeignFallback implements BaseTrailerFeign {
return null;
}
+ @Override
+ public ResultBean> getByVehSid(String vehSid) {
+ return null;
+ }
+
@Override
public ResultBean> searchPage(PagerQuery pagerQuery) {
return null;
diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleorder/BusVehicleOrder.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleorder/BusVehicleOrder.java
index 0d063eada3..8715a3dab5 100644
--- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleorder/BusVehicleOrder.java
+++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleorder/BusVehicleOrder.java
@@ -122,4 +122,6 @@ public class BusVehicleOrder extends BaseEntity {
@ApiModelProperty(value = "认款日期")
private String subscriptionDate;
+
+ private String lockingNum;
}
diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleorder/BusVehicleOrderFeign.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleorder/BusVehicleOrderFeign.java
index 388b237dd1..357c37020c 100644
--- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleorder/BusVehicleOrderFeign.java
+++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleorder/BusVehicleOrderFeign.java
@@ -139,4 +139,9 @@ public interface BusVehicleOrderFeign {
@ResponseBody
ResultBean selectApplySz(@RequestParam("sid")String sid);
+ @ApiOperation("作废采购订单")
+ @PostMapping("/cancal")
+ @ResponseBody
+ ResultBean cancal(@RequestParam("sid")String sid);
+
}
\ No newline at end of file
diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleorder/BusVehicleOrderFeignFallback.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleorder/BusVehicleOrderFeignFallback.java
index 546b744ce1..aed6676aae 100644
--- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleorder/BusVehicleOrderFeignFallback.java
+++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleorder/BusVehicleOrderFeignFallback.java
@@ -134,5 +134,10 @@ public class BusVehicleOrderFeignFallback implements BusVehicleOrderFeign {
return null;
}
+ @Override
+ public ResultBean cancal(String sid) {
+ return null;
+ }
+
}
\ No newline at end of file
diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basediscountpackageapply/BaseDiscountpackageApplyService.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basediscountpackageapply/BaseDiscountpackageApplyService.java
index 045e1516c0..be4ae2a121 100644
--- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basediscountpackageapply/BaseDiscountpackageApplyService.java
+++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basediscountpackageapply/BaseDiscountpackageApplyService.java
@@ -232,22 +232,22 @@ public class BaseDiscountpackageApplyService extends MybatisBaseService saveDiscountPackageApplyInfo(AppDiscountpackageApplyDto dto) {
ResultBean rb = ResultBean.fireFail();
//根据用户sid获取staffSid
- // ResultBean userVoResultBean = sysUserFeign.fetchBySid(dto.getUserSid());
-// if (!userVoResultBean.getSuccess()) {
-// return rb.setMsg(userVoResultBean.getMsg());
-// }
-// //根据staffSid获取用户的组织全路径
-// ResultBean staffOrgResultBean = sysStaffOrgFeign.getOrgByStaffSid(userVoResultBean.getData().getStaffSid());
-// if (!staffOrgResultBean.getSuccess()) {
-// return rb.setMsg(staffOrgResultBean.getMsg());
-// }
-// String orgSidPath = staffOrgResultBean.getData().getOrgSidPath();
+ ResultBean userVoResultBean = sysUserFeign.fetchBySid(dto.getUserSid());
+ if (!userVoResultBean.getSuccess()) {
+ return rb.setMsg(userVoResultBean.getMsg());
+ }
+ //根据staffSid获取用户的组织全路径
+ ResultBean staffOrgResultBean = sysStaffOrgFeign.getOrgByStaffSid(userVoResultBean.getData().getStaffSid());
+ if (!staffOrgResultBean.getSuccess()) {
+ return rb.setMsg(staffOrgResultBean.getMsg());
+ }
+ String orgSidPath = staffOrgResultBean.getData().getOrgSidPath();
String dtoSid = dto.getSid();
List appDiscountpackagelists = dto.getDiscountPackageList();
if (StringUtils.isBlank(dtoSid)) {
BaseDiscountpackageApplyDto baseDiscountpackageApplyDto = new BaseDiscountpackageApplyDto();
BeanUtil.copyProperties(dto, baseDiscountpackageApplyDto);
- baseDiscountpackageApplyDto.setOrgSidPath(dto.getOrgSidPath());
+ baseDiscountpackageApplyDto.setOrgSidPath(orgSidPath);
baseDiscountpackageApplyDto.setCreateBySid(dto.getUserSid());
String sid = this.insertByDto(baseDiscountpackageApplyDto);
if (null != appDiscountpackagelists && appDiscountpackagelists.size() > 0) {
diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemanufactorsubscription/BaseManufactorSubscriptionRest.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemanufactorsubscription/BaseManufactorSubscriptionRest.java
index 2bf6924633..d6a523c512 100644
--- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemanufactorsubscription/BaseManufactorSubscriptionRest.java
+++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemanufactorsubscription/BaseManufactorSubscriptionRest.java
@@ -145,4 +145,9 @@ public class BaseManufactorSubscriptionRest implements BaseManufactorSubscriptio
baseManufactorSubscriptionService.updateWitMatUrl(data.getFilePath(), sid);
return rb.success().setMsg("上传成功");
}
+
+ @Override
+ public ResultBean cancel(String sid) {
+ return baseManufactorSubscriptionService.cancel(sid);
+ }
}
diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemanufactorsubscription/BaseManufactorSubscriptionService.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemanufactorsubscription/BaseManufactorSubscriptionService.java
index adbebb308e..3bc4b01d00 100644
--- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemanufactorsubscription/BaseManufactorSubscriptionService.java
+++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemanufactorsubscription/BaseManufactorSubscriptionService.java
@@ -43,7 +43,6 @@ import com.yxt.anrui.base.common.enums.ManPurOrderType;
import com.yxt.anrui.base.common.utils.Rule;
import com.yxt.anrui.base.common.utils.domain.BillNo;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign;
-import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign;
import com.yxt.anrui.portal.api.sysuser.SysUserFeign;
import com.yxt.anrui.portal.api.sysuser.SysUserVo;
@@ -149,6 +148,9 @@ public class BaseManufactorSubscriptionService extends MybatisBaseService p = PagerUtil.pageToVo(pagging, null);
@@ -330,4 +333,19 @@ public class BaseManufactorSubscriptionService extends MybatisBaseService {
@Select("select * from base_trailer where vinNo = #{vinNo} and sid !=#{sid}")
BaseTrailerDetailsVo fetchByGcVinNoAndSid(@Param("vinNo") String vinNo, @Param("sid") String sid);
+
+ @Select("select * from base_trailer where vehSid = #{vehSid}")
+ List getByVehSid(@Param("vehSid") String vehSid);
}
\ No newline at end of file
diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basetrailer/BaseTrailerRest.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basetrailer/BaseTrailerRest.java
index 479b919da6..25ea52e8ad 100644
--- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basetrailer/BaseTrailerRest.java
+++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basetrailer/BaseTrailerRest.java
@@ -36,6 +36,8 @@ import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
+import java.util.List;
+
/**
* Project: anrui-base(基础信息)
* File: BaseTrailerFeignFallback.java
@@ -96,6 +98,11 @@ public class BaseTrailerRest implements BaseTrailerFeign {
return baseTrailerService.fetchDetailsBySid(sid);
}
+ @Override
+ public ResultBean> getByVehSid(String vehSid) {
+ return baseTrailerService.getByVehSid(vehSid);
+ }
+
@Override
public ResultBean> searchPage(PagerQuery pagerQuery) {
ResultBean> rb = ResultBean.fireFail();
diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basetrailer/BaseTrailerService.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basetrailer/BaseTrailerService.java
index 5d8e72cdac..750e0e96bc 100644
--- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basetrailer/BaseTrailerService.java
+++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basetrailer/BaseTrailerService.java
@@ -937,4 +937,10 @@ public class BaseTrailerService extends MybatisBaseService> getByVehSid(String vehSid) {
+ ResultBean> rb = ResultBean.fireFail();
+ List baseTrailers = baseMapper.getByVehSid(vehSid);
+ return rb.success().setData(baseTrailers);
+ }
}
\ No newline at end of file
diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleorder/BusVehicleOrderRest.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleorder/BusVehicleOrderRest.java
index bc7fc8415c..8ebcfa242a 100644
--- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleorder/BusVehicleOrderRest.java
+++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleorder/BusVehicleOrderRest.java
@@ -227,4 +227,9 @@ public class BusVehicleOrderRest implements BusVehicleOrderFeign {
return busVehicleOrderService.selectApplySz(sid);
}
+ @Override
+ public ResultBean cancal(String sid) {
+ return busVehicleOrderService.cancal(sid);
+ }
+
}
diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleorder/BusVehicleOrderService.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleorder/BusVehicleOrderService.java
index c9ba3aec2b..670dde012f 100644
--- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleorder/BusVehicleOrderService.java
+++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleorder/BusVehicleOrderService.java
@@ -154,27 +154,6 @@ public class BusVehicleOrderService extends MybatisBaseService> sysStaffOrgListByStaffSid = sysStaffOrgFeign.getSysStaffOrgListByStaffSid(staffSid);
- List data = sysStaffOrgListByStaffSid.getData();
- String orgSidPath = "";
- for (SysStaffOrgVo datum : data) {
- orgSidPath = datum.getOrgSidPath();
- String[] split = orgSidPath.split("/");
- for (String s : split) {
- ResultBean sysOrganizationVoResultBean = sysOrganizationFeign.fetchBySid(s);
- SysOrganizationVo data1 = sysOrganizationVoResultBean.getData();
- Integer isDept = data1.getIsDept();
- String psid = data1.getPsid();
- if (isDept != null) {
- if (isDept == 0 && !psid.equals(0)) {
- orgSidPath = s;
- break;
- }
- }
- }
- }
- query.setUseOrgSid(orgSidPath);*/
QueryWrapper qw = createQueryWrapper(query);
IPage page = PagerUtil.queryToPage(pq);
IPage pagging = baseMapper.selectPageVo(page, qw);
@@ -572,4 +551,17 @@ public class BusVehicleOrderService extends MybatisBaseService busItemvos;
diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/BusHandoverDetailVo.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/BusHandoverDetailVo.java
index 0b42d8350b..53ba3e1514 100644
--- a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/BusHandoverDetailVo.java
+++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/BusHandoverDetailVo.java
@@ -37,7 +37,7 @@ public class BusHandoverDetailVo implements Vo {
private String recipient;
@ApiModelProperty("备注")
private String remarks;
- @ApiModelProperty("接收车辆确认书照片")
+ @ApiModelProperty("交付车辆信息")
private List items;
@ApiModelProperty("接收车辆确认书照片")
private List receiveCarImages;
diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/BusHandoverDetailsVo.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/BusHandoverDetailsVo.java
index 114c0faee2..0c4c94f393 100644
--- a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/BusHandoverDetailsVo.java
+++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/BusHandoverDetailsVo.java
@@ -1,5 +1,6 @@
package com.yxt.anrui.buscenter.api.bushandover;
+import com.fasterxml.jackson.annotation.JsonProperty;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@@ -37,13 +38,14 @@ public class BusHandoverDetailsVo implements Vo {
private List carList = new ArrayList<>();
@ApiModelProperty("交车资料确认单")
private List entrustConfirmImages = new ArrayList<>();
- @ApiModelProperty("委托人身份证(正反面)")
- private List idCardImages = new ArrayList<>();
+ // @ApiModelProperty("委托人身份证(正反面)")
+// private List idCardImages = new ArrayList<>();
@ApiModelProperty("出门证照片")
private List exitTicketImages = new ArrayList<>();
- @ApiModelProperty("委托提车授权书")
+ @ApiModelProperty("委托提车授权书+委托人身份证(正反面)")
private List entrustImages = new ArrayList<>();
@ApiModelProperty("接收车辆确认书照片")
private List receiveCarImages = new ArrayList<>();
-
+ private String procInstId;
+ private String taskId;
}
diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/BusHandoverFeign.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/BusHandoverFeign.java
index 128c7907b4..5c4883bbb3 100644
--- a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/BusHandoverFeign.java
+++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/BusHandoverFeign.java
@@ -1,13 +1,21 @@
package com.yxt.anrui.buscenter.api.bushandover;
+import com.yxt.anrui.buscenter.api.bushandover.app.*;
+import com.yxt.anrui.buscenter.api.bushandover.flow.*;
+import com.yxt.anrui.buscenter.api.bushandoveritems.BusHandoverItemsQuery;
+import com.yxt.anrui.buscenter.api.bushandoveritems.BusHandoverItemsVo;
+import com.yxt.anrui.buscenter.api.flow.FlowTaskVo;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
import org.springframework.cloud.openfeign.FeignClient;
+import org.springframework.cloud.openfeign.SpringQueryMap;
import org.springframework.web.bind.annotation.*;
+import javax.validation.Valid;
import java.util.List;
/**
@@ -53,15 +61,42 @@ public interface BusHandoverFeign {
@ResponseBody
public ResultBean fetchDetailsBySid(@PathVariable("sid") String sid);
- @ApiOperation("上传照片")
- @PostMapping("/uploadPicture")
+ @ApiOperation("交车确认更新备注图片")
+ @PostMapping("/deliveryVehicle")
@ResponseBody
- public ResultBean uploadPicture(@RequestBody BusHandoverDetailDto dto);
+ public ResultBean deliveryVehicle(@RequestBody BusHandoverDetailDto dto);
@ApiOperation("打印接收车辆确认书、出门证、交车资料确认单")
@PostMapping("/createPdf")
ResultBean> createPdf(@RequestParam("sid") String sid);
+ /*******************************移动端*******************************************************************/
+ @ApiOperation("获取交车交付信息")
+ @PostMapping("/getDeliveryBill")
+ ResultBean getDeliveryBill(@RequestBody AppDeliveryConQuery query);
+
+ @ApiOperation("保存确认交付信息")
+ @PutMapping("/saveDeliveryBill")
+ @ResponseBody
+ ResultBean saveDeliverybill(@RequestBody AppDeliveryDto dto) throws Exception;
+
+ @ApiOperation("获取交车确认列表")
+ @PostMapping("/appgetDeliveryConfirmList")
+ ResultBean> appgetDeliveryConfirmList(@RequestBody PagerQuery pagerQuery);
+
+ @ApiOperation("挂车保存确认交付信息")
+ @PutMapping("/saveGcBill")
+ @ResponseBody
+ ResultBean saveGcBill(@RequestBody AppGcBillDto dto);
+
+ @ApiOperation("保存挂车交车信息")
+ @PostMapping("/saveDeliveryConfirmGcInfo")
+ ResultBean saveDeliveryConfirmGcInfo(@RequestBody BusHandoverInitDto dto);
+
+
+ @ApiOperation("获取挂车交车确认信息")
+ @GetMapping("/getDeliveryConfirmGcInfo")
+ ResultBean getDeliveryConfirmGcInfo(@RequestParam("sid") String sid);
/* @ApiOperation("根据条件分页查询数据的列表")
@@ -105,9 +140,9 @@ public interface BusHandoverFeign {
@GetMapping("/initInsert/{sid}")
public ResultBean initInsert(@PathVariable("sid") String sid);*/
- @ApiOperation("保存确认交付信息")
- @PutMapping("/saveDeliverybill")
- ResultBean> saveDeliverybill(@RequestBody BusHandoverDto dto);
+// @ApiOperation("保存确认交付信息")
+// @PutMapping("/saveDeliverybill")
+// ResultBean> saveDeliverybill(@RequestBody BusHandoverDto dto);
@ApiOperation("获取交车确认列表")
@PostMapping("/getDeliveryConfirmList")
@@ -119,9 +154,43 @@ public interface BusHandoverFeign {
@ApiOperation("保存交车信息")
@PostMapping("/saveDeliveryConfirmInfo")
- ResultBean saveDeliveryConfirmInfo(@RequestBody BusHandoverInitDto dto);
+ ResultBean saveDeliveryConfirmInfo(@RequestBody BusHandoverInitDto dto);
@ApiOperation("交车信息详情")
@GetMapping("/details")
ResultBean details(@RequestParam("sid") String sid);
+
+
+ /******************流程接口**************************************/
+ @ApiOperation("交车确认提交")
+ @PostMapping("submit")
+ public ResultBean submitRecordApplication(@RequestBody @Valid SubmitBusHandoverDto dto);
+
+ @ApiOperation(value = "办理(同意)")
+ @PostMapping("/complete")
+ public ResultBean complete(@Valid @RequestBody BusHandoverCompleteDto dto);
+
+ @ApiOperation(value = "撤回流程")
+ @PostMapping(value = "/revokeProcess")
+ public ResultBean revokeProcess(@ApiParam(value = "工作流任务相关--请求参数") @RequestBody BusHandoverTaskQuery query);
+
+ @ApiOperation(value = "驳回任务")
+ @PostMapping(value = "reject")
+ public ResultBean taskReject(@ApiParam(value = "工作流任务相关--请求参数") @RequestBody BusHandoverTaskQuery query);
+
+ @ApiOperation(value = "终止任务")
+ @PostMapping(value = "/breakProcess")
+ public ResultBean breakProcess(@RequestBody BusHandoverTaskQuery query);
+
+ @ApiOperation(value = "流程历史流转记录")
+ @GetMapping(value = "/task/flowRecord/{procInsId}/{deployId}")
+ public ResultBean flowRecord(@ApiParam(value = "流程实例id") @PathVariable(value = "procInsId") String procInsId);
+
+ @ApiOperation(value = "获取下一个环节")
+ @GetMapping(value = "/getNextNodesForSubmit")
+ ResultBean> getNextNodesForSubmit(@Valid @SpringQueryMap GetNodeQuery query);
+
+ @ApiOperation(value = "获取上一个环节")
+ @GetMapping(value = "/getPreviousNodesForReject")
+ ResultBean> getPreviousNodesForReject(@Valid @SpringQueryMap GetNodeQuery query);
}
\ No newline at end of file
diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/BusHandoverFeignFallback.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/BusHandoverFeignFallback.java
index 886b474b80..bb78cae055 100644
--- a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/BusHandoverFeignFallback.java
+++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/BusHandoverFeignFallback.java
@@ -1,5 +1,8 @@
package com.yxt.anrui.buscenter.api.bushandover;
+import com.yxt.anrui.buscenter.api.bushandover.app.*;
+import com.yxt.anrui.buscenter.api.bushandover.flow.*;
+import com.yxt.anrui.buscenter.api.flow.FlowTaskVo;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
@@ -43,7 +46,7 @@ public class BusHandoverFeignFallback implements BusHandoverFeign {
}
@Override
- public ResultBean uploadPicture(BusHandoverDetailDto dto) {
+ public ResultBean deliveryVehicle(BusHandoverDetailDto dto) {
return null;
}
@@ -53,10 +56,40 @@ public class BusHandoverFeignFallback implements BusHandoverFeign {
}
@Override
- public ResultBean> saveDeliverybill(BusHandoverDto dto) {
+ public ResultBean getDeliveryBill(AppDeliveryConQuery query) {
return null;
}
+ @Override
+ public ResultBean saveDeliverybill(AppDeliveryDto dto) {
+ return null;
+ }
+
+ @Override
+ public ResultBean> appgetDeliveryConfirmList(PagerQuery pagerQuery) {
+ return null;
+ }
+
+ @Override
+ public ResultBean saveGcBill(AppGcBillDto dto) {
+ return null;
+ }
+
+ @Override
+ public ResultBean saveDeliveryConfirmGcInfo(BusHandoverInitDto dto) {
+ return null;
+ }
+
+ @Override
+ public ResultBean getDeliveryConfirmGcInfo(String sid) {
+ return null;
+ }
+
+// @Override
+// public ResultBean> saveDeliverybill(BusHandoverDto dto) {
+// return null;
+// }
+
@Override
public ResultBean> getDeliveryConfirmList(PagerQuery pagerQuery) {
return null;
@@ -77,6 +110,46 @@ public class BusHandoverFeignFallback implements BusHandoverFeign {
return null;
}
+ @Override
+ public ResultBean submitRecordApplication(SubmitBusHandoverDto dto) {
+ return null;
+ }
+
+ @Override
+ public ResultBean complete(BusHandoverCompleteDto dto) {
+ return null;
+ }
+
+ @Override
+ public ResultBean revokeProcess(BusHandoverTaskQuery query) {
+ return null;
+ }
+
+ @Override
+ public ResultBean taskReject(BusHandoverTaskQuery query) {
+ return null;
+ }
+
+ @Override
+ public ResultBean breakProcess(BusHandoverTaskQuery query) {
+ return null;
+ }
+
+ @Override
+ public ResultBean flowRecord(String procInsId) {
+ return null;
+ }
+
+ @Override
+ public ResultBean> getNextNodesForSubmit(GetNodeQuery query) {
+ return null;
+ }
+
+ @Override
+ public ResultBean> getPreviousNodesForReject(GetNodeQuery query) {
+ return null;
+ }
+
/*@Override
public ResultBean> listPage(PagerQuery pq){
ResultBean rb = ResultBean.fireFail();
diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/BusHandoverInitDto.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/BusHandoverInitDto.java
index a38252b38e..b69c5eaf8f 100644
--- a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/BusHandoverInitDto.java
+++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/BusHandoverInitDto.java
@@ -15,20 +15,20 @@ import java.util.List;
public class BusHandoverInitDto implements Dto {
private static final long serialVersionUID = -8878130476850685438L;
+ private String userSid;
private String remarks;
-
private String sid;
private List carList;
@ApiModelProperty("交车资料确认单")
private List entrustConfirmImages;
- @ApiModelProperty("委托人身份证(正反面)")
- private List idCardImages;
+// @ApiModelProperty("委托人身份证(正反面)")
+// private List idCardImages;
@ApiModelProperty("接收车辆确认书照片")
private List receiveCarImages;
- @ApiModelProperty("委托提车授权书")
+ @ApiModelProperty("委托提车授权书+委托人身份证(正反面)")
private List entrustImages;
@ApiModelProperty("出门证照片")
private List exitTicketImages;
-
+ private String orgPath;
}
diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/BusHandoverInitListVo.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/BusHandoverInitListVo.java
index e51a9d62e3..4b60b58e5c 100644
--- a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/BusHandoverInitListVo.java
+++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/BusHandoverInitListVo.java
@@ -4,6 +4,7 @@ import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
+import java.util.ArrayList;
import java.util.List;
/**
@@ -17,9 +18,9 @@ public class BusHandoverInitListVo implements Vo {
private String vinNo;
@ApiModelProperty("保单照片")
- private List policyImages;
+ private List policyImages = new ArrayList<>();
@ApiModelProperty("交车照片")
- private List deliveryImages;
+ private List deliveryImages = new ArrayList<>();
private String vinSid;
diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/BusHandoverInitVo.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/BusHandoverInitVo.java
index d0e74fe802..a2739f93a8 100644
--- a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/BusHandoverInitVo.java
+++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/BusHandoverInitVo.java
@@ -31,7 +31,7 @@ public class BusHandoverInitVo implements Vo {
private String deliverAddress;
@ApiModelProperty("接收车辆确认书照片")
private List receiveCarImages = new ArrayList<>();
- @ApiModelProperty("委托提车授权书")
+ @ApiModelProperty("委托提车授权书+委托人身份证(正反面)")
private List entrustImages = new ArrayList<>();
@ApiModelProperty("交付车辆")
private List carList = new ArrayList<>();
@@ -43,13 +43,14 @@ public class BusHandoverInitVo implements Vo {
private String remarks;
@ApiModelProperty("交车资料确认单")
private List entrustConfirmImages = new ArrayList<>();
- @ApiModelProperty("委托人身份证(正反面)")
- private List idCardImages = new ArrayList<>();
@ApiModelProperty("出门证照片")
private List exitTicketImages = new ArrayList<>();
@ApiModelProperty("用户sid")
private String userSid;
@ApiModelProperty("组织机构sid")
private String orgPath;
-
+ @ApiModelProperty("流程实例id")
+ private String procInsId;
+ @ApiModelProperty("组织机构sid")
+ private String taskId;
}
diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/app/AppDeliveryConDto.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/app/AppDeliveryConDto.java
new file mode 100644
index 0000000000..a098293fd7
--- /dev/null
+++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/app/AppDeliveryConDto.java
@@ -0,0 +1,28 @@
+package com.yxt.anrui.buscenter.api.bushandover.app;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @author Administrator
+ * @description
+ * @date 2023/6/12 9:47
+ */
+@Data
+public class AppDeliveryConDto {
+ @ApiModelProperty("车架号")
+ @JsonProperty("vin")
+ private String vinNo;
+
+ @ApiModelProperty("资料key")
+ @JsonProperty("manifestKey")
+ private String itemKey;
+
+ @ApiModelProperty("资料value")
+ @JsonProperty("manifest")
+ private String itemValue;
+
+ private String recordSid;
+
+}
diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/app/AppDeliveryConListVo.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/app/AppDeliveryConListVo.java
new file mode 100644
index 0000000000..39d149660f
--- /dev/null
+++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/app/AppDeliveryConListVo.java
@@ -0,0 +1,27 @@
+package com.yxt.anrui.buscenter.api.bushandover.app;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.yxt.common.core.vo.Vo;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @author Administrator
+ * @description
+ * @date 2023/6/9 17:28
+ */
+@Data
+public class AppDeliveryConListVo implements Vo {
+ @ApiModelProperty("车架号")
+ private String vinNo;
+
+ @ApiModelProperty("资料key")
+ private String itemKey;
+
+ @ApiModelProperty("资料value")
+ private String itemValue;
+
+ @ApiModelProperty("记录sid")
+ private String sid;
+
+}
diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/app/AppDeliveryConQuery.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/app/AppDeliveryConQuery.java
new file mode 100644
index 0000000000..a975493ece
--- /dev/null
+++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/app/AppDeliveryConQuery.java
@@ -0,0 +1,20 @@
+package com.yxt.anrui.buscenter.api.bushandover.app;
+
+import com.yxt.common.core.query.Query;
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * @author Administrator
+ * @description
+ * @date 2023/6/9 17:26
+ */
+@Data
+public class AppDeliveryConQuery implements Query {
+ private List list;
+
+ private String userSid;
+
+ private String orgPath;
+}
diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/app/AppDeliveryConVo.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/app/AppDeliveryConVo.java
new file mode 100644
index 0000000000..257f591cd0
--- /dev/null
+++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/app/AppDeliveryConVo.java
@@ -0,0 +1,37 @@
+package com.yxt.anrui.buscenter.api.bushandover.app;
+
+import com.yxt.common.core.vo.Vo;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * @author Administrator
+ * @description
+ * @date 2023/6/9 17:27
+ */
+@Data
+public class AppDeliveryConVo implements Vo {
+ @ApiModelProperty("接收人")
+ private String name;
+ @ApiModelProperty("身份证号")
+ private String idNumber;
+ @ApiModelProperty("联系电话")
+ private String mobile;
+ @ApiModelProperty("交付日期")
+ private String date;
+ @ApiModelProperty("交付地点")
+ private String address;
+ @ApiModelProperty("交付地点key")
+ private String addressKey;
+ @ApiModelProperty("定位经纬度")
+ private String location;
+ @ApiModelProperty("定位经纬度描述")
+ private String locationStr;
+ @ApiModelProperty("用户sid")
+ private String userSid;
+ @ApiModelProperty("组织全路径")
+ private String orgPath;
+ private List vinList;
+}
diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/app/AppDeliveryDto.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/app/AppDeliveryDto.java
new file mode 100644
index 0000000000..4fdd0b9df0
--- /dev/null
+++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/app/AppDeliveryDto.java
@@ -0,0 +1,53 @@
+package com.yxt.anrui.buscenter.api.bushandover.app;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.yxt.common.core.dto.Dto;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * @author Administrator
+ * @description
+ * @date 2023/6/12 9:47
+ */
+@Data
+public class AppDeliveryDto implements Dto {
+ @ApiModelProperty("联系电话")
+ private String mobile;
+ @ApiModelProperty("交付地点key")
+ @JsonProperty("addressKey")
+ private String deliverAddressKey;
+ @JsonProperty("address")
+ private String deliverAddress;
+ @ApiModelProperty("定位经纬度")
+ @JsonProperty("location")
+ private String locationCode;
+ @ApiModelProperty("定位经纬度描述")
+ private String locationStr;
+ @ApiModelProperty("用户sid")
+ private String userSid;
+ @ApiModelProperty("组织全路径")
+ private String orgPath;
+ @ApiModelProperty("接收人")
+ @JsonProperty("name")
+ private String recipient;
+ @ApiModelProperty("身份证号")
+ @JsonProperty("idNumber")
+ private String idNo;
+ @ApiModelProperty("车辆交付日期")
+ @JsonProperty("date")
+ private String deliverDate;
+ @ApiModelProperty("流程定义的id")
+ private String procDefId; // 流程定义的id
+ @ApiModelProperty("环节定义的sid")
+ private String nodeSid; // 环节定义的sid
+ @ApiModelProperty("流程实例的sid")
+ private String procInstId; // 流程实例的sid
+ @ApiModelProperty("流程状态")
+ private String nodeState; // 流程状态
+ @ApiModelProperty("taskId")
+ private String taskId; // taskId
+ private List vinList;
+}
diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/app/AppDeliveryListQuery.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/app/AppDeliveryListQuery.java
new file mode 100644
index 0000000000..edc10c3947
--- /dev/null
+++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/app/AppDeliveryListQuery.java
@@ -0,0 +1,22 @@
+package com.yxt.anrui.buscenter.api.bushandover.app;
+
+import com.yxt.common.core.query.Query;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @author Administrator
+ * @description
+ * @date 2023/6/12 11:48
+ */
+@Data
+public class AppDeliveryListQuery implements Query {
+ @ApiModelProperty("用户sid")
+ private String userSid;
+
+ @ApiModelProperty("客户名称/合同编号")
+ private String name;
+
+ @ApiModelProperty("orgPath")
+ private String orgPath;
+}
diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/app/AppDeliveryListVo.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/app/AppDeliveryListVo.java
new file mode 100644
index 0000000000..5b6e541a9c
--- /dev/null
+++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/app/AppDeliveryListVo.java
@@ -0,0 +1,50 @@
+package com.yxt.anrui.buscenter.api.bushandover.app;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+import com.yxt.common.core.vo.Vo;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @author Administrator
+ * @description
+ * @date 2023/6/12 11:47
+ */
+@Data
+public class AppDeliveryListVo implements Vo {
+ @ApiModelProperty("记录sid")
+ private String sid;
+ @ApiModelProperty("合同编号")
+ @JsonProperty("contractId")
+ private String contractNo;
+ @ApiModelProperty("流程状态")
+ @JsonProperty("state")
+ private String nodeState;
+ @ApiModelProperty("交车状态")
+ @JsonProperty("deliveryState")
+ private String handoverStateValue;
+ @ApiModelProperty("客户名称")
+ @JsonProperty("name")
+ private String customerName;
+ @ApiModelProperty("车型别名")
+ @JsonProperty("model")
+ private String modelName;
+ @ApiModelProperty("交车数量")
+ @JsonProperty("number")
+ private String carNum;
+ @ApiModelProperty("是否显示交车确认")
+ private boolean showUpdate;
+ @ApiModelProperty("是否显示挂车")
+ private boolean showGcBtn;
+ @ApiModelProperty("确认资料下载地铁")
+ @JsonProperty("fileResps")
+ private String filePath;
+
+ @ApiModelProperty("确认挂车资料下载地址")
+ @JsonProperty("fileResps2")
+ private String trailerFilePath;
+ @ApiModelProperty("显示挂车下载按钮")
+ private Boolean showGcDownload;
+ @ApiModelProperty("挂车确认按钮")
+ private boolean showGcBtn2;
+}
diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/flow/BusHandoverCompleteDto.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/flow/BusHandoverCompleteDto.java
new file mode 100644
index 0000000000..57e94ccf6c
--- /dev/null
+++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/flow/BusHandoverCompleteDto.java
@@ -0,0 +1,42 @@
+package com.yxt.anrui.buscenter.api.bushandover.flow;
+
+import com.yxt.common.core.dto.Dto;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+import java.util.Map;
+
+/**
+ * @Author dimengzhe
+ * @Date 2022/6/28 9:01
+ * @Description
+ */
+@Data
+public class BusHandoverCompleteDto implements Dto {
+ private static final long serialVersionUID = 3240453987322803352L;
+ @ApiModelProperty(value = "用户sid")
+ @NotBlank(message = "参数错误:userSid")
+ private String userSid;
+ @ApiModelProperty(value = "用户全路径sid")
+ private String orgSidPath;
+ @ApiModelProperty(value = "节点id")
+ @NotBlank(message = "参数错误:taskDefKey")
+ private String taskDefKey;
+ @ApiModelProperty(value = "任务id")
+ @NotBlank(message = "参数错误:taskId")
+ private String taskId;
+ @ApiModelProperty(value = "流程id")
+ @NotBlank(message = "参数错误:instanceId")
+ private String instanceId;
+ @ApiModelProperty(value = "意见")
+ @NotBlank(message = "参数错误:comment")
+ private String comment;
+ @ApiModelProperty(value = "业务sid")
+ @NotBlank(message = "参数错误:businessSid")
+ private String businessSid;
+ @ApiModelProperty(value = "分支字段及业务字段")
+ private Map formVariables;
+// @ApiModelProperty("调账车辆列表")
+// private List baseInternalPurchaseVehicles; // 调账车辆列表
+}
diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/flow/BusHandoverTaskQuery.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/flow/BusHandoverTaskQuery.java
new file mode 100644
index 0000000000..c0c6902616
--- /dev/null
+++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/flow/BusHandoverTaskQuery.java
@@ -0,0 +1,56 @@
+package com.yxt.anrui.buscenter.api.bushandover.flow;
+
+import com.yxt.common.core.query.Query;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+
+/**
+ * @Author dimengzhe
+ * @Date 2022/6/28 17:29
+ * @Description 终止、撤回、驳回查询参数
+ */
+@Data
+public class BusHandoverTaskQuery implements Query {
+ private static final long serialVersionUID = -4006020771892400451L;
+ /**
+ * 终止、驳回、撤回
+ */
+ @ApiModelProperty("任务Id")
+ @NotBlank(message = "参数错误:taskId")
+ private String taskId;
+ /**
+ * 终止、驳回、撤回
+ */
+ @ApiModelProperty("业务sid")
+ @NotBlank(message = "参数错误:businessSid")
+ private String businessSid;
+ /**
+ * 终止、驳回
+ */
+ @ApiModelProperty("任务意见")
+ private String comment;
+ /**
+ * 终止、撤回、驳回
+ */
+ @ApiModelProperty("用户Sid")
+ private String userSid;
+ /**
+ * 终止
+ */
+ @ApiModelProperty("流程实例Id")
+ private String instanceId;
+ /*@ApiModelProperty("用户Id")
+ private String userId;
+ @ApiModelProperty("节点")
+ private String targetKey;
+ @ApiModelProperty("流程变量信息")
+ private Map values = new HashMap<>();
+ @ApiModelProperty("审批人")
+ private String assignee;
+ @ApiModelProperty("候选人")
+ private List candidateUsers = new ArrayList<>();
+ @ApiModelProperty("审批组")
+ private List candidateGroups = new ArrayList<>();*/
+}
diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/flow/GetNodeQuery.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/flow/GetNodeQuery.java
new file mode 100644
index 0000000000..2aad664038
--- /dev/null
+++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/flow/GetNodeQuery.java
@@ -0,0 +1,27 @@
+package com.yxt.anrui.buscenter.api.bushandover.flow;
+
+import com.yxt.common.core.query.Query;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+import java.util.Map;
+
+/**
+ * @Author dimengzhe
+ * @Date 2022/6/28 10:42
+ * @Description
+ */
+@Data
+public class GetNodeQuery implements Query {
+ private static final long serialVersionUID = -5674867230708197611L;
+
+ @ApiModelProperty(value = "环节定义id")
+ private String taskDefKey;
+ @ApiModelProperty(value = "业务sid")
+ private String businessSid;
+
+ @ApiModelProperty(value = "分支字段及业务字段")
+ private Map formVariables;
+
+}
diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/flow/GetNodeVo.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/flow/GetNodeVo.java
new file mode 100644
index 0000000000..bfbc8b752e
--- /dev/null
+++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/flow/GetNodeVo.java
@@ -0,0 +1,25 @@
+package com.yxt.anrui.buscenter.api.bushandover.flow;
+
+import com.yxt.common.core.vo.Vo;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * @Author dimengzhe
+ * @Date 2022/6/28 11:09
+ * @Description
+ */
+@Data
+public class GetNodeVo implements Vo {
+ private static final long serialVersionUID = 8802774014747063504L;
+ @ApiModelProperty(value = "节点名称")
+ private String name;
+ @ApiModelProperty(value = "节点id")
+ private String id;
+ @ApiModelProperty(value = "审批组")
+ private List candidateGroups;
+ @ApiModelProperty(value = "是否是最后环节")
+ private String endTask;
+}
diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/flow/SubmitBusHandoverDto.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/flow/SubmitBusHandoverDto.java
new file mode 100644
index 0000000000..c02f5c9f44
--- /dev/null
+++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandover/flow/SubmitBusHandoverDto.java
@@ -0,0 +1,19 @@
+package com.yxt.anrui.buscenter.api.bushandover.flow;
+import com.yxt.anrui.buscenter.api.bushandover.BusHandoverInitDto;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @Author dimengzhe
+ * @Date 2022/6/27 13:38
+ * @Description
+ */
+@Data
+public class SubmitBusHandoverDto extends BusHandoverInitDto {
+ private static final long serialVersionUID = 378585162071125756L;
+ @ApiModelProperty("流程实例id")
+ private String instanceId;
+ @ApiModelProperty("任务id")
+ private String taskId;
+
+}
diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandoveritems/BusHandoverItemForDeliveryDto.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandoveritems/BusHandoverItemForDeliveryDto.java
index b710fed081..b68ae6e2ca 100644
--- a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandoveritems/BusHandoverItemForDeliveryDto.java
+++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandoveritems/BusHandoverItemForDeliveryDto.java
@@ -25,5 +25,6 @@ public class BusHandoverItemForDeliveryDto implements Dto {
private List policyPhoto;
@ApiModelProperty("是否是燃气车 0不是1是")
private String isFuelVehicle; // 是否是燃气车 0不是1是
-
+ @ApiModelProperty("材料是否完全")
+ private String completeState; // 是否是燃气车 0不是1是
}
diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandoveritems/BusHandoverItems.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandoveritems/BusHandoverItems.java
index 34dc0e455e..c8e756dbb2 100644
--- a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandoveritems/BusHandoverItems.java
+++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandoveritems/BusHandoverItems.java
@@ -26,22 +26,18 @@ public class BusHandoverItems extends BaseEntity {
private static final long serialVersionUID = 1L;
private String handoverSid;
-
private String modelSid;
private String modelName;
-
private String vinSid;
-
private String vinNo;
private String itemKey;
-
private String itemValue;
-
private String handoverPhoto;
-
private String policyPhoto;
@ApiModelProperty("是否是燃气车 0不是1是")
private String isFuelVehicle; // 是否是燃气车 0不是1是
@ApiModelProperty("资料是否完全0不全1全")
private String completeState;
+ @ApiModelProperty("主车还是挂车")
+ private String vehivelOrTrailer;
}
diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandoverwait/BusHandoverWaitFeign.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandoverwait/BusHandoverWaitFeign.java
index 8ccde90213..874867f501 100644
--- a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandoverwait/BusHandoverWaitFeign.java
+++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandoverwait/BusHandoverWaitFeign.java
@@ -36,7 +36,7 @@ public interface BusHandoverWaitFeign {
- /**********************************************************************************************************************/
+ /***********************************************移动端***********************************************************************/
@ApiOperation("待交车车辆列表")
@PostMapping("/pagerList")
@ResponseBody
@@ -46,4 +46,5 @@ public interface BusHandoverWaitFeign {
@PostMapping("/save")
@ResponseBody
ResultBean save(@RequestBody BusHandoverWaitDto dto);
+
}
diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandoverwait/BusHandoverWaitListVo.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandoverwait/BusHandoverWaitListVo.java
index fd3926ff98..0921eef1d0 100644
--- a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandoverwait/BusHandoverWaitListVo.java
+++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandoverwait/BusHandoverWaitListVo.java
@@ -13,4 +13,5 @@ public class BusHandoverWaitListVo implements Vo {
private static final long serialVersionUID = 4081821318088390025L;
private String vinNo;
private String vinSid;
+ private String sid;
}
diff --git a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandoverwait/BusHandoverWaitVo.java b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandoverwait/BusHandoverWaitVo.java
index 7fba3b1f6c..422ae2ef1b 100644
--- a/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandoverwait/BusHandoverWaitVo.java
+++ b/anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/bushandoverwait/BusHandoverWaitVo.java
@@ -18,11 +18,8 @@ public class BusHandoverWaitVo implements Vo {
@ApiModelProperty("合同编号")
private String contractNo;
- @ApiModelProperty("合同状态")
- private String contractStateValue;
-
- @ApiModelProperty("合同sid")
- private String contractSid;
+ @ApiModelProperty("车型")
+ private String modelName;
@ApiModelProperty("客户名称")
private String customerName;
@@ -30,5 +27,8 @@ public class BusHandoverWaitVo implements Vo {
@ApiModelProperty("付款方式")
private String payTypeValue;
+ @ApiModelProperty("业务状态")
+ private String payStateValue;
+
private List vinList = new ArrayList<>();
}
diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdiscountpackagehandover/BusDiscountpackageHandoverService.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdiscountpackagehandover/BusDiscountpackageHandoverService.java
index f36a7eda0d..9e03afcfc8 100644
--- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdiscountpackagehandover/BusDiscountpackageHandoverService.java
+++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busdiscountpackagehandover/BusDiscountpackageHandoverService.java
@@ -16,11 +16,13 @@ import com.yxt.anrui.buscenter.api.busdiscountpackagehandoverlist.BusDiscountpac
import com.yxt.anrui.buscenter.api.busdiscountpackagehandoverlist.BusDiscountpackageHandoverListDto;
import com.yxt.anrui.buscenter.biz.buscenterfile.BuscenterFileService;
import com.yxt.anrui.buscenter.biz.busdiscountpackagehandoverlist.BusDiscountpackageHandoverListService;
+import com.yxt.anrui.fin.api.fincompanyinvoicing.FinCompanyInvoicingVo;
import com.yxt.anrui.portal.api.sysrole.SysRoleFeign;
import com.yxt.anrui.portal.api.sysrole.SysRoleVo;
import com.yxt.anrui.portal.api.sysstaffinfo.SysStaffinfoDetailsVo;
import com.yxt.anrui.portal.api.sysstaffinfo.SysStaffinfoFeign;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign;
+import com.yxt.anrui.portal.api.sysuser.PrivilegeQuery;
import com.yxt.anrui.portal.api.sysuser.SysUser;
import com.yxt.anrui.portal.api.sysuser.SysUserFeign;
import com.yxt.common.base.config.component.DocPdfComponent;
@@ -77,10 +79,147 @@ public class BusDiscountpackageHandoverService extends MybatisBaseService createQueryWrapper(BusDiscountpackageHandoverQuery query) {
+// private QueryWrapper createQueryWrapper(BusDiscountpackageHandoverQuery query) {
+// QueryWrapper qw = new QueryWrapper<>();
+// //层级筛选
+// //=======================
+// PrivilegeQuery privilegeQuery = new PrivilegeQuery();
+// privilegeQuery.setOrgPath(query.getOrgSidPath());
+// privilegeQuery.setMenuSid(query.getMenuSid());
+// privilegeQuery.setMenuUrl(query.getMenuUrl());
+// privilegeQuery.setUserSid(query.getUserSid());
+// ResultBean defaultIdReltBean = sysUserFeign.selectPrivilegeLevel(privilegeQuery);
+// if (StringUtils.isNotBlank(defaultIdReltBean.getData())) {
+// //数据权限ID(1集团、2事业部、3分公司、4部门、5个人)
+// String orgSidPath = query.getOrgSidPath();
+// orgSidPath = orgSidPath + "/";
+// int i1 = orgSidPath.indexOf("/");
+// int i2 = orgSidPath.indexOf("/", i1 + 1);
+// int i3 = orgSidPath.indexOf("/", i2 + 1);
+// int i4 = orgSidPath.indexOf("/", i3 + 1);
+// String orgLevelKey = defaultIdReltBean.getData();
+// if ("1".equals(orgLevelKey)) {
+// orgSidPath = orgSidPath.substring(0, i1);
+// qw.like("orgSidPath", orgSidPath);
+// } else if ("2".equals(orgLevelKey)) {
+// orgSidPath = orgSidPath.substring(0, i2);
+// qw.like("orgSidPath", orgSidPath);
+// } else if ("3".equals(orgLevelKey)) {
+// orgSidPath = orgSidPath.substring(0, i3);
+// qw.like("orgSidPath", orgSidPath);
+// } else if ("4".equals(orgLevelKey)) {
+// orgSidPath = orgSidPath.substring(0, i4);
+// qw.like("orgSidPath", orgSidPath);
+// } else if ("5".equals(orgLevelKey)) {
+// qw.eq("createBySid", query.getUserSid());
+// } else {
+// PagerVo p = new PagerVo<>();
+// return p;
+// }
+// } else {
+// PagerVo p = new PagerVo<>();
+// return p;
+// }
+// //=======================
+//
+// qw.eq("useOrgSid", query.getUseOrgSid());
+// qw.eq("isDelete", 0);
+// if (StringUtils.isNotBlank(query.getCustomerName())) {
+// qw.like("customerName", query.getCustomerName());
+// }
+// if (StringUtils.isNotBlank(query.getContractNo())) {
+// qw.like("contractNo", query.getContractNo());
+// }
+// if (StringUtils.isNotBlank(query.getRecName())) {
+// qw.like("recName", query.getRecName());
+// }
+// if (StringUtils.isNotBlank(query.getRecUserSid())) {
+// qw.eq("recUserSid", query.getRecUserSid());
+// if (null != query.getState()) {
+// if (query.getState() == 3) {
+// qw.eq("transferStateKey", "004");
+// } else {
+// qw.eq("transferStateKey", "003");
+// }
+// }
+// } else if (null != query.getState()) {
+// if (query.getState() == 3) {
+// qw.eq("transferStateKey", "004");
+// } else {
+// qw.ne("transferStateKey", "004");
+// }
+// }
+// String createStartTime = query.getCreateStartTime();
+// String createEndTime = query.getCreateEndTime();
+// qw.apply(StringUtils.isNotEmpty(createStartTime), "date_format (createTime,'%Y-%m-%d') >= date_format('" + createStartTime + "','%Y-%m-%d')").
+// apply(StringUtils.isNotEmpty(createEndTime), "date_format (createTime,'%Y-%m-%d') <= date_format('" + createEndTime + "','%Y-%m-%d')"
+// );
+// return qw;
+// }
+
+ /**
+ * 查询优惠包交接管理分页列表
+ *
+ * @param pq
+ * @return
+ */
+ public PagerVo listPage(PagerQuery pq) {
+
+ //从传入参数中取查询条件
+ BusDiscountpackageHandoverQuery query = pq.getParams();
QueryWrapper qw = new QueryWrapper<>();
- qw.eq("useOrgSid", query.getUseOrgSid());
- qw.eq("isDelete", 0);
+ //层级筛选
+ //=======================
+ PrivilegeQuery privilegeQuery = new PrivilegeQuery();
+ privilegeQuery.setOrgPath(query.getOrgSidPath());
+ privilegeQuery.setMenuSid(query.getMenuSid());
+ privilegeQuery.setMenuUrl(query.getMenuUrl());
+ privilegeQuery.setUserSid(query.getUserSid());
+ ResultBean defaultIdReltBean = sysUserFeign.selectPrivilegeLevel(privilegeQuery);
+ if (StringUtils.isNotBlank(defaultIdReltBean.getData())) {
+ //数据权限ID(1集团、2事业部、3分公司、4部门、5个人)
+ String orgSidPath = query.getOrgSidPath();
+ orgSidPath = orgSidPath + "/";
+ int i1 = orgSidPath.indexOf("/");
+ int i2 = orgSidPath.indexOf("/", i1 + 1);
+ int i3 = orgSidPath.indexOf("/", i2 + 1);
+ int i4 = orgSidPath.indexOf("/", i3 + 1);
+ String orgLevelKey = defaultIdReltBean.getData();
+ if ("1".equals(orgLevelKey)) {
+ orgSidPath = orgSidPath.substring(0, i1);
+ qw.like("orgSidPath", orgSidPath);
+ } else if ("2".equals(orgLevelKey)) {
+ orgSidPath = orgSidPath.substring(0, i2);
+ qw.like("orgSidPath", orgSidPath);
+ } else if ("3".equals(orgLevelKey)) {
+ orgSidPath = orgSidPath.substring(0, i3);
+ qw.like("orgSidPath", orgSidPath);
+ } else if ("4".equals(orgLevelKey)) {
+ orgSidPath = orgSidPath.substring(0, i4);
+ qw.like("orgSidPath", orgSidPath);
+ } else if ("5".equals(orgLevelKey)) {
+ qw.eq("createBySid", query.getUserSid());
+ if (query.getState() == 3) {
+ qw.eq("transferStateKey", "004");
+ } else {
+ qw.eq("transferStateKey", "003");
+ }
+ } else {
+ PagerVo p = new PagerVo<>();
+ return p;
+ }
+ if (!"5".equals(orgLevelKey)) {
+ if (query.getState() == 3) {
+ qw.eq("transferStateKey", "004");
+ } else {
+ qw.ne("transferStateKey", "004");
+ }
+ }
+ } else {
+ PagerVo p = new PagerVo<>();
+ return p;
+ }
+ //=======================
if (StringUtils.isNotBlank(query.getCustomerName())) {
qw.like("customerName", query.getCustomerName());
}
@@ -90,54 +229,12 @@ public class BusDiscountpackageHandoverService extends MybatisBaseService= date_format('" + createStartTime + "','%Y-%m-%d')").
apply(StringUtils.isNotEmpty(createEndTime), "date_format (createTime,'%Y-%m-%d') <= date_format('" + createEndTime + "','%Y-%m-%d')"
);
- return qw;
- }
-
- /**
- * 查询优惠包交接管理分页列表
- *
- * @param pq
- * @return
- */
- public PagerVo listPage(PagerQuery pq) {
-
- //从传入参数中取查询条件
- BusDiscountpackageHandoverQuery query = pq.getParams();
- //取到当前登录用户的sid
- String userSid = query.getUserSid();
- //根据当前用户sid查询用户角色
- List roleVoList = sysRoleFeign.fetchByUserSid(userSid).getData();
- //判断当前登录用户角色是否为销售专员
- if (null != roleVoList) {
- for (SysRoleVo sysRoleVo : roleVoList) {
- //如果当前登录用户角色包含分公司销售专员,将当前用户sid保存到查询条件中
- if ("分公司销售专员".equals(sysRoleVo.getName())) {
- query.setRecUserSid(userSid);
- }
- }
- }
- QueryWrapper qw = createQueryWrapper(query);
+ /****************************************************************************************************************/
IPage page = PagerUtil.queryToPage(pq);
IPage pagging = baseMapper.selectPageVo(page, qw);
List records = pagging.getRecords();
diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bushandover/BusHandoverMapper.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bushandover/BusHandoverMapper.java
index 6cf7318b5b..8370d906fc 100644
--- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bushandover/BusHandoverMapper.java
+++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bushandover/BusHandoverMapper.java
@@ -5,10 +5,12 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.yxt.anrui.buscenter.api.bushandover.*;
+import com.yxt.anrui.buscenter.api.bushandover.app.AppDeliveryListVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
+import java.util.Map;
/**
* Project: anrui-buscenter(业务中心)
@@ -39,6 +41,10 @@ public interface BusHandoverMapper extends BaseMapper {
int selectNum(String bill);
+ IPage selectAppListPageVo(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw);
+
+ int updateFlowFiled(Map map);
+
/*//@Update("update bus_handover set name=#{msg} where id=#{id}")
//IPage voPage(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw);
diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bushandover/BusHandoverMapper.xml b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bushandover/BusHandoverMapper.xml
index dd1ca8c473..60d3f407e7 100644
--- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bushandover/BusHandoverMapper.xml
+++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bushandover/BusHandoverMapper.xml
@@ -34,24 +34,24 @@
@@ -64,7 +64,11 @@
bh.deliverDate,
bh.deliverAddress,
bh.idNo,
- bh.remarks
+ bh.remarks,
+ bh.createBySid as userSid,
+ bh.orgSidPath as orgPath,
+ bh.procInstId as procInsId,
+ bh.taskId
from bus_handover bh
where bh.sid = #{sid}
@@ -74,6 +78,21 @@
set remarks = #{remarks}
where sid = #{sid}
+
+ UPDATE bus_handover
+ SET nodeState=#{nodeState}
+ , nodeSid=#{taskDefKey}
+
+ , procDefId=#{procDefId}
+
+
+ , procInstId=#{procInsId}
+
+
+ , taskId=#{taskId}
+
+ WHERE sid = #{sid}
+
@@ -91,9 +112,9 @@
+
+
\ No newline at end of file
diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bushandover/BusHandoverRest.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bushandover/BusHandoverRest.java
index 729159edc4..e2d982a9cc 100644
--- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bushandover/BusHandoverRest.java
+++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bushandover/BusHandoverRest.java
@@ -1,6 +1,12 @@
package com.yxt.anrui.buscenter.biz.bushandover;
+import cn.hutool.core.bean.BeanUtil;
import com.yxt.anrui.buscenter.api.bushandover.*;
+import com.yxt.anrui.buscenter.api.bushandover.app.*;
+import com.yxt.anrui.buscenter.api.bushandover.flow.*;
+import com.yxt.anrui.buscenter.api.flow.FlowTaskVo;
+import com.yxt.anrui.flowable.api.utils.ProcDefEnum;
+import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
@@ -53,8 +59,8 @@ public class BusHandoverRest implements BusHandoverFeign {
}
@Override
- public ResultBean uploadPicture(BusHandoverDetailDto dto) {
- return busHandoverService.uploadPicture(dto);
+ public ResultBean deliveryVehicle(BusHandoverDetailDto dto) {
+ return busHandoverService.deliveryVehicle(dto);
}
@Override
@@ -62,12 +68,42 @@ public class BusHandoverRest implements BusHandoverFeign {
return busHandoverService.createPdf(sid);
}
+ @Override
+ public ResultBean getDeliveryBill(AppDeliveryConQuery query) {
+ return busHandoverService.getDeliveryBill(query);
+ }
+
+ @Override
+ public ResultBean saveDeliverybill(AppDeliveryDto dto) throws Exception {
+ return busHandoverService.appsaveDeliverybill(dto);
+ }
+
+ @Override
+ public ResultBean> appgetDeliveryConfirmList(PagerQuery pagerQuery) {
+ return busHandoverService.appgetDeliveryConfirmList(pagerQuery);
+ }
+
+ @Override
+ public ResultBean saveGcBill(AppGcBillDto dto) {
+ return busHandoverService.saveGcBill(dto);
+ }
@Override
- public ResultBean> saveDeliverybill(BusHandoverDto dto) {
- return busHandoverService.saveDeliverybill(dto);
+ public ResultBean saveDeliveryConfirmGcInfo(BusHandoverInitDto dto) {
+ return busHandoverService.saveDeliveryConfirmGcInfo(dto);
}
+ @Override
+ public ResultBean getDeliveryConfirmGcInfo(String sid) {
+ return busHandoverService.getDeliveryConfirmGcInfo(sid);
+ }
+
+
+// @Override
+// public ResultBean> saveDeliverybill(BusHandoverDto dto) {
+// return busHandoverService.saveDeliverybill(dto);
+// }
+
@Override
public ResultBean> getDeliveryConfirmList(PagerQuery pagerQuery) {
ResultBean> rb = ResultBean.fireFail();
@@ -81,7 +117,7 @@ public class BusHandoverRest implements BusHandoverFeign {
}
@Override
- public ResultBean saveDeliveryConfirmInfo(BusHandoverInitDto dto) {
+ public ResultBean saveDeliveryConfirmInfo(BusHandoverInitDto dto) {
return busHandoverService.saveDeliveryConfirmInfo(dto);
}
@@ -89,6 +125,51 @@ public class BusHandoverRest implements BusHandoverFeign {
public ResultBean details(String sid) {
return busHandoverService.details(sid);
}
+
+ /*******************************流程接口*****************************************/
+
+ @Override
+ public ResultBean submitRecordApplication(SubmitBusHandoverDto dto) {
+ return busHandoverService.submitRecordApplication(dto);
+ }
+
+ @Override
+ public ResultBean complete(BusHandoverCompleteDto dto) {
+ BusinessVariables bv = new BusinessVariables();
+ BeanUtil.copyProperties(dto, bv);
+ bv.setModelId(ProcDefEnum.BUSHANDOVER.getProDefId());
+ return busHandoverService.complete(bv);
+ }
+
+ @Override
+ public ResultBean revokeProcess(BusHandoverTaskQuery query) {
+ return busHandoverService.revokeProcess(query);
+ }
+
+ @Override
+ public ResultBean taskReject(BusHandoverTaskQuery query) {
+ return busHandoverService.taskReject(query);
+ }
+
+ @Override
+ public ResultBean breakProcess(BusHandoverTaskQuery query) {
+ return busHandoverService.breakProcess(query);
+ }
+
+ @Override
+ public ResultBean flowRecord(String procInsId) {
+ return busHandoverService.flowRecord(procInsId);
+ }
+
+ @Override
+ public ResultBean> getNextNodesForSubmit(GetNodeQuery query) {
+ return busHandoverService.getNextNodesForSubmit(query);
+ }
+
+ @Override
+ public ResultBean> getPreviousNodesForReject(GetNodeQuery query) {
+ return busHandoverService.getPreviousNodesForReject(query);
+ }
/*@Autowired
private FileUploadComponent fileUploadComponent;
@Autowired
diff --git a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bushandover/BusHandoverService.java b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bushandover/BusHandoverService.java
index 9df60a0e20..2e2dc47a5e 100644
--- a/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bushandover/BusHandoverService.java
+++ b/anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/bushandover/BusHandoverService.java
@@ -2,12 +2,16 @@ package com.yxt.anrui.buscenter.biz.bushandover;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.date.DateUtil;
+import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.google.common.util.concurrent.ThreadFactoryBuilder;
import com.yxt.anrui.base.api.basemodelconfig.BaseModelConfigFeign;
import com.yxt.anrui.base.api.basemodelconfig.BaseModelConfigSelectVo;
-import com.yxt.anrui.base.api.basevehicle.BaseExistingCarListVo;
+import com.yxt.anrui.base.api.basetrailer.BaseTrailer;
+import com.yxt.anrui.base.api.basetrailer.BaseTrailerFeign;
+import com.yxt.anrui.base.api.basetrailermodel.BaseTrailerModelDetailsVo;
+import com.yxt.anrui.base.api.basetrailermodel.BaseTrailerModelFeign;
import com.yxt.anrui.base.api.basevehicle.BaseVehicleFeign;
import com.yxt.anrui.base.api.basevehicle.BaseVehicleSelectVo;
import com.yxt.anrui.base.api.commoncontract.CommonContract;
@@ -19,13 +23,17 @@ import com.yxt.anrui.base.common.utils.domain.BillNo;
import com.yxt.anrui.buscenter.api.buscenterfile.BuscenterFile;
import com.yxt.anrui.buscenter.api.buscenterfile.BuscenterFileEnum;
import com.yxt.anrui.buscenter.api.bushandover.*;
+import com.yxt.anrui.buscenter.api.bushandover.app.*;
+import com.yxt.anrui.buscenter.api.bushandover.flow.BusHandoverTaskQuery;
+import com.yxt.anrui.buscenter.api.bushandover.flow.GetNodeQuery;
+import com.yxt.anrui.buscenter.api.bushandover.flow.GetNodeVo;
+import com.yxt.anrui.buscenter.api.bushandover.flow.SubmitBusHandoverDto;
import com.yxt.anrui.buscenter.api.bushandoveritems.*;
import com.yxt.anrui.buscenter.api.bushandoverpreparevehicle.BusHandoverPrepareVehicle;
import com.yxt.anrui.buscenter.api.bushandoverwait.BusHandoverWait;
+import com.yxt.anrui.buscenter.api.bussalesorder.BusSalesOrder;
import com.yxt.anrui.buscenter.api.bussalesorder.app.order.AppOrderDetailsVo;
import com.yxt.anrui.buscenter.api.bussalesorder.app.order.AppOrderModelInfoVo;
-import com.yxt.anrui.buscenter.api.busvehicledatahandover.BusVehicleDataHandoverDetailsVo;
-import com.yxt.anrui.buscenter.api.busvehiclehandoverdata.BusVehicleHandoverDataDetailsVo;
import com.yxt.anrui.buscenter.api.busvehicleinformation.BusVehicleInformationVo;
import com.yxt.anrui.buscenter.api.busvehicleinformationhandover.BusVehicleInformationHandoverDetailsListVo;
import com.yxt.anrui.buscenter.biz.buscenterfile.BuscenterFileService;
@@ -39,6 +47,13 @@ import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTempFeign;
import com.yxt.anrui.crm.api.crmcustomertemp.CrmCustomerTempVo;
import com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoice;
import com.yxt.anrui.fin.api.finvehicleinvoice.FinVehicleInvoiceFeign;
+import com.yxt.anrui.flowable.api.flow.FlowableFeign;
+import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo;
+import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign;
+import com.yxt.anrui.flowable.api.flowtask.FlowTaskVo;
+import com.yxt.anrui.flowable.api.flowtask.LatestTaskVo;
+import com.yxt.anrui.flowable.api.utils.ProcDefEnum;
+import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo;
import com.yxt.anrui.portal.api.sysstaffinfo.SysStaffinfoDetailsVo;
@@ -47,6 +62,8 @@ import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign;
import com.yxt.anrui.portal.api.sysuser.SysUser;
import com.yxt.anrui.portal.api.sysuser.SysUserFeign;
import com.yxt.anrui.portal.api.sysuser.SysUserVo;
+import com.yxt.anrui.riskcenter.api.loansolutions.LoanSolutions;
+import com.yxt.anrui.riskcenter.api.loansolutions.LoanSolutionsFeign;
import com.yxt.common.base.config.component.DocPdfComponent;
import com.yxt.common.base.config.component.FileUploadComponent;
import com.yxt.common.base.service.MybatisBaseService;
@@ -55,14 +72,19 @@ import com.yxt.common.base.utils.WordConvertUtils;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
+import com.yxt.messagecenter.api.message.MessageFeign;
+import com.yxt.messagecenter.api.message.MessageFlowVo;
+import com.yxt.messagecenter.api.message.MessageFlowableQuery;
import org.apache.commons.lang3.StringUtils;
import org.apache.tomcat.util.threads.ThreadPoolExecutor;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import org.springframework.util.CollectionUtils;
import java.io.File;
import java.io.InputStream;
import java.text.MessageFormat;
+import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.concurrent.*;
@@ -84,6 +106,8 @@ import java.util.stream.Collectors;
@Service
public class BusHandoverService extends MybatisBaseService {
+ @Autowired
+ private FlowableFeign flowableFeign;
@Autowired
private SysStaffOrgFeign sysStaffOrgFeign;
@Autowired
@@ -121,6 +145,19 @@ public class BusHandoverService extends MybatisBaseService> saveDeliverybill(BusHandoverDto dto) {
ResultBean> rb = ResultBean.fireFail();
@@ -573,6 +610,14 @@ public class BusHandoverService extends MybatisBaseService listVos = busHandoverItemsService.getDeliveryConfirmInfo(sid);
@@ -584,9 +629,16 @@ public class BusHandoverService extends MybatisBaseService stringList = Arrays.asList(handoverPhoto.split(",")).stream().map(c -> fileUploadComponent.getUrlPrefix() + c).collect(Collectors.toList());
v.setDeliveryImages(stringList);
}
- if (StringUtils.isNotBlank(policyPhoto)) {
- List policyPhotoList = Arrays.asList(policyPhoto.split(",")).stream().map(c -> fileUploadComponent.getUrlPrefix() + c).collect(Collectors.toList());
- v.setPolicyImages(policyPhotoList);
+ //保单照片
+ BusHandoverPrepareVehicle busHandoverPrepareVehicle = busHandoverPrepareVehicleService.fetchDetailsByVinSid(v.getVinSid());
+ if (null != busHandoverPrepareVehicle) {
+ List fileList = buscenterFileService.selectByLinkSid(busHandoverPrepareVehicle.getSid(), BuscenterFileEnum.HANDOVER_POLICY.getAttachType());
+ fileList.removeAll(Collections.singleton(null));
+ if (!fileList.isEmpty()) {
+ List policyPhotoList = fileList.stream().map(c -> fileUploadComponent.getUrlPrefix() + c.getFilePath()).
+ collect(Collectors.toList());
+ v.setPolicyImages(policyPhotoList);
+ }
}
vo.setModelName(v.getModelName());
}
@@ -599,20 +651,27 @@ public class BusHandoverService extends MybatisBaseService entrustImages = fileList.stream().map(c -> fileUploadComponent.getUrlPrefix() + c.getFilePath()).collect(Collectors.toList());
vo.setEntrustImages(entrustImages);
}
- //委托人身份证(正反面)
- fileList = buscenterFileService.selectByLinkSid(sid, BuscenterFileEnum.IDCARD_IMAGES.getAttachType());
- fileList.removeAll(Collections.singleton(null));
- if (!fileList.isEmpty()) {
- List idCardImages = fileList.stream().map(c -> fileUploadComponent.getUrlPrefix() + c.getFilePath()).collect(Collectors.toList());
- vo.setIdCardImages(idCardImages);
- }
+// //委托提车授权书
+// fileList = buscenterFileService.selectByLinkSid(sid, BuscenterFileEnum.ENTRUST_IMAGES.getAttachType());
+// fileList.removeAll(Collections.singleton(null));
+// if (!fileList.isEmpty()) {
+// List entrustImages = fileList.stream().map(c -> fileUploadComponent.getUrlPrefix() + c.getFilePath()).collect(Collectors.toList());
+// vo.setEntrustImages(entrustImages);
+// }
+// //委托人身份证(正反面)
+// fileList = buscenterFileService.selectByLinkSid(sid, BuscenterFileEnum.IDCARD_IMAGES.getAttachType());
+// fileList.removeAll(Collections.singleton(null));
+// if (!fileList.isEmpty()) {
+// List idCardImages = fileList.stream().map(c -> fileUploadComponent.getUrlPrefix() + c.getFilePath()).collect(Collectors.toList());
+// vo.setIdCardImages(idCardImages);
+// }
//交车资料确认单
fileList = buscenterFileService.selectByLinkSid(sid, BuscenterFileEnum.ENTRUST_CONFIRM_IMAGES.getAttachType());
fileList.removeAll(Collections.singleton(null));
@@ -632,48 +691,52 @@ public class BusHandoverService extends MybatisBaseService saveDeliveryConfirmInfo(BusHandoverInitDto dto) {
ResultBean rb = ResultBean.fireFail();
BusHandover busHandover = fetchBySid(dto.getSid());
if (busHandover == null) {
return rb.setMsg("该记录不存在");
}
-// busHandover.setRemarks(dto.getRemarks());
+ busHandover.setRemarks(dto.getRemarks());
List carList = dto.getCarList();
carList.removeAll(Collections.singleton(null));
if (!carList.isEmpty()) {
+
for (BusHandoverInitListDto busHandoverInitListDto : carList) {
String vinSid = busHandoverInitListDto.getVinSid();
List policyImagesList = busHandoverInitListDto.getPolicyImages();
List deliveryImagesList = busHandoverInitListDto.getDeliveryImages();
String policyImages = "";
String deliveryImages = "";
- if (!policyImagesList.isEmpty()) {
- policyImages = String.join(",", policyImagesList).replaceAll(fileUploadComponent.getUrlPrefix(), "");
- }
if (!deliveryImagesList.isEmpty()) {
deliveryImages = String.join(",", deliveryImagesList).replaceAll(fileUploadComponent.getUrlPrefix(), "");
}
busHandoverItemsService.updateByMainSid(dto.getSid(), vinSid, policyImages, deliveryImages);
+ if (!policyImagesList.isEmpty()) {
+ BusHandoverPrepareVehicle busHandoverPrepareVehicle = busHandoverPrepareVehicleService.fetchDetailsByVinSid(busHandoverInitListDto.getVinSid());
+ if (null != busHandoverPrepareVehicle) {
+ buscenterFileService.delByLinkSidOrType(busHandoverPrepareVehicle.getSid(), BuscenterFileEnum.HANDOVER_POLICY.getAttachType());
+ buscenterFileService.saveAll(busHandoverPrepareVehicle.getSid(), policyImagesList, BuscenterFileEnum.HANDOVER_POLICY.getAttachType());
+ }
+ }
}
}
//删除附件表中关于该linkSid的文件
- buscenterFileService.deleteByLinkSid(dto.getSid());
+ buscenterFileService.delByLinkSidOrType(dto.getSid(), BuscenterFileEnum.ENTRUST_CONFIRM_IMAGES.getAttachType());
+ buscenterFileService.delByLinkSidOrType(dto.getSid(), BuscenterFileEnum.RECEIVE_CAR_IMAGES.getAttachType());
+ buscenterFileService.delByLinkSidOrType(dto.getSid(), BuscenterFileEnum.ENTRUST_IDCARD_IMAGES.getAttachType());
+ buscenterFileService.delByLinkSidOrType(dto.getSid(), BuscenterFileEnum.EXIT_TICKET_IMAGES.getAttachType());
List entrustConfirmImages = dto.getEntrustConfirmImages();
if (!entrustConfirmImages.isEmpty()) {
buscenterFileService.saveAll(dto.getSid(), entrustConfirmImages, BuscenterFileEnum.ENTRUST_CONFIRM_IMAGES.getAttachType());
}
- List idCardImages = dto.getIdCardImages();
- if (!idCardImages.isEmpty()) {
- buscenterFileService.saveAll(dto.getSid(), idCardImages, BuscenterFileEnum.IDCARD_IMAGES.getAttachType());
- }
List receiveCarImages = dto.getReceiveCarImages();
if (!receiveCarImages.isEmpty()) {
buscenterFileService.saveAll(dto.getSid(), receiveCarImages, BuscenterFileEnum.RECEIVE_CAR_IMAGES.getAttachType());
}
List entrustImages = dto.getEntrustImages();
if (!entrustImages.isEmpty()) {
- buscenterFileService.saveAll(dto.getSid(), entrustImages, BuscenterFileEnum.ENTRUST_IMAGES.getAttachType());
+ buscenterFileService.saveAll(dto.getSid(), entrustImages, BuscenterFileEnum.ENTRUST_IDCARD_IMAGES.getAttachType());
}
List exitTicketImages = dto.getExitTicketImages();
if (!exitTicketImages.isEmpty()) {
@@ -682,7 +745,7 @@ public class BusHandoverService extends MybatisBaseService details(String sid) {
@@ -691,6 +754,14 @@ public class BusHandoverService extends MybatisBaseService listVos = busHandoverItemsService.getDeliveryConfirmInfo(sid);
listVos.removeAll(Collections.singleton(null));
@@ -701,9 +772,20 @@ public class BusHandoverService extends MybatisBaseService stringList = Arrays.asList(handoverPhoto.split(",")).stream().map(c -> fileUploadComponent.getUrlPrefix() + c).collect(Collectors.toList());
v.setDeliveryImages(stringList);
}
- if (StringUtils.isNotBlank(policyPhoto)) {
- List policyPhotoList = Arrays.asList(policyPhoto.split(",")).stream().map(c -> fileUploadComponent.getUrlPrefix() + c).collect(Collectors.toList());
- v.setPolicyImages(policyPhotoList);
+// if (StringUtils.isNotBlank(policyPhoto)) {
+// List policyPhotoList = Arrays.asList(policyPhoto.split(",")).stream().map(c -> fileUploadComponent.getUrlPrefix() + c).collect(Collectors.toList());
+// v.setPolicyImages(policyPhotoList);
+// }
+ //保单照片
+ BusHandoverPrepareVehicle busHandoverPrepareVehicle = busHandoverPrepareVehicleService.fetchDetailsByVinSid(v.getVinSid());
+ if (null != busHandoverPrepareVehicle) {
+ List fileList = buscenterFileService.selectByLinkSid(busHandoverPrepareVehicle.getSid(), BuscenterFileEnum.HANDOVER_POLICY.getAttachType());
+ fileList.removeAll(Collections.singleton(null));
+ if (!fileList.isEmpty()) {
+ List policyPhotoList = fileList.stream().map(c -> fileUploadComponent.getUrlPrefix() + c.getFilePath()).
+ collect(Collectors.toList());
+ v.setPolicyImages(policyPhotoList);
+ }
}
vo.setModelName(v.getModelName());
}
@@ -716,20 +798,28 @@ public class BusHandoverService extends MybatisBaseService entrustImages = fileList.stream().map(c -> fileUploadComponent.getUrlPrefix() + c.getFilePath()).collect(Collectors.toList());
vo.setEntrustImages(entrustImages);
}
- //委托人身份证(正反面)
- fileList = buscenterFileService.selectByLinkSid(sid, BuscenterFileEnum.IDCARD_IMAGES.getAttachType());
- fileList.removeAll(Collections.singleton(null));
- if (!fileList.isEmpty()) {
- List idCardImages = fileList.stream().map(c -> fileUploadComponent.getUrlPrefix() + c.getFilePath()).collect(Collectors.toList());
- vo.setIdCardImages(idCardImages);
- }
+// //委托提车授权书
+// fileList = buscenterFileService.selectByLinkSid(sid, BuscenterFileEnum.ENTRUST_IMAGES.getAttachType());
+// fileList.removeAll(Collections.singleton(null));
+// if (!fileList.isEmpty()) {
+// List entrustImages = fileList.stream().map(c -> fileUploadComponent.getUrlPrefix() + c.getFilePath()).collect(Collectors.toList());
+// vo.setEntrustImages(entrustImages);
+// }
+// //委托人身份证(正反面)
+// fileList = buscenterFileService.selectByLinkSid(sid, BuscenterFileEnum.IDCARD_IMAGES.getAttachType());
+// fileList.removeAll(Collections.singleton(null));
+// if (!fileList.isEmpty()) {
+// List idCardImages = fileList.stream().map(c -> fileUploadComponent.getUrlPrefix() + c.getFilePath()).collect(Collectors.toList());
+// vo.setIdCardImages(idCardImages);
+// }
+
//交车资料确认单
fileList = buscenterFileService.selectByLinkSid(sid, BuscenterFileEnum.ENTRUST_CONFIRM_IMAGES.getAttachType());
fileList.removeAll(Collections.singleton(null));
@@ -906,16 +996,20 @@ public class BusHandoverService extends MybatisBaseService busItemvos = dto.getBusItemvos();
for (BusHandoverItemForDeliveryDto busItemvo : busItemvos) {
BusHandoverItems items = new BusHandoverItems();
BeanUtil.copyProperties(busItemvo, items);
items.setHandoverSid(sid);
- busHandoverItemsService.insert(items);
+ int insert = busHandoverItemsService.insert(items);
+ if (insert > 0) {
+ //逻辑删除待交车车辆列表中勾选车辆
+ busHandoverWaitService.deleteByVinSid(dto.getContractNo(), busItemvo.getVinSid());
+ }
}
-
//打印pdf
List filePaths = createPdf(entity.getSid()).getData();
List fileList = new ArrayList<>();
@@ -994,12 +1088,14 @@ public class BusHandoverService extends MybatisBaseService resultBean = crmCustomerTempFeign.fetchSid(customerSid);
- if (resultBean.getSuccess()) {
- if (null != resultBean.getData()) {
- CrmCustomerTempVo data = resultBean.getData();
- if (StringUtils.isNotBlank(data.getIDNumber())) {
- pdfVo.setIdNumber(data.getIDNumber());
+ if (StringUtils.isNotBlank(customerSid)) {
+ ResultBean resultBean = crmCustomerTempFeign.fetchSid(customerSid);
+ if (resultBean.getSuccess()) {
+ if (null != resultBean.getData()) {
+ CrmCustomerTempVo data = resultBean.getData();
+ if (StringUtils.isNotBlank(data.getIDNumber())) {
+ pdfVo.setIdNumber(data.getIDNumber());
+ }
}
}
}
@@ -1288,15 +1384,20 @@ public class BusHandoverService extends MybatisBaseService stringList = Arrays.asList(handoverPhoto.split(",")).stream().map(c -> fileUploadComponent.getUrlPrefix() + c).collect(Collectors.toList());
detailsVo.setHandoverPhoto(stringList);
}
- if (StringUtils.isNotBlank(policyPhoto)) {
- List policyPhotoList = Arrays.asList(policyPhoto.split(",")).stream().map(c -> fileUploadComponent.getUrlPrefix() + c).collect(Collectors.toList());
- detailsVo.setPolicyPhoto(policyPhotoList);
+ BusHandoverPrepareVehicle busHandoverPrepareVehicle = busHandoverPrepareVehicleService.fetchDetailsByVinSid(v.getVinSid());
+ if (null != busHandoverPrepareVehicle) {
+ List fileList = buscenterFileService.selectByLinkSid(busHandoverPrepareVehicle.getSid(), BuscenterFileEnum.HANDOVER_POLICY.getAttachType());
+ fileList.removeAll(Collections.singleton(null));
+ if (!fileList.isEmpty()) {
+ List policyPhotoList = fileList.stream().map(c -> fileUploadComponent.getUrlPrefix() + c.getFilePath()).
+ collect(Collectors.toList());
+ detailsVo.setHandoverPhoto(policyPhotoList);
+ }
}
items.add(detailsVo);
}
@@ -1339,7 +1440,7 @@ public class BusHandoverService extends MybatisBaseService uploadPicture(BusHandoverDetailDto dto) {
+ public ResultBean deliveryVehicle(BusHandoverDetailDto dto) {
ResultBean rb = ResultBean.fireFail();
String sid = dto.getSid();
BusHandover entity = fetchBySid(sid);
@@ -1349,7 +1450,6 @@ public class BusHandoverService extends MybatisBaseService 0) {
StringBuffer sbHandoverPhoto = new StringBuffer();
- StringBuffer sbPolicyPhoto = new StringBuffer();
for (BusHandoverItemListDetailsDto itemDto : dto.getItems()) {
BusHandoverItems items = busHandoverItemsService.fetchBySid(itemDto.getSid());
if (!itemDto.getHandoverPhoto().isEmpty()) {
@@ -1360,15 +1460,18 @@ public class BusHandoverService extends MybatisBaseService policyPhoto = itemDto.getPolicyPhoto();
+ if (!policyPhoto.isEmpty()) {
+ buscenterFileService.saveAll(busHandoverPrepareVehicle.getSid(), policyPhoto, BuscenterFileEnum.HANDOVER_POLICY.getAttachType());
+ }
}
- sbPolicyPhoto.delete(sbPolicyPhoto.length() - 1, sbPolicyPhoto.length());
- items.setPolicyPhoto(sbPolicyPhoto.toString());
}
- busHandoverItemsService.updateById(items);
+
}
}
//删除附件表中关于该linkSid的文件
@@ -1392,7 +1495,980 @@ public class BusHandoverService extends MybatisBaseService getDeliveryBill(AppDeliveryConQuery query) {
+ ResultBean rb = ResultBean.fireFail();
+ AppDeliveryConVo vo = new AppDeliveryConVo();
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+ vo.setDate(sdf.format(new Date()));
+ vo.setUserSid(query.getUserSid());
+ vo.setOrgPath(query.getOrgPath());
+ List voList = new ArrayList<>();
+ List sids = query.getList();
+ sids.removeAll(Collections.singleton(null));
+ for (String sid : sids) {
+ //遍历sid从待交车列表中查询信息
+ BusHandoverWait handoverWait = busHandoverWaitService.fetchBySid(sid);
+ if (handoverWait != null) {
+ AppDeliveryConListVo itemVo = new AppDeliveryConListVo();
+ StringBuffer sb = new StringBuffer();
+ StringBuffer sbKey = new StringBuffer();
+ //从交车准备中查询交车资料
+ BusHandoverPrepareVehicle prepareVehicle = busHandoverPrepareVehicleService.fetchDetailsByVinSid(handoverWait.getVinSid());
+ if (null != prepareVehicle) {
+ if (prepareVehicle.getInvoicingState() > 0) {
+ sb.append("发票").append("、");
+ sbKey.append("001").append("、");
+ }
+ if (prepareVehicle.getCertificateState() > 0) {
+ sb.append("合格证").append("、");
+ sbKey.append("002").append("、");
+ }
+ if (prepareVehicle.getOnBoardDataState() > 0) {
+ BusVehicleInformationHandoverDetailsListVo data = busVehicleInformationHandoverService.detailsByVinSid(handoverWait.getVinSid()).getData();
+ if (null != data) {
+ if (data.getInformations().size() > 0) {
+ List informations = data.getInformations();
+ for (BusVehicleInformationVo information : informations) {
+ sb.append(information.getVehicleHandoverData());
+ if (StringUtils.isNotBlank(information.getVehicleHandoverData())) {
+ sb.append("、");
+ }
+ }
+ if (informations.size() < 2) {
+ for (BusVehicleInformationVo information : informations) {
+ //车钥匙
+ if (Integer.parseInt(information.getVehicleKeyNum()) > 0) {
+ sbKey.append("003").append("、");
+ }
+ //一致性证书
+ if (Integer.parseInt(information.getCertificate()) > 0) {
+ sbKey.append("004").append("、");
+ }
+ if (Integer.parseInt(information.getApplyForm()) > 0) {
+ sbKey.append("005").append("、");
+ }
+ if (Integer.parseInt(information.getManual()) > 0) {
+ sbKey.append("006").append("、");
+ }
+ if (Integer.parseInt(information.getEnvironmentalList()) > 0) {
+ sbKey.append("007").append("、");
+ }
+ if (Integer.parseInt(information.getDirverCard()) > 0) {
+ sbKey.append("008").append("、");
+ }
+ if (Integer.parseInt(information.getGasCertificate()) > 0) {
+ if ("0".equals(data.getIsFuelVehicle())) {
+ sbKey.append("009").append("、");
+ }
+ }
+ }
+ } else {
+ if ("0".equals(data.getIsFuelVehicle())) {
+ sbKey.append("003、004、005、006、007、008、009").append("、");
+ } else {
+ sbKey.append("003、004、005、006、007、008").append("、");
+ }
+ }
+ }
+ }
+ }
+ sb.delete(sb.length() - 1, sb.length());
+ sbKey.delete(sbKey.length() - 1, sbKey.length());
+ itemVo.setItemValue(sb.toString());
+ itemVo.setItemKey(sbKey.toString());
+ itemVo.setVinNo(handoverWait.getVinNo());
+ itemVo.setSid(sid);
+ }
+ voList.add(itemVo);
+ }
+ }
+ vo.setVinList(voList);
+ return rb.success().setData(vo);
+ }
+
+ /**
+ * 移动端保存确认交付信息
+ *
+ * @param dto
+ * @return
+ */
+ public ResultBean appsaveDeliverybill(AppDeliveryDto dto) throws Exception {
+ ResultBean rb = ResultBean.fireFail();
+ BusHandover busHandover = new BusHandover();
+ BeanUtil.copyProperties(dto, busHandover);
+ //流程状态
+ busHandover.setNodeState("待提交");
+ //交车状态
+ busHandover.setHandoverStateKey("001");
+ busHandover.setHandoverStateValue("未交车");
+ busHandover.setCreateBySid(dto.getUserSid());
+ busHandover.setOrgSidPath(dto.getOrgPath());
+ ResultBean orgSidByPath = sysStaffOrgFeign.getOrgSidByPath(dto.getOrgPath());
+ if (orgSidByPath.getSuccess()) {
+ String userOrgSid = orgSidByPath.getData();
+ busHandover.setUseOrgSid(userOrgSid);
+ //交车资料确认单编号
+ String billNo = getApplyCode(userOrgSid);
+ busHandover.setBillNo(billNo);
+ ResultBean organizationVo = sysOrganizationFeign.fetchBySid(userOrgSid);
+ if (organizationVo.getSuccess()) {
+ SysOrganizationVo organizationVoData = organizationVo.getData();
+ if (null != organizationVoData) {
+ busHandover.setUseOrgName(organizationVoData.getName());
+ }
+ }
+ }
+ if (!CollectionUtils.isEmpty(dto.getVinList())) {
+ List vinList = dto.getVinList();
+ for (AppDeliveryConDto deliveryConDto : vinList) {
+ String recordSid = deliveryConDto.getRecordSid();
+ BusHandoverWait handoverWait = busHandoverWaitService.fetchBySid(recordSid);
+ //交车数量
+ busHandover.setCarNum(String.valueOf(vinList.size()));
+ //合同号
+ busHandover.setContractNo(handoverWait.getContractNo());
+ //客户名
+ busHandover.setCustomerName(handoverWait.getCustomerName());
+ //客户sid
+ busHandover.setCustomerSid(handoverWait.getCustomerSid());
+ //付款方式
+ busHandover.setPayTypeKey(handoverWait.getPayTypeKey());
+ busHandover.setPayTypeValue(handoverWait.getPayTypeValue());
+ //车型
+ busHandover.setModelName(handoverWait.getModelName());
+ //业务员sid 业务订单sid
+ CommonContract contract = commonContractFeign.selectByNo(handoverWait.getContractNo()).getData();
+ if (null != contract) {
+ if (StringUtils.isNotBlank(contract.getBusSid())) {
+ busHandover.setOrderSid(contract.getBusSid());
+ }
+ if (StringUtils.isNotBlank(contract.getStaffSid())) {
+ busHandover.setStaffSid(contract.getStaffSid());
+ }
+ }
+ BusHandoverItems items = new BusHandoverItems();
+ items.setItemKey(deliveryConDto.getItemKey());
+ items.setItemValue(deliveryConDto.getItemValue());
+ items.setVinNo(deliveryConDto.getVinNo());
+ items.setVinSid(handoverWait.getVinSid());
+ items.setHandoverSid(busHandover.getSid());
+ items.setModelSid(handoverWait.getModelSid());
+ items.setModelName(handoverWait.getModelName());
+ BusVehicleInformationHandoverDetailsListVo data = busVehicleInformationHandoverService.detailsByVinSid(handoverWait.getVinSid()).getData();
+ if (null != data) {
+ items.setIsFuelVehicle(data.getIsFuelVehicle());
+ }
+ if (items.getIsFuelVehicle().equals("0")) {
+ if (items.getItemKey().equals("001、002、003、004、005、006、007、008、009")) {
+ items.setCompleteState("1");
+ } else {
+ items.setCompleteState("0");
+ }
+ } else {
+ if (items.getItemKey().equals("001、002、003、004、005、006、007、008")) {
+ items.setCompleteState("1");
+ } else {
+ items.setCompleteState("0");
+ }
+ }
+ items.setVehivelOrTrailer("主车");
+ busHandoverItemsService.insert(items);
+ //逻辑删除待准备交车列表
+ busHandoverWaitService.deleteByVinSid(handoverWait.getContractNo(), handoverWait.getVinSid());
+ }
+ }
+ baseMapper.insert(busHandover);
+ ResultBean> pdf = createPdf(busHandover.getSid());
+ String path = "";
+ if (pdf.getSuccess()) {
+ //打印pdf
+ List filePaths = pdf.getData();
+ List fileList = new ArrayList<>();
+ if (!filePaths.isEmpty()) {
+ for (String filePath : filePaths) {
+ File file = new File(filePath);
+ fileList.add(file);
+ }
+ }
+ String dateStr = DateUtil.format(new Date(), "yyyyMMdd");
+ long seconds = System.currentTimeMillis();
+ String targetPath = docPdfComponent.getUploadTemplateUrl();
+ File file = WordConvertUtils.mulFile2One(fileList, targetPath + dateStr + seconds + "交车确认.pdf");
+ if (fileList.size() <= 0) {
+ path = null;
+ } else {
+ for (File fileDelete : fileList) {
+ fileDelete.delete();
+ }
+ path = dateStr + seconds + "交车确认.pdf";
+ }
+ }
+ BusHandover entity = fetchBySid(busHandover.getSid());
+ entity.setFilePath(path);
+ baseMapper.updateById(entity);
+ String urlPrefix = docPdfComponent.getPrefixTemplateUrl();
+ return rb.success().setData(urlPrefix + path);
+ }
+ /**
+ * app交车确认列表
+ *
+ * @param pagerQuery
+ * @return
+ */
+ public ResultBean> appgetDeliveryConfirmList(PagerQuery pagerQuery) {
+ ResultBean> rb = ResultBean.fireFail();
+ AppDeliveryListQuery query = pagerQuery.getParams();
+ QueryWrapper qw = new QueryWrapper<>();
+ qw.eq("createBySid", query.getUserSid());
+ qw.eq("isDelete", 0);
+ if (StringUtils.isNotBlank(query.getName())) {
+ qw.and(wrapper -> wrapper.like("contractNo", query.getName()).or().like("customerName", query.getName()));
+ }
+ IPage page = PagerUtil.queryToPage(pagerQuery);
+ IPage pagging = baseMapper.selectAppListPageVo(page, qw);
+ List records = pagging.getRecords();
+ records.removeAll(Collections.singleton(null));
+ String urlPrefix = docPdfComponent.getPrefixTemplateUrl();
+ if (records.size() > 0) {
+ for (AppDeliveryListVo record : records) {
+ if (record.getNodeState().equals("待提交") || record.getNodeState().equals("销售专员提交申请")) {
+ record.setShowUpdate(true);
+ } else {
+ record.setShowUpdate(false);
+ }
+ if (record.getHandoverStateValue().equals("已交车")) {
+ List deliveryConfirmInfo = busHandoverItemsService.getDeliveryConfirmInfo(record.getSid());
+ deliveryConfirmInfo.removeAll(Collections.singleton(null));
+ if (!deliveryConfirmInfo.isEmpty()) {
+ for (BusHandoverInitListVo vo : deliveryConfirmInfo) {
+ List trailers = baseTrailerFeign.getByVehSid(vo.getVinSid()).getData();
+ trailers.removeAll(Collections.singleton(null));
+ if (!trailers.isEmpty() && trailers.size() > 0) {
+ record.setShowGcBtn(true);
+ } else {
+ record.setShowGcBtn(false);
+ }
+ }
+ }
+ } else {
+ record.setShowGcBtn(false);
+ }
+ if (StringUtils.isNotBlank(record.getTrailerFilePath())) {
+ record.setShowGcBtn(false);
+ record.setShowGcBtn2(true);
+ record.setShowGcDownload(true);
+ }
+ record.setFilePath(urlPrefix + record.getFilePath());
+ record.setTrailerFilePath(urlPrefix + record.getTrailerFilePath());
+ }
+ }
+ PagerVo p = PagerUtil.pageToVo(pagging, null);
+ return rb.success().setData(p);
+ }
+
+ /**
+ * 判断提交的流程是否被允许
+ *
+ * @param dto
+ * @return
+ */
+ private synchronized int submitBusinessData(SubmitBusHandoverDto dto, BusHandover busHandover) {
+ int r = 0;
+ if (StringUtils.isBlank(dto.getSid())) {
+ r = 1;
+ } else {
+ if (busHandover != null) {
+ String businessTaskId = busHandover.getTaskId();
+ if (StringUtils.isBlank(businessTaskId) && StringUtils.isBlank(dto.getTaskId())) {
+ //新提交
+ r = 1;
+ } else if (StringUtils.isNotBlank(businessTaskId) && businessTaskId.equals(dto.getTaskId())) {
+ //二次提交//只有数据一致的时候才能进行下一步
+ r = 2;
+ }
+ } else {
+ r = 3;
+ }
+ }
+ return r;
+ }
+
+ /**
+ * 提交申请
+ *
+ * @param dto
+ * @return
+ */
+ public ResultBean submitRecordApplication(SubmitBusHandoverDto dto) {
+ ResultBean rb = ResultBean.fireFail();
+ BusHandover busHandover = fetchBySid(dto.getSid());
+ int r = submitBusinessData(dto, busHandover);
+ if (r == 3) {
+ return rb.setMsg("该申请不存在");
+ }
+ if (r == 0) {
+ return rb.setMsg("操作失败!提交的数据不一致");
+ }
+ //新增修改保存
+ ResultBean resultBean = saveDeliveryConfirmInfo(dto);
+ if (!resultBean.getSuccess()) {
+ return rb.setMsg(resultBean.getMsg());
+ }
+ String businessSid = resultBean.getData();
+ //创建BusinessVariables实体对象
+ BusinessVariables bv = new BusinessVariables();
+ //流程中的参数赋值
+ Map variables = BeanUtil.beanToMap(dto);
+ Map appMap = new HashMap<>();
+ //若有网关,则赋值网关中判断的字段。
+ boolean isloans = false;
+ //去查询是否为自营非担保/担保担保贷款
+ if (StringUtils.isNotBlank(busHandover.getOrderSid())) {
+ String orderSid = busHandover.getOrderSid();
+ BusSalesOrder salesOrder = busSalesOrderService.fetchBySid(orderSid);
+ if (null != salesOrder) {
+ if (StringUtils.isNotBlank(salesOrder.getPayTypeKey())) {
+ if ("2".equals(salesOrder.getPayTypeKey())) {
+ isloans = true;
+ } else {
+ if ("2".equals(salesOrder.getFinancePlan())) {
+ ResultBean> listResultBean = loanSolutionsFeign.selectByOrderSid(orderSid);
+ if (listResultBean.getSuccess()) {
+ List data = listResultBean.getData();
+ data.removeAll(Collections.singleton(null));
+ if (data.size() > 0 && !data.isEmpty()) {
+ for (LoanSolutions solutions : data) {
+ if (StringUtils.isNotBlank(solutions.getTypeKey())) {
+ if ("01".equals(solutions.getTypeKey())) {
+ isloans = true;
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ variables.put("isloans", isloans);
+ variables.put("businessSid", businessSid);
+ appMap.put("sid", businessSid);
+ variables.put("app", appMap);
+ BusHandover busHandover1 = fetchBySid(businessSid);
+ //用户的部门全路径sid
+ bv.setOrgSidPath(busHandover1.getOrgSidPath());
+ //业务sid
+ bv.setBusinessSid(businessSid);
+ //用户sid
+ bv.setUserSid(dto.getUserSid());
+ bv.setFormVariables(variables);
+ //流程定义id
+ bv.setModelId(ProcDefEnum.BUSHANDOVER.getProDefId());
+ if (r == 1) {
+ //流程定义id
+ bv.setModelId(ProcDefEnum.BUSHANDOVER.getProDefId());
+ ResultBean voResultBean = flowableFeign.startProcess(bv);
+ if (!voResultBean.getSuccess()) {
+ return rb.setMsg(voResultBean.getMsg());
+ }
+ UpdateFlowFieldVo ufVo = voResultBean.getData();
+ updateFlowFiled(BeanUtil.beanToMap(ufVo));
+ //==================================添加线程
+ try {
+ ThreadFactory namedThreadFactory = new ThreadFactoryBuilder()
+ .setNameFormat("demo-pool-%d").build();
+ ExecutorService pool = new ThreadPoolExecutor(2, 100,
+ 0L, TimeUnit.MILLISECONDS,
+ new LinkedBlockingQueue(1024), namedThreadFactory, new ThreadPoolExecutor.AbortPolicy());
+ Future future1 = pool.submit(() -> {
+ //极光推送
+ // busVehicleApply.set(fetchBySid(businessSid));
+ MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery();
+ MessageFlowVo messageFlowVo = new MessageFlowVo();
+ BeanUtil.copyProperties(ufVo, messageFlowVo);
+ messageFlowableQuery.setUfVo(messageFlowVo);
+ messageFlowableQuery.setAppMap(appMap);
+ messageFlowableQuery.setBusinessSid(businessSid);
+ messageFlowableQuery.setModuleName("交车确认申请");
+ SysUserVo userVo = sysUserFeign.fetchBySid(busHandover.getCreateBySid()).getData();
+ if (userVo != null) {
+ if (StringUtils.isNotBlank(userVo.getName())) {
+ messageFlowableQuery.setMsgContent(userVo.getName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批");
+ }
+ }
+ messageFlowableQuery.setMsgTitle("交车确认");
+ ResultBean stringResultBean = messageFeign.pushMessage(messageFlowableQuery);
+ });
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ //==================================添加线程
+ return voResultBean;
+ }
+ if (r == 2) {
+ // ToDo:驳回到发起人后再次提交
+ if (StringUtils.isBlank(dto.getInstanceId())) {
+ return rb.setMsg("参数错误:instanceId");
+ }
+ bv.setTaskId(busHandover.getTaskId());
+ bv.setTaskDefKey(busHandover.getNodeSid());
+ bv.setComment("重新提交");
+ bv.setInstanceId(dto.getInstanceId());
+ return complete(bv);
+ }
+ return rb;
+ }
+
+ /**
+ * 更新流程相关的状态
+ *
+ * @param map
+ * @return
+ */
+ private int updateFlowFiled(Map map) {
+ return baseMapper.updateFlowFiled(map);
+ }
+
+ /**
+ * 办理
+ *
+ * @param bv
+ * @return
+ */
+ public ResultBean complete(BusinessVariables bv) {
+ ResultBean rb = ResultBean.fireFail();
+ String businessSid = bv.getBusinessSid();
+ BusHandover busHandover = this.fetchBySid(businessSid);
+ if (bv.getTaskId().equals(busHandover.getTaskId())) {
+ bv.setOrgSidPath(busHandover.getOrgSidPath());
+ ResultBean resultBean = flowableFeign.handleProsess(bv);
+ if (!resultBean.getSuccess()) {
+ return rb.setMsg(resultBean.getMsg());
+ }
+ int i = updateFlowFiled(BeanUtil.beanToMap(resultBean.getData()));
+ if ("Event_end".equals(resultBean.getData().getTaskDefKey())) {
+ BusHandover updateStateEntity = fetchBySid(businessSid);
+ updateStateEntity.setHandoverStateKey("002");
+ updateStateEntity.setHandoverStateValue("已交车");
+ baseMapper.updateById(updateStateEntity);
+ }
+ return rb.success().setData(resultBean.getData());
+ } else {
+ return rb.setMsg("操作失败!提交的数据不一致");
+ }
+ }
+
+ /**
+ * 撤回流程
+ *
+ * @param query
+ * @return
+ */
+ public ResultBean revokeProcess(BusHandoverTaskQuery query) {
+ ResultBean rb = ResultBean.fireFail();
+ if (StringUtils.isBlank(query.getUserSid())) {
+ return rb.setMsg("参数错误:userSid");
+ }
+ //根据业务sid查询交车确认
+ BusHandover busHandover = fetchBySid(query.getBusinessSid());
+ String businessTaskId = busHandover.getTaskId();
+ if (StringUtils.isNotBlank(businessTaskId)) {
+ if (businessTaskId.equals(query.getTaskId())) {
+ FlowTaskVo flowTaskVo = new FlowTaskVo();
+ BeanUtil.copyProperties(query, flowTaskVo);
+ ResultBean resultBean = flowableFeign.revokeProcess(flowTaskVo);
+ if (!resultBean.getSuccess()) {
+ return rb.setMsg(resultBean.getMsg());
+ }
+ updateFlowFiled(BeanUtil.beanToMap(resultBean.getData()));
+ return rb.success().setData(resultBean.getData());
+ }
+ }
+ return rb.setMsg("操作失败,提交的数据不一致!");
+ }
+
+ /**
+ * 驳回
+ *
+ * @param query
+ * @return
+ */
+ public ResultBean taskReject(BusHandoverTaskQuery query) {
+ ResultBean rb = ResultBean.fireFail();
+ String businessSid = query.getBusinessSid();
+ BusHandover busHandover = fetchBySid(businessSid);
+ if (busHandover == null) {
+ return rb.setMsg("该申请不存在");
+ }
+ String businessTaskId = busHandover.getTaskId();
+ if (StringUtils.isNotBlank(businessTaskId)) {
+ if (businessTaskId.equals(query.getTaskId())) {
+ if (StringUtils.isBlank(query.getComment())) {
+ return rb.setMsg("请填写意见");
+ }
+ if (StringUtils.isBlank(query.getUserSid())) {
+ return rb.setMsg("参数错误:userSid");
+ }
+ FlowTaskVo flowTaskVo = new FlowTaskVo();
+ BeanUtil.copyProperties(query, flowTaskVo);
+ Map variables = new HashMap<>();
+ Map appMap = new HashMap<>();
+ appMap.put("sid", businessSid);
+ variables.put("app", appMap);
+ boolean isloans = false;
+ //去查询是否为自营非担保/担保担保贷款
+ if (StringUtils.isNotBlank(busHandover.getOrderSid())) {
+ String orderSid = busHandover.getOrderSid();
+ BusSalesOrder salesOrder = busSalesOrderService.fetchBySid(orderSid);
+ if (null != salesOrder) {
+ if (StringUtils.isNotBlank(salesOrder.getPayTypeKey())) {
+ if ("2".equals(salesOrder.getPayTypeKey())) {
+ isloans = true;
+ } else {
+ if ("2".equals(salesOrder.getFinancePlan())) {
+ ResultBean> listResultBean = loanSolutionsFeign.selectByOrderSid(orderSid);
+ if (listResultBean.getSuccess()) {
+ List data = listResultBean.getData();
+ data.removeAll(Collections.singleton(null));
+ if (data.size() > 0 && !data.isEmpty()) {
+ for (LoanSolutions solutions : data) {
+ if (StringUtils.isNotBlank(solutions.getTypeKey())) {
+ if ("01".equals(solutions.getTypeKey())) {
+ isloans = true;
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ //判断是否是储备订单,若是,则isTrue网关参数为true=============添加
+ variables.put("isloans", isloans);
+ flowTaskVo.setValues(variables);
+ ResultBean resultBean = flowableFeign.taskReject(flowTaskVo);
+ if (!resultBean.getSuccess()) {
+ return rb.setMsg(resultBean.getMsg());
+ }
+ UpdateFlowFieldVo ufVo = resultBean.getData();
+ Map map = BeanUtil.beanToMap(ufVo);
+ //更新业务中的流程相关的参数
+ updateFlowFiled(map);
+ //极光推送
+ busHandover = fetchBySid(businessSid);
+ MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery();
+ MessageFlowVo messageFlowVo = new MessageFlowVo();
+ BeanUtil.copyProperties(ufVo, messageFlowVo);
+ String procId = busHandover.getProcInstId();
+ messageFlowVo.setProcInsId(procId);
+ messageFlowVo.setProcDefId(busHandover.getProcDefId());
+ messageFlowableQuery.setUfVo(messageFlowVo);
+ messageFlowableQuery.setAppMap(appMap);
+ messageFlowableQuery.setBusinessSid(businessSid);
+ messageFlowableQuery.setModuleName("交车确认申请");
+ ResultBean> listResultBean = flowTaskFeign.getLatestTasks(procId);
+ String nextName = listResultBean.getData().get(0).getName_();
+ String nextNodeUserSids = listResultBean.getData().get(0).getASSIGNEE_();
+ List receiveSidList = Arrays.asList(nextNodeUserSids.split(","));
+// if (receiveSidList.size() == 1 && receiveSidList.get(0).equals(busVehicleApply.getCreateBySid())) {
+ if ("销售专员提交申请".equals(nextName)) {
+ messageFlowableQuery.setMsgContent("您提交的" + messageFlowableQuery.getModuleName() + "已被驳回,请重新提交");
+ } else {
+ SysUserVo userVo = sysUserFeign.fetchBySid(busHandover.getCreateBySid()).getData();
+ if (userVo != null) {
+ if (StringUtils.isNotBlank(userVo.getName())) {
+ messageFlowableQuery.setMsgContent(userVo.getName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批");
+ }
+ }
+ }
+ messageFlowableQuery.setMsgTitle("交车确认");
+ ResultBean stringResultBean = messageFeign.pushMessage(messageFlowableQuery);
+ return rb.success();
+ }
+ }
+ return rb.setMsg("操作失败!提交的数据不一致!");
+ }
+
+ /**
+ * 获取下一个环节
+ *
+ * @param query
+ * @return
+ */
+ public ResultBean> getNextNodesForSubmit(GetNodeQuery query) {
+ ResultBean> rb = ResultBean.fireFail();
+ BusinessVariables bv = new BusinessVariables();
+ BeanUtil.copyProperties(query, bv);
+ //流程中的参数赋值、若有网关,则赋值网关中判断的字段。
+ Map variables = new HashMap<>();
+ //根据业务sid查询排产信息
+ BusHandover busHandover = fetchBySid(query.getBusinessSid());
+ boolean isloans = false;
+ //去查询是否为自营非担保/担保担保贷款
+ if (StringUtils.isNotBlank(busHandover.getOrderSid())) {
+ String orderSid = busHandover.getOrderSid();
+ BusSalesOrder salesOrder = busSalesOrderService.fetchBySid(orderSid);
+ if (null != salesOrder) {
+ if (StringUtils.isNotBlank(salesOrder.getPayTypeKey())) {
+ if ("2".equals(salesOrder.getPayTypeKey())) {
+ isloans = true;
+ } else {
+ if ("2".equals(salesOrder.getFinancePlan())) {
+ ResultBean> listResultBean = loanSolutionsFeign.selectByOrderSid(orderSid);
+ if (listResultBean.getSuccess()) {
+ List data = listResultBean.getData();
+ data.removeAll(Collections.singleton(null));
+ if (data.size() > 0 && !data.isEmpty()) {
+ for (LoanSolutions solutions : data) {
+ if (StringUtils.isNotBlank(solutions.getTypeKey())) {
+ if ("01".equals(solutions.getTypeKey())) {
+ isloans = true;
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ }
+ //判断是否是储备订单,若是,则isTrue网关参数为true=============添加
+ variables.put("isloans", isloans);
+ bv.setFormVariables(variables);
+ bv.setModelId(busHandover.getProcDefId());
+ ResultBean>> resultBean = flowTaskFeign.getNextNodesForSubmit(bv);
+ //判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo
+ List voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), GetNodeVo.class)).collect(Collectors.toList());
+ return rb.success().setData(voList);
+ }
+
+ /**
+ * 终止流程
+ *
+ * @param query
+ * @return
+ */
+ public ResultBean breakProcess(BusHandoverTaskQuery query) {
+ ResultBean rb = ResultBean.fireFail();
+ if (StringUtils.isBlank(query.getInstanceId())) {
+ return rb.setMsg("参数错误:instanceId");
+ }
+ if (StringUtils.isBlank(query.getUserSid())) {
+ return rb.setMsg("参数错误:userSid");
+ }
+ if (StringUtils.isBlank(query.getComment())) {
+ return rb.setMsg("请填写意见");
+ }
+ BusHandover busHandover = fetchBySid(query.getBusinessSid());
+ String businessTaskId = busHandover.getTaskId();
+ if (StringUtils.isNotBlank(businessTaskId)) {
+ if (query.getUserSid().equals(busHandover.getCreateBySid())) {
+ FlowTaskVo flowTaskVo = new FlowTaskVo();
+ BeanUtil.copyProperties(query, flowTaskVo);
+ ResultBean resultBean = flowableFeign.breakProcess(flowTaskVo);
+ if (!resultBean.getSuccess()) {
+ return rb.setMsg(resultBean.getMsg());
+ }
+ Map map = BeanUtil.beanToMap(resultBean.getData());
+ updateFlowFiled(map);
+ return rb.success().setData(resultBean.getData());
+ } else {
+ if (businessTaskId.equals(query.getTaskId())) {
+ FlowTaskVo flowTaskVo = new FlowTaskVo();
+ BeanUtil.copyProperties(query, flowTaskVo);
+ ResultBean resultBean = flowableFeign.breakProcess(flowTaskVo);
+ if (!resultBean.getSuccess()) {
+ return rb.setMsg(resultBean.getMsg());
+ }
+ Map map = BeanUtil.beanToMap(resultBean.getData());
+ updateFlowFiled(map);
+ return rb.success().setData(resultBean.getData());
+ }
+ }
+
+ }
+ return rb.setMsg("操作失败!提交的数据不一致!");
+ }
+
+ /**
+ * 获取上一环节
+ *
+ * @param query
+ * @return
+ */
+ public ResultBean> getPreviousNodesForReject(GetNodeQuery query) {
+ ResultBean> rb = ResultBean.fireFail();
+ BusinessVariables bv = new BusinessVariables();
+ BeanUtil.copyProperties(query, bv);
+ //流程中的参数赋值、若有网关,则赋值网关中判断的字段。
+ Map variables = new HashMap<>();
+ //根据业务sid查询排产信息
+ BusHandover busHandover = fetchBySid(query.getBusinessSid());
+ boolean isloans = false;
+ //去查询是否为自营非担保/担保担保贷款
+ if (StringUtils.isNotBlank(busHandover.getOrderSid())) {
+ String orderSid = busHandover.getOrderSid();
+ BusSalesOrder salesOrder = busSalesOrderService.fetchBySid(orderSid);
+ if (null != salesOrder) {
+ if (StringUtils.isNotBlank(salesOrder.getPayTypeKey())) {
+ if ("2".equals(salesOrder.getPayTypeKey())) {
+ isloans = true;
+ } else {
+ if ("2".equals(salesOrder.getFinancePlan())) {
+ ResultBean> listResultBean = loanSolutionsFeign.selectByOrderSid(orderSid);
+ if (listResultBean.getSuccess()) {
+ List