jiangping
2023-12-22 e7b486f54ecee830749151e0fd8feae726fd4107
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
package com.doumee.api.web;
 
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.doumee.core.erp.model.openapi.request.erp.ApproveAddRequest;
import com.doumee.core.erp.model.openapi.request.erp.UserFailRequest;
import com.doumee.core.erp.model.openapi.response.erp.ERPApiResponse;
import com.doumee.core.erp.model.openapi.response.erp.ErpOrgListResponse;
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
import com.doumee.core.erp.model.openapi.request.erp.OrgListRequest;
import com.doumee.core.erp.model.openapi.request.erp.UserListRequest;
import com.doumee.core.erp.model.openapi.response.erp.ApproveInfoResponse;
import com.doumee.core.erp.model.openapi.response.erp.ErpUserListResponse;
import com.doumee.core.utils.Constants;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
 
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.UUID;
 
/**
 * Created by IntelliJ IDEA.
 *
 * @Author : Rk
 * @create 2023/5/5 16:02
 */
 
@Api(tags = "2、【ERP】端提供接口(向访客端提供或提交数据信息)")
@RestController
@RequestMapping("/erp/resource")
@Slf4j
public class ErpResourceController extends ApiController {
    @ApiOperation(value = "全量组织信息接口", notes = "ERP端提供,供访客端拉取全部组织信息,用于初始化及周期性数据核查")
    @PostMapping("/org/list")
    public ERPApiResponse<PageData<ErpOrgListResponse>> orgList (@RequestBody PageWrap<OrgListRequest> pageWrap) {
        List<ErpOrgListResponse> list = new ArrayList<>();
        String[] ids = new String[]{"","001","002","003"};
        String[] names = new String[]{"","组织1","组织2","组织3"};
        for(int i=1;i<4;i++){
            ErpOrgListResponse r = new ErpOrgListResponse();
            r.setParentOrgId(ids[i-1]);
            r.setId(ids[i]);
            r.setCreateDate(new Date());
            r.setCode(ids[i]);
            r.setStatus(Constants.ZERO);
            r.setName(names[i]);
            list.add(r);
        }
        IPage<ErpOrgListResponse> pageInfo = new Page<>(1,10,3);
        pageInfo.setTotal(3);
        pageInfo.setRecords(list);
        PageData<ErpOrgListResponse> r = PageData.from( pageInfo);
        return ERPApiResponse.success(r);
    }
    @ApiOperation(value = "全量人员信息接口", notes = "ERP端提供,供访客端拉取全部人员信息,用于初始化及周期性数据核查")
    @PostMapping("/user/list")
    public ERPApiResponse<PageData<ErpUserListResponse>> userList (@RequestBody PageWrap<UserListRequest> pageWrap) {
        List<ErpUserListResponse> list = new ArrayList<>();
        String[] ids = new String[]{"","1001","1002","1003"};
        String[] names = new String[]{"","人员1","人员2","人员3"};
        String[] orgs = new String[]{"","001","002","003"};
        for(int i=1;i<4;i++){
            ErpUserListResponse r = new ErpUserListResponse();
            r.setOrgId(orgs[i]);
            r.setId(ids[i]);
            r.setName(names[i-1]);
            r.setCode( ids[i]);
            r.setIdNo("34112219880427042"+i);
            r.setIsdeleted(Constants.ONE);
            r.setName(names[i]);
            r.setFaceImg("/20223402/"+r.getId()+".png");
            list.add(r);
        }
        IPage<ErpUserListResponse> pageInfo = new Page<>(1,10,3);
        pageInfo.setRecords(list);
        pageInfo.setTotal(3);
        PageData<ErpUserListResponse> r = PageData.from( pageInfo);
        return ERPApiResponse.success(r);
    }
    @ApiOperation(value = "访客申请提交审批接口", notes = "ERP端提供,供访客端调用,提交访客申请信息,接口提交成功,ERP端返回审批记录编码")
    @PostMapping("/event/approve/apply")
    public ERPApiResponse<String> approveApply(@RequestBody ApproveAddRequest param ) {
        return ERPApiResponse.success(UUID.randomUUID().toString());
    }
    @ApiOperation(value = "访客申请审批结果查询接口", notes = "ERP端提供,供访客端调用,查询访客申请审批结果")
    @GetMapping("/approve/info")
    @ApiImplicitParams({
            @ApiImplicitParam(paramType = "query", dataType = "String", name = "id", value = "审批记录唯一标识", required = true)
    })
    public ERPApiResponse<ApproveInfoResponse> approveInfo(@RequestParam String id ) {
        return ERPApiResponse.success(null );
    }
    @ApiOperation(value = "员工同步失败推送接口", notes = "ERP端提供,供访客端调用,告知erp员工信息同步失败的数据")
    @PostMapping("/member/fail")
    public ERPApiResponse memberFail(@RequestBody List<UserFailRequest> param) {
        return ERPApiResponse.success(null );
    }
 
}