jiangping
2024-03-05 2e1ac74716f62ca5712d0187cb7d7d25ee13efe5
server/company/src/main/java/com/doumee/api/business/MemberController.java
@@ -8,17 +8,21 @@
import com.doumee.core.model.PageWrap;
import com.doumee.core.model.PageData;
import com.doumee.core.utils.Constants;
import com.doumee.dao.business.dto.MemberImport;
import com.doumee.dao.business.dto.MemberQueryDTO;
import com.doumee.dao.business.model.Member;
import com.doumee.dao.business.model.MemberInsurance;
import com.doumee.service.business.MemberService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.*;
import org.apache.shiro.SecurityUtils;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletResponse;
import java.io.File;
import java.util.ArrayList;
import java.util.List;
@@ -76,20 +80,17 @@
    @PostMapping("/page")
    @RequiresPermissions("business:member:query")
    public ApiResponse<PageData<Member>> findPage (@RequestBody PageWrap<MemberQueryDTO> pageWrap) {
        LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
        pageWrap.getModel().setCompanyId(user.getCompanyId());
        return ApiResponse.success(memberService.findPageForCompany(pageWrap));
    }
    @ApiOperation("导出Excel")
    @PostMapping("/exportExcel")
    @RequiresPermissions("business:member:exportExcel")
    public void exportExcel (@RequestBody PageWrap<MemberQueryDTO> pageWrap, HttpServletResponse response) {
        LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
        pageWrap.getModel().setCompanyId(user.getCompanyId());
        ExcelExporter.build(Member.class).export(memberService.findPageForCompany(pageWrap).getRecords(), "用工信息表", response);
        ExcelExporter.build(Member.class).exportWithFirstAndEnd( memberService.findPageForCompany(pageWrap).getRecords(), "员工列表详单","员工列表详单",null, response);
    }
    @ApiOperation("根据ID查询")
    @GetMapping("/{id}")
@@ -109,4 +110,16 @@
        }
        return ApiResponse.success(memberService.findListByDTO(memberQueryDTO));
    }
    @ApiOperation(value = "人员信息导入" ,notes = "保单申请")
    @PostMapping("/importExcel")
    @ApiImplicitParams({
            @ApiImplicitParam(name = "file", value = "file", required = true, paramType = "query", dataType = "file", dataTypeClass = File.class),
    })
    @RequiresPermissions("business:worktype:create")
    public ApiResponse<List<MemberImport>> importExcel (@ApiParam(value = "file") MultipartFile file,Integer  solutionId) {
        return ApiResponse.success(memberService.importBatch(file,solutionId));
    }
}