diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseinternalpurchase/BaseInternalPurchase.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseinternalpurchase/BaseInternalPurchase.java index b317e505ba..67539870fd 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseinternalpurchase/BaseInternalPurchase.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseinternalpurchase/BaseInternalPurchase.java @@ -66,5 +66,14 @@ public class BaseInternalPurchase extends BaseEntity { private String useOrgSid; // 使用组织sid @ApiModelProperty("创建组织sid") private String createOrgSid; // 创建组织sid - + @ApiModelProperty("流程定义的id") + private String procDefId; + @ApiModelProperty("环节定义的sid") + private String taskDefKey; + @ApiModelProperty("流程状态") + private String nodeState; + @ApiModelProperty("流程实例的sid") + private String procInstSid; + @ApiModelProperty("任务id") + private String taskId; } diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseinternalpurchase/BaseInternalPurchaseDto.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseinternalpurchase/BaseInternalPurchaseDto.java index 24f051fb38..986a7a9c40 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseinternalpurchase/BaseInternalPurchaseDto.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseinternalpurchase/BaseInternalPurchaseDto.java @@ -54,6 +54,10 @@ public class BaseInternalPurchaseDto implements Dto { private String sid; // sid + @ApiModelProperty("业务员sid") + private String staffSid; // 业务员sid + @ApiModelProperty("userSid") + private String userSid; // userSid @ApiModelProperty("申请编号") private String applyNo; // 申请编号 @ApiModelProperty("申请人姓名") diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseinternalpurchase/BaseInternalPurchaseFeign.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseinternalpurchase/BaseInternalPurchaseFeign.java index fa2e4ff084..eee1824a64 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseinternalpurchase/BaseInternalPurchaseFeign.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseinternalpurchase/BaseInternalPurchaseFeign.java @@ -25,15 +25,22 @@ *********************************************************/ package com.yxt.anrui.base.api.baseinternalpurchase; +import com.yxt.anrui.base.api.baseinternalpurchase.flow.BaseInterNalPurchaseCompleteDto; +import com.yxt.anrui.base.api.baseinternalpurchase.flow.BaseInterNalPurchaseTaskQuery; +import com.yxt.anrui.base.api.baseinternalpurchase.flow.SubmitBaseInterNalPurchaseDto; +import com.yxt.anrui.base.api.baseoutsourcingapplication.BusinessVariablesDto; +import com.yxt.anrui.base.api.baseoutsourcingapplication.GetNextNodeDto; +import com.yxt.anrui.base.api.busvehicleapply.flow.BusVehicleApplyTaskQuery; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; 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.ApiParam; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.*; -import java.util.List; +import javax.validation.Valid; /** * Project: anrui-base(内申请管理)
@@ -75,4 +82,34 @@ public interface BaseInternalPurchaseFeign { @GetMapping("/fetchDetailsBySid/{sid}") @ResponseBody public ResultBean fetchDetailsBySid(@PathVariable("sid") String sid); + + /*****************************车型调价流程****************************************************/ + + @ApiOperation("提交内购审批流程") + @PostMapping("/submitBaseInternalPurchase") + public ResultBean submitBaseInternalPurchase(@Valid @RequestBody SubmitBaseInterNalPurchaseDto dto); + + @ApiOperation(value = "办理(同意)") + @PostMapping("/complete") + public ResultBean complete(@Valid @RequestBody BaseInterNalPurchaseCompleteDto bvd); + + @ApiOperation(value = "获取下一个环节") + @GetMapping(value = "/getNextNodesForSubmit") + ResultBean getNextNodesForSubmit(@Valid @RequestBody GetNextNodeDto query); + + @ApiOperation(value = "获取上一个环节") + @GetMapping(value = "/getPreviousNodesForReject") + ResultBean getPreviousNodesForReject(@Valid @RequestBody GetNextNodeDto query); + + @ApiOperation(value = "驳回任务") + @PostMapping(value = "/reject") + public ResultBean taskReject(@Valid @RequestBody BaseInterNalPurchaseTaskQuery query); + + @ApiOperation(value = "撤回流程") + @PostMapping(value = "/revokeProcess") + public ResultBean revokeProcess(@Valid @RequestBody BaseInterNalPurchaseTaskQuery query); + + @ApiOperation(value = "终止任务") + @PostMapping(value = "/breakProcess") + public ResultBean breakProcess(@Valid @RequestBody BaseInterNalPurchaseTaskQuery query); } \ No newline at end of file diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseinternalpurchase/BaseInternalPurchaseFeignFallback.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseinternalpurchase/BaseInternalPurchaseFeignFallback.java index cef661e91e..1e259aba2e 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseinternalpurchase/BaseInternalPurchaseFeignFallback.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseinternalpurchase/BaseInternalPurchaseFeignFallback.java @@ -25,6 +25,11 @@ *********************************************************/ package com.yxt.anrui.base.api.baseinternalpurchase; +import com.yxt.anrui.base.api.baseinternalpurchase.flow.BaseInterNalPurchaseCompleteDto; +import com.yxt.anrui.base.api.baseinternalpurchase.flow.BaseInterNalPurchaseTaskQuery; +import com.yxt.anrui.base.api.baseinternalpurchase.flow.SubmitBaseInterNalPurchaseDto; +import com.yxt.anrui.base.api.baseoutsourcingapplication.BusinessVariablesDto; +import com.yxt.anrui.base.api.baseoutsourcingapplication.GetNextNodeDto; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; @@ -69,4 +74,39 @@ public class BaseInternalPurchaseFeignFallback implements BaseInternalPurchaseFe ResultBean rb = ResultBean.fireFail(); return rb.setMsg("接口anrui-base/baseinternalpurchase/fetchDetailsBySid无法访问"); } + + @Override + public ResultBean submitBaseInternalPurchase(SubmitBaseInterNalPurchaseDto dto) { + return null; + } + + @Override + public ResultBean complete(BaseInterNalPurchaseCompleteDto bvd) { + return null; + } + + @Override + public ResultBean getNextNodesForSubmit(GetNextNodeDto query) { + return null; + } + + @Override + public ResultBean getPreviousNodesForReject(GetNextNodeDto query) { + return null; + } + + @Override + public ResultBean taskReject(BaseInterNalPurchaseTaskQuery query) { + return null; + } + + @Override + public ResultBean revokeProcess(BaseInterNalPurchaseTaskQuery query) { + return null; + } + + @Override + public ResultBean breakProcess(BaseInterNalPurchaseTaskQuery query) { + return null; + } } \ No newline at end of file diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseinternalpurchase/flow/BaseInterNalPurchaseCompleteDto.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseinternalpurchase/flow/BaseInterNalPurchaseCompleteDto.java new file mode 100644 index 0000000000..2e9574c9db --- /dev/null +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseinternalpurchase/flow/BaseInterNalPurchaseCompleteDto.java @@ -0,0 +1,41 @@ +package com.yxt.anrui.base.api.baseinternalpurchase.flow; + +import com.yxt.common.core.dto.Dto; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.util.Map; + +/** + * @Author dimengzhe + * @Date 2022/6/28 9:01 + * @Description + */ +@Data +public class BaseInterNalPurchaseCompleteDto implements Dto { + private static final long serialVersionUID = 3240453987322803352L; + @ApiModelProperty(value = "用户sid") + @NotBlank(message = "参数错误:userSid") + private String userSid; + @ApiModelProperty(value = "用户全路径sid") + @NotBlank(message = "参数错误:orgSidPath") + private String orgSidPath; + @ApiModelProperty(value = "节点id") + @NotBlank(message = "参数错误:taskDefKey") + private String taskDefKey; + @ApiModelProperty(value = "任务id") + @NotBlank(message = "参数错误:taskId") + private String taskId; + @ApiModelProperty(value = "流程id") + @NotBlank(message = "参数错误:instanceId") + private String instanceId; + @ApiModelProperty(value = "意见") + @NotBlank(message = "参数错误:comment") + private String comment; + @ApiModelProperty(value = "业务sid") + @NotBlank(message = "参数错误:businessSid") + private String businessSid; + @ApiModelProperty(value = "暂不确定是不是需要前端传的:还是有分支的时候传??") + private Map formVariables; +} diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseinternalpurchase/flow/BaseInterNalPurchaseTaskQuery.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseinternalpurchase/flow/BaseInterNalPurchaseTaskQuery.java new file mode 100644 index 0000000000..1720b28498 --- /dev/null +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseinternalpurchase/flow/BaseInterNalPurchaseTaskQuery.java @@ -0,0 +1,56 @@ +package com.yxt.anrui.base.api.baseinternalpurchase.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 BaseInterNalPurchaseTaskQuery implements Query { + private static final long serialVersionUID = -4006020771892400451L; + /** + * 终止、驳回、撤回 + */ + @ApiModelProperty("任务Id") + @NotBlank(message = "参数错误:taskId") + private String taskId; + /** + * 终止、驳回、撤回 + */ + @ApiModelProperty("业务sid") + @NotBlank(message = "参数错误:businessSid") + private String businessSid; + /** + * 终止、驳回 + */ + @ApiModelProperty("任务意见") + private String comment; + /** + * 终止、撤回 + */ + @ApiModelProperty("用户Sid") + private String userSid; + /** + * 终止 + */ + @ApiModelProperty("流程实例Id") + private String instanceId; + /*@ApiModelProperty("用户Id") + private String userId; + @ApiModelProperty("节点") + private String targetKey; + @ApiModelProperty("流程变量信息") + private Map values = new HashMap<>(); + @ApiModelProperty("审批人") + private String assignee; + @ApiModelProperty("候选人") + private List candidateUsers = new ArrayList<>(); + @ApiModelProperty("审批组") + private List candidateGroups = new ArrayList<>();*/ +} diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseinternalpurchase/flow/GetNodeQuery.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseinternalpurchase/flow/GetNodeQuery.java new file mode 100644 index 0000000000..edec0c3076 --- /dev/null +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseinternalpurchase/flow/GetNodeQuery.java @@ -0,0 +1,25 @@ +package com.yxt.anrui.base.api.baseinternalpurchase.flow; + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.util.Map; + +/** + * @Author dimengzhe + * @Date 2022/6/28 10:42 + * @Description + */ +@Data +public class GetNodeQuery implements Query { + private static final long serialVersionUID = -5674867230708197611L; + + @ApiModelProperty(value = "环节定义id") + @NotBlank(message = "参数错误:taskDefKey") + private String taskDefKey; + + @ApiModelProperty(value = "不确定是否需要前端传:还是有分支网关的时候传??") + private Map formVariables; +} diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseinternalpurchase/flow/GetNodeVo.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseinternalpurchase/flow/GetNodeVo.java new file mode 100644 index 0000000000..422f0db127 --- /dev/null +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseinternalpurchase/flow/GetNodeVo.java @@ -0,0 +1,25 @@ +package com.yxt.anrui.base.api.baseinternalpurchase.flow; + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +/** + * @Author dimengzhe + * @Date 2022/6/28 11:09 + * @Description + */ +@Data +public class GetNodeVo implements Vo { + private static final long serialVersionUID = 8802774014747063504L; + @ApiModelProperty(value = "节点名称") + private String name; + @ApiModelProperty(value = "节点id") + private String id; + @ApiModelProperty(value = "审批组") + private List candidateGroups; + @ApiModelProperty(value = "是否是最后环节") + private String endTask; +} diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseinternalpurchase/flow/SubmitBaseInterNalPurchaseDto.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseinternalpurchase/flow/SubmitBaseInterNalPurchaseDto.java new file mode 100644 index 0000000000..d1d7a16008 --- /dev/null +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/baseinternalpurchase/flow/SubmitBaseInterNalPurchaseDto.java @@ -0,0 +1,22 @@ +package com.yxt.anrui.base.api.baseinternalpurchase.flow; + +import com.yxt.anrui.base.api.baseinternalpurchase.BaseInternalPurchaseDto; +import com.yxt.anrui.base.api.busvehicleapply.BusVehicleApplyDto; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @Author dimengzhe + * @Date 2022/6/27 13:38 + * @Description + */ +@Data +public class SubmitBaseInterNalPurchaseDto extends BaseInternalPurchaseDto { + private static final long serialVersionUID = 378585162071125756L; + @ApiModelProperty("意见") + private String comment; + @ApiModelProperty("流程实例id") + private String instanceId; + @ApiModelProperty("任务id") + private String taskId; +} diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/BaseModelModprice.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/BaseModelModprice.java index 2201a0b9f5..cc3731ae73 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/BaseModelModprice.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/BaseModelModprice.java @@ -29,6 +29,7 @@ import com.baomidou.mybatisplus.annotation.TableName; import com.yxt.common.core.domain.BaseEntity; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; +import lombok.Data; /** * Project: anrui-base(车型调价申请)
@@ -44,6 +45,7 @@ import io.swagger.annotations.ApiModelProperty; * @since 1.0 */ @ApiModel(value = "车型调价申请表", description = "车型调价申请表") +@Data @TableName("base_model_modprice") public class BaseModelModprice extends BaseEntity { private static final long serialVersionUID = 1L; @@ -67,82 +69,14 @@ public class BaseModelModprice extends BaseEntity { @ApiModelProperty("创建组织名称") private String createOrgName; // 创建组织名称 - /** - * @return 申请人姓名 - */ - public String getApplyPeoName(){ - return applyPeoName; - } - - /** - * @param applyPeoName 申请人姓名 to set - */ - public void setApplyPeoName(String applyPeoName){ - this.applyPeoName = applyPeoName; - } - /** - * @return 调价原因 - */ - public String getModpriceReason(){ - return modpriceReason; - } - - /** - * @param modpriceReason 调价原因 to set - */ - public void setModpriceReason(String modpriceReason){ - this.modpriceReason = modpriceReason; - } - /** - * @return 使用组织sid - */ - public String getUseOrgSid(){ - return useOrgSid; - } - - /** - * @param useOrgSid 使用组织sid to set - */ - public void setUseOrgSid(String useOrgSid){ - this.useOrgSid = useOrgSid; - } - /** - * @return 使用组织名称 - */ - public String getUseOrgName(){ - return useOrgName; - } - - /** - * @param useOrgName 使用组织名称 to set - */ - public void setUseOrgName(String useOrgName){ - this.useOrgName = useOrgName; - } - /** - * @return 创建组织sid - */ - public String getCreateOrgSid(){ - return createOrgSid; - } - - /** - * @param createOrgSid 创建组织sid to set - */ - public void setCreateOrgSid(String createOrgSid){ - this.createOrgSid = createOrgSid; - } - /** - * @return 创建组织名称 - */ - public String getCreateOrgName(){ - return createOrgName; - } - - /** - * @param createOrgName 创建组织名称 to set - */ - public void setCreateOrgName(String createOrgName){ - this.createOrgName = createOrgName; - } + @ApiModelProperty(value = "节点状态") + private String nodeState; + @ApiModelProperty(value = "节点id") + private String nodeId; + @ApiModelProperty(value = "流程id") + private String procDefId; + @ApiModelProperty(value = "实例id") + private String procInstId; + @ApiModelProperty(value = "任务id") + private String taskId; } diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/BaseModelModpriceDetailVo.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/BaseModelModpriceDetailVo.java index f6f59905a8..82283b65fb 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/BaseModelModpriceDetailVo.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/BaseModelModpriceDetailVo.java @@ -54,6 +54,8 @@ import java.util.List; @Data public class BaseModelModpriceDetailVo implements Vo { + @ApiModelProperty("sid") + private String sid; // sid @ApiModelProperty("申请日期") @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") private Date createTime; // 申请日期 @@ -61,6 +63,16 @@ public class BaseModelModpriceDetailVo implements Vo { private String applyPeoName; // 申请人姓名 @ApiModelProperty("调价原因") private String modpriceReason; // 调价原因 + @ApiModelProperty(value = "任务id") + private String taskId; + @ApiModelProperty(value = "流程实例id") + private String procInstId; + @ApiModelProperty(value = "创建组织sid") + private String createOrgSid; + @ApiModelProperty(value = "创建人sid") + private String createBySid; + @ApiModelProperty(value = "使用组织sid") + private String useOrgSid; @ApiModelProperty("调价申请车型列表") private List baseModelModpriceModels; // 调价申请车型列表 } diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/BaseModelModpriceDto.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/BaseModelModpriceDto.java index a012d73568..1486f5f6f1 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/BaseModelModpriceDto.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/BaseModelModpriceDto.java @@ -54,10 +54,8 @@ public class BaseModelModpriceDto implements Dto { @ApiModelProperty("sid") private String sid; // sid - @ApiModelProperty("业务员sid") - private String staffSid; // 业务员sid - @ApiModelProperty("userSid") - private String userSid; // userSid + @ApiModelProperty("创建人sid") + private String createBySid; // 创建人sid @ApiModelProperty("申请人姓名") private String applyPeoName; // 申请人姓名 @ApiModelProperty("调价原因") diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/BaseModelModpriceFeign.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/BaseModelModpriceFeign.java index 92e568e8b3..9905724e42 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/BaseModelModpriceFeign.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/BaseModelModpriceFeign.java @@ -25,18 +25,17 @@ *********************************************************/ package com.yxt.anrui.base.api.basemodelmodprice; -import com.yxt.anrui.base.api.baseoutsourcingapplication.BaseOutsourcingApplicationDto; -import com.yxt.anrui.base.api.baseoutsourcingapplication.BusinessVariablesDto; -import com.yxt.anrui.base.api.baseoutsourcingapplication.GetNextNodeDto; -import com.yxt.anrui.base.api.baseoutsourcingapplication.SubmitBaseOutSourcingApplicationDto; -import com.yxt.anrui.base.api.flow.FlowTaskVo; +import com.yxt.anrui.base.api.basemodelmodprice.flow.BaseModelModPriceCompleteDto; +import com.yxt.anrui.base.api.basemodelmodprice.flow.BaseModelModPriceTaskQuery; +import com.yxt.anrui.base.api.basemodelmodprice.flow.GetNodeQuery; +import com.yxt.anrui.base.api.basemodelmodprice.flow.SubmitBaseModelModPriceDto; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; 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.ApiParam; import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.cloud.openfeign.SpringQueryMap; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; @@ -83,17 +82,29 @@ public interface BaseModelModpriceFeign { @ApiOperation("提交车型调价流程") @PostMapping("/submitBaseModelModPrice") - public ResultBean submitBaseModelModPrice(@RequestBody @Valid SubmitBaseModelModPrice dto); + public ResultBean submitBaseModelModPrice(@Valid @RequestBody SubmitBaseModelModPriceDto dto); @ApiOperation(value = "办理(同意)") @PostMapping("/complete") - public ResultBean complete(@ApiParam(value = "变量集合,json对象") @RequestBody BusinessVariablesDto bvd); + public ResultBean complete(@Valid @RequestBody BaseModelModPriceCompleteDto query); @ApiOperation(value = "获取下一个环节") - @PostMapping(value = "/getNextNodesForSubmit") - ResultBean getNextNodesForSubmit(@ApiParam(value = "变量集合,json对象") @RequestBody GetNextNodeDto gnnd); + @GetMapping(value = "/getNextNodesForSubmit") + ResultBean getNextNodesForSubmit(@Valid @SpringQueryMap GetNodeQuery query); @ApiOperation(value = "获取上一个环节") - @PostMapping(value = "/getPreviousNodesForReject") - ResultBean getPreviousNodesForReject(@ApiParam(value = "变量集合,json对象") @RequestBody GetNextNodeDto gnnd); + @GetMapping(value = "/getPreviousNodesForReject") + ResultBean getPreviousNodesForReject(@Valid @SpringQueryMap GetNodeQuery query); + + @ApiOperation(value = "驳回任务") + @PostMapping(value = "/reject") + public ResultBean taskReject(@Valid @RequestBody BaseModelModPriceTaskQuery query); + + @ApiOperation(value = "撤回流程") + @PostMapping(value = "/revokeProcess") + public ResultBean revokeProcess(@Valid @RequestBody BaseModelModPriceTaskQuery query); + + @ApiOperation(value = "终止任务") + @PostMapping(value = "/breakProcess") + public ResultBean breakProcess(@Valid @RequestBody BaseModelModPriceTaskQuery query); } \ No newline at end of file diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/BaseModelModpriceFeignFallback.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/BaseModelModpriceFeignFallback.java index 819cec0d0f..75b196443e 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/BaseModelModpriceFeignFallback.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/BaseModelModpriceFeignFallback.java @@ -25,6 +25,10 @@ *********************************************************/ package com.yxt.anrui.base.api.basemodelmodprice; +import com.yxt.anrui.base.api.basemodelmodprice.flow.BaseModelModPriceCompleteDto; +import com.yxt.anrui.base.api.basemodelmodprice.flow.BaseModelModPriceTaskQuery; +import com.yxt.anrui.base.api.basemodelmodprice.flow.GetNodeQuery; +import com.yxt.anrui.base.api.basemodelmodprice.flow.SubmitBaseModelModPriceDto; import com.yxt.anrui.base.api.baseoutsourcingapplication.BusinessVariablesDto; import com.yxt.anrui.base.api.baseoutsourcingapplication.GetNextNodeDto; import com.yxt.common.core.query.PagerQuery; @@ -73,22 +77,37 @@ public class BaseModelModpriceFeignFallback implements BaseModelModpriceFeign { } @Override - public ResultBean submitBaseModelModPrice(SubmitBaseModelModPrice dto) { + public ResultBean submitBaseModelModPrice(SubmitBaseModelModPriceDto dto) { return null; } @Override - public ResultBean complete(BusinessVariablesDto bvd) { + public ResultBean complete(BaseModelModPriceCompleteDto query) { return null; } @Override - public ResultBean getNextNodesForSubmit(GetNextNodeDto gnnd) { + public ResultBean getNextNodesForSubmit(GetNodeQuery query) { return null; } @Override - public ResultBean getPreviousNodesForReject(GetNextNodeDto gnnd) { + public ResultBean getPreviousNodesForReject(GetNodeQuery query) { + return null; + } + + @Override + public ResultBean taskReject(BaseModelModPriceTaskQuery query) { + return null; + } + + @Override + public ResultBean revokeProcess(BaseModelModPriceTaskQuery query) { + return null; + } + + @Override + public ResultBean breakProcess(BaseModelModPriceTaskQuery query) { return null; } } \ No newline at end of file diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/BaseModelModpriceVo.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/BaseModelModpriceVo.java index 6a35ae1c4b..c9c3566e55 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/BaseModelModpriceVo.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/BaseModelModpriceVo.java @@ -64,4 +64,6 @@ public class BaseModelModpriceVo implements Vo { private String vehicleAlias; // 车型别名 @ApiModelProperty("调价原因") private String modpriceReason; // 调价原因 + @ApiModelProperty("流程状态") + private String nodeState; // 流程状态 } diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/flow/BaseModelModPriceCompleteDto.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/flow/BaseModelModPriceCompleteDto.java new file mode 100644 index 0000000000..ca3ececcb9 --- /dev/null +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/flow/BaseModelModPriceCompleteDto.java @@ -0,0 +1,41 @@ +package com.yxt.anrui.base.api.basemodelmodprice.flow; + +import com.yxt.common.core.dto.Dto; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.util.Map; + +/** + * @Author dimengzhe + * @Date 2022/6/28 9:01 + * @Description + */ +@Data +public class BaseModelModPriceCompleteDto implements Dto { + private static final long serialVersionUID = 3240453987322803352L; + @ApiModelProperty(value = "用户sid") + @NotBlank(message = "参数错误:userSid") + private String userSid; + @ApiModelProperty(value = "用户全路径sid") + @NotBlank(message = "参数错误:orgSidPath") + private String orgSidPath; + @ApiModelProperty(value = "节点id") + @NotBlank(message = "参数错误:taskDefKey") + private String taskDefKey; + @ApiModelProperty(value = "任务id") + @NotBlank(message = "参数错误:taskId") + private String taskId; + @ApiModelProperty(value = "流程id") + @NotBlank(message = "参数错误:instanceId") + private String instanceId; + @ApiModelProperty(value = "意见") + @NotBlank(message = "参数错误:comment") + private String comment; + @ApiModelProperty(value = "业务sid") + @NotBlank(message = "参数错误:businessSid") + private String businessSid; + @ApiModelProperty(value = "暂不确定是不是需要前端传的:还是有分支的时候传??") + private Map formVariables; +} diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/flow/BaseModelModPriceTaskQuery.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/flow/BaseModelModPriceTaskQuery.java new file mode 100644 index 0000000000..e2d8311ba5 --- /dev/null +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/flow/BaseModelModPriceTaskQuery.java @@ -0,0 +1,44 @@ +package com.yxt.anrui.base.api.basemodelmodprice.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 BaseModelModPriceTaskQuery implements Query { + private static final long serialVersionUID = -4006020771892400451L; + /** + * 终止、驳回、撤回 + */ + @ApiModelProperty("任务Id") + @NotBlank(message = "参数错误:taskId") + private String taskId; + /** + * 终止、驳回、撤回 + */ + @ApiModelProperty("业务sid") + @NotBlank(message = "参数错误:businessSid") + private String businessSid; + /** + * 终止、驳回 + */ + @ApiModelProperty("任务意见") + private String comment; + /** + * 终止、撤回 + */ + @ApiModelProperty("用户Sid") + private String userSid; + /** + * 终止 + */ + @ApiModelProperty("流程实例Id") + private String instanceId; +} diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/flow/GetNodeQuery.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/flow/GetNodeQuery.java new file mode 100644 index 0000000000..23df278fba --- /dev/null +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/flow/GetNodeQuery.java @@ -0,0 +1,25 @@ +package com.yxt.anrui.base.api.basemodelmodprice.flow; + +import com.yxt.common.core.query.Query; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import java.util.Map; + +/** + * @Author dimengzhe + * @Date 2022/6/28 10:42 + * @Description + */ +@Data +public class GetNodeQuery implements Query { + private static final long serialVersionUID = -5674867230708197611L; + + @ApiModelProperty(value = "环节定义id") + @NotBlank(message = "参数错误:taskDefKey") + private String taskDefKey; + + @ApiModelProperty(value = "不确定是否需要前端传:还是有分支网关的时候传??") + private Map formVariables; +} diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/flow/GetNodeVo.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/flow/GetNodeVo.java new file mode 100644 index 0000000000..6b869cfeb6 --- /dev/null +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/flow/GetNodeVo.java @@ -0,0 +1,25 @@ +package com.yxt.anrui.base.api.basemodelmodprice.flow; + +import com.yxt.common.core.vo.Vo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +/** + * @Author dimengzhe + * @Date 2022/6/28 11:09 + * @Description + */ +@Data +public class GetNodeVo implements Vo { + private static final long serialVersionUID = 8802774014747063504L; + @ApiModelProperty(value = "节点名称") + private String name; + @ApiModelProperty(value = "节点id") + private String id; + @ApiModelProperty(value = "审批组") + private List candidateGroups; + @ApiModelProperty(value = "是否是最后环节") + private String endTask; +} diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/flow/SubmitBaseModelModPriceDto.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/flow/SubmitBaseModelModPriceDto.java new file mode 100644 index 0000000000..fc91a971f9 --- /dev/null +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemodelmodprice/flow/SubmitBaseModelModPriceDto.java @@ -0,0 +1,22 @@ +package com.yxt.anrui.base.api.basemodelmodprice.flow; + +import com.yxt.anrui.base.api.basemodelmodprice.BaseModelModpriceDto; +import com.yxt.anrui.base.api.busvehicleapply.BusVehicleApplyDto; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @Author dimengzhe + * @Date 2022/6/27 13:38 + * @Description + */ +@Data +public class SubmitBaseModelModPriceDto extends BaseModelModpriceDto { + private static final long serialVersionUID = 378585162071125756L; + @ApiModelProperty("意见") + private String comment; + @ApiModelProperty("流程实例id") + private String instanceId; + @ApiModelProperty("任务id") + private String taskId; +} diff --git a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/AppScmInventoryRecordsVo.java b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/AppScmInventoryRecordsVo.java index 82694f3277..7af83c0544 100644 --- a/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/AppScmInventoryRecordsVo.java +++ b/anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicle/AppScmInventoryRecordsVo.java @@ -9,14 +9,15 @@ public class AppScmInventoryRecordsVo implements Vo { @ApiModelProperty("列表sid") private String sid; - @ApiModelProperty("车架号") private String vin; - @ApiModelProperty("存放地点sid") private String warehouseSid; - @ApiModelProperty("存放地点") private String warehouse; + @ApiModelProperty("车型sid") + private String modelSid; + @ApiModelProperty("车型名称") + private String modelName; } diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseinternalpurchase/BaseInternalPurchaseMapper.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseinternalpurchase/BaseInternalPurchaseMapper.java index 2c525f2d31..5c5880e9d1 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseinternalpurchase/BaseInternalPurchaseMapper.java +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseinternalpurchase/BaseInternalPurchaseMapper.java @@ -36,6 +36,7 @@ import com.yxt.anrui.base.api.baseinternalpurchase.BaseInternalPurchase; import com.yxt.anrui.base.api.baseinternalpurchase.BaseInternalPurchaseVo; import java.util.List; +import java.util.Map; /** * Project: anrui-base(内申请管理)
@@ -62,4 +63,6 @@ public interface BaseInternalPurchaseMapper extends BaseMapper selectListVo(); + + int updateFlowFiled(Map beanToMap); } \ No newline at end of file diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseinternalpurchase/BaseInternalPurchaseMapper.xml b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseinternalpurchase/BaseInternalPurchaseMapper.xml index da3806d53b..fcb149ff44 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseinternalpurchase/BaseInternalPurchaseMapper.xml +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseinternalpurchase/BaseInternalPurchaseMapper.xml @@ -25,4 +25,19 @@ + + + UPDATE base_internal_purchase + SET nodeState=#{nodeState}, nodeSid=#{taskDefKey} + + , procDefId=#{procDefId} + + + , procInstSid=#{procInsId} + + + , taskId=#{taskId} + + WHERE sid=#{sid} + \ No newline at end of file diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseinternalpurchase/BaseInternalPurchaseRest.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseinternalpurchase/BaseInternalPurchaseRest.java index 9069b07e54..f95bb2931a 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseinternalpurchase/BaseInternalPurchaseRest.java +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseinternalpurchase/BaseInternalPurchaseRest.java @@ -25,6 +25,15 @@ *********************************************************/ package com.yxt.anrui.base.biz.baseinternalpurchase; +import cn.hutool.core.bean.BeanUtil; +import com.yxt.anrui.base.api.baseinternalpurchase.*; +import com.yxt.anrui.base.api.baseinternalpurchase.flow.BaseInterNalPurchaseCompleteDto; +import com.yxt.anrui.base.api.baseinternalpurchase.flow.BaseInterNalPurchaseTaskQuery; +import com.yxt.anrui.base.api.baseinternalpurchase.flow.SubmitBaseInterNalPurchaseDto; +import com.yxt.anrui.base.api.baseoutsourcingapplication.BusinessVariablesDto; +import com.yxt.anrui.base.api.baseoutsourcingapplication.GetNextNodeDto; +import com.yxt.anrui.flowable.api.utils.ProcDefEnum; +import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; @@ -34,12 +43,6 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.util.List; -import com.yxt.anrui.base.api.baseinternalpurchase.BaseInternalPurchase; -import com.yxt.anrui.base.api.baseinternalpurchase.BaseInternalPurchaseQuery; -import com.yxt.anrui.base.api.baseinternalpurchase.BaseInternalPurchaseVo; -import com.yxt.anrui.base.api.baseinternalpurchase.BaseInternalPurchaseDetailsVo; -import com.yxt.anrui.base.api.baseinternalpurchase.BaseInternalPurchaseDto; -import com.yxt.anrui.base.api.baseinternalpurchase.BaseInternalPurchaseFeign; /** * Project: anrui-base(内申请管理)
@@ -91,4 +94,42 @@ public class BaseInternalPurchaseRest implements BaseInternalPurchaseFeign { public ResultBean fetchDetailsBySid(@PathVariable("sid") String sid){ return baseInternalPurchaseService.fetchDetailsVoBySid(sid); } + + @Override + public ResultBean submitBaseInternalPurchase(SubmitBaseInterNalPurchaseDto dto) { + return baseInternalPurchaseService.submitBaseInternalPurchase(dto); + } + + @Override + public ResultBean complete(BaseInterNalPurchaseCompleteDto bvd) { + BusinessVariables bv=new BusinessVariables(); + BeanUtil.copyProperties(bvd,bv); + bv.setModelId(ProcDefEnum.BASEINTERNALPURCHASE.getProDefId()); + return baseInternalPurchaseService.complete(bv); + } + + @Override + public ResultBean getNextNodesForSubmit(GetNextNodeDto gnnd) { + return baseInternalPurchaseService.getNextNodesForSubmit(gnnd); + } + + @Override + public ResultBean getPreviousNodesForReject(GetNextNodeDto gnnd) { + return baseInternalPurchaseService.getPreviousNodesForReject(gnnd); + } + + @Override + public ResultBean taskReject(BaseInterNalPurchaseTaskQuery query) { + return baseInternalPurchaseService.taskReject(query); + } + + @Override + public ResultBean revokeProcess(BaseInterNalPurchaseTaskQuery query) { + return baseInternalPurchaseService.revokeProcess(query); + } + + @Override + public ResultBean breakProcess(BaseInterNalPurchaseTaskQuery query) { + return baseInternalPurchaseService.breakProcess(query); + } } diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseinternalpurchase/BaseInternalPurchaseService.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseinternalpurchase/BaseInternalPurchaseService.java index cace663553..a365225110 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseinternalpurchase/BaseInternalPurchaseService.java +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/baseinternalpurchase/BaseInternalPurchaseService.java @@ -26,29 +26,42 @@ package com.yxt.anrui.base.biz.baseinternalpurchase; import cn.hutool.core.bean.BeanUtil; +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.baseinternalpurchase.*; +import com.yxt.anrui.base.api.baseinternalpurchase.flow.BaseInterNalPurchaseTaskQuery; +import com.yxt.anrui.base.api.baseinternalpurchase.flow.SubmitBaseInterNalPurchaseDto; import com.yxt.anrui.base.api.baseinternalpurchasevehicle.BaseInternalPurchaseVehicle; import com.yxt.anrui.base.api.baseinternalpurchasevehicle.BaseInternalPurchaseVehicleDto; import com.yxt.anrui.base.api.baseinternalpurchasevehicle.BaseInternalPurchaseVehicleVo; +import com.yxt.anrui.base.api.baseoutsourcingapplication.GetNextNodeDto; +import com.yxt.anrui.base.api.busvehicleapply.BusVehicleApply; +import com.yxt.anrui.base.api.busvehicleapply.flow.GetNodeVo; import com.yxt.anrui.base.biz.baseinternalpurchasevehicle.BaseInternalPurchaseVehicleService; +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; +import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign; import org.apache.commons.lang3.StringUtils; import com.yxt.common.base.service.MybatisBaseService; import com.yxt.common.base.utils.PagerUtil; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; -import com.yxt.anrui.base.api.baseinternalpurchase.BaseInternalPurchase; -import com.yxt.anrui.base.api.baseinternalpurchase.BaseInternalPurchaseQuery; -import com.yxt.anrui.base.api.baseinternalpurchase.BaseInternalPurchaseVo; -import com.yxt.anrui.base.api.baseinternalpurchase.BaseInternalPurchaseDetailsVo; -import com.yxt.anrui.base.api.baseinternalpurchase.BaseInternalPurchaseDto; -import com.yxt.anrui.base.api.baseinternalpurchase.BaseInternalPurchaseFeign; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.ArrayList; import java.util.List; +import java.util.Map; +import java.util.Optional; +import java.util.stream.Collectors; /** * Project: anrui-base(内申请管理)
@@ -68,6 +81,12 @@ public class BaseInternalPurchaseService extends MybatisBaseService createQueryWrapper(BaseInternalPurchaseQuery query) { // todo: 这里根据具体业务调整查询条件 @@ -156,4 +175,148 @@ public class BaseInternalPurchaseService extends MybatisBaseService variables = BeanUtil.beanToMap(dto); + ResultBean resultBean = saveAll(dto); + String businessSid = resultBean.getData().toString(); + BusinessVariables bv = new BusinessVariables(); + bv.setOrgSidPath(orgSidPath); + bv.setBusinessSid(businessSid); + bv.setUserSid(dto.getUserSid()); + variables.put("businessSid", businessSid); + bv.setFormVariables(variables); + bv.setModelId(ProcDefEnum.BASEINTERNALPURCHASE.getProDefId()); + //如果taskid从业务的数据库中查询出来,那这个taskid 和当前的关系是什么 如果数据库中查询出来的taskid是第四个环节的id,但是目前是做的第一次的提交操作。 + // 应该是也不允许走if 也不运行走else 那应该如何验证这个id是否允许走else呢? + // 取出来业务数据的taskid和前端传递的taskid作比较 来判断数据的是否有效 本质上是数据版本一致性的问题 + if (StringUtils.isBlank(dto.getTaskId())) { // 新提交 + ResultBean resultBean1 = flowableFeign.startProcess(bv); + UpdateFlowFieldVo uff = resultBean1.getData(); + updateFlowFiled(BeanUtil.beanToMap(uff)); + return resultBean1; + } else { // 驳回到发起人后再次提交 + bv.setComment(StringUtils.isNotBlank(dto.getComment()) ? dto.getComment() : "重新提交"); + bv.setInstanceId(dto.getInstanceId()); + return complete(bv); + } + } + + private int updateFlowFiled(Map beanToMap) { + return baseMapper.updateFlowFiled(beanToMap); + } + + public ResultBean complete(BusinessVariables bv) { + ResultBean rb = ResultBean.fireFail(); + BaseInternalPurchase baseInternalPurchase = fetchBySid(bv.getBusinessSid()); + if (bv.getTaskId().equals(baseInternalPurchase.getTaskId())) { + ResultBean resultBean = flowableFeign.handleProsess(bv); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + updateFlowFiled(BeanUtil.beanToMap(resultBean.getData())); + return rb.success().setData(resultBean.getData()); + } else { + return rb.setMsg("操作失败!提交的数据不一致"); + } + } + + public ResultBean getNextNodesForSubmit(GetNextNodeDto query) { + ResultBean> rb = ResultBean.fireFail(); + BusinessVariables bv = new BusinessVariables(); + BeanUtil.copyProperties(query, bv); + bv.setModelId(ProcDefEnum.BASEINTERNALPURCHASE.getProDefId()); + ResultBean>> resultBean = flowTaskFeign.getNextNodesForSubmit(bv); + //判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo + List voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), GetNodeVo.class)).collect(Collectors.toList()); +// List voList = resultBean.getData().stream().map(m -> JSON.parseObject(JSON.toJSONString(m), GetNodeVo.class)).collect(Collectors.toList()); + return rb.success().setData(voList); + } + + public ResultBean getPreviousNodesForReject(GetNextNodeDto query) { + ResultBean> rb = ResultBean.fireFail(); + BusinessVariables bv = new BusinessVariables(); + BeanUtil.copyProperties(query, bv); + bv.setModelId(ProcDefEnum.BASEINTERNALPURCHASE.getProDefId()); + ResultBean>> resultBean = flowTaskFeign.getPreviousNodesForReject(bv); + //判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo + List voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), GetNodeVo.class)).collect(Collectors.toList()); +// List voList = resultBean.getData().stream().map(m -> JSON.parseObject(JSON.toJSONString(m), GetNodeVo.class)).collect(Collectors.toList()); + return rb.success().setData(voList); + } + + public ResultBean taskReject(BaseInterNalPurchaseTaskQuery query) { + ResultBean rb = ResultBean.fireFail(); + BaseInternalPurchase baseInternalPurchase = fetchBySid(query.getBusinessSid()); + if (baseInternalPurchase == null) { + return rb.setMsg("该申请不存在"); + } + String businessTaskId = baseInternalPurchase.getTaskId(); + if (StringUtils.isNotBlank(businessTaskId)) { + if (businessTaskId.equals(query.getTaskId())) { + FlowTaskVo flowTaskVo = new FlowTaskVo(); + BeanUtil.copyProperties(query, flowTaskVo); + ResultBean resultBean = flowableFeign.taskReject(flowTaskVo); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + Map map = BeanUtil.beanToMap(resultBean.getData()); + //更新业务中的流程相关的参数 + updateFlowFiled(map); + return rb.success(); + } + } + return rb.setMsg("操作失败!提交的数据不一致!"); + } + + public ResultBean revokeProcess(BaseInterNalPurchaseTaskQuery query) { + ResultBean rb = ResultBean.fireFail(); + if (StringUtils.isBlank(query.getUserSid())) { + return rb.setMsg("参数错误:userSid"); + } + //根据业务sid查询排产申请 + BaseInternalPurchase baseInternalPurchase = fetchBySid(query.getBusinessSid()); + String businessTaskId = baseInternalPurchase.getTaskId(); + if (StringUtils.isNotBlank(businessTaskId)) { + if (businessTaskId.equals(query.getTaskId())) { + FlowTaskVo flowTaskVo = new FlowTaskVo(); + BeanUtil.copyProperties(query, flowTaskVo); + ResultBean 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("操作失败,提交的数据不一致!"); + } + + public ResultBean breakProcess(BaseInterNalPurchaseTaskQuery query) { + ResultBean rb = ResultBean.fireFail(); + if (StringUtils.isBlank(query.getInstanceId())) { + return rb.setMsg("参数错误:instanceId"); + } + if (StringUtils.isBlank(query.getUserSid())) { + return rb.setMsg("参数错误:userSid"); + } + BaseInternalPurchase baseInternalPurchase = fetchBySid(query.getBusinessSid()); + String businessTaskId = baseInternalPurchase.getTaskId(); + if (StringUtils.isNotBlank(businessTaskId)) { + if (businessTaskId.equals(query.getTaskId())) { + FlowTaskVo flowTaskVo = new FlowTaskVo(); + BeanUtil.copyProperties(query, flowTaskVo); + ResultBean resultBean = flowableFeign.breakProcess(flowTaskVo); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + updateFlowFiled(BeanUtil.beanToMap(resultBean.getData())); + return rb.success().setData(resultBean.getData()); + } + } + return rb.setMsg("操作失败!提交的数据不一致!"); + } } \ No newline at end of file diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelmodprice/BaseModelModpriceMapper.xml b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelmodprice/BaseModelModpriceMapper.xml index 3adcebf501..112fbe7347 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelmodprice/BaseModelModpriceMapper.xml +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelmodprice/BaseModelModpriceMapper.xml @@ -8,7 +8,8 @@ bmm.sid, bmm.createTime, bmm.applyPeoName, - bmm.`modpriceReason` + bmm.`modpriceReason`, + bmm.nodeState FROM base_model_modprice bmm ${ew.sqlSegment} @@ -20,12 +21,12 @@ UPDATE base_model_modprice - SET nodeState=#{nodeState}, nodeSid=#{taskDefKey} + SET nodeState=#{nodeState}, nodeId=#{taskDefKey} , procDefId=#{procDefId} - , procInstSid=#{procInsId} + , procInstId=#{procInsId} , taskId=#{taskId} diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelmodprice/BaseModelModpriceRest.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelmodprice/BaseModelModpriceRest.java index 93b32d42e7..0fdb2f47a1 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelmodprice/BaseModelModpriceRest.java +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelmodprice/BaseModelModpriceRest.java @@ -27,8 +27,13 @@ package com.yxt.anrui.base.biz.basemodelmodprice; import cn.hutool.core.bean.BeanUtil; import com.yxt.anrui.base.api.basemodelmodprice.*; +import com.yxt.anrui.base.api.basemodelmodprice.flow.BaseModelModPriceCompleteDto; +import com.yxt.anrui.base.api.basemodelmodprice.flow.BaseModelModPriceTaskQuery; +import com.yxt.anrui.base.api.basemodelmodprice.flow.GetNodeQuery; +import com.yxt.anrui.base.api.basemodelmodprice.flow.SubmitBaseModelModPriceDto; import com.yxt.anrui.base.api.baseoutsourcingapplication.BusinessVariablesDto; import com.yxt.anrui.base.api.baseoutsourcingapplication.GetNextNodeDto; +import com.yxt.anrui.base.api.busvehicleapply.flow.SubmitBusVehicleApplyDto; import com.yxt.anrui.flowable.api.utils.ProcDefEnum; import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables; import com.yxt.common.core.query.PagerQuery; @@ -95,32 +100,40 @@ public class BaseModelModpriceRest implements BaseModelModpriceFeign { /*****************************车型调价流程****************************************************/ @Override - public ResultBean submitBaseModelModPrice(SubmitBaseModelModPrice dto) { + public ResultBean submitBaseModelModPrice(SubmitBaseModelModPriceDto dto) { return baseModelModpriceService.submitBaseModelModPrice(dto); } @Override - public ResultBean complete(BusinessVariablesDto bvd) { - BusinessVariables bv=new BusinessVariables(); - BeanUtil.copyProperties(bvd,bv); - /*bv.setUserSid(bvd.getUserSid()); - bv.setOrgSidPath(bvd.getOrgSidPath()); - bv.setTaskDefKey(bvd.getTaskDefKey()); - bv.setTaskId(bvd.getTaskId()); - bv.setInstanceId(bvd.getInstanceId()); - bv.setComment(bvd.getComment()); - bv.setBusinessSid(bvd.getBusinessSid());*/ + public ResultBean complete(BaseModelModPriceCompleteDto query) { + BusinessVariables bv = new BusinessVariables(); + BeanUtil.copyProperties(query, bv); bv.setModelId(ProcDefEnum.BASEMODELMODPRICE.getProDefId()); return baseModelModpriceService.complete(bv); } @Override - public ResultBean getNextNodesForSubmit(GetNextNodeDto gnnd) { - return baseModelModpriceService.getNextNodesForSubmit(gnnd); + public ResultBean getNextNodesForSubmit(GetNodeQuery query) { + return baseModelModpriceService.getNextNodesForSubmit(query); } @Override - public ResultBean getPreviousNodesForReject(GetNextNodeDto gnnd) { - return baseModelModpriceService.getPreviousNodesForReject(gnnd); + public ResultBean getPreviousNodesForReject(GetNodeQuery query) { + return baseModelModpriceService.getPreviousNodesForReject(query); + } + + @Override + public ResultBean taskReject(BaseModelModPriceTaskQuery query) { + return baseModelModpriceService.taskReject(query); + } + + @Override + public ResultBean revokeProcess(BaseModelModPriceTaskQuery query) { + return baseModelModpriceService.revokeProcess(query); + } + + @Override + public ResultBean breakProcess(BaseModelModPriceTaskQuery query) { + return baseModelModpriceService.breakProcess(query); } } diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelmodprice/BaseModelModpriceService.java b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelmodprice/BaseModelModpriceService.java index b6d20c30f5..9863fe3e17 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelmodprice/BaseModelModpriceService.java +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemodelmodprice/BaseModelModpriceService.java @@ -26,21 +26,32 @@ package com.yxt.anrui.base.biz.basemodelmodprice; import cn.hutool.core.bean.BeanUtil; +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.baseinternalpurchase.BaseInternalPurchase; import com.yxt.anrui.base.api.basemodelmodprice.*; +import com.yxt.anrui.base.api.basemodelmodprice.flow.BaseModelModPriceTaskQuery; +import com.yxt.anrui.base.api.basemodelmodprice.flow.GetNodeQuery; +import com.yxt.anrui.base.api.basemodelmodprice.flow.SubmitBaseModelModPriceDto; import com.yxt.anrui.base.api.basemodelmodpricemodel.BaseModelModpriceModel; import com.yxt.anrui.base.api.basemodelmodpricemodel.BaseModelModpriceModelDto; import com.yxt.anrui.base.api.basemodelmodpricemodel.BaseModelModpriceModelVo; import com.yxt.anrui.base.api.baseoutsourcingapplication.GetNextNodeDto; +import com.yxt.anrui.base.api.busvehicleapply.BusVehicleApply; +import com.yxt.anrui.base.api.busvehicleapply.flow.GetNodeVo; +import com.yxt.anrui.base.api.busvehicleapply.flow.SubmitBusVehicleApplyDto; import com.yxt.anrui.base.biz.basemodelmodpricemodel.BaseModelModpriceModelService; 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; import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign; +import com.yxt.anrui.portal.api.sysuser.SysUserFeign; +import com.yxt.anrui.portal.api.sysuser.SysUserVo; import org.apache.commons.lang3.StringUtils; import com.yxt.common.base.service.MybatisBaseService; import com.yxt.common.base.utils.PagerUtil; @@ -51,8 +62,11 @@ import com.yxt.common.core.vo.PagerVo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.ArrayList; import java.util.List; import java.util.Map; +import java.util.Optional; +import java.util.stream.Collectors; /** * Project: anrui-base(车型调价申请)
@@ -78,6 +92,8 @@ public class BaseModelModpriceService extends MybatisBaseService listPageVo(PagerQuery pq) { BaseModelModpriceQuery query = pq.getParams(); @@ -95,7 +111,7 @@ public class BaseModelModpriceService extends MybatisBaseService saveOrUpdateAll(BaseModelModpriceDto dto) { ResultBean rb = ResultBean.fireFail(); String sid = dto.getSid(); List baseModelModpriceModels = dto.getBaseModelModpriceModels(); @@ -104,6 +120,8 @@ public class BaseModelModpriceService extends MybatisBaseService variables = BeanUtil.beanToMap(dto); - ResultBean resultBean = saveOrUpdateAll(dto); - String businessSid = resultBean.getData().toString(); + public ResultBean submitBaseModelModPrice(SubmitBaseModelModPriceDto dto) { + ResultBean rb = ResultBean.fireFail(); + //根据用户sid获取staffSid + ResultBean userVoResultBean = sysUserFeign.fetchBySid(dto.getCreateBySid()); + if (!userVoResultBean.getSuccess()) { + return rb.setMsg(userVoResultBean.getMsg()); + } + //根据staffSid获取用户的组织全路径 + ResultBean orgByStaffSid = sysStaffOrgFeign.getOrgByStaffSid(userVoResultBean.getData().getStaffSid()); + if (!orgByStaffSid.getSuccess()) { + return rb.setMsg(orgByStaffSid.getMsg()); + } + //用户的组织全路径 + String orgSidPath = orgByStaffSid.getData().getOrgSidPath(); + BaseModelModprice baseModelModprice = fetchBySid(dto.getSid()); + int r = submitBusinessData(dto, baseModelModprice); + if (r == 3) { + return rb.setMsg("该申请不存在"); + } + if (r == 0) { + return rb.setMsg("操作失败!提交的数据不一致"); + } + //新增修改保存 + ResultBean resultBean = saveOrUpdateAll(dto); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + String businessSid = resultBean.getData(); + //创建BusinessVariables实体对象 BusinessVariables bv = new BusinessVariables(); + //流程中的参数赋值 + Map variables = BeanUtil.beanToMap(dto); + //若有网关,则赋值网关中判断的字段。 + variables.put("businessSid", businessSid); + //用户的部门全路径sid bv.setOrgSidPath(orgSidPath); + //业务sid bv.setBusinessSid(businessSid); - bv.setUserSid(dto.getUserSid()); - variables.put("businessSid", businessSid); + //用户sid + bv.setUserSid(dto.getCreateBySid()); bv.setFormVariables(variables); + //流程定义id bv.setModelId(ProcDefEnum.BASEMODELMODPRICE.getProDefId()); - //如果taskid从业务的数据库中查询出来,那这个taskid 和当前的关系是什么 如果数据库中查询出来的taskid是第四个环节的id,但是目前是做的第一次的提交操作。 - // 应该是也不允许走if 也不运行走else 那应该如何验证这个id是否允许走else呢? - // 取出来业务数据的taskid和前端传递的taskid作比较 来判断数据的是否有效 本质上是数据版本一致性的问题 - if (StringUtils.isBlank(dto.getTaskId())) { // 新提交 - ResultBean resultBean1 = flowableFeign.startProcess(bv); - UpdateFlowFieldVo uff = resultBean1.getData(); - updateFlowFiled(BeanUtil.beanToMap(uff)); - return resultBean1; - } else { // 驳回到发起人后再次提交 + if (r == 1) { + ResultBean voResultBean = flowableFeign.startProcess(bv); + UpdateFlowFieldVo ufVo = voResultBean.getData(); + updateFlowFiled(BeanUtil.beanToMap(ufVo)); + return voResultBean; + } + if (r == 2) { + // ToDo:驳回到发起人后再次提交 + if (StringUtils.isBlank(dto.getInstanceId())) { + return rb.setMsg("参数错误:instanceId"); + } + bv.setTaskId(baseModelModprice.getTaskId()); + bv.setTaskDefKey(baseModelModprice.getNodeId()); bv.setComment(StringUtils.isNotBlank(dto.getComment()) ? dto.getComment() : "重新提交"); bv.setInstanceId(dto.getInstanceId()); return complete(bv); } + return rb; + } + + /** + * 判断提交的流程是否被允许 + * + * @param dto + * @return + */ + private synchronized int submitBusinessData(SubmitBaseModelModPriceDto dto, BaseModelModprice baseModelModprice) { + int r = 0; + if (StringUtils.isBlank(dto.getSid())) { + r = 1; + } else { + if (baseModelModprice != null) { + String businessTaskId = baseModelModprice.getTaskId(); + if (StringUtils.isBlank(businessTaskId) && StringUtils.isBlank(dto.getTaskId())) { + //新提交 + r = 1; + } else if (StringUtils.isNotBlank(businessTaskId) && businessTaskId.equals(dto.getTaskId())) { + //二次提交//只有数据一致的时候才能进行下一步 + r = 2; + } + } else { + r = 3; + } + + } + return r; } private int updateFlowFiled(Map beanToMap) { return baseMapper.updateFlowFiled(beanToMap); } - public ResultBean complete(BusinessVariables bvd) { - ResultBean rb = flowableFeign.handleProsess(bvd); - updateFlowFiled(BeanUtil.beanToMap(rb.getData())); - return rb; + public ResultBean complete(BusinessVariables bv) { + ResultBean rb = ResultBean.fireFail(); + BaseModelModprice baseModelModprice = fetchBySid(bv.getBusinessSid()); + if (bv.getTaskId().equals(baseModelModprice.getTaskId())) { + ResultBean resultBean = flowableFeign.handleProsess(bv); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + updateFlowFiled(BeanUtil.beanToMap(resultBean.getData())); + return rb.success().setData(resultBean.getData()); + } else { + return rb.setMsg("操作失败!提交的数据不一致"); + } } - public ResultBean getNextNodesForSubmit(GetNextNodeDto gnnd) { + public ResultBean getNextNodesForSubmit(GetNodeQuery query) { + ResultBean> rb = ResultBean.fireFail(); BusinessVariables bv = new BusinessVariables(); + BeanUtil.copyProperties(query, bv); bv.setModelId(ProcDefEnum.BASEMODELMODPRICE.getProDefId()); - bv.setTaskDefKey(gnnd.getTaskDefKey()); - bv.setFormVariables(gnnd.getFormVariables()); - ResultBean processCirculationNodesByMap = flowTaskFeign.getNextNodesForSubmit(bv); - processCirculationNodesByMap.setCode("200"); - processCirculationNodesByMap.setSuccess(true); - return processCirculationNodesByMap; + ResultBean>> resultBean = flowTaskFeign.getNextNodesForSubmit(bv); + //判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo + List voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), GetNodeVo.class)).collect(Collectors.toList()); +// List voList = resultBean.getData().stream().map(m -> JSON.parseObject(JSON.toJSONString(m), GetNodeVo.class)).collect(Collectors.toList()); + return rb.success().setData(voList); } - public ResultBean getPreviousNodesForReject(GetNextNodeDto gnnd) { + public ResultBean getPreviousNodesForReject(GetNodeQuery query) { + ResultBean> rb = ResultBean.fireFail(); BusinessVariables bv = new BusinessVariables(); - bv.setTaskDefKey(gnnd.getTaskDefKey()); + BeanUtil.copyProperties(query, bv); bv.setModelId(ProcDefEnum.BASEMODELMODPRICE.getProDefId()); - bv.setFormVariables(gnnd.getFormVariables()); - ResultBean processCirculationNodesByMap = flowTaskFeign.getPreviousNodesForReject(bv); - processCirculationNodesByMap.setCode("200"); - processCirculationNodesByMap.setSuccess(true); - return processCirculationNodesByMap; + ResultBean>> resultBean = flowTaskFeign.getPreviousNodesForReject(bv); + //判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo + List voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), GetNodeVo.class)).collect(Collectors.toList()); +// List voList = resultBean.getData().stream().map(m -> JSON.parseObject(JSON.toJSONString(m), GetNodeVo.class)).collect(Collectors.toList()); + return rb.success().setData(voList); + } + + public ResultBean taskReject(BaseModelModPriceTaskQuery query) { + ResultBean rb = ResultBean.fireFail(); + BaseModelModprice baseModelModprice = fetchBySid(query.getBusinessSid()); + if (baseModelModprice == null) { + return rb.setMsg("该申请不存在"); + } + String businessTaskId = baseModelModprice.getTaskId(); + if (StringUtils.isNotBlank(businessTaskId)) { + if (businessTaskId.equals(query.getTaskId())) { + FlowTaskVo flowTaskVo = new FlowTaskVo(); + BeanUtil.copyProperties(query, flowTaskVo); + ResultBean resultBean = flowableFeign.taskReject(flowTaskVo); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + Map map = BeanUtil.beanToMap(resultBean.getData()); + //更新业务中的流程相关的参数 + updateFlowFiled(map); + return rb.success(); + } + } + return rb.setMsg("操作失败!提交的数据不一致!"); + } + + public ResultBean revokeProcess(BaseModelModPriceTaskQuery query) { + ResultBean rb = ResultBean.fireFail(); + if (StringUtils.isBlank(query.getUserSid())) { + return rb.setMsg("参数错误:userSid"); + } + //根据业务sid查询调价申请 + BaseModelModprice baseModelModprice = fetchBySid(query.getBusinessSid()); + String businessTaskId = baseModelModprice.getTaskId(); + if (StringUtils.isNotBlank(businessTaskId)) { + if (businessTaskId.equals(query.getTaskId())) { + FlowTaskVo flowTaskVo = new FlowTaskVo(); + BeanUtil.copyProperties(query, flowTaskVo); + ResultBean 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("操作失败,提交的数据不一致!"); + } + + public ResultBean breakProcess(BaseModelModPriceTaskQuery query) { + ResultBean rb = ResultBean.fireFail(); + if (StringUtils.isBlank(query.getInstanceId())) { + return rb.setMsg("参数错误:instanceId"); + } + if (StringUtils.isBlank(query.getUserSid())) { + return rb.setMsg("参数错误:userSid"); + } + BaseModelModprice baseModelModprice = fetchBySid(query.getBusinessSid()); + String businessTaskId = baseModelModprice.getTaskId(); + if (StringUtils.isNotBlank(businessTaskId)) { + if (businessTaskId.equals(query.getTaskId())) { + FlowTaskVo flowTaskVo = new FlowTaskVo(); + BeanUtil.copyProperties(query, flowTaskVo); + ResultBean resultBean = flowableFeign.breakProcess(flowTaskVo); + if (!resultBean.getSuccess()) { + return rb.setMsg(resultBean.getMsg()); + } + updateFlowFiled(BeanUtil.beanToMap(resultBean.getData())); + return rb.success().setData(resultBean.getData()); + } + } + return rb.setMsg("操作失败!提交的数据不一致!"); } } \ No newline at end of file diff --git a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/BaseVehicleMapper.xml b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/BaseVehicleMapper.xml index 14cef1f7d4..81a81944d6 100644 --- a/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/BaseVehicleMapper.xml +++ b/anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicle/BaseVehicleMapper.xml @@ -779,7 +779,9 @@ select sid, vinNo as vin, locationName as warehouse, - location as warehouseSid + location as warehouseSid, + modelSid, + modelName from base_vehicle bv where bv.createOrgSid = #{userOrgSid} diff --git a/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flow/FlowableFeign.java b/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flow/FlowableFeign.java index ceab5834b3..7a8f486adb 100644 --- a/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flow/FlowableFeign.java +++ b/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/flow/FlowableFeign.java @@ -76,7 +76,7 @@ public interface FlowableFeign { * @return */ @ApiOperation(value = "创建流程实例时取下一环节的用户sid") - @PostMapping(value = "/getNextNodeUserSidsOfCreate") + @GetMapping(value = "/getNextNodeUserSidsOfCreate") @ResponseBody ResultBean getNextNodeUserSidsOfCreate( @RequestBody BusinessVariables bv); /** @@ -85,7 +85,7 @@ public interface FlowableFeign { * @return */ @ApiOperation(value = "提交流程实例时取下一环节的用户sid") - @PostMapping(value = "/getNextNodeUserSidsOfSubmit") + @GetMapping(value = "/getNextNodeUserSidsOfSubmit") @ResponseBody ResultBean getNextNodeUserSidsOfSubmit(@RequestBody BusinessVariables bv); diff --git a/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/utils/ProcDefEnum.java b/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/utils/ProcDefEnum.java index 924ca76f5b..5bb8cfdc08 100644 --- a/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/utils/ProcDefEnum.java +++ b/anrui-flowable/anrui-flowable-api/src/main/java/com/yxt/anrui/flowable/api/utils/ProcDefEnum.java @@ -21,7 +21,8 @@ public enum ProcDefEnum { BASEVEHICLEACTUALSALES("未售买断", "process_6qx07b75:3:265004"),//ToDo SALESORDER("销售订单审批流程", "process_p5ils2rn:2:245112"), BASEOUTSOURCINGAPPLICATION("外采申请", "process_5tqysnjc:6:375342"),//TODO - BASEMODELMODPRICE("车型调价申请", "process_kydcif7k:2:252555") + BASEMODELMODPRICE("车型调价申请", "process_kydcif7k:3:275277"), + BASEINTERNALPURCHASE("内购申请", "process_i6luw5xq:1:267504") ; ProcDefEnum(String proDefName, String proDefId) { diff --git a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehicleinventory/ScmVehicleInventoryFeign.java b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehicleinventory/ScmVehicleInventoryFeign.java index 953bf2a413..915b0aeb82 100644 --- a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehicleinventory/ScmVehicleInventoryFeign.java +++ b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehicleinventory/ScmVehicleInventoryFeign.java @@ -62,7 +62,7 @@ public interface ScmVehicleInventoryFeign { @ApiOperation("盘库修改状态") @PostMapping("/updateState") @ResponseBody - public ResultBean updateState(@RequestParam("sid") String sid,@RequestParam("inventoryStateKey") String inventoryStateKey,@RequestParam("inventoryState") String inventoryState,@RequestParam("certificateKey") String certificateKey,@RequestParam("certificate") String certificate,@RequestParam("remarks") String remarks); + public ResultBean updateState(@RequestParam("sid") String sid,@RequestParam("InventoryStateKey") String InventoryStateKey,@RequestParam("InventoryState") String InventoryState,@RequestParam("certificateKey") String certificateKey,@RequestParam("certificate") String certificate,@RequestParam("remarks") String remarks); @ApiOperation("新增或修改") @PostMapping("/save") diff --git a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehicleinventory/ScmVehicleInventoryQuery.java b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehicleinventory/ScmVehicleInventoryQuery.java index 82d5b528c1..7c883979eb 100644 --- a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehicleinventory/ScmVehicleInventoryQuery.java +++ b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehicleinventory/ScmVehicleInventoryQuery.java @@ -26,6 +26,7 @@ package com.yxt.anrui.scm.api.scmvehicleinventory; +import com.fasterxml.jackson.annotation.JsonProperty; import com.yxt.common.core.query.Query; import io.swagger.annotations.ApiModel; @@ -52,12 +53,15 @@ public class ScmVehicleInventoryQuery implements Query { @ApiModelProperty("车架号") private String mainSid; // 车架号 @ApiModelProperty("盘库开始日期") + @JsonProperty("InventStartDate") private String InventStartDate; @ApiModelProperty("盘库结束日期") + @JsonProperty("InventEndDate") private String InventEndDate; @ApiModelProperty("存放地点sid") private String locationSid; // 存放地点sid @ApiModelProperty("盘库状态 通过/未通过") + @JsonProperty("InventoryState") private String InventoryState; // 盘库状态 通过/未通过 @ApiModelProperty("创建组织") private String createOrgSid; // 创建组织 diff --git a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehicleinventory/ScmVehicleInventoryVo.java b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehicleinventory/ScmVehicleInventoryVo.java index ed4a9221f5..70abfa1e8b 100644 --- a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehicleinventory/ScmVehicleInventoryVo.java +++ b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehicleinventory/ScmVehicleInventoryVo.java @@ -67,8 +67,13 @@ public class ScmVehicleInventoryVo implements Vo { @ApiModelProperty("盘库状态 通过/未通过") @JsonProperty("InventoryState") private String InventoryState; // 盘库状态 通过/未通过 + @ApiModelProperty("盘库状态key 通过/未通过") + @JsonProperty("InventoryStateKey") + private String InventoryStateKey; // 盘库状态 通过/未通过 @ApiModelProperty("是否有合格证") private String certificate; + @ApiModelProperty("是否有合格证key") + private String certificateKey; @ApiModelProperty("备注") private String remarks; // 备注 } diff --git a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehiclepatrolinspectionsheet/ScmVehiclePatrolinspectionsheet.java b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehiclepatrolinspectionsheet/ScmVehiclePatrolinspectionsheet.java index 98911ae9c2..366fb8b1dc 100644 --- a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehiclepatrolinspectionsheet/ScmVehiclePatrolinspectionsheet.java +++ b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehiclepatrolinspectionsheet/ScmVehiclePatrolinspectionsheet.java @@ -49,7 +49,6 @@ import lombok.Data; @TableName("scm_vehicle_patrolinspectionsheet") public class ScmVehiclePatrolinspectionsheet extends BaseEntity { private static final long serialVersionUID = 1L; - private String sid; @ApiModelProperty("主表sid") private String patrolInspectionSid; // 主表sid @ApiModelProperty("车架号") diff --git a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehiclepatrolinspectionsheet/ScmVehiclePatrolinspectionsheetDetailsVo.java b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehiclepatrolinspectionsheet/ScmVehiclePatrolinspectionsheetDetailsVo.java index 2ffec22f79..65c874cbaf 100644 --- a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehiclepatrolinspectionsheet/ScmVehiclePatrolinspectionsheetDetailsVo.java +++ b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehiclepatrolinspectionsheet/ScmVehiclePatrolinspectionsheetDetailsVo.java @@ -32,6 +32,8 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import java.util.List; + /** * Project: anrui_scm(anrui_scm)
* File: ScmVehiclePatrolinspectionsheetVo.java
@@ -65,13 +67,8 @@ public class ScmVehiclePatrolinspectionsheetDetailsVo implements Vo { private String dutyName; @ApiModelProperty("相关责任人sid") private String dutySid; - @ApiModelProperty("经纬度") - private String location; - @ApiModelProperty("详细地址") - private String address; + @ApiModelProperty("相关照片") + private List images; @ApiModelProperty("创建组织") private String createOrgSid; - @ApiModelProperty("使用组织") - private String useOrgName; - } \ No newline at end of file diff --git a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehiclepatrolinspectionsheet/ScmVehiclePatrolinspectionsheetFeign.java b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehiclepatrolinspectionsheet/ScmVehiclePatrolinspectionsheetFeign.java index f0e635a662..b16417a9f8 100644 --- a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehiclepatrolinspectionsheet/ScmVehiclePatrolinspectionsheetFeign.java +++ b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehiclepatrolinspectionsheet/ScmVehiclePatrolinspectionsheetFeign.java @@ -79,7 +79,6 @@ public interface ScmVehiclePatrolinspectionsheetFeign { @ResponseBody public ResultBean fetchSheetBySid(@PathVariable("sid") String sid); - @ApiOperation("手机端-初始化 巡检操作") @GetMapping("/getInspection/{recordSid}") @ResponseBody diff --git a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehiclestaypatrolinspection/ScmVehicleStayPatrolinspection.java b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehiclestaypatrolinspection/ScmVehicleStayPatrolinspection.java index b772f62e86..e337e55d53 100644 --- a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehiclestaypatrolinspection/ScmVehicleStayPatrolinspection.java +++ b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehiclestaypatrolinspection/ScmVehicleStayPatrolinspection.java @@ -64,5 +64,8 @@ public class ScmVehicleStayPatrolinspection extends BaseEntity { private String createOrgSid; // 创建组织 @ApiModelProperty("使用组织") private String useOrgName; // 使用组织 - + @ApiModelProperty("车型sid") + private String modelSid; + @ApiModelProperty("车型名称") + private String modelName; } diff --git a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehiclestaypatrolinspection/ScmVehicleStayPatrolinspectionFeign.java b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehiclestaypatrolinspection/ScmVehicleStayPatrolinspectionFeign.java index 980a0bec11..ec4941c0d6 100644 --- a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehiclestaypatrolinspection/ScmVehicleStayPatrolinspectionFeign.java +++ b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehiclestaypatrolinspection/ScmVehicleStayPatrolinspectionFeign.java @@ -84,6 +84,4 @@ public interface ScmVehicleStayPatrolinspectionFeign { @PostMapping("/getInspectionList") @ResponseBody public ResultBean> getInspectionList(@RequestBody PagerQuery pagerQuery); - - } \ No newline at end of file diff --git a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehiclestaypatrolinspection/ScmVehicleStayPatrolinspectionVo.java b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehiclestaypatrolinspection/ScmVehicleStayPatrolinspectionVo.java index 343b57ed70..5e48bd89ef 100644 --- a/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehiclestaypatrolinspection/ScmVehicleStayPatrolinspectionVo.java +++ b/anrui-scm/anrui-scm-api/src/main/java/com/yxt/anrui/scm/api/scmvehiclestaypatrolinspection/ScmVehicleStayPatrolinspectionVo.java @@ -59,4 +59,8 @@ public class ScmVehicleStayPatrolinspectionVo implements Vo { private String patrolInspectionDate; // 上次巡检日期 @ApiModelProperty("上次巡检人员") private String patrolInspectionName; // 上次巡检人员 + @ApiModelProperty("车型sid") + private String modelSid; + @ApiModelProperty("车型名称") + private String modelName; } diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclepatrolinspectionsheet/ScmVehiclePatrolinspectionsheetMapper.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclepatrolinspectionsheet/ScmVehiclePatrolinspectionsheetMapper.java index f4bd963c4f..7231b5864e 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclepatrolinspectionsheet/ScmVehiclePatrolinspectionsheetMapper.java +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclepatrolinspectionsheet/ScmVehiclePatrolinspectionsheetMapper.java @@ -80,4 +80,6 @@ public interface ScmVehiclePatrolinspectionsheetMapper extends BaseMapper + + \ No newline at end of file diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclepatrolinspectionsheet/ScmVehiclePatrolinspectionsheetRest.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclepatrolinspectionsheet/ScmVehiclePatrolinspectionsheetRest.java index 273a5fb560..828bbbc00f 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclepatrolinspectionsheet/ScmVehiclePatrolinspectionsheetRest.java +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclepatrolinspectionsheet/ScmVehiclePatrolinspectionsheetRest.java @@ -25,6 +25,7 @@ *********************************************************/ package com.yxt.anrui.scm.biz.scmvehiclepatrolinspectionsheet; +import cn.hutool.core.bean.BeanUtil; import com.yxt.anrui.scm.api.scmvehiclepatrolinspectionsheet.*; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; @@ -94,7 +95,9 @@ public class ScmVehiclePatrolinspectionsheetRest implements ScmVehiclePatrolinsp @Override public ResultBean fetchSheetBySid(String sid) { - return scmVehiclePatrolinspectionsheetService.fetchSheetBySid(sid); + ResultBean rb = ResultBean.fireFail(); + ScmVehiclePatrolinspectionsheetDetailsVo vo = scmVehiclePatrolinspectionsheetService.getPCInspection(sid); + return rb.success().setData(vo); } @Override diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclepatrolinspectionsheet/ScmVehiclePatrolinspectionsheetService.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclepatrolinspectionsheet/ScmVehiclePatrolinspectionsheetService.java index 1dc78b8d84..4efee17109 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclepatrolinspectionsheet/ScmVehiclePatrolinspectionsheetService.java +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclepatrolinspectionsheet/ScmVehiclePatrolinspectionsheetService.java @@ -159,10 +159,34 @@ public class ScmVehiclePatrolinspectionsheetService extends MybatisBaseService images = dto.getImages(); + for (String s : images) { + if (s.indexOf(fileUploadComponent.getUrlPrefix()) > -1) { + s1 = s.replace(fileUploadComponent.getUrlPrefix(), ""); + } + ScmFile scmFile1 = new ScmFile(); + scmFile1.setAttachType(type1); + scmFile1.setFileName("巡检相关照片"); + scmFile1.setFilePath(s1); + scmFile1.setLinkSid(dto.getSid()); + scmFileService.save(scmFile1); + } + return rb.success().setMsg("操作成功"); + } + BeanUtil.copyProperties(dto, scmVehiclePatrolinspectionsheet); scmVehiclePatrolinspectionsheet.setCreateOrgSid(useOrgSid); - BeanUtil.copyProperties(dto, scmVehiclePatrolinspectionsheet); + scmVehiclePatrolinspectionsheet.setSid(sid); scmFileService.deleteByLinkSidAndType(scmVehiclePatrolinspectionsheet.getSid(), type1); List images = dto.getImages(); for (String s : images) { @@ -173,7 +197,7 @@ public class ScmVehiclePatrolinspectionsheetService extends MybatisBaseService images = dto.getImages(); + for (String s : images) { + if (s.indexOf(fileUploadComponent.getUrlPrefix()) > -1) { + s1 = s.replace(fileUploadComponent.getUrlPrefix(), ""); + } + ScmFile scmFile1 = new ScmFile(); + scmFile1.setAttachType(type1); + scmFile1.setFileName("巡检相关照片"); + scmFile1.setFilePath(s1); + scmFile1.setLinkSid(dto.getSid()); + scmFileService.save(scmFile1); + } + ScmVehicleStayPatrolinspection scmVehicleStayPatrolinspection = scmVehicleStayPatrolinspectionService.fetchBySid(patrolInspectionSid); + scmVehicleStayPatrolinspectionService.updateByStaySid(patrolInspectionSid); + ScmVehiclePatrolinspection scmVehiclePatrolinspection = new ScmVehiclePatrolinspection(); + scmVehiclePatrolinspection.setMainSid(scmVehicleStayPatrolinspection.getMainSid()); + scmVehiclePatrolinspection.setPatrolInspectionState("1"); + scmVehiclePatrolinspection.setLocation(scmVehicleStayPatrolinspection.getLocation()); + scmVehiclePatrolinspection.setLocationSid(scmVehicleStayPatrolinspection.getLocationSid()); + scmVehiclePatrolinspection.setPatrolInspectionDate(new SimpleDateFormat("yyyy-MM-dd").format(new Date())); + scmVehiclePatrolinspection.setPatrolInspectionName(dto.getUserName()); + scmVehiclePatrolinspection.setCreateOrgSid(dto.getCreateOrgSid()); + scmVehiclePatrolinspectionService.save(scmVehiclePatrolinspection); + baseMapper.updatePatSid(dto.getSid(),scmVehiclePatrolinspection.getSid()); + return rb.success().setMsg("操作成功"); + } + ScmVehiclePatrolinspectionsheet scmVehiclePatrolinspectionsheet = new ScmVehiclePatrolinspectionsheet(); + String sid = scmVehiclePatrolinspectionsheet.getSid(); BeanUtil.copyProperties(dto, scmVehiclePatrolinspectionsheet); - + scmVehiclePatrolinspectionsheet.setCreateOrgSid(useOrgSid); + scmVehiclePatrolinspectionsheet.setSid(sid); scmFileService.deleteByLinkSidAndType(scmVehiclePatrolinspectionsheet.getSid(), type1); List images = dto.getImages(); for (String s : images) { @@ -208,11 +266,9 @@ public class ScmVehiclePatrolinspectionsheetService extends MybatisBaseService fetchSheetBySid(String sid) { @@ -233,4 +290,22 @@ public class ScmVehiclePatrolinspectionsheetService extends MybatisBaseService images = new ArrayList<>(); + ScmVehiclePatrolinspectionsheetDetailsVo vo = baseMapper.getPCInspection(sid); + if (vo == null){ + ScmVehiclePatrolinspectionsheetDetailsVo scmVehiclePatrolinspectionsheetDetailsVo = new ScmVehiclePatrolinspectionsheetDetailsVo(); + List stringList = new ArrayList<>(); + scmVehiclePatrolinspectionsheetDetailsVo.setImages(stringList); + return scmVehiclePatrolinspectionsheetDetailsVo; + } + List scmFiles1 = scmFileService.selectByLinkSid(vo.getSid(), type1); + for (ScmFile scmFile : scmFiles1) { + images.add(fileUploadComponent.getUrlPrefix() + scmFile.getFilePath()); + } + vo.setImages(images); + return vo; + } } \ No newline at end of file diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclestaypatrolinspection/ScmVehicleStayPatrolinspectionMapper.java b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclestaypatrolinspection/ScmVehicleStayPatrolinspectionMapper.java index a371160d7f..80dc0c61e3 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclestaypatrolinspection/ScmVehicleStayPatrolinspectionMapper.java +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclestaypatrolinspection/ScmVehicleStayPatrolinspectionMapper.java @@ -78,6 +78,6 @@ public interface ScmVehicleStayPatrolinspectionMapper extends BaseMapper getInventoryList(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw, @Param("names") String names); - @Update("update scm_vehicle_stay_patrolinspection set isDelete = 1") + @Update("update scm_vehicle_stay_patrolinspection set isDelete = 1 where sid = #{patrolInspectionSid}") void updateByStaySid(String patrolInspectionSid); } \ No newline at end of file diff --git a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclestaypatrolinspection/ScmVehicleStayPatrolinspectionMapper.xml b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclestaypatrolinspection/ScmVehicleStayPatrolinspectionMapper.xml index ef27b547d8..e44e4555b9 100644 --- a/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclestaypatrolinspection/ScmVehicleStayPatrolinspectionMapper.xml +++ b/anrui-scm/anrui-scm-biz/src/main/java/com/yxt/anrui/scm/biz/scmvehiclestaypatrolinspection/ScmVehicleStayPatrolinspectionMapper.xml @@ -5,8 +5,27 @@