Skip to content

Commit c20f319

Browse files
AgAnglefit2-zhao
authored andcommitted
feat: contract payment plan page api
1 parent 861477c commit c20f319

File tree

10 files changed

+494
-52
lines changed

10 files changed

+494
-52
lines changed

backend/crm/src/main/java/cn/cordys/common/constants/PermissionConstants.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -187,10 +187,10 @@ public class PermissionConstants {
187187
/*------ end: CONTRACT ------*/
188188

189189
/*------ start: CONTRACT_CONTRACT_PAYMENT_PLAN_ROLE ------*/
190-
public static final String CONTRACT_CONTRACT_PAYMENT_PLAN_READ = "CONTRACT_CONTRACT_PAYMENT_PLAN:READ";
191-
public static final String CONTRACT_CONTRACT_PAYMENT_PLAN_ADD = "CONTRACT_CONTRACT_PAYMENT_PLAN:ADD";
192-
public static final String CONTRACT_CONTRACT_PAYMENT_PLAN_UPDATE = "CONTRACT_CONTRACT_PAYMENT_PLAN:UPDATE";
193-
public static final String CONTRACT_CONTRACT_PAYMENT_PLAN_DELETE = "CONTRACT_CONTRACT_PAYMENT_PLAN:DELETE";
190+
public static final String CONTRACT_PAYMENT_PLAN_READ = "CONTRACT_CONTRACT_PAYMENT_PLAN:READ";
191+
public static final String CONTRACT_PAYMENT_PLAN_ADD = "CONTRACT_CONTRACT_PAYMENT_PLAN:ADD";
192+
public static final String CONTRACT_PAYMENT_PLAN_UPDATE = "CONTRACT_CONTRACT_PAYMENT_PLAN:UPDATE";
193+
public static final String CONTRACT_PAYMENT_PLAN_DELETE = "CONTRACT_CONTRACT_PAYMENT_PLAN:DELETE";
194194
/*------ end: CONTRACT_CONTRACT_PAYMENT_PLAN_ROLE ------*/
195195
}
196196

backend/crm/src/main/java/cn/cordys/crm/contract/controller/ContractPaymentPlanController.java

Lines changed: 27 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,26 @@
11
package cn.cordys.crm.contract.controller;
22

3-
import com.github.pagehelper.Page;
4-
import com.github.pagehelper.PageHelper;
3+
import cn.cordys.common.constants.PermissionConstants;
4+
import cn.cordys.common.dto.DeptDataPermissionDTO;
5+
import cn.cordys.common.pager.PagerWithOption;
6+
import cn.cordys.common.service.DataScopeService;
7+
import cn.cordys.common.utils.ConditionFilterUtils;
8+
import cn.cordys.context.OrganizationContext;
9+
import cn.cordys.crm.contract.domain.ContractPaymentPlan;
10+
import cn.cordys.crm.contract.dto.request.ContractPaymentPlanAddRequest;
11+
import cn.cordys.crm.contract.dto.request.ContractPaymentPlanPageRequest;
12+
import cn.cordys.crm.contract.dto.request.ContractPaymentPlanUpdateRequest;
13+
import cn.cordys.crm.contract.dto.response.ContractPaymentPlanGetResponse;
14+
import cn.cordys.crm.contract.dto.response.ContractPaymentPlanListResponse;
15+
import cn.cordys.crm.contract.service.ContractPaymentPlanService;
16+
import cn.cordys.security.SessionUtils;
517
import io.swagger.v3.oas.annotations.Operation;
618
import io.swagger.v3.oas.annotations.tags.Tag;
19+
import jakarta.annotation.Resource;
720
import org.apache.shiro.authz.annotation.RequiresPermissions;
821
import org.springframework.validation.annotation.Validated;
922
import org.springframework.web.bind.annotation.*;
10-
import jakarta.annotation.Resource;
11-
import cn.cordys.common.constants.PermissionConstants;
12-
import cn.cordys.context.OrganizationContext;
1323

14-
import cn.cordys.common.pager.Pager;
15-
import cn.cordys.security.SessionUtils;
16-
import cn.cordys.crm.contract.domain.ContractPaymentPlan;
17-
import cn.cordys.crm.contract.dto.request.*;
18-
import cn.cordys.crm.contract.dto.response.*;
19-
20-
import cn.cordys.crm.contract.service.ContractPaymentPlanService;
21-
import cn.cordys.common.pager.PageUtils;
2224
import java.util.List;
2325

2426
/**
@@ -32,38 +34,42 @@
3234
public class ContractPaymentPlanController {
3335
@Resource
3436
private ContractPaymentPlanService contractPaymentPlanService;
37+
@Resource
38+
private DataScopeService dataScopeService;
3539

3640
@PostMapping("/page")
37-
@RequiresPermissions(PermissionConstants.CONTRACT_CONTRACT_PAYMENT_PLAN_READ)
41+
@RequiresPermissions(PermissionConstants.CONTRACT_PAYMENT_PLAN_READ)
3842
@Operation(summary = "合同回款计划列表")
39-
public Pager<List<ContractPaymentPlanListResponse>> list(@Validated @RequestBody ContractPaymentPlanPageRequest request) {
40-
Page<Object> page = PageHelper.startPage(request.getCurrent(), request.getPageSize());
41-
return PageUtils.setPageInfo(page, contractPaymentPlanService.list(request, OrganizationContext.getOrganizationId()));
43+
public PagerWithOption<List<ContractPaymentPlanListResponse>> list(@Validated @RequestBody ContractPaymentPlanPageRequest request) {
44+
ConditionFilterUtils.parseCondition(request);
45+
DeptDataPermissionDTO deptDataPermission = dataScopeService.getDeptDataPermission(SessionUtils.getUserId(),
46+
OrganizationContext.getOrganizationId(), request.getViewId(), PermissionConstants.CONTRACT_PAYMENT_PLAN_READ);
47+
return contractPaymentPlanService.list(request, SessionUtils.getUserId(), OrganizationContext.getOrganizationId(), deptDataPermission);
4248
}
4349

4450
@GetMapping("/get/{id}")
45-
@RequiresPermissions(PermissionConstants.CONTRACT_CONTRACT_PAYMENT_PLAN_READ)
51+
@RequiresPermissions(PermissionConstants.CONTRACT_PAYMENT_PLAN_READ)
4652
@Operation(summary = "合同回款计划详情")
4753
public ContractPaymentPlanGetResponse get(@PathVariable String id){
4854
return contractPaymentPlanService.get(id);
4955
}
5056

5157
@PostMapping("/add")
52-
@RequiresPermissions(PermissionConstants.CONTRACT_CONTRACT_PAYMENT_PLAN_ADD)
58+
@RequiresPermissions(PermissionConstants.CONTRACT_PAYMENT_PLAN_ADD)
5359
@Operation(summary = "添加合同回款计划")
5460
public ContractPaymentPlan add(@Validated @RequestBody ContractPaymentPlanAddRequest request) {
5561
return contractPaymentPlanService.add(request, SessionUtils.getUserId(), OrganizationContext.getOrganizationId());
5662
}
5763

5864
@PostMapping("/update")
59-
@RequiresPermissions(PermissionConstants.CONTRACT_CONTRACT_PAYMENT_PLAN_UPDATE)
65+
@RequiresPermissions(PermissionConstants.CONTRACT_PAYMENT_PLAN_UPDATE)
6066
@Operation(summary = "更新合同回款计划")
6167
public ContractPaymentPlan update(@Validated @RequestBody ContractPaymentPlanUpdateRequest request) {
6268
return contractPaymentPlanService.update(request, SessionUtils.getUserId());
6369
}
6470

6571
@GetMapping("/delete/{id}")
66-
@RequiresPermissions(PermissionConstants.CONTRACT_CONTRACT_PAYMENT_PLAN_DELETE)
72+
@RequiresPermissions(PermissionConstants.CONTRACT_PAYMENT_PLAN_DELETE)
6773
@Operation(summary = "删除合同回款计划")
6874
public void delete(@PathVariable String id) {
6975
contractPaymentPlanService.delete(id);
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
package cn.cordys.crm.contract.domain;
2+
3+
import cn.cordys.common.domain.BaseResourceField;
4+
import jakarta.persistence.Table;
5+
import lombok.Data;
6+
7+
8+
/**
9+
* 合同回款自定义属性
10+
*
11+
* @author jianxing
12+
* @date 2025-02-10 18:12:46
13+
*/
14+
@Data
15+
@Table(name = "contract_payment_plan_field")
16+
public class ContractPaymentPlanField extends BaseResourceField {
17+
}
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
package cn.cordys.crm.contract.domain;
2+
3+
import cn.cordys.common.domain.BaseResourceField;
4+
import jakarta.persistence.Table;
5+
import lombok.Data;
6+
7+
8+
/**
9+
* 合同回款自定义属性大文本
10+
*
11+
* @author jianxing
12+
* @date 2025-02-27 14:43:46
13+
*/
14+
@Data
15+
@Table(name = "contract_payment_plan_field_blob")
16+
public class ContractPaymentPlanFieldBlob extends BaseResourceField {
17+
}

backend/crm/src/main/java/cn/cordys/crm/contract/dto/response/ContractPaymentPlanListResponse.java

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,12 @@
11
package cn.cordys.crm.contract.dto.response;
22

3+
import cn.cordys.common.domain.BaseModuleFieldValue;
34
import lombok.Data;
45
import io.swagger.v3.oas.annotations.media.Schema;
56
import cn.cordys.crm.contract.domain.ContractPaymentPlan;
67

8+
import java.util.List;
9+
710
/**
811
*
912
* @author jianxing
@@ -16,4 +19,19 @@ public class ContractPaymentPlanListResponse extends ContractPaymentPlan {
1619

1720
@Schema(description = "更新人名称")
1821
private String updateUserName;
22+
23+
@Schema(description = "负责人名称")
24+
private String ownerName;
25+
26+
@Schema(description = "归属部门")
27+
private String departmentId;
28+
29+
@Schema(description = "归属部门名称")
30+
private String departmentName;
31+
32+
@Schema(description = "合同名称")
33+
private String contractName;
34+
35+
@Schema(description = "自定义字段集合")
36+
private List<BaseModuleFieldValue> moduleFields;
1937
}
Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
package cn.cordys.crm.contract.mapper;
22

3-
import cn.cordys.crm.contract.dto.request.*;
4-
import cn.cordys.crm.contract.dto.response.*;
3+
import cn.cordys.common.dto.DeptDataPermissionDTO;
4+
import cn.cordys.crm.contract.dto.request.ContractPaymentPlanPageRequest;
5+
import cn.cordys.crm.contract.dto.response.ContractPaymentPlanListResponse;
56
import org.apache.ibatis.annotations.Param;
6-
import cn.cordys.crm.contract.domain.ContractPaymentPlan;
77

88
import java.util.List;
99

@@ -13,10 +13,7 @@
1313
* @date 2025-11-21 15:11:29
1414
*/
1515
public interface ExtContractPaymentPlanMapper {
16+
List<ContractPaymentPlanListResponse> list(@Param("request") ContractPaymentPlanPageRequest request, @Param("userId") String userId,
17+
@Param("orgId") String orgId, @Param("dataPermission") DeptDataPermissionDTO deptDataPermission);
1618

17-
List<ContractPaymentPlanListResponse> list(@Param("request") ContractPaymentPlanPageRequest request, @Param("orgId") String orgId);
18-
19-
boolean checkAddExist(@Param("contractPaymentPlan") ContractPaymentPlan contractPaymentPlan);
20-
21-
boolean checkUpdateExist(@Param("contractPaymentPlan") ContractPaymentPlan ContractPaymentPlan);
2219
}

0 commit comments

Comments
 (0)