Browse Source

未售买断撤回、终止

zhanglei
dimengzhe 3 years ago
parent
commit
1009cefbe2
  1. 2
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleactualsales/BaseVehicleActualSalesDto.java
  2. 20
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleactualsales/BaseVehicleActualSalesFeign.java
  3. 10
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleactualsales/BaseVehicleActualSalesFeignFallback.java
  4. 10
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleactualsales/flow/BaseActualSalesCompleteDto.java
  5. 7
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleactualsales/flow/BaseActualSalesTaskQuery.java
  6. 6
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleactualsales/flow/SubmitActualSalesDto.java
  7. 4
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleapply/BusVehicleApplyDto.java
  8. 2
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleapply/flow/BusVehicleApplyCompleteDto.java
  9. 11
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleactualdetails/BaseVehicleActualDetailsService.java
  10. 10
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleactualsales/BaseVehicleActualSalesRest.java
  11. 92
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleactualsales/BaseVehicleActualSalesService.java
  12. 2
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleapply/BusVehicleApplyMapper.java
  13. 19
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleapply/BusVehicleApplyMapper.xml
  14. 4
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleapply/BusVehicleApplyRest.java
  15. 46
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleapply/BusVehicleApplyService.java
  16. 11
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleapplydetail/BusVehicleApplyDetailService.java

2
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleactualsales/BaseVehicleActualSalesDto.java

@ -6,6 +6,7 @@ import com.yxt.common.core.dto.Dto;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.util.Date; import java.util.Date;
import java.util.List; import java.util.List;
@ -21,6 +22,7 @@ public class BaseVehicleActualSalesDto implements Dto {
@ApiModelProperty(value = "sid") @ApiModelProperty(value = "sid")
private String sid; private String sid;
@ApiModelProperty(value = "申请人sid") @ApiModelProperty(value = "申请人sid")
@NotBlank(message = "参数错误:userSid")
private String userSid; private String userSid;
@ApiModelProperty(value = "申请人") @ApiModelProperty(value = "申请人")
private String applicationName; private String applicationName;

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

@ -1,15 +1,16 @@
package com.yxt.anrui.base.api.basevehicleactualsales; package com.yxt.anrui.base.api.basevehicleactualsales;
import com.yxt.anrui.base.api.basevehicleactualsales.flow.*; import com.yxt.anrui.base.api.basevehicleactualsales.flow.*;
import com.yxt.anrui.base.api.busvehicleapply.flow.BusVehicleApplyTaskQuery;
import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo; import com.yxt.common.core.vo.PagerVo;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.cloud.openfeign.SpringQueryMap; import org.springframework.cloud.openfeign.SpringQueryMap;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.util.List; import java.util.List;
/** /**
@ -48,23 +49,30 @@ public interface BaseVehicleActualSalesFeign {
@ApiOperation("提交") @ApiOperation("提交")
@PostMapping("/submitVehicleSales") @PostMapping("/submitVehicleSales")
@ResponseBody @ResponseBody
ResultBean submitVehicleSales(@RequestBody SubmitActualSalesDto dto); ResultBean submitVehicleSales(@Valid @RequestBody SubmitActualSalesDto dto);
@ApiOperation(value = "办理(同意)") @ApiOperation(value = "办理(同意)")
@PostMapping("/complete") @PostMapping("/complete")
@ResponseBody @ResponseBody
public ResultBean complete(@RequestBody BaseActualSalesCompleteDto dto); public ResultBean complete(@Valid @RequestBody BaseActualSalesCompleteDto dto);
@ApiOperation(value = "获取上一个环节") @ApiOperation(value = "获取上一个环节")
@GetMapping(value = "/getPreviousNodesForReject") @GetMapping(value = "/getPreviousNodesForReject")
ResultBean<List<ActualGetNodeVo>> getPreviousNodesForReject(@SpringQueryMap ActualGetNodeQuery query); ResultBean<List<ActualGetNodeVo>> getPreviousNodesForReject(@Valid @SpringQueryMap ActualGetNodeQuery query);
@ApiOperation(value = "获取下一个环节") @ApiOperation(value = "获取下一个环节")
@GetMapping(value = "/getNextNodesForSubmit") @GetMapping(value = "/getNextNodesForSubmit")
ResultBean<List<ActualGetNodeVo>> getNextNodesForSubmit(@SpringQueryMap ActualGetNodeQuery query); ResultBean<List<ActualGetNodeVo>> getNextNodesForSubmit(@Valid @SpringQueryMap ActualGetNodeQuery query);
@ApiOperation(value = "驳回任务") @ApiOperation(value = "驳回任务")
@PostMapping(value = "/reject") @PostMapping(value = "/reject")
public ResultBean taskReject(@ApiParam(value = "工作流任务相关--请求参数") @RequestBody BaseActualSalesTaskQuery query); public ResultBean taskReject(@Valid @RequestBody BaseActualSalesTaskQuery query);
@ApiOperation(value = "撤回流程")
@PostMapping(value = "/revokeProcess")
public ResultBean revokeProcess(@Valid @RequestBody BaseActualSalesTaskQuery query);
@ApiOperation(value = "终止任务")
@PostMapping(value = "/breakProcess")
public ResultBean breakProcess(@Valid @RequestBody BaseActualSalesTaskQuery query);
} }

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

@ -59,4 +59,14 @@ public class BaseVehicleActualSalesFeignFallback implements BaseVehicleActualSal
public ResultBean taskReject(BaseActualSalesTaskQuery query) { public ResultBean taskReject(BaseActualSalesTaskQuery query) {
return null; return null;
} }
@Override
public ResultBean revokeProcess(BaseActualSalesTaskQuery query) {
return null;
}
@Override
public ResultBean breakProcess(BaseActualSalesTaskQuery query) {
return null;
}
} }

10
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleactualsales/flow/BaseActualSalesCompleteDto.java

@ -4,6 +4,7 @@ import com.yxt.common.core.dto.Dto;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.util.Map; import java.util.Map;
/** /**
@ -16,19 +17,26 @@ public class BaseActualSalesCompleteDto implements Dto {
private static final long serialVersionUID = 9219201125285862470L; private static final long serialVersionUID = 9219201125285862470L;
@ApiModelProperty(value = "用户sid") @ApiModelProperty(value = "用户sid")
@NotBlank(message = "参数错误:userSid")
private String userSid; private String userSid;
@ApiModelProperty(value = "用户全路径sid") @ApiModelProperty(value = "用户全路径sid")
@NotBlank(message = "参数错误:orgSidPath")
private String orgSidPath; private String orgSidPath;
@ApiModelProperty(value = "节点id") @ApiModelProperty(value = "节点id")
@NotBlank(message = "参数错误:taskDefKey")
private String taskDefKey; private String taskDefKey;
@ApiModelProperty(value = "任务id") @ApiModelProperty(value = "任务id")
@NotBlank(message = "参数错误:taskId")
private String taskId; private String taskId;
@ApiModelProperty(value = "流程id") @ApiModelProperty(value = "流程id")
@NotBlank(message = "参数错误:instanceId")
private String instanceId; private String instanceId;
@ApiModelProperty(value = "意见") @ApiModelProperty(value = "意见")
@NotBlank(message = "参数错误:comment")
private String comment; private String comment;
@ApiModelProperty(value = "业务sid") @ApiModelProperty(value = "业务sid")
@NotBlank(message = "参数错误:businessSid")
private String businessSid; private String businessSid;
@ApiModelProperty(value = "暂不确定是不是后端需要的:有分支的时候传") @ApiModelProperty(value = "暂不确定是不是需要前端传的:还是有分支的时候传????")
private Map<String, Object> formVariables; private Map<String, Object> formVariables;
} }

7
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleactualsales/flow/BaseActualSalesTaskQuery.java

@ -16,10 +16,15 @@ public class BaseActualSalesTaskQuery implements Query {
private static final long serialVersionUID = 7371888548849601582L; private static final long serialVersionUID = 7371888548849601582L;
@ApiModelProperty("任务Id") @ApiModelProperty("任务Id")
@NotBlank(message = "参数错误:taskId")
private String taskId; private String taskId;
@ApiModelProperty("业务sid") @ApiModelProperty("业务sid")
@NotBlank(message = "参数错误:业务sid是必传项") @NotBlank(message = "参数错误:businessSid")
private String businessSid; private String businessSid;
@ApiModelProperty("任务意见") @ApiModelProperty("任务意见")
private String comment; private String comment;
@ApiModelProperty("用户Sid")
private String userSid;
@ApiModelProperty("流程实例Id")
private String instanceId;
} }

6
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleactualsales/flow/SubmitActualSalesDto.java

@ -18,11 +18,5 @@ public class SubmitActualSalesDto extends BaseVehicleActualSalesDto {
private String instanceId; private String instanceId;
@ApiModelProperty("任务id") @ApiModelProperty("任务id")
private String taskId; private String taskId;
/* @ApiModelProperty("业务sid")
private String businessSid;
@ApiModelProperty("流程定义id")
private String modelId;
@ApiModelProperty("下一环节的代办人sid")
private String nextNodeUserSids;*/
} }

4
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleapply/BusVehicleApplyDto.java

@ -50,9 +50,5 @@ public class BusVehicleApplyDto implements Dto {
@ApiModelProperty("销售订单sid 可为空,只有客户订单时才有") @ApiModelProperty("销售订单sid 可为空,只有客户订单时才有")
private String salesSid; private String salesSid;
/* @ApiModelProperty("创建组织sid")
private String createByDeptSid;*/
// @ApiModelProperty("申请编号")
// private String applicationCode;
} }

2
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/busvehicleapply/flow/BusVehicleApplyCompleteDto.java

@ -36,6 +36,6 @@ public class BusVehicleApplyCompleteDto implements Dto {
@ApiModelProperty(value = "业务sid") @ApiModelProperty(value = "业务sid")
@NotBlank(message = "参数错误:businessSid") @NotBlank(message = "参数错误:businessSid")
private String businessSid; private String businessSid;
@ApiModelProperty(value = "暂不确定是不是前端需要传的:还是有分支的时候传??") @ApiModelProperty(value = "暂不确定是不是需要前端传的:还是有分支的时候传??")
private Map<String, Object> formVariables; private Map<String, Object> formVariables;
} }

11
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleactualdetails/BaseVehicleActualDetailsService.java

@ -69,12 +69,23 @@ public class BaseVehicleActualDetailsService extends MybatisBaseService<BaseVehi
return baseMapper.detailsList(sid); return baseMapper.detailsList(sid);
} }
/**
* 根据业务sid查询车辆vinNo的集合
*
* @param sid 未售买断申请sid
* @return
*/
public ResultBean<List<String>> selectVinNoList(String sid) { public ResultBean<List<String>> selectVinNoList(String sid) {
ResultBean<List<String>> rb = ResultBean.fireFail(); ResultBean<List<String>> rb = ResultBean.fireFail();
List<String> vinNoList = baseMapper.selectVinNoList(sid); List<String> vinNoList = baseMapper.selectVinNoList(sid);
return rb.success().setData(vinNoList); return rb.success().setData(vinNoList);
} }
/**
* 根据未售买断申请sid删除未售买断车辆
*
* @param sidsList 未售买断申请sid集合
*/
public void deleteByActualSid(String[] sidsList) { public void deleteByActualSid(String[] sidsList) {
List<String> stringList = Arrays.asList(sidsList); List<String> stringList = Arrays.asList(sidsList);
for (int i = 0; i < stringList.size(); i++) { for (int i = 0; i < stringList.size(); i++) {

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

@ -77,4 +77,14 @@ public class BaseVehicleActualSalesRest implements BaseVehicleActualSalesFeign {
public ResultBean taskReject(BaseActualSalesTaskQuery query) { public ResultBean taskReject(BaseActualSalesTaskQuery query) {
return baseVehicleActualSalesService.taskReject(query); return baseVehicleActualSalesService.taskReject(query);
} }
@Override
public ResultBean revokeProcess(BaseActualSalesTaskQuery query) {
return baseVehicleActualSalesService.revokeProcess(query);
}
@Override
public ResultBean breakProcess(BaseActualSalesTaskQuery query) {
return baseVehicleActualSalesService.breakProcess(query);
}
} }

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

@ -223,6 +223,7 @@ public class BaseVehicleActualSalesService extends MybatisBaseService<BaseVehicl
return isTrue; return isTrue;
} }
@Transactional(rollbackFor = Exception.class)
public ResultBean delete(String[] sidsList) { public ResultBean delete(String[] sidsList) {
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
baseVehicleActualDetailsService.deleteByActualSid(sidsList); baseVehicleActualDetailsService.deleteByActualSid(sidsList);
@ -291,6 +292,9 @@ public class BaseVehicleActualSalesService extends MybatisBaseService<BaseVehicl
} }
if (r == 2) { if (r == 2) {
// ToDo:驳回到发起人后再次提交 // ToDo:驳回到发起人后再次提交
if (StringUtils.isBlank(dto.getInstanceId())) {
return rb.setMsg("参数错误:instanceId");
}
bv.setTaskId(baseVehicleActualSales.getTaskId()); bv.setTaskId(baseVehicleActualSales.getTaskId());
bv.setTaskDefKey(baseVehicleActualSales.getNodeId()); bv.setTaskDefKey(baseVehicleActualSales.getNodeId());
bv.setComment(StringUtils.isNotBlank(dto.getComment()) ? dto.getComment() : "重新提交"); bv.setComment(StringUtils.isNotBlank(dto.getComment()) ? dto.getComment() : "重新提交");
@ -410,21 +414,87 @@ public class BaseVehicleActualSalesService extends MybatisBaseService<BaseVehicl
*/ */
public ResultBean taskReject(BaseActualSalesTaskQuery query) { public ResultBean taskReject(BaseActualSalesTaskQuery query) {
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
FlowTaskVo flowTaskVo = new FlowTaskVo();
BeanUtil.copyProperties(query, flowTaskVo);
BaseVehicleActualSales baseVehicleActualSales = fetchBySid(query.getBusinessSid()); BaseVehicleActualSales baseVehicleActualSales = fetchBySid(query.getBusinessSid());
if (baseVehicleActualSales == null) { if (baseVehicleActualSales == null) {
return rb.setMsg("该申请不存在"); return rb.setMsg("该申请不存在");
} }
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.taskReject(flowTaskVo); String businessTaskId = baseVehicleActualSales.getTaskId();
if (!resultBean.getSuccess()) { if (StringUtils.isNotBlank(businessTaskId)) {
return rb.setMsg(resultBean.getMsg()); if (businessTaskId.equals(query.getTaskId())) {
FlowTaskVo flowTaskVo = new FlowTaskVo();
BeanUtil.copyProperties(query, flowTaskVo);
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.taskReject(flowTaskVo);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
Map<String, Object> map = BeanUtil.beanToMap(resultBean.getData());
//更新业务中的流程相关的参数
updateFlowFiled(map);
return rb.success();
}
}
return rb.setMsg("操作失败!提交的数据不一致!");
}
/**
* 撤回
*
* @param query
* @return
*/
public ResultBean revokeProcess(BaseActualSalesTaskQuery query) {
ResultBean rb = ResultBean.fireFail();
if (StringUtils.isBlank(query.getUserSid())) {
return rb.setMsg("参数错误:userSid");
}
//根据业务sid查询未售买断
BaseVehicleActualSales baseVehicleActualSales = fetchBySid(query.getBusinessSid());
String businessTaskId = baseVehicleActualSales.getTaskId();
if (StringUtils.isNotBlank(businessTaskId)) {
if (businessTaskId.equals(query.getTaskId())) {
FlowTaskVo flowTaskVo = new FlowTaskVo();
BeanUtil.copyProperties(query, flowTaskVo);
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.revokeProcess(flowTaskVo);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
updateFlowFiled(BeanUtil.beanToMap(resultBean.getData()));
return rb.success().setData(resultBean.getData());
}
}
return rb.setMsg("操作失败,提交的数据不一致!");
}
/**
* 终止流程
*
* @param query
* @return
*/
public ResultBean breakProcess(BaseActualSalesTaskQuery query) {
ResultBean rb = ResultBean.fireFail();
if (StringUtils.isBlank(query.getInstanceId())) {
return rb.setMsg("参数错误:instanceId");
}
if (StringUtils.isBlank(query.getUserSid())) {
return rb.setMsg("参数错误:userSid");
}
//根据业务sid查询未售买断
BaseVehicleActualSales baseVehicleActualSales = fetchBySid(query.getBusinessSid());
String businessTaskId = baseVehicleActualSales.getTaskId();
if (StringUtils.isNotBlank(businessTaskId)) {
if (businessTaskId.equals(query.getTaskId())) {
FlowTaskVo flowTaskVo = new FlowTaskVo();
BeanUtil.copyProperties(query, flowTaskVo);
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.breakProcess(flowTaskVo);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
updateFlowFiled(BeanUtil.beanToMap(resultBean.getData()));
return rb.success().setData(resultBean.getData());
}
} }
Map<String, Object> map = BeanUtil.beanToMap(resultBean.getData()); return rb.setMsg("操作失败!提交的数据不一致!");
map.put("procInstSid", baseVehicleActualSales.getProcInstId());
map.put("procDefId", baseVehicleActualSales.getProcDefId());
//更新业务中的流程相关的参数
updateFlowFiled(map);
return rb.success();
} }
} }

2
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleapply/BusVehicleApplyMapper.java

@ -30,4 +30,6 @@ public interface BusVehicleApplyMapper extends BaseMapper<BusVehicleApply> {
IPage<BusVehicleApplyVo> selectPageVo(IPage<BusVehicleApply> page, @Param(Constants.WRAPPER) Wrapper<BusVehicleApply> qw); IPage<BusVehicleApplyVo> selectPageVo(IPage<BusVehicleApply> page, @Param(Constants.WRAPPER) Wrapper<BusVehicleApply> qw);
int updateFlowFiled(Map<String, Object> map); int updateFlowFiled(Map<String, Object> map);
int selectBySid(String list);
} }

19
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleapply/BusVehicleApplyMapper.xml

@ -5,12 +5,12 @@
<!-- ${ew.customSqlSegment} --> <!-- ${ew.customSqlSegment} -->
<select id="selectPageVo" resultType="com.yxt.anrui.base.api.busvehicleapply.BusVehicleApplyVo"> <select id="selectPageVo" resultType="com.yxt.anrui.base.api.busvehicleapply.BusVehicleApplyVo">
SELECT distinct bva.sid, SELECT distinct bva.sid,
bva.schedulingType, bva.schedulingType,
bva.applicationCode, bva.applicationCode,
bva.applicationDate, bva.applicationDate,
bva.createByName, bva.createByName,
bva.remarks, bva.remarks,
if(length(nodeState) > 0, nodeState, '待提交') as nodeState if(length(nodeState) > 0, nodeState, '待提交') as nodeState
FROM bus_vehicle_apply bva FROM bus_vehicle_apply bva
LEFT JOIN bus_vehicle_apply_detail bvad LEFT JOIN bus_vehicle_apply_detail bvad
ON bva.sid = bvad.`applySid` ON bva.sid = bvad.`applySid`
@ -34,4 +34,11 @@
</if> </if>
WHERE sid = #{sid} WHERE sid = #{sid}
</update> </update>
<select id="selectBySid" resultType="int">
select count(*)
from bus_vehicle_apply
where length(nodeState) > 0
and find_in_set(sid, #{list})
</select>
</mapper> </mapper>

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

@ -51,9 +51,7 @@ public class BusVehicleApplyRest implements BusVehicleApplyFeign {
@Override @Override
public ResultBean delBySids(@RequestBody String[] sids) { public ResultBean delBySids(@RequestBody String[] sids) {
ResultBean rb = ResultBean.fireFail(); return busVehicleApplyService.delAllBySids(sids);
busVehicleApplyService.delAllBySids(sids);
return rb.success();
} }
@Override @Override

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

@ -99,11 +99,16 @@ public class BusVehicleApplyService extends MybatisBaseService<BusVehicleApplyMa
* @param sids 排产申请sid数组 * @param sids 排产申请sid数组
*/ */
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void delAllBySids(String[] sids) { public ResultBean delAllBySids(String[] sids) {
this.delBySids(sids); ResultBean rb = ResultBean.fireFail();
for (String sid : sids) { busVehicleApplyDetailService.deleteByApplySid(sids);
busVehicleApplyDetailService.delByApplySid(sid); //查询该sid中是否有流程不是待提交的
int count = baseMapper.selectBySid(StringUtils.join(sids, ","));
if (count > 0) {
return rb.setMsg("删除的数据中包含已经提交审批的数据,删除失败");
} }
delBySids(sids);
return rb.success().setMsg("删除失败");
} }
/** /**
@ -335,24 +340,35 @@ public class BusVehicleApplyService extends MybatisBaseService<BusVehicleApplyMa
*/ */
public ResultBean taskReject(BusVehicleApplyTaskQuery query) { public ResultBean taskReject(BusVehicleApplyTaskQuery query) {
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
FlowTaskVo flowTaskVo = new FlowTaskVo();
BeanUtil.copyProperties(query, flowTaskVo);
BusVehicleApply busVehicleApply = fetchBySid(query.getBusinessSid()); BusVehicleApply busVehicleApply = fetchBySid(query.getBusinessSid());
if (busVehicleApply == null) { if (busVehicleApply == null) {
return rb.setMsg("该申请不存在"); return rb.setMsg("该申请不存在");
} }
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.taskReject(flowTaskVo); String businessTaskId = busVehicleApply.getTaskId();
if (!resultBean.getSuccess()) { if (StringUtils.isNotBlank(businessTaskId)) {
return rb.setMsg(resultBean.getMsg()); if (businessTaskId.equals(query.getTaskId())) {
FlowTaskVo flowTaskVo = new FlowTaskVo();
BeanUtil.copyProperties(query, flowTaskVo);
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.taskReject(flowTaskVo);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
Map<String, Object> map = BeanUtil.beanToMap(resultBean.getData());
//更新业务中的流程相关的参数
updateFlowFiled(map);
return rb.success();
}
} }
Map<String, Object> map = BeanUtil.beanToMap(resultBean.getData()); return rb.setMsg("操作失败!提交的数据不一致!");
map.put("procInstSid", busVehicleApply.getProcInstId());
map.put("procDefId", busVehicleApply.getProcDefId());
//更新业务中的流程相关的参数
updateFlowFiled(map);
return rb.success();
} }
/**
* 撤回
*
* @param query
* @return
*/
public ResultBean revokeProcess(BusVehicleApplyTaskQuery query) { public ResultBean revokeProcess(BusVehicleApplyTaskQuery query) {
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
if (StringUtils.isBlank(query.getUserSid())) { if (StringUtils.isBlank(query.getUserSid())) {

11
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleapplydetail/BusVehicleApplyDetailService.java

@ -16,6 +16,7 @@ import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays;
import java.util.List; import java.util.List;
/** /**
@ -210,9 +211,17 @@ public class BusVehicleApplyDetailService extends MybatisBaseService<BusVehicleA
public ResultBean<List<AppBusVehicleApplyListVo>> getAppApplyList(String modelSid, String configSid) { public ResultBean<List<AppBusVehicleApplyListVo>> getAppApplyList(String modelSid, String configSid) {
ResultBean<List<AppBusVehicleApplyListVo>> rb = ResultBean.fireFail(); ResultBean<List<AppBusVehicleApplyListVo>> rb = ResultBean.fireFail();
List<AppBusVehicleApplyListVo> voList = baseMapper.getAppApplyList(modelSid, configSid); List<AppBusVehicleApplyListVo> voList = baseMapper.getAppApplyList(modelSid, configSid);
if(voList.isEmpty()){ if (voList.isEmpty()) {
return rb.setData(new ArrayList<>()); return rb.setData(new ArrayList<>());
} }
return rb.success().setData(voList); return rb.success().setData(voList);
} }
public void deleteByApplySid(String[] sids) {
List<String> stringList = Arrays.asList(sids);
for (int i = 0; i < stringList.size(); i++) {
baseMapper.delByApplySid(stringList.get(i));
}
}
} }
Loading…
Cancel
Save