Browse Source

排产申请驳回

zhanglei
dimengzhe 3 years ago
parent
commit
599fa70061
  1. 9
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleactualsales/BaseVehicleActualSalesFeign.java
  2. 4
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleactualsales/BaseVehicleActualSalesFeignFallback.java
  3. 9
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleapply/BusVehicleApplyFeign.java
  4. 10
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleapply/BusVehicleApplyFeignFallback.java
  5. 41
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleapply/flow/BusVehicleApplyTaskQuery.java
  6. 4
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleactualsales/BaseVehicleActualSalesRest.java
  7. 14
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleactualsales/BaseVehicleActualSalesService.java
  8. 12
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleapply/BusVehicleApplyRest.java
  9. 82
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleapply/BusVehicleApplyService.java

9
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleactualsales/BaseVehicleActualSalesFeign.java

@ -1,17 +1,12 @@
package com.yxt.anrui.base.api.basevehicleactualsales;
import com.yxt.anrui.base.api.flow.FlowTaskVo;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.util.Map;
/**
* @Author dimengzhe
* @Date 2022/4/8 11:57
@ -54,7 +49,7 @@ public interface BaseVehicleActualSalesFeign {
@ResponseBody
public ResultBean complete(@RequestBody BaseVehicleActualSalesFlowQuery baseVehicleActualSalesFlowQuery);
@ApiOperation(value = "驳回任务")
/* @ApiOperation(value = "驳回任务")
@PostMapping("/reject")
@ResponseBody
ResultBean reject(@RequestBody BaseVehicleActualSalesFlowDto dto);
@ -67,7 +62,7 @@ public interface BaseVehicleActualSalesFeign {
@ApiOperation(value = "撤回任务")
@PostMapping("/revokeProcess")
@ResponseBody
ResultBean revokeProcess(@RequestBody BaseVehicleActualSalesFlowDto dto);
ResultBean revokeProcess(@RequestBody BaseVehicleActualSalesFlowDto dto);*/
}

4
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleactualsales/BaseVehicleActualSalesFeignFallback.java

@ -46,7 +46,7 @@ public class BaseVehicleActualSalesFeignFallback implements BaseVehicleActualSal
return null;
}
@Override
/* @Override
public ResultBean reject(BaseVehicleActualSalesFlowDto dto) {
return null;
}
@ -59,5 +59,5 @@ public class BaseVehicleActualSalesFeignFallback implements BaseVehicleActualSal
@Override
public ResultBean revokeProcess(BaseVehicleActualSalesFlowDto dto) {
return null;
}
}*/
}

9
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleapply/BusVehicleApplyFeign.java

@ -1,14 +1,12 @@
package com.yxt.anrui.base.api.busvehicleapply;
import com.yxt.anrui.base.api.busvehicleapply.flow.BusVehicleApplyCompleteDto;
import com.yxt.anrui.base.api.busvehicleapply.flow.GetNodeQuery;
import com.yxt.anrui.base.api.busvehicleapply.flow.GetNodeVo;
import com.yxt.anrui.base.api.busvehicleapply.flow.SubmitBusVehicleApplyDto;
import com.yxt.anrui.base.api.busvehicleapply.flow.*;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.cloud.openfeign.SpringQueryMap;
import org.springframework.web.bind.annotation.GetMapping;
@ -74,5 +72,8 @@ public interface BusVehicleApplyFeign {
@GetMapping(value = "/getNextNodesForSubmit")
ResultBean<List<GetNodeVo>> getNextNodesForSubmit(@SpringQueryMap GetNodeQuery query);
@ApiOperation(value = "驳回任务")
@PostMapping(value = "/reject")
public ResultBean taskReject(@ApiParam(value = "工作流任务相关--请求参数") @RequestBody BusVehicleApplyTaskQuery query);
}

10
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleapply/BusVehicleApplyFeignFallback.java

@ -1,9 +1,6 @@
package com.yxt.anrui.base.api.busvehicleapply;
import com.yxt.anrui.base.api.busvehicleapply.flow.BusVehicleApplyCompleteDto;
import com.yxt.anrui.base.api.busvehicleapply.flow.GetNodeQuery;
import com.yxt.anrui.base.api.busvehicleapply.flow.GetNodeVo;
import com.yxt.anrui.base.api.busvehicleapply.flow.SubmitBusVehicleApplyDto;
import com.yxt.anrui.base.api.busvehicleapply.flow.*;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
@ -67,4 +64,9 @@ public class BusVehicleApplyFeignFallback implements BusVehicleApplyFeign {
public ResultBean<List<GetNodeVo>> getNextNodesForSubmit(GetNodeQuery query) {
return null;
}
@Override
public ResultBean taskReject(String businessSid, BusVehicleApplyTaskQuery query) {
return null;
}
}

41
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleapply/flow/BusVehicleApplyTaskQuery.java

@ -0,0 +1,41 @@
package com.yxt.anrui.base.api.busvehicleapply.flow;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* @Author dimengzhe
* @Date 2022/6/28 17:29
* @Description
*/
@Data
public class BusVehicleApplyTaskQuery implements Query {
private static final long serialVersionUID = -4006020771892400451L;
@ApiModelProperty("任务Id")
private String taskId;
@ApiModelProperty("业务sid")
@NotBlank(message = "参数错误:业务sid是必传项")
private String businessSid;
@ApiModelProperty("任务意见")
private String comment;
/*@ApiModelProperty("用户Id")
private String userId;
@ApiModelProperty("用户Sid")
private String userSid;
@ApiModelProperty("流程实例Id")
private String instanceId;
@ApiModelProperty("节点")
private String targetKey;
@ApiModelProperty("流程变量信息")
private Map<String, Object> values = new HashMap<>();
@ApiModelProperty("审批人")
private String assignee;
@ApiModelProperty("候选人")
private List<String> candidateUsers = new ArrayList<>();
@ApiModelProperty("审批组")
private List<String> candidateGroups = new ArrayList<>();*/
}

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

@ -54,7 +54,7 @@ public class BaseVehicleActualSalesRest implements BaseVehicleActualSalesFeign {
return baseVehicleActualSalesService.complete(baseVehicleActualSalesFlowQuery);
}
@Override
/* @Override
public ResultBean reject(BaseVehicleActualSalesFlowDto dto) {
return baseVehicleActualSalesService.reject(dto);
}
@ -67,5 +67,5 @@ public class BaseVehicleActualSalesRest implements BaseVehicleActualSalesFeign {
@Override
public ResultBean revokeProcess(BaseVehicleActualSalesFlowDto dto) {
return baseVehicleActualSalesService.revokeProcess(dto);
}
}*/
}

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

@ -1,6 +1,5 @@
package com.yxt.anrui.base.biz.basevehicleactualsales;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.convert.Convert;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
@ -13,7 +12,6 @@ import com.yxt.anrui.base.biz.basevehicleactualdetails.BaseVehicleActualDetailsS
import com.yxt.anrui.flowable.api.flow.FlowableFeign;
import com.yxt.anrui.flowable.api.flowtask.FlowTask;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskVo;
import com.yxt.anrui.flowable.api.flowtask.LatestTaskVo;
import com.yxt.anrui.flowable.api.sysformlink.SysFormLinkFeign;
import com.yxt.anrui.flowable.api.sysformlink.SysFormLinkFlowStateEnum;
@ -111,9 +109,9 @@ public class BaseVehicleActualSalesService extends MybatisBaseService<BaseVehicl
);
//状态
if (StringUtils.isNotBlank(params.getNodeState())) {
if("待提交".contains(params.getNodeState())){
if ("待提交".contains(params.getNodeState())) {
qw.isNull("sv.nodeState");
}else{
} else {
qw.like("sv.nodeState", params.getNodeState());
}
@ -242,7 +240,7 @@ public class BaseVehicleActualSalesService extends MybatisBaseService<BaseVehicl
Map<String, Object> variables = new HashMap<>();
variables.put("businessSid", businessSid);
variables.put("orgSid", orgSid);
ResultBean businessResultBean =null;// flowableFeign.businessStart(ProcDefEnum.BASEVEHICLEACTUALSALES.getProDefId(), userSid, variables);
ResultBean businessResultBean = null;// flowableFeign.businessStart(ProcDefEnum.BASEVEHICLEACTUALSALES.getProDefId(), userSid, variables);
if (businessResultBean.getSuccess() && businessResultBean.getData() != null) {
Map<String, String> map = (Map<String, String>) businessResultBean.getData();
//更新未售买断业务表中的流程状态
@ -411,7 +409,7 @@ public class BaseVehicleActualSalesService extends MybatisBaseService<BaseVehicl
return isTrue;
}
public ResultBean reject(BaseVehicleActualSalesFlowDto dto) {
/* public ResultBean reject(BaseVehicleActualSalesFlowDto dto) {
FlowTaskVo flowTaskVo = new FlowTaskVo();
BeanUtil.copyProperties(dto, flowTaskVo);
ResultBean<List<LatestTaskVo>> resultBean = flowTaskFeign.taskReject(flowTaskVo);
@ -470,13 +468,13 @@ public class BaseVehicleActualSalesService extends MybatisBaseService<BaseVehicl
}
sysFormLinkFeign.updateFiled(map);
return new ResultBean().success();
}
}*/
public ResultBean delete(String[] sidsList) {
ResultBean rb = ResultBean.fireFail();
baseVehicleActualDetailsService.deleteByActualSid(sidsList);
//查询该sid中是否有流程不是待提交的
int count = baseMapper.selectBySid(StringUtils.join(sidsList,","));
int count = baseMapper.selectBySid(StringUtils.join(sidsList, ","));
if (count > 0) {
return rb.setMsg("删除的数据中包含已经提交审批的数据,删除失败");
}

12
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleapply/BusVehicleApplyRest.java

@ -2,10 +2,7 @@ package com.yxt.anrui.base.biz.busvehicleapply;
import cn.hutool.core.bean.BeanUtil;
import com.yxt.anrui.base.api.busvehicleapply.*;
import com.yxt.anrui.base.api.busvehicleapply.flow.BusVehicleApplyCompleteDto;
import com.yxt.anrui.base.api.busvehicleapply.flow.GetNodeQuery;
import com.yxt.anrui.base.api.busvehicleapply.flow.GetNodeVo;
import com.yxt.anrui.base.api.busvehicleapply.flow.SubmitBusVehicleApplyDto;
import com.yxt.anrui.base.api.busvehicleapply.flow.*;
import com.yxt.anrui.flowable.api.utils.ProcDefEnum;
import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables;
import com.yxt.common.core.query.PagerQuery;
@ -90,4 +87,11 @@ public class BusVehicleApplyRest implements BusVehicleApplyFeign {
public ResultBean<List<GetNodeVo>> getNextNodesForSubmit(GetNodeQuery query) {
return busVehicleApplyService.getNextNodesForSubmit(query);
}
@Override
public ResultBean taskReject(BusVehicleApplyTaskQuery query) {
return busVehicleApplyService.taskReject(query);
}
}

82
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleapply/BusVehicleApplyService.java

@ -6,6 +6,7 @@ import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.anrui.base.api.busvehicleapply.*;
import com.yxt.anrui.base.api.busvehicleapply.flow.BusVehicleApplyTaskQuery;
import com.yxt.anrui.base.api.busvehicleapply.flow.GetNodeQuery;
import com.yxt.anrui.base.api.busvehicleapply.flow.GetNodeVo;
import com.yxt.anrui.base.api.busvehicleapply.flow.SubmitBusVehicleApplyDto;
@ -16,6 +17,7 @@ import com.yxt.anrui.base.biz.busvehicleapplydetail.BusVehicleApplyDetailService
import com.yxt.anrui.flowable.api.flow.FlowableFeign;
import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign;
import com.yxt.anrui.flowable.api.flowtask.FlowTaskVo;
import com.yxt.anrui.flowable.api.utils.ProcDefEnum;
import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrg;
@ -197,16 +199,28 @@ public class BusVehicleApplyService extends MybatisBaseService<BusVehicleApplyMa
bv.setUserSid(dto.getCreateBySid());
bv.setFormVariables(variables);
bv.setModelId(ProcDefEnum.VEHICLEAPPLY.getProDefId());
if (StringUtils.isBlank(dto.getTaskId())) { // 新提交
//启动流程
ResultBean<UpdateFlowFieldVo> voResultBean = flowableFeign.startProcess(bv);
UpdateFlowFieldVo ufVo = voResultBean.getData();
updateFlowFiled(BeanUtil.beanToMap(ufVo));
return voResultBean;
} else { // ToDo:驳回到发起人后再次提交
bv.setComment(StringUtils.isNotBlank(dto.getComment()) ? dto.getComment() : "重新提交");
bv.setInstanceId(dto.getInstanceId());
return complete(bv);
BusVehicleApply busVehicleApply = fetchBySid(businessSid);
if (busVehicleApply != null) {
if (StringUtils.isBlank(dto.getTaskId())) {
// 新提交//启动流程
if (StringUtils.isBlank(busVehicleApply.getTaskId())) {
ResultBean<UpdateFlowFieldVo> voResultBean = flowableFeign.startProcess(bv);
UpdateFlowFieldVo ufVo = voResultBean.getData();
updateFlowFiled(BeanUtil.beanToMap(ufVo));
return voResultBean;
} else {
return rb.setMsg("操作失败");
}
} else if (dto.getTaskId().equals(busVehicleApply.getTaskId())) {
// ToDo:驳回到发起人后再次提交
bv.setComment(StringUtils.isNotBlank(dto.getComment()) ? dto.getComment() : "重新提交");
bv.setInstanceId(dto.getInstanceId());
return complete(bv);
} else {
return rb.setMsg("操作失败");
}
} else {
return rb.setMsg("该申请不存在");
}
}
@ -227,12 +241,22 @@ public class BusVehicleApplyService extends MybatisBaseService<BusVehicleApplyMa
* @return
*/
public ResultBean complete(BusinessVariables bv) {
ResultBean<UpdateFlowFieldVo> rb = flowableFeign.handleProsess(bv);
updateFlowFiled(BeanUtil.beanToMap(rb.getData()));
//ToDo:排产申请通过后的状态更新以及厂家认款的推送
//查询是否是最后一个环节,若是则更新排产申请的状态为通过。
//若状态为通过,需要打款的推送打款状态为未打款厂家认款记录;无需打款的,直接推送打款状态为无需打款的厂家认款记录。
return rb;
ResultBean rb = ResultBean.fireFail();
BusVehicleApply busVehicleApply = fetchBySid(bv.getBusinessSid());
if (bv.getTaskId().equals(busVehicleApply.getTaskId())) {
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.handleProsess(bv);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
updateFlowFiled(BeanUtil.beanToMap(resultBean.getData()));
//ToDo:排产申请通过后的状态更新以及厂家认款的推送
//查询是否是最后一个环节,若是则更新排产申请的状态为通过。
//若状态为通过,需要打款的推送打款状态为未打款厂家认款记录;无需打款的,直接推送打款状态为无需打款的厂家认款记录。
return rb.success().setData(resultBean.getData());
} else {
return rb.setMsg("操作失败");
}
}
/**
@ -271,5 +295,29 @@ public class BusVehicleApplyService extends MybatisBaseService<BusVehicleApplyMa
return rb.success().setData(voList);
}
/**
* 驳回任务
*
* @param query
* @return
*/
public ResultBean taskReject(BusVehicleApplyTaskQuery query) {
ResultBean rb = ResultBean.fireFail();
FlowTaskVo flowTaskVo = new FlowTaskVo();
BeanUtil.copyProperties(query, flowTaskVo);
BusVehicleApply busVehicleApply = fetchBySid(query.getBusinessSid());
if (busVehicleApply == null) {
return rb.setMsg("该申请不存在");
}
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.taskReject(flowTaskVo);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
Map<String, Object> map = BeanUtil.beanToMap(resultBean.getData());
map.put("procInstSid", busVehicleApply.getProcInstId());
map.put("procDefId", busVehicleApply.getProcDefId());
//更新业务中的流程相关的参数
updateFlowFiled(map);
return rb.success().setData(resultBean.getData());
}
}
Loading…
Cancel
Save