生成合同
This commit is contained in:
parent
0ec418b257
commit
d92d80ca55
@ -167,13 +167,15 @@ public class PsContractInfoController extends BaseController {
|
||||
/**
|
||||
* 免费派单
|
||||
* @param contractCode 合同编码
|
||||
* @param businessType 服务类别
|
||||
* @param businessProject 服务项目
|
||||
* @return
|
||||
*/
|
||||
@Log(title = "免费派单")
|
||||
@SaCheckPermission("business:task:list")
|
||||
@GetMapping("/freeWork")
|
||||
public R<Void> freeWork(@org.jetbrains.annotations.NotNull String contractCode) {
|
||||
psContractInfoService.freeWork(contractCode);
|
||||
public R<Void> freeWork(@NotNull String contractCode,@NotNull String businessType,@NotNull String businessProject) {
|
||||
psContractInfoService.freeWork(contractCode,businessType,businessProject);
|
||||
return R.ok();
|
||||
}
|
||||
//
|
||||
|
@ -66,6 +66,17 @@ public class PsContractOperateController extends BaseController {
|
||||
return R.ok();
|
||||
}
|
||||
|
||||
/**
|
||||
* 合同添加退款记录
|
||||
*/
|
||||
@SaCheckPermission("business:contractOperate:addReturnRecord")
|
||||
@PostMapping(value = "/addReturnRecord", consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
|
||||
public R<Void> addReturnRecord(@RequestPart("files") List<MultipartFile> files,
|
||||
@Validated(AddGroup.class) PsContractPayBo psContractPayBo)throws Exception {
|
||||
payService.addPay( files, psContractPayBo);
|
||||
return R.ok();
|
||||
}
|
||||
|
||||
/**
|
||||
* 回传合同
|
||||
*/
|
||||
|
@ -36,16 +36,39 @@ public class PsContractPayController extends BaseController {
|
||||
|
||||
private final IPsContractPayService psContractPayService;
|
||||
|
||||
/* *//**
|
||||
/**
|
||||
* 查询合同回款记录列表
|
||||
*//*
|
||||
*/
|
||||
@SaCheckPermission("business:contractPay:list")
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<PsContractPayVo> list(PsContractPayBo bo, PageQuery pageQuery) {
|
||||
return psContractPayService.queryPageList(bo, pageQuery);
|
||||
public List<PsContractPayVo> list(@NotBlank(message = "合同编码不能为空") String contractCode) {
|
||||
return psContractPayService.queryListByContractCode(contractCode,null,null);
|
||||
}
|
||||
/**
|
||||
* 获取合同回款记录详细信息
|
||||
*
|
||||
* @param id 主键
|
||||
*/
|
||||
@SaCheckPermission("business:contractPay:query")
|
||||
@GetMapping("/{id}")
|
||||
public R<PsContractPayVo> getInfo(@NotNull(message = "主键不能为空")
|
||||
@PathVariable Long id) {
|
||||
return R.ok(psContractPayService.queryById(id));
|
||||
}
|
||||
|
||||
*//**
|
||||
/**
|
||||
* 修改合同回款记录
|
||||
*/
|
||||
// @SaCheckPermission("business:contractPay:edit")
|
||||
// @Log(title = "合同回款记录", businessType = BusinessType.UPDATE)
|
||||
// @RepeatSubmit()
|
||||
// @PutMapping()
|
||||
// public R<Void> edit(@Validated(EditGroup.class) @RequestBody PsContractPayBo bo) {
|
||||
// return toAjax(psContractPayService.updateById(bo));
|
||||
// }
|
||||
|
||||
|
||||
/**
|
||||
* 导出合同回款记录列表
|
||||
*//*
|
||||
@SaCheckPermission("business:contractPay:export")
|
||||
|
@ -143,6 +143,20 @@ public class PsTaskController extends BaseController {
|
||||
return R.ok();
|
||||
}
|
||||
|
||||
/**
|
||||
* 免费工单任务作废
|
||||
* @param id 任务主表id
|
||||
* @param desc 作废原因
|
||||
* @return
|
||||
*/
|
||||
@Log(title = "免费工单任务作废")
|
||||
@SaCheckPermission("business:task:list")
|
||||
@GetMapping("/cancel")
|
||||
public R<Void> taskReset(@NotNull("任务id不能为空") Long id,@NotNull("作废原因不能为空") String desc) {
|
||||
psTaskMainService.cancel(id,desc);
|
||||
return R.ok();
|
||||
}
|
||||
|
||||
|
||||
// /**
|
||||
// * 导出主任务列表
|
||||
|
@ -58,7 +58,7 @@ public class PsContractPay extends TenantEntity {
|
||||
private String payType;
|
||||
|
||||
/**
|
||||
* 支付方式(1扫码,2对公,3现金)
|
||||
* 支付方式(1扫码,2对公,3现金,4对私)
|
||||
*/
|
||||
private String payMode;
|
||||
|
||||
|
@ -48,26 +48,23 @@ public class PsContractPayBo {
|
||||
/**
|
||||
* 回款日期
|
||||
*/
|
||||
@NotNull(message = "回款日期不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
private Date payDate;
|
||||
|
||||
/**
|
||||
* 回款类型(1全款,2分期)
|
||||
*/
|
||||
@NotBlank(message = "回款类型(1全款,2分期)不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String payType;
|
||||
|
||||
/**
|
||||
* 支付方式(1扫码,2对公,3现金)
|
||||
* 支付方式(1扫码,2对公,3现金,4对私)
|
||||
*/
|
||||
@NotBlank(message = "支付方式(1扫码,2对公,3现金)不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
@NotBlank(message = "支付方式(1扫码,2对公,3现金,4对私)不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String payMode;
|
||||
|
||||
/**
|
||||
* 收款主体
|
||||
*/
|
||||
@NotBlank(message = "收款主体不能为空", groups = { AddGroup.class, EditGroup.class })
|
||||
private String gathMain;
|
||||
|
||||
// /**
|
||||
|
@ -68,7 +68,7 @@ public class PsContractPayVo implements Serializable {
|
||||
private String payType;
|
||||
|
||||
/**
|
||||
* 支付方式(1扫码,2对公,3现金)
|
||||
* 支付方式(1扫码,2对公,3现金,4对私)
|
||||
*/
|
||||
private String payMode;
|
||||
|
||||
|
@ -15,7 +15,10 @@ public enum ApproverTypeEnum {
|
||||
SIGN("sign","合同签章审批"),
|
||||
ROLBACK("rolback","回传合同审批"),
|
||||
TASKFINISH("taskFinish","任务完成审批"),
|
||||
PUBLIC("PUBLIC","公海认领审批");
|
||||
PUBLIC("public","公海认领审批"),
|
||||
TASKCANCE("taskcance","任务作废审批"),
|
||||
RETURN("RETURN","退款审批"),
|
||||
FREE("free","免费工单审批");
|
||||
private String code;
|
||||
private String text;
|
||||
}
|
||||
|
@ -3,15 +3,28 @@ package com.pusong.business.enums;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 支付状态美剧
|
||||
*/
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum PayStatusEnum {
|
||||
PAYAPPO("3","退款支付审批中"),
|
||||
PAYAPPOSUCC("4","退款支付审批成功"),
|
||||
PAYAPPOFIL("5","退款支付审批失败"),
|
||||
PAYING("0","支付中"),
|
||||
SUCCESS("1","成功"),
|
||||
FILE("2","失败");
|
||||
private String code;
|
||||
private String text;
|
||||
|
||||
/**
|
||||
* 查询收款记录时无用的状态
|
||||
* @return
|
||||
*/
|
||||
public static List<String> getStatus() {
|
||||
return List.of(PAYAPPO.getCode(),PAYAPPOSUCC.getCode(),PAYAPPOFIL.getCode());
|
||||
}
|
||||
}
|
||||
|
@ -15,10 +15,10 @@ public enum TaskStatusEnum {
|
||||
INIT("10","任务初始化(待派单)"),
|
||||
ING("20","进行中"),
|
||||
OA("25","完成审批中"),
|
||||
OAFAIL("26","完成审批失败"),
|
||||
FINISH("30","完成"),
|
||||
PAUSE("40","暂停"),
|
||||
CANCEL("50","作废");
|
||||
CANCEL("50","作废"),
|
||||
CANCELAPPO("55","作废审批中");
|
||||
|
||||
private String code;
|
||||
private String text;
|
||||
|
@ -105,8 +105,10 @@ public interface IPsContractInfoService {
|
||||
/**
|
||||
* 免费工单
|
||||
* @param contractCode 合同编码
|
||||
* @param businessType 服务类别
|
||||
* @param businessProject 服务项目
|
||||
*/
|
||||
void freeWork(String contractCode);
|
||||
void freeWork(String contractCode,String businessType,String businessProject);
|
||||
/**
|
||||
* 查询符合条件的合同基本信息列表
|
||||
*
|
||||
|
@ -36,14 +36,19 @@ public interface IPsContractPayService {
|
||||
* @param payBo 支付信息
|
||||
*/
|
||||
void addPay(List<MultipartFile> files, PsContractPayBo payBo);
|
||||
|
||||
/**
|
||||
* 添加退款记录
|
||||
* @param files 支付凭证
|
||||
* @param payBo 支付信息
|
||||
*/
|
||||
void returnPay(List<MultipartFile> files, PsContractPayBo payBo);
|
||||
/**
|
||||
* 根据主键id查询回款记录
|
||||
*
|
||||
* @param id 查询条件
|
||||
* @return 合同回款记录列表
|
||||
*/
|
||||
PsContractPay queryById(Long id);
|
||||
PsContractPayVo queryById(Long id);
|
||||
|
||||
/**
|
||||
* 根据id修改合同回款记录
|
||||
|
@ -99,6 +99,12 @@ public interface IPsTaskService {
|
||||
* @param executorId 任务新的执行者id
|
||||
*/
|
||||
void taskReset(Long id,Long executorId);
|
||||
/**
|
||||
* 免费工单任务作废
|
||||
* @param id 任务主表id
|
||||
* @param desc 作废原因
|
||||
*/
|
||||
void cancel(Long id,String desc);
|
||||
|
||||
/* *//**
|
||||
* 查询主任务
|
||||
|
@ -44,7 +44,7 @@ public class CancellaApproverServiceImpl extends ApproverAbstractServiceImpl {
|
||||
public void fail(PsApproverRecord psApproverRecord) {
|
||||
PsContractInfo info = new PsContractInfo();
|
||||
info.setContractCode(psApproverRecord.getContractCode());
|
||||
info.setRollBackStatus(CommonStatusEnum.FAIL.getCode());
|
||||
info.setContractStatus(psApproverRecord.getUpdateData());
|
||||
contractInfoService.updateByCode(info);
|
||||
}
|
||||
}
|
||||
|
@ -0,0 +1,60 @@
|
||||
package com.pusong.business.service.approver.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.pusong.business.domain.PsApproverRecord;
|
||||
import com.pusong.business.domain.PsTaskAppoint;
|
||||
import com.pusong.business.domain.PsTaskMain;
|
||||
import com.pusong.business.domain.vo.PsContractInfoVo;
|
||||
import com.pusong.business.enums.ApproverTypeEnum;
|
||||
import com.pusong.business.enums.TaskStatusEnum;
|
||||
import com.pusong.business.enums.TaskTypeEnum;
|
||||
import com.pusong.business.mapper.PsTaskAppointMapper;
|
||||
import com.pusong.business.mapper.PsTaskMainMapper;
|
||||
import com.pusong.business.service.IPsContractInfoService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* 免费工单审批
|
||||
*/
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
@Slf4j
|
||||
public class FreeApproverServiceImpl extends ApproverAbstractServiceImpl {
|
||||
@Override
|
||||
public String approverType() {
|
||||
return ApproverTypeEnum.FREE.getCode();
|
||||
}
|
||||
private final PsTaskMainMapper taskMainMapper;
|
||||
private final PsTaskAppointMapper taskAppointMapper;
|
||||
private final IPsContractInfoService contractInfoService;
|
||||
|
||||
/**
|
||||
* 1 审批成功 合同作废成功,合同状态显示为【已作废】
|
||||
* @param psApproverRecord 神瀑类
|
||||
*/
|
||||
@Override
|
||||
public void success(PsApproverRecord psApproverRecord) {
|
||||
PsContractInfoVo vo = contractInfoService.queryContractByCode(psApproverRecord.getBusinessId());
|
||||
PsTaskMain psTaskMain = new PsTaskMain();
|
||||
psTaskMain.setCompanyId(vo.getCompanyId());
|
||||
psTaskMain.setCustomId(vo.getCustomId());
|
||||
psTaskMain.setContractCode(vo.getContractCode());
|
||||
psTaskMain.setTaskType(TaskTypeEnum.FREE.getCode());
|
||||
psTaskMain.setTaskStatus(TaskStatusEnum.INIT.getCode());
|
||||
psTaskMain.setBusinessType(psApproverRecord.getUpdateData().split("@@")[0]);
|
||||
psTaskMain.setBusinessProject(psApproverRecord.getUpdateData().split("@@")[1]);
|
||||
taskMainMapper.insert(psTaskMain);
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 审批拒绝
|
||||
* @param psApproverRecord
|
||||
*/
|
||||
@Override
|
||||
public void fail(PsApproverRecord psApproverRecord) {
|
||||
|
||||
}
|
||||
}
|
@ -70,6 +70,10 @@ public class PayContractApproverServiceImpl extends ApproverAbstractServiceImpl
|
||||
|
||||
@Override
|
||||
public void fail(PsApproverRecord psApproverRecord) {
|
||||
|
||||
//修改回款记录状态
|
||||
PsContractPay update = new PsContractPay();
|
||||
update.setId(Long.valueOf(psApproverRecord.getBusinessId()));
|
||||
update.setPayStatus(PayStatusEnum.FILE.getCode());
|
||||
payService.updateById(update);
|
||||
}
|
||||
}
|
||||
|
@ -0,0 +1,47 @@
|
||||
package com.pusong.business.service.approver.impl;
|
||||
|
||||
import com.pusong.business.domain.PsApproverRecord;
|
||||
import com.pusong.business.domain.PsContractPay;
|
||||
import com.pusong.business.domain.PsCustomInfo;
|
||||
import com.pusong.business.enums.ApproverTypeEnum;
|
||||
import com.pusong.business.enums.CustomerStatusEnum;
|
||||
import com.pusong.business.enums.PayStatusEnum;
|
||||
import com.pusong.business.mapper.PsContractPayMapper;
|
||||
import com.pusong.business.mapper.PsCustomInfoMapper;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* 公海认领审批
|
||||
*/
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
@Slf4j
|
||||
public class PublicApproverServiceImpl extends ApproverAbstractServiceImpl {
|
||||
@Override
|
||||
public String approverType() {
|
||||
return ApproverTypeEnum.PUBLIC.getCode();
|
||||
}
|
||||
private final PsCustomInfoMapper customInfoMapper;
|
||||
|
||||
/**
|
||||
* 1 审批成功 退款审批成功
|
||||
* @param psApproverRecord 神瀑类
|
||||
*/
|
||||
@Override
|
||||
public void success(PsApproverRecord psApproverRecord) {
|
||||
PsCustomInfo info = customInfoMapper.selectById(Long.valueOf(psApproverRecord.getBusinessId()));
|
||||
info.setCustomStatus(CustomerStatusEnum.INIT.getCode());
|
||||
info.setCustomManager(Long.valueOf(psApproverRecord.getUpdateData()));
|
||||
customInfoMapper.updateById(info);
|
||||
}
|
||||
|
||||
/**
|
||||
* 审批拒绝 退款审批失败
|
||||
* @param psApproverRecord
|
||||
*/
|
||||
@Override
|
||||
public void fail(PsApproverRecord psApproverRecord) {
|
||||
}
|
||||
}
|
@ -0,0 +1,50 @@
|
||||
package com.pusong.business.service.approver.impl;
|
||||
|
||||
import com.pusong.business.domain.PsApproverRecord;
|
||||
import com.pusong.business.domain.PsContractPay;
|
||||
import com.pusong.business.domain.PsTaskMain;
|
||||
import com.pusong.business.enums.ApproverTypeEnum;
|
||||
import com.pusong.business.enums.PayStatusEnum;
|
||||
import com.pusong.business.enums.TaskStatusEnum;
|
||||
import com.pusong.business.mapper.PsContractPayMapper;
|
||||
import com.pusong.business.mapper.PsTaskMainMapper;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* 退款审批
|
||||
*/
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
@Slf4j
|
||||
public class ReturnApproverServiceImpl extends ApproverAbstractServiceImpl {
|
||||
@Override
|
||||
public String approverType() {
|
||||
return ApproverTypeEnum.RETURN.getCode();
|
||||
}
|
||||
private final PsContractPayMapper baseMapper;
|
||||
|
||||
/**
|
||||
* 1 审批成功 退款审批成功
|
||||
* @param psApproverRecord 神瀑类
|
||||
*/
|
||||
@Override
|
||||
public void success(PsApproverRecord psApproverRecord) {
|
||||
PsContractPay info = baseMapper.selectById(psApproverRecord.getBusinessId());
|
||||
info.setPayStatus(PayStatusEnum.PAYAPPOSUCC.getCode());
|
||||
baseMapper.updateById(info);
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 审批拒绝 退款审批失败
|
||||
* @param psApproverRecord
|
||||
*/
|
||||
@Override
|
||||
public void fail(PsApproverRecord psApproverRecord) {
|
||||
PsContractPay info = baseMapper.selectById(psApproverRecord.getBusinessId());
|
||||
info.setPayStatus(PayStatusEnum.PAYAPPOFIL.getCode());
|
||||
baseMapper.updateById(info);
|
||||
}
|
||||
}
|
@ -0,0 +1,60 @@
|
||||
package com.pusong.business.service.approver.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.pusong.business.domain.PsApproverRecord;
|
||||
import com.pusong.business.domain.PsContractInfo;
|
||||
import com.pusong.business.domain.PsTaskAppoint;
|
||||
import com.pusong.business.domain.PsTaskMain;
|
||||
import com.pusong.business.enums.ApproverTypeEnum;
|
||||
import com.pusong.business.enums.ContractStatusEnum;
|
||||
import com.pusong.business.enums.TaskStatusEnum;
|
||||
import com.pusong.business.mapper.PsTaskAppointMapper;
|
||||
import com.pusong.business.mapper.PsTaskMainMapper;
|
||||
import com.pusong.business.service.IPsContractInfoService;
|
||||
import com.pusong.business.service.IPsTaskService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* 任务作废审批
|
||||
*/
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
@Slf4j
|
||||
public class TaskCancellaApproverServiceImpl extends ApproverAbstractServiceImpl {
|
||||
@Override
|
||||
public String approverType() {
|
||||
return ApproverTypeEnum.TASKCANCE.getCode();
|
||||
}
|
||||
private final PsTaskMainMapper taskMainMapper;
|
||||
private final PsTaskAppointMapper taskAppointMapper;
|
||||
|
||||
/**
|
||||
* 1 审批成功 合同作废成功,合同状态显示为【已作废】
|
||||
* @param psApproverRecord 神瀑类
|
||||
*/
|
||||
@Override
|
||||
public void success(PsApproverRecord psApproverRecord) {
|
||||
//主任务作废
|
||||
PsTaskMain info = taskMainMapper.selectById(psApproverRecord.getBusinessId());
|
||||
info.setTaskStatus(TaskStatusEnum.CANCEL.getCode());
|
||||
taskMainMapper.updateById(info);
|
||||
//子任务作废
|
||||
taskAppointMapper.update(Wrappers.<PsTaskAppoint>lambdaUpdate()
|
||||
.set(PsTaskAppoint::getAppointStatus, TaskStatusEnum.AppointStatusEnum.CANCEL.getCode())
|
||||
.eq(PsTaskAppoint::getTaskId, info.getId()));
|
||||
}
|
||||
|
||||
/**
|
||||
* 审批拒绝 合同的状态变回原状态,并在原状态下方展示【拒绝原因】
|
||||
* @param psApproverRecord
|
||||
*/
|
||||
@Override
|
||||
public void fail(PsApproverRecord psApproverRecord) {
|
||||
//还原状态
|
||||
PsTaskMain info = taskMainMapper.selectById(psApproverRecord.getBusinessId());
|
||||
info.setTaskStatus(psApproverRecord.getUpdateData());
|
||||
taskMainMapper.updateById(info);
|
||||
}
|
||||
}
|
@ -0,0 +1,50 @@
|
||||
package com.pusong.business.service.approver.impl;
|
||||
|
||||
import com.pusong.business.domain.PsApproverRecord;
|
||||
import com.pusong.business.domain.PsContractInfo;
|
||||
import com.pusong.business.domain.PsTaskMain;
|
||||
import com.pusong.business.enums.ApproverTypeEnum;
|
||||
import com.pusong.business.enums.ContractStatusEnum;
|
||||
import com.pusong.business.enums.TaskStatusEnum;
|
||||
import com.pusong.business.mapper.PsTaskMainMapper;
|
||||
import com.pusong.business.service.IPsContractInfoService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* 任务完成审批
|
||||
*/
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
@Slf4j
|
||||
public class TaskFinishApproverServiceImpl extends ApproverAbstractServiceImpl {
|
||||
@Override
|
||||
public String approverType() {
|
||||
return ApproverTypeEnum.TASKFINISH.getCode();
|
||||
}
|
||||
private final PsTaskMainMapper taskMainMapper;
|
||||
|
||||
/**
|
||||
* 1 审批成功 任务的状态变为成功
|
||||
* @param psApproverRecord 神瀑类
|
||||
*/
|
||||
@Override
|
||||
public void success(PsApproverRecord psApproverRecord) {
|
||||
PsTaskMain info = taskMainMapper.selectById(psApproverRecord.getBusinessId());
|
||||
info.setTaskStatus(TaskStatusEnum.FINISH.getCode());
|
||||
taskMainMapper.updateById(info);
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 审批拒绝 任务的状态变为进行中
|
||||
* @param psApproverRecord
|
||||
*/
|
||||
@Override
|
||||
public void fail(PsApproverRecord psApproverRecord) {
|
||||
PsTaskMain info = taskMainMapper.selectById(psApproverRecord.getBusinessId());
|
||||
info.setTaskStatus(TaskStatusEnum.ING.getCode());
|
||||
taskMainMapper.updateById(info);
|
||||
}
|
||||
}
|
@ -283,10 +283,11 @@ public class PsContractInfoServiceImpl implements IPsContractInfoService {
|
||||
//todo (1)已派单:撤回任务派单,不在任务列表展示
|
||||
// (2)未派单:更新任务列表,不在任务列表展示
|
||||
}else{
|
||||
|
||||
if(StringUtils.isBlank(desc)){throw new ServiceException("请填写作废原因");}
|
||||
//有收款:点击【作废】填写【作废原因】后发起【作废】审批
|
||||
ApproverService service = container.getService(ApproverTypeEnum.CANCELLA.getCode());
|
||||
service.apply(contractCode,contractCode,desc, null);
|
||||
service.apply(contractCode,contractCode,desc, infoVo.getContractStatus());
|
||||
info.setContractStatus(ContractStatusEnum.CANAPPROVER.getCode());
|
||||
|
||||
}
|
||||
@ -395,16 +396,14 @@ public class PsContractInfoServiceImpl implements IPsContractInfoService {
|
||||
/**
|
||||
* 免费工单
|
||||
* @param contractCode 合同编码
|
||||
* @param businessType 服务类别
|
||||
* @param businessProject 服务项目
|
||||
*/
|
||||
public void freeWork(String contractCode) {
|
||||
public void freeWork(String contractCode,String businessType,String businessProject) {
|
||||
PsContractInfoVo info = this.queryContractByCode(contractCode);
|
||||
PsTaskMain psTaskMain = new PsTaskMain();
|
||||
psTaskMain.setCompanyId(info.getCompanyId());
|
||||
psTaskMain.setCustomId(info.getCustomId());
|
||||
psTaskMain.setContractCode(contractCode);
|
||||
psTaskMain.setTaskType(TaskTypeEnum.FREE.getCode());
|
||||
psTaskMain.setTaskStatus(TaskStatusEnum.INIT.getCode());
|
||||
taskMainService.insert(psTaskMain);
|
||||
//发起审批
|
||||
ApproverService service = container.getService(ApproverTypeEnum.FREE.getCode());
|
||||
service.apply(info.getContractCode(),info.getContractCode(),null, businessType+"@@"+businessProject);
|
||||
}
|
||||
|
||||
private QueryWrapper<PsContractInfo> buildQueryWrapper(PsContractInfoQueryBo bo) {
|
||||
@ -412,9 +411,10 @@ public class PsContractInfoServiceImpl implements IPsContractInfoService {
|
||||
//删除标志
|
||||
qw.eq( "info.del_flag", 0);//删除标志
|
||||
//合同表条件
|
||||
qw.eq( StringUtils.isNotBlank(bo.getContractStatus()),"contract_status", bo.getContractStatus());
|
||||
qw.in( CollectionUtils.isNotEmpty(bo.getInContractStatus()),"contract_status", bo.getInContractStatus());
|
||||
qw.notIn( CollectionUtils.isNotEmpty(bo.getNotInContractStatus()),"contract_status", bo.getNotInContractStatus());
|
||||
qw.eq( StringUtils.isNotBlank(bo.getContractStatus()),"info.contract_status", bo.getContractStatus());
|
||||
qw.in( CollectionUtils.isNotEmpty(bo.getInContractStatus()),"info.contract_status", bo.getInContractStatus());
|
||||
qw.notIn( CollectionUtils.isNotEmpty(bo.getNotInContractStatus()),"info.contract_status", bo.getNotInContractStatus());
|
||||
qw.eq( StringUtils.isNotBlank(bo.getContractCode()),"info.contract_code", bo.getContractCode());
|
||||
//客户表条件
|
||||
qw.like( StringUtils.isNotBlank(bo.getCustomName()),"cus.custom_name", bo.getCustomName());
|
||||
qw.like( StringUtils.isNotBlank(bo.getCustomMobile()),"cus.custom_mobile", bo.getCustomMobile());
|
||||
|
@ -1,9 +1,11 @@
|
||||
package com.pusong.business.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
|
||||
import com.pusong.business.enums.ApproverTypeEnum;
|
||||
import com.pusong.business.enums.PayStatusEnum;
|
||||
import com.pusong.business.service.approver.ApproverContainer;
|
||||
import com.pusong.business.service.approver.ApproverService;
|
||||
import com.pusong.common.core.exception.ServiceException;
|
||||
import com.pusong.common.core.utils.MapstructUtils;
|
||||
import com.pusong.common.core.utils.StringUtils;
|
||||
import com.pusong.common.mybatis.core.page.TableDataInfo;
|
||||
@ -55,6 +57,7 @@ public class PsContractPayServiceImpl implements IPsContractPayService {
|
||||
eq(PsContractPay::getContractCode, contractCode).eq(PsContractPay::getDelFlag,0)
|
||||
.eq(StringUtils.isNotBlank(business),PsContractPay::getBusinessType,business)
|
||||
.eq(enu != null ,PsContractPay::getPayStatus, enu.getCode())
|
||||
.notIn(PsContractPay::getPayStatus, PayStatusEnum.getStatus())//去掉无用的状态
|
||||
.orderByAsc(PsContractPay::getPayDate));
|
||||
return list == null?new ArrayList<>():list;
|
||||
}
|
||||
@ -81,7 +84,34 @@ public class PsContractPayServiceImpl implements IPsContractPayService {
|
||||
ApproverService service = container.getService(ApproverTypeEnum.PAY.getCode());
|
||||
service.apply(pay.getId()+"",pay.getContractCode(),null, null);
|
||||
}
|
||||
/**
|
||||
* 添加退款记录
|
||||
*
|
||||
* @param payBo 支付信息
|
||||
* @return 是否新增成功
|
||||
*/
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
@Override
|
||||
public void returnPay(List<MultipartFile> files, PsContractPayBo payBo){
|
||||
PsContractPay pay = MapstructUtils.convert(payBo, PsContractPay.class);
|
||||
if(StringUtils.equals("4",payBo.getPayType()) && CollectionUtils.isEmpty(files)){
|
||||
throw new ServiceException("请上传对私二维码");
|
||||
}
|
||||
if(CollectionUtils.isNotEmpty(files)){
|
||||
List<String> payCertifications = new ArrayList<>();
|
||||
for(MultipartFile file : files){
|
||||
SysOssVo vo = ossService.upload(file);
|
||||
payCertifications.add(vo.getOssId()+"");
|
||||
}
|
||||
pay.setGathMain(StringUtils.join(payCertifications,","));
|
||||
}
|
||||
|
||||
pay.setPayStatus(PayStatusEnum.PAYAPPO.getCode());
|
||||
baseMapper.insert(pay);
|
||||
//发起审批
|
||||
ApproverService service = container.getService(ApproverTypeEnum.RETURN.getCode());
|
||||
service.apply(pay.getId()+"",pay.getContractCode(),null, null);
|
||||
}
|
||||
/**
|
||||
* 根据主键id查询回款记录
|
||||
*
|
||||
@ -89,8 +119,8 @@ public class PsContractPayServiceImpl implements IPsContractPayService {
|
||||
* @return 合同回款记录列表
|
||||
*/
|
||||
@Override
|
||||
public PsContractPay queryById(Long id) {
|
||||
return baseMapper.selectById(id);
|
||||
public PsContractPayVo queryById(Long id) {
|
||||
return baseMapper.selectVoById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
@ -103,6 +133,20 @@ public class PsContractPayServiceImpl implements IPsContractPayService {
|
||||
public Boolean updateById(PsContractPay pay) {
|
||||
return baseMapper.updateById(pay) > 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改合同回款记录
|
||||
*
|
||||
* @param bo 合同回款记录
|
||||
* @return 是否修改成功
|
||||
*/
|
||||
// @Override
|
||||
// public Boolean updateByBo(PsContractPayBo bo) {
|
||||
// PsContractPay update = MapstructUtils.convert(bo, PsContractPay.class);
|
||||
// validEntityBeforeSave(update);
|
||||
// return baseMapper.updateById(update) > 0;
|
||||
// }
|
||||
|
||||
/* *//**
|
||||
* 查询合同回款记录
|
||||
*
|
||||
|
@ -36,6 +36,8 @@ import jakarta.annotation.Resource;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.boot.actuate.info.InfoEndpoint;
|
||||
import org.springframework.stereotype.Service;
|
||||
import com.pusong.business.domain.PsTaskMain;
|
||||
import com.pusong.business.mapper.PsTaskMainMapper;
|
||||
@ -64,6 +66,9 @@ public class PsTaskServiceImpl implements IPsTaskService {
|
||||
private final ISysOssService ossService;
|
||||
@Resource
|
||||
private ApproverContainer approverContainer;
|
||||
@Autowired
|
||||
private InfoEndpoint infoEndpoint;
|
||||
|
||||
/**
|
||||
* 新增主任务
|
||||
*
|
||||
@ -297,7 +302,23 @@ public class PsTaskServiceImpl implements IPsTaskService {
|
||||
appoint.setExecutor(executorId);
|
||||
appointMapper.updateById(appoint);
|
||||
}
|
||||
|
||||
/**
|
||||
* 免费工单任务作废
|
||||
* @param id 任务主表id
|
||||
* @param desc 作废原因
|
||||
*/
|
||||
public void cancel(Long id,String desc){
|
||||
PsTaskMain info = baseMapper.selectById(id);
|
||||
if(!StringUtils.equals(TaskTypeEnum.FREE.getCode(),info.getTaskType())){
|
||||
throw new ServiceException("只有免费工单的任务可以作废");
|
||||
}
|
||||
//发起审批
|
||||
ApproverService service = approverContainer.getService(ApproverTypeEnum.TASKCANCE.getCode());
|
||||
service.apply(id+"",info.getContractCode(),null,info.getTaskStatus());
|
||||
//修改状态为审批中
|
||||
info.setTaskStatus(TaskStatusEnum.CANCELAPPO.getCode());
|
||||
baseMapper.updateById(info);
|
||||
}
|
||||
|
||||
private QueryWrapper<PsTaskMain> buildQueryWrapper(PsTaskQueryBo bo) {
|
||||
QueryWrapper<PsTaskMain> lqw = new QueryWrapper<PsTaskMain>();
|
||||
|
Loading…
Reference in New Issue
Block a user