Merge remote-tracking branch 'origin/feature/REQ-3982' into feature/REQ-3982
This commit is contained in:
commit
98e4fb7961
@ -11,6 +11,7 @@ import lombok.NoArgsConstructor;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
import java.util.Set;
|
||||
|
||||
@ -181,6 +182,11 @@ public class VisaChangePageSearchResp {
|
||||
*/
|
||||
private Set<VisaButtonTypeEnum> operateBtnSet;
|
||||
|
||||
/**
|
||||
* 区域集合
|
||||
*/
|
||||
private List<VisaDetailByIdResponse.RelationAreaDetail> relationAreaList;
|
||||
|
||||
public String getTypeDesc() {
|
||||
if (Objects.isNull(type)) {
|
||||
return null;
|
||||
|
||||
@ -1,20 +1,5 @@
|
||||
package cn.axzo.nanopart.visa.api.response;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
import java.util.Set;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import org.apache.commons.collections.CollectionUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.google.common.collect.Lists;
|
||||
import com.google.common.collect.Sets;
|
||||
|
||||
import cn.axzo.maokai.common.enums.SaasCooperateShipCooperateTypeEnum;
|
||||
import cn.axzo.nanopart.visa.api.enums.VisaButtonTypeEnum;
|
||||
import cn.axzo.nanopart.visa.api.enums.VisaStampStatusEnum;
|
||||
@ -22,12 +7,25 @@ import cn.axzo.nanopart.visa.api.enums.VisaStatusEnum;
|
||||
import cn.axzo.nanopart.visa.api.enums.VisaTypeEnum;
|
||||
import cn.axzo.nanopart.visa.api.request.VisaChangeTempCreateReq;
|
||||
import cn.axzo.workflow.common.model.response.form.model.FormModelVO;
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.google.common.collect.Lists;
|
||||
import com.google.common.collect.Sets;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.Getter;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.Setter;
|
||||
import org.apache.commons.collections.CollectionUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
import java.util.Set;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* @author xudawei
|
||||
@ -253,6 +251,16 @@ public class VisaDetailByIdResponse {
|
||||
*/
|
||||
private VisaStampStatusEnum stampStatus;
|
||||
|
||||
/**
|
||||
* 业务合同名称
|
||||
*/
|
||||
private String contractName;
|
||||
|
||||
/**
|
||||
* 业务合同编号
|
||||
*/
|
||||
private String contractNo;
|
||||
|
||||
/**
|
||||
* 相关审批表单
|
||||
*/
|
||||
|
||||
@ -1,6 +1,7 @@
|
||||
package cn.axzo.nanopart.visa.server.service.impl;
|
||||
|
||||
import cn.axzo.apollo.api.req.QueryOrderToBasicReq;
|
||||
import cn.axzo.apollo.api.res.ConstructionAreaDTO;
|
||||
import cn.axzo.apollo.api.res.ConstructionAreaInfo;
|
||||
import cn.axzo.apollo.api.res.TaskOrderToBasicRes;
|
||||
import cn.axzo.apollo.workspace.api.workspace.req.QueryProjectApiReq;
|
||||
@ -466,6 +467,8 @@ public class ChangeRecordServiceImpl extends ServiceImpl<ChangeRecordDao, Change
|
||||
.contractId(visa.getContractId())
|
||||
.contractIdPay(visa.getContractIdPay())
|
||||
.stampStatus(visa.getStampStatus())
|
||||
.contractName(visa.getContractName())
|
||||
.contractNo(visa.getContractNo())
|
||||
.build();
|
||||
}
|
||||
|
||||
@ -1285,6 +1288,9 @@ public class ChangeRecordServiceImpl extends ServiceImpl<ChangeRecordDao, Change
|
||||
// 操作列按钮
|
||||
Map<Long, Set<VisaButtonTypeEnum>> operateBtnMap = visaHelper.fetchBtnsByBizTypeAndStatus(records, req.getCurrentPersonId(), req.getCurrentOuId(), req.getCurrentWorkspaceId());
|
||||
|
||||
// 发生区域
|
||||
Map<Long, List<VisaDetailByIdResponse.RelationAreaDetail>> visaIdAreaMap = buildRelationArea(records);
|
||||
|
||||
/*组装信息*/
|
||||
return records.stream()
|
||||
.map(r -> {
|
||||
@ -1299,11 +1305,35 @@ public class ChangeRecordServiceImpl extends ServiceImpl<ChangeRecordDao, Change
|
||||
resp.setOperateBtnSet(CollUtil.isNotEmpty(operateBtnMap) ? operateBtnMap.get(r.getId()) : null);
|
||||
// 审批流程状态
|
||||
resp.setVisaApprovalStatus(buildApprovalStatus(r));
|
||||
// 发生区域
|
||||
resp.setRelationAreaList(visaIdAreaMap.getOrDefault(r.getId(), Collections.emptyList()));
|
||||
return resp;
|
||||
})
|
||||
.collect(Collectors.toList());
|
||||
}
|
||||
|
||||
private Map<Long, List<VisaDetailByIdResponse.RelationAreaDetail>> buildRelationArea(List<ChangeRecord> records) {
|
||||
Map<Long, List<VisaDetailByIdResponse.RelationAreaDetail>> visaIdAreaMap = records.stream()
|
||||
.collect(Collectors.toMap(ChangeRecord::getId, r -> VisaDetailByIdResponse.RelationAreaDetail.buildAreaWithObject(r.getRelationArea())));
|
||||
List<ConstructionAreaDTO> areaFullNameInfoByAreaId = apolloConstructionAreaGateway.getAreaFullNameInfoByAreaId(visaIdAreaMap.values().stream()
|
||||
.flatMap(Collection::stream)
|
||||
.map(VisaDetailByIdResponse.RelationAreaDetail::getAreaId)
|
||||
.distinct()
|
||||
.collect(Collectors.toList()));
|
||||
if (CollectionUtils.isNotEmpty(areaFullNameInfoByAreaId)) {
|
||||
Map<Long, String> areaIdAndNameMap = areaFullNameInfoByAreaId.stream()
|
||||
.collect(Collectors.toMap(ConstructionAreaDTO::getId, ConstructionAreaDTO::getAreaFullName, (v1, v2) -> v1));
|
||||
visaIdAreaMap.forEach((visaId, areas) -> {
|
||||
if (CollUtil.isNotEmpty(areaIdAndNameMap) && CollUtil.isNotEmpty(areas)) {
|
||||
areas.forEach(area -> {
|
||||
area.setAreaName(areaIdAndNameMap.get(area.getAreaId()));
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
return visaIdAreaMap;
|
||||
}
|
||||
|
||||
/**
|
||||
* 立项审批和价款审批状态联合决定审批状态
|
||||
*
|
||||
|
||||
Loading…
Reference in New Issue
Block a user