Browse Source

Merge remote-tracking branch 'origin/master'

zhanglei
God 3 years ago
parent
commit
8e66f8f385
  1. 9
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehicleenterlibrary/AppScmVehicleEnterlibraryCarWarehousingDto.java
  2. 2
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehicleenterlibrary/ScmVehicleEnterlibrary.java
  3. 4
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleenterlibrary/ScmVehicleEnterlibraryService.java
  4. 6
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleexamine/ScmVehicleExamineService.java
  5. 42
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclereturn/ScmVehicleReturnService.java
  6. 28
      anrui-scm/anrui-scm-ui/src/views/baseoutsourcingapplication/baseoutsourcingapplicationAdd.vue
  7. 26
      anrui-scm/anrui-scm-ui/src/views/baseoutsourcingapplication/baseoutsourcingapplicationInfo.vue
  8. 15
      anrui-scm/anrui-scm-ui/src/views/baseoutsourcingapplication/workflow/baseoutsourcingapplication.vue
  9. 19
      anrui-scm/anrui-scm-ui/src/views/baseoutsourcingapplication/workflow/baseoutsourcingapplicationAdd.vue
  10. 15
      anrui-scm/anrui-scm-ui/src/views/baseoutsourcingapplication/workflow/baseoutsourcingapplicationInfo.vue
  11. 14
      anrui-scm/anrui-scm-ui/src/views/cheliang/chexing/chexinglook.vue
  12. 12
      anrui-scm/anrui-scm-ui/src/views/cheliang/chexing/relation/chexingguanlianchangyong.vue
  13. 50
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/purchaseReturn/AppFlowTaskVo.java
  14. 20
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/purchaseReturn/AppGetNodeQuery.java
  15. 60
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/purchaseReturn/AppScmVehicleReturnFeign.java
  16. 12
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/purchaseReturn/AppScmVehicleReturnFeignFallback.java
  17. 36
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/purchaseReturn/VehicleReturnDetailsDto.java
  18. 50
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/purchaseReturn/VehicleReturnDetailsVo.java
  19. 37
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/purchaseReturn/VehicleReturnDetailssVo.java
  20. 74
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/purchaseReturn/VehicleReturnDto.java
  21. 41
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/purchaseReturn/VehicleReturnFlowQuery.java
  22. 21
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/purchaseReturn/VehicleReturnQuery.java
  23. 6
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/supplychain/externalPurchase/ExternalPurchaseService.java
  24. 67
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/supplychain/purchaseReturn/AppScmVehicleReturnRest.java
  25. 194
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/supplychain/purchaseReturn/AppScmVehicleReturnService.java

9
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehicleenterlibrary/AppScmVehicleEnterlibraryCarWarehousingDto.java

@ -87,6 +87,12 @@ public class AppScmVehicleEnterlibraryCarWarehousingDto implements Dto {
@ApiModelProperty("入库状态")
private String inboundState;
@ApiModelProperty("入库日期")
private String inboundDate; // 入库日期
@ApiModelProperty("入库人")
private String inbound; // 入库人
@ApiModelProperty("分公司sid")
private String useOrgSid;
@ -101,4 +107,7 @@ public class AppScmVehicleEnterlibraryCarWarehousingDto implements Dto {
@ApiModelProperty("特殊或差异说明")
private String specialInstructions;
@ApiModelProperty("厂家入库日期")
private String inboundFactoryDate;
}

2
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehicleenterlibrary/ScmVehicleEnterlibrary.java

@ -98,5 +98,7 @@ public class ScmVehicleEnterlibrary extends BaseEntity {
private String warrantyCardNo;
@ApiModelProperty("特殊或差异说明")
private String specialInstructions;
@ApiModelProperty("厂家入库日期")
private String inboundFactoryDate;
}

4
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleenterlibrary/ScmVehicleEnterlibraryService.java

@ -333,6 +333,7 @@ public class ScmVehicleEnterlibraryService extends MybatisBaseService<ScmVehicle
baseVehicleDto.setVehicleState(VehicleState.StockEnum.STOCK.getCode());
baseVehicleDto.setVehicleStateValue(VehicleState.StockEnum.STOCK.getRemarks());
baseVehicleDto.setArrivalDate(dto.getDate());
baseVehicleDto.setPriceDate(scmVehicleEnterlibrary.getInboundFactoryDate());
baseVehicleDto.setLocation(dto.getWarehouseKey()); //库存地点sid
baseVehicleDto.setLocationName(dto.getWarehouse()); //库存地点
baseVehicleDto.setUseOrgSid(scmVehicleEnterlibrary.getUseOrgSid());
@ -359,7 +360,8 @@ public class ScmVehicleEnterlibraryService extends MybatisBaseService<ScmVehicle
baseVehicleDto.setCreateOrgName(scmVehicleEnterlibrary.getUseOrgName());
baseVehicleDto.setUseOrgSid(scmVehicleEnterlibrary.getUseOrgSid());
baseVehicleDto.setUseOrgName(scmVehicleEnterlibrary.getUseOrgName());
baseVehicleDto.setPriceDate(scmVehicleEnterlibrary.getInboundDate());
baseVehicleDto.setPriceDate(scmVehicleEnterlibrary.getInboundFactoryDate());
baseVehicleDto.setArrivalDate(dto.getDate());
baseVehicleDto.setLocation(scmVehicleEnterlibrary.getLocationSid()); //库存地点sid
baseVehicleDto.setLocationName(scmVehicleEnterlibrary.getLocation());//库存地点
baseVehicleDto.setWarrantyCardNo(scmVehicleEnterlibrary.getWarrantyCardNo());// 保修卡号 验车

6
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehicleexamine/ScmVehicleExamineService.java

@ -528,6 +528,7 @@ public class ScmVehicleExamineService extends MybatisBaseService<ScmVehicleExami
carWarehousingDto.setDepartureDate(scmVehicleExamine.getDepartureDate());
carWarehousingDto.setInspectionDate(scmVehicleExamine.getInspectionDate());
carWarehousingDto.setInspection(scmVehicleExamine.getInspection());
carWarehousingDto.setInboundFactoryDate(scmVehicleExamine.getInboundDate());
carWarehousingDto.setInboundState("1");
carWarehousingDto.setUseOrgSid(data1.getSid());
carWarehousingDto.setUseOrgName(data1.getName());
@ -554,8 +555,9 @@ public class ScmVehicleExamineService extends MybatisBaseService<ScmVehicleExami
//车辆台账推送数据
BaseVehicleDto baseVehicleDto = new BaseVehicleDto();
baseVehicleDto.setVinNo(dto.getVin());
baseVehicleDto.setWarrantyCardNo(scmVehicleExamine.getGuaranteeCardNo());//保修卡卡号
baseVehicleDto.setSpecialInstructions(scmVehicleExamine.getModelDifferenceExplain());//特殊配置差异说明
baseVehicleDto.setUseOrgSid(data1.getSid());
baseVehicleDto.setWarrantyCardNo(dto.getGuaranteeCardNo());//保修卡卡号
baseVehicleDto.setSpecialInstructions(dto.getModelDifferenceExplain());//特殊配置差异说明
List<BaseVehicleDto> list = new ArrayList();
list.add(baseVehicleDto);
baseVehicleFeign.saveOrUpdate(list, OperVehicleState.EventType.UPDATE_VEHICLE.getCode());

42
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclereturn/ScmVehicleReturnService.java

@ -219,6 +219,11 @@ public class ScmVehicleReturnService extends MybatisBaseService<ScmVehicleReturn
bv.setBusinessSid(businessSid);
bv.setUserSid(scmVehicleReturnDto.getCreateBySid());
variables.put("businessSid", businessSid);
//若app移动端有此功能,则传递appMap参数
Map<String, Object> appMap = new HashMap<>();
//需和移动端沟通业务sid保存的属性具体值:appMap中sid不是固定的。移动端提供具体字段。
appMap.put("sid", businessSid);
variables.put("app", appMap);
bv.setFormVariables(variables);
bv.setModelId(ProcDefEnum.SCMVEHICLERETURN.getProDefId());
//如果taskid从业务的数据库中查询出来,那这个taskid 和当前的关系是什么 如果数据库中查询出来的taskid是第四个环节的id,但是目前是做的第一次的提交操作。
@ -259,6 +264,11 @@ public class ScmVehicleReturnService extends MybatisBaseService<ScmVehicleReturn
bv.setBusinessSid(businessSid);
bv.setUserSid(dto.getCreateBySid());
variables.put("businessSid", businessSid);
//若app移动端有此功能,则传递appMap参数
Map<String, Object> appMap = new HashMap<>();
//需和移动端沟通业务sid保存的属性具体值:appMap中sid不是固定的。移动端提供具体字段。
appMap.put("sid", businessSid);
variables.put("app", appMap);
bv.setFormVariables(variables);
bv.setModelId(ProcDefEnum.SCMVEHICLERETURN.getProDefId());
if (org.apache.commons.lang3.StringUtils.isBlank(businessTaskid) && org.apache.commons.lang3.StringUtils.isBlank(dto.getTaskId())) {
@ -311,14 +321,14 @@ public class ScmVehicleReturnService extends MybatisBaseService<ScmVehicleReturn
String businessTaskid = booad.getTaskId();
if (businessTaskid.equals(bv.getTaskId())) { //只有数据一致的时候才能进行下一步
ResultBean<UpdateFlowFieldVo> rb1 = flowableFeign.handleProsess(bv);
if (!rb1.getSuccess()){
if (!rb1.getSuccess()) {
return rb.setMsg(rb1.getMsg());
}
String taskDefKey = rb1.getData().getTaskDefKey();
Map<String, Object> stringObjectMap = BeanUtil.beanToMap(rb1.getData());
updateFlowFiled(stringObjectMap);
if("Event_end".equals(taskDefKey)){
// List<ScmVehicleReturnDetailsDto> detailsList = booad.getDetailsList();
if ("Event_end".equals(taskDefKey)) {
// List<ScmVehicleReturnDetailsDto> detailsList = booad.getDetailsList();
List<ScmVehicleReturnDetailssVo> detailsList = scmVehicleReturnDetailsService.detailsList(bv.getBusinessSid());
/*List<String> vino=new ArrayList<>();
detailsList.forEach(item->vino.add(item.getVinNo()));
@ -329,20 +339,20 @@ public class ScmVehicleReturnService extends MybatisBaseService<ScmVehicleReturn
baseVehicleFeign.updateByVinNo(updateQuery);*/
//生成采购退库办理
ResultBean<SysUserVo> sysUserResultBean = sysUserFeign.fetchBySid(booad.getCreateBySid());
BaseManufacturerRetwareDto brd=new BaseManufacturerRetwareDto();
BaseManufacturerRetwareDto brd = new BaseManufacturerRetwareDto();
brd.setSource("采购退库"); // 来源
brd.setOperatorName(sysUserResultBean.getData().getName()); // 操作人姓名
brd.setCreateBySid(booad.getCreateBySid());
brd.setApplyName(sysUserResultBean.getData().getName()); // 申请人姓名
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
brd.setAppluDate(sdf.format(booad.getCreateTime())); // 申请日期
brd.setNum(detailsList.size()+""); // 车辆台数
brd.setNum(detailsList.size() + ""); // 车辆台数
ResultBean<String> stringResultBean = sysStaffOrgFeign.selectSidPathByStaffSid(sysUserResultBean.getData().getStaffSid());
brd.setCreateOrgSid(stringResultBean.getData()); // 创建组织sid
List<BaseManufacturerRetwareVehDto> baseManufacturerRetwareVehs=new ArrayList<>();
List<BaseManufacturerRetwareVehDto> baseManufacturerRetwareVehs = new ArrayList<>();
//detailsList.forEach(item->baseManufacturerRetwareVehs.add(new BaseManufacturerRetwareVehDto()));
for(int i=0;i<detailsList.size();i++){
for (int i = 0; i < detailsList.size(); i++) {
BaseManufacturerRetwareVehDto baseManufacturerRetwareVehDto = new BaseManufacturerRetwareVehDto();
String vinNo = detailsList.get(i).getVinNo();
baseManufacturerRetwareVehDto.setVinNo(vinNo);
@ -366,7 +376,7 @@ public class ScmVehicleReturnService extends MybatisBaseService<ScmVehicleReturn
ScmVehicleReturn scmVehicleReturn = fetchBySid(bv.getBusinessSid());
BigDecimal money = scmVehicleReturn.getMoney();
bv.getFormVariables().put("isLoan", money.compareTo(new BigDecimal("0")) > 0);
// ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getNextNodesForSubmit(bv);
// ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getNextNodesForSubmit(bv);
//判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo
/* List<GetNodeVo> voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), GetNodeVo.class)).collect(Collectors.toList());
String id = voList.get(0).getId();
@ -465,9 +475,9 @@ public class ScmVehicleReturnService extends MybatisBaseService<ScmVehicleReturn
map.put("businessSid", dto.getBusinessSid());
map.put("nodeState", nodeState);
map.put("taskDefKey", taskDefKey);
/* if (incomingSourceRef.contains("start")) {*/
map.put("flowState", nodeState);
/* }*/
/* if (incomingSourceRef.contains("start")) {*/
map.put("flowState", nodeState);
/* }*/
sysFormLinkFeign.updateFiled(map);
return new ResultBean().success();
}
@ -491,7 +501,7 @@ public class ScmVehicleReturnService extends MybatisBaseService<ScmVehicleReturn
baseVehicleDto.setVehicleStateValue(VehicleState.StockEnum.STOCK.getRemarks());
baseVehicleDtos.add(baseVehicleDto);
}
baseVehicleFeign.saveOrUpdate(baseVehicleDtos,OperVehicleState.EventType.UPDATE_VEHICLE.getCode());
baseVehicleFeign.saveOrUpdate(baseVehicleDtos, OperVehicleState.EventType.UPDATE_VEHICLE.getCode());
return resultBean;
} else {
return ResultBean.fireFail().setMsg("操作失败,提交的数据不一致!");
@ -557,7 +567,7 @@ public class ScmVehicleReturnService extends MybatisBaseService<ScmVehicleReturn
public ResultBean<ScmVehicleReturnDetailsVo> details(String sid) {
ResultBean<ScmVehicleReturnDetailsVo> rb = ResultBean.fireFail();
ScmVehicleReturnDetailsVo vo = new ScmVehicleReturnDetailsVo();
if (StringUtils.isBlank(sid)) {
if (StringUtils.isBlank(sid)) {
//申请日期即为当天
vo.setCreateTime(DateUtil.today());
//申请单编号
@ -586,9 +596,9 @@ public class ScmVehicleReturnService extends MybatisBaseService<ScmVehicleReturn
String bill = Rule.getBill(b);
String i = baseMapper.selectNum(bill);
String billNo = "";
if(StringUtils.isNotBlank(i)){
if (StringUtils.isNotBlank(i)) {
billNo = Rule.getBillNo(bill, Integer.valueOf(i).intValue());
}else{
} else {
billNo = Rule.getBillNo(bill, 0);
}
return billNo;

28
anrui-scm/anrui-scm-ui/src/views/baseoutsourcingapplication/baseoutsourcingapplicationAdd.vue

@ -75,7 +75,7 @@
<el-col :span="3" class="tleftb">
<span>常用配置</span>
</el-col>
<el-col :span="21" class="trightb">
<el-col :span="21" class="trightb tlineheightb">
<el-form-item prop="configName">{{ formobj.configName }}</el-form-item>
</el-col>
</el-row>
@ -90,19 +90,19 @@
</el-form-item>
</el-col>
<el-col :span="3" class="tleftb">
<span>厂家合同价</span>
<span>内部编码</span>
</el-col>
<el-col :span="5" class="trightb">
<el-form-item prop="manufactorSettlementPrice">
<el-input v-model="formobj.manufactorSettlementPrice" class="addinputw" clearable></el-input>
<el-form-item prop="">
<span>{{ formobj.insideCode }}</span>
</el-form-item>
</el-col>
<el-col :span="3" class="tleftb">
<span>内部编码</span>
<span>厂家合同价</span>
</el-col>
<el-col :span="5" class="trightb">
<el-form-item prop="">
<span>{{ formobj.insideCode }}</span>
<el-form-item prop="manufactorSettlementPrice">
<el-input v-model="formobj.manufactorSettlementPrice" class="addinputw" clearable></el-input>
</el-form-item>
</el-col>
</el-row>
@ -759,7 +759,17 @@ export default {
</script>
<style scoped>
.formadd .el-row .el-col /deep/ .el-form-item .addinputw {
width: 100%;
.tlineheightb {
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
}
/deep/ .tlineheightb .el-form-item .el-form-item__content {
line-height: 15px !important;
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
}
</style>

26
anrui-scm/anrui-scm-ui/src/views/baseoutsourcingapplication/baseoutsourcingapplicationInfo.vue

@ -42,7 +42,7 @@
</el-row>
<el-row>
<el-col :span="3" class="tleftb">常用配置</el-col>
<el-col :span="21" class="trightb">
<el-col :span="21" class="trightb tlineheightb">
<el-form-item prop="useOrg"><span>{{ formobj.configName }}</span></el-form-item>
</el-col>
</el-row>
@ -51,10 +51,6 @@
<el-col :span="5" class="trightb">
<el-form-item prop="useOrg"><span>{{ formobj.guidedPrice }}</span></el-form-item>
</el-col>
<el-col :span="3" class="tleftb">厂家合同价</el-col>
<el-col :span="5" class="trightb">
<el-form-item prop="useOrg"><span>{{ formobj.manufactorSettlementPrice }}</span></el-form-item>
</el-col>
<el-col :span="3" class="tleftb">
<span>内部编码</span>
</el-col>
@ -63,6 +59,10 @@
<span>{{ formobj.insideCode }}</span>
</el-form-item>
</el-col>
<el-col :span="3" class="tleftb">厂家合同价</el-col>
<el-col :span="5" class="trightb">
<el-form-item prop="useOrg"><span>{{ formobj.manufactorSettlementPrice }}</span></el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="3" class="tleftb">订金账户名称</el-col>
@ -293,4 +293,18 @@ export default {
}
</script>
<style scoped></style>
<style scoped>
.tlineheightb {
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
}
/deep/ .tlineheightb .el-form-item .el-form-item__content {
line-height: 15px !important;
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
}
</style>

15
anrui-scm/anrui-scm-ui/src/views/baseoutsourcingapplication/workflow/baseoutsourcingapplication.vue

@ -44,7 +44,7 @@
</el-row>
<el-row>
<el-col :span="3" class="tleftb">常用配置</el-col>
<el-col :span="21" class="trightb">
<el-col :span="21" class="trightb tlineheightb">
<el-form-item prop="useOrg"><span>{{ formobj.configName }}</span></el-form-item>
</el-col>
</el-row>
@ -583,4 +583,17 @@ export default {
text-align: center;
padding: 30px 0 20px 0;
}
.tlineheightb {
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
}
/deep/ .tlineheightb .el-form-item .el-form-item__content {
line-height: 15px !important;
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
}
</style>

19
anrui-scm/anrui-scm-ui/src/views/baseoutsourcingapplication/workflow/baseoutsourcingapplicationAdd.vue

@ -75,7 +75,7 @@
<el-col :span="3" class="tleftb">
<span><span class="icon">*</span>常用配置</span>
</el-col>
<el-col :span="21" class="trightb">
<el-col :span="21" class="trightb tlineheightb">
<el-form-item prop="configName">{{ formobj.configName }}</el-form-item>
</el-col>
</el-row>
@ -691,13 +691,22 @@ export default {
</script>
<style scoped>
.formadd .el-row .el-col /deep/ .el-form-item .addinputw {
width: 100%;
}
.titwu {
font-size: 28px;
text-align: center;
padding: 30px 0 20px 0;
}
.tlineheightb {
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
}
/deep/ .tlineheightb .el-form-item .el-form-item__content {
line-height: 15px !important;
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
}
</style>

15
anrui-scm/anrui-scm-ui/src/views/baseoutsourcingapplication/workflow/baseoutsourcingapplicationInfo.vue

@ -41,7 +41,7 @@
</el-row>
<el-row>
<el-col :span="3" class="tleftb">常用配置</el-col>
<el-col :span="21" class="trightb">
<el-col :span="21" class="trightb tlineheightb">
<el-form-item prop="useOrg"><span>{{ formobj.configName }}</span></el-form-item>
</el-col>
</el-row>
@ -361,4 +361,17 @@ export default {
text-align: center;
padding: 30px 0 20px 0;
}
.tlineheightb {
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
}
/deep/ .tlineheightb .el-form-item .el-form-item__content {
line-height: 15px !important;
display: flex;
flex-direction: row;
justify-content: flex-start;
align-items: center;
}
</style>

14
anrui-scm/anrui-scm-ui/src/views/cheliang/chexing/chexinglook.vue

@ -134,12 +134,22 @@
</div>
<template class="tablelist">
<el-table :data="list" :index="index" border style="width: 100%">
<el-table-column align="center" label="序号" type="index" width="50"/>
<el-table-column prop="mNum" width="150" label="指导价(万元)" align="center">
<el-table-column align="center" label="序号" type="index" width="60"/>
<el-table-column prop="mNum" width="130" label="内部编码" align="center">
<template slot-scope="props">
<span>{{ props.row.insideCode }}</span>
</template>
</el-table-column>
<el-table-column prop="mNum" width="150" label="销售指导价(全款)" align="center">
<template slot-scope="props">
<span>{{ props.row.guidedPrice }}</span>
</template>
</el-table-column>
<el-table-column prop="mNum" width="150" label="销售指导价(贷款)" align="center">
<template slot-scope="props">
<span>{{ props.row.manufactorSettlementPrice }}</span>
</template>
</el-table-column>
<el-table-column prop="mName" width="150" label="颜色" align="center">
<template slot-scope="props">
<span>{{ props.row.carColor }}</span>

12
anrui-scm/anrui-scm-ui/src/views/cheliang/chexing/relation/chexingguanlianchangyong.vue

@ -135,11 +135,21 @@
<el-button size="mini" type="primary" :disabled="row.guidedPrice !== ''" @click="handleJiage(row)">价格维护</el-button>
</template>
</el-table-column>
<el-table-column width="110px" fixed label="指导价(元)" align="center">
<el-table-column width="130px" fixed label="内部编码" align="center">
<template slot-scope="scope">
<span>{{ scope.row.insideCode }}</span>
</template>
</el-table-column>
<el-table-column width="150px" fixed label="销售指导价(全款)" align="center">
<template slot-scope="scope">
<span>{{ scope.row.guidedPrice }}</span>
</template>
</el-table-column>
<el-table-column width="150px" fixed label="销售指导价(贷款)" align="center">
<template slot-scope="scope">
<span>{{ scope.row.manufactorSettlementPrice }}</span>
</template>
</el-table-column>
<el-table-column width="130px" label="最新更新日期" align="center">
<template slot-scope="scope">
<span>{{ scope.row.modifyTime }}</span>

50
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/purchaseReturn/AppFlowTaskVo.java

@ -0,0 +1,50 @@
package com.yxt.anrui.terminal.api.supplychain.purchaseReturn;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Data
public class AppFlowTaskVo implements Vo {
private static final long serialVersionUID = 6521877111475189318L;
@ApiModelProperty("businessSid ")
private String businessSid;
@ApiModelProperty("任务Id")
private String taskId;
@ApiModelProperty("用户Id")
private String userId;
@ApiModelProperty("用户Sid")
private String userSid;
@ApiModelProperty("任务意见")
private String comment;
@ApiModelProperty("流程实例Id")
@JsonProperty("procInsId")
private String instanceId;
@ApiModelProperty("节点")
private String targetKey;
@ApiModelProperty("流程变量信息")
private Map<String, Object> values = new HashMap<>();
@ApiModelProperty("审批人")
private String assignee;
@ApiModelProperty("候选人")
private List<String> candidateUsers = new ArrayList<>();
@ApiModelProperty("审批组")
private List<String> candidateGroups = new ArrayList<>();
}

20
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/purchaseReturn/AppGetNodeQuery.java

@ -0,0 +1,20 @@
package com.yxt.anrui.terminal.api.supplychain.purchaseReturn;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.util.Map;
@Data
public class AppGetNodeQuery implements Query {
private static final long serialVersionUID = 7176309161307636330L;
@ApiModelProperty(value = "环节定义id")
@NotBlank(message = "参数错误:taskDefKey")
private String taskDefKey;
@ApiModelProperty(value = "分支字段及业务字段")
private Map<String, Object> formVariables;
}

60
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/purchaseReturn/AppScmVehicleReturnFeign.java

@ -0,0 +1,60 @@
package com.yxt.anrui.terminal.api.supplychain.purchaseReturn;
import com.yxt.anrui.terminal.api.supplychain.modelAdjust.ModelModpriceQuery;
import com.yxt.common.core.result.ResultBean;
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.*;
/**
* @Author dimengzhe
* @Date 2022/4/6 16:39
* @Description
*/
@FeignClient(
contextId = "anrui-scm-ScmVehicleReturn",
name = "anrui-terminal",
path = "supplychain/v1/purchaseReturn",
fallback = AppScmVehicleReturnFeignFallback.class)
public interface AppScmVehicleReturnFeign {
@ApiOperation("获取采购退库详情")
@GetMapping("/getPurchaseReturn/{sid}")
@ResponseBody
ResultBean<VehicleReturnDetailsVo> getPurchaseReturn(@PathVariable("sid") String sid);
@ApiOperation("提交")
@PostMapping("/submitPurchaseReturnInfo")
@ResponseBody
ResultBean submitPurchaseReturnInfo(@RequestBody VehicleReturnDto dto);
@ApiOperation(value = "办理(同意)")
@PutMapping("/agreePurchaseReturnInfo")
@ResponseBody
public ResultBean agreePurchaseReturnInfo(@RequestBody VehicleReturnFlowQuery vehicleReturnFlowQuery);
@ApiOperation(value = "驳回任务")
@PutMapping("/rejectPurchaseReturnInfo")
@ResponseBody
ResultBean rejectPurchaseReturnInfo(@RequestBody AppFlowTaskVo flowTaskVo);
@ApiOperation(value = "撤回任务")
@PutMapping("/recallPurchaseReturnInfo")
@ResponseBody
ResultBean recallPurchaseReturnInfo(@RequestBody AppFlowTaskVo flowTaskVo);
@ApiOperation(value = "终止任务")
@PutMapping("/stopPurchaseReturnInfo")
@ResponseBody
ResultBean stopPurchaseReturnInfo(@RequestBody AppFlowTaskVo flowTaskVo);
@ApiOperation("获取流程操作标题")
@GetMapping("/getFlowOperateTitle")
@ResponseBody
ResultBean<String> getFlowOperateTitle(@SpringQueryMap VehicleReturnQuery query);
}

12
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/purchaseReturn/AppScmVehicleReturnFeignFallback.java

@ -0,0 +1,12 @@
package com.yxt.anrui.terminal.api.supplychain.purchaseReturn;
import org.springframework.stereotype.Component;
/**
* @Author dimengzhe
* @Date 2022/4/6 16:40
* @Description
*/
@Component
public class AppScmVehicleReturnFeignFallback {
}

36
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/purchaseReturn/VehicleReturnDetailsDto.java

@ -0,0 +1,36 @@
package com.yxt.anrui.terminal.api.supplychain.purchaseReturn;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.yxt.common.core.dto.Dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
@Data
public class VehicleReturnDetailsDto implements Dto {
private static final long serialVersionUID = -3958214722435321143L;
@ApiModelProperty(value = "车架号")
@JsonProperty("vin")
private String vinNo;
@ApiModelProperty(value = "车型")
private String modelName;
@ApiModelProperty(value = "常用配置")
private String configName;
@ApiModelProperty(value = "入库日期")
@JsonProperty("date")
private Date inboundDate;
@ApiModelProperty(value = "退库费用")
@JsonProperty("price")
private BigDecimal returnStockCost;
@ApiModelProperty(value = "费用说明")
@JsonProperty("reason")
private String costRemarks;
@ApiModelProperty(value = "车型sid")
private String modelSid;
@ApiModelProperty(value = "配置sid")
private String configSid;
}

50
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/purchaseReturn/VehicleReturnDetailsVo.java

@ -0,0 +1,50 @@
package com.yxt.anrui.terminal.api.supplychain.purchaseReturn;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
@Data
public class VehicleReturnDetailsVo implements Vo {
private static final long serialVersionUID = 7195403569674380054L;
@ApiModelProperty(value = "申请编号")
private String applicationCode;
@ApiModelProperty(value = "申请人")
@JsonProperty("applyName")
private String name;
@ApiModelProperty(value = "申请日期")
@JsonProperty("date")
private String createTime;
@ApiModelProperty(value = "退库原因")
private String reason;
@ApiModelProperty(value = "费用")
@JsonSerialize(using = ToStringSerializer.class)
@JsonProperty("totalPrice")
private String money;
@ApiModelProperty(value = "车辆列表")
@JsonProperty("records")
private List<VehicleReturnDetailssVo> voList = new ArrayList<>();
@ApiModelProperty(value = "费用说明")
private String remarks;
@ApiModelProperty(value = "分公司名称")
@JsonProperty("company")
private String orgName;
@ApiModelProperty(value = "createBySid")
private String createBySid;
@ApiModelProperty(value = "分公司sid")
private String createOrgSid;
@ApiModelProperty(value = "taskId")
private String taskId;
@ApiModelProperty("procInsId")
private String instanceId;
}

37
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/purchaseReturn/VehicleReturnDetailssVo.java

@ -0,0 +1,37 @@
package com.yxt.anrui.terminal.api.supplychain.purchaseReturn;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
@Data
public class VehicleReturnDetailssVo implements Vo {
private static final long serialVersionUID = 1011953352683783209L;
@ApiModelProperty(value = "车架号")
@JsonProperty("vin")
private String vinNo;
@ApiModelProperty(value = "车型名称")
private String modelName;
@ApiModelProperty(value = "常用配置")
private String configName;
@ApiModelProperty("车型sid")
private String modelSid;
@ApiModelProperty("配置sid")
private String configSid;
@ApiModelProperty(value = "入库日期")
@JsonProperty("date")
private String inboundDate;
@ApiModelProperty(value = "退库费用")
@JsonProperty("price")
private BigDecimal returnStockCost;
@ApiModelProperty(value = "费用说明")
@JsonProperty("reason")
private String costRemarks;
}

74
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/purchaseReturn/VehicleReturnDto.java

@ -0,0 +1,74 @@
package com.yxt.anrui.terminal.api.supplychain.purchaseReturn;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.yxt.common.core.dto.Dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@Data
public class VehicleReturnDto implements Dto {
private static final long serialVersionUID = -6340699943402564179L;
@ApiModelProperty(value = "sid")
private String sid;
/* @ApiModelProperty(value = "申请编号")
@NotBlank(message = "申请编号不能为空")
private String applicationCode;*/
@ApiModelProperty(value = "申请人sid", required = true)
@NotBlank(message = "申请人不能为空")
@JsonProperty("userSid")
private String createBySid;
@ApiModelProperty(value = "申请人", required = true)
@NotBlank(message = "申请人不能为空")
@JsonProperty("applyName")
private String name;
@ApiModelProperty(value = "申请日期", required = true)
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@JsonProperty("date")
private Date createTime;
@ApiModelProperty(value = "退库原因", required = true)
@NotBlank(message = "退库原因不能为空")
private String reason;
@ApiModelProperty(value = "费用")
@JsonProperty("totalPrice")
private String money;
@ApiModelProperty(value = "车辆列表")
private List<VehicleReturnDetailsDto> detailsList = new ArrayList<>();
@ApiModelProperty("流程定义的id")
private String procDefId;
@ApiModelProperty("环节定义的sid")
private String taskDefKey;
@ApiModelProperty("流程实例的sid")
private String instanceId;
@ApiModelProperty(value = "节点状态")
private String nodeState;
@ApiModelProperty("任务id")
private String taskId;
@ApiModelProperty("业务sid")
private String businessSid;
@ApiModelProperty("comment")
private String comment;
@ApiModelProperty(value = "procInsId")
private String procInsId;
@ApiModelProperty(value = "费用说明")
private String remarks;
@ApiModelProperty(value = "分公司名称")
@JsonProperty("company")
private String orgName;
@ApiModelProperty(value = "分公司sid")
private String createOrgSid;
}

41
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/purchaseReturn/VehicleReturnFlowQuery.java

@ -0,0 +1,41 @@
package com.yxt.anrui.terminal.api.supplychain.purchaseReturn;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@Data
public class VehicleReturnFlowQuery implements Query {
private static final long serialVersionUID = 7509263507958557992L;
@ApiModelProperty(value = "处理意见")
private String comment;
@ApiModelProperty(value = "流程id")
@JsonProperty("procInsId")
private String instanceId;
@ApiModelProperty(value = "环节id")
private String taskId;
@ApiModelProperty(value = "用户sid")
private String userSid;
@ApiModelProperty(value = "业务sid")
private String businessSid;
@ApiModelProperty(value = "taskDefKey")
private String taskDefKey;
/**
* 当前用户部门的全路径
*/
private String orgSidPath;
/**
* 业务参数按需传递
*/
private Map<String, Object> formVariables;
}

21
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/purchaseReturn/VehicleReturnQuery.java

@ -0,0 +1,21 @@
package com.yxt.anrui.terminal.api.supplychain.purchaseReturn;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotNull;
@Data
public class VehicleReturnQuery implements Query {
private static final long serialVersionUID = 738481886565371528L;
@ApiModelProperty(value = "节点key")
private String taskDefKey;
@ApiModelProperty(value = "业务sid")
private String businessSid;
@ApiModelProperty(value = "0 上一环节 1下一环节")
@NotNull(message = "参数错误:next")
private Integer next;
}

6
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/supplychain/externalPurchase/ExternalPurchaseService.java

@ -5,7 +5,7 @@ import com.yxt.anrui.base.api.baseoutsourcingapplication.AppBaseOutsourcingAppli
import com.yxt.anrui.base.api.baseoutsourcingapplication.BaseOutsourcingApplicationDto;
import com.yxt.anrui.base.api.baseoutsourcingapplication.BaseOutsourcingApplicationFeign;
import com.yxt.anrui.base.api.baseoutsourcingapplication.BusinessVariablesDto;
import com.yxt.anrui.base.api.basevehicleactualsales.flow.ActualGetNodeVo;
import com.yxt.anrui.base.api.baseoutsourcingapplication.flow.GetNodeVo;
import com.yxt.anrui.base.api.flow.FlowTaskVo;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrg;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign;
@ -115,7 +115,7 @@ public class ExternalPurchaseService {
BeanUtil.copyProperties(query, getNodeQuery);
String data = "";
if (next == 0) {
ResultBean<List<ActualGetNodeVo>> getPreviousNodesForReject = baseOutsourcingApplicationFeign.getPreviousNodesForReject(getNodeQuery);
ResultBean<List<GetNodeVo>> getPreviousNodesForReject = baseOutsourcingApplicationFeign.getPreviousNodesForReject(getNodeQuery);
if (getPreviousNodesForReject.getSuccess()) {
getPreviousNodesForReject.getData().removeAll(Collections.singleton(null));
data = getPreviousNodesForReject.getData().get(0).getName();
@ -123,7 +123,7 @@ public class ExternalPurchaseService {
return rb.setMsg(getPreviousNodesForReject.getMsg());
}
} else if (next == 1) {
ResultBean<List<ActualGetNodeVo>> getNextNodesForSubmit = baseOutsourcingApplicationFeign.getNextNodesForSubmit(getNodeQuery);
ResultBean<List<GetNodeVo>> getNextNodesForSubmit = baseOutsourcingApplicationFeign.getNextNodesForSubmit(getNodeQuery);
if (getNextNodesForSubmit.getSuccess()) {
getNextNodesForSubmit.getData().removeAll(Collections.singleton(null));
data = getNextNodesForSubmit.getData().get(0).getName();

67
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/supplychain/purchaseReturn/AppScmVehicleReturnRest.java

@ -0,0 +1,67 @@
package com.yxt.anrui.terminal.biz.supplychain.purchaseReturn;
import cn.hutool.core.bean.BeanUtil;
import com.yxt.anrui.flowable.api.utils.ProcDefEnum;
import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables;
import com.yxt.anrui.scm.api.flow.FlowTaskVo;
import com.yxt.anrui.scm.api.scmvehiclereturn.*;
import com.yxt.anrui.scm.api.scmvehiclereturn.flow.GetNodeQuery;
import com.yxt.anrui.terminal.api.supplychain.modelAdjust.ModelModpriceQuery;
import com.yxt.anrui.terminal.api.supplychain.purchaseReturn.*;
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 org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
/**
* @Author dimengzhe
* @Date 2022/4/6 17:45
* @Description
*/
@Api(tags = "车辆采购退库管理")
@RequestMapping("supplychain/v1/purchaseReturn")
@Controller
public class AppScmVehicleReturnRest implements AppScmVehicleReturnFeign {
@Autowired
private AppScmVehicleReturnService appScmVehicleReturnService;
@Override
public ResultBean<VehicleReturnDetailsVo> getPurchaseReturn(String sid) {
return appScmVehicleReturnService.getPurchaseReturn(sid);
}
@Override
public ResultBean submitPurchaseReturnInfo(VehicleReturnDto dto) {
return appScmVehicleReturnService.submitPurchaseReturnInfo(dto);
}
@Override
public ResultBean agreePurchaseReturnInfo(VehicleReturnFlowQuery vehicleReturnFlowQuery) {
return appScmVehicleReturnService.agreePurchaseReturnInfo(vehicleReturnFlowQuery);
}
@Override
public ResultBean rejectPurchaseReturnInfo(AppFlowTaskVo flowTaskVo) {
return appScmVehicleReturnService.rejectPurchaseReturnInfo(flowTaskVo);
}
@Override
public ResultBean recallPurchaseReturnInfo(AppFlowTaskVo flowTaskVo) {
return appScmVehicleReturnService.recallPurchaseReturnInfo(flowTaskVo);
}
@Override
public ResultBean stopPurchaseReturnInfo(AppFlowTaskVo flowTaskVo) {
return appScmVehicleReturnService.stopPurchaseReturnInfo(flowTaskVo);
}
@Override
public ResultBean<String> getFlowOperateTitle(VehicleReturnQuery query) {
return appScmVehicleReturnService.getFlowOperateTitle(query);
}
}

194
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/supplychain/purchaseReturn/AppScmVehicleReturnService.java

@ -0,0 +1,194 @@
package com.yxt.anrui.terminal.biz.supplychain.purchaseReturn;
import cn.hutool.core.bean.BeanUtil;
import com.yxt.anrui.base.api.basemodelmodprice.flow.BaseModelModPriceCompleteDto;
import com.yxt.anrui.base.api.basevehicle.BaseVehicle;
import com.yxt.anrui.base.api.basevehicle.BaseVehicleFeign;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrg;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign;
import com.yxt.anrui.scm.api.flow.FlowTaskVo;
import com.yxt.anrui.scm.api.scmvehicleenterlibrary.AppScmVehicleEnterlibraryDetailsVo;
import com.yxt.anrui.scm.api.scmvehiclegression.flowable.GetNodeVo;
import com.yxt.anrui.scm.api.scmvehiclereturn.ScmVehicleReturnDetailsVo;
import com.yxt.anrui.scm.api.scmvehiclereturn.ScmVehicleReturnDto;
import com.yxt.anrui.scm.api.scmvehiclereturn.ScmVehicleReturnFeign;
import com.yxt.anrui.scm.api.scmvehiclereturn.ScmVehicleReturnFlowQuery;
import com.yxt.anrui.scm.api.scmvehiclereturn.flow.GetNodeQuery;
import com.yxt.anrui.terminal.api.supplychain.purchaseReturn.*;
import com.yxt.anrui.terminal.api.supplychain.scmvehicleenterlibrary.AppEnterlibraryDetailsVo;
import com.yxt.common.core.result.ResultBean;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Collections;
import java.util.List;
/**
* @Author dimengzhe
* @Date 2022/4/7 10:35
* @Description
*/
@Service
public class AppScmVehicleReturnService {
@Autowired
ScmVehicleReturnFeign scmVehicleReturnFeign;
@Autowired
BaseVehicleFeign baseVehicleFeign;
@Autowired
SysStaffOrgFeign sysStaffOrgFeign;
/**
* 获取采购退库详情
*
* @param sid
* @return
*/
public ResultBean<VehicleReturnDetailsVo> getPurchaseReturn(String sid) {
ResultBean<VehicleReturnDetailsVo> rb = ResultBean.fireFail();
VehicleReturnDetailsVo vo = new VehicleReturnDetailsVo();
ResultBean<ScmVehicleReturnDetailsVo> resultBean = scmVehicleReturnFeign.details(sid);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
ScmVehicleReturnDetailsVo scmVehicleReturnDetailsVo = resultBean.getData();
BeanUtil.copyProperties(scmVehicleReturnDetailsVo, vo);
List<VehicleReturnDetailssVo> records = vo.getVoList();
for (VehicleReturnDetailssVo record : records) {
String vinNo = record.getVinNo();
BaseVehicle data = baseVehicleFeign.selectByVinNoAndOrgSid(vinNo, vo.getCreateOrgSid()).getData();
record.setModelSid(data.getModelSid());
record.setConfigSid(data.getModelConfigSid());
}
return rb.success().setData(vo);
}
/**
* 获取流程操作标题
*
* @param query
* @return
*/
public ResultBean<String> getFlowOperateTitle(VehicleReturnQuery query) {
ResultBean<String> rb = ResultBean.fireFail();
//0 上一环节 1下一环节
int next = query.getNext();
GetNodeQuery getNodeQuery = new GetNodeQuery();
BeanUtil.copyProperties(query, getNodeQuery);
String data = "";
if (next == 0) {
ResultBean<List<GetNodeVo>> getPreviousNodesForReject = scmVehicleReturnFeign.getPreviousNodesForReject(getNodeQuery);
if (getPreviousNodesForReject.getSuccess()) {
getPreviousNodesForReject.getData().removeAll(Collections.singleton(null));
data = getPreviousNodesForReject.getData().get(0).getName();
} else {
return rb.setMsg(getPreviousNodesForReject.getMsg());
}
} else if (next == 1) {
ResultBean<List<GetNodeVo>> getNextNodesForSubmit = scmVehicleReturnFeign.getNextNodesForSubmit(getNodeQuery);
if (getNextNodesForSubmit.getSuccess()) {
getNextNodesForSubmit.getData().removeAll(Collections.singleton(null));
data = getNextNodesForSubmit.getData().get(0).getName();
} else {
return rb.setMsg(getNextNodesForSubmit.getMsg());
}
} else {
return rb.setMsg("参数错误:next");
}
return rb.success().setData(data);
}
/**
* 驳回任务
*
* @param appflowTaskVo
* @return
*/
public ResultBean rejectPurchaseReturnInfo(AppFlowTaskVo appflowTaskVo) {
ResultBean rb = ResultBean.fireFail();
FlowTaskVo flowTaskVo = new FlowTaskVo();
BeanUtil.copyProperties(appflowTaskVo, flowTaskVo);
ResultBean resultBean = scmVehicleReturnFeign.taskReject(flowTaskVo);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
return rb.success();
}
/**
* 撤回任务
*
* @param appflowTaskVo
* @return
*/
public ResultBean recallPurchaseReturnInfo(AppFlowTaskVo appflowTaskVo) {
ResultBean rb = ResultBean.fireFail();
FlowTaskVo flowTaskVo = new FlowTaskVo();
BeanUtil.copyProperties(appflowTaskVo, flowTaskVo);
ResultBean resultBean = scmVehicleReturnFeign.revokeProcess(flowTaskVo);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
return rb.success();
}
/**
* 终止任务
*
* @param appflowTaskVo
* @return
*/
public ResultBean stopPurchaseReturnInfo(AppFlowTaskVo appflowTaskVo) {
ResultBean rb = ResultBean.fireFail();
FlowTaskVo flowTaskVo = new FlowTaskVo();
BeanUtil.copyProperties(appflowTaskVo, flowTaskVo);
ResultBean resultBean = scmVehicleReturnFeign.breakProcess(flowTaskVo);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
return rb.success();
}
/**
* 同意办理接口
*
* @param vehicleReturnFlowQuery
* @return
*/
public ResultBean agreePurchaseReturnInfo(VehicleReturnFlowQuery vehicleReturnFlowQuery) {
ResultBean rb = ResultBean.fireFail();
ScmVehicleReturnFlowQuery scmVehicleReturnFlowQuery = new ScmVehicleReturnFlowQuery();
BeanUtil.copyProperties(vehicleReturnFlowQuery, scmVehicleReturnFlowQuery);
ResultBean resultBean = scmVehicleReturnFeign.complete(scmVehicleReturnFlowQuery);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
return rb.success();
}
/**
* 提交接口
*
* @param dto
* @return
*/
public ResultBean submitPurchaseReturnInfo(VehicleReturnDto dto) {
ResultBean rb = ResultBean.fireFail();
List<VehicleReturnDetailsDto> detailsList = dto.getDetailsList();
for (VehicleReturnDetailsDto vehicleReturnDetailsDto : detailsList) {
String useOrgSid = sysStaffOrgFeign.getPathSidByUserSid(dto.getCreateBySid()).getData();
String vinNo = vehicleReturnDetailsDto.getVinNo();
BaseVehicle data = baseVehicleFeign.selectByVinNoAndOrgSid(vinNo, useOrgSid).getData();
vehicleReturnDetailsDto.setConfigName(data.getConfigName());
}
ScmVehicleReturnDto scmVehicleReturnDto = new ScmVehicleReturnDto();
BeanUtil.copyProperties(dto, scmVehicleReturnDto);
ResultBean resultBean = scmVehicleReturnFeign.submitVehicleReturn(scmVehicleReturnDto);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
return rb.success();
}
}
Loading…
Cancel
Save