Browse Source

移动端未售买断详情、未售买断流程审批

master
dimengzhe 3 years ago
parent
commit
426b367e3a
  1. 28
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleactualdetails/AppBaseVehicleActualDetailsVo.java
  2. 34
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleactualsales/AppBaseVehicleActualSalesVo.java
  3. 5
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleactualsales/BaseVehicleActualSalesFeign.java
  4. 5
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleactualsales/BaseVehicleActualSalesFeignFallback.java
  5. 4
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleactualdetails/BaseVehicleActualDetailsMapper.java
  6. 13
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleactualdetails/BaseVehicleActualDetailsMapper.xml
  7. 5
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleactualdetails/BaseVehicleActualDetailsService.java
  8. 5
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleactualsales/BaseVehicleActualSalesMapper.java
  9. 12
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleactualsales/BaseVehicleActualSalesMapper.xml
  10. 5
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleactualsales/BaseVehicleActualSalesRest.java
  11. 21
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleactualsales/BaseVehicleActualSalesService.java
  12. 33
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/unsoldBuyout/UnsoldBuyoutDetailsListVo.java
  13. 57
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/unsoldBuyout/UnsoldBuyoutFeign.java
  14. 12
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/unsoldBuyout/UnsoldBuyoutFeignFallback.java
  15. 35
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/unsoldBuyout/UnsoldBuyoutVo.java
  16. 37
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/unsoldBuyout/flowable/UnsoldBuyoutDto.java
  17. 25
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/unsoldBuyout/flowable/UnsoldBuyoutQuery.java
  18. 47
      anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/unsoldBuyout/flowable/UnsoldBuyoutTaskQuery.java
  19. 56
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/supplychain/unsoldBuyout/UnsoldBuyoutRest.java
  20. 139
      anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/supplychain/unsoldBuyout/UnsoldBuyoutService.java

28
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleactualdetails/AppBaseVehicleActualDetailsVo.java

@ -0,0 +1,28 @@
package com.yxt.anrui.base.api.basevehicleactualdetails;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @Author dimengzhe
* @Date 2022/8/19 16:21
* @Description
*/
@Data
public class AppBaseVehicleActualDetailsVo implements Vo {
private static final long serialVersionUID = -6237072988523435649L;
@ApiModelProperty("车型名称")
private String modelName;
@ApiModelProperty("车架号")
private String vinNo;
@ApiModelProperty("入库日期")
private String inboundDate;
@ApiModelProperty("入库价")
private String inboundPrice;
@ApiModelProperty("车型sid")
private String modelSid;
@ApiModelProperty("配置sid")
private String configSid;
}

34
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehicleactualsales/AppBaseVehicleActualSalesVo.java

@ -0,0 +1,34 @@
package com.yxt.anrui.base.api.basevehicleactualsales;
import com.yxt.anrui.base.api.basevehicleactualdetails.AppBaseVehicleActualDetailsVo;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @Author dimengzhe
* @Date 2022/8/19 16:20
* @Description
*/
@Data
public class AppBaseVehicleActualSalesVo implements Vo {
private static final long serialVersionUID = -6036087210697416311L;
@ApiModelProperty("未售买断sid")
private String sid;
@ApiModelProperty("用户sid")
private String userSid;
@ApiModelProperty("任务id")
private String taskId;
@ApiModelProperty("流程实例id")
private String procInsId;
@ApiModelProperty("申请人")
private String applyName;
@ApiModelProperty("申请日期")
private String date;
@ApiModelProperty("买断原因")
private String reason;
private List<AppBaseVehicleActualDetailsVo> records;
}

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

@ -79,4 +79,9 @@ public interface BaseVehicleActualSalesFeign {
@PostMapping(value = "/breakProcess")
@ResponseBody
public ResultBean breakProcess(@Valid @RequestBody BaseActualSalesTaskQuery query);
@ApiOperation(value = "app移动端未售买断详情")
@GetMapping(value = "/getUnsoldBuyout/{sid}")
@ResponseBody
ResultBean<AppBaseVehicleActualSalesVo> getUnsoldBuyout(@PathVariable("sid") String sid);
}

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

@ -69,4 +69,9 @@ public class BaseVehicleActualSalesFeignFallback implements BaseVehicleActualSal
public ResultBean breakProcess(BaseActualSalesTaskQuery query) {
return null;
}
@Override
public ResultBean<AppBaseVehicleActualSalesVo> getUnsoldBuyout(String sid) {
return null;
}
}

4
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleactualdetails/BaseVehicleActualDetailsMapper.java

@ -1,9 +1,11 @@
package com.yxt.anrui.base.biz.basevehicleactualdetails;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yxt.anrui.base.api.basevehicleactualdetails.AppBaseVehicleActualDetailsVo;
import com.yxt.anrui.base.api.basevehicleactualdetails.BaseVehicleActualDetails;
import com.yxt.anrui.base.api.basevehicleactualdetails.BaseVehicleActualDetailsVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@ -42,4 +44,6 @@ public interface BaseVehicleActualDetailsMapper extends BaseMapper<BaseVehicleAc
* @return
*/
int deleteByActualSid(String s);
List<AppBaseVehicleActualDetailsVo> getList(@Param("sid") String sid, @Param("orgSid") String orgSid);
}

13
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleactualdetails/BaseVehicleActualDetailsMapper.xml

@ -30,4 +30,17 @@
from base_vehicle_actual_details
where vehicleActualSid = #{s}
</delete>
<select id="getList" resultType="com.yxt.anrui.base.api.basevehicleactualdetails.AppBaseVehicleActualDetailsVo">
select bd.modelName,
bd.vinNo,
DATE_FORMAT(bd.inboundDate, '%Y-%m-%d') as inboundDate,
bd.inboundPrice,
bv.modelSid,
bv.modelConfigSid as configSid
from base_vehicle_actual_details bd
left join base_vehicle bv on bv.vinNo = bd.vinNo
where bd.vehicleActualSid = #{sid}
and bv.createOrgSid = #{orgSid}
</select>
</mapper>

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

@ -1,5 +1,6 @@
package com.yxt.anrui.base.biz.basevehicleactualdetails;
import com.yxt.anrui.base.api.basevehicleactualdetails.AppBaseVehicleActualDetailsVo;
import com.yxt.anrui.base.api.basevehicleactualdetails.BaseVehicleActualDetails;
import com.yxt.anrui.base.api.basevehicleactualdetails.BaseVehicleActualDetailsDto;
import com.yxt.anrui.base.api.basevehicleactualdetails.BaseVehicleActualDetailsVo;
@ -95,4 +96,8 @@ public class BaseVehicleActualDetailsService extends MybatisBaseService<BaseVehi
baseMapper.deleteByActualSid(stringList.get(i));
}
}
public List<AppBaseVehicleActualDetailsVo> getList(String sid,String orgSid) {
return baseMapper.getList(sid,orgSid);
}
}

5
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleactualsales/BaseVehicleActualSalesMapper.java

@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.yxt.anrui.base.api.basevehicleactualsales.AppBaseVehicleActualSalesVo;
import com.yxt.anrui.base.api.basevehicleactualsales.BaseVehicleActualSales;
import com.yxt.anrui.base.api.basevehicleactualsales.BaseVehicleActualSalesDetailsVo;
import com.yxt.anrui.base.api.basevehicleactualsales.BaseVehicleActualSalesVo;
@ -35,9 +36,11 @@ public interface BaseVehicleActualSalesMapper extends BaseMapper<BaseVehicleActu
* @return
*/
BaseVehicleActualSalesDetailsVo details(String sid);
int selectBySid(String list);
int updateFlowFiled(Map<String, Object> map);
AppBaseVehicleActualSalesVo getUnsoldBuyout(String sid);
}

12
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basevehicleactualsales/BaseVehicleActualSalesMapper.xml

@ -49,4 +49,16 @@
</if>
WHERE sid = #{sid}
</update>
<select id="getUnsoldBuyout" resultType="com.yxt.anrui.base.api.basevehicleactualsales.AppBaseVehicleActualSalesVo">
select sid,
createBySid as userSid,
taskId,
procInstId as procInsId,
applicationName as applyName,
DATE_FORMAT(createTime, '%Y-%m-%d') as date,
reason
from base_vehicle_actual_sales
where sid = #{sid}
</select>
</mapper>

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

@ -87,4 +87,9 @@ public class BaseVehicleActualSalesRest implements BaseVehicleActualSalesFeign {
public ResultBean breakProcess(BaseActualSalesTaskQuery query) {
return baseVehicleActualSalesService.breakProcess(query);
}
@Override
public ResultBean<AppBaseVehicleActualSalesVo> getUnsoldBuyout(String sid) {
return baseVehicleActualSalesService.getUnsoldBuyout(sid);
}
}

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

@ -5,8 +5,8 @@ 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.basevehicle.BaseVehicle;
import com.yxt.anrui.base.api.basevehicle.BaseVehicleDto;
import com.yxt.anrui.base.api.basevehicle.BaseVehicleUpdateQuery;
import com.yxt.anrui.base.api.basevehicleactualdetails.AppBaseVehicleActualDetailsVo;
import com.yxt.anrui.base.api.basevehicleactualdetails.BaseVehicleActualDetails;
import com.yxt.anrui.base.api.basevehicleactualdetails.BaseVehicleActualDetailsDto;
import com.yxt.anrui.base.api.basevehicleactualdetails.BaseVehicleActualDetailsVo;
@ -283,6 +283,9 @@ public class BaseVehicleActualSalesService extends MybatisBaseService<BaseVehicl
//创建BusinessVariables实体对象
BusinessVariables bv = new BusinessVariables();
Map<String, Object> variables = new HashMap<>();
Map<String, Object> appMap = new HashMap<>();
appMap.put("sid", businessSid);
variables.put("app", appMap);
bv.setOrgSidPath(orgSidPath);
bv.setBusinessSid(businessSid);
bv.setUserSid(dto.getUserSid());
@ -298,7 +301,7 @@ public class BaseVehicleActualSalesService extends MybatisBaseService<BaseVehicl
//更新车辆的结算状态为预买断
//结算状态设置为预买断
List<BaseVehicleActualDetailsDto> detailsList = dto.getDetailsList();
for (BaseVehicleActualDetailsDto f : detailsList){
for (BaseVehicleActualDetailsDto f : detailsList) {
BaseVehicle baseVehicle = baseVehicleService.selectByVinNo(f.getVinNo());
baseVehicle.setVinNo(f.getVinNo());
baseVehicle.setSettlementStatus(VehicleState.BuyoutEnum.PRE_BUYOUT.getCode());
@ -527,4 +530,18 @@ public class BaseVehicleActualSalesService extends MybatisBaseService<BaseVehicl
}
return rb.setMsg("操作失败!提交的数据不一致!");
}
public ResultBean<AppBaseVehicleActualSalesVo> getUnsoldBuyout(String sid) {
ResultBean<AppBaseVehicleActualSalesVo> rb = ResultBean.fireFail();
AppBaseVehicleActualSalesVo vo = baseMapper.getUnsoldBuyout(sid);
if (vo == null) {
return rb.setMsg("未售买断信息不存在");
}
//查询分公司sid
String orgSid = sysStaffOrgFeign.getPathSidByUserSid(vo.getUserSid()).getData();
//查询未售买断的车辆信息
List<AppBaseVehicleActualDetailsVo> records = baseVehicleActualDetailsService.getList(sid, orgSid);
vo.setRecords(records);
return rb.success().setData(vo);
}
}

33
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/unsoldBuyout/UnsoldBuyoutDetailsListVo.java

@ -0,0 +1,33 @@
package com.yxt.anrui.terminal.api.supplychain.unsoldBuyout;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @Author dimengzhe
* @Date 2022/8/19 17:01
* @Description
*/
@Data
public class UnsoldBuyoutDetailsListVo implements Vo {
private static final long serialVersionUID = -7849966997033501394L;
@ApiModelProperty("车型名称")
private String modelName;
@ApiModelProperty("车架号")
@JsonProperty("vin")
private String vinNo;
@ApiModelProperty("入库日期")
@JsonProperty("date")
private String inboundDate;
@ApiModelProperty("入库价")
@JsonProperty("costPrice")
private String inboundPrice;
@ApiModelProperty("车型sid")
private String modelSid;
@ApiModelProperty("配置sid")
private String configSid;
}

57
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/unsoldBuyout/UnsoldBuyoutFeign.java

@ -0,0 +1,57 @@
package com.yxt.anrui.terminal.api.supplychain.unsoldBuyout;
import com.yxt.anrui.terminal.api.supplychain.unsoldBuyout.flowable.UnsoldBuyoutDto;
import com.yxt.anrui.terminal.api.supplychain.unsoldBuyout.flowable.UnsoldBuyoutQuery;
import com.yxt.anrui.terminal.api.supplychain.unsoldBuyout.flowable.UnsoldBuyoutTaskQuery;
import com.yxt.common.core.result.ResultBean;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.cloud.openfeign.SpringQueryMap;
import org.springframework.web.bind.annotation.*;
/**
* @Author dimengzhe
* @Date 2022/8/19 16:13
* @Description
*/
@Api(tags = "未售买断")
@FeignClient(
contextId = "terminal-UnsoldBuyout",
name = "anrui-terminal",
path = "/supplychain/v1/unsoldBuyout",
fallback = UnsoldBuyoutFeignFallback.class)
public interface UnsoldBuyoutFeign {
@ApiOperation("未售买断详情")
@GetMapping("/getUnsoldBuyout/{sid}")
@ResponseBody
ResultBean<UnsoldBuyoutVo> getUnsoldBuyout(@PathVariable("sid") String sid);
@ApiOperation("办理")
@PutMapping("/agreeUnsoldBuyoutInfo")
@ResponseBody
ResultBean agreeUnsoldBuyoutInfo(@RequestBody UnsoldBuyoutDto dto);
@ApiOperation("驳回")
@PutMapping("/rejectUnsoldBuyoutInfo")
@ResponseBody
ResultBean rejectUnsoldBuyoutInfo(@RequestBody UnsoldBuyoutTaskQuery query);
@ApiOperation("撤回")
@PutMapping("/recallUnsoldBuyoutInfo")
@ResponseBody
ResultBean recallUnsoldBuyoutInfo(@RequestBody UnsoldBuyoutTaskQuery query);
@ApiOperation("终止")
@PutMapping("/stopUnsoldBuyoutInfo")
@ResponseBody
ResultBean stopUnsoldBuyoutInfo(@RequestBody UnsoldBuyoutTaskQuery query);
@ApiOperation("获取流程操作标题")
@GetMapping("/getFlowOperateTitle")
@ResponseBody
ResultBean<String> getFlowOperateTitle(@SpringQueryMap UnsoldBuyoutQuery query);
}

12
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/unsoldBuyout/UnsoldBuyoutFeignFallback.java

@ -0,0 +1,12 @@
package com.yxt.anrui.terminal.api.supplychain.unsoldBuyout;
import org.springframework.stereotype.Component;
/**
* @Author dimengzhe
* @Date 2022/8/19 16:14
* @Description
*/
@Component
public class UnsoldBuyoutFeignFallback {
}

35
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/unsoldBuyout/UnsoldBuyoutVo.java

@ -0,0 +1,35 @@
package com.yxt.anrui.terminal.api.supplychain.unsoldBuyout;
import com.yxt.anrui.base.api.basevehicleactualdetails.AppBaseVehicleActualDetailsVo;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @Author dimengzhe
* @Date 2022/8/19 16:14
* @Description
*/
@Data
public class UnsoldBuyoutVo implements Vo {
private static final long serialVersionUID = -6067264614659846824L;
@ApiModelProperty("未售买断sid")
private String sid;
@ApiModelProperty("用户sid")
private String userSid;
@ApiModelProperty("任务id")
private String taskId;
@ApiModelProperty("流程实例id")
private String procInsId;
@ApiModelProperty("申请人")
private String applyName;
@ApiModelProperty("申请日期")
private String date;
@ApiModelProperty("买断原因")
private String reason;
private List<AppBaseVehicleActualDetailsVo> records;
}

37
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/unsoldBuyout/flowable/UnsoldBuyoutDto.java

@ -0,0 +1,37 @@
package com.yxt.anrui.terminal.api.supplychain.unsoldBuyout.flowable;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.yxt.common.core.dto.Dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* @Author dimengzhe
* @Date 2022/8/19 17:49
* @Description
*/
@Data
public class UnsoldBuyoutDto implements Dto {
private static final long serialVersionUID = 942787097361510999L;
@ApiModelProperty(value = "任务id")
@NotBlank(message = "参数错误:taskId")
private String taskId;
@ApiModelProperty(value = "流程id")
@NotBlank(message = "参数错误:procInsId")
@JsonProperty("procInsId")
private String instanceId;
@ApiModelProperty(value = "意见")
private String comment;
@ApiModelProperty(value = "业务sid")
@NotBlank(message = "参数错误:businessSid")
private String businessSid;
@ApiModelProperty(value = "用户sid")
@NotBlank(message = "参数错误:userSid")
private String userSid;
@ApiModelProperty(value = "节点id")
@NotBlank(message = "参数错误:taskDefKey")
private String taskDefKey;
}

25
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/unsoldBuyout/flowable/UnsoldBuyoutQuery.java

@ -0,0 +1,25 @@
package com.yxt.anrui.terminal.api.supplychain.unsoldBuyout.flowable;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotNull;
/**
* @Author dimengzhe
* @Date 2022/8/19 17:49
* @Description
*/
@Data
public class UnsoldBuyoutQuery implements Query {
private static final long serialVersionUID = -8255233815307830327L;
@ApiModelProperty(value = "节点key")
private String taskDefKey;
@ApiModelProperty(value = "业务sid")
private String businessSid;
@ApiModelProperty(value = "0 上一环节 1下一环节")
@NotNull(message = "参数错误:next")
private Integer next;
}

47
anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/supplychain/unsoldBuyout/flowable/UnsoldBuyoutTaskQuery.java

@ -0,0 +1,47 @@
package com.yxt.anrui.terminal.api.supplychain.unsoldBuyout.flowable;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* @Author dimengzhe
* @Date 2022/8/19 17:49
* @Description
*/
@Data
public class UnsoldBuyoutTaskQuery implements Query {
private static final long serialVersionUID = 1167747530537116956L;
/**
* 终止驳回撤回
*/
@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")
@JsonProperty("procInsId")
private String instanceId;
}

56
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/supplychain/unsoldBuyout/UnsoldBuyoutRest.java

@ -0,0 +1,56 @@
package com.yxt.anrui.terminal.biz.supplychain.unsoldBuyout;
import com.yxt.anrui.terminal.api.supplychain.unsoldBuyout.UnsoldBuyoutFeign;
import com.yxt.anrui.terminal.api.supplychain.unsoldBuyout.UnsoldBuyoutVo;
import com.yxt.anrui.terminal.api.supplychain.unsoldBuyout.flowable.UnsoldBuyoutDto;
import com.yxt.anrui.terminal.api.supplychain.unsoldBuyout.flowable.UnsoldBuyoutQuery;
import com.yxt.anrui.terminal.api.supplychain.unsoldBuyout.flowable.UnsoldBuyoutTaskQuery;
import com.yxt.common.core.result.ResultBean;
import io.swagger.annotations.Api;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
/**
* @Author dimengzhe
* @Date 2022/8/19 17:10
* @Description
*/
@Api(tags = "未售买断")
@Controller
@RequestMapping("/supplychain/v1/unsoldBuyoutRest")
public class UnsoldBuyoutRest implements UnsoldBuyoutFeign {
@Autowired
private UnsoldBuyoutService unsoldBuyoutService;
@Override
public ResultBean<UnsoldBuyoutVo> getUnsoldBuyout(String sid) {
return unsoldBuyoutService.getUnsoldBuyout(sid);
}
@Override
public ResultBean agreeUnsoldBuyoutInfo(UnsoldBuyoutDto dto) {
return unsoldBuyoutService.agreeUnsoldBuyoutInfo(dto);
}
@Override
public ResultBean rejectUnsoldBuyoutInfo(UnsoldBuyoutTaskQuery query) {
return unsoldBuyoutService.rejectUnsoldBuyoutInfo(query);
}
@Override
public ResultBean recallUnsoldBuyoutInfo(UnsoldBuyoutTaskQuery query) {
return unsoldBuyoutService.recallUnsoldBuyoutInfo(query);
}
@Override
public ResultBean stopUnsoldBuyoutInfo(UnsoldBuyoutTaskQuery query) {
return unsoldBuyoutService.stopUnsoldBuyoutInfo(query);
}
@Override
public ResultBean<String> getFlowOperateTitle(UnsoldBuyoutQuery query) {
return unsoldBuyoutService.getFlowOperateTitle(query);
}
}

139
anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/supplychain/unsoldBuyout/UnsoldBuyoutService.java

@ -0,0 +1,139 @@
package com.yxt.anrui.terminal.biz.supplychain.unsoldBuyout;
import cn.hutool.core.bean.BeanUtil;
import com.yxt.anrui.base.api.basevehicleactualsales.AppBaseVehicleActualSalesVo;
import com.yxt.anrui.base.api.basevehicleactualsales.BaseVehicleActualSalesFeign;
import com.yxt.anrui.base.api.basevehicleactualsales.flow.ActualGetNodeQuery;
import com.yxt.anrui.base.api.basevehicleactualsales.flow.ActualGetNodeVo;
import com.yxt.anrui.base.api.basevehicleactualsales.flow.BaseActualSalesCompleteDto;
import com.yxt.anrui.base.api.basevehicleactualsales.flow.BaseActualSalesTaskQuery;
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 com.yxt.anrui.terminal.api.supplychain.unsoldBuyout.UnsoldBuyoutVo;
import com.yxt.anrui.terminal.api.supplychain.unsoldBuyout.flowable.UnsoldBuyoutDto;
import com.yxt.anrui.terminal.api.supplychain.unsoldBuyout.flowable.UnsoldBuyoutQuery;
import com.yxt.anrui.terminal.api.supplychain.unsoldBuyout.flowable.UnsoldBuyoutTaskQuery;
import com.yxt.common.core.result.ResultBean;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Collections;
import java.util.List;
/**
* @Author dimengzhe
* @Date 2022/8/19 17:13
* @Description
*/
@Service
public class UnsoldBuyoutService {
@Autowired
private BaseVehicleActualSalesFeign baseVehicleActualSalesFeign;
@Autowired
private SysUserFeign sysUserFeign;
@Autowired
private SysStaffOrgFeign sysStaffOrgFeign;
public ResultBean<UnsoldBuyoutVo> getUnsoldBuyout(String sid) {
ResultBean<UnsoldBuyoutVo> rb = ResultBean.fireFail();
ResultBean<AppBaseVehicleActualSalesVo> resultBean = baseVehicleActualSalesFeign.getUnsoldBuyout(sid);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
AppBaseVehicleActualSalesVo vo = resultBean.getData();
UnsoldBuyoutVo unsoldBuyoutVo = new UnsoldBuyoutVo();
BeanUtil.copyProperties(vo, unsoldBuyoutVo);
return rb.success().setData(unsoldBuyoutVo);
}
public ResultBean agreeUnsoldBuyoutInfo(UnsoldBuyoutDto dto) {
ResultBean rb = ResultBean.fireFail();
//根据用户sid获取staffSid
ResultBean<SysUserVo> userVoResultBean = sysUserFeign.fetchBySid(dto.getUserSid());
if (!userVoResultBean.getSuccess()) {
return rb.setMsg(userVoResultBean.getMsg());
}
//根据staffSid获取用户的组织全路径
ResultBean<SysStaffOrg> staffOrgResultBean = sysStaffOrgFeign.getOrgByStaffSid(userVoResultBean.getData().getStaffSid());
if (!staffOrgResultBean.getSuccess()) {
return rb.setMsg(staffOrgResultBean.getMsg());
}
//用户的组织全路径
String orgSidPath = staffOrgResultBean.getData().getOrgSidPath();
BaseActualSalesCompleteDto baseActualSalesCompleteDto = new BaseActualSalesCompleteDto();
BeanUtil.copyProperties(dto, baseActualSalesCompleteDto);
baseActualSalesCompleteDto.setOrgSidPath(orgSidPath);
ResultBean resultBean = baseVehicleActualSalesFeign.complete(baseActualSalesCompleteDto);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
return rb.success().setData(resultBean.getData());
}
public ResultBean rejectUnsoldBuyoutInfo(UnsoldBuyoutTaskQuery query) {
ResultBean rb = ResultBean.fireFail();
BaseActualSalesTaskQuery baseActualSalesTaskQuery = new BaseActualSalesTaskQuery();
BeanUtil.copyProperties(query, baseActualSalesTaskQuery);
ResultBean resultBean = baseVehicleActualSalesFeign.taskReject(baseActualSalesTaskQuery);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
return rb.success().setData(resultBean.getData());
}
public ResultBean recallUnsoldBuyoutInfo(UnsoldBuyoutTaskQuery query) {
ResultBean rb = ResultBean.fireFail();
BaseActualSalesTaskQuery baseActualSalesTaskQuery = new BaseActualSalesTaskQuery();
BeanUtil.copyProperties(query, baseActualSalesTaskQuery);
ResultBean resultBean = baseVehicleActualSalesFeign.revokeProcess(baseActualSalesTaskQuery);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
return rb.success().setData(resultBean.getData());
}
public ResultBean stopUnsoldBuyoutInfo(UnsoldBuyoutTaskQuery query) {
ResultBean rb = ResultBean.fireFail();
BaseActualSalesTaskQuery baseActualSalesTaskQuery = new BaseActualSalesTaskQuery();
BeanUtil.copyProperties(query, baseActualSalesTaskQuery);
ResultBean resultBean = baseVehicleActualSalesFeign.breakProcess(baseActualSalesTaskQuery);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
return rb.success().setData(resultBean.getData());
}
public ResultBean<String> getFlowOperateTitle(UnsoldBuyoutQuery query) {
ResultBean<String> rb = ResultBean.fireFail();
//0 上一环节 1下一环节
int next = query.getNext();
ActualGetNodeQuery getNodeQuery = new ActualGetNodeQuery();
BeanUtil.copyProperties(query, getNodeQuery);
String data = "";
if (next == 0) {
ResultBean<List<ActualGetNodeVo>> getPreviousNodesForReject = baseVehicleActualSalesFeign.getPreviousNodesForReject(getNodeQuery);
if (getPreviousNodesForReject.getSuccess()) {
getPreviousNodesForReject.getData().removeAll(Collections.singleton(null));
data = getPreviousNodesForReject.getData().get(0).getName();
} else {
return rb.setMsg(getPreviousNodesForReject.getMsg());
}
} else if (next == 1) {
ResultBean<List<ActualGetNodeVo>> getNextNodesForSubmit = baseVehicleActualSalesFeign.getNextNodesForSubmit(getNodeQuery);
if (getNextNodesForSubmit.getSuccess()) {
getNextNodesForSubmit.getData().removeAll(Collections.singleton(null));
data = getNextNodesForSubmit.getData().get(0).getName();
} else {
return rb.setMsg(getNextNodesForSubmit.getMsg());
}
} else {
return rb.setMsg("参数错误:next");
}
return rb.success().setData(data);
}
}
Loading…
Cancel
Save