k94314517
2024-10-31 bc47afc824f8d7097855f16328f644930570fe58
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/MemberCloudController.java
@@ -23,7 +23,10 @@
import com.doumee.service.business.MemberService;
import com.doumee.service.business.ext.ERPSyncService;
import com.doumee.service.business.impl.hksync.fhk.HkSyncOrgUserFromHKServiceImpl;
import com.doumee.service.business.impl.hksync.fhk.HkSyncOrgUserFromSelfServiceImpl;
import com.github.xiaoymin.knife4j.core.util.CollectionUtils;
import io.swagger.annotations.*;
import org.apache.commons.lang3.StringUtils;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
@@ -46,6 +49,8 @@
    private ERPSyncService erpSyncService;
    @Autowired
    private HkSyncOrgUserFromHKServiceImpl hkSyncOrgUserFHKService;
    @Autowired
    private HkSyncOrgUserFromSelfServiceImpl hkSyncOrgUserFromSelfService;
    @Autowired
    private DataSyncConfig dataSyncConfig;
@@ -263,8 +268,26 @@
    @ApiOperation("导出Excel")
    @PostMapping("/exportExcel")
    @CloudRequiredPermission("business:member:exportExcel")
    public void exportExcel (@RequestBody PageWrap<Member> pageWrap, HttpServletResponse response,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
        ExcelExporter.build(Member.class).export(memberService.findPage(pageWrap).getRecords(), "人员信息表", response);
    public void exportExcel (@RequestBody PageWrap<MemberQuery> pageWrap, HttpServletResponse response,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
        List<Member> memberList =  new ArrayList<>();
        if(pageWrap.getModel().getType().equals(Constants.memberType.visitor)){
             memberList =  memberService.findVisitPage(pageWrap).getRecords();
        }else if(pageWrap.getModel().getType().equals(Constants.memberType.internal)){
            pageWrap.getModel().setLoginUserInfo(this.getLoginUser(token));
            memberList =  memberService.findMemberInfoPage(pageWrap).getRecords();
        }
        if(CollectionUtils.isNotEmpty(memberList)){
            for (Member member:memberList) {
                if(StringUtils.isNotBlank(member.getFaceImg())){
                    member.setHavaFaceImg(Constants.ONE);
                }else{
                    member.setHavaFaceImg(Constants.ZERO);
                }
            }
        }
        ExcelExporter.build(Member.class).export(memberList, "人员信息表", response);
    }
    @ApiOperation("根据ID查询")
@@ -290,6 +313,7 @@
        if(pageWrap.getModel().getType().equals(Constants.memberType.visitor)){
            return ApiResponse.success(memberService.findVisitPage(pageWrap));
        }else if(pageWrap.getModel().getType().equals(Constants.memberType.internal)){
            pageWrap.getModel().setLoginUserInfo(this.getLoginUser(token));
            return ApiResponse.success(memberService.findMemberInfoPage(pageWrap));
        }else {
            return ApiResponse.success(null);
@@ -321,11 +345,14 @@
    @ApiOperation("全量信息同步")
    @PostMapping("/syncAll")
    @CloudRequiredPermission("business:member:sync")
    public ApiResponse sync(){
    public ApiResponse sync(@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
        if(Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) == DataSyncConfig.origin.erp){
            erpSyncService.syncUsers(null);
        }else if(Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) == DataSyncConfig.origin.hk){
            hkSyncOrgUserFHKService.syncUserData();
            hkSyncOrgUserFHKService.syncUserData(this.getLoginUser(token));
        }else if(Constants.formatIntegerNum(dataSyncConfig.getOrgUserDataOrigin()) == DataSyncConfig.origin.self){
            hkSyncOrgUserFromSelfService.syncUserData(this.getLoginUser(token));
            return ApiResponse.success("同步成功");
        }
        return ApiResponse.success("同步成功");
    }