初始化
This commit is contained in:
149
src/main/java/org/chenyon/contract/ContractService.java
Normal file
149
src/main/java/org/chenyon/contract/ContractService.java
Normal file
@@ -0,0 +1,149 @@
|
||||
package org.chenyon.contract;
|
||||
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.chenyon.assets.vo.AssetsVo;
|
||||
import org.chenyon.file.OaFileHandlerService;
|
||||
import org.chenyon.file.OaFileLocalRefVo;
|
||||
import org.chenyon.file.OaFileVo;
|
||||
import org.chenyon.oa.OaContractService;
|
||||
import org.chenyon.oa.asset.OaAssetsVo;
|
||||
import org.chenyon.oa.contract.OaContractVo;
|
||||
import org.rcy.framework.api.entity.PageResult;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
@Service
|
||||
public class ContractService {
|
||||
|
||||
@Autowired
|
||||
private OaContractService oaContractService;
|
||||
@Autowired
|
||||
private OaFileHandlerService oaFileHandlerService;
|
||||
|
||||
private void hanldeSignStatus(ContractQueryCondition condition) {
|
||||
if (StringUtils.isNotBlank(condition.getSignStatus())) {
|
||||
switch (condition.getSignStatus()){
|
||||
case "all": condition.setSignStatus(null);break;
|
||||
case "pending" : condition.setSignStatus("待签署");break;
|
||||
case "signed" : condition.setSignStatus("已签署");break;
|
||||
case "expired" : condition.setSignStatus("已过期");break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private String convertSignStatus(String status) {
|
||||
if (StringUtils.isNotBlank(status)) {
|
||||
switch (status){
|
||||
case "待签署" : return "pending";
|
||||
case "已签署" : return "signed";
|
||||
case "已过期" : return "expired";
|
||||
}
|
||||
}
|
||||
return "";
|
||||
}
|
||||
|
||||
public PageResult<ContractVo> queryContractPage(ContractQueryCondition condition) throws Exception {
|
||||
//调用OA接口查询
|
||||
hanldeSignStatus(condition);
|
||||
PageResult<OaContractVo> pageResultOa = oaContractService.pageQueryContract(condition);
|
||||
PageResult<ContractVo> pageResult = new PageResult<>();
|
||||
pageResult.setPageNo(pageResultOa.getPageNo());
|
||||
pageResult.setPageSize(pageResultOa.getPageSize());
|
||||
pageResult.setRecordTotal(pageResultOa.getRecordTotal());
|
||||
List<ContractVo> contractVoList = new ArrayList<>();
|
||||
for (OaContractVo oaContractVo : pageResultOa.getResult()) {
|
||||
ContractVo contractVo = new ContractVo();
|
||||
BeanUtils.copyProperties(oaContractVo, contractVo);
|
||||
if(oaContractVo.getAssetsVos() != null) {
|
||||
List<OaAssetsVo> assetsVos = oaContractVo.getAssetsVos();
|
||||
OaAssetsVo assetsVo = assetsVos.get(0);
|
||||
List<String> assetsDetailImgs = oaFileHandlerService.getUrls(true,assetsVo.getAssetsNo(), assetsVo.getFormId(), "AssetsDetailImg", assetsVo.getDetailImg());
|
||||
if(assetsDetailImgs != null) {
|
||||
contractVo.setCoverImgUrl(assetsDetailImgs.get(0));
|
||||
}
|
||||
}
|
||||
contractVo.setSignStatus(convertSignStatus(contractVo.getSignStatus()));
|
||||
contractVoList.add(contractVo);
|
||||
}
|
||||
pageResult.setResult(contractVoList);
|
||||
return pageResult;
|
||||
}
|
||||
|
||||
public List<ContractVo> queryAll(String cusNo) throws Exception {
|
||||
ContractQueryCondition condition = new ContractQueryCondition();
|
||||
condition.setCusNo(cusNo);
|
||||
condition.setSignStatus("已签署");
|
||||
List<ContractVo> contractVos = new ArrayList<>();
|
||||
List<OaContractVo> oaContractVos = oaContractService.queryAll(condition);
|
||||
for (OaContractVo oaContractVo : oaContractVos) {
|
||||
ContractVo contractVo = new ContractVo();
|
||||
BeanUtils.copyProperties(oaContractVo, contractVo);
|
||||
contractVos.add(contractVo);
|
||||
}
|
||||
return contractVos;
|
||||
}
|
||||
|
||||
public ContractAssetsVo queryMoreContractAssets(String formId,Integer pageNo,Integer pageSize) throws Exception {
|
||||
ContractQueryCondition condition = new ContractQueryCondition();
|
||||
condition.setFormmainId(formId);
|
||||
condition.setPageNo(pageNo);
|
||||
condition.setPageSize(pageSize);
|
||||
OaAssetsVo assetsVo = oaContractService.pageQueryContractAssets(condition);
|
||||
List<String> assetsDetailImgs = oaFileHandlerService.getUrls(true,assetsVo.getAssetsNo(), assetsVo.getFormId(), "AssetsDetailImg", assetsVo.getDetailImg());
|
||||
ContractAssetsVo assetsInfo = new ContractAssetsVo();
|
||||
BeanUtils.copyProperties(assetsVo, assetsInfo);
|
||||
RentFeeInfo rentFeeInfo = new RentFeeInfo();
|
||||
if(StringUtils.isNotBlank(assetsVo.getRentFee())){
|
||||
rentFeeInfo.setRentFee(Double.parseDouble(assetsVo.getRentFee()));
|
||||
}
|
||||
assetsInfo.setFeeInfo(rentFeeInfo);
|
||||
if(assetsDetailImgs != null) {
|
||||
assetsInfo.setCover(assetsDetailImgs.get(0));
|
||||
}
|
||||
return assetsInfo;
|
||||
}
|
||||
public Integer countUnsign(String cusNo) throws Exception {
|
||||
Integer count = oaContractService.countUnsign(cusNo);
|
||||
return count;
|
||||
}
|
||||
|
||||
public ContractVo queryContractDetail(String cusNo,String contractNo) throws Exception {
|
||||
ContractQueryCondition condition = new ContractQueryCondition();
|
||||
condition.setContractNo(contractNo);
|
||||
OaContractVo oaContractVo = oaContractService.queryContractDetail(condition);
|
||||
if(!cusNo.equals(oaContractVo.getCusNo())) {
|
||||
return null;
|
||||
}
|
||||
ContractVo contractVo = new ContractVo();
|
||||
BeanUtils.copyProperties(oaContractVo, contractVo);
|
||||
List<OaAssetsVo> assetsVos = oaContractVo.getAssetsVos();
|
||||
OaAssetsVo assetsVo = assetsVos.get(0);
|
||||
List<String> assetsDetailImgs = oaFileHandlerService.getUrls(true,assetsVo.getAssetsNo(), assetsVo.getFormId(), "AssetsDetailImg", assetsVo.getDetailImg());
|
||||
List<String> eContractUrl = oaFileHandlerService.getUrls(false,cusNo,oaContractVo.getContractNo(),oaContractVo.getFormId(),"eContractFile",oaContractVo.geteContractFile());
|
||||
ContractAssetsVo assetsInfo = new ContractAssetsVo();
|
||||
BeanUtils.copyProperties(assetsVo, assetsInfo);
|
||||
RentFeeInfo rentFeeInfo = new RentFeeInfo();
|
||||
if(StringUtils.isNotBlank(assetsVo.getRentFee())){
|
||||
rentFeeInfo.setRentFee(Double.parseDouble(assetsVo.getRentFee()));
|
||||
}
|
||||
assetsInfo.setFeeInfo(rentFeeInfo);
|
||||
if(assetsDetailImgs != null) {
|
||||
assetsInfo.setCover(assetsDetailImgs.get(0));
|
||||
}
|
||||
if(eContractUrl != null) {
|
||||
contractVo.seteContractUrl(eContractUrl.get(0));
|
||||
}
|
||||
List<ContractAssetsVo> assetsInfoList = new ArrayList<>();
|
||||
assetsInfoList.add(assetsInfo);
|
||||
contractVo.setAssetsInfos(assetsInfoList);
|
||||
return contractVo;
|
||||
}
|
||||
public String getSignLink(String eFlowId) throws Exception {
|
||||
String signLink = oaContractService.getSignLink(eFlowId);
|
||||
return signLink;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user