bug
This commit is contained in:
parent
38cf44de52
commit
40631b8bb7
@ -59,7 +59,7 @@ public class PsCompanyInfoController extends BaseController {
|
|||||||
*/
|
*/
|
||||||
@SaCheckPermission("business:companyInfo:list")
|
@SaCheckPermission("business:companyInfo:list")
|
||||||
@GetMapping("/pageList")
|
@GetMapping("/pageList")
|
||||||
public TableDataInfo<PsCompanyQueryVo> pageList(PsCompanyQueryBo bo, PageQuery pageQuery) {
|
public TableDataInfo<PsCompanyInfoVo> pageList(PsCompanyQueryBo bo, PageQuery pageQuery) {
|
||||||
return psCompanyInfoService.queryPageList(bo,pageQuery);
|
return psCompanyInfoService.queryPageList(bo,pageQuery);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -69,9 +69,26 @@ public class PsCompanyInfoController extends BaseController {
|
|||||||
@SaCheckPermission("business:customInfo:list")
|
@SaCheckPermission("business:customInfo:list")
|
||||||
@Log(title = "服务公司列表" )
|
@Log(title = "服务公司列表" )
|
||||||
@GetMapping("/serviceList")
|
@GetMapping("/serviceList")
|
||||||
public TableDataInfo<PsCompanyQueryVo> serviceList(PsCompanyQueryBo queryBo, PageQuery pageQuery) {
|
public TableDataInfo<PsCompanyInfoVo> serviceList(PsCompanyQueryBo queryBo, PageQuery pageQuery) {
|
||||||
return psCompanyInfoService.queryServiceCompany(queryBo, pageQuery);
|
return psCompanyInfoService.queryServiceCompany(queryBo, pageQuery);
|
||||||
}
|
}
|
||||||
|
@SaCheckPermission("business:customInfo:list")
|
||||||
|
@Log(title = "服务公司列表" )
|
||||||
|
@GetMapping("/searchServiceCompany")
|
||||||
|
public TableDataInfo<PsCompanyInfoVo> searchServiceCompany(@RequestParam("keyWorld") String keyWorld) {
|
||||||
|
return psCompanyInfoService.searchServiceCompany(keyWorld);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 停止代账
|
||||||
|
*/
|
||||||
|
@SaCheckPermission("business:customInfo:list")
|
||||||
|
@Log(title = "停止代账" )
|
||||||
|
@GetMapping("/applyTerminationService")
|
||||||
|
public R<Void> terminationService(PsCompanyQueryBo queryBo, PageQuery pageQuery) {
|
||||||
|
psCompanyInfoService.terminationService(queryBo.getId());
|
||||||
|
return R.ok();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -108,4 +125,6 @@ public class PsCompanyInfoController extends BaseController {
|
|||||||
@PathVariable Long[] ids) {
|
@PathVariable Long[] ids) {
|
||||||
return toAjax(psCompanyInfoService.deleteWithValidByIds(List.of(ids), true));
|
return toAjax(psCompanyInfoService.deleteWithValidByIds(List.of(ids), true));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -189,7 +189,6 @@ public class PsContractInfoController extends BaseController {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 免费派单
|
* 免费派单
|
||||||
* @param contractCode 合同编码
|
|
||||||
* @param businessType 服务类别
|
* @param businessType 服务类别
|
||||||
* @param businessProject 服务项目
|
* @param businessProject 服务项目
|
||||||
* @return
|
* @return
|
||||||
@ -198,8 +197,8 @@ public class PsContractInfoController extends BaseController {
|
|||||||
@Log(title = "免费派单")
|
@Log(title = "免费派单")
|
||||||
@SaCheckPermission("business:task:list")
|
@SaCheckPermission("business:task:list")
|
||||||
@GetMapping("/freeWork")
|
@GetMapping("/freeWork")
|
||||||
public R<Void> freeWork(@NotNull String contractCode,@NotNull String businessType,@NotNull String businessProject) {
|
public R<Void> freeWork(@NotNull String serviceCompanyId, @NotNull String businessType,@NotNull String businessProject) {
|
||||||
psContractInfoService.freeWork(contractCode,businessType,businessProject);
|
psContractInfoService.freeWork(serviceCompanyId, businessType, businessProject);
|
||||||
return R.ok();
|
return R.ok();
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
@ -211,8 +210,8 @@ public class PsContractInfoController extends BaseController {
|
|||||||
@Log(title = "根据合同编码查询服务进度")
|
@Log(title = "根据合同编码查询服务进度")
|
||||||
@SaCheckPermission("business:task:list")
|
@SaCheckPermission("business:task:list")
|
||||||
@GetMapping("/queryScheduleByCode")
|
@GetMapping("/queryScheduleByCode")
|
||||||
public R<ServiceScheduleVo> queryScheduleByCode(@NotBlank String contractCode) {
|
public R<ServiceScheduleVo> queryScheduleByCode(@NotBlank String contractCode, @NotBlank Long serviceCompanyId) {
|
||||||
return R.ok(psContractInfoService.queryScheduleByCode(contractCode));
|
return R.ok(psContractInfoService.queryScheduleByCode(contractCode, serviceCompanyId));
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
|
@ -136,7 +136,7 @@ public class PsCustomController extends BaseController {
|
|||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 已完成客户,, 废弃
|
* 已完成客户
|
||||||
* @param queryBo 查询
|
* @param queryBo 查询
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
|
@ -58,4 +58,9 @@ public class PsCompanyQueryBo {
|
|||||||
*/
|
*/
|
||||||
private String followUser;
|
private String followUser;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 1全部 2非托管服务 3 托管代账 4托管不代账
|
||||||
|
*/
|
||||||
|
private Integer type;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -123,10 +123,46 @@ public class PsApproverRecordVo implements Serializable {
|
|||||||
*/
|
*/
|
||||||
@Translation(type = TransConstant.USER_ID_TO_NICKNAME)
|
@Translation(type = TransConstant.USER_ID_TO_NICKNAME)
|
||||||
private Long customManager;
|
private Long customManager;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 签约公司id
|
||||||
|
*/
|
||||||
|
private Long companyId;
|
||||||
/**
|
/**
|
||||||
* 公司名
|
* 公司名
|
||||||
*/
|
*/
|
||||||
private String companyName;
|
private String companyName;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 签约个人时联系人姓名
|
||||||
|
*/
|
||||||
|
private String contactPersonName;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 签约个人时联系人手机号
|
||||||
|
*/
|
||||||
|
private String contactPersonPhone;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 签约个人时联系人身份证号
|
||||||
|
*/
|
||||||
|
private String contactPersonIdcard;
|
||||||
|
/**
|
||||||
|
* 签约公司信息(不会有服务类别)
|
||||||
|
*/
|
||||||
|
private PsCompanyInfoVo psCompanyInfoVo;
|
||||||
|
//
|
||||||
|
// /**
|
||||||
|
// * 公司所属区域
|
||||||
|
// */
|
||||||
|
// private String companyAdress;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 服务公司信息
|
||||||
|
*/
|
||||||
|
private List<PsCompanyInfoVo> servicePsCompanyInfoVo;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 客户名
|
* 客户名
|
||||||
*/
|
*/
|
||||||
@ -149,6 +185,12 @@ public class PsApproverRecordVo implements Serializable {
|
|||||||
* 合同总金额
|
* 合同总金额
|
||||||
*/
|
*/
|
||||||
private BigDecimal contractAmount;
|
private BigDecimal contractAmount;
|
||||||
|
|
||||||
|
@Translation(type = TransConstant.DICT_TYPE_TO_LABEL,other = "contract_status", mapper="contractStatus")
|
||||||
|
private String contractStatusName;
|
||||||
|
|
||||||
|
private String contractStatus;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 已付金额
|
* 已付金额
|
||||||
*/
|
*/
|
||||||
@ -186,4 +228,9 @@ public class PsApproverRecordVo implements Serializable {
|
|||||||
*/
|
*/
|
||||||
private String payCertification;
|
private String payCertification;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 退款详细信息
|
||||||
|
*/
|
||||||
|
private PsContractPayVo psContractPayVo;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -191,12 +191,17 @@ public class PsCompanyInfoVo implements Serializable {
|
|||||||
private Long customManager;
|
private Long customManager;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 服务状态
|
* 服务状态0终止1正常
|
||||||
*/
|
*/
|
||||||
private Integer serviceStatus;
|
private Integer serviceStatus;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 服务状态
|
* 终止原因
|
||||||
*/
|
*/
|
||||||
private String terminationReason;
|
private String terminationReason;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 终止审核状态 0未申请,1审核中,2同意 3拒绝
|
||||||
|
*/
|
||||||
|
private Integer terminationStatus;
|
||||||
}
|
}
|
||||||
|
@ -186,7 +186,7 @@ public class PsContractInfoVo implements Serializable {
|
|||||||
private String isOld;
|
private String isOld;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 是否续费
|
* 是否续费0新签 1续费
|
||||||
*/
|
*/
|
||||||
private String isDue;
|
private String isDue;
|
||||||
|
|
||||||
|
@ -160,7 +160,6 @@ public class PsTaskMainVo implements Serializable {
|
|||||||
*/
|
*/
|
||||||
private PsCompanyInfoVo psCompanySerivceVo;
|
private PsCompanyInfoVo psCompanySerivceVo;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 服务公司id
|
* 服务公司id
|
||||||
*/
|
*/
|
||||||
|
@ -4,6 +4,9 @@ import com.pusong.common.translation.annotation.Translation;
|
|||||||
import com.pusong.common.translation.constant.TransConstant;
|
import com.pusong.common.translation.constant.TransConstant;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
public class ServiceScheduleVo {
|
public class ServiceScheduleVo {
|
||||||
/**
|
/**
|
||||||
@ -30,30 +33,22 @@ public class ServiceScheduleVo {
|
|||||||
/**
|
/**
|
||||||
* 内勤
|
* 内勤
|
||||||
*/
|
*/
|
||||||
@Translation(type = TransConstant.USER_ID_TO_NICKNAME)
|
|
||||||
private Long in;
|
|
||||||
/**
|
/**
|
||||||
* 内勤是否已完成(1是0否)
|
* 内勤
|
||||||
*/
|
*/
|
||||||
private Integer inStatus;
|
List<UserAndStatus> in = new ArrayList<>();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 外勤
|
* 外勤
|
||||||
*/
|
*/
|
||||||
@Translation(type = TransConstant.USER_ID_TO_NICKNAME)
|
List<UserAndStatus> out = new ArrayList<>();
|
||||||
private Long out;
|
|
||||||
/**
|
|
||||||
* 外勤是否已完成(1是0否)
|
|
||||||
*/
|
|
||||||
private Integer outStatus;
|
|
||||||
/**
|
/**
|
||||||
* 特勤
|
* 特勤
|
||||||
*/
|
*/
|
||||||
@Translation(type = TransConstant.USER_ID_TO_NICKNAME)
|
List<UserAndStatus> secret = new ArrayList<>();
|
||||||
private Long secret;
|
|
||||||
/**
|
|
||||||
* 特勤是否已完成(1是0否)
|
|
||||||
*/
|
|
||||||
private Integer secretStatus;
|
|
||||||
/**
|
/**
|
||||||
* 回传
|
* 回传
|
||||||
*/
|
*/
|
||||||
@ -73,4 +68,32 @@ public class ServiceScheduleVo {
|
|||||||
* 是否已完成(1是 0否)
|
* 是否已完成(1是 0否)
|
||||||
*/
|
*/
|
||||||
private Integer isFinish;
|
private Integer isFinish;
|
||||||
|
|
||||||
|
|
||||||
|
public static class UserAndStatus{
|
||||||
|
/**
|
||||||
|
* 内勤
|
||||||
|
*/
|
||||||
|
@Translation(type = TransConstant.USER_ID_TO_NICKNAME)
|
||||||
|
private Long uid;
|
||||||
|
/**
|
||||||
|
* 内勤是否已完成(1是0否)
|
||||||
|
*/
|
||||||
|
private Integer status;
|
||||||
|
public UserAndStatus(Long uid, Integer status){
|
||||||
|
this.uid = uid;
|
||||||
|
this.status = status;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public void addIn(UserAndStatus userAndStatus){
|
||||||
|
this.in.add(userAndStatus);
|
||||||
|
}
|
||||||
|
public void addOut(UserAndStatus userAndStatus){
|
||||||
|
this.out.add(userAndStatus);
|
||||||
|
}
|
||||||
|
public void addSecret(UserAndStatus userAndStatus){
|
||||||
|
this.secret.add(userAndStatus);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -18,7 +18,8 @@ public enum ApproverTypeEnum {
|
|||||||
PUBLIC("public","公海认领审批"),
|
PUBLIC("public","公海认领审批"),
|
||||||
TASKCANCE("taskcance","任务作废审批"),
|
TASKCANCE("taskcance","任务作废审批"),
|
||||||
RETURN("RETURN","退款审批"),
|
RETURN("RETURN","退款审批"),
|
||||||
FREE("free","免费工单审批");
|
FREE("free","免费工单审批"),
|
||||||
|
TERMINATIONSERVICE("terminationService","终止合作");
|
||||||
private String code;
|
private String code;
|
||||||
private String text;
|
private String text;
|
||||||
}
|
}
|
||||||
|
@ -19,6 +19,7 @@ import org.apache.ibatis.annotations.Param;
|
|||||||
public interface PsApproverRecordMapper extends BaseMapperPlus<PsApproverRecord, PsApproverRecordVo> {
|
public interface PsApproverRecordMapper extends BaseMapperPlus<PsApproverRecord, PsApproverRecordVo> {
|
||||||
|
|
||||||
Page<PsApproverRecordVo> selectPageApproverList(@Param("page") Page<PsApproverRecord> page, @Param(Constants.WRAPPER) Wrapper<PsApproverRecord> queryWrapper);
|
Page<PsApproverRecordVo> selectPageApproverList(@Param("page") Page<PsApproverRecord> page, @Param(Constants.WRAPPER) Wrapper<PsApproverRecord> queryWrapper);
|
||||||
|
Page<PsApproverRecordVo> selectPageFreeApproverList(@Param("page") Page<PsApproverRecord> page, @Param(Constants.WRAPPER) Wrapper<PsApproverRecord> queryWrapper);
|
||||||
|
|
||||||
Page<PsApproverRecordVo> selectPagePublicList(@Param("page") Page<PsApproverRecord> page, @Param(Constants.WRAPPER) Wrapper<PsApproverRecord> queryWrapper);
|
Page<PsApproverRecordVo> selectPagePublicList(@Param("page") Page<PsApproverRecord> page, @Param(Constants.WRAPPER) Wrapper<PsApproverRecord> queryWrapper);
|
||||||
}
|
}
|
||||||
|
@ -21,9 +21,12 @@ import java.util.List;
|
|||||||
*/
|
*/
|
||||||
public interface PsCompanyInfoMapper extends BaseMapperPlus<PsCompanyInfo, PsCompanyInfoVo> {
|
public interface PsCompanyInfoMapper extends BaseMapperPlus<PsCompanyInfo, PsCompanyInfoVo> {
|
||||||
|
|
||||||
Page<PsCompanyQueryVo> selectPageList(@Param("page") Page<PsApproverRecord> page, @Param(Constants.WRAPPER) Wrapper<PsCompanyInfo> queryWrapper);
|
Page<PsCompanyInfoVo> selectPageList(@Param("page") Page<PsApproverRecord> page, @Param(Constants.WRAPPER) Wrapper<PsCompanyInfo> queryWrapper);
|
||||||
|
Page<PsCompanyInfoVo> selectPageList2(@Param("page") Page<PsApproverRecord> page, @Param(Constants.WRAPPER) Wrapper<PsCompanyInfo> queryWrapper);
|
||||||
|
|
||||||
List<PsCompanyInfoVo> selectServiceCompanyList(@Param(Constants.WRAPPER) Wrapper<PsCompanyInfoVo> queryWrapper);
|
List<PsCompanyInfoVo> selectServiceCompanyList(@Param(Constants.WRAPPER) Wrapper<PsCompanyInfoVo> queryWrapper);
|
||||||
|
|
||||||
|
|
||||||
|
PsCompanyInfoVo selectVoCustomManagerById(@Param("id")Long id);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -7,12 +7,15 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|||||||
import com.pusong.business.domain.PsContractInfo;
|
import com.pusong.business.domain.PsContractInfo;
|
||||||
import com.pusong.business.domain.PsTaskMain;
|
import com.pusong.business.domain.PsTaskMain;
|
||||||
import com.pusong.business.domain.vo.PsContractInfoVo;
|
import com.pusong.business.domain.vo.PsContractInfoVo;
|
||||||
|
import com.pusong.business.domain.vo.PsTaskAppointVo;
|
||||||
import com.pusong.business.domain.vo.PsTaskMainVo;
|
import com.pusong.business.domain.vo.PsTaskMainVo;
|
||||||
import com.pusong.common.mybatis.annotation.DataColumn;
|
import com.pusong.common.mybatis.annotation.DataColumn;
|
||||||
import com.pusong.common.mybatis.annotation.DataPermission;
|
import com.pusong.common.mybatis.annotation.DataPermission;
|
||||||
import com.pusong.common.mybatis.core.mapper.BaseMapperPlus;
|
import com.pusong.common.mybatis.core.mapper.BaseMapperPlus;
|
||||||
import org.apache.ibatis.annotations.Param;
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 主任务Mapper接口
|
* 主任务Mapper接口
|
||||||
*
|
*
|
||||||
@ -27,6 +30,7 @@ public interface PsTaskMainMapper extends BaseMapper<PsTaskMain> {
|
|||||||
Page<PsTaskMainVo> queryTaskPageList(@Param("page") Page<PsTaskMain> page, @Param(Constants.WRAPPER) Wrapper<PsTaskMain> queryWrapper);
|
Page<PsTaskMainVo> queryTaskPageList(@Param("page") Page<PsTaskMain> page, @Param(Constants.WRAPPER) Wrapper<PsTaskMain> queryWrapper);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Page<PsTaskMainVo> queryInvoiceTaskPageList(@Param("page") Page<PsTaskMain> page, @Param(Constants.WRAPPER) Wrapper<PsTaskMain> queryWrapper);
|
Page<PsTaskMainVo> queryInvoiceTaskPageList(@Param("page") Page<PsTaskMain> page, @Param(Constants.WRAPPER) Wrapper<PsTaskMain> queryWrapper);
|
||||||
|
|
||||||
|
|
||||||
@ -35,4 +39,8 @@ public interface PsTaskMainMapper extends BaseMapper<PsTaskMain> {
|
|||||||
@DataColumn(key = "userName", value = "appo.executor")
|
@DataColumn(key = "userName", value = "appo.executor")
|
||||||
})
|
})
|
||||||
Page<PsTaskMainVo> queryChildTaskPageList(@Param("page") Page<PsTaskMain> page, @Param(Constants.WRAPPER) Wrapper<PsTaskMain> queryWrapper);
|
Page<PsTaskMainVo> queryChildTaskPageList(@Param("page") Page<PsTaskMain> page, @Param(Constants.WRAPPER) Wrapper<PsTaskMain> queryWrapper);
|
||||||
|
|
||||||
|
|
||||||
|
List<PsTaskAppointVo> queryByMainId(@Param("mainId") Long mainId);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -3,7 +3,6 @@ package com.pusong.business.service;
|
|||||||
import com.pusong.business.domain.bo.PsCompanyQueryBo;
|
import com.pusong.business.domain.bo.PsCompanyQueryBo;
|
||||||
import com.pusong.business.domain.vo.PsCompanyInfoVo;
|
import com.pusong.business.domain.vo.PsCompanyInfoVo;
|
||||||
import com.pusong.business.domain.bo.PsCompanyInfoBo;
|
import com.pusong.business.domain.bo.PsCompanyInfoBo;
|
||||||
import com.pusong.business.domain.vo.PsCompanyQueryVo;
|
|
||||||
import com.pusong.common.mybatis.core.page.TableDataInfo;
|
import com.pusong.common.mybatis.core.page.TableDataInfo;
|
||||||
import com.pusong.common.mybatis.core.page.PageQuery;
|
import com.pusong.common.mybatis.core.page.PageQuery;
|
||||||
|
|
||||||
@ -39,10 +38,11 @@ public interface IPsCompanyInfoService {
|
|||||||
* @param bo 查询条件
|
* @param bo 查询条件
|
||||||
* @return 公司信息列表
|
* @return 公司信息列表
|
||||||
*/
|
*/
|
||||||
TableDataInfo<PsCompanyQueryVo> queryPageList(PsCompanyQueryBo bo, PageQuery pageQuery);
|
TableDataInfo<PsCompanyInfoVo> queryPageList(PsCompanyQueryBo bo, PageQuery pageQuery);
|
||||||
|
|
||||||
TableDataInfo<PsCompanyQueryVo> queryServiceCompany(PsCompanyQueryBo bo, PageQuery pageQuery);
|
TableDataInfo<PsCompanyInfoVo> queryServiceCompany(PsCompanyQueryBo bo, PageQuery pageQuery);
|
||||||
|
|
||||||
|
TableDataInfo<PsCompanyInfoVo> searchServiceCompany(String keyWorld);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 新增公司信息
|
* 新增公司信息
|
||||||
@ -80,4 +80,6 @@ public interface IPsCompanyInfoService {
|
|||||||
* 根据合同编码查询服务公司信息
|
* 根据合同编码查询服务公司信息
|
||||||
*/
|
*/
|
||||||
List<PsCompanyInfoVo> getServiceCompany(String controctCode);
|
List<PsCompanyInfoVo> getServiceCompany(String controctCode);
|
||||||
|
|
||||||
|
void terminationService(Long serviceCompanyId);
|
||||||
}
|
}
|
||||||
|
@ -132,7 +132,7 @@ public interface IPsContractInfoService {
|
|||||||
* 根据合同编码查询服务进度
|
* 根据合同编码查询服务进度
|
||||||
* @param contractCode 合同编码
|
* @param contractCode 合同编码
|
||||||
*/
|
*/
|
||||||
ServiceScheduleVo queryScheduleByCode(String contractCode);
|
ServiceScheduleVo queryScheduleByCode(String contractCode, Long serviceCompanyId);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 全部退款回退合同状态
|
* 全部退款回退合同状态
|
||||||
|
@ -67,6 +67,9 @@ public interface IPsTaskService {
|
|||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
PsTaskMain queryByContractCode(String contractCode);
|
PsTaskMain queryByContractCode(String contractCode);
|
||||||
|
|
||||||
|
PsTaskMain queryByContractCodeAndServiceCompanyId(String contractCode, Long serviceCompanyId);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 根据主任务id查询进度
|
* 根据主任务id查询进度
|
||||||
*
|
*
|
||||||
@ -74,6 +77,7 @@ public interface IPsTaskService {
|
|||||||
*/
|
*/
|
||||||
TaskPlanVo plan(Long id);
|
TaskPlanVo plan(Long id);
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 上传资料和公司信息
|
* 上传资料和公司信息
|
||||||
*
|
*
|
||||||
|
@ -10,6 +10,7 @@ import com.pusong.business.domain.PsApproverRecord;
|
|||||||
import com.pusong.business.domain.PsContractPay;
|
import com.pusong.business.domain.PsContractPay;
|
||||||
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.domain.vo.PsCompanyInfoVo;
|
||||||
import com.pusong.business.domain.vo.PsContractPayVo;
|
import com.pusong.business.domain.vo.PsContractPayVo;
|
||||||
import com.pusong.business.enums.ApproverStatusEnum;
|
import com.pusong.business.enums.ApproverStatusEnum;
|
||||||
import com.pusong.business.enums.ApproverTypeEnum;
|
import com.pusong.business.enums.ApproverTypeEnum;
|
||||||
@ -17,6 +18,7 @@ import com.pusong.business.enums.PayStatusEnum;
|
|||||||
import com.pusong.business.mapper.PsApproverRecordMapper;
|
import com.pusong.business.mapper.PsApproverRecordMapper;
|
||||||
import com.pusong.business.mapper.PsContractPayMapper;
|
import com.pusong.business.mapper.PsContractPayMapper;
|
||||||
import com.pusong.business.service.IPsApproverRecordService;
|
import com.pusong.business.service.IPsApproverRecordService;
|
||||||
|
import com.pusong.business.service.IPsCompanyInfoService;
|
||||||
import com.pusong.business.service.approver.ApproverContainer;
|
import com.pusong.business.service.approver.ApproverContainer;
|
||||||
import com.pusong.business.service.approver.ApproverService;
|
import com.pusong.business.service.approver.ApproverService;
|
||||||
import com.pusong.common.core.exception.ServiceException;
|
import com.pusong.common.core.exception.ServiceException;
|
||||||
@ -45,6 +47,8 @@ public abstract class ApproverAbstractServiceImpl implements ApproverService {
|
|||||||
private PsApproverRecordMapper recordMapper;
|
private PsApproverRecordMapper recordMapper;
|
||||||
@Resource
|
@Resource
|
||||||
private PsContractPayMapper baseMapper;
|
private PsContractPayMapper baseMapper;
|
||||||
|
@Resource
|
||||||
|
private IPsCompanyInfoService companyInfoService;
|
||||||
/**
|
/**
|
||||||
* 通用申请方法
|
* 通用申请方法
|
||||||
* @param bussinessId
|
* @param bussinessId
|
||||||
@ -99,14 +103,19 @@ public abstract class ApproverAbstractServiceImpl implements ApproverService {
|
|||||||
.exists(StringUtils.isNotBlank(bo.getCustomManagerName()),"select 1 from sys_user su where su.user_id = info.custom_manager and su.nick_name like '%"+bo.getCustomManagerName()+"%'")
|
.exists(StringUtils.isNotBlank(bo.getCustomManagerName()),"select 1 from sys_user su where su.user_id = info.custom_manager and su.nick_name like '%"+bo.getCustomManagerName()+"%'")
|
||||||
.orderByAsc("app.approver_status").orderByDesc("app.apply_date");
|
.orderByAsc("app.approver_status").orderByDesc("app.apply_date");
|
||||||
Page<PsApproverRecordVo> res = recordMapper.selectPageApproverList(pageQuery.build(), lqw);
|
Page<PsApproverRecordVo> res = recordMapper.selectPageApproverList(pageQuery.build(), lqw);
|
||||||
|
|
||||||
if(CollectionUtils.isNotEmpty(res.getRecords())){
|
if(CollectionUtils.isNotEmpty(res.getRecords())){
|
||||||
res.getRecords().forEach(item->{
|
res.getRecords().forEach(item->{
|
||||||
|
if (item.getContractAmount() != null)
|
||||||
item.setResidualMoney(item.getContractAmount().subtract(item.getPayMoney()));
|
item.setResidualMoney(item.getContractAmount().subtract(item.getPayMoney()));
|
||||||
//装填回款周期
|
//装填回款周期
|
||||||
List<PsContractPayVo> payList = queryListByContractCode(item.getContractCode(),"1", PayStatusEnum.SUCCESS);
|
List<PsContractPayVo> payList = queryListByContractCode(item.getContractCode(),"1", PayStatusEnum.SUCCESS);
|
||||||
if(CollectionUtils.isNotEmpty(payList)){
|
if(CollectionUtils.isNotEmpty(payList)){
|
||||||
item.setPeriod(DateUtils.calWorkDate(payList.get(0).getPayDate(),payList.get(payList.size()-1).getPayDate()));
|
item.setPeriod(DateUtils.calWorkDate(payList.get(0).getPayDate(),payList.get(payList.size()-1).getPayDate()));
|
||||||
}
|
}
|
||||||
|
//装填服务公司信息
|
||||||
|
List<PsCompanyInfoVo> list = companyInfoService.getServiceCompany(item.getContractCode());
|
||||||
|
item.setServicePsCompanyInfoVo(list);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
return res;
|
return res;
|
||||||
@ -120,7 +129,7 @@ public abstract class ApproverAbstractServiceImpl implements ApproverService {
|
|||||||
* @param contractCode 合同编码
|
* @param contractCode 合同编码
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public List<PsContractPayVo> queryListByContractCode(String contractCode,String business,PayStatusEnum enu){
|
public List<PsContractPayVo> queryListByContractCode(String contractCode, String business, PayStatusEnum enu){
|
||||||
if(StringUtils.isBlank(contractCode)){return new ArrayList<>();}
|
if(StringUtils.isBlank(contractCode)){return new ArrayList<>();}
|
||||||
List<PsContractPayVo> list = baseMapper.selectVoList(Wrappers.<PsContractPay>lambdaQuery().
|
List<PsContractPayVo> list = baseMapper.selectVoList(Wrappers.<PsContractPay>lambdaQuery().
|
||||||
eq(PsContractPay::getContractCode, contractCode).eq(PsContractPay::getDelFlag,0)
|
eq(PsContractPay::getContractCode, contractCode).eq(PsContractPay::getDelFlag,0)
|
||||||
|
@ -1,23 +1,35 @@
|
|||||||
package com.pusong.business.service.approver.impl;
|
package com.pusong.business.service.approver.impl;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
|
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
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.PsTaskAppoint;
|
import com.pusong.business.domain.PsTaskAppoint;
|
||||||
import com.pusong.business.domain.PsTaskMain;
|
import com.pusong.business.domain.PsTaskMain;
|
||||||
|
import com.pusong.business.domain.bo.PsApproverRecordBo;
|
||||||
|
import com.pusong.business.domain.vo.PsApproverRecordVo;
|
||||||
|
import com.pusong.business.domain.vo.PsCompanyInfoVo;
|
||||||
import com.pusong.business.domain.vo.PsContractInfoVo;
|
import com.pusong.business.domain.vo.PsContractInfoVo;
|
||||||
import com.pusong.business.enums.ApproverTypeEnum;
|
import com.pusong.business.domain.vo.PsContractPayVo;
|
||||||
import com.pusong.business.enums.ContractStatusEnum;
|
import com.pusong.business.enums.*;
|
||||||
import com.pusong.business.enums.TaskStatusEnum;
|
import com.pusong.business.mapper.PsApproverRecordMapper;
|
||||||
import com.pusong.business.enums.TaskTypeEnum;
|
|
||||||
import com.pusong.business.mapper.PsTaskAppointMapper;
|
import com.pusong.business.mapper.PsTaskAppointMapper;
|
||||||
import com.pusong.business.mapper.PsTaskMainMapper;
|
import com.pusong.business.mapper.PsTaskMainMapper;
|
||||||
|
import com.pusong.business.service.IPsCompanyInfoService;
|
||||||
import com.pusong.business.service.IPsContractInfoService;
|
import com.pusong.business.service.IPsContractInfoService;
|
||||||
|
import com.pusong.common.core.utils.DateUtils;
|
||||||
|
import com.pusong.common.core.utils.StringUtils;
|
||||||
|
import com.pusong.common.mybatis.core.page.PageQuery;
|
||||||
|
import jakarta.annotation.Resource;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.util.Arrays;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 免费工单审批
|
* 免费工单审批
|
||||||
*/
|
*/
|
||||||
@ -32,20 +44,25 @@ public class FreeApproverServiceImpl extends ApproverAbstractServiceImpl {
|
|||||||
private final PsTaskMainMapper taskMainMapper;
|
private final PsTaskMainMapper taskMainMapper;
|
||||||
private final PsTaskAppointMapper taskAppointMapper;
|
private final PsTaskAppointMapper taskAppointMapper;
|
||||||
private final IPsContractInfoService contractInfoService;
|
private final IPsContractInfoService contractInfoService;
|
||||||
|
private final IPsCompanyInfoService companyInfoService;
|
||||||
|
@Resource
|
||||||
|
private PsApproverRecordMapper recordMapper;
|
||||||
/**
|
/**
|
||||||
* 1 审批成功
|
* 1 审批成功
|
||||||
* @param psApproverRecord 神瀑类
|
* @param psApproverRecord 神瀑类
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public void success(PsApproverRecord psApproverRecord) {
|
public void success(PsApproverRecord psApproverRecord) {
|
||||||
PsContractInfoVo vo = contractInfoService.queryContractByCode(psApproverRecord.getBusinessId());
|
// PsContractInfoVo vo = contractInfoService.queryContractByCode(psApproverRecord.getBusinessId());
|
||||||
|
PsCompanyInfoVo psCompanyInfoVo = companyInfoService.queryById(Long.valueOf(psApproverRecord.getBusinessId()));
|
||||||
|
|
||||||
PsTaskMain psTaskMain = new PsTaskMain();
|
PsTaskMain psTaskMain = new PsTaskMain();
|
||||||
psTaskMain.setCompanyId(vo.getCompanyId());
|
psTaskMain.setCompanyId(psCompanyInfoVo.getId());
|
||||||
psTaskMain.setCustomId(vo.getCustomId());
|
psTaskMain.setCustomId(psCompanyInfoVo.getCustomId());
|
||||||
psTaskMain.setContractCode(vo.getContractCode());
|
// psTaskMain.setContractCode(vo.getContractCode());
|
||||||
psTaskMain.setTaskType(TaskTypeEnum.FREE.getCode());
|
psTaskMain.setTaskType(TaskTypeEnum.FREE.getCode());
|
||||||
psTaskMain.setTaskStatus(TaskStatusEnum.INIT.getCode());
|
psTaskMain.setTaskStatus(TaskStatusEnum.INIT.getCode());
|
||||||
|
psTaskMain.setServiceCompanyId(psCompanyInfoVo.getId());
|
||||||
psTaskMain.setBusinessType(psApproverRecord.getUpdateData().split("@@")[0]);
|
psTaskMain.setBusinessType(psApproverRecord.getUpdateData().split("@@")[0]);
|
||||||
psTaskMain.setBusinessProject(psApproverRecord.getUpdateData().split("@@")[1]);
|
psTaskMain.setBusinessProject(psApproverRecord.getUpdateData().split("@@")[1]);
|
||||||
taskMainMapper.insert(psTaskMain);
|
taskMainMapper.insert(psTaskMain);
|
||||||
@ -66,4 +83,40 @@ public class FreeApproverServiceImpl extends ApproverAbstractServiceImpl {
|
|||||||
public void fail(PsApproverRecord psApproverRecord) {
|
public void fail(PsApproverRecord psApproverRecord) {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询列表
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public Page<PsApproverRecordVo> queryList(PsApproverRecordBo bo, PageQuery pageQuery){
|
||||||
|
QueryWrapper<PsApproverRecord> lqw = Wrappers.<PsApproverRecord>query().eq("app.business_type", approverType())
|
||||||
|
.eq(bo.getId()!=null,"app.id",bo.getId())
|
||||||
|
.eq("app.del_flag","0")
|
||||||
|
.eq(com.pusong.common.core.utils.StringUtils.isNotBlank(bo.getApproverStatus()),"app.approver_status",bo.getApproverStatus())
|
||||||
|
.like(com.pusong.common.core.utils.StringUtils.isNotBlank(bo.getCustomerName()),"cus.custom_name",bo.getCustomerName())
|
||||||
|
.like(com.pusong.common.core.utils.StringUtils.isNotBlank(bo.getCompanyName()),"com.company_name",bo.getCompanyName())
|
||||||
|
//销售经理姓名
|
||||||
|
.exists(StringUtils.isNotBlank(bo.getCustomManagerName()),"select 1 from sys_user su where su.user_id = info.custom_manager and su.nick_name like '%"+bo.getCustomManagerName()+"%'")
|
||||||
|
.orderByAsc("app.approver_status").orderByDesc("app.apply_date");
|
||||||
|
Page<PsApproverRecordVo> res = recordMapper.selectPageFreeApproverList(pageQuery.build(), lqw);
|
||||||
|
if(CollectionUtils.isNotEmpty(res.getRecords())){
|
||||||
|
res.getRecords().forEach(item->{
|
||||||
|
if (item.getContractAmount() != null)
|
||||||
|
item.setResidualMoney(item.getContractAmount().subtract(item.getPayMoney()));
|
||||||
|
//装填回款周期
|
||||||
|
List<PsContractPayVo> payList = queryListByContractCode(item.getContractCode(),"1", PayStatusEnum.SUCCESS);
|
||||||
|
if(CollectionUtils.isNotEmpty(payList)){
|
||||||
|
item.setPeriod(DateUtils.calWorkDate(payList.get(0).getPayDate(),payList.get(payList.size()-1).getPayDate()));
|
||||||
|
}
|
||||||
|
|
||||||
|
//装填服务公司信息
|
||||||
|
PsCompanyInfoVo psCompanyInfoVo = companyInfoService.queryById(Long.valueOf(item.getBusinessId()));
|
||||||
|
if (psCompanyInfoVo != null){
|
||||||
|
item.setServicePsCompanyInfoVo(Arrays.asList(psCompanyInfoVo));
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -58,29 +58,24 @@ public class PayContractApproverServiceImpl extends ApproverAbstractServiceImpl
|
|||||||
update.setPayStatus(PayStatusEnum.SUCCESS.getCode());
|
update.setPayStatus(PayStatusEnum.SUCCESS.getCode());
|
||||||
payService.updateById(update);
|
payService.updateById(update);
|
||||||
|
|
||||||
if(StringUtils.isNotBlank(info.getSrcContractCode())){
|
|
||||||
log.info("续费合同不需要生成任务"+info.getSrcContractCode());
|
|
||||||
if(StringUtils.equals(ContractStatusEnum.CREATE.getCode(),info.getContractStatus())){
|
|
||||||
log.info("修改合同状态");
|
|
||||||
PsContractInfo updateInfo = new PsContractInfo();
|
PsContractInfo updateInfo = new PsContractInfo();
|
||||||
updateInfo.setContractCode(info.getContractCode());
|
updateInfo.setContractCode(info.getContractCode());
|
||||||
|
if("1".equals(info.getIsDue())){
|
||||||
|
if(StringUtils.equals(ContractStatusEnum.CREATE.getCode(), info.getContractStatus())){
|
||||||
updateInfo.setContractStatus(ContractStatusEnum.EXECUTION.getCode());
|
updateInfo.setContractStatus(ContractStatusEnum.EXECUTION.getCode());
|
||||||
psContractInfoService.updateByCode(updateInfo);
|
psContractInfoService.updateByCode(updateInfo);
|
||||||
}
|
}
|
||||||
return;
|
return;//续费合同不生成任务直接return
|
||||||
}else{
|
}else{
|
||||||
if(StringUtils.equals(ContractStatusEnum.CREATE.getCode(),info.getContractStatus())){
|
if(StringUtils.equals(ContractStatusEnum.CREATE.getCode(), info.getContractStatus())){
|
||||||
log.info("修改合同状态");
|
|
||||||
PsContractInfo updateInfo = new PsContractInfo();
|
|
||||||
updateInfo.setContractCode(info.getContractCode());
|
|
||||||
updateInfo.setContractStatus(ContractStatusEnum.RETURN.getCode());
|
updateInfo.setContractStatus(ContractStatusEnum.RETURN.getCode());
|
||||||
psContractInfoService.updateByCode(updateInfo);
|
psContractInfoService.updateByCode(updateInfo);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
List<PsContractPayVo> list = payService.queryListByContractCode(info.getContractCode(), PayBuinessStatusEnum.PAY.getCode(), PayStatusEnum.SUCCESS);
|
// List<PsContractPayVo> list = payService.queryListByContractCode(info.getContractCode(), PayBuinessStatusEnum.PAY.getCode(), PayStatusEnum.SUCCESS);
|
||||||
//如果没有过回款记录初始化任务主表,并修改合同状态
|
//如果没有过回款记录初始化任务主表,并修改合同状态
|
||||||
log.info("查询回款记录数量{}任务状态{}", list.size(),info.getContractStatus());
|
// log.info("查询回款记录数量{}任务状态{}", list.size(),info.getContractStatus());
|
||||||
|
|
||||||
PsTaskMain task = taskMainService.queryByContractCode(psApproverRecord.getContractCode());
|
PsTaskMain task = taskMainService.queryByContractCode(psApproverRecord.getContractCode());
|
||||||
if(task == null || task.getId() == null){
|
if(task == null || task.getId() == null){
|
||||||
@ -99,7 +94,6 @@ public class PayContractApproverServiceImpl extends ApproverAbstractServiceImpl
|
|||||||
taskMainService.insertBatch(psTaskMainList);
|
taskMainService.insertBatch(psTaskMainList);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -1,9 +1,15 @@
|
|||||||
package com.pusong.business.service.approver.impl;
|
package com.pusong.business.service.approver.impl;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
|
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||||
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.pusong.business.domain.*;
|
import com.pusong.business.domain.*;
|
||||||
|
import com.pusong.business.domain.bo.PsApproverRecordBo;
|
||||||
|
import com.pusong.business.domain.vo.PsApproverRecordVo;
|
||||||
|
import com.pusong.business.domain.vo.PsCompanyInfoVo;
|
||||||
import com.pusong.business.domain.vo.PsContractInfoVo;
|
import com.pusong.business.domain.vo.PsContractInfoVo;
|
||||||
|
import com.pusong.business.domain.vo.PsContractPayVo;
|
||||||
import com.pusong.business.enums.ApproverTypeEnum;
|
import com.pusong.business.enums.ApproverTypeEnum;
|
||||||
import com.pusong.business.enums.ContractStatusEnum;
|
import com.pusong.business.enums.ContractStatusEnum;
|
||||||
import com.pusong.business.enums.PayStatusEnum;
|
import com.pusong.business.enums.PayStatusEnum;
|
||||||
@ -12,8 +18,13 @@ import com.pusong.business.mapper.PsApproverRecordMapper;
|
|||||||
import com.pusong.business.mapper.PsContractPayMapper;
|
import com.pusong.business.mapper.PsContractPayMapper;
|
||||||
import com.pusong.business.mapper.PsTaskAppointMapper;
|
import com.pusong.business.mapper.PsTaskAppointMapper;
|
||||||
import com.pusong.business.mapper.PsTaskMainMapper;
|
import com.pusong.business.mapper.PsTaskMainMapper;
|
||||||
|
import com.pusong.business.service.IPsCompanyInfoService;
|
||||||
import com.pusong.business.service.IPsContractInfoService;
|
import com.pusong.business.service.IPsContractInfoService;
|
||||||
import com.pusong.business.service.IPsTaskService;
|
import com.pusong.business.service.IPsTaskService;
|
||||||
|
import com.pusong.common.core.utils.DateUtils;
|
||||||
|
import com.pusong.common.core.utils.StringUtils;
|
||||||
|
import com.pusong.common.mybatis.core.page.PageQuery;
|
||||||
|
import jakarta.annotation.Resource;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
@ -28,13 +39,18 @@ import java.util.Objects;
|
|||||||
@Service
|
@Service
|
||||||
@Slf4j
|
@Slf4j
|
||||||
public class ReturnApproverServiceImpl extends ApproverAbstractServiceImpl {
|
public class ReturnApproverServiceImpl extends ApproverAbstractServiceImpl {
|
||||||
|
@Resource
|
||||||
|
private PsApproverRecordMapper recordMapper;
|
||||||
@Override
|
@Override
|
||||||
public String approverType() {
|
public String approverType() {
|
||||||
return ApproverTypeEnum.RETURN.getCode();
|
return ApproverTypeEnum.RETURN.getCode();
|
||||||
}
|
}
|
||||||
private final PsContractPayMapper baseMapper;
|
private final PsContractPayMapper baseMapper;
|
||||||
|
|
||||||
|
private final PsContractPayMapper payMapper;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private IPsCompanyInfoService companyInfoService;
|
||||||
/**
|
/**
|
||||||
* 1 审批成功 退款审批成功
|
* 1 审批成功 退款审批成功
|
||||||
* @param psApproverRecord 神瀑类
|
* @param psApproverRecord 神瀑类
|
||||||
@ -56,4 +72,15 @@ public class ReturnApproverServiceImpl extends ApproverAbstractServiceImpl {
|
|||||||
info.setPayStatus(PayStatusEnum.FILE.getCode());
|
info.setPayStatus(PayStatusEnum.FILE.getCode());
|
||||||
baseMapper.updateById(info);
|
baseMapper.updateById(info);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Page<PsApproverRecordVo> queryList(PsApproverRecordBo bo, PageQuery pageQuery){
|
||||||
|
Page<PsApproverRecordVo> res = super.queryList(bo, pageQuery);
|
||||||
|
for (PsApproverRecordVo record : res.getRecords()) {
|
||||||
|
PsContractPayVo psContractPayVo = payMapper.selectVoById(record.getBusinessId());
|
||||||
|
record.setPsContractPayVo(psContractPayVo);
|
||||||
|
}
|
||||||
|
return res;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -0,0 +1,67 @@
|
|||||||
|
package com.pusong.business.service.approver.impl;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
|
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
|
||||||
|
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.PsTaskMain;
|
||||||
|
import com.pusong.business.domain.bo.PsApproverRecordBo;
|
||||||
|
import com.pusong.business.domain.vo.PsApproverRecordVo;
|
||||||
|
import com.pusong.business.domain.vo.PsCompanyInfoVo;
|
||||||
|
import com.pusong.business.domain.vo.PsContractPayVo;
|
||||||
|
import com.pusong.business.enums.ApproverTypeEnum;
|
||||||
|
import com.pusong.business.enums.PayStatusEnum;
|
||||||
|
import com.pusong.business.enums.TaskStatusEnum;
|
||||||
|
import com.pusong.business.enums.TaskTypeEnum;
|
||||||
|
import com.pusong.business.mapper.PsApproverRecordMapper;
|
||||||
|
import com.pusong.business.mapper.PsTaskAppointMapper;
|
||||||
|
import com.pusong.business.mapper.PsTaskMainMapper;
|
||||||
|
import com.pusong.business.service.IPsCompanyInfoService;
|
||||||
|
import com.pusong.business.service.IPsContractInfoService;
|
||||||
|
import com.pusong.common.core.utils.DateUtils;
|
||||||
|
import com.pusong.common.core.utils.StringUtils;
|
||||||
|
import com.pusong.common.mybatis.core.page.PageQuery;
|
||||||
|
import jakarta.annotation.Resource;
|
||||||
|
import lombok.RequiredArgsConstructor;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 免费工单审批
|
||||||
|
*/
|
||||||
|
@RequiredArgsConstructor
|
||||||
|
@Service
|
||||||
|
@Slf4j
|
||||||
|
public class TerminationServiceImpl extends ApproverAbstractServiceImpl {
|
||||||
|
@Override
|
||||||
|
public String approverType() {
|
||||||
|
return ApproverTypeEnum.TERMINATIONSERVICE.getCode();
|
||||||
|
}
|
||||||
|
private final PsTaskMainMapper taskMainMapper;
|
||||||
|
private final PsTaskAppointMapper taskAppointMapper;
|
||||||
|
private final IPsContractInfoService contractInfoService;
|
||||||
|
private final IPsCompanyInfoService companyInfoService;
|
||||||
|
@Resource
|
||||||
|
private PsApproverRecordMapper recordMapper;
|
||||||
|
@Override
|
||||||
|
public void success(PsApproverRecord psApproverRecord) {
|
||||||
|
//修改服务公司状态为终止
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 审批拒绝
|
||||||
|
* @param psApproverRecord
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public void fail(PsApproverRecord psApproverRecord) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
@ -5,11 +5,12 @@ import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
|
|||||||
import com.pusong.business.domain.PsContractCompany;
|
import com.pusong.business.domain.PsContractCompany;
|
||||||
import com.pusong.business.domain.PsContractInfo;
|
import com.pusong.business.domain.PsContractInfo;
|
||||||
import com.pusong.business.domain.bo.PsCompanyQueryBo;
|
import com.pusong.business.domain.bo.PsCompanyQueryBo;
|
||||||
import com.pusong.business.domain.vo.PsCompanyQueryVo;
|
import com.pusong.business.domain.bo.PsContractBusinessBo;
|
||||||
import com.pusong.business.domain.vo.PsSalaryVo;
|
import com.pusong.business.enums.ApproverTypeEnum;
|
||||||
import com.pusong.business.mapper.PsContractCompanyMapper;
|
import com.pusong.business.mapper.PsContractCompanyMapper;
|
||||||
import com.pusong.business.mapper.PsContractInfoMapper;
|
import com.pusong.business.mapper.PsContractInfoMapper;
|
||||||
import com.pusong.business.service.IPsContractInfoService;
|
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.exception.ServiceException;
|
||||||
import com.pusong.common.core.utils.MapstructUtils;
|
import com.pusong.common.core.utils.MapstructUtils;
|
||||||
import com.pusong.common.core.utils.StringUtils;
|
import com.pusong.common.core.utils.StringUtils;
|
||||||
@ -18,6 +19,7 @@ import com.pusong.common.mybatis.core.page.PageQuery;
|
|||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||||
|
import jakarta.annotation.Resource;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
import com.pusong.business.domain.bo.PsCompanyInfoBo;
|
import com.pusong.business.domain.bo.PsCompanyInfoBo;
|
||||||
@ -28,7 +30,6 @@ import com.pusong.business.service.IPsCompanyInfoService;
|
|||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -44,7 +45,8 @@ public class PsCompanyInfoServiceImpl implements IPsCompanyInfoService {
|
|||||||
private final PsCompanyInfoMapper baseMapper;
|
private final PsCompanyInfoMapper baseMapper;
|
||||||
private final PsContractCompanyMapper contractCompanyMapper;
|
private final PsContractCompanyMapper contractCompanyMapper;
|
||||||
private final PsContractInfoMapper contractInfoMapper;
|
private final PsContractInfoMapper contractInfoMapper;
|
||||||
|
@Resource
|
||||||
|
private final ApproverContainer container;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询公司信息
|
* 查询公司信息
|
||||||
@ -54,8 +56,10 @@ public class PsCompanyInfoServiceImpl implements IPsCompanyInfoService {
|
|||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public PsCompanyInfoVo queryById(Long id){
|
public PsCompanyInfoVo queryById(Long id){
|
||||||
return baseMapper.selectVoById(id);
|
return baseMapper.selectVoCustomManagerById(id);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询符合条件的公司信息列表
|
* 查询符合条件的公司信息列表
|
||||||
*
|
*
|
||||||
@ -74,7 +78,7 @@ public class PsCompanyInfoServiceImpl implements IPsCompanyInfoService {
|
|||||||
* @param bo 查询条件
|
* @param bo 查询条件
|
||||||
* @return 公司信息列表
|
* @return 公司信息列表
|
||||||
*/
|
*/
|
||||||
public TableDataInfo<PsCompanyQueryVo> queryPageList(PsCompanyQueryBo bo, PageQuery pageQuery){
|
public TableDataInfo<PsCompanyInfoVo> queryPageList(PsCompanyQueryBo bo, PageQuery pageQuery){
|
||||||
QueryWrapper<PsCompanyInfo> lqw = Wrappers.query();
|
QueryWrapper<PsCompanyInfo> lqw = Wrappers.query();
|
||||||
lqw.exists(StringUtils.isNotBlank(bo.getCustomManagerName()),"select 1 from sys_user su where su.user_id = cus.custom_manager and su.nick_name like '%"+bo.getCustomManagerName()+"%'");
|
lqw.exists(StringUtils.isNotBlank(bo.getCustomManagerName()),"select 1 from sys_user su where su.user_id = cus.custom_manager and su.nick_name like '%"+bo.getCustomManagerName()+"%'");
|
||||||
lqw.eq(bo.getId() != null,"com.id",bo.getId());
|
lqw.eq(bo.getId() != null,"com.id",bo.getId());
|
||||||
@ -83,7 +87,7 @@ public class PsCompanyInfoServiceImpl implements IPsCompanyInfoService {
|
|||||||
lqw.like(bo.getCompanyName() != null,"com.company_name",bo.getCompanyName());
|
lqw.like(bo.getCompanyName() != null,"com.company_name",bo.getCompanyName());
|
||||||
lqw.like(bo.getCompanyName() != null,"com.company_name",bo.getCompanyName());
|
lqw.like(bo.getCompanyName() != null,"com.company_name",bo.getCompanyName());
|
||||||
lqw.like(bo.getCustomIntroducer() != null,"cusi.custom_name",bo.getCustomIntroducer());
|
lqw.like(bo.getCustomIntroducer() != null,"cusi.custom_name",bo.getCustomIntroducer());
|
||||||
Page<PsCompanyQueryVo> result = baseMapper.selectPageList(pageQuery.build(), lqw);
|
Page<PsCompanyInfoVo> result = baseMapper.selectPageList(pageQuery.build(), lqw);
|
||||||
return TableDataInfo.build(result);
|
return TableDataInfo.build(result);
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
@ -92,17 +96,40 @@ public class PsCompanyInfoServiceImpl implements IPsCompanyInfoService {
|
|||||||
* @param bo 查询条件
|
* @param bo 查询条件
|
||||||
* @return 公司信息列表
|
* @return 公司信息列表
|
||||||
*/
|
*/
|
||||||
public TableDataInfo<PsCompanyQueryVo> queryServiceCompany(PsCompanyQueryBo bo, PageQuery pageQuery){
|
public TableDataInfo<PsCompanyInfoVo> queryServiceCompany(PsCompanyQueryBo bo, PageQuery pageQuery){
|
||||||
QueryWrapper<PsCompanyInfo> lqw = Wrappers.query();
|
QueryWrapper<PsCompanyInfo> lqw = Wrappers.query();
|
||||||
lqw.exists(StringUtils.isNotBlank(bo.getCustomManagerName()),"select 1 from sys_user su where su.user_id = cus.custom_manager and su.nick_name like '%"+bo.getCustomManagerName()+"%'");
|
lqw.exists(StringUtils.isNotBlank(bo.getCustomManagerName()),"select 1 from sys_user su where su.user_id = cus.custom_manager and su.nick_name like '%"+bo.getCustomManagerName()+"%'");
|
||||||
lqw.eq(bo.getId() != null,"com.id",bo.getId());
|
lqw.eq(bo.getId() != null,"com.id", bo.getId());
|
||||||
|
lqw.eq("com.company_type", "2");
|
||||||
lqw.like(bo.getCustomName() != null,"cus.custom_name",bo.getCustomName());
|
lqw.like(bo.getCustomName() != null,"cus.custom_name",bo.getCustomName());
|
||||||
lqw.like(bo.getCustomMobile() != null,"cus.custom_mobile",bo.getCustomMobile());
|
lqw.like(bo.getCustomMobile() != null,"cus.custom_mobile",bo.getCustomMobile());
|
||||||
lqw.like(bo.getCompanyName() != null,"com.company_name",bo.getCompanyName());
|
lqw.like(bo.getCompanyName() != null,"com.company_name",bo.getCompanyName());
|
||||||
lqw.eq(bo.getServiceStatus() != null,"com.service_status",bo.getServiceStatus());
|
lqw.eq(bo.getServiceStatus() != null,"com.service_status",bo.getServiceStatus());
|
||||||
lqw.exists(StringUtils.isNotBlank(bo.getFollowUser()),"select 1 from sys_user fsu where fsu.user_id = cf.user_id and fsu.nick_name like '%"+bo.getFollowUser()+"%'");
|
lqw.exists(StringUtils.isNotBlank(bo.getFollowUser()),"select 1 from sys_user fsu where fsu.user_id = cf.user_id and fsu.nick_name like '%"+bo.getFollowUser()+"%'");
|
||||||
|
|
||||||
Page<PsCompanyQueryVo> result = baseMapper.selectPageList(pageQuery.build(), lqw);
|
StringBuilder sql = new StringBuilder("select 1 from ps_contract_business cb where cb.company_id = com.id ");
|
||||||
|
if (bo.getType() == 2){ //非托管
|
||||||
|
sql.append("and business_type != '2'");
|
||||||
|
}else if (bo.getType() == 3){ //托管代账
|
||||||
|
sql.append("and business_type = '2' and is_proxy = '1'");
|
||||||
|
}else if (bo.getType() == 4){ //托管不代账
|
||||||
|
sql.append("and business_type = '2' and is_proxy = '2'");
|
||||||
|
}
|
||||||
|
lqw.exists(bo.getType() != 1, sql.toString());
|
||||||
|
Page<PsCompanyInfoVo> result = baseMapper.selectPageList2(pageQuery.build(), lqw);
|
||||||
|
return TableDataInfo.build(result);
|
||||||
|
}
|
||||||
|
|
||||||
|
public TableDataInfo<PsCompanyInfoVo> searchServiceCompany(String keyWorld){
|
||||||
|
if (keyWorld == null || keyWorld.equals("")){
|
||||||
|
return TableDataInfo.build();
|
||||||
|
}
|
||||||
|
PageQuery pageQuery = new PageQuery();
|
||||||
|
pageQuery.setPageSize(10);
|
||||||
|
QueryWrapper<PsCompanyInfo> lqw = Wrappers.query();
|
||||||
|
lqw.like("company_name", keyWorld);
|
||||||
|
lqw.eq("company_type", "2");
|
||||||
|
Page<PsCompanyInfoVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
|
||||||
return TableDataInfo.build(result);
|
return TableDataInfo.build(result);
|
||||||
}
|
}
|
||||||
private LambdaQueryWrapper<PsCompanyInfo> buildQueryWrapper(PsCompanyInfoBo bo) {
|
private LambdaQueryWrapper<PsCompanyInfo> buildQueryWrapper(PsCompanyInfoBo bo) {
|
||||||
@ -140,7 +167,9 @@ public class PsCompanyInfoServiceImpl implements IPsCompanyInfoService {
|
|||||||
if (flag) {
|
if (flag) {
|
||||||
bo.setId(add.getId());
|
bo.setId(add.getId());
|
||||||
if(bo.getBusinessList() != null){//装填服务类型的公司id
|
if(bo.getBusinessList() != null){//装填服务类型的公司id
|
||||||
bo.getBusinessList().forEach(b -> b.setCompanyId(add.getId()));
|
for (PsContractBusinessBo psContractBusinessBo : bo.getBusinessList()) {
|
||||||
|
psContractBusinessBo.setCompanyId(add.getId());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return flag;
|
return flag;
|
||||||
@ -219,5 +248,14 @@ public class PsCompanyInfoServiceImpl implements IPsCompanyInfoService {
|
|||||||
return list;
|
return list;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 终止代账合作
|
||||||
|
*
|
||||||
|
* @param serviceCompanyId
|
||||||
|
*/
|
||||||
|
public void terminationService(Long serviceCompanyId) {
|
||||||
|
//发起审批
|
||||||
|
ApproverService service = container.getService(ApproverTypeEnum.TERMINATIONSERVICE.getCode());
|
||||||
|
service.apply(serviceCompanyId + "", "",null, null);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -62,6 +62,7 @@ public class PsContractInfoServiceImpl implements IPsContractInfoService {
|
|||||||
private final IPsContractBusinessDetailService businessDetailService;
|
private final IPsContractBusinessDetailService businessDetailService;
|
||||||
@Resource
|
@Resource
|
||||||
private final IPsCompanyInfoService companyInfoService;
|
private final IPsCompanyInfoService companyInfoService;
|
||||||
|
private final PsCompanyInfoMapper companyInfoMapper;
|
||||||
@Resource
|
@Resource
|
||||||
private final IPsCustomInfoService customInfoService;
|
private final IPsCustomInfoService customInfoService;
|
||||||
@Resource
|
@Resource
|
||||||
@ -116,7 +117,16 @@ public class PsContractInfoServiceImpl implements IPsContractInfoService {
|
|||||||
//插入服务公司
|
//插入服务公司
|
||||||
for (PsCompanyInfoBo companyInfoBo : bo.getServiceCompanyInfoList()){
|
for (PsCompanyInfoBo companyInfoBo : bo.getServiceCompanyInfoList()){
|
||||||
companyInfoBo.setCompanyType("2");
|
companyInfoBo.setCompanyType("2");
|
||||||
|
companyInfoBo.setCustomId(bo.getCustomId());
|
||||||
|
if (companyInfoBo.getId() == null){
|
||||||
companyInfoService.saveBo(companyInfoBo);
|
companyInfoService.saveBo(companyInfoBo);
|
||||||
|
}else{
|
||||||
|
PsCompanyInfo update = MapstructUtils.convert(bo, PsCompanyInfo.class);
|
||||||
|
companyInfoMapper.updateById(update);
|
||||||
|
for (PsContractBusinessBo psContractBusinessBo : companyInfoBo.getBusinessList()) {
|
||||||
|
psContractBusinessBo.setCompanyId(companyInfoBo.getId());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
for (PsContractBusinessBo psContractBusinessBo : companyInfoBo.getBusinessList()) {
|
for (PsContractBusinessBo psContractBusinessBo : companyInfoBo.getBusinessList()) {
|
||||||
psContractBusinessBo.setStartDate(companyInfoBo.getStartServiceDate());
|
psContractBusinessBo.setStartDate(companyInfoBo.getStartServiceDate());
|
||||||
@ -302,28 +312,112 @@ public class PsContractInfoServiceImpl implements IPsContractInfoService {
|
|||||||
/**
|
/**
|
||||||
* 根据合同编码修改合同信息(开启事务)
|
* 根据合同编码修改合同信息(开启事务)
|
||||||
*
|
*
|
||||||
* @param bo 合同信息
|
* @param updateBo 合同信息
|
||||||
* @return 合同基本信息
|
* @return 合同基本信息
|
||||||
*/
|
*/
|
||||||
@Transactional
|
@Transactional
|
||||||
public boolean updateContractByCode(PsContractInfoBo bo){
|
public boolean updateContractByCode(PsContractInfoBo updateBo){
|
||||||
//1获取合同详情
|
//1获取合同详情
|
||||||
PsContractInfoVo src = queryContractByCode(bo.getContractCode());
|
PsContractInfoVo old = queryContractByCode(updateBo.getContractCode());
|
||||||
//2校验状态
|
//2校验状态
|
||||||
beforeUpdateValid(bo, src);
|
beforeUpdateValid(updateBo, old);
|
||||||
if(bo.getCompanyInfoBo().getCustomId() == null){
|
|
||||||
bo.getCompanyInfoBo().setCustomId(bo.getCustomId());
|
//签约公司填充 客户id
|
||||||
|
if(updateBo.getCompanyInfoBo().getCustomId() == null){
|
||||||
|
updateBo.getCompanyInfoBo().setCustomId(updateBo.getCustomId());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//5.已回款之后的合同修改后走审批
|
||||||
|
if(!ContractStatusEnum.isReturn(old.getContractStatus())){
|
||||||
|
update(old, updateBo);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
//发起审批
|
||||||
|
ApproverService service = container.getService(ApproverTypeEnum.UPDATE.getCode());
|
||||||
|
service.apply(updateBo.getContractCode(),updateBo.getContractCode(),updateBo.getUpdateDesc(), JSON.toJSONString(updateBo));
|
||||||
|
PsContractInfo info = new PsContractInfo();
|
||||||
|
info.setContractCode(updateBo.getContractCode());
|
||||||
|
info.setContractStatus(ContractStatusEnum.UPDATEAPPROVER.getCode());
|
||||||
|
updateByCode(info);
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void update(PsContractInfoVo old, PsContractInfoBo updateBo){
|
||||||
|
if (old.getCompanyId() == null){
|
||||||
|
if (updateBo.getCompanyInfoBo().getId() != null){
|
||||||
|
//签约主体个人转公司,修改公司信息
|
||||||
//3.插入公司信息
|
//3.插入公司信息
|
||||||
companyInfoService.saveBo(bo.getCompanyInfoBo());
|
companyInfoService.saveBo(updateBo.getCompanyInfoBo());
|
||||||
//插入服务公司
|
}else{
|
||||||
for (PsCompanyInfoBo companyInfoBo : bo.getServiceCompanyInfoList()){
|
//签约人信息变化, 不做公司信息修改, 只更新合同表
|
||||||
companyInfoBo.setCompanyType("2");
|
|
||||||
companyInfoService.saveBo(companyInfoBo);
|
|
||||||
}
|
}
|
||||||
|
}else{
|
||||||
|
if (updateBo.getCompanyInfoBo().getId() != null){
|
||||||
|
//签约公司信息变更,修改公司信息
|
||||||
|
//3.插入公司信息
|
||||||
|
companyInfoService.saveBo(updateBo.getCompanyInfoBo());
|
||||||
|
}else{
|
||||||
|
//签约主体公司转个人, 不做公司信息修改, 只更新合同表
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Map<Long, PsCompanyInfoVo> oldCompanyMap = new HashMap<>();
|
||||||
|
for (PsCompanyInfoVo psCompanyInfoVo : old.getPsCompanySerivceVo()) {
|
||||||
|
oldCompanyMap.put(psCompanyInfoVo.getId(), psCompanyInfoVo);
|
||||||
|
}
|
||||||
|
List<PsCompanyInfoBo> addCompany = new ArrayList<>();
|
||||||
|
List<PsCompanyInfoBo> updateCompany = new ArrayList<>();
|
||||||
|
for (PsCompanyInfoBo companyInfoBo : updateBo.getServiceCompanyInfoList()){
|
||||||
|
if (companyInfoBo.getId() == null){
|
||||||
|
addCompany.add(companyInfoBo);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
if (!oldCompanyMap.containsKey(companyInfoBo.getId())){
|
||||||
|
addCompany.add(companyInfoBo);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
updateCompany.add(companyInfoBo);
|
||||||
|
oldCompanyMap.remove(companyInfoBo.getId());
|
||||||
|
}
|
||||||
|
|
||||||
|
for (PsCompanyInfoBo psCompanyInfoBo : updateCompany) {
|
||||||
|
//服务公司信息修改、、服务项目修改
|
||||||
|
|
||||||
|
}
|
||||||
|
for (PsCompanyInfoVo psCompanyInfoBo : oldCompanyMap.values()) {
|
||||||
|
//服务公司删,则删任务,重新校验合同状态,可能已完成
|
||||||
|
QueryWrapper<PsTaskMain> qw = Wrappers.query();
|
||||||
|
//删除标志
|
||||||
|
qw.eq( "info.del_flag", 0);//删除标志
|
||||||
|
|
||||||
|
taskMainMapper.delete(qw);
|
||||||
|
// taskAppointMapper.delete();
|
||||||
|
}
|
||||||
|
for (PsCompanyInfoBo companyInfoBo : addCompany) {
|
||||||
|
//服务公司加,增加任务,重新计算合同是待分配还是已分配
|
||||||
|
companyInfoBo.setCompanyType("2");
|
||||||
|
companyInfoBo.setCustomId(updateBo.getCustomId());
|
||||||
|
if (companyInfoBo.getId() == null){
|
||||||
|
companyInfoService.saveBo(companyInfoBo);
|
||||||
|
}else{
|
||||||
|
PsCompanyInfo update = MapstructUtils.convert(updateBo, PsCompanyInfo.class);
|
||||||
|
companyInfoMapper.updateById(update);
|
||||||
|
for (PsContractBusinessBo psContractBusinessBo : companyInfoBo.getBusinessList()) {
|
||||||
|
psContractBusinessBo.setCompanyId(companyInfoBo.getId());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
//4.装填合同信息
|
//4.装填合同信息
|
||||||
List<PsContractBusinessBo> list = bo.getServiceCompanyInfoList().stream().flatMap(com -> com.getBusinessList().stream()).toList();
|
List<PsContractBusinessBo> list = updateBo.getServiceCompanyInfoList().stream().flatMap(com -> com.getBusinessList().stream()).toList();
|
||||||
list.forEach(item->{
|
for (PsContractBusinessBo item : list) {
|
||||||
BigDecimal mony = BigDecimal.ZERO;
|
BigDecimal mony = BigDecimal.ZERO;
|
||||||
if(CollectionUtils.isNotEmpty(item.getDetailBos())){
|
if(CollectionUtils.isNotEmpty(item.getDetailBos())){
|
||||||
mony = item.getDetailBos().stream().map(PsContractBusinessDetailBo::getAmount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add);
|
mony = item.getDetailBos().stream().map(PsContractBusinessDetailBo::getAmount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add);
|
||||||
@ -332,31 +426,25 @@ public class PsContractInfoServiceImpl implements IPsContractInfoService {
|
|||||||
if(mony.compareTo(BigDecimal.ZERO) > 0){
|
if(mony.compareTo(BigDecimal.ZERO) > 0){
|
||||||
item.setBusinessAmount(mony);
|
item.setBusinessAmount(mony);
|
||||||
}
|
}
|
||||||
});
|
}
|
||||||
BigDecimal sum = list.stream().map(PsContractBusinessBo::getBusinessAmount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add);
|
BigDecimal sum = list.stream().map(PsContractBusinessBo::getBusinessAmount).filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add);
|
||||||
bo.setContractAmount(sum);//合同总金额
|
updateBo.setContractAmount(sum);//合同总金额
|
||||||
|
|
||||||
|
//重新计算当前的合同状态,待回款、待处理、处理中、已完结、已作废;;;已完结和处理中可能会变成待处理
|
||||||
|
if(ContractStatusEnum.isReturn(old.getContractStatus())){
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
//5.已回款之后的合同修改后走审批
|
|
||||||
if(ContractStatusEnum.isReturn(src.getContractStatus())){
|
|
||||||
bo.setContractStatusCode(src.getContractStatus());
|
|
||||||
//发起审批
|
|
||||||
ApproverService service = container.getService(ApproverTypeEnum.UPDATE.getCode());
|
|
||||||
service.apply(bo.getContractCode(),bo.getContractCode(),bo.getUpdateDesc(), JSON.toJSONString(bo));
|
|
||||||
PsContractInfo info = new PsContractInfo();
|
|
||||||
info.setContractCode(bo.getContractCode());
|
|
||||||
info.setContractStatus(ContractStatusEnum.UPDATEAPPROVER.getCode());
|
|
||||||
updateByCode(info);
|
|
||||||
}else{
|
|
||||||
//修改合同
|
|
||||||
PsContractInfo add = new PsContractInfo();
|
PsContractInfo add = new PsContractInfo();
|
||||||
MapstructUtils.convert(bo, add);
|
MapstructUtils.convert(updateBo, add);
|
||||||
add.setCompanyId(bo.getCompanyInfoBo().getId());//公司id
|
add.setCompanyId(updateBo.getCompanyInfoBo().getId());//公司id
|
||||||
this.updateByCode(add);
|
this.updateByCode(add);
|
||||||
//4.删除所有服务类型和服务项目,.插入服务类型
|
//4.删除所有服务类型和服务项目,.插入服务类型
|
||||||
businessService.saveList(list,add.getContractCode());
|
businessService.saveList(list, add.getContractCode());
|
||||||
makePdf(add, bo,true);
|
makePdf(add, updateBo,true);
|
||||||
}
|
|
||||||
return true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -537,11 +625,10 @@ public class PsContractInfoServiceImpl implements IPsContractInfoService {
|
|||||||
* @param businessType 服务类别
|
* @param businessType 服务类别
|
||||||
* @param businessProject 服务项目
|
* @param businessProject 服务项目
|
||||||
*/
|
*/
|
||||||
public void freeWork(String contractCode,String businessType,String businessProject) {
|
public void freeWork(String serviceCompanyId,String businessType,String businessProject) {
|
||||||
PsContractInfoVo info = this.queryContractByCode(contractCode);
|
|
||||||
//发起审批
|
//发起审批
|
||||||
ApproverService service = container.getService(ApproverTypeEnum.FREE.getCode());
|
ApproverService service = container.getService(ApproverTypeEnum.FREE.getCode());
|
||||||
service.apply(info.getContractCode(),info.getContractCode(),null, businessType+"@@"+businessProject);
|
service.apply(serviceCompanyId, "",null, businessType+"@@"+businessProject);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -582,7 +669,7 @@ public class PsContractInfoServiceImpl implements IPsContractInfoService {
|
|||||||
} else {
|
} else {
|
||||||
//合同金额< 8000元,无需回传合同,【电子签章】申请成功后,必须回传合同
|
//合同金额< 8000元,无需回传合同,【电子签章】申请成功后,必须回传合同
|
||||||
if (CommonStatusEnum.ING.getCode().equals(info.getSignStatus())
|
if (CommonStatusEnum.ING.getCode().equals(info.getSignStatus())
|
||||||
|| info.getSignStatus().equals(CommonStatusEnum.SUCCESS.getCode())) {//申请了电子章
|
|| CommonStatusEnum.SUCCESS.getCode().equals(info.getSignStatus())) {//申请了电子章
|
||||||
rollbackFlag = false;
|
rollbackFlag = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -597,7 +684,7 @@ public class PsContractInfoServiceImpl implements IPsContractInfoService {
|
|||||||
} else {
|
} else {
|
||||||
//合同金额< 8000元,无需回传合同,【电子签章】申请成功后,必须回传合同
|
//合同金额< 8000元,无需回传合同,【电子签章】申请成功后,必须回传合同
|
||||||
if (CommonStatusEnum.ING.getCode().equals(info.getSignStatus())
|
if (CommonStatusEnum.ING.getCode().equals(info.getSignStatus())
|
||||||
|| info.getSignStatus().equals(CommonStatusEnum.SUCCESS.getCode())) {//申请了电子章
|
|| CommonStatusEnum.SUCCESS.getCode().equals(info.getSignStatus())) {//申请了电子章
|
||||||
rollbackFlag = false;
|
rollbackFlag = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -628,7 +715,7 @@ public class PsContractInfoServiceImpl implements IPsContractInfoService {
|
|||||||
* 根据合同编码查询服务进度
|
* 根据合同编码查询服务进度
|
||||||
* @param contractCode 合同编码
|
* @param contractCode 合同编码
|
||||||
*/
|
*/
|
||||||
public ServiceScheduleVo queryScheduleByCode(String contractCode){
|
public ServiceScheduleVo queryScheduleByCode(String contractCode, Long serviceCompanyId){
|
||||||
PsContractInfo contractInfo = this.queryByCode(null, contractCode, null).get(0);
|
PsContractInfo contractInfo = this.queryByCode(null, contractCode, null).get(0);
|
||||||
PsCustomInfo customer = customInfoService.listById(contractInfo.getCustomId());
|
PsCustomInfo customer = customInfoService.listById(contractInfo.getCustomId());
|
||||||
|
|
||||||
@ -647,13 +734,14 @@ public class PsContractInfoServiceImpl implements IPsContractInfoService {
|
|||||||
//第一笔回款
|
//第一笔回款
|
||||||
serviceScheduleVo.setFirstPay(CollectionUtils.isNotEmpty(payVoList)?payVoList.get(0).getCreateBy():null);
|
serviceScheduleVo.setFirstPay(CollectionUtils.isNotEmpty(payVoList)?payVoList.get(0).getCreateBy():null);
|
||||||
|
|
||||||
PsTaskMain task = taskMainService.queryByContractCode(contractCode);
|
PsTaskMain task = taskMainService.queryByContractCodeAndServiceCompanyId(contractCode, serviceCompanyId);
|
||||||
List<PsTaskAppoint> appointList = new ArrayList<>();
|
List<PsTaskAppoint> appointList = new ArrayList<>();
|
||||||
if(task != null){
|
if(task != null){
|
||||||
appointList = taskAppointMapper.selectList(Wrappers.<PsTaskAppoint>lambdaQuery()
|
appointList = taskAppointMapper.selectList(Wrappers.<PsTaskAppoint>lambdaQuery()
|
||||||
.eq(PsTaskAppoint::getContractCode, contractCode)
|
.eq(PsTaskAppoint::getContractCode, contractCode)
|
||||||
.ne(PsTaskAppoint::getAppointStatus,AppointStatusEnum.CANCEL.getCode())
|
.ne(PsTaskAppoint::getAppointStatus,AppointStatusEnum.CANCEL.getCode())
|
||||||
.eq(PsTaskAppoint::getTaskId, task.getId()));
|
.eq(PsTaskAppoint::getTaskId, task.getId())
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
//派单者
|
//派单者
|
||||||
@ -661,20 +749,11 @@ public class PsContractInfoServiceImpl implements IPsContractInfoService {
|
|||||||
if(CollectionUtils.isNotEmpty(appointList)){
|
if(CollectionUtils.isNotEmpty(appointList)){
|
||||||
appointList.forEach(item->{
|
appointList.forEach(item->{
|
||||||
if(StringUtils.equals("1",item.getAppointType())){
|
if(StringUtils.equals("1",item.getAppointType())){
|
||||||
//内勤
|
serviceScheduleVo.addIn(new ServiceScheduleVo.UserAndStatus(item.getExecutor(), StringUtils.equals(AppointStatusEnum.FINISH.getCode(),item.getAppointStatus())?1:0));
|
||||||
serviceScheduleVo.setIn(item.getExecutor());
|
|
||||||
//内勤
|
|
||||||
serviceScheduleVo.setInStatus(StringUtils.equals(AppointStatusEnum.FINISH.getCode(),item.getAppointStatus())?1:0);
|
|
||||||
}else if(StringUtils.equals("2",item.getAppointType())){
|
}else if(StringUtils.equals("2",item.getAppointType())){
|
||||||
//外勤
|
serviceScheduleVo.addOut(new ServiceScheduleVo.UserAndStatus(item.getExecutor(), StringUtils.equals(AppointStatusEnum.FINISH.getCode(),item.getAppointStatus())?1:0));
|
||||||
serviceScheduleVo.setOut(item.getExecutor());
|
|
||||||
//外勤
|
|
||||||
serviceScheduleVo.setOutStatus(StringUtils.equals(AppointStatusEnum.FINISH.getCode(),item.getAppointStatus())?1:0);
|
|
||||||
}else{
|
}else{
|
||||||
//特勤
|
serviceScheduleVo.addSecret(new ServiceScheduleVo.UserAndStatus(item.getExecutor(), StringUtils.equals(AppointStatusEnum.FINISH.getCode(),item.getAppointStatus())?1:0));
|
||||||
serviceScheduleVo.setSecret(item.getExecutor());
|
|
||||||
//特勤
|
|
||||||
serviceScheduleVo.setSecretStatus(StringUtils.equals(AppointStatusEnum.FINISH.getCode(),item.getAppointStatus())?1:0);
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -136,7 +136,7 @@ public class PsContractPayServiceImpl implements IPsContractPayService {
|
|||||||
baseMapper.insert(pay);
|
baseMapper.insert(pay);
|
||||||
//发起审批
|
//发起审批
|
||||||
ApproverService service = container.getService(ApproverTypeEnum.RETURN.getCode());
|
ApproverService service = container.getService(ApproverTypeEnum.RETURN.getCode());
|
||||||
service.apply(pay.getId()+"",pay.getContractCode(),payBo.getPayDesc(), pay.getMoney().stripTrailingZeros().toPlainString());
|
service.apply(pay.getId() + "", pay.getContractCode(), payBo.getPayDesc(), pay.getMoney().stripTrailingZeros().toPlainString());
|
||||||
}
|
}
|
||||||
/**
|
/**
|
||||||
* 根据主键id查询回款记录
|
* 根据主键id查询回款记录
|
||||||
|
@ -155,7 +155,8 @@ public class PsCustomInfoServiceImpl implements IPsCustomInfoService {
|
|||||||
//查询公司信息
|
//查询公司信息
|
||||||
List<PsCompanyInfoVo> companyInfoVos = companyInfoMapper.selectVoList(Wrappers.<PsCompanyInfo>lambdaQuery()
|
List<PsCompanyInfoVo> companyInfoVos = companyInfoMapper.selectVoList(Wrappers.<PsCompanyInfo>lambdaQuery()
|
||||||
.in(PsCompanyInfo::getCustomId, ids)
|
.in(PsCompanyInfo::getCustomId, ids)
|
||||||
.eq(PsCompanyInfo::getDelFlag, 0));
|
.eq(PsCompanyInfo::getDelFlag, 0)
|
||||||
|
.eq(PsCompanyInfo::getCompanyType, "1"));
|
||||||
Map<Long, List<PsCompanyInfoVo>> id_companyMap = new HashMap<>();
|
Map<Long, List<PsCompanyInfoVo>> id_companyMap = new HashMap<>();
|
||||||
if(CollectionUtils.isNotEmpty(companyInfoVos)){
|
if(CollectionUtils.isNotEmpty(companyInfoVos)){
|
||||||
//分组
|
//分组
|
||||||
|
@ -121,9 +121,15 @@ public class PsTaskServiceImpl implements IPsTaskService {
|
|||||||
vo.setTaskStatusDesc(approverRecordService.getLastFail(vo.getId() + "",null,List.of(ApproverTypeEnum.TASKCANCE.getCode())));
|
vo.setTaskStatusDesc(approverRecordService.getLastFail(vo.getId() + "",null,List.of(ApproverTypeEnum.TASKCANCE.getCode())));
|
||||||
|
|
||||||
//装填服务公司信息
|
//装填服务公司信息
|
||||||
|
if (vo.getServiceCompanyId() != null){
|
||||||
PsCompanyInfoVo serviceCompany = companyInfoService.queryById(vo.getServiceCompanyId());
|
PsCompanyInfoVo serviceCompany = companyInfoService.queryById(vo.getServiceCompanyId());
|
||||||
vo.setPsCompanySerivceVo(serviceCompany);
|
vo.setPsCompanySerivceVo(serviceCompany);
|
||||||
}
|
}
|
||||||
|
if (vo.getTaskType().equals("2")){
|
||||||
|
vo.setBusinessTypeName(vo.getBusinessType());
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
return TableDataInfo.build(page);
|
return TableDataInfo.build(page);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -151,9 +157,20 @@ public class PsTaskServiceImpl implements IPsTaskService {
|
|||||||
vo.setNumOfDat(DateUtils.calWorkDate(vo.getStartDate(),new Date()));
|
vo.setNumOfDat(DateUtils.calWorkDate(vo.getStartDate(),new Date()));
|
||||||
}
|
}
|
||||||
vo.setTaskStatusDesc(approverRecordService.getLastFail(vo.getId()+"",null,List.of(ApproverTypeEnum.TASKFINISH.getCode())));
|
vo.setTaskStatusDesc(approverRecordService.getLastFail(vo.getId()+"",null,List.of(ApproverTypeEnum.TASKFINISH.getCode())));
|
||||||
|
|
||||||
|
//装填服务公司信息
|
||||||
|
if (vo.getServiceCompanyId() != null){
|
||||||
|
PsCompanyInfoVo serviceCompany = companyInfoService.queryById(vo.getServiceCompanyId());
|
||||||
|
vo.setPsCompanySerivceVo(serviceCompany);
|
||||||
|
}
|
||||||
|
if ("2".equals(vo.getTaskType())){
|
||||||
|
vo.setBusinessTypeName(vo.getBusinessType());
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
return TableDataInfo.build(page);
|
return TableDataInfo.build(page);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询主任务进度
|
* 查询主任务进度
|
||||||
*
|
*
|
||||||
@ -188,21 +205,24 @@ public class PsTaskServiceImpl implements IPsTaskService {
|
|||||||
public PsTaskMainVo queryInfo(String id){
|
public PsTaskMainVo queryInfo(String id){
|
||||||
//查询任务信息
|
//查询任务信息
|
||||||
PsTaskMain mainTask = baseMapper.selectById(id);
|
PsTaskMain mainTask = baseMapper.selectById(id);
|
||||||
Long customId ;
|
Long customId = 0l;
|
||||||
Long companyId ;
|
Long companyId ;
|
||||||
if(mainTask == null){
|
if(mainTask == null){
|
||||||
PsContractInfo con = contractInfoMapper.selectOne(Wrappers.<PsContractInfo>lambdaQuery().eq(PsContractInfo::getContractCode, id).last("limit 1"));
|
// PsContractInfo con = contractInfoMapper.selectOne(Wrappers.<PsContractInfo>lambdaQuery().eq(PsContractInfo::getContractCode, id).last("limit 1"));
|
||||||
customId = con.getCustomId();
|
companyId = Long.valueOf(id);
|
||||||
companyId = con.getCompanyId();
|
PsCompanyInfoVo psCompanyInfoVo = companyInfoService.queryById(companyId);
|
||||||
|
if (psCompanyInfoVo != null){
|
||||||
|
customId = psCompanyInfoVo.getCustomId();
|
||||||
|
}
|
||||||
}else{
|
}else{
|
||||||
customId = mainTask.getCustomId();
|
customId = mainTask.getCustomId();
|
||||||
companyId = mainTask.getCompanyId();
|
companyId = mainTask.getServiceCompanyId();
|
||||||
}
|
}
|
||||||
|
|
||||||
//查询公司信息
|
//查询公司信息
|
||||||
PsCompanyInfoVo companyInfoVo = companyInfoService.queryById(companyId);
|
PsCompanyInfoVo companyInfoVo = companyInfoService.queryById(companyId);
|
||||||
//查询资料信息
|
//查询资料信息
|
||||||
List<PsTaskMediaVo> list = mediaService.queryMediaList(customId,companyId);
|
List<PsTaskMediaVo> list = mediaService.queryMediaList(customId, companyId);
|
||||||
PsTaskMainVo psTaskMainVo = new PsTaskMainVo();
|
PsTaskMainVo psTaskMainVo = new PsTaskMainVo();
|
||||||
psTaskMainVo.setCompanyInfoVo(companyInfoVo);
|
psTaskMainVo.setCompanyInfoVo(companyInfoVo);
|
||||||
psTaskMainVo.setTaskMediaVoList(list);
|
psTaskMainVo.setTaskMediaVoList(list);
|
||||||
@ -218,6 +238,13 @@ public class PsTaskServiceImpl implements IPsTaskService {
|
|||||||
return baseMapper.selectOne(Wrappers.<PsTaskMain>lambdaQuery().eq(PsTaskMain::getContractCode, contractCode)
|
return baseMapper.selectOne(Wrappers.<PsTaskMain>lambdaQuery().eq(PsTaskMain::getContractCode, contractCode)
|
||||||
.eq(PsTaskMain::getTaskType,TaskTypeEnum.CONTRACT.getCode()).ne(PsTaskMain::getTaskStatus,TaskStatusEnum.CANCEL.getCode()));
|
.eq(PsTaskMain::getTaskType,TaskTypeEnum.CONTRACT.getCode()).ne(PsTaskMain::getTaskStatus,TaskStatusEnum.CANCEL.getCode()));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public PsTaskMain queryByContractCodeAndServiceCompanyId(String contractCode, Long serviceCompanyId){
|
||||||
|
return baseMapper.selectOne(Wrappers.<PsTaskMain>lambdaQuery().eq(PsTaskMain::getContractCode, contractCode)
|
||||||
|
.eq(PsTaskMain::getTaskType, TaskTypeEnum.CONTRACT.getCode())
|
||||||
|
.eq(PsTaskMain::getServiceCompanyId, serviceCompanyId)
|
||||||
|
.ne(PsTaskMain::getTaskStatus, TaskStatusEnum.CANCEL.getCode()));
|
||||||
|
}
|
||||||
/**
|
/**
|
||||||
* 上传资料和公司信息
|
* 上传资料和公司信息
|
||||||
*
|
*
|
||||||
@ -232,10 +259,10 @@ public class PsTaskServiceImpl implements IPsTaskService {
|
|||||||
Long companyId ;
|
Long companyId ;
|
||||||
if(save.getId() != null){
|
if(save.getId() != null){
|
||||||
PsTaskMain taskMain = baseMapper.selectById(save.getId());
|
PsTaskMain taskMain = baseMapper.selectById(save.getId());
|
||||||
if(!TaskStatusEnum.canUpload(taskMain.getTaskStatus())){
|
// if(!TaskStatusEnum.canUpload(taskMain.getTaskStatus())){
|
||||||
log.error("任务已完成,无法修改");
|
// log.error("任务已完成,无法修改");
|
||||||
throw new ServiceException("任务已完成,无法修改");
|
// throw new ServiceException("任务已完成,无法修改");
|
||||||
}
|
// }
|
||||||
customerId=taskMain.getCustomId();
|
customerId=taskMain.getCustomId();
|
||||||
companyId=taskMain.getCompanyId();
|
companyId=taskMain.getCompanyId();
|
||||||
}else if(StringUtils.isNotBlank(save.getContractCode())){
|
}else if(StringUtils.isNotBlank(save.getContractCode())){
|
||||||
|
@ -3,13 +3,27 @@
|
|||||||
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||||
<mapper namespace="com.pusong.business.mapper.PsApproverRecordMapper">
|
<mapper namespace="com.pusong.business.mapper.PsApproverRecordMapper">
|
||||||
<select id="selectPageApproverList" resultType="com.pusong.business.domain.vo.PsApproverRecordVo">
|
|
||||||
|
|
||||||
|
<resultMap id="resultMap" type="com.pusong.business.domain.vo.PsApproverRecordVo">
|
||||||
|
<collection columnPrefix="com_" property="psCompanyInfoVo" ofType="com.pusong.business.domain.vo.PsCompanyInfoVo" >
|
||||||
|
</collection>
|
||||||
|
</resultMap>
|
||||||
|
|
||||||
|
<select id="selectPageApproverList" resultMap="resultMap">
|
||||||
select app.*
|
select app.*
|
||||||
, (select pay_certification from ps_contract_pay pca where pca.id = app.business_id and app.business_type = 'pay' ) as pay_certification
|
, (select pay_certification from ps_contract_pay pca where pca.id = app.business_id and app.business_type = 'pay' ) as pay_certification
|
||||||
, info.pdf_id
|
, info.pdf_id
|
||||||
, info.custom_manager
|
, info.custom_manager
|
||||||
, com.id com_id
|
, info.contact_person_name
|
||||||
, com.company_name
|
, info.contact_person_phone
|
||||||
|
, info.contact_person_idcard
|
||||||
|
, com.id company_id
|
||||||
|
, com.company_name com_company_name
|
||||||
|
, com.legal_person_name com_legal_person_name
|
||||||
|
, com.legal_person_idcard com_legal_person_idcard
|
||||||
|
, com.legal_person_phone com_legal_person_phone
|
||||||
|
, com.customer_num com_customer_num
|
||||||
, cus.id cus_id
|
, cus.id cus_id
|
||||||
, cus.custom_name
|
, cus.custom_name
|
||||||
, cus.custom_mobile
|
, cus.custom_mobile
|
||||||
@ -17,7 +31,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||||||
, info.contract_amount
|
, info.contract_amount
|
||||||
, (select GROUP_CONCAT(business.business_type SEPARATOR ',')
|
, (select GROUP_CONCAT(business.business_type SEPARATOR ',')
|
||||||
from ps_contract_business business where business.contract_code = info.contract_code) as business_type_name
|
from ps_contract_business business where business.contract_code = info.contract_code) as business_type_name
|
||||||
, info.contract_amount
|
, info.contract_status
|
||||||
, (select IFNULL(sum(pa.money),0) from ps_contract_pay pa where pa.pay_status = 1 and pa.business_type = 1 and pa.contract_code = info.contract_code
|
, (select IFNULL(sum(pa.money),0) from ps_contract_pay pa where pa.pay_status = 1 and pa.business_type = 1 and pa.contract_code = info.contract_code
|
||||||
)-(select IFNULL(sum(pay.money),0) from ps_contract_pay pay where pay.pay_status = 1 and pay.business_type = 2 and pay.contract_code = info.contract_code)
|
)-(select IFNULL(sum(pay.money),0) from ps_contract_pay pay where pay.pay_status = 1 and pay.business_type = 2 and pay.contract_code = info.contract_code)
|
||||||
as pay_money
|
as pay_money
|
||||||
@ -28,6 +42,24 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||||||
${ew.getCustomSqlSegment}
|
${ew.getCustomSqlSegment}
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<select id="selectPageFreeApproverList" resultMap="resultMap">
|
||||||
|
select app.*
|
||||||
|
, (select pay_certification from ps_contract_pay pca where pca.id = app.business_id and app.business_type = 'pay' ) as pay_certification
|
||||||
|
, com.id com_id
|
||||||
|
, com.company_name com_company_name
|
||||||
|
, com.company_adress com_company_adress
|
||||||
|
, cus.id cus_id
|
||||||
|
, cus.custom_name
|
||||||
|
, cus.custom_mobile
|
||||||
|
, cus.custom_manager
|
||||||
|
from ps_approver_record app
|
||||||
|
left join ps_company_info com on app.business_id = com.id
|
||||||
|
left join ps_custom_info cus on cus.id = com.custom_id
|
||||||
|
${ew.getCustomSqlSegment}
|
||||||
|
</select>
|
||||||
|
|
||||||
<select id="selectPagePublicList" resultType="com.pusong.business.domain.vo.PsApproverRecordVo">
|
<select id="selectPagePublicList" resultType="com.pusong.business.domain.vo.PsApproverRecordVo">
|
||||||
select app.*
|
select app.*
|
||||||
, cus.custom_source
|
, cus.custom_source
|
||||||
|
@ -19,6 +19,17 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||||||
|
|
||||||
</resultMap>
|
</resultMap>
|
||||||
|
|
||||||
|
<select id="selectVoCustomManagerById" resultType="com.pusong.business.domain.vo.PsCompanyInfoVo">
|
||||||
|
select
|
||||||
|
com.*
|
||||||
|
,cus.custom_manager
|
||||||
|
from ps_company_info com
|
||||||
|
left join ps_custom_info cus on cus.id = com.custom_id
|
||||||
|
where com.id = ${id}
|
||||||
|
</select>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<select id="selectPageList" resultMap="serviceCompanyServiceResult">
|
<select id="selectPageList" resultMap="serviceCompanyServiceResult">
|
||||||
select
|
select
|
||||||
com.*,
|
com.*,
|
||||||
@ -36,7 +47,22 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||||||
${ew.getCustomSqlSegment}
|
${ew.getCustomSqlSegment}
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<select id="selectPageList2" resultMap="serviceCompanyServiceResult">
|
||||||
|
select
|
||||||
|
com.*,
|
||||||
|
cus.custom_manager,
|
||||||
|
cus.custom_name,
|
||||||
|
cus.custom_mobile,
|
||||||
|
cusi.custom_name custom_introducer,
|
||||||
|
usr.user_id fu_user_id,
|
||||||
|
usr.nick_name fu_nick_name
|
||||||
|
from ps_company_info com
|
||||||
|
left join ps_custom_info cus on com.custom_id = cus.id
|
||||||
|
left join ps_custom_info cusi on cus.custom_introducer = cusi.id
|
||||||
|
left join ps_company_follow cf on com.id = cf.company_id
|
||||||
|
left join sys_user usr on cf.user_id = usr.user_id
|
||||||
|
${ew.getCustomSqlSegment}
|
||||||
|
</select>
|
||||||
|
|
||||||
<select id="selectServiceCompanyList" resultMap="serviceCompanyServiceResult">
|
<select id="selectServiceCompanyList" resultMap="serviceCompanyServiceResult">
|
||||||
select com.*,
|
select com.*,
|
||||||
|
@ -9,23 +9,24 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||||||
</collection>
|
</collection>
|
||||||
<collection columnPrefix="com_" property="companyInfoVo" ofType="com.pusong.business.domain.vo.PsCompanyInfoVo" >
|
<collection columnPrefix="com_" property="companyInfoVo" ofType="com.pusong.business.domain.vo.PsCompanyInfoVo" >
|
||||||
</collection>
|
</collection>
|
||||||
|
<collection columnPrefix="scom_" property="psCompanySerivceVo" ofType="com.pusong.business.domain.vo.PsCompanyInfoVo" >
|
||||||
|
</collection>
|
||||||
<collection columnPrefix="cus_" property="customInfoVo" ofType="com.pusong.business.domain.vo.PsCustomInfoVo" >
|
<collection columnPrefix="cus_" property="customInfoVo" ofType="com.pusong.business.domain.vo.PsCustomInfoVo" >
|
||||||
</collection>
|
</collection>
|
||||||
<collection columnPrefix="appoint_" property="psTaskAppointVoList" ofType="com.pusong.business.domain.vo.PsTaskAppointVo" >
|
<collection columnPrefix="appoint_" property="psTaskAppointVoList" ofType="com.pusong.business.domain.vo.PsTaskAppointVo" >
|
||||||
</collection>
|
</collection>
|
||||||
|
|
||||||
|
<collection property="psTaskAppointVoList" javaType="ArrayList"
|
||||||
|
column="main_id" ofType="com.pusong.business.domain.vo.PsTaskAppointVo"
|
||||||
|
select="queryByMainId" fetchType="eager">
|
||||||
|
</collection>
|
||||||
|
|
||||||
</resultMap>
|
</resultMap>
|
||||||
|
|
||||||
|
|
||||||
<sql id="queryTask">
|
<sql id="queryTask">
|
||||||
select main.id,
|
select main.*,
|
||||||
main.task_type,
|
main.id main_id,
|
||||||
main.start_date,
|
|
||||||
main.task_status,
|
|
||||||
main.contract_code,
|
|
||||||
main.invoice,
|
|
||||||
main.extend,
|
|
||||||
main.comment,
|
|
||||||
main.service_company_id,
|
|
||||||
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,
|
||||||
@ -48,11 +49,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||||||
cus.id cus_id,
|
cus.id cus_id,
|
||||||
cus.custom_name cus_custom_name ,
|
cus.custom_name cus_custom_name ,
|
||||||
cus.custom_mobile cus_custom_mobile,
|
cus.custom_mobile cus_custom_mobile,
|
||||||
appoint.executor appoint_executor,
|
|
||||||
appoint.task_desc appoint_task_desc,
|
|
||||||
appoint.task_content_desc appoint_task_content_desc,
|
|
||||||
appoint.appoint_type appoint_appoint_type,
|
|
||||||
appoint.appoint_status appoint_appoint_status,
|
|
||||||
(select pta.id from ps_task_appoint pta where pta.task_id=main.id and pta.appoint_type=1 and pta.appoint_status != '50' and pta.del_flag = '0' order by id desc limit 0,1) as inAppo,
|
(select pta.id from ps_task_appoint pta where pta.task_id=main.id and pta.appoint_type=1 and pta.appoint_status != '50' and pta.del_flag = '0' order by id desc limit 0,1) as inAppo,
|
||||||
(select pta.id from ps_task_appoint pta where pta.task_id=main.id and pta.appoint_type=2 and pta.appoint_status != '50' and pta.del_flag = '0' order by id desc limit 0,1) as outAppo,
|
(select pta.id from ps_task_appoint pta where pta.task_id=main.id and pta.appoint_type=2 and pta.appoint_status != '50' and pta.del_flag = '0' order by id desc limit 0,1) as outAppo,
|
||||||
(select pta.id from ps_task_appoint pta where pta.task_id=main.id and pta.appoint_type=3 and pta.appoint_status != '50' and pta.del_flag = '0' order by id desc limit 0,1) as secAppo,
|
(select pta.id from ps_task_appoint pta where pta.task_id=main.id and pta.appoint_type=3 and pta.appoint_status != '50' and pta.del_flag = '0' order by id desc limit 0,1) as secAppo,
|
||||||
@ -68,7 +65,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||||||
left join ps_company_info com on con.company_id = com.id
|
left join ps_company_info com on con.company_id = com.id
|
||||||
left join ps_custom_info cus on con.custom_id = cus.id
|
left join ps_custom_info cus on con.custom_id = cus.id
|
||||||
left join sys_user usr on con.custom_manager = usr.user_id
|
left join sys_user usr on con.custom_manager = usr.user_id
|
||||||
left join ps_task_appoint appoint on appoint.task_id = main.id and appoint.appoint_status != '50' and appoint.del_flag = '0'
|
|
||||||
</sql>
|
</sql>
|
||||||
<select id="queryTaskPageList" resultMap="taskMainResult">
|
<select id="queryTaskPageList" resultMap="taskMainResult">
|
||||||
<include refid="queryTask"/>
|
<include refid="queryTask"/>
|
||||||
@ -78,28 +74,32 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||||||
<include refid="queryTask"/>
|
<include refid="queryTask"/>
|
||||||
${ew.getCustomSqlSegment}
|
${ew.getCustomSqlSegment}
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<select id="queryByMainId" resultType="com.pusong.business.domain.vo.PsTaskAppointVo">
|
||||||
|
select * from ps_task_appoint
|
||||||
|
where
|
||||||
|
task_id = ${mainId} and appoint_status != '50' and del_flag = '0'
|
||||||
|
</select>
|
||||||
<select id="queryChildTaskPageList" resultMap="taskMainResult">
|
<select id="queryChildTaskPageList" resultMap="taskMainResult">
|
||||||
select
|
select
|
||||||
main.task_type,
|
appo.executor as executors,
|
||||||
main.start_date,
|
appo.*,
|
||||||
main.task_status,
|
main.*,
|
||||||
main.contract_code,
|
|
||||||
main.id main_id,
|
main.id main_id,
|
||||||
main.extend,
|
|
||||||
con.is_proxy con_is_proxy,
|
con.is_proxy con_is_proxy,
|
||||||
con.custom_scene con_custom_scene,
|
con.custom_scene con_custom_scene,
|
||||||
con.custom_manager con_custom_manager,
|
con.custom_manager con_custom_manager,
|
||||||
usr.nick_name con_custom_manager_name,
|
usr.nick_name con_custom_manager_name,
|
||||||
con.sign_desc con_sign_desc,
|
con.sign_desc con_sign_desc,
|
||||||
com.id com_id,
|
com.id scom_id,
|
||||||
com.company_adress com_company_adress,
|
com.company_adress scom_company_adress,
|
||||||
com.company_name com_company_name,
|
com.company_name scom_company_name,
|
||||||
com.legal_person_name com_legal_person_name,
|
com.legal_person_name scom_legal_person_name,
|
||||||
com.legal_person_idcard com_legal_person_idcard,
|
com.legal_person_idcard scom_legal_person_idcard,
|
||||||
com.legal_person_phone com_legal_person_phone,
|
com.legal_person_phone scom_legal_person_phone,
|
||||||
com.customer_num com_customer_num,
|
com.customer_num scom_customer_num,
|
||||||
com.customer_cert com_customer_cert,
|
com.customer_cert scom_customer_cert,
|
||||||
com.finance_account_no com_finance_account_no,
|
com.finance_account_no scom_finance_account_no,
|
||||||
cus.id cus_id,
|
cus.id cus_id,
|
||||||
cus.custom_name cus_custom_name ,
|
cus.custom_name cus_custom_name ,
|
||||||
cus.custom_mobile cus_custom_mobile,
|
cus.custom_mobile cus_custom_mobile,
|
||||||
@ -107,18 +107,21 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||||||
(select IFNULL(sum(money),0) from ps_contract_pay pay where pay.business_type =1 and pay.contract_code = main.contract_code and pay.pay_status = '1' ) +
|
(select IFNULL(sum(money),0) from ps_contract_pay pay where pay.business_type =1 and pay.contract_code = main.contract_code and pay.pay_status = '1' ) +
|
||||||
(select IFNULL(sum(money),0) from ps_contract_pay cpay where cpay.business_type =2 and cpay.contract_code = main.contract_code )
|
(select IFNULL(sum(money),0) from ps_contract_pay cpay where cpay.business_type =2 and cpay.contract_code = main.contract_code )
|
||||||
) > 0 THEN '半款' ELSE '全款' END) as pay_stauts_desc,
|
) > 0 THEN '半款' ELSE '全款' END) as pay_stauts_desc,
|
||||||
appo.executor as executors,
|
|
||||||
appo.appoint_status,
|
|
||||||
appo.id,
|
|
||||||
appo.task_desc,
|
|
||||||
appo.task_content_desc,
|
|
||||||
(select GROUP_CONCAT(business.business_type SEPARATOR ',') from ps_contract_business business where business.contract_code = con.contract_code and business.del_flag = '0') as business_type_name
|
(select GROUP_CONCAT(business.business_type SEPARATOR ',') from ps_contract_business business where business.contract_code = con.contract_code and business.del_flag = '0') as business_type_name
|
||||||
|
-- ,
|
||||||
|
-- appoint.executor appoint_executor,
|
||||||
|
-- appoint.task_desc appoint_task_desc,
|
||||||
|
-- appoint.task_content_desc appoint_task_content_desc,
|
||||||
|
-- appoint.appoint_type appoint_appoint_type,
|
||||||
|
-- appoint.appoint_status appoint_appoint_status
|
||||||
from ps_task_appoint appo
|
from ps_task_appoint appo
|
||||||
left join ps_task_main main on appo.task_id = main.id and appo.appoint_status != '50'
|
left join ps_task_main main on appo.task_id = main.id and appo.appoint_status != '50'
|
||||||
left join ps_contract_info con on main.contract_code = con.contract_code
|
left join ps_contract_info con on main.contract_code = con.contract_code
|
||||||
left join ps_company_info com on con.company_id = com.id
|
left join ps_company_info com on main.service_company_id = com.id
|
||||||
left join ps_custom_info cus on con.custom_id = cus.id
|
left join ps_custom_info cus on con.custom_id = cus.id
|
||||||
left join sys_user usr on con.custom_manager = usr.user_id
|
left join sys_user usr on con.custom_manager = usr.user_id
|
||||||
|
-- left join ps_task_appoint appoint on appoint.task_id = main.id and appoint.appoint_status != '50' and appoint.del_flag = '0'
|
||||||
|
|
||||||
${ew.getCustomSqlSegment}
|
${ew.getCustomSqlSegment}
|
||||||
</select>
|
</select>
|
||||||
|
@ -1,2 +0,0 @@
|
|||||||
%PDF-1.4
|
|
||||||
%粤マモ
|
|
Loading…
Reference in New Issue
Block a user