Browse Source

Merge remote-tracking branch 'origin/master'

master
God 3 years ago
parent
commit
29326f656d
  1. 4
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/VehicleGression.java
  2. 9
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/BaseVehicleService.java
  3. 4
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleactualsales/BaseVehicleActualSalesService.java
  4. 2
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleapplydetail/BusVehicleApplyDetailMapper.xml
  5. 28
      anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowtask/FlowTaskService.java
  6. 6
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehiclegression/AppScmVehicleCarTransferSiteImageDto.java
  7. 6
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehiclegression/AppScmVehicleGressionDetailsVo.java
  8. 2
      anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehiclegression/AppScmVehicleGressionPageVo.java
  9. 2
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclegression/ScmVehicleGressionRest.java
  10. 89
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclegression/ScmVehicleGressionService.java
  11. 4
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclegressionveh/ScmVehicleGressionVehMapper.java
  12. 4
      anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclegressionveh/ScmVehicleGressionVehService.java
  13. 56
      anrui-scm/anrui-scm-ui/src/api/bikerebate/bicyclerebatecheck.js
  14. 54
      anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/bicyclerebatecheck.vue
  15. 29
      anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/bicyclerebatecheckAdd.vue
  16. 41
      anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/bicyclerebatecheckInfo.vue
  17. 2
      anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/bicyclerebatetobechecked.vue
  18. 109
      anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/relation/bicyclerebatetobecheckedInfo.vue
  19. 205
      anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/relation/yiheduidanchefanli.vue
  20. 2
      anrui-scm/anrui-scm-ui/src/views/supplychain/cheliangpaichan/cheliangpaichanAdd.vue
  21. 400
      anrui-scm/anrui-scm-ui/src/views/workFlow/danchefanliheduiFlow/danchefanliheduiDaiBanInfo.vue
  22. 558
      anrui-scm/anrui-scm-ui/src/views/workFlow/danchefanliheduiFlow/danchefanliheduiEdit.vue
  23. 276
      anrui-scm/anrui-scm-ui/src/views/workFlow/danchefanliheduiFlow/danchefanliheduiYiBanInfo.vue
  24. 198
      anrui-scm/anrui-scm-ui/src/views/workFlow/danchefanliheduiFlow/relation/bicyclerebatetobecheckedAdd.vue
  25. 155
      anrui-scm/anrui-scm-ui/src/views/workFlow/danchefanliheduiFlow/relation/bicyclerebatetobecheckedInfo.vue
  26. 356
      anrui-scm/anrui-scm-ui/src/views/workFlow/danchefanliheduiFlow/relation/yiheduidanchefanli.vue
  27. 10
      anrui-scm/anrui-scm-ui/src/views/workFlow/paichanguanliFlow/paichanguanli/cheliangpaichanEdit.vue
  28. 6
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/scmvehiclegression/AppCarTransferSiteImageDto.java
  29. 12
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/scmvehiclegression/AppGressionDetailsVo.java
  30. 6
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/scmvehiclegression/AppGressionInfoVo.java
  31. 2
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/scmvehiclegression/AppGressionPageVo.java
  32. 10
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/supplychain/scmvehiclegression/AppScmVehicleGressionService.java

4
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/VehicleGression.java

@ -4,6 +4,8 @@ import com.yxt.common.core.dto.Dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
@Data
public class VehicleGression implements Dto {
@ -11,7 +13,7 @@ public class VehicleGression implements Dto {
private static final long serialVersionUID = -8486627972024814008L;
@ApiModelProperty("车架号")
private String vin;
private List<String> vin;
@ApiModelProperty("存放地点sid")
private String location;

9
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/BaseVehicleService.java

@ -1428,8 +1428,8 @@ public class BaseVehicleService extends MybatisBaseService<BaseVehicleMapper, Ba
qw.ne("bv.manPurOrderTypeKey", ManPurOrderType.ManOrderType.NG_ORDER.getCode());
//非删除
qw.eq("bv.isDelete", 0);
if(StringUtils.isNotBlank(params.getOrderingNo())){
qw.like("bv.orderingNo",params.getOrderingNo());
if (StringUtils.isNotBlank(params.getOrderingNo())) {
qw.like("bv.orderingNo", params.getOrderingNo());
}
}
@ -1744,7 +1744,10 @@ public class BaseVehicleService extends MybatisBaseService<BaseVehicleMapper, Ba
@Transactional(rollbackFor = Exception.class)
public ResultBean updateVehicleGressionByVin(VehicleGression vehicleGression) {
ResultBean rb = ResultBean.fireFail();
baseMapper.updateVehicleGressionByVin(vehicleGression.getVin(), vehicleGression.getLocation(), vehicleGression.getLocationName());
List<String> vin = vehicleGression.getVin();
for (String s : vin) {
baseMapper.updateVehicleGressionByVin(s, vehicleGression.getLocation(), vehicleGression.getLocationName());
}
return rb.success();
}

4
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleactualsales/BaseVehicleActualSalesService.java

@ -263,6 +263,8 @@ public class BaseVehicleActualSalesService extends MybatisBaseService<BaseVehicl
if (dto.getDetailsList().size() == 0) {
return rb.setMsg("请选择未售买断的车辆");
}
//查询用户的分公司sid
String useOrgSid = sysStaffOrgFeign.getPathSidByUserSid(dto.getUserSid()).getData();
//根据用户sid获取staffSid
ResultBean<SysUserVo> userVoResultBean = sysUserFeign.fetchBySid(dto.getUserSid());
if (!userVoResultBean.getSuccess()) {
@ -316,7 +318,7 @@ public class BaseVehicleActualSalesService extends MybatisBaseService<BaseVehicl
//结算状态设置为预买断
List<BaseVehicleActualDetailsDto> detailsList = dto.getDetailsList();
for (BaseVehicleActualDetailsDto f : detailsList) {
BaseVehicle baseVehicle = baseVehicleService.selectByVinNo(f.getVinNo());
BaseVehicle baseVehicle = baseVehicleService.selectByVinNoAndOrgSid(f.getVinNo(),useOrgSid);
baseVehicle.setVinNo(f.getVinNo());
baseVehicle.setSettlementStatus(VehicleState.BuyoutEnum.PRE_BUYOUT.getCode());
baseVehicle.setSettlementStatusValue(VehicleState.BuyoutEnum.PRE_BUYOUT.getRemarks());

2
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleapplydetail/BusVehicleApplyDetailMapper.xml

@ -55,7 +55,7 @@
left join bus_vehicle_apply bv on bd.applySid = bv.sid
left join bus_vehicle_order bo on bo.purchaseApplyMediumModelSid = bd.sid
where bd.vehicleSid = #{modelSid}
and bd.configSid = #{configSid}
and bd.configSid = #{configSid} and length(bo.platformNo)>0
</select>
<select id="getVehicleApply" resultType="com.yxt.anrui.base.api.busvehicleapply.app.AppVehicleApplyListVo">

28
anrui-flowable/anrui-flowable-biz/src/main/java/com/yxt/anrui/flowable/biz/flowtask/FlowTaskService.java

@ -1267,7 +1267,7 @@ public class FlowTaskService extends MybatisBaseService<FlowTaskMapper, FlowTask
// latestTaskVo.setId_(item.getId());
latestTaskVo.setId_(listResultBean_2!=null?listResultBean_2.getData().get(0).getId_():id_);
if(b){
taskService.setAssignee(id_, assignee_);
// taskService.setAssignee(id_, assignee_);
}
latestTaskVo.setName_(listResultBean_2!=null?listResultBean_2.getData().get(0).getName_():item.getName());
latestTaskVo.setTask_def_key_(listResultBean_2!=null?listResultBean_2.getData().get(0).getTask_def_key_():item.getId());
@ -1353,12 +1353,20 @@ public class FlowTaskService extends MybatisBaseService<FlowTaskMapper, FlowTask
if(list.size()==0){
return "";
}
SequenceFlow sequenceFlow = list.get(0);
// 获取上一个节点的activityId
String sourceRef = sequenceFlow.getSourceRef();
HistoricActivityInstance historicActivityInstance = historyService.createHistoricActivityInstanceQuery().activityId(sourceRef)
.processInstanceId(processInstanceId).orderByHistoricActivityInstanceStartTime().desc().list().get(0);//singleResult();
List<HistoricActivityInstance> list1=new ArrayList<>();
for( SequenceFlow sequenceFlow:list){
String sourceRef = sequenceFlow.getSourceRef();
list1= historyService.createHistoricActivityInstanceQuery().activityId(sourceRef)
.processInstanceId(processInstanceId).orderByHistoricActivityInstanceStartTime().desc().list();
if(list1.size()>0){
break;
}
}
// 获取上一个节点的activityId
HistoricActivityInstance historicActivityInstance = list1.get(0);//singleResult()
String activityType = historicActivityInstance.getActivityType();
String historicActivityInstanceActivityId = historicActivityInstance.getActivityId();
if (!"userTask".equals(activityType)) {
@ -1593,11 +1601,15 @@ public class FlowTaskService extends MybatisBaseService<FlowTaskMapper, FlowTask
/* if(assignee.equals("0d8d8119-d476-47ce-89c2-075cd809dda6")){
taskService.setAssignee(task_map.get("id_").toString(), assignee);
}else{*/
if(task_map!=null){
taskService.setAssignee(task_map.get("id_").toString(), assignee);
latestTaskVo.setId_(task_map.get("id_").toString());
latestTaskList.add(latestTaskVo);
}
/* }*/
latestTaskVo.setId_(task_map.get("id_").toString());
latestTaskList.add(latestTaskVo);
});
} catch (FlowableObjectNotFoundException e) {
throw new CustomException("未找到流程实例,流程可能已发生变化");

6
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehiclegression/AppScmVehicleCarTransferSiteImageDto.java

@ -18,6 +18,12 @@ public class AppScmVehicleCarTransferSiteImageDto implements Dto {
@ApiModelProperty("保存车辆移库现场照片")
private List<String> images;
@ApiModelProperty("保单照片")
private String policyImages;
@ApiModelProperty("临牌")
private String proCard;
@ApiModelProperty("地址")
private String address;

6
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehiclegression/AppScmVehicleGressionDetailsVo.java

@ -106,6 +106,12 @@ public class AppScmVehicleGressionDetailsVo implements Vo {
@ApiModelProperty("经纬度")
private String locationCode;
@ApiModelProperty("显示保单照片")
private boolean insuranceShow;
@ApiModelProperty("显示临牌文本框")
private boolean proCardShow;
@ApiModelProperty("任务id")
private String taskId;

2
anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehiclegression/AppScmVehicleGressionPageVo.java

@ -52,6 +52,8 @@ public class AppScmVehicleGressionPageVo implements Vo {
private String sid;
@ApiModelProperty("车架号")
private String vin;
@ApiModelProperty("车数量")
private String vinNum;
@ApiModelProperty("申请编号")
private String applyId;
@ApiModelProperty("审核状态")

2
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclegression/ScmVehicleGressionRest.java

@ -212,7 +212,7 @@ public class ScmVehicleGressionRest implements ScmVehicleGressionFeign {
@Override
public ResultBean<AppErtraStateVo> getErtraState(String sid, String userSid) {
return scmVehicleGressionService.getErtraState(sid,userSid);
return scmVehicleGressionService.getErtraState(sid, userSid);
}
@Override

89
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclegression/ScmVehicleGressionService.java

@ -264,6 +264,8 @@ public class ScmVehicleGressionService extends MybatisBaseService<ScmVehicleGres
for (AppScmVehicleGressionPageVo record : records) {
List<String> vins = scmVehicleGressionVehService.fetchVoByMainSid(record.getSid());
int size = vins.size();
record.setVinNum(String.valueOf(size));
String vin = StringUtils.join(vins, ",");
record.setVin(vin);
@ -395,28 +397,42 @@ public class ScmVehicleGressionService extends MybatisBaseService<ScmVehicleGres
return rb.setMsg("该数据不存在");
}
BeanUtil.copyProperties(dto, scmVehicleGression, "sid");
if ("1".equals(dto.getInsuranceStateKey())) { // 如果保单状态为否 不保存保单照片
List<String> factoryImage = dto.getPolicyImage();
if (factoryImage.size() <= 0) {
return rb.setMsg("保单照片不能为空");
}
scmFileService.deleteByLinkSidAndType(scmVehicleGression.getSid(), type);
for (String s : factoryImage) {
if (s.contains(fileUploadComponent.getUrlPrefix())) {
s1 = s.replace(fileUploadComponent.getUrlPrefix(), "");
}
ScmFile scmFile = new ScmFile();
scmFile.setAttachType(type);
scmFile.setFileName("保单照片");
scmFile.setFilePath(s1);
scmFile.setLinkSid(scmVehicleGression.getSid());
scmFileService.save(scmFile);
// if ("1".equals(dto.getInsuranceStateKey())) { // 如果保单状态为否 不保存保单照片
// List<String> factoryImage = dto.getPolicyImage();
// if (factoryImage.size() <= 0) {
// return rb.setMsg("保单照片不能为空");
// }
// scmFileService.deleteByLinkSidAndType(scmVehicleGression.getSid(), type);
// for (String s : factoryImage) {
// if (s.contains(fileUploadComponent.getUrlPrefix())) {
// s1 = s.replace(fileUploadComponent.getUrlPrefix(), "");
// }
// ScmFile scmFile = new ScmFile();
// scmFile.setAttachType(type);
// scmFile.setFileName("保单照片");
// scmFile.setFilePath(s1);
// scmFile.setLinkSid(scmVehicleGression.getSid());
// scmFileService.save(scmFile);
// }
// } else if ("0".equals(dto.getInsuranceStateKey())) {
// scmFileService.deleteByLinkSidAndType(scmVehicleGression.getSid(), type);
// }
updateById(scmVehicleGression);
scmVehicleGressionVehService.deleteByMainSid(scmVehicleGression.getSid());
List<String> vins = dto.getVins();
if (vins != null) {
for (String vin : vins) {
ScmVehicleGressionVeh scmVehicleGressionVeh = new ScmVehicleGressionVeh();
scmVehicleGressionVeh.setMainSid(scmVehicleGression.getSid());
scmVehicleGressionVeh.setVehVin(vin);
BaseVehicleVo baseVehicleVo = baseVehicleFeign.selVehicleByVinNo(vin).getData();
scmVehicleGressionVeh.setVehSid(baseVehicleVo.getSid());
scmVehicleGressionVeh.setSettlementStatus(baseVehicleVo.getSettlementStatus());
scmVehicleGressionVeh.setSettlementStatusValue(baseVehicleVo.getSettlementStatusValue());
scmVehicleGressionVeh.setTemporaryCardNo(dto.getTemporaryCard());
scmVehicleGressionVehService.save(scmVehicleGressionVeh);
}
} else if ("0".equals(dto.getInsuranceStateKey())) {
scmFileService.deleteByLinkSidAndType(scmVehicleGression.getSid(), type);
}
updateById(scmVehicleGression);
}
return rb.success().setData(scmVehicleGression.getSid()).setMsg("保存成功");
}
@ -468,6 +484,12 @@ public class ScmVehicleGressionService extends MybatisBaseService<ScmVehicleGres
List<String> policyImage = new ArrayList<>();
List<String> image = new ArrayList<>();
AppScmVehicleGressionDetailsVo vo = baseMapper.getCarTransfer(sid);
if ("1".equals(vo.getInsuranceStateKey())) {
vo.setInsuranceShow(true);
}
if ("1".equals(vo.getProCardStateKey())) {
vo.setProCardShow(true);
}
List<String> vins = scmVehicleGressionVehService.fetchVoByMainSid(sid);
String vin = StringUtils.join(vins, StringUtils.LF);
vo.setVinNo(vin);
@ -525,19 +547,32 @@ public class ScmVehicleGressionService extends MybatisBaseService<ScmVehicleGres
@Transactional(rollbackFor = Exception.class)
public ResultBean saveCarTransferSiteImage(AppScmVehicleCarTransferSiteImageDto dto) {
ResultBean rb = ResultBean.fireFail();
String type = "05";
String s1 = "";
scmFileService.deleteByLinkSidAndType(dto.getSid(), type);
String s2 = "";
String type1 = "04";
String type2 = "05";
if (StringUtils.isNotBlank(dto.getPolicyImages())) {
scmFileService.deleteByLinkSidAndType(dto.getSid(), type1);
String policyImages = dto.getPolicyImages();
s1 = policyImages.replace(fileUploadComponent.getUrlPrefix(), "");
ScmFile scmFile = new ScmFile();
scmFile.setAttachType(type1);
scmFile.setFileName("保单照片");
scmFile.setFilePath(s1);
scmFile.setLinkSid(dto.getSid());
scmFileService.save(scmFile);
}
scmFileService.deleteByLinkSidAndType(dto.getSid(), type2);
List<String> images = dto.getImages();
if (images.size() > 0) {
for (String s : images) {
if (s.indexOf(fileUploadComponent.getUrlPrefix()) > -1) {
s1 = s.replace(fileUploadComponent.getUrlPrefix(), "");
s2 = s.replace(fileUploadComponent.getUrlPrefix(), "");
}
ScmFile scmFile = new ScmFile();
scmFile.setAttachType(type);
scmFile.setAttachType(type2);
scmFile.setFileName("车辆移库现场照片");
scmFile.setFilePath(s1);
scmFile.setFilePath(s2);
scmFile.setLinkSid(dto.getSid());
scmFileService.save(scmFile);
}
@ -545,6 +580,7 @@ public class ScmVehicleGressionService extends MybatisBaseService<ScmVehicleGres
ScmVehicleGression scmVehicleGression = fetchBySid(dto.getSid());
scmVehicleGression.setAddress(dto.getAddress());
scmVehicleGression.setLocationCode(dto.getLocationCode());
scmVehicleGression.setTemporaryCard(dto.getProCard());
updateById(scmVehicleGression);
return rb.success().setMsg("保存成功");
}
@ -770,7 +806,8 @@ public class ScmVehicleGressionService extends MybatisBaseService<ScmVehicleGres
}
if ("Event_end".equals(resultBean.getData().getTaskDefKey())) {
VehicleGression vehicleGression = new VehicleGression();
vehicleGression.setVin(scmVehicleGression.getVinNo());
List<String> list = scmVehicleGressionVehService.fetchVoByMainSid(scmVehicleGression.getSid());
vehicleGression.setVin(list);
vehicleGression.setLocation(scmVehicleGression.getTargetLocationSid());
vehicleGression.setLocationName(scmVehicleGression.getTargetLocation());
baseVehicleFeign.updateVehicleGressionByVin(vehicleGression);

4
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclegressionveh/ScmVehicleGressionVehMapper.java

@ -33,6 +33,7 @@ import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.yxt.anrui.scm.api.scmvehiclegressionveh.ScmVehicleGressionVeh;
import com.yxt.anrui.scm.api.scmvehiclegressionveh.ScmVehicleGressionVehDetailsVo;
import com.yxt.anrui.scm.api.scmvehiclegressionveh.ScmVehicleGressionVehVo;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
@ -68,4 +69,7 @@ public interface ScmVehicleGressionVehMapper extends BaseMapper<ScmVehicleGressi
@Select("select * from scm_vehicle_gression_veh where mainSid =#{mainSid} ")
List<ScmVehicleGressionVehDetailsVo> fetchVoByMainSid(@Param("mainSid") String mainSid);
@Delete("delete from scm_vehicle_gression_veh where mainSid =#{sid}")
void deleteByMainSid(@Param("sid") String sid);
}

4
anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclegressionveh/ScmVehicleGressionVehService.java

@ -113,4 +113,8 @@ public class ScmVehicleGressionVehService extends MybatisBaseService<ScmVehicleG
}
return list;
}
public void deleteByMainSid(String sid) {
baseMapper.deleteByMainSid(sid);
}
}

56
anrui-scm/anrui-scm-ui/src/api/bikerebate/bicyclerebatecheck.js

@ -78,4 +78,60 @@ export default {
method: 'get'
})
},
// 提交流程
submitVehicleApply: function(params) {
return request({
url: '/scm/v1/scmvehrebatecheckapply/submitVehRebateCheckApply',
method: 'post',
data: params,
headers: { 'Content-Type': 'application/json' }
})
},
// 代办任务同意办理
complete: function(params) {
return request({
url: '/scm/v1/scmvehrebatecheckapply/complete',
method: 'post',
data: params
})
},
// 代办任务驳回任务
reject: function(params) {
return request({
url: '/scm/v1/scmvehrebatecheckapply/reject',
method: 'post',
data: params
})
},
// 代办任务终止任务
breakProcess: function(params) {
return request({
url: '/scm/v1/scmvehrebatecheckapply/breakProcess',
method: 'post',
data: params
})
},
// 代办任务撤回任务
revokeProcess: function(params) {
return request({
url: '/scm/v1/scmvehrebatecheckapply/revokeProcess',
method: 'post',
data: params
})
},
getNextNodesForSubmit: function(data) {
return request({
url: '/scm/v1/scmvehrebatecheckapply/getNextNodesForSubmit',
method: 'get',
params: data
})
},
getPreviousNodesForReject(data) {
return request({
url: '/scm/v1/scmvehrebatecheckapply/getPreviousNodesForReject',
method: 'get',
params: data
})
}
}

54
anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/bicyclerebatecheck.vue

@ -42,13 +42,14 @@
<el-table-column fixed label="序号" type="index" :index="indexMethod" align="center" width="80px"/>
<el-table-column fixed label="操作" align="center" width="180px" >
<template slot-scope="scope">
<el-button type="primary" size="mini" @click="toEdit(scope.row)">办理</el-button>
<el-button type="primary" size="mini" :disabled="scope.row.nodeState =='发起申请' ? false : scope.row.nodeState == '待提交' ? false : true" @click="toEdit(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" width="200">
<el-table-column label="状态" width="180px" header-align="center">
<template slot-scope="scope">
<span>{{ scope.row.nodeState }}</span>
<span v-if="scope.row.nodeState=='待提交'" type="primary" size="mini">待提交</span>
<span v-else @click="flowRecord(scope.row)" class="bluezi">{{ scope.row.nodeState }}</span>
</template>
</el-table-column>
<el-table-column label="分公司" align="center" width="200">
@ -110,6 +111,10 @@
</div>
</div>
<bicyclerebatecheckAdd v-show="viewState == 2" ref="divAdd" @doback="resetState" @reloadlist="getList"/>
<bicyclerebatecheckInfo v-show="viewState == 3" ref="divInfo" @doback="resetState"/>
<el-dialog title="" :visible.sync="centerDialogVisible" width="78%" height="1%" :before-close="closeIt" center>
<iframe frameborder="0" id="iframe" style="width:100%;" scrolling="no" :src="this.centerDialogVisible === true ? url :''"></iframe>
</el-dialog>
</div>
</template>
@ -120,6 +125,8 @@ import pageye from '@/components/pagination/pageye'
import ButtonBar from '@/components/ButtonBar'
import { brandDown, getPathSidByUserSid } from '@/api/cheliang/dictcommons'
import bicyclerebatecheckAdd from './bicyclerebatecheckAdd'
import bicyclerebatecheckInfo from './bicyclerebatecheckInfo'
import {getStorage} from "@/utils/auth";
export default {
name: 'bicyclerebatecheck',
@ -127,10 +134,14 @@ export default {
Pagination,
pageye,
ButtonBar,
bicyclerebatecheckAdd
bicyclerebatecheckAdd,
bicyclerebatecheckInfo
},
data() {
return {
url: '',
dialogHeight: '80%',
centerDialogVisible: false,
btndisabled: false,
btnList: [
{
@ -178,9 +189,40 @@ export default {
this.init()
},
mounted() {
// vuewindowpostMessagehandleMessage
window.addEventListener('message', this.handleMessage)
this.$refs['btnbar'].setButtonList(this.btnList)
},
methods: {
async handleMessage(event) {
var code = ''
if (event.data.params !== null && event.data.params !== undefined) {
code = event.data.params.code
}
if (code === 1) {
this.init()
this.centerDialogVisible = false
} else if (code === 2) {
this.dialogHeight = event.data.params.data
this.setIframeHeight(document.getElementById('iframe'))
}
},
closeIt() {
this.url = ''
this.centerDialogVisible = false
},
setIframeHeight(iframe) {
iframe.height = this.dialogHeight
},
flowRecord(row) {
this.centerDialogVisible = true
var params = {
deployId: row.procDefId,
procInsId: row.procInstId,
token: getStorage()
}
this.url = 'http://localhost:9530/#/flow/flowRecordForBusiness?data=' + encodeURI((JSON.stringify(params)))
},
init() {
getPathSidByUserSid({ userSid: window.sessionStorage.getItem('userSid') }).then((resp) => {
if (resp.success) {
@ -263,7 +305,7 @@ export default {
size: 5,
total: 0
}
this.getList()
this.init()
},
handleClick() {
this.$parent.resetState()
@ -273,7 +315,7 @@ export default {
this.$refs['divAdd'].showEdit(row)
},
toInfo(row) {
this.viewState = 4
this.viewState = 3
this.$refs['divInfo'].showInfo(row)
},
doDel() {

29
anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/bicyclerebatecheckAdd.vue

@ -9,6 +9,8 @@
<div>
<el-button type="primary" size="small" :disabled="submitdisabled" @click="save()">保存
</el-button>
<el-button type="primary" size="small" :disabled="submitdisabled" @click="submit()">提交
</el-button>
<el-button type="info" size="small" @click="handleReturn()">关闭</el-button>
</div>
</div>
@ -220,6 +222,7 @@ export default {
formobj: {
sid: '',
createByName: '',
createBySid: '',
brandName: '',
brandSid: '',
checkApply: '',
@ -238,7 +241,6 @@ export default {
}
},
methods: {
//
newDate() {
let date = new Date()
@ -269,6 +271,7 @@ export default {
this.formobj.createOrgSid = createOrgSid
this.formobj.useOrgSid = createOrgSid
this.formobj.createByName = window.sessionStorage.getItem('name')
this.formobj.createBySid = window.sessionStorage.getItem('userSid')
this.viewTitle = '【新增】单车返利核对审核申请'
},
showEdit(row) {
@ -280,6 +283,7 @@ export default {
console.log('编辑回显', row.sid)
req.fetchDetailsBySid(row.sid).then((resp) => {
this.formobj = resp.data
this.formobj.createBySid = window.sessionStorage.getItem('userSid')
}).catch((e) => {
this.formobj = row
})
@ -491,6 +495,28 @@ export default {
}
})
},
submit() {
this.$refs['form_obj'].validate((valid) => {
if (valid) {
this.submitdisabled = true
req.submitVehicleApply(this.formobj).then((resp) => {
this.submitdisabled = false
if (resp.success) {
this.$message({
showClose: true,
type: 'success',
message: resp.msg
})
this.handleReturn('true')
}
}).catch(() => {
this.submitdisabled = false
})
} else {
return false
}
})
},
// ===
handleReturn(isreload) {
if (isreload === 'true') this.$emit('reloadlist')
@ -498,6 +524,7 @@ export default {
this.formobj = {
sid: '',
createByName: '',
createBySid: '',
brandName: '',
brandSid: '',
checkApply: '',

41
anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/bicyclerebatecheckInfo.vue

@ -15,10 +15,18 @@
<div class="listconadd">
<div class="titwu"><span>单车返利核对审核申请</span></div>
<el-form ref="form_obj" :model="formobj" :rules="rules" class="formadd">
<el-row class="rowStyle">
<el-col :span="2" class="tleftb colOneStyle">
<span>品牌:</span>
</el-col>
<el-col :span="22" class="colOneStyle">
<el-form-item><span>{{ formobj.brandName }}</span></el-form-item>
</el-col>
</el-row>
<div class="title">
<div>本月各项返利核对情况</div>
</div>
<el-table :key="tableKey" :data="formobj.baseVehinstallModpricedetails" :index="index" border style="width: 100%">
<el-table :key="tableKey" :data="formobj.scmWhenVehrebateCheckapplydetailDetails" :index="index" border style="width: 100%">
<el-table-column fixed width="80px" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column label="返利类型" align="center">
<template slot-scope="scope">
@ -64,7 +72,7 @@
<div class="title">
<div>预提返利本月核对情况</div>
</div>
<el-table :key="baseVehinstallModpriceKey" :data="formobj.baseVehinstallModprice" :index="index" border style="width: 100%">
<el-table :key="lastVehrebateKey" :data="formobj.scmLastVehrebateCheckapplydetailDetails" :index="index" border style="width: 100%">
<el-table-column fixed width="80px" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column label="预提年月" align="center">
<template slot-scope="scope">
@ -118,29 +126,28 @@
</el-table-column>
</el-table>
<el-row>
<el-col :span="4">
<el-col :span="2" class="tleftb">
<span>备注</span>
</el-col>
<el-col :span="20">
<el-form-item><el-input v-model="formobj.remarks" placeholder="" class="addinputw" clearable></el-input></el-form-item>
<el-col :span="22">
<el-form-item><span>{{ formobj.remarks }}</span></el-form-item>
</el-col>
</el-row>
</el-form>
</div>
</div>
<!--End 添加修改部分-->
<bicyclerebatetobecheckedInfo v-show="viewState == 2" ref="divAdd" @doback="resetState"/>
<bicyclerebatetobecheckedInfo v-show="viewState == 2" ref="divInfo" @doback="resetState"/>
</div>
</template>
<script>
import req from '@/api/othermenu/shangzhuangtiaojia'
import req from '@/api/bikerebate/bicyclerebatecheck'
import bicyclerebatetobecheckedInfo from './relation/bicyclerebatetobecheckedInfo'
export default {
name: 'bicyclerebatecheckInfo',
components: {
yiheduidanchefanli,
bicyclerebatetobecheckedInfo
},
data() {
@ -148,7 +155,7 @@ export default {
viewTitle: '',
index: 0,
tableKey: 0,
baseVehinstallModpriceKey: 1,
lastVehrebateKey: 1,
viewState: 1,
//
formobj: {},
@ -163,12 +170,19 @@ export default {
})
this.viewTitle = '单车返利核对审核申请详情'
console.log('编辑回显', row.sid)
req.fetchBySid(row.sid).then((resp) => {
req.fetchDetailsBySid(row.sid).then((resp) => {
this.formobj = resp.data
}).catch((e) => {
this.formobj = row
})
},
handleLook(row) {
this.viewState = 2
this.$refs['divInfo'].showInfo(row)
},
resetState() {
this.viewState = 1
},
// ===
handleReturn(isreload) {
if (isreload === 'true') this.$emit('reloadlist')
@ -181,5 +195,12 @@ export default {
}
</script>
<style scoped>
.rowStyle {
border-left: 0px;
}
.colOneStyle {
border-right: 0px !important;
border-bottom: 0px !important;
}
</style>

2
anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/bicyclerebatetobechecked.vue

@ -487,7 +487,7 @@ export default {
size: 5,
total: 0
}
this.getList()
this.init()
},
changeIsAdjustment(row) {
// if (row.isAdjustment === '') {

109
anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/relation/bicyclerebatetobecheckedInfo.vue

@ -1,6 +1,6 @@
<template>
<div class="app-container">
<div v-show="viewState == 1">
<div>
<!--标题按钮部分开始-->
<div class="tab-header webtop">
<!--标题-->
@ -13,91 +13,90 @@
<!--标题按钮部分结束-->
<!--Start 新增修改部分-->
<div class="listconadd">
<el-form ref="form_obj" :model="formobj" :rules="rules" class="formadd">
<el-table :key="tableKey" :data="formobj.baseVehinstallModpricedetails" :index="index" border style="width: 100%" @selection-change="handleSelectionChange">
<el-table-column fixed type="selection" align="center" width="50px"/>
<el-table-column fixed width="80px" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column label="品牌" align="center">
<el-form ref="form_obj" class="formadd">
<el-table :key="tableKey" :data="list" :index="index" border style="width: 100%">
<el-table-column fixed width="60px" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column label="品牌" align="center" width="200">
<template slot-scope="scope">
<span>{{ scope.row.brandName }}</span>
</template>
</el-table-column>
<el-table-column label="车型" align="center">
<el-table-column label="车型" align="center" width="200">
<template slot-scope="scope">
<span>{{ scope.row.vehModelName }}</span>
</template>
</el-table-column>
<el-table-column label="车架号" align="center">
<el-table-column label="车架号" align="center" width="200">
<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="150">
<template slot-scope="scope">
<span>{{ scope.row.manufactorSettlementPrice }}</span>
</template>
</el-table-column>
<el-table-column label="其中运费" align="center">
<el-table-column label="其中运费" align="center" width="150">
<template slot-scope="scope">
<span>{{ scope.row.freight }}</span>
</template>
</el-table-column>
<el-table-column label="创建日期" align="center">
<el-table-column label="创建日期" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.createTime }}</span>
</template>
</el-table-column>
<el-table-column label="返利类型" align="center">
<el-table-column label="返利类型" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.rebateTypeValue }}</span>
</template>
</el-table-column>
<el-table-column label="返利名称" align="center">
<el-table-column label="返利名称" align="center" width="150">
<template slot-scope="scope">
<span>{{ scope.row.rebateName }}</span>
</template>
</el-table-column>
<el-table-column label="预计返利" align="center">
<el-table-column label="预计返利" align="center" width="150">
<template slot-scope="scope">
<span>{{ scope.row.estimateRebate }}</span>
</template>
</el-table-column>
<el-table-column label="所属年月" align="center">
<el-table-column label="所属年月" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.palceGenDate }}</span>
</template>
</el-table-column>
<el-table-column label="上传日期" align="center">
<el-table-column label="上传日期" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.uploadDate }}</span>
</template>
</el-table-column>
<el-table-column label="上传金额" align="center">
<el-table-column label="上传金额" align="center" width="150">
<template slot-scope="scope">
<span>{{ scope.row.uploadMoney }}</span>
</template>
</el-table-column>
<el-table-column label="待确定金额" align="center">
<el-table-column label="待确定金额" align="center" width="150">
<template slot-scope="scope">
<span>{{ scope.row.stayDetermineMoney }}</span>
</template>
</el-table-column>
<el-table-column label="费用" align="center">
<el-table-column label="费用" align="center" width="150">
<template slot-scope="scope">
<span>{{ scope.row.money }}</span>
</template>
</el-table-column>
<el-table-column label="是否调整" align="center">
<el-table-column label="是否调整" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.isAdjustment }}</span>
</template>
</el-table-column>
<el-table-column label="调整金额" align="center">
<el-table-column label="调整金额" align="center" width="150">
<template slot-scope="scope">
<span>{{ scope.row.adjustmentMoney }}</span>
</template>
</el-table-column>
<el-table-column label="调整说明" align="center">
<el-table-column label="调整说明" align="center" width="300">
<template slot-scope="scope">
<span>{{ scope.row.adjustmentRemarks }}</span>
</template>
@ -111,8 +110,7 @@
</template>
<script>
import req from '@/api/othermenu/shangzhuangtiaojia'
import { getPathSidByUserSid, fetchBySid } from '@/api/cheliang/dictcommons'
import req from '@/api/bikerebate/bicyclerebatecheck'
export default {
name: 'bicyclerebatetobecheckedInfo',
@ -124,75 +122,28 @@ export default {
viewState: 1,
sids: [],
//
formobj: {
applyPeoName: '',
applyTitle: '',
createBySid: '',
createOrgName: '',
createOrgSid: '',
modpriceReason: '',
nodeState: '',
sid: '',
useOrgName: '',
useOrgSid: '',
baseVehinstallModpricedetails: []
},
list: [],
rules: {},
submitdisabled: false
}
},
methods: {
init() {
getPathSidByUserSid({ userSid: window.sessionStorage.getItem('userSid') }).then((resp) => {
if (resp.success) {
this.formobj.createOrgSid = resp.data
this.formobj.useOrgSid = resp.data
fetchBySid(this.formobj.createOrgSid).then((res) => {
if (res.success) {
this.formobj.createOrgName = res.data.name
this.formobj.useOrgName = res.data.name
}
})
}
})
},
handleSelectionChange(row) {
const aa = []
row.forEach((element) => {
aa.push(element.sid)
})
this.sids = aa
console.log('sids', this.sids)
},
showInfo(row) {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
this.viewTitle = '待预提单车返利明细'
console.log('编辑回显', row.sid)
req.fetchBySid(row.sid).then((resp) => {
this.formobj = resp.data
this.viewTitle = '单车返利核对审核申请明细'
console.log('编辑回显', row)
req.vehRebateWithDetails(row.vehRebateSid).then((resp) => {
this.list = resp.data
}).catch((e) => {
this.formobj = row
this.list = []
})
},
// ===
handleReturn(isreload) {
if (isreload === 'true') this.$emit('reloadlist')
handleReturn() {
//
this.formobj = {
applyPeoName: '',
applyTitle: '',
createBySid: '',
createOrgName: '',
createOrgSid: '',
modpriceReason: '',
nodeState: '',
sid: '',
useOrgName: '',
useOrgSid: '',
baseVehinstallModpricedetails: []
}
this.list = []
this.$refs['form_obj'].resetFields()
this.$emit('doback')
}

205
anrui-scm/anrui-scm-ui/src/views/bikerebate/bicyclerebatecheck/relation/yiheduidanchefanli.vue

@ -2,44 +2,44 @@
<div class="app-container">
<!-- Start 列表页面 -->
<div>
<button-bar view-title="核对单车返利列表" ref="btnbar" :btndisabled="btndisabled" @btnhandle="btnHandle"/>
<button-bar view-title="上传单车返利列表" ref="btnbar" :btndisabled="btndisabled" @btnhandle="btnHandle"/>
<div class="main-content">
<div class="searchcon">
<el-button size="small" class="searchbtn" @click="clicksearchShow">{{ searchxianshitit }}</el-button>
<div v-show="isSearchShow" class="search">
<el-form ref="listQueryform" :inline="true" :model="listQuery" label-width="100px" class="tab-header">
<el-form-item label="品牌">
<el-input v-model="listQuery.params.mainSid" placeholder="请输入车架号" clearable/>
</el-form-item>
<el-form-item label="车型">
<el-input v-model="listQuery.params.mainSid" placeholder="请输入车架号" clearable/>
</el-form-item>
<el-form-item label="车架号">
<el-input v-model="listQuery.params.mainSid" placeholder="请输入车架号" clearable/>
</el-form-item>
<el-form-item label="创建日期">
<el-date-picker v-model="listQuery.params.createStartTime" type="date" clearable value-format="yyyy-MM-dd" placeholder="选择日期"/>
<span style="padding: 0 8px"></span>
<el-date-picker v-model="listQuery.params.createEndTime" type="date" clearable value-format="yyyy-MM-dd" placeholder="选择日期"/>
</el-form-item>
<el-form-item label="返利类型">
<el-input v-model="listQuery.params.mainSid" placeholder="请输入车架号" clearable/>
</el-form-item>
<el-form-item label="返利名称">
<el-input v-model="listQuery.params.mainSid" placeholder="请输入车架号" clearable/>
</el-form-item>
<el-form-item label="状态">
<el-input v-model="listQuery.params.mainSid" placeholder="请输入车架号" clearable/>
</el-form-item>
</el-form>
<div class="btn" style="text-align: center;">
<el-button type="primary" icon="el-icon-search" @click="handleFilter" size="small">查询</el-button>
<el-button type="primary" icon="el-icon-refresh" @click="handleReset" size="small">重置</el-button>
</div>
</div>
</div>
<!-- <div class="searchcon">-->
<!-- <el-button size="small" class="searchbtn" @click="clicksearchShow">{{ searchxianshitit }}</el-button>-->
<!-- <div v-show="isSearchShow" class="search">-->
<!-- <el-form ref="listQueryform" :inline="true" :model="listQuery" label-width="100px" class="tab-header">-->
<!-- <el-form-item label="品牌">-->
<!-- <el-input v-model="listQuery.params.mainSid" placeholder="请输入车架号" clearable/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="车型">-->
<!-- <el-input v-model="listQuery.params.mainSid" placeholder="请输入车架号" clearable/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="车架号">-->
<!-- <el-input v-model="listQuery.params.mainSid" placeholder="请输入车架号" clearable/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="创建日期">-->
<!-- <el-date-picker v-model="listQuery.params.createStartTime" type="date" clearable value-format="yyyy-MM-dd" placeholder="选择日期"/>-->
<!-- <span style="padding: 0 8px"></span>-->
<!-- <el-date-picker v-model="listQuery.params.createEndTime" type="date" clearable value-format="yyyy-MM-dd" placeholder="选择日期"/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="返利类型">-->
<!-- <el-input v-model="listQuery.params.mainSid" placeholder="请输入车架号" clearable/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="返利名称">-->
<!-- <el-input v-model="listQuery.params.mainSid" placeholder="请输入车架号" clearable/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="状态">-->
<!-- <el-input v-model="listQuery.params.mainSid" placeholder="请输入车架号" clearable/>-->
<!-- </el-form-item>-->
<!-- </el-form>-->
<!-- <div class="btn" style="text-align: center;">-->
<!-- <el-button type="primary" icon="el-icon-search" @click="handleFilter" size="small">查询</el-button>-->
<!-- <el-button type="primary" icon="el-icon-refresh" @click="handleReset" size="small">重置</el-button>-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
<div class="listtop">
<div class="tit">核对单车返利列表</div>
<div class="tit">上传单车返利列表</div>
</div>
<div class="">
<el-table :key="tableKey" v-loading="listLoading" :data="list" border style="width: 100%;" @selection-change="handleSelectionChange">
@ -47,87 +47,87 @@
<el-table-column fixed label="序号" type="index" :index="indexMethod" align="center" width="80px"/>
<el-table-column label="品牌" align="center" width="200">
<template slot-scope="scope">
<span>{{ scope.row.createTime }}</span>
<span>{{ scope.row.brandName }}</span>
</template>
</el-table-column>
<el-table-column label="车型" align="center" width="200">
<template slot-scope="scope">
<span>{{ scope.row.applyPeoName }}</span>
<span>{{ scope.row.vehModelName }}</span>
</template>
</el-table-column>
<el-table-column label="车架号" align="center" width="250">
<template slot-scope="scope">
<span>{{ scope.row.createOrgName }}</span>
<span>{{ scope.row.vinNo }}</span>
</template>
</el-table-column>
<el-table-column label="厂家合同价" align="center" width="200">
<template slot-scope="scope">
<span>{{ scope.row.applyTitle }}</span>
<span>{{ scope.row.manufactorSettlementPrice }}</span>
</template>
</el-table-column>
<el-table-column label="其中运费" align="center" width="200">
<template slot-scope="scope">
<span>{{ scope.row.modpriceReason }}</span>
<span>{{ scope.row.freight }}</span>
</template>
</el-table-column>
<el-table-column label="创建日期" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.modpriceReason }}</span>
<span>{{ scope.row.createTime }}</span>
</template>
</el-table-column>
<el-table-column label="返利类型" align="center" width="150">
<template slot-scope="scope">
<span>{{ scope.row.modpriceReason }}</span>
<span>{{ scope.row.rebateTypeValue }}</span>
</template>
</el-table-column>
<el-table-column label="返利名称" align="center" width="150">
<template slot-scope="scope">
<span>{{ scope.row.modpriceReason }}</span>
<span>{{ scope.row.rebateName }}</span>
</template>
</el-table-column>
<el-table-column label="预计返利" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.modpriceReason }}</span>
<span>{{ scope.row.estimateRebate }}</span>
</template>
</el-table-column>
<el-table-column label="所属日期" align="center" width="120">
<el-table-column label="所属年月" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.modpriceReason }}</span>
<span>{{ scope.row.palceGenDateCopy }}</span>
</template>
</el-table-column>
<el-table-column label="上传日期" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.modpriceReason }}</span>
<span>{{ scope.row.uploadDate }}</span>
</template>
</el-table-column>
<el-table-column label="上传金额" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.modpriceReason }}</span>
<span>{{ scope.row.uploadMoney }}</span>
</template>
</el-table-column>
<el-table-column label="待确定金额" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.modpriceReason }}</span>
<span>{{ scope.row.stayDetermineMoney }}</span>
</template>
</el-table-column>
<el-table-column label="费用" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.modpriceReason }}</span>
<span>{{ scope.row.money }}</span>
</template>
</el-table-column>
<el-table-column label="是否调整" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.modpriceReason }}</span>
<span>{{ scope.row.isAdjustment }}</span>
</template>
</el-table-column>
<el-table-column label="调整金额" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.modpriceReason }}</span>
<span>{{ scope.row.adjustmentMoney }}</span>
</template>
</el-table-column>
<el-table-column label="调整说明" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.modpriceReason }}</span>
<span>{{ scope.row.adjustmentRemarks }}</span>
</template>
</el-table-column>
</el-table>
@ -142,7 +142,7 @@
</template>
<script>
import req from '@/api/othermenu/shangzhuangtiaojia'
import req from '@/api/bikerebate/bicyclerebatecheck'
import Pagination from '@/components/pagination'
import ButtonBar from '@/components/ButtonBar'
@ -160,7 +160,7 @@ export default {
type: 'primary',
size: 'small',
icon: '',
btnKey: 'doClose',
btnKey: 'doConfirm',
btnLabel: '确定'
},
{
@ -177,13 +177,14 @@ export default {
tableKey: 0,
list: [],
sids: [],
sids_list: [],
FormLoading: false,
listLoading: false,
listQuery: {
params: {
createBySid: '',
createEndTime: '',
createStartTime: ''
brandSid: '',
createOrgSid: '',
sidList: []
},
current: 1,
size: 5,
@ -212,6 +213,9 @@ export default {
btnHandle(btnKey) {
console.log('XXXXXXXXXXXXXXX ' + btnKey)
switch (btnKey) {
case 'doConfirm':
this.doConfirm()
break
case 'doClose':
this.doClose()
break
@ -226,18 +230,47 @@ export default {
return pageindex
},
handleSelectionChange(row) {
var dateTime = ''
let date = new Date()
let year = date.getFullYear() //
let month = date.getMonth() + 1 //
dateTime = year + '年' + month + '月'
const aa = []
const bb = []
row.forEach((element) => {
aa.push(element.sid)
if (element.palceGenDateCopy === dateTime) {
aa.push({
sid: element.sid,
rebateTypeValue: element.rebateTypeValue,
rebateTypeKey: element.rebateTypeKey,
withRebate: element.estimateRebate,
brandName: element.brandName,
brandSid: element.brandSid,
uploadMoney: element.uploadMoney,
stayDetermineMoney: element.stayDetermineMoney,
adjustmentMoney: element.adjustmentMoney,
money: element.money
})
} else {
bb.push({
sid: element.sid,
palceGenDate: element.palceGenDateCopy,
withRebate: element.estimateRebate,
uploadMoney: element.uploadMoney,
stayDetermineMoney: element.stayDetermineMoney,
adjustmentMoney: element.adjustmentMoney,
money: element.money
})
}
})
this.sids = aa
console.log('sids', this.sids)
this.sids_list = bb
console.log('sids', this.sids, bb, 99999999)
},
//
getList() {
this.listLoading = true
this.listQuery.params.createBySid = window.sessionStorage.getItem('userSid')
req.listPage(this.listQuery).then((response) => {
req.checkApplyGetAlreadyUploadVehRebate(this.listQuery).then((response) => {
console.log('列表查询结果:', response)
this.listLoading = false
if (response.success && response.data && response.data.total > 0) {
@ -249,6 +282,39 @@ export default {
}
})
},
showData(value, val, createOrgSid, brandSid) {
this.listQuery.params.createOrgSid = createOrgSid
this.listQuery.params.brandSid = brandSid
const aa = []
if (value.length > 0) {
for (var i = 0; i < value.length; i++) {
for (var j = 0; j < value[i].vehRebateSids.length; j++) {
aa.push(value[i].vehRebateSids[j])
}
}
}
const bb = []
if (val.length > 0) {
for (var k = 0; k < val.length; k++) {
for (var l = 0; l < val[k].vehRebateSids.length; l++) {
bb.push(val[k].vehRebateSids[l])
}
}
}
if (aa.length > 0 && bb.length > 0) {
this.listQuery.params.sidList = aa
for (var p = 0; p < bb.length; p++) {
this.listQuery.params.sidList.push(bb[p])
}
} else if (aa.length > 0 && bb.length === 0) {
this.listQuery.params.sidList = aa
} else if (aa.length === 0 && bb.length > 0) {
this.listQuery.params.sidList = bb
} else if (aa.length === 0 && bb.length === 0) {
this.listQuery.params.sidList = []
}
this.getList()
},
//
handleFilter() {
this.listQuery.current = 1
@ -267,6 +333,19 @@ export default {
}
this.getList()
},
doConfirm() {
this.$emit('backData', this.sids, this.sids_list)
if (this.sids.length > 0 || this.sids_list.length > 0) {
this.$emit('backData', this.sids)
} else {
this.$notify({
title: '提示',
message: '请选择至少一条记录!',
type: 'error',
duration: 2000
})
}
},
doClose() {
this.$emit('doback')
}

2
anrui-scm/anrui-scm-ui/src/views/supplychain/cheliangpaichan/cheliangpaichanAdd.vue

@ -52,7 +52,7 @@
</el-col>
<el-col :span="8" class="colStyle">
<div class="span-sty spanOneWidth"><span>订金付款备注:</span></div>
<el-form-item><el-input class="addinputw addinputOne" :disabled="formobj.currentAmount === '0' || formobj.currentAmount === ''" v-model="formobj.payRemarks" clearable placeholder=""/></el-form-item>
<el-form-item><el-input class="addinputw addinputOne" v-model="formobj.payRemarks" clearable placeholder=""/></el-form-item>
</el-col>
</el-row>
<el-row class="rowStyle">

400
anrui-scm/anrui-scm-ui/src/views/workFlow/danchefanliheduiFlow/danchefanliheduiDaiBanInfo.vue

@ -0,0 +1,400 @@
<template>
<div class="app-container">
<div v-show="viewState == 1">
<!--标题按钮部分开始-->
<div class="tab-header webtop">
<!--标题-->
<div>{{ viewTitle }}</div>
<!--start 添加修改按钮-->
<div>
<el-button type="primary" size="small" @click="openAgree('同意')"> </el-button>
<el-button type="danger" size="small" @click="openReject('驳回')"> </el-button>
<el-button type="danger" size="small" @click="openStop('终止')"> </el-button>
</div>
</div>
<!--标题按钮部分结束-->
<!--Start 新增修改部分-->
<div class="">
<div class="titwu"><span>单车返利核对审核申请</span></div>
<el-form ref="form_obj" :model="formobj" :rules="rules" class="formadd">
<el-row class="rowStyle">
<el-col :span="2" class="tleftb colOneStyle">
<span>品牌:</span>
</el-col>
<el-col :span="22" class="colOneStyle">
<el-form-item><span>{{ formobj.brandName }}</span></el-form-item>
</el-col>
</el-row>
<div class="title">
<div>本月各项返利核对情况</div>
</div>
<el-table :key="tableKey" :data="formobj.scmWhenVehrebateCheckapplydetailDetails" :index="index" border style="width: 100%">
<el-table-column fixed width="80px" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column label="返利类型" align="center">
<template slot-scope="scope">
<span>{{ scope.row.rebateTypeValue }}</span>
</template>
</el-table-column>
<el-table-column label="数量" align="center">
<template slot-scope="scope">
<span>{{ scope.row.num }}</span>
</template>
</el-table-column>
<el-table-column label="预提金额" align="center">
<template slot-scope="scope">
<span>{{ scope.row.withRebate }}</span>
</template>
</el-table-column>
<el-table-column label="上传金额" align="center">
<template slot-scope="scope">
<span>{{ scope.row.uploadMoney }}</span>
</template>
</el-table-column>
<el-table-column label="待确认金额" align="center">
<template slot-scope="scope">
<span>{{ scope.row.stayDetermineMoney }}</span>
</template>
</el-table-column>
<el-table-column label="调整金额" align="center">
<template slot-scope="scope">
<span>{{ scope.row.adjustmentMoney }}</span>
</template>
</el-table-column>
<el-table-column label="费用" align="center">
<template slot-scope="scope">
<span>{{ scope.row.money }}</span>
</template>
</el-table-column>
<el-table-column label="明细" align="center">
<template slot-scope="scope">
<el-button type="primary" size="mini" @click="handleLook(scope.row)">查看</el-button>
</template>
</el-table-column>
</el-table>
<div class="title">
<div>预提返利本月核对情况</div>
</div>
<el-table :key="lastVehrebateKey" :data="formobj.scmLastVehrebateCheckapplydetailDetails" :index="index" border style="width: 100%">
<el-table-column fixed width="80px" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column label="预提年月" align="center">
<template slot-scope="scope">
<span>{{ scope.row.palceGenDate }}</span>
</template>
</el-table-column>
<el-table-column label="预提数量" align="center">
<template slot-scope="scope">
<span>{{ scope.row.withholdingAmount }}</span>
</template>
</el-table-column>
<el-table-column label="预提金额" align="center">
<template slot-scope="scope">
<span>{{ scope.row.withRebate }}</span>
</template>
</el-table-column>
<el-table-column label="上传数量" align="center">
<template slot-scope="scope">
<span>{{ scope.row.uploadAmount }}</span>
</template>
</el-table-column>
<el-table-column label="上传金额" align="center">
<template slot-scope="scope">
<span>{{ scope.row.uploadMoney }}</span>
</template>
</el-table-column>
<el-table-column label="待确认金额" align="center">
<template slot-scope="scope">
<span>{{ scope.row.stayDetermineMoney }}</span>
</template>
</el-table-column>
<el-table-column label="调整金额" align="center">
<template slot-scope="scope">
<span>{{ scope.row.adjustmentMoney }}</span>
</template>
</el-table-column>
<el-table-column label="费用" align="center">
<template slot-scope="scope">
<span>{{ scope.row.money }}</span>
</template>
</el-table-column>
<el-table-column label="未上传数量" align="center">
<template slot-scope="scope">
<span>{{ scope.row.notUploadedAmount }}</span>
</template>
</el-table-column>
<el-table-column label="未上传金额" align="center">
<template slot-scope="scope">
<span>{{ scope.row.notUploadedCost }}</span>
</template>
</el-table-column>
</el-table>
<el-row>
<el-col :span="2" class="tleftb">
<span>备注</span>
</el-col>
<el-col :span="22">
<el-form-item><span>{{ formobj.remarks }}</span></el-form-item>
</el-col>
</el-row>
</el-form>
</div>
</div>
<!--End 添加修改部分-->
<bicyclerebatetobecheckedInfo v-show="viewState == 2" ref="divInfo" @doback="resetState"/>
<!-- 选择待办人 的弹出框-->
<el-dialog title="填写审批意见" :visible.sync="nodeDialogVisible" width="80%">
<el-form class="formaddcopy02" >
<el-row v-show="currentLink" style="border-top: 1px solid #e0e3eb">
<el-col :span="24">
<div class="span-sty spanTwoWidth"><span>当前环节:</span></div>
<el-form-item><span class="addinputInfo addinputOne">{{ current.taskName }}->{{ nextNode.name }}</span></el-form-item>
</el-col>
</el-row>
<el-row :class="{ rowClass:!currentLink }">
<el-col :span="24">
<div class="span-sty spanTwoWidth"><span>意见:</span></div>
<el-form-item><el-input size="small" v-model="dialogList.comment" placeholder="审批意见" class="addinputw addinputOne" clearable ></el-input></el-form-item>
</el-col>
</el-row>
<div style="text-align:center;margin-top: 20px;">
<el-button type="primary" size="mini" @click="reject"> </el-button>
<el-button type="info " size="mini" @click="nodeDialogVisible = false"> </el-button>
</div>
</el-form>
</el-dialog>
</div>
</template>
<script>
import req from '@/api/bikerebate/bicyclerebatecheck'
import bicyclerebatetobecheckedInfo from './relation/bicyclerebatetobecheckedInfo'
export default {
name: 'danchefanliheduiDaiBanInfo',
components: {
bicyclerebatetobecheckedInfo
},
data() {
return {
viewTitle: '',
index: 0,
tableKey: 0,
lastVehrebateKey: 1,
viewState: 1,
operation: '', //
dialogList: {
comment: ''
},
startTask: true,
current: {
taskDefKey: '',
taskName: '' //
},
nextNode: {}, //
nodeDialogVisible: false,
currentLink: true,
//
formobj: {},
rules: {},
submitdisabled: false,
//
linkByParameter: {
businessSid: '',
comment: '',
instanceId: '',
taskId: '',
orgSidPath: '',
taskDefKey: '',
userSid: ''
}
}
},
created() {
console.log('url:' + window.location.href)
var one = window.location.href.indexOf('&data') + 6
const data = window.location.href.substr(one) // urlunescape()web,使
const obj = JSON.parse(decodeURIComponent(data))
console.log('iframe页面获取的obj:', obj)
//
this.linkByParameter.businessSid = obj.businessSid
this.linkByParameter.instanceId = obj.instanceId
this.linkByParameter.taskId = obj.taskId
this.linkByParameter.taskDefKey = obj.taskDefKey
this.linkByParameter.orgSidPath = window.sessionStorage.getItem('orgSidPath')
this.linkByParameter.userSid = window.sessionStorage.getItem('userSid')
this.current.taskDefKey = obj.taskDefKey
this.current.taskName = obj.taskName
//
this.showInfo(obj.businessSid)
},
mounted() {
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 2,
data: 450 + 'px'
}
}, '*')
},
methods: {
showInfo(sid) {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
this.viewTitle = '单车返利核对审核申请详情'
console.log('编辑回显', sid)
req.fetchDetailsBySid(sid).then((resp) => {
this.formobj = resp.data
}).catch((e) => {
this.formobj = {}
})
},
handleLook(row) {
this.viewState = 2
this.$refs['divInfo'].showInfo(row)
},
resetState() {
this.viewState = 1
},
//
openAgree(val) {
this.operation = val
this.currentLink = true
this.dialogList.comment = '同意'
req.getNextNodesForSubmit({ taskDefKey: this.current.taskDefKey }).then((resp) => {
if (resp.success) {
var arr = resp.data
this.nextNode = arr[0]
this.nodeDialogVisible = true
}
this.submitdisabled = false
})
},
//
openReject(val) {
this.operation = val
this.currentLink = true
this.dialogList.comment = ''
req.getPreviousNodesForReject({ taskDefKey: this.current.taskDefKey }).then((resp) => {
if (resp.success) {
var arr = resp.data
this.nextNode = arr[0]
this.nodeDialogVisible = true
}
this.submitdisabled = false
})
},
//
openStop(val) {
this.operation = val
this.currentLink = false
this.dialogList.comment = ''
this.nodeDialogVisible = true
},
reject() {
if (this.operation === '同意') {
this.handleAgree()
} else if (this.operation === '驳回') {
if (this.dialogList.comment === '') {
this.$message({ showClose: true, type: 'error', message: '请填写审批意见' })
} else {
this.handleReject()
}
} else if (this.operation === '终止') {
if (this.dialogList.comment === '') {
this.$message({ showClose: true, type: 'error', message: '请填写审批意见' })
} else {
this.handleStop()
}
}
},
/** 同意任务 */
handleAgree() {
this.linkByParameter.comment = this.dialogList.comment
req.complete(this.linkByParameter).then((response) => {
if (response.success) {
this.$notify({
title: '提示',
message: '执行成功',
type: 'success',
duration: 2000
})
this.nodeDialogVisible = false
//
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 1
}
}, '*')
}
})
},
/** 驳回任务 */
handleReject() {
this.linkByParameter.comment = this.dialogList.comment
req.reject(this.linkByParameter).then((response) => {
if (response.success) {
this.$notify({
title: '提示',
message: '执行成功',
type: 'success',
duration: 2000
})
this.nodeDialogVisible = false
//
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 1
}
}, '*')
}
})
},
/** 终止任务 */
handleStop() {
this.linkByParameter.comment = this.dialogList.comment
req.breakProcess(this.linkByParameter).then((response) => {
if (response.success) {
this.$notify({
title: '提示',
message: '执行成功',
type: 'success',
duration: 2000
})
this.nodeDialogVisible = false
//
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 1
}
}, '*')
}
})
}
}
}
</script>
<style scoped>
.titwu {
font-size: 28px;
text-align: center;
padding: 30px 0 20px 0;
}
.rowStyle {
border-left: 0px;
}
.colOneStyle {
border-right: 0px !important;
border-bottom: 0px !important;
}
.rowClass {
border-top: 1px solid #E0E3EB;
}
</style>

558
anrui-scm/anrui-scm-ui/src/views/workFlow/danchefanliheduiFlow/danchefanliheduiEdit.vue

@ -0,0 +1,558 @@
<template>
<div class="app-container">
<div v-show="viewState == 1">
<!--标题按钮部分开始-->
<div class="tab-header webtop">
<!--标题-->
<div>{{ viewTitle }}</div>
<!--start 添加修改按钮-->
<div>
<el-button type="primary" size="small" :disabled="submitdisabled" @click="save()">保存
</el-button>
<el-button type="primary" size="small" :disabled="submitdisabled" @click="submit()">提交
</el-button>
</div>
</div>
<!--标题按钮部分结束-->
<!--Start 新增修改部分-->
<div class="">
<div class="titwu"><span>{{ formobj.checkApply }}单车返利核对审核申请</span></div>
<el-form ref="form_obj" :model="formobj" :rules="rules" class="formadd">
<el-row class="rowStyle">
<el-col :span="2" class="tleftb colOneStyle">
<span>品牌:</span>
</el-col>
<el-col :span="4" class="colOneStyle">
<el-form-item>
<el-select :disabled="dialogStatus === 'edit'" v-model="formobj.brandName" placeholder="请选择" filterable clearable @change="changeBrand">
<el-option v-for="item in brand_list" :key="item.sid" :label="item.brandName" :value="item.brandName"/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="18" class="tleftb colOneStyle">
<el-button size="small" type="primary" @click="handleSelect()">添加</el-button>
</el-col>
</el-row>
<div class="title">
<div>本月各项返利核对情况</div>
</div>
<el-table :key="tableKey" :data="formobj.scmWhenVehrebateCheckapplydetailDetails" :index="index" border style="width: 100%">
<el-table-column fixed width="80px" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column label="返利类型" align="center">
<template slot-scope="scope">
<span>{{ scope.row.rebateTypeValue }}</span>
</template>
</el-table-column>
<el-table-column label="数量" align="center">
<template slot-scope="scope">
<span>{{ scope.row.num }}</span>
</template>
</el-table-column>
<el-table-column label="预提金额" align="center">
<template slot-scope="scope">
<span>{{ scope.row.withRebate }}</span>
</template>
</el-table-column>
<el-table-column label="上传金额" align="center">
<template slot-scope="scope">
<span>{{ scope.row.uploadMoney }}</span>
</template>
</el-table-column>
<el-table-column label="待确认金额" align="center">
<template slot-scope="scope">
<span>{{ scope.row.stayDetermineMoney }}</span>
</template>
</el-table-column>
<el-table-column label="调整金额" align="center">
<template slot-scope="scope">
<span>{{ scope.row.adjustmentMoney }}</span>
</template>
</el-table-column>
<el-table-column label="费用" align="center">
<template slot-scope="scope">
<span>{{ scope.row.money }}</span>
</template>
</el-table-column>
<el-table-column label="明细" align="center">
<template slot-scope="scope">
<el-button type="primary" size="mini" @click="handleLook(scope.row)">查看</el-button>
</template>
</el-table-column>
</el-table>
<div class="divStyle">
<div>预提返利本月核对情况</div>
<el-button type="primary" size="mini" class="btntopblueline" @click="handleCheck">往月核对情况</el-button>
</div>
<el-table :key="lastVehrebateKey" :data="formobj.scmLastVehrebateCheckapplydetailDetails" border style="width: 100%">
<el-table-column label="预提年月" align="center">
<template slot-scope="scope">
<span>{{ scope.row.palceGenDate }}</span>
</template>
</el-table-column>
<el-table-column label="预提数量" align="center">
<template slot-scope="scope">
<span>{{ scope.row.withholdingAmount }}</span>
</template>
</el-table-column>
<el-table-column label="预提金额" align="center">
<template slot-scope="scope">
<span>{{ scope.row.withRebate }}</span>
</template>
</el-table-column>
<el-table-column label="上传数量" align="center">
<template slot-scope="scope">
<span>{{ scope.row.uploadAmount }}</span>
</template>
</el-table-column>
<el-table-column label="上传金额" align="center">
<template slot-scope="scope">
<span>{{ scope.row.uploadMoney }}</span>
</template>
</el-table-column>
<el-table-column label="待确认金额" align="center">
<template slot-scope="scope">
<span>{{ scope.row.stayDetermineMoney }}</span>
</template>
</el-table-column>
<el-table-column label="调整金额" align="center">
<template slot-scope="scope">
<span>{{ scope.row.adjustmentMoney }}</span>
</template>
</el-table-column>
<el-table-column label="费用" align="center">
<template slot-scope="scope">
<span>{{ scope.row.money }}</span>
</template>
</el-table-column>
<el-table-column label="未上传数量" align="center">
<template slot-scope="scope">
<span>{{ scope.row.notUploadedAmount }}</span>
</template>
</el-table-column>
<el-table-column label="未上传金额" align="center">
<template slot-scope="scope">
<span>{{ scope.row.notUploadedCost }}</span>
</template>
</el-table-column>
</el-table>
<el-row>
<el-col :span="2" class="tleftb">
<span>备注</span>
</el-col>
<el-col :span="22">
<el-form-item><el-input v-model="formobj.remarks" placeholder="" class="addinputw" clearable></el-input></el-form-item>
</el-col>
</el-row>
</el-form>
</div>
</div>
<!--End 添加修改部分-->
<yiheduidanchefanli v-show="viewState == 2" ref="divSelect" @backData="backData" @doback="resetState"/>
<bicyclerebatetobecheckedAdd v-show="viewState == 3" ref="divAdd" @backAdd="backAdd" @doback="resetState"/>
<el-dialog :visible.sync="dialogVisible" width="60%">
<div class="titwu"><span>往月核对情况</span></div>
<el-form class="formadd">
<el-row style="border-top: 1px solid #E0E3EB">
<el-col :span="3" class="tleftb">
<span>月促政策</span>
</el-col>
<el-col :span="21">
<el-form-item><span>{{ summation }}</span></el-form-item>
</el-col>
</el-row>
<el-table :key="checkKey" :data="checkList" border width="100%">
<el-table-column label="计提月份" align="center">
<template slot-scope="scope">
<span>{{ scope.row.month }}</span>
</template>
</el-table-column>
<el-table-column label="计提" align="center">
<template slot-scope="scope">
<span>{{ scope.row.month }}</span>
</template>
</el-table-column>
<el-table-column label="上传" align="center">
<template slot-scope="scope">
<span>{{ scope.row.month }}</span>
</template>
</el-table-column>
<el-table-column label="未上传" align="center">
<template slot-scope="scope">
<span>{{ scope.row.month }}</span>
</template>
</el-table-column>
<el-table-column label="调整" align="center">
<template slot-scope="scope">
<span>{{ scope.row.month }}</span>
</template>
</el-table-column>
</el-table>
</el-form>
</el-dialog>
</div>
</template>
<script>
import req from '@/api/bikerebate/bicyclerebatecheck'
import { fetchBySid, brandDown } from '@/api/cheliang/dictcommons'
import yiheduidanchefanli from './relation/yiheduidanchefanli'
import bicyclerebatetobecheckedAdd from './relation/bicyclerebatetobecheckedAdd'
export default {
name: 'danchefanliheduiEdit',
components: {
yiheduidanchefanli,
bicyclerebatetobecheckedAdd
},
data() {
return {
viewTitle: '',
viewState: 1,
index: 0,
tableKey: 0,
lastVehrebateKey: 1,
checkKey: 2,
dialogVisible: false,
summation: '',
checkList: [],
dialogStatus: '',
brand_list: [],
//
formobj: {
sid: '',
createByName: '',
brandName: '',
brandSid: '',
checkApply: '',
createOrgName: '',
createOrgSid: '',
useOrgName: '',
useOrgSid: '',
remarks: '',
instanceId: '', // ID
taskId: '', // ID
scmWhenVehrebateCheckapplydetailDetails: [],
scmLastVehrebateCheckapplydetailDetails: []
},
rules: {},
submitdisabled: false
}
},
created() {
console.log('url:' + window.location.href)
var one = window.location.href.indexOf('&data') + 6
const data = window.location.href.substr(one) // urlunescape()web,使
const obj = JSON.parse(decodeURIComponent(data))
this.showInfo(obj.businessSid)
},
mounted() {
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 2,
data: 450 + 'px'
}
}, '*')
},
methods: {
init() {
fetchBySid(this.formobj.createOrgSid).then((res) => {
if (res.success) {
this.formobj.createOrgName = res.data.name
this.formobj.useOrgName = res.data.name
}
})
brandDown({ useOrg: this.formobj.createOrgSid }).then((res) => {
if (res.success) {
this.brand_list = res.data
}
})
},
showInfo(sid) {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
this.dialogStatus = 'edit'
this.viewTitle = '【编辑】单车返利核对审核申请'
console.log('编辑回显', sid)
req.fetchDetailsBySid(sid).then((resp) => {
this.formobj = resp.data
this.formobj.instanceId = resp.data.procInstId
}).catch((e) => {
this.formobj = {}
})
},
changeBrand(value) {
let bb = null
this.brand_list.forEach((e) => {
if (e.brandName === value) {
bb = {
name: e.brandName,
sid: e.sid
}
}
})
this.formobj.brandSid = bb.sid
},
//
handleSelect() {
if (this.formobj.brandName === '' || this.formobj.brandName === null || this.formobj.brandName === undefined) {
this.$message({ showClose: true, type: 'error', message: '请先选择品牌' })
return
}
this.viewState = 2
this.$refs['divSelect'].showData(this.formobj.scmWhenVehrebateCheckapplydetailDetails, this.formobj.scmLastVehrebateCheckapplydetailDetails, this.formobj.createOrgSid, this.formobj.brandSid)
},
backData(value, val) {
this.viewState = 1
if (value.length > 0) {
for (var i in value) {
let cval = value[i]
if (!this.formobj.scmWhenVehrebateCheckapplydetailDetails || this.formobj.scmWhenVehrebateCheckapplydetailDetails.length === 0) {
this.formobj.scmWhenVehrebateCheckapplydetailDetails = []
}
let v = 0
for (var j in this.formobj.scmWhenVehrebateCheckapplydetailDetails) {
if (this.formobj.scmWhenVehrebateCheckapplydetailDetails[j].rebateTypeValue === cval.rebateTypeValue) {
this.formobj.scmWhenVehrebateCheckapplydetailDetails[j].num = parseInt(this.formobj.scmWhenVehrebateCheckapplydetailDetails[j].num) + parseInt(1)
this.formobj.scmWhenVehrebateCheckapplydetailDetails[j].withRebate = parseInt(this.formobj.scmWhenVehrebateCheckapplydetailDetails[j].withRebate) + parseInt(cval.withRebate)
this.formobj.scmWhenVehrebateCheckapplydetailDetails[j].uploadMoney = parseInt(this.formobj.scmWhenVehrebateCheckapplydetailDetails[j].uploadMoney) + parseInt(cval.uploadMoney)
this.formobj.scmWhenVehrebateCheckapplydetailDetails[j].stayDetermineMoney = parseInt(this.formobj.scmWhenVehrebateCheckapplydetailDetails[j].stayDetermineMoney) + parseInt(cval.stayDetermineMoney)
this.formobj.scmWhenVehrebateCheckapplydetailDetails[j].adjustmentMoney = parseInt(this.formobj.scmWhenVehrebateCheckapplydetailDetails[j].adjustmentMoney) + parseInt(cval.adjustmentMoney)
this.formobj.scmWhenVehrebateCheckapplydetailDetails[j].money = parseInt(this.formobj.scmWhenVehrebateCheckapplydetailDetails[j].money) + parseInt(cval.money)
this.formobj.scmWhenVehrebateCheckapplydetailDetails[j].vehRebateSids.push(cval.sid)
v = 1
break
}
}
if (v === 0) {
this.formobj.scmWhenVehrebateCheckapplydetailDetails.push({
rebateTypeKey: cval.rebateTypeKey,
rebateTypeValue: cval.rebateTypeValue,
num: 1,
withRebate: cval.withRebate,
brandName: cval.brandName,
brandSid: cval.brandSid,
uploadMoney: cval.uploadMoney,
stayDetermineMoney: cval.stayDetermineMoney,
adjustmentMoney: cval.adjustmentMoney,
money: cval.money,
vehRebateSids: [cval.sid],
sid: '',
mainSid: ''
})
}
}
} else {
this.formobj.scmWhenVehrebateCheckapplydetailDetails = []
}
if (val.length > 0) {
for (var p in val) {
let bval = val[p]
if (!this.formobj.scmLastVehrebateCheckapplydetailDetails || this.formobj.scmLastVehrebateCheckapplydetailDetails.length === 0) {
this.formobj.scmLastVehrebateCheckapplydetailDetails = []
}
let v = 0
for (var l in this.formobj.scmLastVehrebateCheckapplydetailDetails) {
if (this.formobj.scmLastVehrebateCheckapplydetailDetails[l].palceGenDate === bval.palceGenDate) {
this.formobj.scmLastVehrebateCheckapplydetailDetails[l].withholdingAmount = parseInt(this.formobj.scmLastVehrebateCheckapplydetailDetails[l].withholdingAmount) + parseInt(1)
this.formobj.scmLastVehrebateCheckapplydetailDetails[l].uploadAmount = parseInt(this.formobj.scmLastVehrebateCheckapplydetailDetails[l].uploadAmount) + parseInt(1)
this.formobj.scmLastVehrebateCheckapplydetailDetails[l].withRebate = parseInt(this.formobj.scmLastVehrebateCheckapplydetailDetails[l].withRebate) + parseInt(bval.withRebate)
this.formobj.scmLastVehrebateCheckapplydetailDetails[l].uploadMoney = parseInt(this.formobj.scmLastVehrebateCheckapplydetailDetails[l].uploadMoney) + parseInt(bval.uploadMoney)
this.formobj.scmLastVehrebateCheckapplydetailDetails[l].stayDetermineMoney = parseInt(this.formobj.scmLastVehrebateCheckapplydetailDetails[l].stayDetermineMoney) + parseInt(bval.stayDetermineMoney)
this.formobj.scmLastVehrebateCheckapplydetailDetails[l].adjustmentMoney = parseInt(this.formobj.scmLastVehrebateCheckapplydetailDetails[l].adjustmentMoney) + parseInt(bval.adjustmentMoney)
this.formobj.scmLastVehrebateCheckapplydetailDetails[l].money = parseInt(this.formobj.scmLastVehrebateCheckapplydetailDetails[l].money) + parseInt(bval.money)
this.formobj.scmLastVehrebateCheckapplydetailDetails[l].vehRebateSids.push(bval.sid)
v = 1
break
}
}
if (v === 0) {
this.formobj.scmLastVehrebateCheckapplydetailDetails.push({
palceGenDate: bval.palceGenDate,
withholdingAmount: 1,
uploadAmount: 1,
withRebate: bval.withRebate,
uploadMoney: bval.uploadMoney,
stayDetermineMoney: bval.stayDetermineMoney,
adjustmentMoney: bval.adjustmentMoney,
money: bval.money,
notUploadedAmount: '',
notUploadedCost: '',
vehRebateSids: [bval.sid],
sid: '',
mainSid: ''
})
}
}
} else {
this.formobj.scmLastVehrebateCheckapplydetailDetails = []
}
},
//
dataDelete(index) {
this.formobj.baseVehinstallModpricedetails.splice(index, 1)
},
handleLook(row) {
this.viewState = 3
this.$refs['divAdd'].showInfo(row)
},
backAdd(value, rebateType) {
this.viewState = 1
const aa = []
if (value.length > 0) {
for (var i in value) {
let cval = value[i]
let v = 0
for (var j in aa) {
if (aa[j].rebateTypeValue === cval.rebateTypeValue) {
aa[j].num = parseInt(aa[j].num) + parseInt(1)
aa[j].withRebate = parseInt(aa[j].withRebate) + parseInt(cval.withRebate)
aa[j].uploadMoney = parseInt(aa[j].uploadMoney) + parseInt(cval.uploadMoney)
aa[j].stayDetermineMoney = parseInt(aa[j].stayDetermineMoney) + parseInt(cval.stayDetermineMoney)
aa[j].adjustmentMoney = parseInt(aa[j].adjustmentMoney) + parseInt(cval.adjustmentMoney)
aa[j].money = parseInt(aa[j].money) + parseInt(cval.money)
aa[j].vehRebateSids.push(cval.sid)
v = 1
break
}
}
if (v === 0) {
aa.push({
rebateTypeKey: cval.rebateTypeKey,
rebateTypeValue: cval.rebateTypeValue,
num: 1,
withRebate: cval.withRebate,
brandName: cval.brandName,
brandSid: cval.brandSid,
uploadMoney: cval.uploadMoney,
stayDetermineMoney: cval.stayDetermineMoney,
adjustmentMoney: cval.adjustmentMoney,
money: cval.money,
vehRebateSids: [cval.sid],
sid: '',
mainSid: ''
})
}
}
for (var k = 0; k < this.formobj.scmWhenVehrebateCheckapplydetailDetails.length; k++) {
if (this.formobj.scmWhenVehrebateCheckapplydetailDetails[k].rebateTypeValue === rebateType) {
this.formobj.scmWhenVehrebateCheckapplydetailDetails[k].rebateTypeKey = aa[0].rebateTypeKey
this.formobj.scmWhenVehrebateCheckapplydetailDetails[k].rebateTypeValue = aa[0].rebateTypeValue
this.formobj.scmWhenVehrebateCheckapplydetailDetails[k].num = aa[0].num
this.formobj.scmWhenVehrebateCheckapplydetailDetails[k].withRebate = aa[0].withRebate
this.formobj.scmWhenVehrebateCheckapplydetailDetails[k].brandName = aa[0].brandName
this.formobj.scmWhenVehrebateCheckapplydetailDetails[k].brandSid = aa[0].brandSid
this.formobj.scmWhenVehrebateCheckapplydetailDetails[k].uploadMoney = aa[0].uploadMoney
this.formobj.scmWhenVehrebateCheckapplydetailDetails[k].stayDetermineMoney = aa[0].stayDetermineMoney
this.formobj.scmWhenVehrebateCheckapplydetailDetails[k].adjustmentMoney = aa[0].adjustmentMoney
this.formobj.scmWhenVehrebateCheckapplydetailDetails[k].money = aa[0].money
this.formobj.scmWhenVehrebateCheckapplydetailDetails[k].vehRebateSids = aa[0].vehRebateSids
break
}
}
} else if (value.length === 0) {
for (var l = 0; l < this.formobj.scmWhenVehrebateCheckapplydetailDetails.length; l++) {
if (this.formobj.scmWhenVehrebateCheckapplydetailDetails[l].rebateTypeValue === rebateType) {
this.formobj.scmWhenVehrebateCheckapplydetailDetails.splice(l, 1)
break
}
}
}
},
resetState() {
this.viewState = 1
},
handleCheck() {
this.dialogVisible = true
},
save() {
console.log(this.formobj)
this.$refs['form_obj'].validate((valid) => {
if (valid) {
this.submitdisabled = true
req.save(this.formobj).then((resp) => {
this.submitdisabled = false
if (resp.success) {
this.$message({
showClose: true,
type: 'success',
message: resp.msg
})
// ()
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 1
}
}, '*')
}
}).catch(() => {
this.submitdisabled = false
})
} else {
return false
}
})
},
submit() {
this.$refs['form_obj'].validate((valid) => {
if (valid) {
this.submitdisabled = true
req.submitVehicleApply(this.formobj).then((resp) => {
this.submitdisabled = false
if (resp.success) {
this.$message({
showClose: true,
type: 'success',
message: resp.msg
})
// ()
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 1
}
}, '*')
}
}).catch(() => {
this.submitdisabled = false
})
} else {
return false
}
})
}
}
}
</script>
<style scoped>
.divStyle {
padding: 7px;
font-weight: bold;
font-size: 16px;
background-color: #0294d7;
color: #ffffff;
text-align: left;
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
}
.titwu {
font-size: 28px;
text-align: center;
padding: 30px 0 20px 0;
}
.rowStyle {
border-left: 0px;
}
.colOneStyle {
border-right: 0px !important;
border-bottom: 0px !important;
}
</style>

276
anrui-scm/anrui-scm-ui/src/views/workFlow/danchefanliheduiFlow/danchefanliheduiYiBanInfo.vue

@ -0,0 +1,276 @@
<template>
<div class="app-container">
<div v-show="viewState == 1">
<!--标题按钮部分开始-->
<div class="tab-header webtop">
<!--标题-->
<div>{{ viewTitle }}</div>
<!--start 添加修改按钮-->
<div>
<el-button type="danger" size="small" @click="openRevoke()">撤回</el-button>
</div>
</div>
<!--标题按钮部分结束-->
<!--Start 新增修改部分-->
<div class="">
<div class="titwu"><span>单车返利核对审核申请</span></div>
<el-form ref="form_obj" :model="formobj" :rules="rules" class="formadd">
<el-row class="rowStyle">
<el-col :span="2" class="tleftb colOneStyle">
<span>品牌:</span>
</el-col>
<el-col :span="22" class="colOneStyle">
<el-form-item><span>{{ formobj.brandName }}</span></el-form-item>
</el-col>
</el-row>
<div class="title">
<div>本月各项返利核对情况</div>
</div>
<el-table :key="tableKey" :data="formobj.scmWhenVehrebateCheckapplydetailDetails" :index="index" border style="width: 100%">
<el-table-column fixed width="80px" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column label="返利类型" align="center">
<template slot-scope="scope">
<span>{{ scope.row.rebateTypeValue }}</span>
</template>
</el-table-column>
<el-table-column label="数量" align="center">
<template slot-scope="scope">
<span>{{ scope.row.num }}</span>
</template>
</el-table-column>
<el-table-column label="预提金额" align="center">
<template slot-scope="scope">
<span>{{ scope.row.withRebate }}</span>
</template>
</el-table-column>
<el-table-column label="上传金额" align="center">
<template slot-scope="scope">
<span>{{ scope.row.uploadMoney }}</span>
</template>
</el-table-column>
<el-table-column label="待确认金额" align="center">
<template slot-scope="scope">
<span>{{ scope.row.stayDetermineMoney }}</span>
</template>
</el-table-column>
<el-table-column label="调整金额" align="center">
<template slot-scope="scope">
<span>{{ scope.row.adjustmentMoney }}</span>
</template>
</el-table-column>
<el-table-column label="费用" align="center">
<template slot-scope="scope">
<span>{{ scope.row.money }}</span>
</template>
</el-table-column>
<el-table-column label="明细" align="center">
<template slot-scope="scope">
<el-button type="primary" size="mini" @click="handleLook(scope.row)">查看</el-button>
</template>
</el-table-column>
</el-table>
<div class="title">
<div>预提返利本月核对情况</div>
</div>
<el-table :key="lastVehrebateKey" :data="formobj.scmLastVehrebateCheckapplydetailDetails" :index="index" border style="width: 100%">
<el-table-column fixed width="80px" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column label="预提年月" align="center">
<template slot-scope="scope">
<span>{{ scope.row.palceGenDate }}</span>
</template>
</el-table-column>
<el-table-column label="预提数量" align="center">
<template slot-scope="scope">
<span>{{ scope.row.withholdingAmount }}</span>
</template>
</el-table-column>
<el-table-column label="预提金额" align="center">
<template slot-scope="scope">
<span>{{ scope.row.withRebate }}</span>
</template>
</el-table-column>
<el-table-column label="上传数量" align="center">
<template slot-scope="scope">
<span>{{ scope.row.uploadAmount }}</span>
</template>
</el-table-column>
<el-table-column label="上传金额" align="center">
<template slot-scope="scope">
<span>{{ scope.row.uploadMoney }}</span>
</template>
</el-table-column>
<el-table-column label="待确认金额" align="center">
<template slot-scope="scope">
<span>{{ scope.row.stayDetermineMoney }}</span>
</template>
</el-table-column>
<el-table-column label="调整金额" align="center">
<template slot-scope="scope">
<span>{{ scope.row.adjustmentMoney }}</span>
</template>
</el-table-column>
<el-table-column label="费用" align="center">
<template slot-scope="scope">
<span>{{ scope.row.money }}</span>
</template>
</el-table-column>
<el-table-column label="未上传数量" align="center">
<template slot-scope="scope">
<span>{{ scope.row.notUploadedAmount }}</span>
</template>
</el-table-column>
<el-table-column label="未上传金额" align="center">
<template slot-scope="scope">
<span>{{ scope.row.notUploadedCost }}</span>
</template>
</el-table-column>
</el-table>
<el-row>
<el-col :span="2" class="tleftb">
<span>备注</span>
</el-col>
<el-col :span="22">
<el-form-item><span>{{ formobj.remarks }}</span></el-form-item>
</el-col>
</el-row>
</el-form>
</div>
</div>
<!--End 添加修改部分-->
<bicyclerebatetobecheckedInfo v-show="viewState == 2" ref="divInfo" @doback="resetState"/>
</div>
</template>
<script>
import req from '@/api/bikerebate/bicyclerebatecheck'
import bicyclerebatetobecheckedInfo from './relation/bicyclerebatetobecheckedInfo'
export default {
name: 'danchefanliheduiYiBanInfo',
components: {
bicyclerebatetobecheckedInfo
},
data() {
return {
viewTitle: '',
index: 0,
tableKey: 0,
lastVehrebateKey: 1,
viewState: 1,
//
formobj: {},
rules: {},
submitdisabled: false,
//
linkByParameter: {
businessSid: '',
comment: '',
instanceId: '',
taskId: '',
orgSidPath: '',
taskDefKey: '',
userSid: ''
}
}
},
created() {
console.log('url:' + window.location.href)
var one = window.location.href.indexOf('&data') + 6
const data = window.location.href.substr(one) // urlunescape()web,使
const obj = JSON.parse(decodeURIComponent(data))
console.log('iframe页面获取的obj:', obj)
//
this.linkByParameter.businessSid = obj.businessSid
this.linkByParameter.instanceId = obj.instanceId
this.linkByParameter.taskId = obj.taskId
this.linkByParameter.taskDefKey = obj.taskDefKey
this.linkByParameter.orgSidPath = window.sessionStorage.getItem('orgSidPath')
this.linkByParameter.userSid = window.sessionStorage.getItem('userSid')
//
this.showInfo(obj.businessSid)
},
mounted() {
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 2,
data: 450 + 'px'
}
}, '*')
},
methods: {
showInfo(sid) {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
this.viewTitle = '单车返利核对审核申请详情'
console.log('编辑回显', sid)
req.fetchDetailsBySid(sid).then((resp) => {
this.formobj = resp.data
}).catch((e) => {
this.formobj = {}
})
},
handleLook(row) {
this.viewState = 2
this.$refs['divInfo'].showInfo(row)
},
resetState() {
this.viewState = 1
},
/** 确认撤回任务 */
openRevoke() {
this.$confirm('是否确认执行撤回操作', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.handleRevoke()
}).catch(() => {
this.$message({
type: 'info',
message: '已取消撤回'
})
})
},
/** 撤回任务 */
handleRevoke() {
req.revokeProcess(this.linkByParameter).then((response) => {
if (response.success) {
this.$notify({
title: '提示',
message: '执行成功',
type: 'success',
duration: 2000
})
this.nodeDialogVisible = false
//
window.parent.postMessage({
cmd: 'returnHeight',
params: {
//
code: 1
}
}, '*')
}
})
},
}
}
</script>
<style scoped>
.titwu {
font-size: 28px;
text-align: center;
padding: 30px 0 20px 0;
}
.rowStyle {
border-left: 0px;
}
.colOneStyle {
border-right: 0px !important;
border-bottom: 0px !important;
}
</style>

198
anrui-scm/anrui-scm-ui/src/views/workFlow/danchefanliheduiFlow/relation/bicyclerebatetobecheckedAdd.vue

@ -0,0 +1,198 @@
<template>
<div class="app-container">
<div v-show="viewState == 1">
<!--标题按钮部分开始-->
<div class="tab-header webtop">
<!--标题-->
<div>{{ viewTitle }}</div>
<!--start 添加修改按钮-->
<div>
<el-button type="danger" size="small" @click="handleDelete">删除</el-button>
<el-button type="info" size="small" @click="handleReturn()">关闭</el-button>
</div>
</div>
<!--标题按钮部分结束-->
<!--Start 新增修改部分-->
<div class="">
<el-form ref="form_obj" class="formadd">
<el-table :key="tableKey" :data="list" :index="index" border style="width: 100%" @selection-change="handleSelectionChange">
<el-table-column fixed type="selection" align="center" width="50px"/>
<el-table-column fixed width="80px" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column label="品牌" align="center">
<template slot-scope="scope">
<span>{{ scope.row.brandName }}</span>
</template>
</el-table-column>
<el-table-column label="车型" align="center" width="200">
<template slot-scope="scope">
<span>{{ scope.row.vehModelName }}</span>
</template>
</el-table-column>
<el-table-column label="车架号" align="center" width="200">
<template slot-scope="scope">
<span>{{ scope.row.vinNo }}</span>
</template>
</el-table-column>
<el-table-column label="厂家合同价" align="center" width="150">
<template slot-scope="scope">
<span>{{ scope.row.manufactorSettlementPrice }}</span>
</template>
</el-table-column>
<el-table-column label="其中运费" align="center" width="150">
<template slot-scope="scope">
<span>{{ scope.row.freight }}</span>
</template>
</el-table-column>
<el-table-column label="创建日期" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.createTime }}</span>
</template>
</el-table-column>
<el-table-column label="返利类型" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.rebateTypeValue }}</span>
</template>
</el-table-column>
<el-table-column label="返利名称" align="center" width="150">
<template slot-scope="scope">
<span>{{ scope.row.rebateName }}</span>
</template>
</el-table-column>
<el-table-column label="预计返利" align="center" width="150">
<template slot-scope="scope">
<span>{{ scope.row.estimateRebate }}</span>
</template>
</el-table-column>
<el-table-column label="所属年月" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.palceGenDate }}</span>
</template>
</el-table-column>
<el-table-column label="上传日期" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.uploadDate }}</span>
</template>
</el-table-column>
<el-table-column label="上传金额" align="center" width="150">
<template slot-scope="scope">
<span>{{ scope.row.uploadMoney }}</span>
</template>
</el-table-column>
<el-table-column label="待确定金额" align="center" width="150">
<template slot-scope="scope">
<span>{{ scope.row.stayDetermineMoney }}</span>
</template>
</el-table-column>
<el-table-column label="费用" align="center" width="150">
<template slot-scope="scope">
<span>{{ scope.row.money }}</span>
</template>
</el-table-column>
<el-table-column label="是否调整" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.isAdjustment }}</span>
</template>
</el-table-column>
<el-table-column label="调整金额" align="center" width="150">
<template slot-scope="scope">
<span>{{ scope.row.adjustmentMoney }}</span>
</template>
</el-table-column>
<el-table-column label="调整说明" align="center" width="300">
<template slot-scope="scope">
<span>{{ scope.row.adjustmentRemarks }}</span>
</template>
</el-table-column>
</el-table>
</el-form>
</div>
</div>
<!--End 添加修改部分-->
</div>
</template>
<script>
import req from '@/api/bikerebate/bicyclerebatecheck'
import list from "@/views/vehicleModel/vehicleModelConfig/list";
export default {
name: 'bicyclerebatetobecheckedAdd',
data() {
return {
viewTitle: '',
index: 0,
tableKey: 0,
viewState: 1,
rebateType: '',
sids: [],
//
list: [],
rules: {},
submitdisabled: false
}
},
methods: {
handleSelectionChange(row) {
const aa = []
row.forEach((element) => {
aa.push(element.sid)
})
this.sids = aa
console.log('sids', this.sids)
},
showInfo(row) {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
this.viewTitle = '单车返利核对审核申请明细'
this.rebateType = row.rebateTypeValue
console.log('编辑回显', row)
req.vehRebateWithDetails(row.vehRebateSid).then((resp) => {
this.list = resp.data
}).catch((e) => {
this.list = []
})
},
handleDelete() {
if (this.sids.length === 0) {
this.$message({
showClose: true,
type: 'error',
message: '请选择至少一条记录进行删除操作'
})
return
}
for (var i = 0; i < this.list.length; i++) {
for (var j = 0; j < this.sids.length; j++) {
if (this.list[i].sid === this.sids[j]) {
this.list.splice(i, 1)
}
}
}
},
// ===
handleReturn() {
//
const data_list = []
for (var i = 0; i < this.list.length; i++) {
data_list.push({
sid: this.list[i].sid,
rebateTypeValue: this.list[i].rebateTypeValue,
rebateTypeKey: this.list[i].rebateTypeKey,
withRebate: this.list[i].estimateRebate,
brandName: this.list[i].brandName,
brandSid: this.list[i].brandSid,
uploadMoney: this.list[i].uploadMoney,
stayDetermineMoney: this.list[i].stayDetermineMoney,
adjustmentMoney: this.list[i].adjustmentMoney,
money: this.list[i].money
})
}
this.$emit('backAdd', data_list, this.rebateType)
}
}
}
</script>
<style scoped>
</style>

155
anrui-scm/anrui-scm-ui/src/views/workFlow/danchefanliheduiFlow/relation/bicyclerebatetobecheckedInfo.vue

@ -0,0 +1,155 @@
<template>
<div class="app-container">
<div>
<!--标题按钮部分开始-->
<div class="tab-header webtop">
<!--标题-->
<div>{{ viewTitle }}</div>
<!--start 添加修改按钮-->
<div>
<el-button type="info" size="small" @click="handleReturn()">关闭</el-button>
</div>
</div>
<!--标题按钮部分结束-->
<!--Start 新增修改部分-->
<div class="">
<el-form ref="form_obj" class="formadd">
<el-table :key="tableKey" :data="list" :index="index" border style="width: 100%">
<el-table-column fixed width="60px" label="序号" type="index" :index="index + 1" align="center"/>
<el-table-column label="品牌" align="center" width="200">
<template slot-scope="scope">
<span>{{ scope.row.brandName }}</span>
</template>
</el-table-column>
<el-table-column label="车型" align="center" width="200">
<template slot-scope="scope">
<span>{{ scope.row.vehModelName }}</span>
</template>
</el-table-column>
<el-table-column label="车架号" align="center" width="200">
<template slot-scope="scope">
<span>{{ scope.row.vinNo }}</span>
</template>
</el-table-column>
<el-table-column label="厂家合同价" align="center" width="150">
<template slot-scope="scope">
<span>{{ scope.row.manufactorSettlementPrice }}</span>
</template>
</el-table-column>
<el-table-column label="其中运费" align="center" width="150">
<template slot-scope="scope">
<span>{{ scope.row.freight }}</span>
</template>
</el-table-column>
<el-table-column label="创建日期" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.createTime }}</span>
</template>
</el-table-column>
<el-table-column label="返利类型" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.rebateTypeValue }}</span>
</template>
</el-table-column>
<el-table-column label="返利名称" align="center" width="150">
<template slot-scope="scope">
<span>{{ scope.row.rebateName }}</span>
</template>
</el-table-column>
<el-table-column label="预计返利" align="center" width="150">
<template slot-scope="scope">
<span>{{ scope.row.estimateRebate }}</span>
</template>
</el-table-column>
<el-table-column label="所属年月" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.palceGenDate }}</span>
</template>
</el-table-column>
<el-table-column label="上传日期" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.uploadDate }}</span>
</template>
</el-table-column>
<el-table-column label="上传金额" align="center" width="150">
<template slot-scope="scope">
<span>{{ scope.row.uploadMoney }}</span>
</template>
</el-table-column>
<el-table-column label="待确定金额" align="center" width="150">
<template slot-scope="scope">
<span>{{ scope.row.stayDetermineMoney }}</span>
</template>
</el-table-column>
<el-table-column label="费用" align="center" width="150">
<template slot-scope="scope">
<span>{{ scope.row.money }}</span>
</template>
</el-table-column>
<el-table-column label="是否调整" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.isAdjustment }}</span>
</template>
</el-table-column>
<el-table-column label="调整金额" align="center" width="150">
<template slot-scope="scope">
<span>{{ scope.row.adjustmentMoney }}</span>
</template>
</el-table-column>
<el-table-column label="调整说明" align="center" width="300">
<template slot-scope="scope">
<span>{{ scope.row.adjustmentRemarks }}</span>
</template>
</el-table-column>
</el-table>
</el-form>
</div>
</div>
<!--End 添加修改部分-->
</div>
</template>
<script>
import req from '@/api/bikerebate/bicyclerebatecheck'
export default {
name: 'bicyclerebatetobecheckedInfo',
data() {
return {
viewTitle: '',
index: 0,
tableKey: 0,
viewState: 1,
sids: [],
//
list: [],
rules: {},
submitdisabled: false
}
},
methods: {
showInfo(row) {
this.$nextTick(() => {
this.$refs['form_obj'].clearValidate()
})
this.viewTitle = '单车返利核对审核申请明细'
console.log('编辑回显', row)
req.vehRebateWithDetails(row.vehRebateSid).then((resp) => {
this.list = resp.data
}).catch((e) => {
this.list = []
})
},
// ===
handleReturn() {
//
this.list = []
this.$refs['form_obj'].resetFields()
this.$emit('doback')
}
}
}
</script>
<style scoped>
</style>

356
anrui-scm/anrui-scm-ui/src/views/workFlow/danchefanliheduiFlow/relation/yiheduidanchefanli.vue

@ -0,0 +1,356 @@
<template>
<div class="app-container">
<!-- Start 列表页面 -->
<div>
<button-bar view-title="已上传单车返利列表" ref="btnbar" :btndisabled="btndisabled" @btnhandle="btnHandle"/>
<div class="">
<!-- <div class="searchcon">-->
<!-- <el-button size="small" class="searchbtn" @click="clicksearchShow">{{ searchxianshitit }}</el-button>-->
<!-- <div v-show="isSearchShow" class="search">-->
<!-- <el-form ref="listQueryform" :inline="true" :model="listQuery" label-width="100px" class="tab-header">-->
<!-- <el-form-item label="品牌">-->
<!-- <el-input v-model="listQuery.params.mainSid" placeholder="请输入车架号" clearable/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="车型">-->
<!-- <el-input v-model="listQuery.params.mainSid" placeholder="请输入车架号" clearable/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="车架号">-->
<!-- <el-input v-model="listQuery.params.mainSid" placeholder="请输入车架号" clearable/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="创建日期">-->
<!-- <el-date-picker v-model="listQuery.params.createStartTime" type="date" clearable value-format="yyyy-MM-dd" placeholder="选择日期"/>-->
<!-- <span style="padding: 0 8px"></span>-->
<!-- <el-date-picker v-model="listQuery.params.createEndTime" type="date" clearable value-format="yyyy-MM-dd" placeholder="选择日期"/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="返利类型">-->
<!-- <el-input v-model="listQuery.params.mainSid" placeholder="请输入车架号" clearable/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="返利名称">-->
<!-- <el-input v-model="listQuery.params.mainSid" placeholder="请输入车架号" clearable/>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="状态">-->
<!-- <el-input v-model="listQuery.params.mainSid" placeholder="请输入车架号" clearable/>-->
<!-- </el-form-item>-->
<!-- </el-form>-->
<!-- <div class="btn" style="text-align: center;">-->
<!-- <el-button type="primary" icon="el-icon-search" @click="handleFilter" size="small">查询</el-button>-->
<!-- <el-button type="primary" icon="el-icon-refresh" @click="handleReset" size="small">重置</el-button>-->
<!-- </div>-->
<!-- </div>-->
<!-- </div>-->
<div class="listtop">
<div class="tit">已上传单车返利列表</div>
</div>
<div class="">
<el-table :key="tableKey" v-loading="listLoading" :data="list" border style="width: 100%;" @selection-change="handleSelectionChange">
<el-table-column fixed type="selection" align="center" width="50px"/>
<el-table-column fixed label="序号" type="index" :index="indexMethod" align="center" width="80px"/>
<el-table-column label="品牌" align="center" width="200">
<template slot-scope="scope">
<span>{{ scope.row.brandName }}</span>
</template>
</el-table-column>
<el-table-column label="车型" align="center" width="200">
<template slot-scope="scope">
<span>{{ scope.row.vehModelName }}</span>
</template>
</el-table-column>
<el-table-column label="车架号" align="center" width="250">
<template slot-scope="scope">
<span>{{ scope.row.vinNo }}</span>
</template>
</el-table-column>
<el-table-column label="厂家合同价" align="center" width="200">
<template slot-scope="scope">
<span>{{ scope.row.manufactorSettlementPrice }}</span>
</template>
</el-table-column>
<el-table-column label="其中运费" align="center" width="200">
<template slot-scope="scope">
<span>{{ scope.row.freight }}</span>
</template>
</el-table-column>
<el-table-column label="创建日期" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.createTime }}</span>
</template>
</el-table-column>
<el-table-column label="返利类型" align="center" width="150">
<template slot-scope="scope">
<span>{{ scope.row.rebateTypeValue }}</span>
</template>
</el-table-column>
<el-table-column label="返利名称" align="center" width="150">
<template slot-scope="scope">
<span>{{ scope.row.rebateName }}</span>
</template>
</el-table-column>
<el-table-column label="预计返利" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.estimateRebate }}</span>
</template>
</el-table-column>
<el-table-column label="所属年月" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.palceGenDateCopy }}</span>
</template>
</el-table-column>
<el-table-column label="上传日期" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.uploadDate }}</span>
</template>
</el-table-column>
<el-table-column label="上传金额" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.uploadMoney }}</span>
</template>
</el-table-column>
<el-table-column label="待确定金额" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.stayDetermineMoney }}</span>
</template>
</el-table-column>
<el-table-column label="费用" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.money }}</span>
</template>
</el-table-column>
<el-table-column label="是否调整" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.isAdjustment }}</span>
</template>
</el-table-column>
<el-table-column label="调整金额" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.adjustmentMoney }}</span>
</template>
</el-table-column>
<el-table-column label="调整说明" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.adjustmentRemarks }}</span>
</template>
</el-table-column>
</el-table>
</div>
<div class="pages">
<!-- 翻页 -->
<pagination v-show="list.length > 0" :total="listQuery.total" :page.sync="listQuery.current" :limit.sync="listQuery.size" class="pagination" @pagination="getList"/>
</div>
</div>
</div>
</div>
</template>
<script>
import req from '@/api/bikerebate/bicyclerebatecheck'
import Pagination from '@/components/pagination'
import ButtonBar from '@/components/ButtonBar'
export default {
name: 'yiheduidanchefanli',
components: {
Pagination,
ButtonBar
},
data() {
return {
btndisabled: false,
btnList: [
{
type: 'primary',
size: 'small',
icon: '',
btnKey: 'doConfirm',
btnLabel: '确定'
},
{
type: 'info',
size: 'small',
icon: 'cross',
btnKey: 'doClose',
btnLabel: '关闭'
}
],
isSearchShow: false,
searchxianshitit: '显示查询条件',
// -----------
tableKey: 0,
list: [],
sids: [],
sids_list: [],
FormLoading: false,
listLoading: false,
listQuery: {
params: {
brandSid: '',
createOrgSid: '',
sidList: []
},
current: 1,
size: 5,
total: 0
},
rules: {}
}
},
created() {
//
this.getList()
},
mounted() {
this.$refs['btnbar'].setButtonList(this.btnList)
},
methods: {
//
clicksearchShow() {
this.isSearchShow = !this.isSearchShow
if (this.isSearchShow) {
this.searchxianshitit = '隐藏查询条件'
} else {
this.searchxianshitit = '显示查询条件'
}
},
btnHandle(btnKey) {
console.log('XXXXXXXXXXXXXXX ' + btnKey)
switch (btnKey) {
case 'doConfirm':
this.doConfirm()
break
case 'doClose':
this.doClose()
break
default:
break
}
},
//
indexMethod(index) {
var pagestart = (this.listQuery.current - 1) * this.listQuery.size
var pageindex = index + 1 + pagestart
return pageindex
},
handleSelectionChange(row) {
var dateTime = ''
let date = new Date()
let year = date.getFullYear() //
let month = date.getMonth() + 1 //
dateTime = year + '年' + month + '月'
const aa = []
const bb = []
row.forEach((element) => {
if (element.palceGenDateCopy === dateTime) {
aa.push({
sid: element.sid,
rebateTypeValue: element.rebateTypeValue,
rebateTypeKey: element.rebateTypeKey,
withRebate: element.estimateRebate,
brandName: element.brandName,
brandSid: element.brandSid,
uploadMoney: element.uploadMoney,
stayDetermineMoney: element.stayDetermineMoney,
adjustmentMoney: element.adjustmentMoney,
money: element.money
})
} else {
bb.push({
sid: element.sid,
palceGenDate: element.palceGenDateCopy,
withRebate: element.estimateRebate,
uploadMoney: element.uploadMoney,
stayDetermineMoney: element.stayDetermineMoney,
adjustmentMoney: element.adjustmentMoney,
money: element.money
})
}
})
this.sids = aa
this.sids_list = bb
console.log('sids', this.sids, bb, 99999999)
},
//
getList() {
this.listLoading = true
req.checkApplyGetAlreadyUploadVehRebate(this.listQuery).then((response) => {
console.log('列表查询结果:', response)
this.listLoading = false
if (response.success && response.data && response.data.total > 0) {
this.list = response.data.records
this.listQuery.total = response.data.total
} else {
this.list = []
this.listQuery.total = 0
}
})
},
showData(value, val, createOrgSid, brandSid) {
this.listQuery.params.createOrgSid = createOrgSid
this.listQuery.params.brandSid = brandSid
const aa = []
if (value.length > 0) {
for (var i = 0; i < value.length; i++) {
for (var j = 0; j < value[i].vehRebateSids.length; j++) {
aa.push(value[i].vehRebateSids[j])
}
}
}
const bb = []
if (val.length > 0) {
for (var k = 0; k < val.length; k++) {
for (var l = 0; l < val[k].vehRebateSids.length; l++) {
bb.push(val[k].vehRebateSids[l])
}
}
}
if (aa.length > 0 && bb.length > 0) {
this.listQuery.params.sidList = aa
for (var p = 0; p < bb.length; p++) {
this.listQuery.params.sidList.push(bb[p])
}
} else if (aa.length > 0 && bb.length === 0) {
this.listQuery.params.sidList = aa
} else if (aa.length === 0 && bb.length > 0) {
this.listQuery.params.sidList = bb
} else if (aa.length === 0 && bb.length === 0) {
this.listQuery.params.sidList = []
}
this.getList()
},
//
handleFilter() {
this.listQuery.current = 1
this.getList()
},
handleReset() {
this.listQuery = {
params: {
createBySid: '',
createEndTime: '',
createStartTime: ''
},
current: 1,
size: 5,
total: 0
}
this.getList()
},
doConfirm() {
this.$emit('backData', this.sids, this.sids_list)
if (this.sids.length > 0 || this.sids_list.length > 0) {
this.$emit('backData', this.sids)
} else {
this.$notify({
title: '提示',
message: '请选择至少一条记录!',
type: 'error',
duration: 2000
})
}
},
doClose() {
this.$emit('doback')
}
}
}
</script>
<style scoped>
</style>

10
anrui-scm/anrui-scm-ui/src/views/workFlow/paichanguanliFlow/paichanguanli/cheliangpaichanEdit.vue

@ -51,7 +51,7 @@
</el-col>
<el-col :span="8" class="colStyle">
<div class="span-sty spanOneWidth"><span>订金付款备注:</span></div>
<el-form-item><el-input class="addinputw addinputOne" :disabled="formobj.currentAmount === '0' || formobj.currentAmount === ''" v-model="formobj.payRemarks" clearable placeholder=""/></el-form-item>
<el-form-item><el-input class="addinputw addinputOne" v-model="formobj.payRemarks" clearable placeholder=""/></el-form-item>
</el-col>
</el-row>
<el-row class="rowStyle">
@ -267,15 +267,15 @@ export default {
this.formobj.busVehicleApplyDetailList.push({
quantity: '',
applySid: '',
configSid: e.configurationItemsSid,
configSid: e.configSid,
configName: e.configName,
// useDeposit: '',
contractPrice: '',
applyForDeposit: '',
contractPrice: '',
remarks: '',
saleGuPrice: '',
saleGuPrice: e.guidedPrice,
insideCode: e.insideCode, //
vehicleName: e.modelName,
vehicleName: e.vehicleAlias,
vehicleSid: e.modelSid,
guidePrice: ''
})

6
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/scmvehiclegression/AppCarTransferSiteImageDto.java

@ -18,6 +18,12 @@ public class AppCarTransferSiteImageDto implements Dto {
@ApiModelProperty("保存车辆移库现场照片")
private List<String> images;
@ApiModelProperty("保单照片")
private String policyImages;
@ApiModelProperty("临牌")
private String proCard;
@ApiModelProperty("地址")
private String address;

12
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/scmvehiclegression/AppGressionDetailsVo.java

@ -84,9 +84,21 @@ public class AppGressionDetailsVo implements Vo {
@ApiModelProperty("保险状态")
private String InsuranceStateKey;
@ApiModelProperty("临牌状态")
private String proCardState;
@ApiModelProperty("临牌状态")
private String proCardStateKey;
@ApiModelProperty("保单照片")
private List<String> policyImage;
@ApiModelProperty("显示保单照片")
private boolean insuranceShow;
@ApiModelProperty("显示临牌文本框")
private boolean proCardShow;
@ApiModelProperty("地址")
private String address;

6
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/scmvehiclegression/AppGressionInfoVo.java

@ -85,6 +85,12 @@ public class AppGressionInfoVo implements Vo {
@JsonProperty("insuranceStateKey")
private String InsuranceStateKey;
@ApiModelProperty("临牌状态")
private String proCardState;
@ApiModelProperty("临牌状态")
private String proCardStateKey;
@ApiModelProperty("保单照片")
private List<String> policyImage;

2
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/scmvehiclegression/AppGressionPageVo.java

@ -12,6 +12,8 @@ public class AppGressionPageVo implements Vo {
private String sid;
@ApiModelProperty("车架号")
private String vin;
@ApiModelProperty("车数量")
private String vinNum;
@ApiModelProperty("申请编号")
private String applyId;
@ApiModelProperty("状态")

10
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/supplychain/scmvehiclegression/AppScmVehicleGressionService.java

@ -140,11 +140,11 @@ public class AppScmVehicleGressionService {
ResultBean rb = ResultBean.fireFail();
SubmitCarTransferDto submitCarTransferDto = new SubmitCarTransferDto();
BeanUtil.copyProperties(dto, submitCarTransferDto);
//根据车架号查询车辆sid
ResultBean<BaseVehicleVo> stringResultBean = baseVehicleFeign.selVehicleByVinNo(dto.getVinNo());
if (stringResultBean.getSuccess()) {
submitCarTransferDto.setVehicleSid(stringResultBean.getData().getSid());
}
// //根据车架号查询车辆sid
// ResultBean<BaseVehicleVo> stringResultBean = baseVehicleFeign.selVehicleByVinNo(dto.getVinNo());
// if (stringResultBean.getSuccess()) {
// submitCarTransferDto.setVehicleSid(stringResultBean.getData().getSid());
// }
ResultBean resultBean = scmVehicleGressionFeign.submitCarTransfer(submitCarTransferDto);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());

Loading…
Cancel
Save