| 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.setIsdeleted(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[]{"","DM1004","DM1005","DM1006"}; | 
|         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.setPhone("1534569000"+i); | 
|             r.setStatus(Constants.ZERO); | 
|             r.setRoleIds(new Integer[]{21+(i%2)}); | 
|             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 ); | 
|     } | 
|   | 
| } |