Browse Source

排产申请通过后厂家认款推送一条信息

master
dimengzhe 3 years ago
parent
commit
f818f099ab
  1. 182
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemanufactorsubscription/BaseManufactorSubscriptionDto.java
  2. 22
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemanufactorsubscription/BaseManufactorSubscriptionFeign.java
  3. 8
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemanufactorsubscription/BaseManufactorSubscriptionFeignFallback.java
  4. 1
      anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehmodelconfig/BaseVehmodelConfigQuerys.java
  5. 115
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemanufactorsubscription/BaseManufactorSubscriptionRest.java
  6. 48
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemanufactorsubscription/BaseManufactorSubscriptionService.java
  7. 2
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleapply/BusVehicleApplyMapper.java
  8. 6
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleapply/BusVehicleApplyMapper.xml
  9. 71
      anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/busvehicleapply/BusVehicleApplyService.java

182
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemanufactorsubscription/BaseManufactorSubscriptionDto.java

@ -30,6 +30,7 @@ import com.yxt.common.core.dto.Dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* Project: manufactor_subscription(厂商认款) <br/>
@ -45,177 +46,16 @@ import io.swagger.annotations.ApiModelProperty;
* @since 1.0
*/
@ApiModel(value = "厂家认款表 数据传输对象", description = "厂家认款表 数据传输对象")
@Data
public class BaseManufactorSubscriptionDto implements Dto {
@ApiModelProperty("打款状态")
private String paymentState; // 打款状态
@ApiModelProperty("打款金额")
private String paymentMoney; // 打款金额
@ApiModelProperty("排产申请编号")
private String proSchAppNo; // 排产申请编号
@ApiModelProperty("认款日期")
private String subscriptionDate; // 认款日期
@ApiModelProperty("认款人")
private String subscriptionPeo; // 认款人
@ApiModelProperty("见证材料")
private String witMatUrl; // 见证材料
@ApiModelProperty("使用组织sid")
private String useOrgSid; // 使用组织sid
@ApiModelProperty("使用组织名称")
private String useOrgName; // 使用组织名称
@ApiModelProperty("创建组织sid")
private String createOrgSid; // 创建组织sid
@ApiModelProperty("创建组织名称")
private String createOrgName; // 创建组织名称
/**
* @return 打款状态
*/
public String getPaymentState(){
return paymentState;
}
/**
* @param paymentState 打款状态 to set
*/
public void setPaymentState(String paymentState){
this.paymentState = paymentState;
}
/**
* @return 打款金额
*/
public String getPaymentMoney(){
return paymentMoney;
}
/**
* @param paymentMoney 打款金额 to set
*/
public void setPaymentMoney(String paymentMoney){
this.paymentMoney = paymentMoney;
}
/**
* @return 排产申请编号
*/
public String getProSchAppNo(){
return proSchAppNo;
}
/**
* @param proSchAppNo 排产申请编号 to set
*/
public void setProSchAppNo(String proSchAppNo){
this.proSchAppNo = proSchAppNo;
}
/**
* @return 认款日期
*/
public String getSubscriptionDate(){
return subscriptionDate;
}
/**
* @param subscriptionDate 认款日期 to set
*/
public void setSubscriptionDate(String subscriptionDate){
this.subscriptionDate = subscriptionDate;
}
/**
* @return 认款人
*/
public String getSubscriptionPeo(){
return subscriptionPeo;
}
/**
* @param subscriptionPeo 认款人 to set
*/
public void setSubscriptionPeo(String subscriptionPeo){
this.subscriptionPeo = subscriptionPeo;
}
/**
* @return 见证材料
*/
public String getWitMatUrl(){
return witMatUrl;
}
/**
* @param witMatUrl 见证材料 to set
*/
public void setWitMatUrl(String witMatUrl){
this.witMatUrl = witMatUrl;
}
/**
* @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;
}
private static final long serialVersionUID = 192828391758690604L;
@ApiModelProperty("打款状态:0未打款,1已打款,2无需打款")
private String paymentState;
@ApiModelProperty("打款金额")
private String paymentMoney;
@ApiModelProperty(value = "认款状态:0未认款,1已认款")
private Integer state;
@ApiModelProperty("排产申请编号")
private String proSchAppNo;
}

22
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemanufactorsubscription/BaseManufactorSubscriptionFeign.java

@ -25,18 +25,16 @@
*********************************************************/
package com.yxt.anrui.base.api.basemanufactorsubscription;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
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.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import java.util.List;
/**
* Project: manufactor_subscription(厂商认款) <br/>
* File: BaseManufactorSubscriptionFeign.java <br/>
@ -65,22 +63,22 @@ public interface BaseManufactorSubscriptionFeign {
@ApiOperation("新增保存")
@PostMapping("/save")
public ResultBean save(@RequestBody BaseManufactorSubscriptionDto dto);
@ApiOperation("修改保存")
@PostMapping("/update/{sid}")
public ResultBean update(@RequestBody BaseManufactorSubscriptionDto dto, @PathVariable("sid") String sid);
/* @ApiOperation("修改保存")
@PostMapping("/update/{sid}")
public ResultBean update(@RequestBody BaseManufactorSubscriptionDto dto, @PathVariable("sid") String sid);
*/
@ApiOperation("厂家认款通过")
@PostMapping("/adopt/{sid}/{remarks}")
public ResultBean adopt(@PathVariable("sid") String sid,@PathVariable("remarks") String remarks);
public ResultBean adopt(@PathVariable("sid") String sid, @PathVariable("remarks") String remarks);
@ApiOperation("根据sid批量删除")
/* @ApiOperation("根据sid批量删除")
@PostMapping("/delBySids")
public ResultBean delBySids(@RequestBody String[] sids);
@ApiOperation("根据SID获取一条记录")
@GetMapping("/fetchBySid/{sid}")
public ResultBean<BaseManufactorSubscriptionVo> fetchBySid(@PathVariable("sid") String sid);
public ResultBean<BaseManufactorSubscriptionVo> fetchBySid(@PathVariable("sid") String sid);*/
/**
* 厂商认款见证材料上传

8
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basemanufactorsubscription/BaseManufactorSubscriptionFeignFallback.java

@ -60,17 +60,17 @@ public class BaseManufactorSubscriptionFeignFallback implements BaseManufactorSu
return ResultBean.fireFail().setMsg("接口manufactor_subscription/basemanufactorsubscription/save无法访问");
}
@Override
/* @Override
public ResultBean update(BaseManufactorSubscriptionDto dto, String sid) {
return ResultBean.fireFail().setMsg("接口manufactor_subscription/basemanufactorsubscription/update无法访问");
}
}*/
@Override
public ResultBean adopt(String sid,String remarks) {
return null;
}
@Override
/* @Override
public ResultBean delBySids(String[] sids) {
return ResultBean.fireFail().setMsg("接口manufactor_subscription/basemanufactorsubscription/delBySids无法访问");
}
@ -79,7 +79,7 @@ public class BaseManufactorSubscriptionFeignFallback implements BaseManufactorSu
public ResultBean<BaseManufactorSubscriptionVo> fetchBySid(String sid) {
ResultBean rb = ResultBean.fireFail();
return rb.setMsg("接口manufactor_subscription/basemanufactorsubscription/fetchBySid无法访问");
}
}*/
@Override
public ResultBean pictureUpload(String sid, MultipartFile file) {

1
anrui-base/anrui-base-api/src/main/java/com/yxt/anrui/base/api/basevehmodelconfig/BaseVehmodelConfigQuerys.java

@ -50,6 +50,7 @@ import java.util.List;
@Data
public class BaseVehmodelConfigQuerys implements Query {
private static final long serialVersionUID = 4709259975908909806L;
@ApiModelProperty(value = "分公司sid")
private String useOrgSid;
// @ApiModelProperty(value = "车型配置和常用配置")

115
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemanufactorsubscription/BaseManufactorSubscriptionRest.java

@ -25,7 +25,10 @@
*********************************************************/
package com.yxt.anrui.base.biz.basemanufactorsubscription;
import com.yxt.anrui.base.api.basevehiclemodelappendix.BaseVehicleModelAppendix;
import com.yxt.anrui.base.api.basemanufactorsubscription.BaseManufactorSubscriptionDto;
import com.yxt.anrui.base.api.basemanufactorsubscription.BaseManufactorSubscriptionFeign;
import com.yxt.anrui.base.api.basemanufactorsubscription.BaseManufactorSubscriptionQuery;
import com.yxt.anrui.base.api.basemanufactorsubscription.BaseManufactorSubscriptionVo;
import com.yxt.anrui.base.api.commonappendix.CommonAppendix;
import com.yxt.anrui.base.api.commonappendix.CommonAttachTypeEnum;
import com.yxt.anrui.base.biz.commonappendix.CommonAppendixService;
@ -37,14 +40,10 @@ import com.yxt.common.core.vo.PagerVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
import com.yxt.anrui.base.api.basemanufactorsubscription.BaseManufactorSubscription;
import com.yxt.anrui.base.api.basemanufactorsubscription.BaseManufactorSubscriptionQuery;
import com.yxt.anrui.base.api.basemanufactorsubscription.BaseManufactorSubscriptionVo;
import com.yxt.anrui.base.api.basemanufactorsubscription.BaseManufactorSubscriptionDto;
import com.yxt.anrui.base.api.basemanufactorsubscription.BaseManufactorSubscriptionFeign;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;
/**
@ -65,46 +64,42 @@ import org.springframework.web.multipart.MultipartFile;
@RequestMapping("v1/basemanufactorsubscription")
public class BaseManufactorSubscriptionRest implements BaseManufactorSubscriptionFeign {
@Autowired
private BaseManufactorSubscriptionService baseManufactorSubscriptionService;
@Autowired
private FileUploadComponent fileUploadComponent;
@Autowired
private CommonAppendixService commonAppendixService;
@Autowired
private BaseManufactorSubscriptionService baseManufactorSubscriptionService;
@Autowired
private FileUploadComponent fileUploadComponent;
@Autowired
private CommonAppendixService commonAppendixService;
@Override
@ApiOperation("根据条件分页查询数据的列表")
@PostMapping("/listPage")
public ResultBean<PagerVo<BaseManufactorSubscriptionVo>> listPage(@RequestBody PagerQuery<BaseManufactorSubscriptionQuery> pq){
ResultBean rb = ResultBean.fireFail();
PagerVo<BaseManufactorSubscriptionVo> pv = baseManufactorSubscriptionService.listPageVo(pq);
return rb.success().setData(pv);
}
@Override
@ApiOperation("根据条件分页查询数据的列表")
@PostMapping("/listPage")
public ResultBean<PagerVo<BaseManufactorSubscriptionVo>> listPage(@RequestBody PagerQuery<BaseManufactorSubscriptionQuery> pq) {
ResultBean rb = ResultBean.fireFail();
PagerVo<BaseManufactorSubscriptionVo> pv = baseManufactorSubscriptionService.listPageVo(pq);
return rb.success().setData(pv);
}
@Override
@ApiOperation("新增保存")
@PostMapping("/save")
public ResultBean save(@RequestBody BaseManufactorSubscriptionDto dto){
ResultBean rb = ResultBean.fireFail();
baseManufactorSubscriptionService.saveOrUpdateDto(dto);
return rb.success();
}
@Override
public ResultBean save(BaseManufactorSubscriptionDto dto) {
return baseManufactorSubscriptionService.saveDto(dto);
}
@Override
/*@Override
@ApiOperation("修改保存")
@PostMapping("/update/{sid}")
public ResultBean update(@RequestBody BaseManufactorSubscriptionDto dto, @PathVariable("sid") String sid){
ResultBean rb = ResultBean.fireFail();
baseManufactorSubscriptionService.updateBySid(dto.toMap(),sid);
return rb.success();
}
}*/
@Override
public ResultBean adopt(String sid,String remarks) {
return baseManufactorSubscriptionService.adopt(sid,remarks);
}
@Override
public ResultBean adopt(String sid, String remarks) {
return baseManufactorSubscriptionService.adopt(sid, remarks);
}
@Override
/*@Override
@ApiOperation("根据sid批量删除")
@PostMapping("/delBySids")
public ResultBean delBySids(@RequestBody String[] sids){
@ -120,27 +115,27 @@ public class BaseManufactorSubscriptionRest implements BaseManufactorSubscriptio
ResultBean rb = ResultBean.fireFail();
BaseManufactorSubscriptionVo vo = null;
return rb.success().setData(vo);
}
}*/
@Override
public ResultBean pictureUpload(String sid, MultipartFile file) {
ResultBean rb = ResultBean.fireFail();
if (file == null || file.isEmpty()) {
return rb.setMsg("文件为空");
}
rb = fileUploadComponent.uploadFile(file);
FileUploadResult data = (FileUploadResult)rb.getData();
commonAppendixService.deleteFiles(sid);
CommonAppendix commonAppendix = new CommonAppendix();
commonAppendix.setLinkSid(sid);
commonAppendix.setFilePath(data.getFilePath());
commonAppendix.setAttachType(CommonAttachTypeEnum.MANUFACTOR_SUB.getAttachType());
commonAppendix.setFileName(data.getSourceFileName());
commonAppendix.setFileSize(data.getSize());
String sourceFileName = data.getSourceFileName();
commonAppendix.setFileType(sourceFileName.substring(sourceFileName.lastIndexOf(".")));
commonAppendixService.save(commonAppendix);
baseManufactorSubscriptionService.updateWitMatUrl(data.getFilePath(),sid);
return rb.success().setMsg("上传成功");
}
@Override
public ResultBean pictureUpload(String sid, MultipartFile file) {
ResultBean rb = ResultBean.fireFail();
if (file == null || file.isEmpty()) {
return rb.setMsg("文件为空");
}
rb = fileUploadComponent.uploadFile(file);
FileUploadResult data = (FileUploadResult) rb.getData();
commonAppendixService.deleteFiles(sid);
CommonAppendix commonAppendix = new CommonAppendix();
commonAppendix.setLinkSid(sid);
commonAppendix.setFilePath(data.getFilePath());
commonAppendix.setAttachType(CommonAttachTypeEnum.MANUFACTOR_SUB.getAttachType());
commonAppendix.setFileName(data.getSourceFileName());
commonAppendix.setFileSize(data.getSize());
String sourceFileName = data.getSourceFileName();
commonAppendix.setFileType(sourceFileName.substring(sourceFileName.lastIndexOf(".")));
commonAppendixService.save(commonAppendix);
baseManufactorSubscriptionService.updateWitMatUrl(data.getFilePath(), sid);
return rb.success().setMsg("上传成功");
}
}

48
anrui-base/anrui-base-biz/src/main/java/com/yxt/anrui/base/biz/basemanufactorsubscription/BaseManufactorSubscriptionService.java

@ -28,19 +28,17 @@ package com.yxt.anrui.base.biz.basemanufactorsubscription;
import cn.hutool.core.bean.BeanUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.anrui.base.api.basemanufactorsubscription.BaseManufactorSubscription;
import com.yxt.anrui.base.api.basemanufactorsubscription.BaseManufactorSubscriptionDto;
import com.yxt.anrui.base.api.basemanufactorsubscription.BaseManufactorSubscriptionQuery;
import com.yxt.anrui.base.api.basemanufactorsubscription.BaseManufactorSubscriptionVo;
import com.yxt.common.base.config.component.FileUploadComponent;
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.basemanufactorsubscription.BaseManufactorSubscription;
import com.yxt.anrui.base.api.basemanufactorsubscription.BaseManufactorSubscriptionQuery;
import com.yxt.anrui.base.api.basemanufactorsubscription.BaseManufactorSubscriptionVo;
import com.yxt.anrui.base.api.basemanufactorsubscription.BaseManufactorSubscriptionDto;
import com.yxt.anrui.base.api.basemanufactorsubscription.BaseManufactorSubscriptionFeign;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -65,14 +63,14 @@ public class BaseManufactorSubscriptionService extends MybatisBaseService<BaseMa
@Autowired
private FileUploadComponent fileUploadComponent;
public PagerVo<BaseManufactorSubscription> listPage(PagerQuery<BaseManufactorSubscriptionQuery> pq) {
/* public PagerVo<BaseManufactorSubscription> listPage(PagerQuery<BaseManufactorSubscriptionQuery> pq) {
BaseManufactorSubscriptionQuery query = pq.getParams();
QueryWrapper<BaseManufactorSubscription> qw = createQueryWrapper(query);
IPage<BaseManufactorSubscription> page = PagerUtil.queryToPage(pq);
IPage<BaseManufactorSubscription> pagging = baseMapper.selectPage(page, qw);
PagerVo<BaseManufactorSubscription> p = PagerUtil.pageToVo(pagging, null);
return p;
}
}*/
private QueryWrapper<BaseManufactorSubscription> createQueryWrapper(BaseManufactorSubscriptionQuery query) {
// todo: 这里根据具体业务调整查询条件
@ -126,43 +124,51 @@ public class BaseManufactorSubscriptionService extends MybatisBaseService<BaseMa
return p;
}
public List<BaseManufactorSubscriptionVo> listAllVo(BaseManufactorSubscriptionQuery query) {
/* public List<BaseManufactorSubscriptionVo> listAllVo(BaseManufactorSubscriptionQuery query) {
QueryWrapper<BaseManufactorSubscription> qw = createQueryWrapper(query);
return baseMapper.selectListAllVo(qw);
}
}*/
public List<BaseManufactorSubscriptionVo> listVo() {
/* public List<BaseManufactorSubscriptionVo> listVo() {
return baseMapper.selectListVo();
}
}*/
public void saveOrUpdateDto(BaseManufactorSubscriptionDto dto) {
/* public void saveOrUpdateDto(BaseManufactorSubscriptionDto dto) {
BaseManufactorSubscription entity = new BaseManufactorSubscription();
dto.fillEntity(entity);
this.saveOrUpdate(entity);
}
}*/
public BaseManufactorSubscriptionVo fetchByIdVo(String id) {
/* public BaseManufactorSubscriptionVo fetchByIdVo(String id) {
BaseManufactorSubscription entity = this.fetchById(id);
BaseManufactorSubscriptionVo vo = new BaseManufactorSubscriptionVo();
BeanUtil.copyProperties(entity, vo);
return vo;
}
}*/
public ResultBean adopt(String sid,String remarks) {
public ResultBean adopt(String sid, String remarks) {
ResultBean rb = ResultBean.fireFail();
BaseManufactorSubscription baseManufactorSubscription = fetchBySid(sid);
String witMatUrl = baseManufactorSubscription.getWitMatUrl();
if (StringUtils.isBlank(witMatUrl)) {
return rb.setMsg("请优先上传见证材料");
}
int i = baseMapper.adopt(sid,remarks);
int i = baseMapper.adopt(sid, remarks);
if (i == 0) {
return rb.setMsg("未通过");
}
return rb.success().setMsg("已通过");
}
public int updateWitMatUrl(String filePath,String sid) {
return baseMapper.updateWitMatUrl(filePath,sid);
public int updateWitMatUrl(String filePath, String sid) {
return baseMapper.updateWitMatUrl(filePath, sid);
}
public ResultBean saveDto(BaseManufactorSubscriptionDto dto) {
ResultBean rb = ResultBean.fireFail();
BaseManufactorSubscription baseManufactorSubscription = new BaseManufactorSubscription();
BeanUtil.copyProperties(dto, baseManufactorSubscription, "sid");
baseMapper.insert(baseManufactorSubscription);
return rb.success();
}
}

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

@ -32,4 +32,6 @@ public interface BusVehicleApplyMapper extends BaseMapper<BusVehicleApply> {
int updateFlowFiled(Map<String, Object> map);
int selectBySid(String list);
int selectNum(String bill);
}

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

@ -41,4 +41,10 @@
where length(nodeState) > 0
and find_in_set(sid, #{list})
</select>
<select id="selectNum" resultType="int">
select count(*)
from bus_vehicle_apply
where applicationCode LIKE concat(#{bill}, '%')
</select>
</mapper>

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

@ -5,6 +5,7 @@ import cn.hutool.core.date.DateUtil;
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.basemanufactorsubscription.BaseManufactorSubscriptionDto;
import com.yxt.anrui.base.api.busvehicleapply.*;
import com.yxt.anrui.base.api.busvehicleapply.flow.BusVehicleApplyTaskQuery;
import com.yxt.anrui.base.api.busvehicleapply.flow.GetNodeQuery;
@ -13,13 +14,19 @@ import com.yxt.anrui.base.api.busvehicleapply.flow.SubmitBusVehicleApplyDto;
import com.yxt.anrui.base.api.busvehicleapplydetail.BusVehicleApplyDetail;
import com.yxt.anrui.base.api.busvehicleapplydetail.BusVehicleApplyDetailDto;
import com.yxt.anrui.base.api.busvehicleapplydetail.BusVehicleApplyDetailVo;
import com.yxt.anrui.base.biz.basemanufactorsubscription.BaseManufactorSubscriptionService;
import com.yxt.anrui.base.biz.busvehicleapplydetail.BusVehicleApplyDetailService;
import com.yxt.anrui.base.common.enums.BillTypeEnum;
import com.yxt.anrui.base.common.utils.Rule;
import com.yxt.anrui.base.common.utils.domain.BillNo;
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.sysorganization.SysOrganizationFeign;
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrg;
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign;
import com.yxt.anrui.portal.api.sysuser.SysUserFeign;
@ -65,6 +72,11 @@ public class BusVehicleApplyService extends MybatisBaseService<BusVehicleApplyMa
@Autowired
private FlowTaskFeign flowTaskFeign;
@Autowired
private BaseManufactorSubscriptionService baseManufactorSubscriptionService;
@Autowired
private SysOrganizationFeign sysOrganizationFeign;
/**
* 分页列表
*
@ -153,8 +165,10 @@ public class BusVehicleApplyService extends MybatisBaseService<BusVehicleApplyMa
if (StringUtils.isBlank(sid)) {//新增
BusVehicleApply entity = new BusVehicleApply();
BeanUtil.copyProperties(dto, entity, "sid");
//申请编号规则:首字母+当前日期年月日
entity.setApplicationCode("PCSQ" + DateUtil.format(DateUtil.date(), "yyyyMMdd"));
//申请编号规则:单据名称大写首字母+品牌编码+分公司编码+年份+月份+4位顺序号
//获取单据名称大写首字母+品牌编码+分公司编码+年份+月份
String billNo = getApplyCode(dto);
entity.setApplicationCode(billNo);
entity.setApplicationDate(DateUtil.today());
List<BusVehicleApplyDetailDto> busVehicleApplyDetailDtoList = dto.getBusVehicleApplyDetailDtoList();
for (BusVehicleApplyDetailDto busVehicleApplyDetailDto : busVehicleApplyDetailDtoList) {
@ -185,6 +199,21 @@ public class BusVehicleApplyService extends MybatisBaseService<BusVehicleApplyMa
return rb.success().setData(sid);
}
public String getApplyCode(BusVehicleApplyDto dto) {
String userSid = dto.getCreateBySid();
//获取分公司sid
ResultBean<String> resultBean = sysStaffOrgFeign.getPathSidByUserSid(userSid);
ResultBean<SysOrganizationVo> resultBean1 = sysOrganizationFeign.fetchBySid(resultBean.getData());
String orgCode = resultBean1.getData().getOrgCode();
BillNo b = new BillNo();
b.setOrgCode(orgCode);
b.setBillType(BillTypeEnum.PCSQ.getBillType());
String bill = Rule.getBill(b);
int i = baseMapper.selectNum(bill);
String billNo = Rule.getBillNo(bill, i);
return billNo;
}
/**
* 提交
*
@ -307,9 +336,35 @@ public class BusVehicleApplyService extends MybatisBaseService<BusVehicleApplyMa
return rb.setMsg(resultBean.getMsg());
}
updateFlowFiled(BeanUtil.beanToMap(resultBean.getData()));
//ToDo:排产申请通过后的状态更新以及厂家认款的推送
//查询是否是最后一个环节,若是则更新排产申请的状态为通过。
//若状态为通过,需要打款的推送打款状态为未打款厂家认款记录;无需打款的,直接推送打款状态为无需打款的厂家认款记录。
//ToDo:排产申请通过厂家认款推送
//查询是否是最后一个环节,若状态为通过,需要打款的推送打款状态为未打款厂家认款记录;无需打款的,直接推送打款状态为无需打款的厂家认款记录。
//排产申请审核通过后,若申请订金的,需要同时生成财务待支付列表记录。
//生成一条未打款、未认款的厂家认款记录;若申请订金为0,则只需要生成一条无需打款、未认款的厂家认款记录。
if ("Event_end".equals(resultBean.getData().getTaskDefKey())) {
BaseManufactorSubscriptionDto baseManufactorSubscriptionDto = new BaseManufactorSubscriptionDto();
//判断申请的订金
List<BusVehicleApplyDetailVo> vo = busVehicleApplyDetailService.fetchByApplySid(bv.getBusinessSid());
vo.removeAll(Collections.singleton(null));
BigDecimal bigDecimal = new BigDecimal("0");
for (BusVehicleApplyDetailVo o : vo) {
String applyForDeposit = o.getApplyForDeposit();
if (StringUtils.isNotBlank(applyForDeposit)) {
bigDecimal = bigDecimal.add(new BigDecimal(applyForDeposit));
}
}
if (bigDecimal.compareTo(new BigDecimal("0")) == 1) {
//未打款、未认款的厂家认款记录
baseManufactorSubscriptionDto.setState(0);//未认款
baseManufactorSubscriptionDto.setPaymentState("0");//未打款
} else {
//无需打款、未认款的厂家认款记录
baseManufactorSubscriptionDto.setState(0);//未认款
baseManufactorSubscriptionDto.setPaymentState("2");//无需打款
}
baseManufactorSubscriptionDto.setPaymentMoney(bigDecimal.toString());//打款金额
baseManufactorSubscriptionDto.setProSchAppNo(busVehicleApply.getApplicationCode());//排产申请编号
ResultBean r = baseManufactorSubscriptionService.saveDto(baseManufactorSubscriptionDto);
}
return rb.success().setData(resultBean.getData());
} else {
return rb.setMsg("操作失败!提交的数据不一致");
@ -368,6 +423,9 @@ public class BusVehicleApplyService extends MybatisBaseService<BusVehicleApplyMa
String businessTaskId = busVehicleApply.getTaskId();
if (StringUtils.isNotBlank(businessTaskId)) {
if (businessTaskId.equals(query.getTaskId())) {
if (StringUtils.isBlank(query.getComment())) {
return rb.setMsg("参数错误:comment");
}
FlowTaskVo flowTaskVo = new FlowTaskVo();
BeanUtil.copyProperties(query, flowTaskVo);
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.taskReject(flowTaskVo);
@ -431,6 +489,9 @@ public class BusVehicleApplyService extends MybatisBaseService<BusVehicleApplyMa
String businessTaskId = busVehicleApply.getTaskId();
if (StringUtils.isNotBlank(businessTaskId)) {
if (businessTaskId.equals(query.getTaskId())) {
if (StringUtils.isBlank(query.getComment())) {
return rb.setMsg("参数错误:comment");
}
FlowTaskVo flowTaskVo = new FlowTaskVo();
BeanUtil.copyProperties(query, flowTaskVo);
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.breakProcess(flowTaskVo);

Loading…
Cancel
Save