停止代账
This commit is contained in:
parent
64269c4ee4
commit
aab8c19da5
@ -56,7 +56,43 @@ public class PsApproverRecordController extends BaseController {
|
|||||||
public R<Void> approver(@NotBlank(message = "操作类型不能为空") String operate,
|
public R<Void> approver(@NotBlank(message = "操作类型不能为空") String operate,
|
||||||
@NotNull(message = "数据id不能为空") String id, String desc) {
|
@NotNull(message = "数据id不能为空") String id, String desc) {
|
||||||
String[] ids = id.split(",");
|
String[] ids = id.split(",");
|
||||||
contractInfoService.finish(psApproverRecordService.approver(operate, ids, desc));
|
contractInfoService.finish(psApproverRecordService.approver(operate, ids, desc, 0));
|
||||||
|
return R.ok();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 财务审批停止代账
|
||||||
|
*
|
||||||
|
* @param operate (2 通过 3拒绝)
|
||||||
|
* @param id 审批表id
|
||||||
|
* @param desc 备注(通过/拒绝原因)
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@SaCheckPermission("cw:apply:btn")
|
||||||
|
@RepeatSubmit()
|
||||||
|
@GetMapping("/cwApproverStopAccount")
|
||||||
|
public R<Void> cwApproverStopAccount(@NotBlank(message = "操作类型不能为空") String operate,
|
||||||
|
@NotNull(message = "数据id不能为空") String id, String desc) {
|
||||||
|
String[] ids = id.split(",");
|
||||||
|
contractInfoService.finish(psApproverRecordService.approver(operate, ids, desc, 1));
|
||||||
|
return R.ok();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 总裁审批停止代账
|
||||||
|
*
|
||||||
|
* @param operate (2 通过 3拒绝)
|
||||||
|
* @param id 审批表id
|
||||||
|
* @param desc 备注(通过/拒绝原因)
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@SaCheckPermission("zc:apply:btn")
|
||||||
|
@RepeatSubmit()
|
||||||
|
@GetMapping("/zcApproverStopAccount")
|
||||||
|
public R<Void> zcApproverStopAccount(@NotBlank(message = "操作类型不能为空") String operate,
|
||||||
|
@NotNull(message = "数据id不能为空") String id, String desc) {
|
||||||
|
String[] ids = id.split(",");
|
||||||
|
contractInfoService.finish(psApproverRecordService.approver(operate, ids, desc, 2));
|
||||||
return R.ok();
|
return R.ok();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -98,8 +98,8 @@ public class PsCompanyInfoController extends BaseController {
|
|||||||
@SaCheckPermission("business:companyInfo:list")
|
@SaCheckPermission("business:companyInfo:list")
|
||||||
@Log(title = "停止代账" )
|
@Log(title = "停止代账" )
|
||||||
@GetMapping("/applyTerminationService")
|
@GetMapping("/applyTerminationService")
|
||||||
public R<Void> terminationService(PsCompanyQueryBo queryBo, PageQuery pageQuery) {
|
public R<Void> terminationService(Long serviceCompanyId) {
|
||||||
psCompanyInfoService.terminationService(queryBo.getId());
|
psCompanyInfoService.terminationService(serviceCompanyId);
|
||||||
return R.ok();
|
return R.ok();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -236,7 +236,10 @@ public class PsCompanyInfoBo {
|
|||||||
* 跟进人员
|
* 跟进人员
|
||||||
*/
|
*/
|
||||||
private List<Long> followUsers;
|
private List<Long> followUsers;
|
||||||
|
/**
|
||||||
|
* 服务状态0终止1正常
|
||||||
|
*/
|
||||||
|
private Integer serviceStatus;
|
||||||
|
|
||||||
public BigDecimal getContractAmount(){
|
public BigDecimal getContractAmount(){
|
||||||
this.businessAmount = businessList == null ? new BigDecimal(0) : businessList.stream().map(PsContractBusinessBo::getBusinessAmount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add);
|
this.businessAmount = businessList == null ? new BigDecimal(0) : businessList.stream().map(PsContractBusinessBo::getBusinessAmount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add);
|
||||||
|
@ -0,0 +1,17 @@
|
|||||||
|
package com.pusong.business.enums;
|
||||||
|
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import lombok.Getter;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 审批表状态枚举
|
||||||
|
*/
|
||||||
|
@Getter
|
||||||
|
@AllArgsConstructor
|
||||||
|
public enum ApproverStepEnum {
|
||||||
|
INIT("0","未审批"),
|
||||||
|
CW_APPLY("1","财务审批成功"),
|
||||||
|
ZC_APPLY("2","总裁审批成功");
|
||||||
|
private String code;
|
||||||
|
private String text;
|
||||||
|
}
|
@ -46,9 +46,10 @@ public interface IPsApproverRecordService {
|
|||||||
*
|
*
|
||||||
* @param operate (2 通过 3拒绝)
|
* @param operate (2 通过 3拒绝)
|
||||||
* @param id 审批表id
|
* @param id 审批表id
|
||||||
|
* @param from 0通用审批 1财务审批代账 2总裁审批代账
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
String approver(String operate, String [] id,String desc);
|
String approver(String operate, String [] id,String desc, int from);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 根据条件查询最后一条审批失败的原因
|
* 根据条件查询最后一条审批失败的原因
|
||||||
|
@ -1,26 +1,18 @@
|
|||||||
package com.pusong.business.service.approver.impl;
|
package com.pusong.business.service.approver.impl;
|
||||||
|
|
||||||
import com.alibaba.fastjson.JSON;
|
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
||||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
||||||
import com.pusong.business.domain.PsApproverRecord;
|
import com.pusong.business.domain.PsApproverRecord;
|
||||||
import com.pusong.business.domain.PsContractInfo;
|
import com.pusong.business.domain.PsContractInfo;
|
||||||
import com.pusong.business.domain.bo.*;
|
import com.pusong.business.domain.bo.PsCompanyInfoBo;
|
||||||
import com.pusong.business.domain.vo.PsApproverRecordVo;
|
import com.pusong.business.domain.bo.PsContractBusinessBo;
|
||||||
|
import com.pusong.business.domain.bo.PsContractBusinessDetailBo;
|
||||||
|
import com.pusong.business.domain.bo.PsContractInfoBo;
|
||||||
import com.pusong.business.domain.vo.PsCompanyInfoVo;
|
import com.pusong.business.domain.vo.PsCompanyInfoVo;
|
||||||
import com.pusong.business.domain.vo.PsContractBusinessVo;
|
import com.pusong.business.domain.vo.PsContractBusinessVo;
|
||||||
import com.pusong.business.domain.vo.PsContractInfoVo;
|
import com.pusong.business.domain.vo.PsContractInfoVo;
|
||||||
import com.pusong.business.enums.ApproverStatusEnum;
|
|
||||||
import com.pusong.business.enums.ApproverTypeEnum;
|
import com.pusong.business.enums.ApproverTypeEnum;
|
||||||
import com.pusong.business.enums.CommonStatusEnum;
|
import com.pusong.business.enums.CommonStatusEnum;
|
||||||
import com.pusong.business.mapper.PsApproverRecordMapper;
|
|
||||||
import com.pusong.business.service.IPsContractBusinessService;
|
import com.pusong.business.service.IPsContractBusinessService;
|
||||||
import com.pusong.business.service.IPsContractInfoService;
|
import com.pusong.business.service.IPsContractInfoService;
|
||||||
import com.pusong.common.core.utils.MapstructUtils;
|
|
||||||
import com.pusong.common.core.utils.StringUtils;
|
|
||||||
import com.pusong.common.mybatis.core.page.PageQuery;
|
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.beans.BeanUtils;
|
import org.springframework.beans.BeanUtils;
|
||||||
@ -56,6 +48,7 @@ public class SignApproverServiceImpl extends ApproverAbstractServiceImpl {
|
|||||||
PsContractInfoBo bo = new PsContractInfoBo();
|
PsContractInfoBo bo = new PsContractInfoBo();
|
||||||
bo.setSignStatus(CommonStatusEnum.SUCCESS.getCode());
|
bo.setSignStatus(CommonStatusEnum.SUCCESS.getCode());
|
||||||
bo.setContactPersonName(vo.getContactPersonName());
|
bo.setContactPersonName(vo.getContactPersonName());
|
||||||
|
bo.setContractMain(vo.getContractMain());
|
||||||
//合同信息
|
//合同信息
|
||||||
PsContractInfo info = new PsContractInfo();
|
PsContractInfo info = new PsContractInfo();
|
||||||
BeanUtils.copyProperties(vo, info);
|
BeanUtils.copyProperties(vo, info);
|
||||||
|
@ -1,6 +1,8 @@
|
|||||||
package com.pusong.business.service.approver.impl;
|
package com.pusong.business.service.approver.impl;
|
||||||
|
|
||||||
import com.pusong.business.domain.PsApproverRecord;
|
import com.pusong.business.domain.PsApproverRecord;
|
||||||
|
import com.pusong.business.domain.bo.PsCompanyInfoBo;
|
||||||
|
import com.pusong.business.enums.ApproverStepEnum;
|
||||||
import com.pusong.business.enums.ApproverTypeEnum;
|
import com.pusong.business.enums.ApproverTypeEnum;
|
||||||
import com.pusong.business.mapper.PsApproverRecordMapper;
|
import com.pusong.business.mapper.PsApproverRecordMapper;
|
||||||
import com.pusong.business.mapper.PsTaskAppointMapper;
|
import com.pusong.business.mapper.PsTaskAppointMapper;
|
||||||
@ -29,11 +31,23 @@ public class StopAccountServiceImpl extends ApproverAbstractServiceImpl {
|
|||||||
private final IPsCompanyInfoService companyInfoService;
|
private final IPsCompanyInfoService companyInfoService;
|
||||||
@Resource
|
@Resource
|
||||||
private PsApproverRecordMapper recordMapper;
|
private PsApproverRecordMapper recordMapper;
|
||||||
|
|
||||||
|
private final IPsCompanyInfoService psCompanyInfoService;
|
||||||
@Override
|
@Override
|
||||||
public void success(PsApproverRecord psApproverRecord) {
|
public void success(PsApproverRecord psApproverRecord) {
|
||||||
|
if (ApproverStepEnum.INIT.getCode().equals(psApproverRecord.getUpdateData())){
|
||||||
|
//转给总裁
|
||||||
|
psApproverRecord.setUpdateData(ApproverStepEnum.CW_APPLY.getCode());
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (ApproverStepEnum.CW_APPLY.getCode().equals(psApproverRecord.getUpdateData())){
|
||||||
|
psApproverRecord.setUpdateData(ApproverStepEnum.ZC_APPLY.getCode());
|
||||||
//修改服务公司状态为终止
|
//修改服务公司状态为终止
|
||||||
|
PsCompanyInfoBo bo = new PsCompanyInfoBo();
|
||||||
|
bo.setId(Long.valueOf(psApproverRecord.getBusinessId()));
|
||||||
|
bo.setServiceStatus(0);
|
||||||
|
psCompanyInfoService.update(bo);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -9,6 +9,7 @@ import com.pusong.business.domain.PsApproverRecord;
|
|||||||
import com.pusong.business.domain.bo.PsApproverRecordBo;
|
import com.pusong.business.domain.bo.PsApproverRecordBo;
|
||||||
import com.pusong.business.domain.vo.PsApproverRecordVo;
|
import com.pusong.business.domain.vo.PsApproverRecordVo;
|
||||||
import com.pusong.business.enums.ApproverStatusEnum;
|
import com.pusong.business.enums.ApproverStatusEnum;
|
||||||
|
import com.pusong.business.enums.ApproverStepEnum;
|
||||||
import com.pusong.business.enums.ApproverTypeEnum;
|
import com.pusong.business.enums.ApproverTypeEnum;
|
||||||
import com.pusong.business.mapper.PsApproverRecordMapper;
|
import com.pusong.business.mapper.PsApproverRecordMapper;
|
||||||
import com.pusong.business.service.IPsApproverRecordService;
|
import com.pusong.business.service.IPsApproverRecordService;
|
||||||
@ -90,16 +91,27 @@ public class PsApproverRecordServiceImpl implements IPsApproverRecordService {
|
|||||||
*
|
*
|
||||||
* @param operate (2 通过 3拒绝)
|
* @param operate (2 通过 3拒绝)
|
||||||
* @param ids 审批表id
|
* @param ids 审批表id
|
||||||
|
* @param from 0通用审批 1财务审批代账 2总裁审批代账
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
@Transactional
|
@Transactional
|
||||||
public String approver(String operate, String[] ids, String desc){
|
public String approver(String operate, String[] ids, String desc, int from){
|
||||||
for (String idStr : ids) {
|
for (String idStr : ids) {
|
||||||
Long id = Long.valueOf(idStr);
|
Long id = Long.valueOf(idStr);
|
||||||
PsApproverRecord info = baseMapper.selectById(id);
|
PsApproverRecord info = baseMapper.selectById(id);
|
||||||
if(!StringUtils.equals(ApproverStatusEnum.INIT.getCode(), info.getApproverStatus())){
|
if(!StringUtils.equals(ApproverStatusEnum.INIT.getCode(), info.getApproverStatus())){
|
||||||
throw new ServiceException("操作失败:该审批状态已变更");
|
throw new ServiceException("操作失败:该审批状态已变更");
|
||||||
}
|
}
|
||||||
|
if (from == 1){
|
||||||
|
if (!ApproverStepEnum.INIT.getCode().equals(info.getUpdateData())){
|
||||||
|
throw new ServiceException("操作失败:当前阶段财务不能审批");
|
||||||
|
}
|
||||||
|
}else if(from == 2){
|
||||||
|
if (!ApproverStepEnum.CW_APPLY.getCode().equals(info.getUpdateData())){
|
||||||
|
throw new ServiceException("操作失败:当前阶段总裁不能审批");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
ApproverService service = container.getService(info.getBusinessType());
|
ApproverService service = container.getService(info.getBusinessType());
|
||||||
if(StringUtils.equals(ApproverStatusEnum.SUCCESS.getCode(),operate)){
|
if(StringUtils.equals(ApproverStatusEnum.SUCCESS.getCode(),operate)){
|
||||||
service.success(info);
|
service.success(info);
|
||||||
|
@ -630,11 +630,11 @@ public class PsContractInfoServiceImpl implements IPsContractInfoService {
|
|||||||
map.put("serviceCompany", bo.getServiceCompanyInfoList());
|
map.put("serviceCompany", bo.getServiceCompanyInfoList());
|
||||||
map.put("main", JSON.parseObject(main.getRemark()));// 合同主体信息
|
map.put("main", JSON.parseObject(main.getRemark()));// 合同主体信息
|
||||||
map.put("mainId", bo.getContractMain());
|
map.put("mainId", bo.getContractMain());
|
||||||
if (bo.getContractMain().equals("1")){
|
if ("1".equals(bo.getContractMain())){
|
||||||
map.put(MAINPREFIX, "zx-");
|
map.put(MAINPREFIX, "zx-");
|
||||||
}else if (bo.getContractMain().equals("2")){
|
}else if ("2".equals(bo.getContractMain())){
|
||||||
map.put(MAINPREFIX, "cs-");
|
map.put(MAINPREFIX, "cs-");
|
||||||
}else if (bo.getContractMain().equals("3")){
|
}else if ("3".equals(bo.getContractMain())){
|
||||||
map.put(MAINPREFIX, "sw-");
|
map.put(MAINPREFIX, "sw-");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -528,7 +528,7 @@ public class PsTaskServiceImpl implements IPsTaskService {
|
|||||||
|
|
||||||
|
|
||||||
lqw.eq(bo.getId() != null,"main.id",bo.getId());
|
lqw.eq(bo.getId() != null,"main.id",bo.getId());
|
||||||
lqw.in(bo.getExtendList() != null,"main.extend", bo.getExtendList());
|
lqw.in(bo.getExtendList() != null && !bo.getExtendList().isEmpty(),"main.extend", bo.getExtendList());
|
||||||
lqw.like(StringUtils.isNotBlank(bo.getContractCode()), "main.contract_code", bo.getContractCode());
|
lqw.like(StringUtils.isNotBlank(bo.getContractCode()), "main.contract_code", bo.getContractCode());
|
||||||
|
|
||||||
lqw.like(StringUtils.isNotBlank(bo.getCompanyName()), "com.company_name", bo.getCompanyName());//公司名称
|
lqw.like(StringUtils.isNotBlank(bo.getCompanyName()), "com.company_name", bo.getCompanyName());//公司名称
|
||||||
@ -702,9 +702,9 @@ public class PsTaskServiceImpl implements IPsTaskService {
|
|||||||
PageQuery pageQuery = new PageQuery();
|
PageQuery pageQuery = new PageQuery();
|
||||||
pageQuery.setPageSize(100);
|
pageQuery.setPageSize(100);
|
||||||
Page<PsApproverRecordVo> res = recordMapper.selectPageFreeApproverList(pageQuery.build(), lqw);
|
Page<PsApproverRecordVo> res = recordMapper.selectPageFreeApproverList(pageQuery.build(), lqw);
|
||||||
|
|
||||||
|
if (!res.getRecords().isEmpty()){
|
||||||
List<String> approverIds = res.getRecords().stream().map(PsApproverRecordVo::idStr).toList();
|
List<String> approverIds = res.getRecords().stream().map(PsApproverRecordVo::idStr).toList();
|
||||||
|
|
||||||
|
|
||||||
PsTaskQueryBo psTaskQueryBo = new PsTaskQueryBo();
|
PsTaskQueryBo psTaskQueryBo = new PsTaskQueryBo();
|
||||||
psTaskQueryBo.setExtendList(approverIds);
|
psTaskQueryBo.setExtendList(approverIds);
|
||||||
|
|
||||||
@ -715,6 +715,8 @@ public class PsTaskServiceImpl implements IPsTaskService {
|
|||||||
for (PsApproverRecordVo record : res.getRecords()) {
|
for (PsApproverRecordVo record : res.getRecords()) {
|
||||||
record.setPsTaskMainVo(approverIdMap.get(record.idStr()));
|
record.setPsTaskMainVo(approverIdMap.get(record.idStr()));
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -27,6 +27,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||||||
<sql id="queryTask">
|
<sql id="queryTask">
|
||||||
select main.*,
|
select main.*,
|
||||||
main.id main_id,
|
main.id main_id,
|
||||||
|
main.id mainid,
|
||||||
con.is_proxy con_is_proxy,
|
con.is_proxy con_is_proxy,
|
||||||
con.apply_date con_apply_date,
|
con.apply_date con_apply_date,
|
||||||
con.is_due con_is_due,
|
con.is_due con_is_due,
|
||||||
|
Loading…
Reference in New Issue
Block a user