|
@@ -0,0 +1,154 @@
|
|
|
+package cn.iocoder.yudao.module.bpm.controller.admin.stamp.stampinfo;
|
|
|
+
|
|
|
+import cn.iocoder.yudao.framework.apilog.core.annotation.ApiAccessLog;
|
|
|
+import cn.iocoder.yudao.framework.common.pojo.CommonResult;
|
|
|
+import cn.iocoder.yudao.framework.common.pojo.PageParam;
|
|
|
+import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
|
|
+import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
|
|
+import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
|
|
|
+import cn.iocoder.yudao.module.bpm.controller.admin.stamp.stampinfo.vo.OaStampInfoPageReqVO;
|
|
|
+import cn.iocoder.yudao.module.bpm.controller.admin.stamp.stampinfo.vo.OaStampInfoRespVO;
|
|
|
+import cn.iocoder.yudao.module.bpm.controller.admin.stamp.stampinfo.vo.OaStampInfoSaveReqVO;
|
|
|
+import cn.iocoder.yudao.module.bpm.dal.dataobject.stamp.stampinfo.OaStampInfoDO;
|
|
|
+import cn.iocoder.yudao.module.bpm.service.stamp.stampinfo.OaStampInfoService;
|
|
|
+import cn.iocoder.yudao.module.system.api.dept.DeptApi;
|
|
|
+import cn.iocoder.yudao.module.system.api.dept.dto.DeptRespDTO;
|
|
|
+import cn.iocoder.yudao.module.system.api.user.AdminUserApi;
|
|
|
+import cn.iocoder.yudao.module.system.api.user.dto.AdminUserRespDTO;
|
|
|
+import io.swagger.v3.oas.annotations.Operation;
|
|
|
+import io.swagger.v3.oas.annotations.Parameter;
|
|
|
+import io.swagger.v3.oas.annotations.tags.Tag;
|
|
|
+import org.springdoc.api.annotations.ParameterObject;
|
|
|
+import org.springframework.validation.annotation.Validated;
|
|
|
+import org.springframework.web.bind.annotation.*;
|
|
|
+
|
|
|
+import javax.annotation.Resource;
|
|
|
+import javax.servlet.http.HttpServletResponse;
|
|
|
+import javax.validation.Valid;
|
|
|
+import java.io.IOException;
|
|
|
+import java.util.List;
|
|
|
+
|
|
|
+import static cn.iocoder.yudao.framework.apilog.core.enums.OperateTypeEnum.EXPORT;
|
|
|
+import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
|
|
|
+
|
|
|
+@Tag(name = "管理后台 - 用印信息")
|
|
|
+@RestController
|
|
|
+@RequestMapping("/bpm/oa-stamp-info")
|
|
|
+@Validated
|
|
|
+public class OaStampInfoController {
|
|
|
+
|
|
|
+ @Resource
|
|
|
+ private OaStampInfoService oaStampInfoService;
|
|
|
+
|
|
|
+ @Resource
|
|
|
+ private AdminUserApi adminUserApi;
|
|
|
+
|
|
|
+ @Resource
|
|
|
+ private DeptApi deptApi;
|
|
|
+
|
|
|
+ @PostMapping("/create")
|
|
|
+ @Operation(summary = "创建用印信息")
|
|
|
+
|
|
|
+ public CommonResult<Long> createOaStampInfo(@Valid @RequestBody OaStampInfoSaveReqVO createReqVO) {
|
|
|
+ return success(oaStampInfoService.createOaStampInfo(createReqVO));
|
|
|
+ }
|
|
|
+
|
|
|
+ @PutMapping("/update")
|
|
|
+ @Operation(summary = "更新用印信息")
|
|
|
+
|
|
|
+ public CommonResult<Boolean> updateOaStampInfo(@Valid @RequestBody OaStampInfoSaveReqVO updateReqVO) {
|
|
|
+ oaStampInfoService.updateOaStampInfo(updateReqVO);
|
|
|
+ return success(true);
|
|
|
+ }
|
|
|
+
|
|
|
+ @PutMapping("/invalid")
|
|
|
+ @Operation(summary = "作废用印信息")
|
|
|
+ @Parameter(name = "id", description = "编号", required = true)
|
|
|
+
|
|
|
+ public CommonResult<Boolean> invalidOaStampInfo(@RequestParam("id") Long id) {
|
|
|
+ oaStampInfoService.invalidOaStampInfo(id);
|
|
|
+ return success(true);
|
|
|
+ }
|
|
|
+
|
|
|
+ @DeleteMapping("/delete")
|
|
|
+ @Operation(summary = "删除用印信息")
|
|
|
+ @Parameter(name = "id", description = "编号", required = true)
|
|
|
+
|
|
|
+ public CommonResult<Boolean> deleteOaStampInfo(@RequestParam("id") Long id) {
|
|
|
+ oaStampInfoService.deleteOaStampInfo(id);
|
|
|
+ return success(true);
|
|
|
+ }
|
|
|
+
|
|
|
+ @GetMapping("/get")
|
|
|
+ @Operation(summary = "获得用印信息")
|
|
|
+ @Parameter(name = "id", description = "编号", required = true, example = "1024")
|
|
|
+
|
|
|
+ public CommonResult<OaStampInfoRespVO> getOaStampInfo(@RequestParam("id") Long id) {
|
|
|
+ OaStampInfoDO oaStampInfo = oaStampInfoService.getOaStampInfo(id);
|
|
|
+ OaStampInfoRespVO oaStampInfoRespVO = BeanUtils.toBean(oaStampInfo, OaStampInfoRespVO.class);
|
|
|
+
|
|
|
+ String status = oaStampInfoRespVO.getStatus();
|
|
|
+ switch (status) {
|
|
|
+ case "0":
|
|
|
+ oaStampInfoRespVO.setStatusDesc("已完成");
|
|
|
+ break;
|
|
|
+ case "1":
|
|
|
+ oaStampInfoRespVO.setStatusDesc("已作废");
|
|
|
+ break;
|
|
|
+ default:
|
|
|
+ oaStampInfoRespVO.setStatusDesc("未知");
|
|
|
+ break;
|
|
|
+ }
|
|
|
+
|
|
|
+ String infoSource = oaStampInfoRespVO.getInfoSource();
|
|
|
+ switch (infoSource) {
|
|
|
+ case "0":
|
|
|
+ oaStampInfoRespVO.setInfoSourceDesc("流程添加");
|
|
|
+ break;
|
|
|
+ case "1":
|
|
|
+ oaStampInfoRespVO.setInfoSourceDesc("手动添加");
|
|
|
+ break;
|
|
|
+ default:
|
|
|
+ oaStampInfoRespVO.setInfoSourceDesc("未知");
|
|
|
+ break;
|
|
|
+ }
|
|
|
+
|
|
|
+ Long createEmployeeId = oaStampInfoRespVO.getCreateEmployeeId();
|
|
|
+ AdminUserRespDTO createEmployee = adminUserApi.getUser(createEmployeeId);
|
|
|
+ oaStampInfoRespVO.setCreateEmployeeName(createEmployee.getNickname());
|
|
|
+
|
|
|
+ Long employeeId = oaStampInfoRespVO.getEmployeeId();
|
|
|
+ AdminUserRespDTO employee = adminUserApi.getUser(employeeId);
|
|
|
+ oaStampInfoRespVO.setEmployeeName(employee.getNickname());
|
|
|
+ oaStampInfoRespVO.setEmployeePhone(employee.getMobile());
|
|
|
+ oaStampInfoRespVO.setPosition("职位信息");
|
|
|
+
|
|
|
+ Long deptId = oaStampInfoRespVO.getDeptId();
|
|
|
+ DeptRespDTO dept = deptApi.getDept(deptId);
|
|
|
+ oaStampInfoRespVO.setDeptName(dept.getName());
|
|
|
+
|
|
|
+ return success(oaStampInfoRespVO);
|
|
|
+ }
|
|
|
+
|
|
|
+ @GetMapping("/page")
|
|
|
+ @Operation(summary = "获得用印信息分页")
|
|
|
+
|
|
|
+ public CommonResult<PageResult<OaStampInfoRespVO>> getOaStampInfoPage(@Valid @ParameterObject OaStampInfoPageReqVO pageReqVO) {
|
|
|
+ PageResult<OaStampInfoRespVO> pageResult = oaStampInfoService.getOaStampInfoPage(pageReqVO);
|
|
|
+ return success(pageResult);
|
|
|
+ }
|
|
|
+
|
|
|
+ @GetMapping("/export-excel")
|
|
|
+ @Operation(summary = "导出用印信息 Excel")
|
|
|
+
|
|
|
+ @ApiAccessLog(operateType = EXPORT)
|
|
|
+ public void exportOaStampInfoExcel(@Valid OaStampInfoPageReqVO pageReqVO,
|
|
|
+ HttpServletResponse response) throws IOException {
|
|
|
+ pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
|
|
|
+ List<OaStampInfoRespVO> list = oaStampInfoService.getOaStampInfoPage(pageReqVO).getList();
|
|
|
+
|
|
|
+ ExcelUtils.write(response, "用印信息.xls", "数据", OaStampInfoRespVO.class,
|
|
|
+ list);
|
|
|
+ }
|
|
|
+
|
|
|
+}
|