Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@
import cn.cordys.common.constants.PermissionConstants;
import cn.cordys.common.domain.BaseModuleFieldValue;
import cn.cordys.common.dto.*;
import cn.cordys.common.dto.condition.CombineSearch;
import cn.cordys.common.dto.condition.FilterCondition;
import cn.cordys.common.exception.GenericException;
import cn.cordys.common.pager.PageUtils;
Expand All @@ -35,7 +34,6 @@
import cn.cordys.crm.contract.mapper.ExtContractSnapshotMapper;
import cn.cordys.crm.customer.domain.Customer;
import cn.cordys.crm.opportunity.constants.ApprovalState;
import cn.cordys.crm.system.constants.FieldType;
import cn.cordys.crm.system.constants.NotificationConstants;
import cn.cordys.crm.system.domain.Attachment;
import cn.cordys.crm.system.domain.MessageTaskConfig;
Expand Down Expand Up @@ -717,29 +715,25 @@ public List<Contract> getContractListByNames(List<String> names) {
* 设置默认的数据源搜索条件
* @return 搜索条件
*/
public CombineSearch setDefaultSourceCombine() {
public List<FilterCondition> getDefaultSourceFilters() {
// 只展示状态为通过且非作废/归档阶段的合同
CombineSearch combineSearch = new CombineSearch();
combineSearch.setSearchMode("AND");
List<FilterCondition> conditions = new ArrayList<>();

FilterCondition statusCondition = new FilterCondition();
statusCondition.setMultipleValue(true);
statusCondition.setMultipleValue(false);
statusCondition.setName("approvalStatus");
statusCondition.setOperator(FilterCondition.CombineConditionOperator.IN.name());
statusCondition.setValue(List.of(ContractApprovalStatus.APPROVED.name()));
statusCondition.setType(FieldType.SELECT_MULTIPLE.name());
conditions.add(statusCondition);

FilterCondition stageCondition = new FilterCondition();
stageCondition.setMultipleValue(true);
stageCondition.setMultipleValue(false);
stageCondition.setName("stage");
stageCondition.setOperator(FilterCondition.CombineConditionOperator.NOT_IN.name());
stageCondition.setValue(List.of(ContractStage.ARCHIVED.name(), ContractStage.VOID.name()));
statusCondition.setType(FieldType.SELECT_MULTIPLE.name());
stageCondition.setOperator(FilterCondition.CombineConditionOperator.IN.name());
stageCondition.setValue(List.of(ContractStage.PENDING_SIGNING.name(), ContractStage.SIGNED.name(),
ContractStage.IN_PROGRESS.name(), ContractStage.COMPLETED_PERFORMANCE.name()));
conditions.add(stageCondition);

combineSearch.setConditions(conditions);
return combineSearch;
return conditions;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,7 @@
import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.annotation.Resource;
import jakarta.validation.Valid;
import org.apache.commons.collections4.ListUtils;
import org.springframework.web.bind.annotation.*;

import java.util.List;
Expand Down Expand Up @@ -157,7 +158,7 @@ public Pager<List<OpportunityQuotationListResponse>> sourceOpportunityQuotationP
@PostMapping("/source/contract")
@Operation(summary = "分页获取合同")
public Pager<List<ContractListResponse>> sourceContractPage(@Valid @RequestBody ContractPageRequest request) {
request.setCombineSearch(contractService.setDefaultSourceCombine());
request.setFilters(ListUtils.union(contractService.getDefaultSourceFilters(), request.getFilters()));
request.setCombineSearch(request.getCombineSearch().convert());
DeptDataPermissionDTO deptDataPermission = dataScopeService.getDeptDataPermission(SessionUtils.getUserId(), OrganizationContext.getOrganizationId(), InternalUserView.ALL.name(),
PermissionConstants.CONTRACT_READ);
Expand Down
Loading