Browse Source

Merge remote-tracking branch 'origin/master'

master
dimengzhe 2 years ago
parent
commit
e0eb08d157
  1. 30
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basebrandletpricepowimit/BaseBrandletpricepowimitService.java
  2. 2
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseroleletpricepowimit/BaseRoleletpricepowimitMapper.java
  3. 36
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseroleletpricepowimit/BaseRoleletpricepowimitMapper.xml
  4. 5
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseroleletpricepowimit/BaseRoleletpricepowimitService.java
  5. 32
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busvehicledatahandover/AppCompleteRecordVo.java
  6. 17
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busvehicledatahandover/AppListQuery.java
  7. 26
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busvehicledatahandover/AppNotCompleteRecordVo.java
  8. 20
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busvehicledatahandover/AppVinListVo.java
  9. 29
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busvehicledatahandover/BusDetailsVo.java
  10. 16
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busvehicledatahandover/BusVehicleDataDetailsVo.java
  11. 29
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busvehicledatahandover/BusVehicleDataHandoverFeign.java
  12. 23
      anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busvehicledatahandover/BusVehicleDataHandoverFeignFallback.java
  13. 8
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busvehicledatahandover/BusVehicleDataHandoverMapper.java
  14. 38
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busvehicledatahandover/BusVehicleDataHandoverMapper.xml
  15. 28
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busvehicledatahandover/BusVehicleDataHandoverRest.java
  16. 221
      anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busvehicledatahandover/BusVehicleDataHandoverService.java
  17. 7
      anrui-buscenter/anrui-buscenter-ui/src/api/suicheziliao/jiaocheziliao.js
  18. 105
      anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/suicheziliaoguanli/datapreparation.vue
  19. 6
      anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/suicheziliaoguanli/datapreparationInfo.vue
  20. 27
      anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/xiaoshouzhengce/relation/vehicleselect.vue
  21. 30
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/vehicleinformationhandover/CompleteRecordVo.java
  22. 17
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/vehicleinformationhandover/ListQuery.java
  23. 26
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/vehicleinformationhandover/NotCompleteRecordVo.java
  24. 10
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/vehicleinformationhandover/VehicleInformationHandoverFeign.java
  25. 10
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/vehicleinformationhandover/VehicleInformationHandoverFeignFallback.java
  26. 19
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/vehicleinformationhandover/VinListVo.java
  27. 10
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/vehicleinformationhandover/VehicleInformationHandoverRest.java
  28. 28
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/vehicleinformationhandover/VehicleInformationHandoverService.java

30
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basebrandletpricepowimit/BaseBrandletpricepowimitService.java

@ -47,7 +47,9 @@ import com.yxt.common.core.vo.PagerVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
/**
* Project: anrui-base(品牌让价权限) <br/>
@ -137,12 +139,34 @@ public class BaseBrandletpricepowimitService extends MybatisBaseService<BaseBran
ResultBean rb = ResultBean.fireFail();
String dtoSid = dto.getSid();
List<BaseRoleletpricepowimitDto> baseRoleletpricepowimits = dto.getBaseRoleletpricepowimits();
List<BaseRoleletpricepowimitDto> baseRoleletpricepowimitsNew = new ArrayList<>();
if (StringUtils.isBlank(dtoSid)) {
this.insertByDto(dto);
return rb.success();
}
for (int i = 0; i < baseRoleletpricepowimits.size(); i++) {
for (BaseRoleletpricepowimitDto baseRoleletpricepowimit : baseRoleletpricepowimits) {
//判断数据库是否存在重复数据
QueryWrapper qw = new QueryWrapper<>();
qw.eq("bbw.brandSid",dto.getBrandSid());
qw.eq("bbw.useOrgSid",dto.getUseOrgSid());
qw.eq("brw.deptSid",baseRoleletpricepowimit.getDeptSid());
qw.eq("brw.roleSid",baseRoleletpricepowimit.getRoleSid());
qw.ne("brw.mainSid",dtoSid);
int i = baseRoleletpricepowimitService.selDeptAndRoleSid(qw);
if (i > 0){
return rb.setMsg("选择的关系已存在,请重新选择");
}
//判断选择的数据是否重复
if (baseRoleletpricepowimitsNew.size() == 0){
baseRoleletpricepowimitsNew.add(baseRoleletpricepowimit);
}
for (BaseRoleletpricepowimitDto baseRoleletpricepowimitDto : baseRoleletpricepowimitsNew) {
if (baseRoleletpricepowimit.getDeptSid().equals(baseRoleletpricepowimitDto.getDeptSid()) && baseRoleletpricepowimit.getRoleSid().equals(baseRoleletpricepowimitDto.getRoleSid())){
return rb.setMsg("选择的部门和角色不可重复,请重新选择");
}else {
baseRoleletpricepowimitsNew.add(baseRoleletpricepowimit);
}
}
}
this.updateByDto(dto);
BaseBrandletpricepowimit baseBrandletpricepowimit = fetchBySid(dtoSid);
@ -150,7 +174,7 @@ public class BaseBrandletpricepowimitService extends MybatisBaseService<BaseBran
return rb.setMsg("该品牌让价权限不存在");
}
baseRoleletpricepowimitService.deleteByMainSid(dtoSid);
for (BaseRoleletpricepowimitDto baseRoleletpricepowimitDto : baseRoleletpricepowimits) {
for (BaseRoleletpricepowimitDto baseRoleletpricepowimitDto : baseRoleletpricepowimitsNew) {
BaseRoleletpricepowimit baseRoleletpricepowimit = new BaseRoleletpricepowimit();
baseRoleletpricepowimit.setDeptSid(baseRoleletpricepowimitDto.getDeptSid());
baseRoleletpricepowimit.setDeptName(baseRoleletpricepowimitDto.getDeptName());

2
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseroleletpricepowimit/BaseRoleletpricepowimitMapper.java

@ -70,4 +70,6 @@ public interface BaseRoleletpricepowimitMapper extends BaseMapper<BaseRoleletpri
@Delete("delete from base_roleletpricepowimit where mainSid = #{sid}")
void deleteByMainSid(String dtoSid);
int selDeptAndRoleSid(@Param(Constants.WRAPPER) Wrapper<BaseRoleletpricepowimit> qw);
}

36
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseroleletpricepowimit/BaseRoleletpricepowimitMapper.xml

@ -1,13 +1,31 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yxt.anrui.base.biz.baseroleletpricepowimit.BaseRoleletpricepowimitMapper">
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
<select id="selectPageVo" resultType="com.yxt.anrui.base.api.baseroleletpricepowimit.BaseRoleletpricepowimitVo">
SELECT * FROM base_roleletpricepowimit <where> ${ew.sqlSegment} </where>
</select>
<select id="selectListAllVo" resultType="com.yxt.anrui.base.api.baseroleletpricepowimit.BaseRoleletpricepowimitVo">
SELECT * FROM base_roleletpricepowimit <where> ${ew.sqlSegment} </where>
</select>
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
<select id="selectPageVo" resultType="com.yxt.anrui.base.api.baseroleletpricepowimit.BaseRoleletpricepowimitVo">
SELECT * FROM base_roleletpricepowimit
<where>
${ew.sqlSegment}
</where>
</select>
<select id="selectListAllVo" resultType="com.yxt.anrui.base.api.baseroleletpricepowimit.BaseRoleletpricepowimitVo">
SELECT * FROM base_roleletpricepowimit
<where>
${ew.sqlSegment}
</where>
</select>
<select id="selDeptAndRoleSid" resultType="int">
SELECT
COUNT(*)
FROM
base_roleletpricepowimit brw
LEFT JOIN base_brandletpricepowimit bbw
ON brw.`mainSid` = bbw.`sid`
<where>
${ew.sqlSegment}
</where>
</select>
</mapper>

5
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseroleletpricepowimit/BaseRoleletpricepowimitService.java

@ -26,6 +26,7 @@
package com.yxt.anrui.base.biz.baseroleletpricepowimit;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.commons.lang3.StringUtils;
@ -115,4 +116,8 @@ public class BaseRoleletpricepowimitService extends MybatisBaseService<BaseRolel
public void deleteByMainSid(String dtoSid) {
baseMapper.deleteByMainSid(dtoSid);
}
public int selDeptAndRoleSid(Wrapper<BaseRoleletpricepowimit> qw) {
return baseMapper.selDeptAndRoleSid(qw);
}
}

32
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busvehicledatahandover/AppCompleteRecordVo.java

@ -0,0 +1,32 @@
package com.yxt.anrui.buscenter.api.busvehicledatahandover;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
import java.util.List;
/**
* @author Administrator
* @description
* @date 2023/6/25 14:29
*/
@Data
public class AppCompleteRecordVo implements Vo {
private String contractId;
private String name;
private String createInfo;
private String model;
private String vins;
private String billId;
private String createName;
@ApiModelProperty("创建日期")
private Date createTime;
private String downLoadUrl;
private List<String> urls;
private Boolean showUpload;
private Boolean showDownload;
private String linkSid;
}

17
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busvehicledatahandover/AppListQuery.java

@ -0,0 +1,17 @@
package com.yxt.anrui.buscenter.api.busvehicledatahandover;
import com.yxt.common.core.query.Query;
import lombok.Data;
/**
* @author Administrator
* @description
* @date 2023/6/25 8:53
*/
@Data
public class AppListQuery implements Query {
private String name;
private String type;
private String userSid;
private String orgPath;
}

26
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busvehicledatahandover/AppNotCompleteRecordVo.java

@ -0,0 +1,26 @@
package com.yxt.anrui.buscenter.api.busvehicledatahandover;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
* @author Administrator
* @description
* @date 2023/6/25 8:51
*/
@Data
public class AppNotCompleteRecordVo implements Vo {
private String contractId;
private String customerName;
private String createInfo;
private String carModel;
private List<AppVinListVo> vinList = new ArrayList<>();
private String createName;
@ApiModelProperty("创建日期")
private Date createTime;
}

20
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busvehicledatahandover/AppVinListVo.java

@ -0,0 +1,20 @@
package com.yxt.anrui.buscenter.api.busvehicledatahandover;
import com.yxt.common.core.vo.Vo;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
* @author Administrator
* @description
* @date 2023/6/25 8:52
*/
@Data
public class AppVinListVo implements Vo {
private String vin;
private String recordSid;
private List<String> urls = new ArrayList<>();
}

29
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busvehicledatahandover/BusDetailsVo.java

@ -0,0 +1,29 @@
package com.yxt.anrui.buscenter.api.busvehicledatahandover;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
* @author Administrator
* @description
* @date 2023/6/25 12:25
*/
@Data
public class BusDetailsVo implements Vo {
@ApiModelProperty("合同号")
private String contractNo; //合同号
@ApiModelProperty("客户名称")
private String customerName; //客户名称
@ApiModelProperty("创建人")
private String recName; // 交接人
@ApiModelProperty("交接日期")
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
private Date recDate;
private List<BusVehicleDataDetailsVo> vinList = new ArrayList<>();
}

16
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busvehicledatahandover/BusVehicleDataDetailsVo.java

@ -0,0 +1,16 @@
package com.yxt.anrui.buscenter.api.busvehicledatahandover;
import com.yxt.common.core.vo.Vo;
import lombok.Data;
/**
* @author Administrator
* @description
* @date 2023/6/25 12:26
*/
@Data
public class BusVehicleDataDetailsVo implements Vo {
private String vinNo;
private String items;
}

29
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busvehicledatahandover/BusVehicleDataHandoverFeign.java

@ -1,12 +1,16 @@
package com.yxt.anrui.buscenter.api.busvehicledatahandover;
import com.yxt.anrui.buscenter.api.bushandoverwait.BusHandoverWaitQuery;
import com.yxt.anrui.buscenter.api.bushandoverwait.BusHandoverWaitVo;
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.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import java.util.List;
@ -38,19 +42,26 @@ public interface BusVehicleDataHandoverFeign {
@GetMapping("/getDeliveryInfo/{sid}")
@ResponseBody
public ResultBean<BusVehicleDataHandoverDetailsVo> getDeliveryInfo(@PathVariable("sid") String sid);
@ApiOperation("详情")
@GetMapping("/details/{sid}")
@ResponseBody
public ResultBean<BusVehicleDataHandoverDetailsVo> details(@PathVariable("sid") String sid);
public ResultBean<BusDetailsVo> details(@PathVariable("sid") String sid);
@ApiOperation("根据单据编号获得记录")
@GetMapping("/getOneByBillNo")
@ResponseBody
public ResultBean<List<BusVehicleDataHandover>> getDataByBillNo(@RequestParam("billNo") String billNo);
@ApiOperation("保存资料确认")
@PostMapping("/saveDeliveryInfo")
@ResponseBody
public ResultBean<String> saveDeliveryInfo(@RequestBody BusDeliveryInfoDto dto);
@ApiOperation(("上传交车资料确认单"))
@ApiOperation("上传资料确认单")
@ApiImplicitParam(name = "file", value = "文件", required = true, dataType = "MultipartFile", dataTypeClass = MultipartFile.class)
@PostMapping("/upload")
public ResultBean<String> uploadPdf(@RequestBody BusUploadDto dto);
public ResultBean<String> uploadPdf(@RequestParam("sid") String sid, @RequestParam(value = "file") MultipartFile file);
@ApiOperation(("查看交车资料确认单"))
@PostMapping("/getImages")
@ -81,5 +92,17 @@ public interface BusVehicleDataHandoverFeign {
@ResponseBody
public ResultBean<List<BusVehicleDataHandoverDto>> findcontractList(@RequestParam("createBySid") String createBySid);
/***********************************移动端************************************************/
@ApiOperation("未完成列表")
@PostMapping("/getCarDocsRecordNotList")
@ResponseBody
ResultBean<PagerVo<AppNotCompleteRecordVo>> getCarDocsRecordNotList(@RequestBody PagerQuery<AppListQuery> pagerQuery);
@ApiOperation("已完成列表")
@PostMapping("/getCarDocsConfirmList")
@ResponseBody
ResultBean<PagerVo<AppCompleteRecordVo>> getCarDocsConfirmList(@RequestBody PagerQuery<AppListQuery> pagerQuery);
}

23
anrui-buscenter/anrui-buscenter-api/src/main/java/com/yxt/anrui/buscenter/api/busvehicledatahandover/BusVehicleDataHandoverFeignFallback.java

@ -4,6 +4,8 @@ import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import org.springframework.stereotype.Component;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.multipart.MultipartFile;
import java.util.List;
@ -13,7 +15,7 @@ import java.util.List;
* @date 2023/5/17 14:49
*/
@Component
public class BusVehicleDataHandoverFeignFallback implements BusVehicleDataHandoverFeign{
public class BusVehicleDataHandoverFeignFallback implements BusVehicleDataHandoverFeign {
@Override
public ResultBean<PagerVo<BusVehicleDataHandoverVo>> listPage(PagerQuery<BusVehicleDataHandoverQuery> pq) {
return null;
@ -30,7 +32,12 @@ public class BusVehicleDataHandoverFeignFallback implements BusVehicleDataHandov
}
@Override
public ResultBean<BusVehicleDataHandoverDetailsVo> details(String sid) {
public ResultBean<BusDetailsVo> details(String sid) {
return null;
}
@Override
public ResultBean<List<BusVehicleDataHandover>> getDataByBillNo(String billNo) {
return null;
}
@ -40,7 +47,7 @@ public class BusVehicleDataHandoverFeignFallback implements BusVehicleDataHandov
}
@Override
public ResultBean<String> uploadPdf(BusUploadDto dto) {
public ResultBean<String> uploadPdf(String sid, MultipartFile file) {
return null;
}
@ -74,4 +81,14 @@ public class BusVehicleDataHandoverFeignFallback implements BusVehicleDataHandov
public ResultBean<List<BusVehicleDataHandoverDto>> findcontractList(String createBySid) {
return null;
}
@Override
public ResultBean<PagerVo<AppNotCompleteRecordVo>> getCarDocsRecordNotList(PagerQuery<AppListQuery> pagerQuery) {
return null;
}
@Override
public ResultBean<PagerVo<AppCompleteRecordVo>> getCarDocsConfirmList(PagerQuery<AppListQuery> pagerQuery) {
return null;
}
}

8
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busvehicledatahandover/BusVehicleDataHandoverMapper.java

@ -4,8 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
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.busvehicledatahandover.BusVehicleDataHandover;
import com.yxt.anrui.buscenter.api.busvehicledatahandover.BusVehicleDataHandoverVo;
import com.yxt.anrui.buscenter.api.busvehicledatahandover.*;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@ -26,4 +25,9 @@ public interface BusVehicleDataHandoverMapper extends BaseMapper<BusVehicleDataH
List<BusVehicleDataHandover> getDataByBillNo(String billNo);
IPage<AppNotCompleteRecordVo> notCompletePageVo(IPage<BusVehicleDataHandover> page, @Param(Constants.WRAPPER) QueryWrapper<BusVehicleDataHandover> qw);
List<AppVinListVo> selectByNo(String contractNo);
IPage<AppCompleteRecordVo> completePageVo(IPage<BusVehicleDataHandover> page, @Param(Constants.WRAPPER) QueryWrapper<BusVehicleDataHandover> qw);
}

38
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busvehicledatahandover/BusVehicleDataHandoverMapper.xml

@ -30,6 +30,42 @@
</select>
<select id="getDataByBillNo"
resultType="com.yxt.anrui.buscenter.api.busvehicledatahandover.BusVehicleDataHandover">
select *
from bus_vehicle_data_handover
where billNo = #{billNo}
</select>
<select id="notCompletePageVo"
resultType="com.yxt.anrui.buscenter.api.busvehicledatahandover.AppNotCompleteRecordVo">
select bvh.contractNo as contractId,
bvh.customerName,
bvh.model as carModel,
bvh.createName,
bvh.createTime
from bus_vehicle_data_handover as bvh
<where>
${ew.sqlSegment}
</where>
group by bvh.contractNo
</select>
<select id="selectByNo" resultType="com.yxt.anrui.buscenter.api.busvehicledatahandover.AppVinListVo">
select vinNo as vin, sid as recordSid
from bus_vehicle_data_handover
where contractNo = #{contractNo}
</select>
<select id="completePageVo"
resultType="com.yxt.anrui.buscenter.api.busvehicledatahandover.AppCompleteRecordVo">
select bvh.contractNo as contractId,
bvh.customerName as name,
bvh.model as model,
bvh.createName,
bvh.createTime,
bvh.billNo as billId,
bvh.downloadPath as downLoadUrl,
bvh.linkSid as linkSid
from bus_vehicle_data_handover as bvh
<where>
${ew.sqlSegment}
</where>
group by bvh.billNo
</select>
</mapper>

28
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busvehicledatahandover/BusVehicleDataHandoverRest.java

@ -1,13 +1,17 @@
package com.yxt.anrui.buscenter.biz.busvehicledatahandover;
import com.yxt.anrui.base.api.commonappendix.CommonAppendix;
import com.yxt.anrui.base.api.commonappendix.CommonAttachTypeEnum;
import com.yxt.anrui.buscenter.api.busvehicledatahandover.*;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.FileUploadResult;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import io.swagger.annotations.Api;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;
import java.util.List;
@ -24,6 +28,9 @@ public class BusVehicleDataHandoverRest implements BusVehicleDataHandoverFeign {
@Autowired
private BusVehicleDataHandoverService busVehicleDataHandoverService;
@Override
public ResultBean<PagerVo<BusVehicleDataHandoverVo>> listPage(PagerQuery<BusVehicleDataHandoverQuery> pq) {
return busVehicleDataHandoverService.listPage(pq);
@ -40,18 +47,23 @@ public class BusVehicleDataHandoverRest implements BusVehicleDataHandoverFeign {
}
@Override
public ResultBean<BusVehicleDataHandoverDetailsVo> details(String sid) {
public ResultBean<BusDetailsVo> details(String sid) {
return busVehicleDataHandoverService.details(sid);
}
@Override
public ResultBean<List<BusVehicleDataHandover>> getDataByBillNo(String billNo) {
return busVehicleDataHandoverService.getDataByBillNo(billNo);
}
@Override
public ResultBean<String> saveDeliveryInfo(BusDeliveryInfoDto dto) {
return busVehicleDataHandoverService.saveDeliveryInfo(dto);
}
@Override
public ResultBean<String> uploadPdf(BusUploadDto dto) {
return busVehicleDataHandoverService.uploadPdf(dto);
public ResultBean<String> uploadPdf(String sid, MultipartFile file) {
return busVehicleDataHandoverService.uploadPdf(sid,file);
}
@Override
@ -87,4 +99,14 @@ public class BusVehicleDataHandoverRest implements BusVehicleDataHandoverFeign {
return busVehicleDataHandoverService.findcontractList(createBySid);
}
@Override
public ResultBean<PagerVo<AppNotCompleteRecordVo>> getCarDocsRecordNotList(PagerQuery<AppListQuery> pagerQuery) {
return busVehicleDataHandoverService.getCarDocsRecordNotList(pagerQuery);
}
@Override
public ResultBean<PagerVo<AppCompleteRecordVo>> getCarDocsConfirmList(PagerQuery<AppListQuery> pagerQuery) {
return busVehicleDataHandoverService.getCarDocsConfirmList(pagerQuery);
}
}

221
anrui-buscenter/anrui-buscenter-biz/src/main/java/com/yxt/anrui/buscenter/biz/busvehicledatahandover/BusVehicleDataHandoverService.java

@ -6,6 +6,8 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.anrui.base.api.basevehicle.BaseVehicleFeign;
import com.yxt.anrui.base.api.basevehicle.BaseVehicleSelectVo;
import com.yxt.anrui.base.api.commonappendix.CommonAppendix;
import com.yxt.anrui.base.api.commonappendix.CommonAttachTypeEnum;
import com.yxt.anrui.base.api.commoncontract.CommonContractFeign;
import com.yxt.anrui.base.api.commoncontract.CommonContractPackageVo;
import com.yxt.anrui.base.common.enums.BillTypeEnum;
@ -14,6 +16,10 @@ 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.bushandoveritems.BusHandoverItems;
import com.yxt.anrui.buscenter.api.bushandoverwait.BusHandoverWait;
import com.yxt.anrui.buscenter.api.bushandoverwait.BusHandoverWaitListVo;
import com.yxt.anrui.buscenter.api.bushandoverwait.BusHandoverWaitQuery;
import com.yxt.anrui.buscenter.api.bushandoverwait.BusHandoverWaitVo;
import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicle;
import com.yxt.anrui.buscenter.api.busvehicledatahandover.*;
import com.yxt.anrui.buscenter.biz.buscenterfile.BuscenterFileService;
@ -33,10 +39,12 @@ import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.base.utils.StringUtils;
import com.yxt.common.base.utils.WordConvertUtils;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.FileUploadResult;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
import java.io.File;
import java.io.InputStream;
@ -365,6 +373,7 @@ public class BusVehicleDataHandoverService extends MybatisBaseService<BusVehicle
newEntity.setCreateName(createName);
newEntity.setCompleteStateValue("已完成");
newEntity.setCompleteStateKey("002");
newEntity.setOrgSidPath(dto.getOrgSidPath());
baseMapper.insert(newEntity);
}
}
@ -400,17 +409,36 @@ public class BusVehicleDataHandoverService extends MybatisBaseService<BusVehicle
/**
* 上传确认单
*
* @param dto
* @param
* @return
*/
public ResultBean<String> uploadPdf(BusUploadDto dto) {
public ResultBean<String> uploadPdf(String sid, MultipartFile file) {
ResultBean rb = ResultBean.fireFail();
buscenterFileService.delByLinkSidOrType(dto.getSid(), BuscenterFileEnum.VEHICLE_SECOND_DATA_HANDOVER.getAttachType());
List<String> images = dto.getImgs();
if (!images.isEmpty()) {
buscenterFileService.saveAll(dto.getSid(), images, BuscenterFileEnum.VEHICLE_SECOND_DATA_HANDOVER.getAttachType());
if (file == null || file.isEmpty()) {
return rb.setMsg("文件为空");
}
BusVehicleDataHandover entity = fetchBySid(sid);
String billNo = entity.getBillNo();
rb = fileUploadComponent.uploadFile(file);
FileUploadResult data = (FileUploadResult) rb.getData();
List<BusVehicleDataHandover> entityByBillNo = getDataByBillNo(billNo).getData();
entityByBillNo.removeAll(Collections.singleton(null));
if (!entityByBillNo.isEmpty()) {
for (BusVehicleDataHandover handover : entityByBillNo) {
String saveSid = handover.getSid();
buscenterFileService.delByLinkSidOrType(saveSid, BuscenterFileEnum.VEHICLE_SECOND_DATA_HANDOVER.getAttachType());
BuscenterFile buscenterFile = new BuscenterFile();
buscenterFile.setLinkSid(saveSid);
buscenterFile.setFilePath(data.getFilePath());
buscenterFile.setAttachType(BuscenterFileEnum.VEHICLE_SECOND_DATA_HANDOVER.getAttachType());
buscenterFile.setFileName(data.getSourceFileName());
buscenterFile.setFileSize(data.getSize());
String sourceFileName = data.getSourceFileName();
buscenterFile.setFileType(sourceFileName.substring(sourceFileName.lastIndexOf(".")));
buscenterFileService.save(buscenterFile);
}
}
return rb.success().setData(dto.getSid());
return rb.success().setMsg("上传成功");
}
@ -437,9 +465,10 @@ public class BusVehicleDataHandoverService extends MybatisBaseService<BusVehicle
BusVehicleDataHandoverDetailsVo vo = new BusVehicleDataHandoverDetailsVo();
List<BusVehicleDataListVo> vinList = new ArrayList<>();
List<String> sidList = new ArrayList<>();
StringBuffer sb = new StringBuffer();
int i = 1;
for (String sid : sids) {
StringBuffer sb = new StringBuffer();
sidList.add(sid);
BusVehicleDataHandover entity = fetchBySid(sid);
vo.setContractNo(entity.getContractNo());
@ -482,13 +511,13 @@ public class BusVehicleDataHandoverService extends MybatisBaseService<BusVehicle
sb.append("气瓶检测合格证").append("、");
}
}
}
if (sb.toString().length() > 0) {
sb.delete(sb.length() - 1, sb.length());
dataListVo.setVinNo(handoverItem.getVinNo());
dataListVo.setVinSid(handoverItem.getVinSid());
if (sb.toString().length() > 0) {
sb.delete(sb.length() - 1, sb.length());
}
}
dataListVo.setItems(sb.toString());
dataListVo.setVinNo(handoverItem.getVinNo());
dataListVo.setVinSid(handoverItem.getVinSid());
}
}
vinList.add(dataListVo);
@ -504,11 +533,169 @@ public class BusVehicleDataHandoverService extends MybatisBaseService<BusVehicle
* @param sid
* @return
*/
public ResultBean<BusVehicleDataHandoverDetailsVo> details(String sid) {
ResultBean<BusVehicleDataHandoverDetailsVo> rb = ResultBean.fireFail();
public ResultBean<BusDetailsVo> details(String sid) {
ResultBean<BusDetailsVo> rb = ResultBean.fireFail();
BusVehicleDataHandover handover = fetchBySid(sid);
BusVehicleDataHandoverDetailsVo vo = new BusVehicleDataHandoverDetailsVo();
BusDetailsVo vo = new BusDetailsVo();
List<BusVehicleDataHandover> entityList = baseMapper.getDataByBillNo(handover.getBillNo());
return null;
entityList.removeAll(Collections.singleton(null));
vo.setContractNo(handover.getContractNo());
vo.setCustomerName(handover.getCustomerName());
vo.setRecName(handover.getRecName());
vo.setRecDate(handover.getRecDate());
List<BusVehicleDataDetailsVo> vinList = new ArrayList<>();
if (!entityList.isEmpty()) {
for (BusVehicleDataHandover data : entityList) {
BusVehicleDataDetailsVo dataListVo = new BusVehicleDataDetailsVo();
dataListVo.setVinNo(data.getVinNo());
dataListVo.setItems(data.getItems());
vinList.add(dataListVo);
}
}
vo.setVinList(vinList);
return rb.success().setData(vo);
}
public ResultBean<PagerVo<AppNotCompleteRecordVo>> getCarDocsRecordNotList(PagerQuery<AppListQuery> pagerQuery) {
ResultBean<PagerVo<AppNotCompleteRecordVo>> rb = ResultBean.fireFail();
IPage<BusVehicleDataHandover> page = PagerUtil.queryToPage(pagerQuery);
AppListQuery params = pagerQuery.getParams();
QueryWrapper<BusVehicleDataHandover> qw = new QueryWrapper<>();
if (params != null) {
String orgPath = params.getOrgPath();
if (org.apache.commons.lang3.StringUtils.isNotBlank(orgPath)) {
orgPath = sysStaffOrgFeign.getOrgSidByPath(params.getOrgPath()).getData();
qw.eq("bvh.useOrgSid", orgPath);
}
// if (org.apache.commons.lang3.StringUtils.isNotBlank(params.getUserSid())) {
// qw.eq("bh.createBySid", params.getUserSid());
// }
if (org.apache.commons.lang3.StringUtils.isNotBlank(params.getName())) {
qw.and(wrapper -> wrapper.like("bvh.contractNo", params.getName()).or().like("bvh.customerName", params.getName()));
}
qw.eq("bvh.isDelete", 0);
qw.eq("bvh.completeStateKey", "001");
}
IPage<AppNotCompleteRecordVo> pagging = baseMapper.notCompletePageVo(page, qw);
List<AppNotCompleteRecordVo> records = pagging.getRecords();
records.removeAll(Collections.singleton(null));
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
for (AppNotCompleteRecordVo record : records) {
String createName = record.getCreateName();
Date createTime = record.getCreateTime();
String createTimeFormat = sdf.format(createTime);
record.setCreateInfo(createName + "," + createTimeFormat);
String contractNo = record.getContractId();
//根据合同编号查询车辆列表
List<AppVinListVo> vinListVos = baseMapper.selectByNo(contractNo);
vinListVos.removeAll(Collections.singleton(null));
if (!vinListVos.isEmpty()) {
for (AppVinListVo vinVo : vinListVos) {
String recordSid = vinVo.getRecordSid();
BusVehicleDataHandover handover = fetchBySid(recordSid);
String linkSid = handover.getLinkSid();
//交车资料确认单
List<BuscenterFile> fileList = buscenterFileService.selectByLinkSid(linkSid, BuscenterFileEnum.ENTRUST_CONFIRM_IMAGES.getAttachType());
fileList.removeAll(Collections.singleton(null));
if (!fileList.isEmpty()) {
List<String> entrustConfirmImages = fileList.stream().map(c -> fileUploadComponent.getUrlPrefix() + c.getFilePath()).collect(Collectors.toList());
vinVo.setUrls(entrustConfirmImages);
}
}
}
record.setVinList(vinListVos);
}
PagerVo<AppNotCompleteRecordVo> p = PagerUtil.pageToVo(pagging, null);
return rb.success().setData(p);
}
public ResultBean<List<BusVehicleDataHandover>> getDataByBillNo(String billNo) {
ResultBean<List<BusVehicleDataHandover>> rb = ResultBean.fireFail();
List<BusVehicleDataHandover> list = baseMapper.getDataByBillNo(billNo);
return rb.success().setData(list);
}
/**
* 已完成
*
* @param pagerQuery
* @return
*/
public ResultBean<PagerVo<AppCompleteRecordVo>> getCarDocsConfirmList(PagerQuery<AppListQuery> pagerQuery) {
ResultBean<PagerVo<AppCompleteRecordVo>> rb = ResultBean.fireFail();
IPage<BusVehicleDataHandover> page = PagerUtil.queryToPage(pagerQuery);
AppListQuery params = pagerQuery.getParams();
QueryWrapper<BusVehicleDataHandover> qw = new QueryWrapper<>();
if (params != null) {
String orgPath = params.getOrgPath();
if (org.apache.commons.lang3.StringUtils.isNotBlank(orgPath)) {
orgPath = sysStaffOrgFeign.getOrgSidByPath(params.getOrgPath()).getData();
qw.eq("bvh.useOrgSid", orgPath);
}
// if (org.apache.commons.lang3.StringUtils.isNotBlank(params.getUserSid())) {
// qw.eq("bh.createBySid", params.getUserSid());
// }
if (org.apache.commons.lang3.StringUtils.isNotBlank(params.getName())) {
qw.and(wrapper -> wrapper.like("bvh.contractNo", params.getName()).or().like("bvh.customerName", params.getName()));
}
qw.eq("bvh.isDelete", 0);
qw.eq("bvh.completeStateKey", "002");
}
String urlPrefix = docPdfComponent.getPrefixTemplateUrl();
IPage<AppCompleteRecordVo> pagging = baseMapper.completePageVo(page, qw);
List<AppCompleteRecordVo> records = pagging.getRecords();
records.removeAll(Collections.singleton(null));
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
for (AppCompleteRecordVo record : records) {
if (StringUtils.isBlank(record.getLinkSid())) {
record.setDownLoadUrl(urlPrefix + record.getDownLoadUrl());
record.setShowUpload(true);
record.setShowDownload(true);
} else {
record.setDownLoadUrl("");
record.setShowDownload(false);
record.setShowUpload(false);
}
String createName = record.getCreateName();
Date createTime = record.getCreateTime();
String createTimeFormat = sdf.format(createTime);
record.setCreateInfo(createName + "," + createTimeFormat);
String billId = record.getBillId();
//根据合同编号查询车辆列表
List<BusVehicleDataHandover> dataByBillNo = baseMapper.getDataByBillNo(billId);
dataByBillNo.removeAll(Collections.singleton(null));
StringBuffer sb = new StringBuffer();
if (!dataByBillNo.isEmpty()) {
for (BusVehicleDataHandover entity : dataByBillNo) {
String recordSid = entity.getSid();
BusVehicleDataHandover handover = fetchBySid(recordSid);
if (StringUtils.isNotBlank(handover.getLinkSid())) {
String linkSid = handover.getLinkSid();
//交车资料确认单
List<BuscenterFile> fileList = buscenterFileService.selectByLinkSid(linkSid, BuscenterFileEnum.ENTRUST_CONFIRM_IMAGES.getAttachType());
fileList.removeAll(Collections.singleton(null));
if (!fileList.isEmpty()) {
List<String> entrustConfirmImages = fileList.stream().map(c -> fileUploadComponent.getUrlPrefix() + c.getFilePath()).collect(Collectors.toList());
record.setUrls(entrustConfirmImages);
}
} else {
String sid = entity.getSid();
//交车资料确认单
List<BuscenterFile> fileList = buscenterFileService.selectByLinkSid(sid, BuscenterFileEnum.VEHICLE_SECOND_DATA_HANDOVER.getAttachType());
fileList.removeAll(Collections.singleton(null));
if (!fileList.isEmpty()) {
List<String> entrustConfirmImages = fileList.stream().map(c -> fileUploadComponent.getUrlPrefix() + c.getFilePath()).collect(Collectors.toList());
record.setUrls(entrustConfirmImages);
}
}
sb.append(entity.getVinNo()).append(",");
}
sb.delete(sb.length() - 1, sb.length());
record.setVins(sb.toString());
}
}
PagerVo<AppCompleteRecordVo> p = PagerUtil.pageToVo(pagging, null);
return rb.success().setData(p);
}
}

7
anrui-buscenter/anrui-buscenter-ui/src/api/suicheziliao/jiaocheziliao.js

@ -24,6 +24,13 @@ export function fetchDetailsBySid(data) {
})
}
export function details(data) {
return request({
url: '/buscenter/v1/busvehicledatahandover/details/' + data,
method: 'get'
})
}
// 确认
export function saveDeliveryInfo(data) {
return request({

105
anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/suicheziliaoguanli/datapreparation.vue

@ -41,12 +41,13 @@
<el-table :key="tableKey" v-loading="listLoading" :data="list" border style="width: 100%;" @selection-change="handleSelectionChange">
<el-table-column width="50" type="selection" align="center"/>
<el-table-column fixed width="60" label="序号" type="index" :index="indexMethod" align="center"/>
<el-table-column label="操作" align="center" width="100">
<el-table-column label="操作" align="center" width="180">
<template slot-scope="scope">
<el-button type="primary" v-show="scope.row.downloadPath !== ''" size="mini" @click="toDownLoad(scope.row)">下载</el-button>
<el-button type="primary" size="mini" @click="toInfo(scope.row)">查看</el-button>
</template>
</el-table-column>
<el-table-column label="完成状态" align="center">
<el-table-column label="完成状态" align="center" width="100">
<template slot-scope="scope">
<span>{{ scope.row.completeStateValue }}</span>
</template>
@ -56,7 +57,7 @@
<span>{{ scope.row.contractNo }}</span>
</template>
</el-table-column>
<el-table-column label="客户名称" align="center">
<el-table-column label="客户名称" align="center" width="180">
<template slot-scope="scope">
<span>{{ scope.row.customerName }}</span>
</template>
@ -66,24 +67,29 @@
<span>{{ scope.row.model }}</span>
</template>
</el-table-column>
<el-table-column label="车架号" align="center">
<el-table-column label="车架号" align="center" width="180">
<template slot-scope="scope">
<span>{{ scope.row.vinNo }}</span>
</template>
</el-table-column>
<el-table-column label="创建人" align="center">
<el-table-column label="单据编号" align="center" width="190">
<template slot-scope="scope">
<span>{{ scope.row.billNo }}</span>
</template>
</el-table-column>
<el-table-column label="创建人" align="center" width="100">
<template slot-scope="scope">
<span>{{ scope.row.createName }}</span>
</template>
</el-table-column>
<el-table-column label="创建日期" align="center">
<el-table-column label="创建日期" align="center" width="100">
<template slot-scope="scope">
<span>{{ scope.row.createTime }}</span>
</template>
</el-table-column>
<el-table-column label="图片" align="center" width="180px" class-name="small-padding fixed-width">
<el-table-column label="图片" align="center" width="100" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button size="mini" v-show="scope.row.witMatUrl !== ''" type="primary" @click="handleGetCheck(scope.row)">查看</el-button>
<el-button size="mini" v-show="scope.row.imgs.length > 0" type="primary" @click="handleGetCheck(scope.row)">查看</el-button>
</template>
</el-table-column>
</el-table>
@ -99,6 +105,27 @@
<datapreparationAdd v-show="viewState == 2" ref="divAdd" @doback="reseaState" @reloadlist="getList"/>
<!-- 交车确认详情 -->
<datapreparationInfo v-show="viewState == 3" ref="divInfo" @doback="reseaState"/>
<!-- 上传确认单 -->
<el-dialog title="上传确认单" :append-to-body="true" :visible.sync="dialogFileVisible">
<el-form class="formadd">
<el-row style="border-top: 1px solid #E0E3EB">
<el-col :span="24">
<el-form-item>
<el-upload ref="imgUpload" class="avatar-uploader" :headers="accessToken" :action="uploadFile" :data="uploadData" accept=".jpg,.jpeg,.png,.JPG,.JPEG" list-type="picture-card" :file-list="files" :on-preview="handlePictureCardPreview" :on-success="handleSuccess">
<i class="el-icon-plus avatar-uploader-icon"/>
</el-upload>
<el-dialog :visible.sync="dialogVisible" :append-to-body="true" title="查看图片">
<img width="100%" :src="dialogImageUrl" alt="">
</el-dialog>
</el-form-item>
</el-col>
</el-row>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button type="primary" size="small" @click="dialogFileVisible = false">确定</el-button>
<el-button size="small" @click="dialogFileVisible = false">取消</el-button>
</span>
</el-dialog>
<!-- 照片弹窗 -->
<el-dialog :append-to-body="true" :visible.sync="dialogImgVisible">
<el-image v-for="(item,index) in dialogUrl" :key="index" :src="item" style="width: 100px; height: 100px" :preview-src-list="dialogUrl">
@ -115,14 +142,13 @@ import pageye from '@/components/pagination/pageye'
import ButtonBar from '@/components/ButtonBar'
import datapreparationAdd from './datapreparationAdd'
import datapreparationInfo from './datapreparationInfo'
// import upload from '@/components/uploadFileimg/upload'
import { getStorage } from '@/utils/auth'
export default {
name: 'Datapreparation',
components: {
Pagination,
pageye,
// upload,
ButtonBar,
datapreparationAdd,
datapreparationInfo
@ -143,7 +169,7 @@ export default {
type: 'primary',
size: 'small',
icon: '',
btnKey: 'doDel',
btnKey: 'toUpload',
btnLabel: '上传确认单'
},
{
@ -158,6 +184,14 @@ export default {
searchxianshitit: '显示查询条件',
dialogImgVisible: false,
dialogFileVisible: false,
dialogVisible: false,
uploadFile: process.env.VUE_APP_BASE_API + '/buscenter/v1/busvehicledatahandover/upload',
uploadData: {
sid: ''
},
accessToken: {},
files: [],
dialogImageUrl: '',
// -----------
tableKey: 0,
list: [],
@ -188,6 +222,9 @@ export default {
},
mounted() {
this.$refs['btnbar'].setButtonList(this.btnList)
this.accessToken = {
token: getStorage()
}
},
methods: {
//
@ -205,8 +242,8 @@ export default {
case 'toAdd':
this.toAdd()
break
case 'doDel':
this.doDel()
case 'toUpload':
this.toUpload()
break
case 'doClose':
this.doClose()
@ -293,13 +330,53 @@ export default {
this.$message({ showClose: true, type: 'error', message: '请至少选择一条记录进行操作' })
}
},
toUpload() {
if (this.sids.length === 1) {
this.dialogFileVisible = true
this.files = []
this.uploadData.sid = this.sids[0]
} else {
this.$message({ showClose: true, type: 'error', message: '请选择一条记录进行操作' })
return
}
},
handlePictureCardPreview(file) {
this.dialogVisible = true
this.dialogImageUrl = file.url
},
handleSuccess(file) {
this.$message({ showClose: true, type: 'success', message: '上传成功' })
this.getList()
},
toDownLoad(row) {
var xhr = new XMLHttpRequest()
xhr.open('GET', process.env.VUE_APP_BASE_API + '/base/file/download?filePath=' + row.downloadPath + '&outFileName=' + '交车资料确认单', true)
xhr.setRequestHeader('token', getStorage())
xhr.responseType = 'blob'
xhr.onload = function(e) {
//
var blob = this.response
var filename = '交车资料确认单.pdf'
var a = document.createElement('a')
// blob.type="application/octet-stream";
// url
var url = URL.createObjectURL(blob)
a.href = url
a.download = filename
a.click()
// URL
window.URL.revokeObjectURL(url)
}
//
xhr.send()
},
toInfo(row) {
this.viewState = 3
this.$refs['divInfo'].showInfo(row)
},
handleGetCheck(row) {
this.dialogImgVisible = true
this.dialogImageUrl = row.witMatUrl
this.dialogUrl = row.imgs
},
reseaState() {
this.viewState = 1

6
anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/suicheziliaoguanli/datapreparationInfo.vue

@ -51,7 +51,7 @@
</template>
<script>
import { fetchDetailsBySid } from '@/api/suicheziliao/jiaocheziliao'
import { details } from '@/api/suicheziliao/jiaocheziliao'
export default {
name: 'DatapreparationInfo',
@ -74,9 +74,7 @@ export default {
methods: {
showInfo(row) {
this.viewTitle = '交车资料确认详情'
const aa = []
aa.push(row.sid)
fetchDetailsBySid(aa).then((resp) => {
details(row.sid).then((resp) => {
if (resp.success) {
this.formobj = resp.data
}

27
anrui-buscenter/anrui-buscenter-ui/src/views/xiaoshouguanli/xiaoshouzhengce/relation/vehicleselect.vue

@ -64,6 +64,21 @@
<!-- <el-form-item label="采购订单编号:">-->
<!-- <el-input v-model="listQuery.params.orderingNo" placeholder="" clearable/>-->
<!-- </el-form-item>-->
<el-form-item label="厂家入库日期">
<el-date-picker v-model="listQuery.params.priceStartDate" type="date" placeholder="选择日期" value-format="yyyy-MM-dd" format="yyyy-MM-dd"></el-date-picker>
<span style="padding: 0 8px"></span>
<el-date-picker v-model="listQuery.params.priceEndDate" type="date" placeholder="选择日期" value-format="yyyy-MM-dd" format="yyyy-MM-dd"></el-date-picker>
</el-form-item>
<el-form-item label="公司入库日期">
<el-date-picker v-model="listQuery.params.orgPriceStartDate" type="date" placeholder="选择日期" value-format="yyyy-MM-dd" format="yyyy-MM-dd"></el-date-picker>
<span style="padding: 0 8px"></span>
<el-date-picker v-model="listQuery.params.orgPriceEndDate" type="date" placeholder="选择日期" value-format="yyyy-MM-dd" format="yyyy-MM-dd"></el-date-picker>
</el-form-item>
<el-form-item label="买断日期">
<el-date-picker v-model="listQuery.params.solidStartDate" type="date" placeholder="选择日期" value-format="yyyy-MM-dd" format="yyyy-MM-dd"></el-date-picker>
<span style="padding: 0 8px"></span>
<el-date-picker v-model="listQuery.params.solidEndDate" type="date" placeholder="选择日期" value-format="yyyy-MM-dd" format="yyyy-MM-dd"></el-date-picker>
</el-form-item>
<el-form-item label="快捷检索:">
<el-input v-model="listQuery.params.modelName" placeholder="" clearable/>
</el-form-item>
@ -164,6 +179,12 @@ export default {
userSid: '',
orderingNo: '',
orgSid: '',
priceStartDate: '',
priceEndDate: '',
orgPriceStartDate: '',
orgPriceEndDate: '',
solidStartDate: '',
solidEndDate: '',
vehSids: []
},
total: 0
@ -268,6 +289,12 @@ export default {
this.listQuery.params.vehicleVersion = ''
this.listQuery.params.userSid = ''
this.listQuery.params.orderingNo = ''
this.listQuery.params.priceStartDate = ''
this.listQuery.params.priceEndDate = ''
this.listQuery.params.orgPriceStartDate = ''
this.listQuery.params.orgPriceEndDate = ''
this.listQuery.params.solidStartDate = ''
this.listQuery.params.solidEndDate = ''
this.getList()
},
handleSelectionChange(row) {

30
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/vehicleinformationhandover/CompleteRecordVo.java

@ -0,0 +1,30 @@
package com.yxt.anrui.terminal.api.autoservice.vehicleinformationhandover;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
import java.util.List;
/**
* @author Administrator
* @description
* @date 2023/6/25 14:59
*/
@Data
public class CompleteRecordVo implements Vo {
private String contractId;
private String name;
private String createInfo;
private String model;
private String vins;
private String billId;
private String createName;
@ApiModelProperty("创建日期")
private Date createTime;
private String downLoadUrl;
private List<String> urls;
private Boolean showUpload;
private Boolean showDownload;
}

17
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/vehicleinformationhandover/ListQuery.java

@ -0,0 +1,17 @@
package com.yxt.anrui.terminal.api.autoservice.vehicleinformationhandover;
import com.yxt.common.core.query.Query;
import lombok.Data;
/**
* @author Administrator
* @description
* @date 2023/6/25 11:11
*/
@Data
public class ListQuery implements Query {
private String name;
private String type;
private String userSid;
private String orgPath;
}

26
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/vehicleinformationhandover/NotCompleteRecordVo.java

@ -0,0 +1,26 @@
package com.yxt.anrui.terminal.api.autoservice.vehicleinformationhandover;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
* @author Administrator
* @description
* @date 2023/6/25 11:11
*/
@Data
public class NotCompleteRecordVo implements Vo {
private String contractId;
private String customerName;
private String createInfo;
private String carModel;
private List<VinListVo> vinList = new ArrayList<>();
}

10
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/vehicleinformationhandover/VehicleInformationHandoverFeign.java

@ -95,5 +95,15 @@ public interface VehicleInformationHandoverFeign {
@ResponseBody
public ResultBean<PagerVo<AppVehicleDataHandoverVo>> vehicleDataListPage(@RequestBody PagerQuery<AppVehicleDataHandoverQuery> pq);
/**************************************交车资料管理*******************************************/
@ApiOperation("未完成列表")
@PostMapping("/getCarDocsRecordNotList")
@ResponseBody
ResultBean<PagerVo<NotCompleteRecordVo>> getCarDocsRecordNotList(@RequestBody PagerQuery<ListQuery> pagerQuery);
@ApiOperation("已完成列表")
@PostMapping("/getCarDocsConfirmList")
@ResponseBody
ResultBean<PagerVo<CompleteRecordVo>> getCarDocsConfirmList(@RequestBody PagerQuery<ListQuery> pagerQuery);
}

10
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/vehicleinformationhandover/VehicleInformationHandoverFeignFallback.java

@ -85,4 +85,14 @@ public class VehicleInformationHandoverFeignFallback implements VehicleInformati
public ResultBean<PagerVo<AppVehicleDataHandoverVo>> vehicleDataListPage(PagerQuery<AppVehicleDataHandoverQuery> pq) {
return null;
}
@Override
public ResultBean<PagerVo<NotCompleteRecordVo>> getCarDocsRecordNotList(PagerQuery<ListQuery> pagerQuery) {
return null;
}
@Override
public ResultBean<PagerVo<CompleteRecordVo>> getCarDocsConfirmList(PagerQuery<ListQuery> pagerQuery) {
return null;
}
}

19
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/autoservice/vehicleinformationhandover/VinListVo.java

@ -0,0 +1,19 @@
package com.yxt.anrui.terminal.api.autoservice.vehicleinformationhandover;
import com.yxt.common.core.vo.Vo;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
* @author Administrator
* @description
* @date 2023/6/25 11:12
*/
@Data
public class VinListVo implements Vo {
private String vin;
private String recordSid;
private List<String> urls = new ArrayList<>();
}

10
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/vehicleinformationhandover/VehicleInformationHandoverRest.java

@ -94,4 +94,14 @@ public class VehicleInformationHandoverRest implements VehicleInformationHandove
public ResultBean<PagerVo<AppVehicleDataHandoverVo>> vehicleDataListPage(PagerQuery<AppVehicleDataHandoverQuery> pq) {
return vehicleInformationHandoverService.vehicleDataListPage(pq);
}
@Override
public ResultBean<PagerVo<NotCompleteRecordVo>> getCarDocsRecordNotList(PagerQuery<ListQuery> pagerQuery) {
return vehicleInformationHandoverService.getCarDocsRecordNotList(pagerQuery);
}
@Override
public ResultBean<PagerVo<CompleteRecordVo>> getCarDocsConfirmList(PagerQuery<ListQuery> pagerQuery) {
return vehicleInformationHandoverService.getCarDocsConfirmList(pagerQuery);
}
}

28
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/autoservice/vehicleinformationhandover/VehicleInformationHandoverService.java

@ -294,4 +294,32 @@ public class VehicleInformationHandoverService {
}
return rb.success().setData(vo);
}
public ResultBean<PagerVo<NotCompleteRecordVo>> getCarDocsRecordNotList(PagerQuery<ListQuery> pagerQuery) {
ResultBean<PagerVo<NotCompleteRecordVo>> rb = ResultBean.fireFail();
PagerVo<NotCompleteRecordVo> pagerVo = new PagerVo<NotCompleteRecordVo>();
PagerQuery<AppListQuery> query = new PagerQuery<>();
BeanUtil.copyProperties(pagerQuery, query);
ResultBean<PagerVo<AppNotCompleteRecordVo>> resultBean = busVehicleDataHandoverFeign.getCarDocsRecordNotList(query);
if (resultBean.getSuccess()) {
PagerVo<AppNotCompleteRecordVo> data = resultBean.getData();
BeanUtil.copyProperties(data, pagerVo);
return rb.success().setData(pagerVo);
}
return rb.success().setData(pagerVo);
}
public ResultBean<PagerVo<CompleteRecordVo>> getCarDocsConfirmList(PagerQuery<ListQuery> pagerQuery) {
ResultBean<PagerVo<CompleteRecordVo>> rb = ResultBean.fireFail();
PagerVo<CompleteRecordVo> pagerVo = new PagerVo<CompleteRecordVo>();
PagerQuery<AppListQuery> query = new PagerQuery<>();
BeanUtil.copyProperties(pagerQuery, query);
ResultBean<PagerVo<AppCompleteRecordVo>> resultBean = busVehicleDataHandoverFeign.getCarDocsConfirmList(query);
if (resultBean.getSuccess()) {
PagerVo<AppCompleteRecordVo> data = resultBean.getData();
BeanUtil.copyProperties(data, pagerVo);
return rb.success().setData(pagerVo);
}
return rb.success().setData(pagerVo);
}
}

Loading…
Cancel
Save