1. 项目 合同 以及审核
This commit is contained in:
parent
6541eb6915
commit
cb219b2493
|
|
@ -1,47 +1,23 @@
|
||||||
package com.chushang.inspection.project.entity.dto;
|
package com.chushang.inspection.project.entity.dto;
|
||||||
|
|
||||||
import cn.hutool.core.date.DatePattern;
|
|
||||||
import com.chushang.common.mybatis.annotation.Condition;
|
|
||||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
import javax.validation.constraints.NotNull;
|
import javax.validation.constraints.NotNull;
|
||||||
import java.time.LocalDateTime;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @auther: zhao
|
* @auther: zhao
|
||||||
* @date: 2024/6/17 17:59
|
* @date: 2024/6/17 18:17
|
||||||
*/
|
*/
|
||||||
@Data
|
@Data
|
||||||
public class AuditDTO {
|
public class AuditDTO {
|
||||||
/**
|
|
||||||
* 多选 第三方id
|
|
||||||
*/
|
|
||||||
@Condition(name = "third_id", type = Condition.ConditionType.in)
|
|
||||||
private List<Long> thirdIds;
|
|
||||||
/**
|
/**
|
||||||
* 审核状态
|
* 审核状态
|
||||||
*/
|
*/
|
||||||
@Condition(name = "audit_status", type = Condition.ConditionType.eq)
|
@NotNull(message = "审核状态不能为空")
|
||||||
private Integer auditStatus;
|
private Integer auditStatus;
|
||||||
/**
|
/**
|
||||||
* 默认 合同审核
|
* 审核 结果
|
||||||
*/
|
*/
|
||||||
@Condition(name = "third_type", type = Condition.ConditionType.eq)
|
private String remark;
|
||||||
private Integer auditType = 1;
|
|
||||||
/**
|
|
||||||
* 审核人
|
|
||||||
*/
|
|
||||||
@Condition(name = "audit_user_id", type = Condition.ConditionType.eq)
|
|
||||||
private Long auditUserId;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 审核时间 区间
|
|
||||||
*/
|
|
||||||
@Condition(name = "audit_time", type = Condition.ConditionType.between)
|
|
||||||
@JsonFormat(pattern = DatePattern.NORM_DATETIME_PATTERN)
|
|
||||||
private List<LocalDateTime> auditTimes;
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,7 @@ package com.chushang.inspection.project.entity.dto;
|
||||||
import com.baomidou.mybatisplus.annotation.TableField;
|
import com.baomidou.mybatisplus.annotation.TableField;
|
||||||
import com.chushang.common.core.validator.Create;
|
import com.chushang.common.core.validator.Create;
|
||||||
import com.chushang.common.core.validator.Update;
|
import com.chushang.common.core.validator.Update;
|
||||||
|
import com.chushang.common.mybatis.annotation.Condition;
|
||||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
|
|
@ -24,6 +25,7 @@ public class ContractDTO {
|
||||||
* 合同Id
|
* 合同Id
|
||||||
*/
|
*/
|
||||||
@NotNull(message = "合同Id不能为空", groups = Update.class)
|
@NotNull(message = "合同Id不能为空", groups = Update.class)
|
||||||
|
@Condition(name = "contract_id", type = Condition.ConditionType.eq)
|
||||||
private Long contractId;
|
private Long contractId;
|
||||||
/**
|
/**
|
||||||
* 项目合同
|
* 项目合同
|
||||||
|
|
@ -54,4 +56,8 @@ public class ContractDTO {
|
||||||
* 查询枚举 AuditStatusEnums , 最终以字典表中project_audit_status字典编码为准
|
* 查询枚举 AuditStatusEnums , 最终以字典表中project_audit_status字典编码为准
|
||||||
*/
|
*/
|
||||||
private Integer auditStatus;
|
private Integer auditStatus;
|
||||||
|
/**
|
||||||
|
* 备注
|
||||||
|
*/
|
||||||
|
private String remark;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,46 @@
|
||||||
|
package com.chushang.inspection.project.entity.dto;
|
||||||
|
|
||||||
|
import cn.hutool.core.date.DatePattern;
|
||||||
|
import com.chushang.common.mybatis.annotation.Condition;
|
||||||
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @auther: zhao
|
||||||
|
* @date: 2024/6/17 17:59
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class PageAuditDTO {
|
||||||
|
/**
|
||||||
|
* 多选 第三方id
|
||||||
|
*/
|
||||||
|
@Condition(name = "third_id", type = Condition.ConditionType.in)
|
||||||
|
private List<Long> thirdIds;
|
||||||
|
/**
|
||||||
|
* 审核状态
|
||||||
|
*/
|
||||||
|
@Condition(name = "audit_status", type = Condition.ConditionType.eq)
|
||||||
|
private Integer auditStatus;
|
||||||
|
/**
|
||||||
|
* 默认 合同审核
|
||||||
|
*/
|
||||||
|
@Condition(name = "third_type", type = Condition.ConditionType.eq)
|
||||||
|
private Integer auditType = 1;
|
||||||
|
/**
|
||||||
|
* 审核人
|
||||||
|
*/
|
||||||
|
@Condition(name = "audit_user_id", type = Condition.ConditionType.eq)
|
||||||
|
private Long auditUserId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 审核时间 区间
|
||||||
|
*/
|
||||||
|
@Condition(name = "audit_time", type = Condition.ConditionType.between)
|
||||||
|
@JsonFormat(pattern = DatePattern.NORM_DATETIME_PATTERN)
|
||||||
|
private List<LocalDateTime> auditTimes;
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -7,6 +7,7 @@ import com.chushang.common.mybatis.base.BaseEntity;
|
||||||
import java.math.BigDecimal;
|
import java.math.BigDecimal;
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
import lombok.*;
|
import lombok.*;
|
||||||
|
|
||||||
|
|
@ -101,4 +102,10 @@ public class WrkProjectContract extends BaseEntity {
|
||||||
*/
|
*/
|
||||||
@TableField("dept_id")
|
@TableField("dept_id")
|
||||||
private Long deptId;
|
private Long deptId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 审核记录
|
||||||
|
*/
|
||||||
|
@TableField(exist = false)
|
||||||
|
private List<WrkAudit> audits;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,14 +1,14 @@
|
||||||
package com.chushang.inspection.project.controller;
|
package com.chushang.inspection.project.controller;
|
||||||
|
|
||||||
import com.chushang.common.core.web.AjaxResult;
|
import com.chushang.common.core.web.AjaxResult;
|
||||||
|
import com.chushang.common.mybatis.page.CommonParam;
|
||||||
import com.chushang.inspection.project.entity.dto.AuditDTO;
|
import com.chushang.inspection.project.entity.dto.AuditDTO;
|
||||||
|
import com.chushang.inspection.project.entity.dto.PageAuditDTO;
|
||||||
import com.chushang.inspection.project.service.WrkAuditService;
|
import com.chushang.inspection.project.service.WrkAuditService;
|
||||||
import com.chushang.security.annotation.RequiresPermissions;
|
import com.chushang.security.annotation.RequiresPermissions;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.validation.annotation.Validated;
|
import org.springframework.validation.annotation.Validated;
|
||||||
import org.springframework.web.bind.annotation.GetMapping;
|
import org.springframework.web.bind.annotation.*;
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
|
||||||
import org.springframework.web.bind.annotation.RestController;
|
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
|
|
||||||
|
|
@ -29,10 +29,37 @@ public class WrkAuditController {
|
||||||
*/
|
*/
|
||||||
@GetMapping(value = "/list")
|
@GetMapping(value = "/list")
|
||||||
// @RequiresPermissions("project:audit:list")
|
// @RequiresPermissions("project:audit:list")
|
||||||
public AjaxResult pageList(@Validated AuditDTO auditDTO){
|
public AjaxResult pageList(@Validated PageAuditDTO auditDTO){
|
||||||
return AjaxResult.success(auditService.pageList(auditDTO));
|
return AjaxResult.success(auditService.pageList(auditDTO));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 审核
|
||||||
|
*/
|
||||||
|
@PostMapping(value = "/audit/{auditId}")
|
||||||
|
// @RequiresPermissions("project:audit:audit")
|
||||||
|
public AjaxResult audit(@PathVariable Long auditId,
|
||||||
|
@RequestBody@Validated AuditDTO auditDTO)
|
||||||
|
{
|
||||||
|
auditService.audit(auditId, auditDTO);
|
||||||
|
return AjaxResult.success();
|
||||||
|
}
|
||||||
|
|
||||||
|
@DeleteMapping(value = "/del")
|
||||||
|
public AjaxResult del(){
|
||||||
|
|
||||||
|
return AjaxResult.success();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取合同详情
|
||||||
|
*/
|
||||||
|
@GetMapping(value = "/contract/{contractId}")
|
||||||
|
@RequiresPermissions(value = "inspection:contract:info")
|
||||||
|
public AjaxResult getContractInfo(@PathVariable Long contractId){
|
||||||
|
return AjaxResult.success(auditService.getContractInfo(contractId));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -134,7 +134,6 @@ public class WrkProjectController {
|
||||||
return AjaxResult.success(contractService.pageList(projectId, commonParam));
|
return AjaxResult.success(contractService.pageList(projectId, commonParam));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// /**
|
// /**
|
||||||
//
|
//
|
||||||
// /**
|
// /**
|
||||||
|
|
|
||||||
|
|
@ -3,18 +3,28 @@ package com.chushang.inspection.project.service;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import com.baomidou.mybatisplus.extension.service.IService;
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
|
import com.chushang.common.core.exception.utils.AssertUtil;
|
||||||
import com.chushang.common.mybatis.page.CommonParam;
|
import com.chushang.common.mybatis.page.CommonParam;
|
||||||
import com.chushang.common.mybatis.utils.PageResult;
|
import com.chushang.common.mybatis.utils.PageResult;
|
||||||
import com.chushang.common.mybatis.utils.WrapperUtils;
|
import com.chushang.common.mybatis.utils.WrapperUtils;
|
||||||
import com.chushang.datascope.annotation.DataScope;
|
import com.chushang.datascope.annotation.DataScope;
|
||||||
import com.chushang.inspection.project.entity.dto.AuditDTO;
|
import com.chushang.inspection.project.entity.dto.AuditDTO;
|
||||||
import com.chushang.inspection.project.entity.po.WrkProject;
|
import com.chushang.inspection.project.entity.dto.PageAuditDTO;
|
||||||
import lombok.Data;
|
import com.chushang.inspection.project.entity.po.WrkProjectContract;
|
||||||
|
import com.chushang.security.utils.SecurityUtils;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
import com.chushang.inspection.project.entity.po.WrkAudit;
|
import com.chushang.inspection.project.entity.po.WrkAudit;
|
||||||
import com.chushang.inspection.project.mapper.WrkAuditMapper;
|
import com.chushang.inspection.project.mapper.WrkAuditMapper;
|
||||||
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
import java.time.LocalDateTime;
|
||||||
|
import java.util.Arrays;
|
||||||
|
import java.util.Collections;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Objects;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @auther: zhao
|
* @auther: zhao
|
||||||
|
|
@ -24,8 +34,11 @@ import com.chushang.inspection.project.mapper.WrkAuditMapper;
|
||||||
@Service
|
@Service
|
||||||
public class WrkAuditService extends ServiceImpl<WrkAuditMapper, WrkAudit> implements IService<WrkAudit> {
|
public class WrkAuditService extends ServiceImpl<WrkAuditMapper, WrkAudit> implements IService<WrkAudit> {
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
WrkProjectContractService contractService;
|
||||||
|
|
||||||
@DataScope
|
@DataScope
|
||||||
public PageResult pageList(AuditDTO auditDTO)
|
public PageResult pageList(PageAuditDTO auditDTO)
|
||||||
{
|
{
|
||||||
CommonParam commonParam = CommonParam.buildPageRequest();
|
CommonParam commonParam = CommonParam.buildPageRequest();
|
||||||
LambdaQueryWrapper<WrkAudit> auditSql = WrapperUtils.builder(auditDTO,commonParam);
|
LambdaQueryWrapper<WrkAudit> auditSql = WrapperUtils.builder(auditDTO,commonParam);
|
||||||
|
|
@ -35,4 +48,72 @@ public class WrkAuditService extends ServiceImpl<WrkAuditMapper, WrkAudit> imple
|
||||||
);
|
);
|
||||||
return new PageResult(page);
|
return new PageResult(page);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@DataScope
|
||||||
|
public List<WrkAudit> allList(PageAuditDTO auditDTO)
|
||||||
|
{
|
||||||
|
CommonParam commonParam = CommonParam.buildAllRequest();
|
||||||
|
LambdaQueryWrapper<WrkAudit> auditSql = WrapperUtils.builder(auditDTO,commonParam);
|
||||||
|
return this.list(auditSql);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 合同 或者 项目 审核
|
||||||
|
*/
|
||||||
|
@Transactional
|
||||||
|
public void audit(Long auditId, AuditDTO audit)
|
||||||
|
{
|
||||||
|
|
||||||
|
WrkAudit byId = getById(auditId);
|
||||||
|
AssertUtil.invalidate(null == byId, "审核记录不存在");
|
||||||
|
Integer thirdAuditStatus = audit.getAuditStatus();
|
||||||
|
AssertUtil.invalidate(Objects.equals(byId.getAuditStatus(), thirdAuditStatus), "审核状态不能重复审核");
|
||||||
|
|
||||||
|
// 更新审核状态
|
||||||
|
WrkAudit wrkAudit = new WrkAudit();
|
||||||
|
// 此处为 新增一条 审核信息
|
||||||
|
// wrkAudit.setAuditId(auditId);
|
||||||
|
wrkAudit.setAuditStatus(audit.getAuditStatus());
|
||||||
|
wrkAudit.setAuditName(SecurityUtils.getUsername());
|
||||||
|
wrkAudit.setAuditUserId(SecurityUtils.getUserId());
|
||||||
|
wrkAudit.setRemark(audit.getRemark());
|
||||||
|
wrkAudit.setAuditTime(LocalDateTime.now());
|
||||||
|
wrkAudit.setThirdId(byId.getThirdId());
|
||||||
|
wrkAudit.setThirdType(byId.getThirdType());
|
||||||
|
// 此处需要判断 审核状态
|
||||||
|
/**
|
||||||
|
* 未提交 0
|
||||||
|
* 待初审 1
|
||||||
|
* 待复审 2
|
||||||
|
* 初审通过 3
|
||||||
|
* 复审通过 4
|
||||||
|
* 初审驳回 5
|
||||||
|
* 复审驳回 6
|
||||||
|
* 已撤销 7
|
||||||
|
*/
|
||||||
|
if (Objects.equals(byId.getThirdType(), 0)) {
|
||||||
|
// 项目审核
|
||||||
|
// projectService.updateState(byId.getThirdId(), auditStatus);
|
||||||
|
} else {
|
||||||
|
// 合同审核
|
||||||
|
contractService.updateAuditStatus(byId.getThirdId(), thirdAuditStatus);
|
||||||
|
}
|
||||||
|
// 同时需要更新 合同内的审核状态
|
||||||
|
updateById(wrkAudit);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取 合同以及合同对应的 审核列表
|
||||||
|
*/
|
||||||
|
public WrkProjectContract getContractInfo(Long contractId)
|
||||||
|
{
|
||||||
|
// 合同信息
|
||||||
|
WrkProjectContract contract = contractService.getById(contractId);
|
||||||
|
if (null != contract){
|
||||||
|
PageAuditDTO pageAuditDTO = new PageAuditDTO();
|
||||||
|
pageAuditDTO.setThirdIds(Collections.singletonList(contractId));
|
||||||
|
contract.setAudits(allList(pageAuditDTO));
|
||||||
|
}
|
||||||
|
return contract;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,7 @@ import cn.hutool.core.bean.BeanUtil;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import com.baomidou.mybatisplus.extension.service.IService;
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
|
import com.chushang.common.core.exception.utils.AssertUtil;
|
||||||
import com.chushang.common.mybatis.page.CommonParam;
|
import com.chushang.common.mybatis.page.CommonParam;
|
||||||
import com.chushang.common.mybatis.utils.PageResult;
|
import com.chushang.common.mybatis.utils.PageResult;
|
||||||
import com.chushang.common.mybatis.utils.WrapperUtils;
|
import com.chushang.common.mybatis.utils.WrapperUtils;
|
||||||
|
|
@ -33,9 +34,9 @@ public class WrkProjectContractService extends ServiceImpl<WrkProjectContractMap
|
||||||
public void delete(Long contractId) {
|
public void delete(Long contractId) {
|
||||||
WrkProjectContract contract = getById(contractId);
|
WrkProjectContract contract = getById(contractId);
|
||||||
Integer auditStatus = contract.getAuditStatus();
|
Integer auditStatus = contract.getAuditStatus();
|
||||||
if (3 == auditStatus || 4 == auditStatus){
|
// 不为 0 时, 合同不能删除
|
||||||
log.info("删除已经审核通过的项目");
|
AssertUtil.invalidate(0 != auditStatus && 7 != auditStatus, "当前合同无法删除, 请撤销后删除");
|
||||||
}
|
|
||||||
removeById(contractId);
|
removeById(contractId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -52,4 +53,15 @@ public class WrkProjectContractService extends ServiceImpl<WrkProjectContractMap
|
||||||
);
|
);
|
||||||
return new PageResult(page);
|
return new PageResult(page);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改 合同的 审核状态
|
||||||
|
*/
|
||||||
|
public void updateAuditStatus(Long contractId, Integer auditStatus) {
|
||||||
|
updateById(WrkProjectContract.builder()
|
||||||
|
.contractId(contractId)
|
||||||
|
.auditStatus(auditStatus)
|
||||||
|
.build());
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,7 @@ import cn.hutool.core.bean.BeanUtil;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import com.baomidou.mybatisplus.extension.service.IService;
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
|
import com.chushang.common.core.exception.utils.AssertUtil;
|
||||||
import com.chushang.common.mybatis.enums.Operator;
|
import com.chushang.common.mybatis.enums.Operator;
|
||||||
import com.chushang.common.mybatis.page.CommonParam;
|
import com.chushang.common.mybatis.page.CommonParam;
|
||||||
import com.chushang.common.mybatis.utils.PageResult;
|
import com.chushang.common.mybatis.utils.PageResult;
|
||||||
|
|
@ -11,6 +12,7 @@ import com.chushang.common.mybatis.utils.WrapperUtils;
|
||||||
import com.chushang.datascope.annotation.DataScope;
|
import com.chushang.datascope.annotation.DataScope;
|
||||||
import com.chushang.inspection.project.entity.dto.ContractDTO;
|
import com.chushang.inspection.project.entity.dto.ContractDTO;
|
||||||
import com.chushang.inspection.project.entity.dto.ProjectDTO;
|
import com.chushang.inspection.project.entity.dto.ProjectDTO;
|
||||||
|
import com.chushang.inspection.project.entity.po.WrkAudit;
|
||||||
import com.chushang.inspection.project.entity.po.WrkProjectContract;
|
import com.chushang.inspection.project.entity.po.WrkProjectContract;
|
||||||
import com.chushang.security.utils.SecurityUtils;
|
import com.chushang.security.utils.SecurityUtils;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
|
@ -33,6 +35,8 @@ import java.util.List;
|
||||||
public class WrkProjectService extends ServiceImpl<WrkProjectMapper, WrkProject> implements IService<WrkProject> {
|
public class WrkProjectService extends ServiceImpl<WrkProjectMapper, WrkProject> implements IService<WrkProject> {
|
||||||
@Resource
|
@Resource
|
||||||
WrkProjectContractService contractService;
|
WrkProjectContractService contractService;
|
||||||
|
@Resource
|
||||||
|
WrkAuditService auditService;
|
||||||
|
|
||||||
@DataScope
|
@DataScope
|
||||||
public PageResult pageList(WrkProject project, CommonParam commonParam) {
|
public PageResult pageList(WrkProject project, CommonParam commonParam) {
|
||||||
|
|
@ -55,7 +59,6 @@ public class WrkProjectService extends ServiceImpl<WrkProjectMapper, WrkProject>
|
||||||
Long deptId = SecurityUtils.getLoginUser().getSysUser().getDeptId();
|
Long deptId = SecurityUtils.getLoginUser().getSysUser().getDeptId();
|
||||||
// Long deptId = 200L;
|
// Long deptId = 200L;
|
||||||
wrkProject.setDeptId(deptId);
|
wrkProject.setDeptId(deptId);
|
||||||
|
|
||||||
ContractDTO contract = project.getContract();
|
ContractDTO contract = project.getContract();
|
||||||
LocalDateTime now = LocalDateTime.now();
|
LocalDateTime now = LocalDateTime.now();
|
||||||
// 项目合同
|
// 项目合同
|
||||||
|
|
@ -67,7 +70,6 @@ public class WrkProjectService extends ServiceImpl<WrkProjectMapper, WrkProject>
|
||||||
this.save(wrkProject);
|
this.save(wrkProject);
|
||||||
// 项目合同
|
// 项目合同
|
||||||
saveContract(contract);
|
saveContract(contract);
|
||||||
|
|
||||||
return wrkProject.getProjectId();
|
return wrkProject.getProjectId();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -138,13 +140,31 @@ public class WrkProjectService extends ServiceImpl<WrkProjectMapper, WrkProject>
|
||||||
contractService.save(projectContract);
|
contractService.save(projectContract);
|
||||||
updateState(contract.getProjectId(), projectEffect ? 1 : 0 );
|
updateState(contract.getProjectId(), projectEffect ? 1 : 0 );
|
||||||
|
|
||||||
|
Integer auditStatus = contract.getAuditStatus();
|
||||||
|
// 新增合同的审核记录
|
||||||
|
WrkAudit audit = new WrkAudit();
|
||||||
|
audit.setThirdType(1);
|
||||||
|
audit.setDeptId(deptId);
|
||||||
|
audit.setAuditStatus(auditStatus);
|
||||||
|
audit.setThirdId(projectContract.getContractId());
|
||||||
|
audit.setRemark(contract.getRemark());
|
||||||
|
auditService.save(audit);
|
||||||
|
|
||||||
return projectContract.getContractId();
|
return projectContract.getContractId();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Transactional
|
@Transactional
|
||||||
public Long updateContract(ContractDTO contract) {
|
public Long updateContract(ContractDTO contract) {
|
||||||
|
// 修改 合同时必须未提交或者已经撤销
|
||||||
|
LambdaQueryWrapper<WrkProjectContract> contractSql = WrapperUtils.builder(contract, null);
|
||||||
|
contractSql.last(Operator.LIMIT_ONE.getCharacter());
|
||||||
|
WrkProjectContract projectContract = contractService.getOne(contractSql);
|
||||||
|
AssertUtil.invalidate(null == projectContract, "合同不存在");
|
||||||
|
Integer auditStatus = projectContract.getAuditStatus();
|
||||||
|
AssertUtil.invalidate(0 != auditStatus && 7 != auditStatus, "当前合同已提交审核, 无法修改");
|
||||||
|
|
||||||
|
projectContract = new WrkProjectContract();
|
||||||
// 项目合同
|
// 项目合同
|
||||||
WrkProjectContract projectContract = WrkProjectContract.builder().build();
|
|
||||||
BeanUtil.copyProperties(contract, projectContract);
|
BeanUtil.copyProperties(contract, projectContract);
|
||||||
projectContract.setProjectId(null);
|
projectContract.setProjectId(null);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -46,7 +46,7 @@
|
||||||
<!-- jar包不包含唯一版本标识 -->
|
<!-- jar包不包含唯一版本标识 -->
|
||||||
<useUniqueVersions>false</useUniqueVersions>
|
<useUniqueVersions>false</useUniqueVersions>
|
||||||
<!--指定入口类 -->
|
<!--指定入口类 -->
|
||||||
<mainClass>com.chushang.LoanApplication</mainClass>
|
<mainClass>com.chushang.TaskApplication</mainClass>
|
||||||
</manifest>
|
</manifest>
|
||||||
<manifestEntries>
|
<manifestEntries>
|
||||||
<!--MANIFEST.MF 中 Class-Path 加入资源文件目录 -->
|
<!--MANIFEST.MF 中 Class-Path 加入资源文件目录 -->
|
||||||
|
|
|
||||||
|
|
@ -32,7 +32,6 @@ public class RemoteTaskController implements RemoteTaskService {
|
||||||
@PostMapping("/create")
|
@PostMapping("/create")
|
||||||
public Result<Long> createTask(@RequestBody CreateTaskDTO task, String source) {
|
public Result<Long> createTask(@RequestBody CreateTaskDTO task, String source) {
|
||||||
TaskInfo taskInfo = TaskInfo.builder()
|
TaskInfo taskInfo = TaskInfo.builder()
|
||||||
|
|
||||||
.applicationName(task.getApplicationName().getServiceName())
|
.applicationName(task.getApplicationName().getServiceName())
|
||||||
.className(task.getClassName())
|
.className(task.getClassName())
|
||||||
.methodName(task.getMethodName())
|
.methodName(task.getMethodName())
|
||||||
|
|
|
||||||
6
pom.xml
6
pom.xml
|
|
@ -21,11 +21,11 @@
|
||||||
<id>cloud</id>
|
<id>cloud</id>
|
||||||
<properties>
|
<properties>
|
||||||
<profiles.active>cloud</profiles.active>
|
<profiles.active>cloud</profiles.active>
|
||||||
<nacos.host>192.168.110.75:8848</nacos.host>
|
<nacos.host>192.168.1.168:16000,192.168.1.169:16000,192.168.1.98:16000</nacos.host>
|
||||||
<nacos.namespace>5512c576-2976-4334-b6f5-fe7c3014f654</nacos.namespace>
|
<nacos.namespace>11c67dc3-423c-4195-b945-ace6cb2323a1</nacos.namespace>
|
||||||
<nacos.group>DEFAULT_GROUP</nacos.group>
|
<nacos.group>DEFAULT_GROUP</nacos.group>
|
||||||
<nacos.username>nacos</nacos.username>
|
<nacos.username>nacos</nacos.username>
|
||||||
<nacos.password>nacos@123</nacos.password>
|
<nacos.password>qq630638001</nacos.password>
|
||||||
<sentinel-transport.dashboard>localhost:5003</sentinel-transport.dashboard>
|
<sentinel-transport.dashboard>localhost:5003</sentinel-transport.dashboard>
|
||||||
</properties>
|
</properties>
|
||||||
</profile>
|
</profile>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue