添加hrm模块
This commit is contained in:
54
fad-hrm/pom.xml
Normal file
54
fad-hrm/pom.xml
Normal file
@@ -0,0 +1,54 @@
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<parent>
|
||||
<groupId>com.ruoyi</groupId>
|
||||
<artifactId>ruoyi-flowable-plus</artifactId>
|
||||
<version>0.8.3</version>
|
||||
</parent>
|
||||
<artifactId>fad-hrm</artifactId>
|
||||
<name>Archetype - ruoyi-hrm</name>
|
||||
<url>http://maven.apache.org</url>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>com.ruoyi</groupId>
|
||||
<artifactId>ruoyi-common</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.projectlombok</groupId>
|
||||
<artifactId>lombok</artifactId>
|
||||
<scope>provided</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.baomidou</groupId>
|
||||
<artifactId>mybatis-plus-annotation</artifactId>
|
||||
<version>3.5.9</version>
|
||||
<scope>compile</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.alibaba</groupId>
|
||||
<artifactId>fastjson</artifactId>
|
||||
<version>1.2.83</version>
|
||||
</dependency>
|
||||
<!-- 阿里JSON解析器 -->
|
||||
<dependency>
|
||||
<groupId>com.alibaba.fastjson2</groupId>
|
||||
<artifactId>fastjson2</artifactId>
|
||||
<version>2.0.35</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.ruoyi</groupId>
|
||||
<artifactId>ruoyi-system</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.ruoyi</groupId>
|
||||
<artifactId>ruoyi-oss</artifactId>
|
||||
</dependency>
|
||||
<!-- PDF 盖章(Java方案) -->
|
||||
<dependency>
|
||||
<groupId>org.apache.pdfbox</groupId>
|
||||
<artifactId>pdfbox</artifactId>
|
||||
<version>2.0.29</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
</project>
|
||||
@@ -0,0 +1,40 @@
|
||||
package com.ruoyi.hrm.config;
|
||||
|
||||
import lombok.Data;
|
||||
import org.springframework.boot.context.properties.ConfigurationProperties;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
/**
|
||||
* Stamp service configuration.
|
||||
*/
|
||||
@Data
|
||||
@Component
|
||||
@ConfigurationProperties(prefix = "stamp")
|
||||
public class StampProperties {
|
||||
|
||||
private PythonService pythonService = new PythonService();
|
||||
private JavaService javaService = new JavaService();
|
||||
|
||||
@Data
|
||||
public static class PythonService {
|
||||
/**
|
||||
* Whether to call external python stamp service.
|
||||
*/
|
||||
private boolean enabled = false;
|
||||
private String baseUrl;
|
||||
private String apiKey;
|
||||
private Integer timeoutMs = 5000;
|
||||
}
|
||||
|
||||
@Data
|
||||
public static class JavaService {
|
||||
/**
|
||||
* Enable in-Java stamping.
|
||||
*/
|
||||
private boolean enabled = true;
|
||||
/**
|
||||
* Default DPI for px → user-space conversion if needed.
|
||||
*/
|
||||
private Integer dpi = 72;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,64 @@
|
||||
package com.ruoyi.hrm.controller;
|
||||
|
||||
import com.ruoyi.common.annotation.Log;
|
||||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
import com.ruoyi.common.core.domain.R;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.common.enums.BusinessType;
|
||||
import com.ruoyi.hrm.domain.bo.HrmAttendCalcBo;
|
||||
import com.ruoyi.hrm.domain.vo.HrmAttendCalcVo;
|
||||
import com.ruoyi.hrm.service.IHrmAttendCalcService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 考勤结果(按用户要求本接口不做鉴权)
|
||||
*/
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/hrm/attend")
|
||||
public class HrmAttendCalcController extends BaseController {
|
||||
|
||||
private final IHrmAttendCalcService service;
|
||||
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<HrmAttendCalcVo> list(HrmAttendCalcBo bo, PageQuery pageQuery) {
|
||||
return service.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
@GetMapping("/{calcId}")
|
||||
public R<HrmAttendCalcVo> getInfo(@PathVariable @NotNull Long calcId) {
|
||||
return R.ok(service.queryById(calcId));
|
||||
}
|
||||
|
||||
@Log(title = "考勤结果", businessType = BusinessType.INSERT)
|
||||
@PostMapping
|
||||
public R<Void> add(@Validated @RequestBody HrmAttendCalcBo bo) {
|
||||
return toAjax(service.insertByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "考勤结果", businessType = BusinessType.UPDATE)
|
||||
@PutMapping
|
||||
public R<Void> edit(@Validated @RequestBody HrmAttendCalcBo bo) {
|
||||
return toAjax(service.updateByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "考勤结果", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{calcIds}")
|
||||
public R<Void> remove(@PathVariable @NotEmpty Long[] calcIds) {
|
||||
return toAjax(service.deleteWithValidByIds(Arrays.asList(calcIds), true));
|
||||
}
|
||||
|
||||
@GetMapping("/all")
|
||||
public R<List<HrmAttendCalcVo>> all(HrmAttendCalcBo bo) {
|
||||
return R.ok(service.queryList(bo));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,62 @@
|
||||
package com.ruoyi.hrm.controller;
|
||||
|
||||
import com.ruoyi.common.annotation.Log;
|
||||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
import com.ruoyi.common.core.domain.R;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.common.enums.BusinessType;
|
||||
import com.ruoyi.hrm.domain.bo.HrmCertificateBo;
|
||||
import com.ruoyi.hrm.domain.vo.HrmCertificateVo;
|
||||
import com.ruoyi.hrm.service.IHrmCertificateService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/hrm/certificate")
|
||||
public class HrmCertificateController extends BaseController {
|
||||
|
||||
private final IHrmCertificateService service;
|
||||
|
||||
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<HrmCertificateVo> list(HrmCertificateBo bo, PageQuery pageQuery) {
|
||||
return service.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
@GetMapping("/{certId}")
|
||||
public R<HrmCertificateVo> getInfo(@PathVariable @NotNull Long certId) {
|
||||
return R.ok(service.queryById(certId));
|
||||
}
|
||||
|
||||
@Log(title = "证书", businessType = BusinessType.INSERT)
|
||||
@PostMapping
|
||||
public R<Void> add(@Validated @RequestBody HrmCertificateBo bo) {
|
||||
return toAjax(service.insertByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "证书", businessType = BusinessType.UPDATE)
|
||||
@PutMapping
|
||||
public R<Void> edit(@Validated @RequestBody HrmCertificateBo bo) {
|
||||
return toAjax(service.updateByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "证书", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{certIds}")
|
||||
public R<Void> remove(@PathVariable @NotEmpty Long[] certIds) {
|
||||
return toAjax(service.deleteWithValidByIds(Arrays.asList(certIds), true));
|
||||
}
|
||||
|
||||
@GetMapping("/all")
|
||||
public R<List<HrmCertificateVo>> all(HrmCertificateBo bo) {
|
||||
return R.ok(service.queryList(bo));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,61 @@
|
||||
package com.ruoyi.hrm.controller;
|
||||
|
||||
import com.ruoyi.common.annotation.Log;
|
||||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
import com.ruoyi.common.core.domain.R;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.common.enums.BusinessType;
|
||||
import com.ruoyi.hrm.domain.bo.HrmContractBo;
|
||||
import com.ruoyi.hrm.domain.vo.HrmContractVo;
|
||||
import com.ruoyi.hrm.service.IHrmContractService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/hrm/contract")
|
||||
public class HrmContractController extends BaseController {
|
||||
|
||||
private final IHrmContractService service;
|
||||
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<HrmContractVo> list(HrmContractBo bo, PageQuery pageQuery) {
|
||||
return service.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
@GetMapping("/{contractId}")
|
||||
public R<HrmContractVo> getInfo(@PathVariable @NotNull Long contractId) {
|
||||
return R.ok(service.queryById(contractId));
|
||||
}
|
||||
|
||||
@Log(title = "劳动合同", businessType = BusinessType.INSERT)
|
||||
@PostMapping
|
||||
public R<Void> add(@Validated @RequestBody HrmContractBo bo) {
|
||||
return toAjax(service.insertByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "劳动合同", businessType = BusinessType.UPDATE)
|
||||
@PutMapping
|
||||
public R<Void> edit(@Validated @RequestBody HrmContractBo bo) {
|
||||
return toAjax(service.updateByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "劳动合同", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{contractIds}")
|
||||
public R<Void> remove(@PathVariable @NotEmpty Long[] contractIds) {
|
||||
return toAjax(service.deleteWithValidByIds(Arrays.asList(contractIds), true));
|
||||
}
|
||||
|
||||
@GetMapping("/all")
|
||||
public R<List<HrmContractVo>> all(HrmContractBo bo) {
|
||||
return R.ok(service.queryList(bo));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,61 @@
|
||||
package com.ruoyi.hrm.controller;
|
||||
|
||||
import com.ruoyi.common.annotation.Log;
|
||||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
import com.ruoyi.common.core.domain.R;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.common.enums.BusinessType;
|
||||
import com.ruoyi.hrm.domain.bo.HrmEmpOrgPositionBo;
|
||||
import com.ruoyi.hrm.domain.vo.HrmEmpOrgPositionVo;
|
||||
import com.ruoyi.hrm.service.IHrmEmpOrgPositionService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/hrm/empOrg")
|
||||
public class HrmEmpOrgPositionController extends BaseController {
|
||||
|
||||
private final IHrmEmpOrgPositionService service;
|
||||
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<HrmEmpOrgPositionVo> list(HrmEmpOrgPositionBo bo, PageQuery pageQuery) {
|
||||
return service.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
@GetMapping("/{relId}")
|
||||
public R<HrmEmpOrgPositionVo> getInfo(@PathVariable @NotNull Long relId) {
|
||||
return R.ok(service.queryById(relId));
|
||||
}
|
||||
|
||||
@Log(title = "员工组织岗位关系", businessType = BusinessType.INSERT)
|
||||
@PostMapping
|
||||
public R<Void> add(@Validated @RequestBody HrmEmpOrgPositionBo bo) {
|
||||
return toAjax(service.insertByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "员工组织岗位关系", businessType = BusinessType.UPDATE)
|
||||
@PutMapping
|
||||
public R<Void> edit(@Validated @RequestBody HrmEmpOrgPositionBo bo) {
|
||||
return toAjax(service.updateByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "员工组织岗位关系", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{relIds}")
|
||||
public R<Void> remove(@PathVariable @NotEmpty Long[] relIds) {
|
||||
return toAjax(service.deleteWithValidByIds(Arrays.asList(relIds), true));
|
||||
}
|
||||
|
||||
@GetMapping("/all")
|
||||
public R<List<HrmEmpOrgPositionVo>> all(HrmEmpOrgPositionBo bo) {
|
||||
return R.ok(service.queryList(bo));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,75 @@
|
||||
package com.ruoyi.hrm.controller;
|
||||
|
||||
import com.ruoyi.common.annotation.Log;
|
||||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
import com.ruoyi.common.core.domain.R;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.common.enums.BusinessType;
|
||||
import com.ruoyi.hrm.domain.bo.HrmEmployeeBo;
|
||||
import com.ruoyi.hrm.domain.vo.HrmEmployeeVo;
|
||||
import com.ruoyi.hrm.service.IHrmEmployeeService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/hrm/employee")
|
||||
public class HrmEmployeeController extends BaseController {
|
||||
|
||||
private final IHrmEmployeeService service;
|
||||
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<HrmEmployeeVo> list(HrmEmployeeBo bo, PageQuery pageQuery) {
|
||||
return service.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
@GetMapping("/{empId}")
|
||||
public R<HrmEmployeeVo> getInfo(@PathVariable @NotNull Long empId) {
|
||||
return R.ok(service.queryById(empId));
|
||||
}
|
||||
|
||||
@Log(title = "员工管理", businessType = BusinessType.INSERT)
|
||||
@PostMapping
|
||||
public R<Void> add(@Validated @RequestBody HrmEmployeeBo bo) {
|
||||
return toAjax(service.insertByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "员工管理", businessType = BusinessType.UPDATE)
|
||||
@PutMapping
|
||||
public R<Void> edit(@Validated @RequestBody HrmEmployeeBo bo) {
|
||||
return toAjax(service.updateByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "员工管理", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{empIds}")
|
||||
public R<Void> remove(@PathVariable @NotEmpty Long[] empIds) {
|
||||
return toAjax(service.deleteWithValidByIds(Arrays.asList(empIds), true));
|
||||
}
|
||||
|
||||
@GetMapping("/all")
|
||||
public R<List<HrmEmployeeVo>> all(HrmEmployeeBo bo) {
|
||||
return R.ok(service.queryList(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据用户ID获取员工信息
|
||||
*/
|
||||
@GetMapping("/byUserId/{userId}")
|
||||
public R<HrmEmployeeVo> getByUserId(@PathVariable @NotNull Long userId) {
|
||||
HrmEmployeeBo bo = new HrmEmployeeBo();
|
||||
bo.setUserId(userId);
|
||||
List<HrmEmployeeVo> list = service.queryList(bo);
|
||||
if (list != null && !list.isEmpty()) {
|
||||
return R.ok(list.get(0));
|
||||
}
|
||||
return R.fail("未找到该用户对应的员工信息");
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
package com.ruoyi.hrm.controller;
|
||||
|
||||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
import com.ruoyi.common.core.domain.R;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.hrm.domain.bo.HrmFlowActionBo;
|
||||
import com.ruoyi.hrm.domain.vo.HrmFlowActionVo;
|
||||
import com.ruoyi.hrm.service.IHrmFlowActionService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/hrm/flow/action")
|
||||
public class HrmFlowActionController extends BaseController {
|
||||
|
||||
private final IHrmFlowActionService service;
|
||||
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<HrmFlowActionVo> list(HrmFlowActionBo bo, PageQuery pageQuery) {
|
||||
return service.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
@GetMapping("/{actionId}")
|
||||
public R<HrmFlowActionVo> getInfo(@PathVariable @NotNull Long actionId) {
|
||||
return R.ok(service.queryById(actionId));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
package com.ruoyi.hrm.controller;
|
||||
|
||||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
import com.ruoyi.common.core.domain.R;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.common.helper.LoginHelper;
|
||||
import com.ruoyi.hrm.domain.bo.HrmFlowCcBo;
|
||||
import com.ruoyi.hrm.domain.vo.HrmFlowCcVo;
|
||||
import com.ruoyi.hrm.service.IHrmFlowCcService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/hrm/flow/cc")
|
||||
public class HrmFlowCcController extends BaseController {
|
||||
|
||||
private final IHrmFlowCcService service;
|
||||
|
||||
/**
|
||||
* 抄送我的
|
||||
*/
|
||||
@GetMapping("/my")
|
||||
public TableDataInfo<HrmFlowCcVo> my(@RequestParam(required = false) Long ccUserId,@RequestParam(required = false) Integer readFlag, PageQuery pageQuery) {
|
||||
Long uid = ccUserId;
|
||||
if (uid == null) {
|
||||
try {
|
||||
uid = LoginHelper.getUserId();
|
||||
} catch (Exception e) {
|
||||
uid = null;
|
||||
}
|
||||
}
|
||||
HrmFlowCcBo bo = new HrmFlowCcBo();
|
||||
bo.setCcUserId(uid);
|
||||
bo.setReadFlag(readFlag);
|
||||
return service.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<HrmFlowCcVo> list(HrmFlowCcBo bo, PageQuery pageQuery) {
|
||||
return service.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
/**
|
||||
* 手动抄送(支持批量)
|
||||
*/
|
||||
@PostMapping
|
||||
public R<Void> add(@RequestBody HrmFlowCcBo bo) {
|
||||
return toAjax(service.insertBatch(bo));
|
||||
}
|
||||
|
||||
/**
|
||||
* 标记抄送已读
|
||||
*/
|
||||
@PostMapping("/{ccId}/read")
|
||||
public R<Void> read(@PathVariable Long ccId) {
|
||||
Long userId = LoginHelper.getUserId();
|
||||
return toAjax(service.markRead(ccId, userId));
|
||||
}
|
||||
|
||||
@GetMapping("/ping")
|
||||
public R<String> ping(@RequestParam @NotNull String x) {
|
||||
return R.ok(x);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,36 @@
|
||||
package com.ruoyi.hrm.controller;
|
||||
|
||||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
import com.ruoyi.common.core.domain.R;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.hrm.domain.bo.HrmFormDataBo;
|
||||
import com.ruoyi.hrm.domain.vo.HrmFormDataVo;
|
||||
import com.ruoyi.hrm.service.IHrmFormDataService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/hrm/flow/form")
|
||||
public class HrmFlowFormDataController extends BaseController {
|
||||
|
||||
private final IHrmFormDataService service;
|
||||
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<HrmFormDataVo> list(HrmFormDataBo bo, PageQuery pageQuery) {
|
||||
return service.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
@GetMapping("/{formId}")
|
||||
public R<HrmFormDataVo> getInfo(@PathVariable @NotNull Long formId) {
|
||||
return R.ok(service.queryById(formId));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,76 @@
|
||||
package com.ruoyi.hrm.controller;
|
||||
|
||||
import com.ruoyi.common.annotation.Log;
|
||||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
import com.ruoyi.common.core.domain.R;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.common.enums.BusinessType;
|
||||
import com.ruoyi.hrm.domain.bo.HrmFlowInstanceBo;
|
||||
import com.ruoyi.hrm.domain.bo.HrmFlowStartBo;
|
||||
import com.ruoyi.hrm.domain.vo.HrmFlowInstanceVo;
|
||||
import com.ruoyi.hrm.service.IHrmFlowInstanceService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/hrm/flow/instance")
|
||||
public class HrmFlowInstanceController extends BaseController {
|
||||
|
||||
private final IHrmFlowInstanceService service;
|
||||
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<HrmFlowInstanceVo> list(HrmFlowInstanceBo bo, PageQuery pageQuery) {
|
||||
return service.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询我的申请列表
|
||||
*/
|
||||
@GetMapping("/myList")
|
||||
public TableDataInfo<HrmFlowInstanceVo> myList(HrmFlowInstanceBo bo, PageQuery pageQuery) {
|
||||
return service.queryMyInstancePageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
@GetMapping("/{instId}")
|
||||
public R<HrmFlowInstanceVo> getInfo(@PathVariable @NotNull Long instId) {
|
||||
return R.ok(service.queryById(instId));
|
||||
}
|
||||
|
||||
@Log(title = "流程实例", businessType = BusinessType.INSERT)
|
||||
@PostMapping
|
||||
public R<Void> add(@Validated @RequestBody HrmFlowInstanceBo bo) {
|
||||
return toAjax(service.insertByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "流程实例", businessType = BusinessType.UPDATE)
|
||||
@PutMapping
|
||||
public R<Void> edit(@Validated @RequestBody HrmFlowInstanceBo bo) {
|
||||
return toAjax(service.updateByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "流程实例", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{instIds}")
|
||||
public R<Void> remove(@PathVariable @NotEmpty Long[] instIds) {
|
||||
return toAjax(service.deleteWithValidByIds(Arrays.asList(instIds), true));
|
||||
}
|
||||
|
||||
@Log(title = "流程实例启动", businessType = BusinessType.INSERT)
|
||||
@PostMapping("/start")
|
||||
public R<Long> start(@Validated @RequestBody HrmFlowStartBo bo) {
|
||||
return R.ok(service.startInstance(bo));
|
||||
}
|
||||
|
||||
@GetMapping("/all")
|
||||
public R<List<HrmFlowInstanceVo>> all(HrmFlowInstanceBo bo) {
|
||||
return R.ok(service.queryList(bo));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,61 @@
|
||||
package com.ruoyi.hrm.controller;
|
||||
|
||||
import com.ruoyi.common.annotation.Log;
|
||||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
import com.ruoyi.common.core.domain.R;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.common.enums.BusinessType;
|
||||
import com.ruoyi.hrm.domain.bo.HrmFlowNodeBo;
|
||||
import com.ruoyi.hrm.domain.vo.HrmFlowNodeVo;
|
||||
import com.ruoyi.hrm.service.IHrmFlowNodeService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/hrm/flow/node")
|
||||
public class HrmFlowNodeController extends BaseController {
|
||||
|
||||
private final IHrmFlowNodeService service;
|
||||
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<HrmFlowNodeVo> list(HrmFlowNodeBo bo, PageQuery pageQuery) {
|
||||
return service.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
@GetMapping("/{nodeId}")
|
||||
public R<HrmFlowNodeVo> getInfo(@PathVariable @NotNull Long nodeId) {
|
||||
return R.ok(service.queryById(nodeId));
|
||||
}
|
||||
|
||||
@Log(title = "流程节点", businessType = BusinessType.INSERT)
|
||||
@PostMapping
|
||||
public R<Void> add(@Validated @RequestBody HrmFlowNodeBo bo) {
|
||||
return toAjax(service.insertByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "流程节点", businessType = BusinessType.UPDATE)
|
||||
@PutMapping
|
||||
public R<Void> edit(@Validated @RequestBody HrmFlowNodeBo bo) {
|
||||
return toAjax(service.updateByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "流程节点", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{nodeIds}")
|
||||
public R<Void> remove(@PathVariable @NotEmpty Long[] nodeIds) {
|
||||
return toAjax(service.deleteWithValidByIds(Arrays.asList(nodeIds), true));
|
||||
}
|
||||
|
||||
@GetMapping("/all")
|
||||
public R<List<HrmFlowNodeVo>> all(HrmFlowNodeBo bo) {
|
||||
return R.ok(service.queryList(bo));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,115 @@
|
||||
package com.ruoyi.hrm.controller;
|
||||
|
||||
import com.ruoyi.common.annotation.Log;
|
||||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
import com.ruoyi.common.core.domain.R;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.common.enums.BusinessType;
|
||||
import com.ruoyi.hrm.domain.bo.HrmFlowTaskBo;
|
||||
import com.ruoyi.hrm.domain.bo.HrmFlowTaskApproveBo;
|
||||
import com.ruoyi.hrm.domain.bo.HrmSealStampBo;
|
||||
import com.ruoyi.hrm.domain.vo.HrmFlowTaskVo;
|
||||
import com.ruoyi.hrm.service.IHrmFlowTaskService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/hrm/flow/task")
|
||||
public class HrmFlowTaskController extends BaseController {
|
||||
|
||||
private final IHrmFlowTaskService service;
|
||||
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<HrmFlowTaskVo> list(HrmFlowTaskBo bo, PageQuery pageQuery) {
|
||||
return service.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
@GetMapping("/todo")
|
||||
public R<List<HrmFlowTaskVo>> todo(@RequestParam(required = false) Long assigneeUserId) {
|
||||
|
||||
HrmFlowTaskBo bo = new HrmFlowTaskBo();
|
||||
bo.setAssigneeUserId(assigneeUserId);
|
||||
bo.setStatus("pending");
|
||||
return R.ok(service.queryList(bo));
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 详情页使用:按 bizType + bizId 查询当前用户的待办任务(pending)
|
||||
*/
|
||||
@GetMapping("/todoByBiz")
|
||||
public R<HrmFlowTaskVo> todoByBiz(@RequestParam @NotNull String bizType,
|
||||
@RequestParam @NotNull Long bizId,
|
||||
@RequestParam(required = false) Long assigneeUserId) {
|
||||
|
||||
return R.ok(service.queryTodoByBiz(bizType, bizId, assigneeUserId));
|
||||
|
||||
}
|
||||
|
||||
@GetMapping("/{taskId}")
|
||||
public R<HrmFlowTaskVo> getInfo(@PathVariable @NotNull Long taskId) {
|
||||
return R.ok(service.queryById(taskId));
|
||||
}
|
||||
|
||||
@Log(title = "流程任务", businessType = BusinessType.INSERT)
|
||||
@PostMapping
|
||||
public R<Void> add(@Validated @RequestBody HrmFlowTaskBo bo) {
|
||||
return toAjax(service.insertByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "流程任务", businessType = BusinessType.UPDATE)
|
||||
@PutMapping
|
||||
public R<Void> edit(@Validated @RequestBody HrmFlowTaskBo bo) {
|
||||
return toAjax(service.updateByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "流程任务", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{taskIds}")
|
||||
public R<Void> remove(@PathVariable @NotEmpty Long[] taskIds) {
|
||||
return toAjax(service.deleteWithValidByIds(Arrays.asList(taskIds), true));
|
||||
}
|
||||
|
||||
@Log(title = "流程任务审批通过", businessType = BusinessType.UPDATE)
|
||||
@PostMapping("/{taskId}/approve")
|
||||
public R<Void> approve(@PathVariable @NotNull Long taskId,
|
||||
@RequestParam(required = false) Long actionUserId,
|
||||
@RequestBody(required = false) HrmFlowTaskApproveBo approveBo) {
|
||||
String remark = approveBo != null ? approveBo.getRemark() : null;
|
||||
HrmSealStampBo stampBo = approveBo != null ? approveBo.getStampBo() : null;
|
||||
return toAjax(service.approve(taskId, actionUserId, remark, stampBo));
|
||||
}
|
||||
|
||||
@Log(title = "流程任务审批驳回", businessType = BusinessType.UPDATE)
|
||||
@PostMapping("/{taskId}/reject")
|
||||
public R<Void> reject(@PathVariable @NotNull Long taskId,
|
||||
@RequestParam(required = false) Long actionUserId,
|
||||
@RequestParam(required = false) String remark) {
|
||||
return toAjax(service.reject(taskId, actionUserId, remark));
|
||||
}
|
||||
|
||||
@Log(title = "流程任务撤回", businessType = BusinessType.UPDATE)
|
||||
@PostMapping("/{taskId}/withdraw")
|
||||
public R<Void> withdraw(@PathVariable @NotNull Long taskId,
|
||||
@RequestParam(required = false) Long actionUserId,
|
||||
@RequestParam(required = false) String remark) {
|
||||
return toAjax(service.withdraw(taskId, actionUserId, remark));
|
||||
}
|
||||
|
||||
@Log(title = "流程任务转发", businessType = BusinessType.UPDATE)
|
||||
@PostMapping("/{taskId}/transfer")
|
||||
public R<Void> transfer(@PathVariable @NotNull Long taskId,
|
||||
@RequestParam @NotNull Long newAssigneeUserId,
|
||||
@RequestParam(required = false) Long actionUserId,
|
||||
@RequestParam(required = false) String remark) {
|
||||
return toAjax(service.transfer(taskId, newAssigneeUserId, actionUserId, remark));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,61 @@
|
||||
package com.ruoyi.hrm.controller;
|
||||
|
||||
import com.ruoyi.common.annotation.Log;
|
||||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
import com.ruoyi.common.core.domain.R;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.common.enums.BusinessType;
|
||||
import com.ruoyi.hrm.domain.bo.HrmFlowTemplateBo;
|
||||
import com.ruoyi.hrm.domain.vo.HrmFlowTemplateVo;
|
||||
import com.ruoyi.hrm.service.IHrmFlowTemplateService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/hrm/flow/template")
|
||||
public class HrmFlowTemplateController extends BaseController {
|
||||
|
||||
private final IHrmFlowTemplateService service;
|
||||
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<HrmFlowTemplateVo> list(HrmFlowTemplateBo bo, PageQuery pageQuery) {
|
||||
return service.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
@GetMapping("/{tplId}")
|
||||
public R<HrmFlowTemplateVo> getInfo(@PathVariable @NotNull Long tplId) {
|
||||
return R.ok(service.queryById(tplId));
|
||||
}
|
||||
|
||||
@Log(title = "流程模板", businessType = BusinessType.INSERT)
|
||||
@PostMapping
|
||||
public R<Void> add(@Validated @RequestBody HrmFlowTemplateBo bo) {
|
||||
return toAjax(service.insertByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "流程模板", businessType = BusinessType.UPDATE)
|
||||
@PutMapping
|
||||
public R<Void> edit(@Validated @RequestBody HrmFlowTemplateBo bo) {
|
||||
return toAjax(service.updateByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "流程模板", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{tplIds}")
|
||||
public R<Void> remove(@PathVariable @NotEmpty Long[] tplIds) {
|
||||
return toAjax(service.deleteWithValidByIds(Arrays.asList(tplIds), true));
|
||||
}
|
||||
|
||||
@GetMapping("/all")
|
||||
public R<List<HrmFlowTemplateVo>> all(HrmFlowTemplateBo bo) {
|
||||
return R.ok(service.queryList(bo));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,61 @@
|
||||
package com.ruoyi.hrm.controller;
|
||||
|
||||
import com.ruoyi.common.annotation.Log;
|
||||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
import com.ruoyi.common.core.domain.R;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.common.enums.BusinessType;
|
||||
import com.ruoyi.hrm.domain.bo.HrmHeadcountPlanBo;
|
||||
import com.ruoyi.hrm.domain.vo.HrmHeadcountPlanVo;
|
||||
import com.ruoyi.hrm.service.IHrmHeadcountPlanService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/hrm/headcount")
|
||||
public class HrmHeadcountPlanController extends BaseController {
|
||||
|
||||
private final IHrmHeadcountPlanService service;
|
||||
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<HrmHeadcountPlanVo> list(HrmHeadcountPlanBo bo, PageQuery pageQuery) {
|
||||
return service.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
@GetMapping("/{planId}")
|
||||
public R<HrmHeadcountPlanVo> getInfo(@PathVariable @NotNull Long planId) {
|
||||
return R.ok(service.queryById(planId));
|
||||
}
|
||||
|
||||
@Log(title = "编制管理", businessType = BusinessType.INSERT)
|
||||
@PostMapping
|
||||
public R<Void> add(@Validated @RequestBody HrmHeadcountPlanBo bo) {
|
||||
return toAjax(service.insertByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "编制管理", businessType = BusinessType.UPDATE)
|
||||
@PutMapping
|
||||
public R<Void> edit(@Validated @RequestBody HrmHeadcountPlanBo bo) {
|
||||
return toAjax(service.updateByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "编制管理", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{planIds}")
|
||||
public R<Void> remove(@PathVariable @NotEmpty Long[] planIds) {
|
||||
return toAjax(service.deleteWithValidByIds(Arrays.asList(planIds), true));
|
||||
}
|
||||
|
||||
@GetMapping("/all")
|
||||
public R<List<HrmHeadcountPlanVo>> all(HrmHeadcountPlanBo bo) {
|
||||
return R.ok(service.queryList(bo));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,61 @@
|
||||
package com.ruoyi.hrm.controller;
|
||||
|
||||
import com.ruoyi.common.annotation.Log;
|
||||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
import com.ruoyi.common.core.domain.R;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.common.enums.BusinessType;
|
||||
import com.ruoyi.hrm.domain.bo.HrmLeaveBalanceBo;
|
||||
import com.ruoyi.hrm.domain.vo.HrmLeaveBalanceVo;
|
||||
import com.ruoyi.hrm.service.IHrmLeaveBalanceService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/hrm/leave/balance")
|
||||
public class HrmLeaveBalanceController extends BaseController {
|
||||
|
||||
private final IHrmLeaveBalanceService service;
|
||||
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<HrmLeaveBalanceVo> list(HrmLeaveBalanceBo bo, PageQuery pageQuery) {
|
||||
return service.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
@GetMapping("/{balId}")
|
||||
public R<HrmLeaveBalanceVo> getInfo(@PathVariable @NotNull Long balId) {
|
||||
return R.ok(service.queryById(balId));
|
||||
}
|
||||
|
||||
@Log(title = "假期余额", businessType = BusinessType.INSERT)
|
||||
@PostMapping
|
||||
public R<Void> add(@Validated @RequestBody HrmLeaveBalanceBo bo) {
|
||||
return toAjax(service.insertByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "假期余额", businessType = BusinessType.UPDATE)
|
||||
@PutMapping
|
||||
public R<Void> edit(@Validated @RequestBody HrmLeaveBalanceBo bo) {
|
||||
return toAjax(service.updateByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "假期余额", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{balIds}")
|
||||
public R<Void> remove(@PathVariable @NotEmpty Long[] balIds) {
|
||||
return toAjax(service.deleteWithValidByIds(Arrays.asList(balIds), true));
|
||||
}
|
||||
|
||||
@GetMapping("/all")
|
||||
public R<List<HrmLeaveBalanceVo>> all(HrmLeaveBalanceBo bo) {
|
||||
return R.ok(service.queryList(bo));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,61 @@
|
||||
package com.ruoyi.hrm.controller;
|
||||
|
||||
import com.ruoyi.common.annotation.Log;
|
||||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
import com.ruoyi.common.core.domain.R;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.common.enums.BusinessType;
|
||||
import com.ruoyi.hrm.domain.bo.HrmLeaveReqBo;
|
||||
import com.ruoyi.hrm.domain.vo.HrmLeaveReqVo;
|
||||
import com.ruoyi.hrm.service.IHrmLeaveReqService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/hrm/leave/req")
|
||||
public class HrmLeaveReqController extends BaseController {
|
||||
|
||||
private final IHrmLeaveReqService service;
|
||||
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<HrmLeaveReqVo> list(HrmLeaveReqBo bo, PageQuery pageQuery) {
|
||||
return service.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
@GetMapping("/{bizId}")
|
||||
public R<HrmLeaveReqVo> getInfo(@PathVariable @NotNull Long bizId) {
|
||||
return R.ok(service.queryById(bizId));
|
||||
}
|
||||
|
||||
@Log(title = "请假单", businessType = BusinessType.INSERT)
|
||||
@PostMapping
|
||||
public R<Void> add(@Validated @RequestBody HrmLeaveReqBo bo) {
|
||||
return toAjax(service.insertByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "请假单", businessType = BusinessType.UPDATE)
|
||||
@PutMapping
|
||||
public R<Void> edit(@Validated @RequestBody HrmLeaveReqBo bo) {
|
||||
return toAjax(service.updateByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "请假单", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{bizIds}")
|
||||
public R<Void> remove(@PathVariable @NotEmpty Long[] bizIds) {
|
||||
return toAjax(service.deleteWithValidByIds(Arrays.asList(bizIds), true));
|
||||
}
|
||||
|
||||
@GetMapping("/all")
|
||||
public R<List<HrmLeaveReqVo>> all(HrmLeaveReqBo bo) {
|
||||
return R.ok(service.queryList(bo));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,64 @@
|
||||
package com.ruoyi.hrm.controller;
|
||||
|
||||
import com.ruoyi.common.annotation.Log;
|
||||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
import com.ruoyi.common.core.domain.R;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.common.enums.BusinessType;
|
||||
import com.ruoyi.hrm.domain.bo.HrmPayPlanBo;
|
||||
import com.ruoyi.hrm.domain.vo.HrmPayPlanVo;
|
||||
import com.ruoyi.hrm.service.IHrmPayPlanService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 薪酬方案(按用户要求:不做鉴权)
|
||||
*/
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/hrm/pay/plan")
|
||||
public class HrmPayPlanController extends BaseController {
|
||||
|
||||
private final IHrmPayPlanService service;
|
||||
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<HrmPayPlanVo> list(HrmPayPlanBo bo, PageQuery pageQuery) {
|
||||
return service.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
@GetMapping("/{planId}")
|
||||
public R<HrmPayPlanVo> getInfo(@PathVariable @NotNull Long planId) {
|
||||
return R.ok(service.queryById(planId));
|
||||
}
|
||||
|
||||
@Log(title = "薪酬方案", businessType = BusinessType.INSERT)
|
||||
@PostMapping
|
||||
public R<Void> add(@Validated @RequestBody HrmPayPlanBo bo) {
|
||||
return toAjax(service.insertByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "薪酬方案", businessType = BusinessType.UPDATE)
|
||||
@PutMapping
|
||||
public R<Void> edit(@Validated @RequestBody HrmPayPlanBo bo) {
|
||||
return toAjax(service.updateByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "薪酬方案", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{planIds}")
|
||||
public R<Void> remove(@PathVariable @NotEmpty Long[] planIds) {
|
||||
return toAjax(service.deleteWithValidByIds(Arrays.asList(planIds), true));
|
||||
}
|
||||
|
||||
@GetMapping("/all")
|
||||
public R<List<HrmPayPlanVo>> all(HrmPayPlanBo bo) {
|
||||
return R.ok(service.queryList(bo));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,64 @@
|
||||
package com.ruoyi.hrm.controller;
|
||||
|
||||
import com.ruoyi.common.annotation.Log;
|
||||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
import com.ruoyi.common.core.domain.R;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.common.enums.BusinessType;
|
||||
import com.ruoyi.hrm.domain.bo.HrmPayRunBo;
|
||||
import com.ruoyi.hrm.domain.vo.HrmPayRunVo;
|
||||
import com.ruoyi.hrm.service.IHrmPayRunService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 薪酬批次(无鉴权)
|
||||
*/
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/hrm/pay/run")
|
||||
public class HrmPayRunController extends BaseController {
|
||||
|
||||
private final IHrmPayRunService service;
|
||||
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<HrmPayRunVo> list(HrmPayRunBo bo, PageQuery pageQuery) {
|
||||
return service.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
@GetMapping("/{runId}")
|
||||
public R<HrmPayRunVo> getInfo(@PathVariable @NotNull Long runId) {
|
||||
return R.ok(service.queryById(runId));
|
||||
}
|
||||
|
||||
@Log(title = "薪酬批次", businessType = BusinessType.INSERT)
|
||||
@PostMapping
|
||||
public R<Void> add(@Validated @RequestBody HrmPayRunBo bo) {
|
||||
return toAjax(service.insertByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "薪酬批次", businessType = BusinessType.UPDATE)
|
||||
@PutMapping
|
||||
public R<Void> edit(@Validated @RequestBody HrmPayRunBo bo) {
|
||||
return toAjax(service.updateByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "薪酬批次", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{runIds}")
|
||||
public R<Void> remove(@PathVariable @NotEmpty Long[] runIds) {
|
||||
return toAjax(service.deleteWithValidByIds(Arrays.asList(runIds), true));
|
||||
}
|
||||
|
||||
@GetMapping("/all")
|
||||
public R<List<HrmPayRunVo>> all(HrmPayRunBo bo) {
|
||||
return R.ok(service.queryList(bo));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,64 @@
|
||||
package com.ruoyi.hrm.controller;
|
||||
|
||||
import com.ruoyi.common.annotation.Log;
|
||||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
import com.ruoyi.common.core.domain.R;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.common.enums.BusinessType;
|
||||
import com.ruoyi.hrm.domain.bo.HrmPayslipBo;
|
||||
import com.ruoyi.hrm.domain.vo.HrmPayslipVo;
|
||||
import com.ruoyi.hrm.service.IHrmPayslipService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 工资条(无鉴权)
|
||||
*/
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/hrm/payslip")
|
||||
public class HrmPayslipController extends BaseController {
|
||||
|
||||
private final IHrmPayslipService service;
|
||||
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<HrmPayslipVo> list(HrmPayslipBo bo, PageQuery pageQuery) {
|
||||
return service.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
@GetMapping("/{slipId}")
|
||||
public R<HrmPayslipVo> getInfo(@PathVariable @NotNull Long slipId) {
|
||||
return R.ok(service.queryById(slipId));
|
||||
}
|
||||
|
||||
@Log(title = "工资条", businessType = BusinessType.INSERT)
|
||||
@PostMapping
|
||||
public R<Void> add(@Validated @RequestBody HrmPayslipBo bo) {
|
||||
return toAjax(service.insertByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "工资条", businessType = BusinessType.UPDATE)
|
||||
@PutMapping
|
||||
public R<Void> edit(@Validated @RequestBody HrmPayslipBo bo) {
|
||||
return toAjax(service.updateByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "工资条", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{slipIds}")
|
||||
public R<Void> remove(@PathVariable @NotEmpty Long[] slipIds) {
|
||||
return toAjax(service.deleteWithValidByIds(Arrays.asList(slipIds), true));
|
||||
}
|
||||
|
||||
@GetMapping("/all")
|
||||
public R<List<HrmPayslipVo>> all(HrmPayslipBo bo) {
|
||||
return R.ok(service.queryList(bo));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,61 @@
|
||||
package com.ruoyi.hrm.controller;
|
||||
|
||||
import com.ruoyi.common.annotation.Log;
|
||||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
import com.ruoyi.common.core.domain.R;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.common.enums.BusinessType;
|
||||
import com.ruoyi.hrm.domain.bo.HrmPunchBo;
|
||||
import com.ruoyi.hrm.domain.vo.HrmPunchVo;
|
||||
import com.ruoyi.hrm.service.IHrmPunchService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/hrm/punch")
|
||||
public class HrmPunchController extends BaseController {
|
||||
|
||||
private final IHrmPunchService service;
|
||||
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<HrmPunchVo> list(HrmPunchBo bo, PageQuery pageQuery) {
|
||||
return service.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
@GetMapping("/{punchId}")
|
||||
public R<HrmPunchVo> getInfo(@PathVariable @NotNull Long punchId) {
|
||||
return R.ok(service.queryById(punchId));
|
||||
}
|
||||
|
||||
@Log(title = "打卡记录", businessType = BusinessType.INSERT)
|
||||
@PostMapping
|
||||
public R<Void> add(@Validated @RequestBody HrmPunchBo bo) {
|
||||
return toAjax(service.insertByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "打卡记录", businessType = BusinessType.UPDATE)
|
||||
@PutMapping
|
||||
public R<Void> edit(@Validated @RequestBody HrmPunchBo bo) {
|
||||
return toAjax(service.updateByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "打卡记录", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{punchIds}")
|
||||
public R<Void> remove(@PathVariable @NotEmpty Long[] punchIds) {
|
||||
return toAjax(service.deleteWithValidByIds(Arrays.asList(punchIds), true));
|
||||
}
|
||||
|
||||
@GetMapping("/all")
|
||||
public R<List<HrmPunchVo>> all(HrmPunchBo bo) {
|
||||
return R.ok(service.queryList(bo));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,65 @@
|
||||
package com.ruoyi.hrm.controller;
|
||||
|
||||
import com.ruoyi.common.annotation.Log;
|
||||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
import com.ruoyi.common.core.domain.R;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.common.enums.BusinessType;
|
||||
import com.ruoyi.hrm.domain.bo.HrmReimburseReqBo;
|
||||
import com.ruoyi.hrm.domain.vo.HrmReimburseReqVo;
|
||||
import com.ruoyi.hrm.service.IHrmReimburseReqService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 日常报销申请
|
||||
*/
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/hrm/reimburse")
|
||||
public class HrmReimburseReqController extends BaseController {
|
||||
|
||||
private final IHrmReimburseReqService service;
|
||||
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<HrmReimburseReqVo> list(HrmReimburseReqBo bo, PageQuery pageQuery) {
|
||||
return service.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
@GetMapping("/{bizId}")
|
||||
public R<HrmReimburseReqVo> getInfo(@PathVariable @NotNull Long bizId) {
|
||||
return R.ok(service.queryById(bizId));
|
||||
}
|
||||
|
||||
@Log(title = "日常报销单", businessType = BusinessType.INSERT)
|
||||
@PostMapping
|
||||
public R<Void> add(@Validated @RequestBody HrmReimburseReqBo bo) {
|
||||
return toAjax(service.insertByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "日常报销单", businessType = BusinessType.UPDATE)
|
||||
@PutMapping
|
||||
public R<Void> edit(@Validated @RequestBody HrmReimburseReqBo bo) {
|
||||
return toAjax(service.updateByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "日常报销单", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{bizIds}")
|
||||
public R<Void> remove(@PathVariable @NotEmpty Long[] bizIds) {
|
||||
return toAjax(service.deleteWithValidByIds(Arrays.asList(bizIds), true));
|
||||
}
|
||||
|
||||
@GetMapping("/all")
|
||||
public R<List<HrmReimburseReqVo>> all(HrmReimburseReqBo bo) {
|
||||
return R.ok(service.queryList(bo));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,61 @@
|
||||
package com.ruoyi.hrm.controller;
|
||||
|
||||
import com.ruoyi.common.annotation.Log;
|
||||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
import com.ruoyi.common.core.domain.R;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.common.enums.BusinessType;
|
||||
import com.ruoyi.hrm.domain.bo.HrmScheduleBo;
|
||||
import com.ruoyi.hrm.domain.vo.HrmScheduleVo;
|
||||
import com.ruoyi.hrm.service.IHrmScheduleService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/hrm/schedule")
|
||||
public class HrmScheduleController extends BaseController {
|
||||
|
||||
private final IHrmScheduleService service;
|
||||
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<HrmScheduleVo> list(HrmScheduleBo bo, PageQuery pageQuery) {
|
||||
return service.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
@GetMapping("/{schedId}")
|
||||
public R<HrmScheduleVo> getInfo(@PathVariable @NotNull Long schedId) {
|
||||
return R.ok(service.queryById(schedId));
|
||||
}
|
||||
|
||||
@Log(title = "排班", businessType = BusinessType.INSERT)
|
||||
@PostMapping
|
||||
public R<Void> add(@Validated @RequestBody HrmScheduleBo bo) {
|
||||
return toAjax(service.insertByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "排班", businessType = BusinessType.UPDATE)
|
||||
@PutMapping
|
||||
public R<Void> edit(@Validated @RequestBody HrmScheduleBo bo) {
|
||||
return toAjax(service.updateByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "排班", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{schedIds}")
|
||||
public R<Void> remove(@PathVariable @NotEmpty Long[] schedIds) {
|
||||
return toAjax(service.deleteWithValidByIds(Arrays.asList(schedIds), true));
|
||||
}
|
||||
|
||||
@GetMapping("/all")
|
||||
public R<List<HrmScheduleVo>> all(HrmScheduleBo bo) {
|
||||
return R.ok(service.queryList(bo));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,97 @@
|
||||
package com.ruoyi.hrm.controller;
|
||||
|
||||
import com.ruoyi.common.annotation.Log;
|
||||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
import com.ruoyi.common.core.domain.R;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.common.enums.BusinessType;
|
||||
import com.ruoyi.hrm.domain.bo.HrmSealReqBo;
|
||||
import com.ruoyi.hrm.domain.bo.HrmSealStampBo;
|
||||
import com.ruoyi.hrm.domain.vo.HrmSealReqVo;
|
||||
import com.ruoyi.hrm.service.IHrmSealReqService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
/**
|
||||
* 用印申请
|
||||
*/
|
||||
@Slf4j
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/hrm/seal")
|
||||
public class HrmSealReqController extends BaseController {
|
||||
|
||||
private final IHrmSealReqService service;
|
||||
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<HrmSealReqVo> list(HrmSealReqBo bo, PageQuery pageQuery) {
|
||||
return service.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
@GetMapping("/{bizId}")
|
||||
public R<HrmSealReqVo> getInfo(@PathVariable @NotNull Long bizId) {
|
||||
return R.ok(service.queryById(bizId));
|
||||
}
|
||||
|
||||
@Log(title = "用印申请", businessType = BusinessType.INSERT)
|
||||
@PostMapping
|
||||
public R<Void> add(@Validated @RequestBody HrmSealReqBo bo) {
|
||||
return toAjax(service.insertByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "用印申请", businessType = BusinessType.UPDATE)
|
||||
@PutMapping
|
||||
public R<Void> edit(@Validated @RequestBody HrmSealReqBo bo) {
|
||||
return toAjax(service.updateByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "用印申请", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{bizIds}")
|
||||
public R<Void> remove(@PathVariable @NotEmpty Long[] bizIds) {
|
||||
return toAjax(service.deleteWithValidByIds(java.util.Arrays.asList(bizIds), true));
|
||||
}
|
||||
|
||||
@Log(title = "用印申请", businessType = BusinessType.UPDATE)
|
||||
@PostMapping("/{bizId}/approve")
|
||||
public R<Void> approve(@PathVariable @NotNull Long bizId) {
|
||||
return toAjax(service.updateStatus(bizId, "approved"));
|
||||
}
|
||||
|
||||
@Log(title = "用印申请", businessType = BusinessType.UPDATE)
|
||||
@PostMapping("/{bizId}/reject")
|
||||
public R<Void> reject(@PathVariable @NotNull Long bizId) {
|
||||
return toAjax(service.updateStatus(bizId, "rejected"));
|
||||
}
|
||||
|
||||
@Log(title = "用印申请", businessType = BusinessType.UPDATE)
|
||||
@PostMapping("/{bizId}/cancel")
|
||||
public R<Void> cancel(@PathVariable @NotNull Long bizId) {
|
||||
return toAjax(service.updateStatus(bizId, "canceled"));
|
||||
}
|
||||
|
||||
@Log(title = "用印盖章(Java)", businessType = BusinessType.UPDATE)
|
||||
@PostMapping("/{bizId}/stamp/java")
|
||||
public R<String> stampJava(@PathVariable @NotNull Long bizId, @Validated @RequestBody HrmSealStampBo bo) {
|
||||
// 添加日志,检查接收到的数据
|
||||
log.info("收到盖章请求 - bizId: {}, yPx: {}, xPx: {}, pageNo: {}, yPx类型: {}",
|
||||
bizId, bo.getYPx(), bo.getXPx(), bo.getPageNo(),
|
||||
bo.getYPx() != null ? bo.getYPx().getClass().getName() : "null");
|
||||
if (bo.getYPx() == null) {
|
||||
log.error("yPx 为 null!接收到的 bo 对象: {}", bo);
|
||||
}
|
||||
return R.ok(service.stampWithJava(bizId, bo));
|
||||
}
|
||||
|
||||
@Log(title = "用印盖章(Python)", businessType = BusinessType.UPDATE)
|
||||
@PostMapping("/{bizId}/stamp/python")
|
||||
public R<String> stampPython(@PathVariable @NotNull Long bizId, @Validated @RequestBody HrmSealStampBo bo) {
|
||||
return R.ok(service.stampWithPython(bizId, bo));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,61 @@
|
||||
package com.ruoyi.hrm.controller;
|
||||
|
||||
import com.ruoyi.common.annotation.Log;
|
||||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
import com.ruoyi.common.core.domain.R;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.common.enums.BusinessType;
|
||||
import com.ruoyi.hrm.domain.bo.HrmShiftBo;
|
||||
import com.ruoyi.hrm.domain.vo.HrmShiftVo;
|
||||
import com.ruoyi.hrm.service.IHrmShiftService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/hrm/shift")
|
||||
public class HrmShiftController extends BaseController {
|
||||
|
||||
private final IHrmShiftService service;
|
||||
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<HrmShiftVo> list(HrmShiftBo bo, PageQuery pageQuery) {
|
||||
return service.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
@GetMapping("/{shiftId}")
|
||||
public R<HrmShiftVo> getInfo(@PathVariable @NotNull Long shiftId) {
|
||||
return R.ok(service.queryById(shiftId));
|
||||
}
|
||||
|
||||
@Log(title = "班次", businessType = BusinessType.INSERT)
|
||||
@PostMapping
|
||||
public R<Void> add(@Validated @RequestBody HrmShiftBo bo) {
|
||||
return toAjax(service.insertByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "班次", businessType = BusinessType.UPDATE)
|
||||
@PutMapping
|
||||
public R<Void> edit(@Validated @RequestBody HrmShiftBo bo) {
|
||||
return toAjax(service.updateByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "班次", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{shiftIds}")
|
||||
public R<Void> remove(@PathVariable @NotEmpty Long[] shiftIds) {
|
||||
return toAjax(service.deleteWithValidByIds(Arrays.asList(shiftIds), true));
|
||||
}
|
||||
|
||||
@GetMapping("/all")
|
||||
public R<List<HrmShiftVo>> all(HrmShiftBo bo) {
|
||||
return R.ok(service.queryList(bo));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,64 @@
|
||||
package com.ruoyi.hrm.controller;
|
||||
|
||||
import com.ruoyi.common.annotation.Log;
|
||||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
import com.ruoyi.common.core.domain.R;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.common.enums.BusinessType;
|
||||
import com.ruoyi.hrm.domain.bo.HrmStatSnapshotBo;
|
||||
import com.ruoyi.hrm.domain.vo.HrmStatSnapshotVo;
|
||||
import com.ruoyi.hrm.service.IHrmStatSnapshotService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 指标快照(无鉴权)
|
||||
*/
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/hrm/pay/stat")
|
||||
public class HrmStatSnapshotController extends BaseController {
|
||||
|
||||
private final IHrmStatSnapshotService service;
|
||||
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<HrmStatSnapshotVo> list(HrmStatSnapshotBo bo, PageQuery pageQuery) {
|
||||
return service.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
@GetMapping("/{snapId}")
|
||||
public R<HrmStatSnapshotVo> getInfo(@PathVariable @NotNull Long snapId) {
|
||||
return R.ok(service.queryById(snapId));
|
||||
}
|
||||
|
||||
@Log(title = "指标快照", businessType = BusinessType.INSERT)
|
||||
@PostMapping
|
||||
public R<Void> add(@Validated @RequestBody HrmStatSnapshotBo bo) {
|
||||
return toAjax(service.insertByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "指标快照", businessType = BusinessType.UPDATE)
|
||||
@PutMapping
|
||||
public R<Void> edit(@Validated @RequestBody HrmStatSnapshotBo bo) {
|
||||
return toAjax(service.updateByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "指标快照", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{snapIds}")
|
||||
public R<Void> remove(@PathVariable @NotEmpty Long[] snapIds) {
|
||||
return toAjax(service.deleteWithValidByIds(Arrays.asList(snapIds), true));
|
||||
}
|
||||
|
||||
@GetMapping("/all")
|
||||
public R<List<HrmStatSnapshotVo>> all(HrmStatSnapshotBo bo) {
|
||||
return R.ok(service.queryList(bo));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,64 @@
|
||||
package com.ruoyi.hrm.controller;
|
||||
|
||||
import com.ruoyi.common.annotation.Log;
|
||||
import com.ruoyi.common.core.controller.BaseController;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
import com.ruoyi.common.core.domain.R;
|
||||
import com.ruoyi.common.core.page.TableDataInfo;
|
||||
import com.ruoyi.common.enums.BusinessType;
|
||||
import com.ruoyi.hrm.domain.bo.HrmTravelReqBo;
|
||||
import com.ruoyi.hrm.domain.vo.HrmTravelReqVo;
|
||||
import com.ruoyi.hrm.service.IHrmTravelReqService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 出差单(按用户要求:不做鉴权)
|
||||
*/
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
@RequestMapping("/hrm/travel")
|
||||
public class HrmTravelReqController extends BaseController {
|
||||
|
||||
private final IHrmTravelReqService service;
|
||||
|
||||
@GetMapping("/list")
|
||||
public TableDataInfo<HrmTravelReqVo> list(HrmTravelReqBo bo, PageQuery pageQuery) {
|
||||
return service.queryPageList(bo, pageQuery);
|
||||
}
|
||||
|
||||
@GetMapping("/{bizId}")
|
||||
public R<HrmTravelReqVo> getInfo(@PathVariable @NotNull Long bizId) {
|
||||
return R.ok(service.queryById(bizId));
|
||||
}
|
||||
|
||||
@Log(title = "出差单", businessType = BusinessType.INSERT)
|
||||
@PostMapping
|
||||
public R<Void> add(@Validated @RequestBody HrmTravelReqBo bo) {
|
||||
return toAjax(service.insertByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "出差单", businessType = BusinessType.UPDATE)
|
||||
@PutMapping
|
||||
public R<Void> edit(@Validated @RequestBody HrmTravelReqBo bo) {
|
||||
return toAjax(service.updateByBo(bo));
|
||||
}
|
||||
|
||||
@Log(title = "出差单", businessType = BusinessType.DELETE)
|
||||
@DeleteMapping("/{bizIds}")
|
||||
public R<Void> remove(@PathVariable @NotEmpty Long[] bizIds) {
|
||||
return toAjax(service.deleteWithValidByIds(Arrays.asList(bizIds), true));
|
||||
}
|
||||
|
||||
@GetMapping("/all")
|
||||
public R<List<HrmTravelReqVo>> all(HrmTravelReqBo bo) {
|
||||
return R.ok(service.queryList(bo));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
package com.ruoyi.hrm.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableLogic;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("hrm_attend_calc")
|
||||
public class HrmAttendCalc extends BaseEntity implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableId
|
||||
private Long calcId;
|
||||
private Long empId;
|
||||
private Date workDate;
|
||||
private Long shiftId;
|
||||
private String status;
|
||||
private Integer workMinutes;
|
||||
private Integer lateMinutes;
|
||||
private Integer earlyMinutes;
|
||||
private Integer otMinutes;
|
||||
private String leaveMinutesJson;
|
||||
private String remark;
|
||||
@TableLogic
|
||||
private Integer delFlag;
|
||||
}
|
||||
@@ -0,0 +1,34 @@
|
||||
package com.ruoyi.hrm.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableLogic;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("hrm_certificate")
|
||||
public class HrmCertificate extends BaseEntity implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableId
|
||||
private Long certId;
|
||||
private Long empId;
|
||||
private String certName;
|
||||
private String certNo;
|
||||
private String issuedBy;
|
||||
private Date validFrom;
|
||||
private Date validTo;
|
||||
private String remark;
|
||||
/**
|
||||
* 证书附件 fileIds(逗号分隔的 OSS ID)
|
||||
*/
|
||||
private String fileIds;
|
||||
@TableLogic
|
||||
private Integer delFlag;
|
||||
}
|
||||
34
fad-hrm/src/main/java/com/ruoyi/hrm/domain/HrmContract.java
Normal file
34
fad-hrm/src/main/java/com/ruoyi/hrm/domain/HrmContract.java
Normal file
@@ -0,0 +1,34 @@
|
||||
package com.ruoyi.hrm.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableLogic;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("hrm_contract")
|
||||
public class HrmContract extends BaseEntity implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableId
|
||||
private Long contractId;
|
||||
private Long empId;
|
||||
private String contractNo;
|
||||
private String contractType;
|
||||
private Date startDate;
|
||||
private Date endDate;
|
||||
private String status;
|
||||
private String remark;
|
||||
/**
|
||||
* 合同附件 fileIds(逗号分隔的 OSS ID)
|
||||
*/
|
||||
private String fileIds;
|
||||
@TableLogic
|
||||
private Integer delFlag;
|
||||
}
|
||||
@@ -0,0 +1,35 @@
|
||||
package com.ruoyi.hrm.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableLogic;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 员工-组织-岗位关系
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("hrm_emp_org_position")
|
||||
public class HrmEmpOrgPosition extends BaseEntity implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableId
|
||||
private Long relId;
|
||||
private Long empId;
|
||||
/** 部门ID(引用 sys_dept.dept_id) */
|
||||
private Long deptId;
|
||||
/** 岗位ID(引用 sys_post.post_id) */
|
||||
private Long postId;
|
||||
private Integer isPrimary;
|
||||
private Date startDate;
|
||||
private Date endDate;
|
||||
private String remark;
|
||||
@TableLogic
|
||||
private Integer delFlag;
|
||||
}
|
||||
44
fad-hrm/src/main/java/com/ruoyi/hrm/domain/HrmEmployee.java
Normal file
44
fad-hrm/src/main/java/com/ruoyi/hrm/domain/HrmEmployee.java
Normal file
@@ -0,0 +1,44 @@
|
||||
package com.ruoyi.hrm.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableLogic;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 员工主数据
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("hrm_employee")
|
||||
public class HrmEmployee extends BaseEntity implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableId
|
||||
private Long empId;
|
||||
private Long userId;
|
||||
private String empNo;
|
||||
private String empName;
|
||||
private String gender;
|
||||
private String mobile;
|
||||
private String email;
|
||||
private String idNo;
|
||||
private Date hireDate;
|
||||
private String employmentType;
|
||||
private String status;
|
||||
/** 主部门ID(引用 sys_dept.dept_id) */
|
||||
private Long deptId;
|
||||
/** 主岗位ID(引用 sys_post.post_id) */
|
||||
private Long postId;
|
||||
private BigDecimal seniorityYears;
|
||||
private Date contractEndDate;
|
||||
private String remark;
|
||||
@TableLogic
|
||||
private Integer delFlag;
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
package com.ruoyi.hrm.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableLogic;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("hrm_flow_action")
|
||||
public class HrmFlowAction extends BaseEntity implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableId
|
||||
private Long actionId;
|
||||
private Long taskId;
|
||||
private Long instId;
|
||||
private String action;
|
||||
private String remark;
|
||||
private Long actionUserId;
|
||||
private String bizType;
|
||||
private Long bizId;
|
||||
@TableLogic
|
||||
private Integer delFlag;
|
||||
}
|
||||
46
fad-hrm/src/main/java/com/ruoyi/hrm/domain/HrmFlowCc.java
Normal file
46
fad-hrm/src/main/java/com/ruoyi/hrm/domain/HrmFlowCc.java
Normal file
@@ -0,0 +1,46 @@
|
||||
package com.ruoyi.hrm.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableLogic;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
/**
|
||||
* 抄送记录
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("hrm_flow_cc")
|
||||
public class HrmFlowCc extends BaseEntity {
|
||||
|
||||
@TableId
|
||||
private Long ccId;
|
||||
|
||||
private Long instId;
|
||||
|
||||
private String bizType;
|
||||
|
||||
private Long bizId;
|
||||
|
||||
private Long nodeId;
|
||||
|
||||
/** 触发抄送的节点名称(可读名) */
|
||||
private String nodeName;
|
||||
|
||||
/** 是否已读 0未读 1已读 */
|
||||
private Integer readFlag;
|
||||
|
||||
/** 被抄送的用户ID */
|
||||
private Long ccUserId;
|
||||
|
||||
/** 触发抄送的操作人(一般为当前审批人) */
|
||||
private Long fromUserId;
|
||||
|
||||
private String remark;
|
||||
|
||||
@TableLogic
|
||||
private Integer delFlag;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
package com.ruoyi.hrm.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableLogic;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("hrm_flow_instance")
|
||||
public class HrmFlowInstance extends BaseEntity implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableId
|
||||
private Long instId;
|
||||
private Long tplId;
|
||||
private String bizType;
|
||||
private Long bizId;
|
||||
private String status;
|
||||
private Long currentNodeId;
|
||||
private Long startUserId;
|
||||
private String remark;
|
||||
@TableLogic
|
||||
private Integer delFlag;
|
||||
}
|
||||
29
fad-hrm/src/main/java/com/ruoyi/hrm/domain/HrmFlowNode.java
Normal file
29
fad-hrm/src/main/java/com/ruoyi/hrm/domain/HrmFlowNode.java
Normal file
@@ -0,0 +1,29 @@
|
||||
package com.ruoyi.hrm.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableLogic;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("hrm_flow_node")
|
||||
public class HrmFlowNode extends BaseEntity implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableId
|
||||
private Long nodeId;
|
||||
private Long tplId;
|
||||
private Integer orderNo;
|
||||
private String nodeType;
|
||||
private String approverRule;
|
||||
private String approverValue; // JSON
|
||||
private String fieldPerm; // JSON
|
||||
private String remark;
|
||||
@TableLogic
|
||||
private Integer delFlag;
|
||||
}
|
||||
39
fad-hrm/src/main/java/com/ruoyi/hrm/domain/HrmFlowTask.java
Normal file
39
fad-hrm/src/main/java/com/ruoyi/hrm/domain/HrmFlowTask.java
Normal file
@@ -0,0 +1,39 @@
|
||||
package com.ruoyi.hrm.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableLogic;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("hrm_flow_task")
|
||||
public class HrmFlowTask extends BaseEntity implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableId
|
||||
private Long taskId;
|
||||
private Long instId;
|
||||
private Long nodeId;
|
||||
private Long assigneeUserId;
|
||||
private String status;
|
||||
private Date expireTime;
|
||||
private String remark;
|
||||
|
||||
/** 业务类型:leave/travel/seal */
|
||||
@TableField("biz_type")
|
||||
private String bizType;
|
||||
|
||||
/** 业务ID:对应请假/出差/用印的 bizId */
|
||||
@TableField("biz_id")
|
||||
private Long bizId;
|
||||
|
||||
@TableLogic
|
||||
private Integer delFlag;
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
package com.ruoyi.hrm.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableLogic;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("hrm_flow_template")
|
||||
public class HrmFlowTemplate extends BaseEntity implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableId
|
||||
private Long tplId;
|
||||
private String tplCode;
|
||||
private String tplName;
|
||||
private String bizType;
|
||||
private Integer version;
|
||||
private Integer enabled;
|
||||
private String remark;
|
||||
@TableLogic
|
||||
private Integer delFlag;
|
||||
}
|
||||
26
fad-hrm/src/main/java/com/ruoyi/hrm/domain/HrmFormData.java
Normal file
26
fad-hrm/src/main/java/com/ruoyi/hrm/domain/HrmFormData.java
Normal file
@@ -0,0 +1,26 @@
|
||||
package com.ruoyi.hrm.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableLogic;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("hrm_form_data")
|
||||
public class HrmFormData extends BaseEntity implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableId
|
||||
private Long formId;
|
||||
private String bizType;
|
||||
private Long bizId;
|
||||
private String contentJson;
|
||||
private String remark;
|
||||
@TableLogic
|
||||
private Integer delFlag;
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
package com.ruoyi.hrm.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableLogic;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 编制/预算
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("hrm_headcount_plan")
|
||||
public class HrmHeadcountPlan extends BaseEntity implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableId
|
||||
private Long planId;
|
||||
/** 部门ID(引用 sys_dept.dept_id) */
|
||||
private Long deptId;
|
||||
/** 岗位ID(引用 sys_post.post_id) */
|
||||
private Long postId;
|
||||
private Integer year;
|
||||
private Integer month;
|
||||
private Integer budgetCount;
|
||||
private String remark;
|
||||
@TableLogic
|
||||
private Integer delFlag;
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
package com.ruoyi.hrm.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableLogic;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("hrm_leave_balance")
|
||||
public class HrmLeaveBalance extends BaseEntity implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableId
|
||||
private Long balId;
|
||||
private Long empId;
|
||||
private String leaveType;
|
||||
private java.math.BigDecimal balanceHours;
|
||||
private Date expireDate;
|
||||
private String remark;
|
||||
@TableLogic
|
||||
private Integer delFlag;
|
||||
}
|
||||
33
fad-hrm/src/main/java/com/ruoyi/hrm/domain/HrmLeaveReq.java
Normal file
33
fad-hrm/src/main/java/com/ruoyi/hrm/domain/HrmLeaveReq.java
Normal file
@@ -0,0 +1,33 @@
|
||||
package com.ruoyi.hrm.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableLogic;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("hrm_leave_req")
|
||||
public class HrmLeaveReq extends BaseEntity implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableId
|
||||
private Long bizId;
|
||||
private Long empId;
|
||||
private String leaveType;
|
||||
private Date startTime;
|
||||
private Date endTime;
|
||||
private java.math.BigDecimal hours;
|
||||
private String reason;
|
||||
private String status;
|
||||
private String accessoryApplyIds;
|
||||
private String accessoryReceiptIds;
|
||||
private String remark;
|
||||
@TableLogic
|
||||
private Integer delFlag;
|
||||
}
|
||||
28
fad-hrm/src/main/java/com/ruoyi/hrm/domain/HrmPayPlan.java
Normal file
28
fad-hrm/src/main/java/com/ruoyi/hrm/domain/HrmPayPlan.java
Normal file
@@ -0,0 +1,28 @@
|
||||
package com.ruoyi.hrm.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableLogic;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("hrm_pay_plan")
|
||||
public class HrmPayPlan extends BaseEntity implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableId
|
||||
private Long planId;
|
||||
private String planName;
|
||||
private BigDecimal baseSalary;
|
||||
private String allowanceJson;
|
||||
private String formulaJson;
|
||||
private String remark;
|
||||
@TableLogic
|
||||
private Integer delFlag;
|
||||
}
|
||||
26
fad-hrm/src/main/java/com/ruoyi/hrm/domain/HrmPayRun.java
Normal file
26
fad-hrm/src/main/java/com/ruoyi/hrm/domain/HrmPayRun.java
Normal file
@@ -0,0 +1,26 @@
|
||||
package com.ruoyi.hrm.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableLogic;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("hrm_pay_run")
|
||||
public class HrmPayRun extends BaseEntity implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableId
|
||||
private Long runId;
|
||||
private String period;
|
||||
private String status;
|
||||
private Long planId;
|
||||
private String remark;
|
||||
@TableLogic
|
||||
private Integer delFlag;
|
||||
}
|
||||
30
fad-hrm/src/main/java/com/ruoyi/hrm/domain/HrmPayslip.java
Normal file
30
fad-hrm/src/main/java/com/ruoyi/hrm/domain/HrmPayslip.java
Normal file
@@ -0,0 +1,30 @@
|
||||
package com.ruoyi.hrm.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableLogic;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("hrm_payslip")
|
||||
public class HrmPayslip extends BaseEntity implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableId
|
||||
private Long slipId;
|
||||
private Long runId;
|
||||
private Long empId;
|
||||
private BigDecimal amountGross;
|
||||
private BigDecimal amountNet;
|
||||
private String itemsJson;
|
||||
private String status;
|
||||
private String remark;
|
||||
@TableLogic
|
||||
private Integer delFlag;
|
||||
}
|
||||
29
fad-hrm/src/main/java/com/ruoyi/hrm/domain/HrmPunch.java
Normal file
29
fad-hrm/src/main/java/com/ruoyi/hrm/domain/HrmPunch.java
Normal file
@@ -0,0 +1,29 @@
|
||||
package com.ruoyi.hrm.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableLogic;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("hrm_punch")
|
||||
public class HrmPunch extends BaseEntity implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableId
|
||||
private Long punchId;
|
||||
private Long empId;
|
||||
private Date punchTime;
|
||||
private String source;
|
||||
private String location;
|
||||
private String deviceId;
|
||||
private String remark;
|
||||
@TableLogic
|
||||
private Integer delFlag;
|
||||
}
|
||||
@@ -0,0 +1,39 @@
|
||||
package com.ruoyi.hrm.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableLogic;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("hrm_reimburse_req")
|
||||
public class HrmReimburseReq extends BaseEntity {
|
||||
|
||||
@TableId
|
||||
private Long bizId;
|
||||
|
||||
private Long empId;
|
||||
|
||||
private String reimburseType;
|
||||
|
||||
private BigDecimal totalAmount;
|
||||
|
||||
private String reason;
|
||||
|
||||
private String status;
|
||||
|
||||
private String accessoryApplyIds;
|
||||
|
||||
private String accessoryReceiptIds;
|
||||
|
||||
private String remark;
|
||||
|
||||
@TableLogic
|
||||
private Integer delFlag;
|
||||
}
|
||||
|
||||
27
fad-hrm/src/main/java/com/ruoyi/hrm/domain/HrmSchedule.java
Normal file
27
fad-hrm/src/main/java/com/ruoyi/hrm/domain/HrmSchedule.java
Normal file
@@ -0,0 +1,27 @@
|
||||
package com.ruoyi.hrm.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableLogic;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("hrm_schedule")
|
||||
public class HrmSchedule extends BaseEntity implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableId
|
||||
private Long schedId;
|
||||
private Long empId;
|
||||
private Date workDate;
|
||||
private Long shiftId;
|
||||
private String remark;
|
||||
@TableLogic
|
||||
private Integer delFlag;
|
||||
}
|
||||
56
fad-hrm/src/main/java/com/ruoyi/hrm/domain/HrmSealReq.java
Normal file
56
fad-hrm/src/main/java/com/ruoyi/hrm/domain/HrmSealReq.java
Normal file
@@ -0,0 +1,56 @@
|
||||
package com.ruoyi.hrm.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableLogic;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 用印申请
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("hrm_seal_req")
|
||||
public class HrmSealReq extends BaseEntity implements Serializable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
/** 业务ID */
|
||||
@TableId
|
||||
private Long bizId;
|
||||
|
||||
/** 申请人ID */
|
||||
private Long empId;
|
||||
|
||||
/** 用印类型(公章/合同章/财务章等) */
|
||||
private String sealType;
|
||||
|
||||
/** 用途说明 */
|
||||
private String purpose;
|
||||
|
||||
/** 申请材料附件ID列表(CSV,对应sys_oss) */
|
||||
private String applyFileIds;
|
||||
|
||||
/** 是否需要回执 1是0否 */
|
||||
private Integer receiptRequired;
|
||||
|
||||
/** 回执状态 none/pending/done */
|
||||
private String receiptStatus;
|
||||
|
||||
/** 回执附件ID列表(CSV,对应sys_oss或直接URL) */
|
||||
private String receiptFileIds;
|
||||
|
||||
/** 状态 draft/running/approved/rejected/canceled */
|
||||
private String status;
|
||||
|
||||
/** 备注 */
|
||||
private String remark;
|
||||
|
||||
/** 删除标识 0正常 2删除 */
|
||||
@TableLogic
|
||||
private Integer delFlag;
|
||||
}
|
||||
30
fad-hrm/src/main/java/com/ruoyi/hrm/domain/HrmShift.java
Normal file
30
fad-hrm/src/main/java/com/ruoyi/hrm/domain/HrmShift.java
Normal file
@@ -0,0 +1,30 @@
|
||||
package com.ruoyi.hrm.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableLogic;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.time.LocalTime;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("hrm_shift")
|
||||
public class HrmShift extends BaseEntity implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableId
|
||||
private Long shiftId;
|
||||
private String shiftCode;
|
||||
private String shiftName;
|
||||
private LocalTime startTime;
|
||||
private LocalTime endTime;
|
||||
private Integer breakMinutes;
|
||||
private Integer isNight;
|
||||
private String remark;
|
||||
@TableLogic
|
||||
private Integer delFlag;
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
package com.ruoyi.hrm.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableLogic;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("hrm_stat_snapshot")
|
||||
public class HrmStatSnapshot extends BaseEntity implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableId
|
||||
private Long snapId;
|
||||
private Date statDate;
|
||||
private String statType;
|
||||
private String dimJson;
|
||||
private BigDecimal valueNum;
|
||||
private String remark;
|
||||
@TableLogic
|
||||
private Integer delFlag;
|
||||
}
|
||||
36
fad-hrm/src/main/java/com/ruoyi/hrm/domain/HrmTravelReq.java
Normal file
36
fad-hrm/src/main/java/com/ruoyi/hrm/domain/HrmTravelReq.java
Normal file
@@ -0,0 +1,36 @@
|
||||
package com.ruoyi.hrm.domain;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableLogic;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@TableName("hrm_travel_req")
|
||||
public class HrmTravelReq extends BaseEntity {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@TableId
|
||||
private Long bizId;
|
||||
private Long empId;
|
||||
private Date startTime;
|
||||
private Date endTime;
|
||||
private String travelType;
|
||||
private String destination;
|
||||
private String reason;
|
||||
private String status;
|
||||
private String accessoryApplyIds;
|
||||
private String accessoryReceiptIds;
|
||||
private String payeeName;
|
||||
private Double estimatedCost;
|
||||
private String bankName;
|
||||
private String bankAccount;
|
||||
private String remark;
|
||||
@TableLogic
|
||||
private Integer delFlag;
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
package com.ruoyi.hrm.domain.bo;
|
||||
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class HrmAttendCalcBo extends BaseEntity {
|
||||
|
||||
private Long calcId;
|
||||
|
||||
@NotNull(message = "员工ID不能为空")
|
||||
private Long empId;
|
||||
|
||||
@NotNull(message = "工作日期不能为空")
|
||||
private Date workDate;
|
||||
|
||||
private Long shiftId;
|
||||
private String status;
|
||||
private Integer workMinutes;
|
||||
private Integer lateMinutes;
|
||||
private Integer earlyMinutes;
|
||||
private Integer otMinutes;
|
||||
private String leaveMinutesJson;
|
||||
private String remark;
|
||||
}
|
||||
@@ -0,0 +1,38 @@
|
||||
package com.ruoyi.hrm.domain.bo;
|
||||
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class HrmCertificateBo extends BaseEntity {
|
||||
|
||||
private Long certId;
|
||||
|
||||
@NotNull(message = "员工ID不能为空")
|
||||
private Long empId;
|
||||
|
||||
@NotBlank(message = "证书名称不能为空")
|
||||
private String certName;
|
||||
|
||||
private String certNo;
|
||||
private String issuedBy;
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date validFrom;
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date validTo;
|
||||
private String remark;
|
||||
/**
|
||||
* 证书附件 fileIds(逗号分隔的 OSS ID)
|
||||
*/
|
||||
private String fileIds;
|
||||
}
|
||||
@@ -0,0 +1,38 @@
|
||||
package com.ruoyi.hrm.domain.bo;
|
||||
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class HrmContractBo extends BaseEntity {
|
||||
|
||||
private Long contractId;
|
||||
|
||||
@NotNull(message = "员工ID不能为空")
|
||||
private Long empId;
|
||||
|
||||
@NotBlank(message = "合同编号不能为空")
|
||||
private String contractNo;
|
||||
|
||||
private String contractType;
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date startDate;
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date endDate;
|
||||
private String status;
|
||||
private String remark;
|
||||
/**
|
||||
* 合同附件 fileIds(逗号分隔的 OSS ID)
|
||||
*/
|
||||
private String fileIds;
|
||||
}
|
||||
@@ -0,0 +1,34 @@
|
||||
package com.ruoyi.hrm.domain.bo;
|
||||
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class HrmEmpOrgPositionBo extends BaseEntity {
|
||||
|
||||
private Long relId;
|
||||
|
||||
@NotNull(message = "员工不能为空")
|
||||
private Long empId;
|
||||
|
||||
@NotNull(message = "部门不能为空")
|
||||
/** 部门ID(引用 sys_dept.dept_id) */
|
||||
private Long deptId;
|
||||
|
||||
@NotNull(message = "岗位不能为空")
|
||||
/** 岗位ID(引用 sys_post.post_id) */
|
||||
private Long postId;
|
||||
|
||||
private Integer isPrimary;
|
||||
|
||||
private Date startDate;
|
||||
|
||||
private Date endDate;
|
||||
|
||||
private String remark;
|
||||
}
|
||||
@@ -0,0 +1,49 @@
|
||||
package com.ruoyi.hrm.domain.bo;
|
||||
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Date;
|
||||
|
||||
/**
|
||||
* 员工 Bo
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class HrmEmployeeBo extends BaseEntity {
|
||||
|
||||
private Long empId;
|
||||
|
||||
private Long userId;
|
||||
|
||||
@NotBlank(message = "工号不能为空")
|
||||
private String empNo;
|
||||
|
||||
@NotBlank(message = "姓名不能为空")
|
||||
private String empName;
|
||||
|
||||
private String gender;
|
||||
|
||||
private String mobile;
|
||||
|
||||
private String email;
|
||||
|
||||
private String idNo;
|
||||
|
||||
private Date hireDate;
|
||||
|
||||
private String employmentType;
|
||||
|
||||
private String status;
|
||||
|
||||
/** 主部门ID(引用 sys_dept.dept_id) */
|
||||
private Long deptId;
|
||||
|
||||
/** 主岗位ID(引用 sys_post.post_id) */
|
||||
private Long postId;
|
||||
|
||||
private String remark;
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
package com.ruoyi.hrm.domain.bo;
|
||||
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class HrmFlowActionBo extends BaseEntity {
|
||||
|
||||
private Long actionId;
|
||||
|
||||
private Long taskId;
|
||||
|
||||
@NotNull(message = "实例ID不能为空")
|
||||
private Long instId;
|
||||
|
||||
@NotBlank(message = "动作不能为空")
|
||||
private String action;
|
||||
|
||||
private String remark;
|
||||
|
||||
private Long actionUserId;
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
package com.ruoyi.hrm.domain.bo;
|
||||
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class HrmFlowCcBo extends BaseEntity {
|
||||
private Long ccId;
|
||||
private Long instId;
|
||||
private String bizType;
|
||||
private Long bizId;
|
||||
|
||||
/** 业务类型名称(列表展示用,可选条件) */
|
||||
private String bizTypeName;
|
||||
|
||||
/** 业务标题/摘要(列表展示用,可选条件) */
|
||||
private String bizTitle;
|
||||
private Long nodeId;
|
||||
private String nodeName;
|
||||
private Integer readFlag;
|
||||
private Long ccUserId;
|
||||
|
||||
/** 手动抄送:支持批量被抄送用户 */
|
||||
private List<Long> ccUserIds;
|
||||
|
||||
private Long fromUserId;
|
||||
private String remark;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
package com.ruoyi.hrm.domain.bo;
|
||||
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class HrmFlowInstanceBo extends BaseEntity {
|
||||
|
||||
private Long instId;
|
||||
|
||||
@NotNull(message = "模板ID不能为空")
|
||||
private Long tplId;
|
||||
|
||||
@NotBlank(message = "业务类型不能为空")
|
||||
private String bizType;
|
||||
|
||||
@NotNull(message = "业务ID不能为空")
|
||||
private Long bizId;
|
||||
|
||||
private String status;
|
||||
|
||||
private Long currentNodeId;
|
||||
|
||||
private Long startUserId;
|
||||
|
||||
private String remark;
|
||||
|
||||
private String startTime;
|
||||
|
||||
private String endTime;
|
||||
|
||||
private String hours;
|
||||
|
||||
private String bizTitle;
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
package com.ruoyi.hrm.domain.bo;
|
||||
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class HrmFlowNodeBo extends BaseEntity {
|
||||
|
||||
private Long nodeId;
|
||||
|
||||
@NotNull(message = "模板ID不能为空")
|
||||
private Long tplId;
|
||||
|
||||
@NotNull(message = "顺序不能为空")
|
||||
private Integer orderNo;
|
||||
|
||||
@NotBlank(message = "节点类型不能为空")
|
||||
private String nodeType;
|
||||
|
||||
@NotBlank(message = "审批人规则不能为空")
|
||||
private String approverRule;
|
||||
|
||||
private String approverValue;
|
||||
|
||||
private String fieldPerm;
|
||||
|
||||
private String remark;
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
package com.ruoyi.hrm.domain.bo;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
@Data
|
||||
public class HrmFlowStartBo {
|
||||
// 模板ID:存在则按模板启动;为空则走“自选审批人一次性审批”
|
||||
private Long tplId;
|
||||
|
||||
// 无模板时:自选审批人 userId(一次性审批,审批完成即结束流程)
|
||||
private Long manualAssigneeUserId;
|
||||
|
||||
@NotBlank(message = "业务类型不能为空")
|
||||
private String bizType;
|
||||
|
||||
@NotNull(message = "业务ID不能为空")
|
||||
private Long bizId;
|
||||
|
||||
private Long startUserId;
|
||||
|
||||
private String contentJson;
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
package com.ruoyi.hrm.domain.bo;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 流程任务审批请求体
|
||||
*/
|
||||
@Data
|
||||
public class HrmFlowTaskApproveBo {
|
||||
|
||||
/** 审批意见 */
|
||||
private String remark;
|
||||
|
||||
/** 盖章参数(仅用于用印业务) */
|
||||
private HrmSealStampBo stampBo;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,30 @@
|
||||
package com.ruoyi.hrm.domain.bo;
|
||||
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class HrmFlowTaskBo extends BaseEntity {
|
||||
|
||||
private Long taskId;
|
||||
private Long instId;
|
||||
private Long nodeId;
|
||||
private Long assigneeUserId;
|
||||
private String status;
|
||||
private Date expireTime;
|
||||
private String remark;
|
||||
|
||||
/** 业务类型:leave/travel/seal */
|
||||
private String bizType;
|
||||
|
||||
/** 业务ID:对应请假/出差/用印的 bizId */
|
||||
private Long bizId;
|
||||
|
||||
//新增createBy
|
||||
private String createBy;
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
package com.ruoyi.hrm.domain.bo;
|
||||
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class HrmFlowTemplateBo extends BaseEntity {
|
||||
|
||||
private Long tplId;
|
||||
|
||||
@NotBlank(message = "模板编码不能为空")
|
||||
private String tplCode;
|
||||
|
||||
@NotBlank(message = "模板名称不能为空")
|
||||
private String tplName;
|
||||
|
||||
@NotBlank(message = "业务类型不能为空")
|
||||
private String bizType;
|
||||
|
||||
private Integer version;
|
||||
|
||||
private Integer enabled;
|
||||
|
||||
private String remark;
|
||||
}
|
||||
@@ -0,0 +1,26 @@
|
||||
package com.ruoyi.hrm.domain.bo;
|
||||
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class HrmFormDataBo extends BaseEntity {
|
||||
|
||||
private Long formId;
|
||||
|
||||
@NotBlank(message = "业务类型不能为空")
|
||||
private String bizType;
|
||||
|
||||
@NotNull(message = "业务ID不能为空")
|
||||
private Long bizId;
|
||||
|
||||
@NotBlank(message = "表单内容不能为空")
|
||||
private String contentJson;
|
||||
|
||||
private String remark;
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
package com.ruoyi.hrm.domain.bo;
|
||||
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class HrmHeadcountPlanBo extends BaseEntity {
|
||||
|
||||
private Long planId;
|
||||
|
||||
@NotNull(message = "部门不能为空")
|
||||
/** 部门ID(引用 sys_dept.dept_id) */
|
||||
private Long deptId;
|
||||
|
||||
@NotNull(message = "岗位不能为空")
|
||||
/** 岗位ID(引用 sys_post.post_id) */
|
||||
private Long postId;
|
||||
|
||||
@NotNull(message = "年份不能为空")
|
||||
private Integer year;
|
||||
|
||||
@NotNull(message = "月份不能为空")
|
||||
private Integer month;
|
||||
|
||||
@NotNull(message = "编制人数不能为空")
|
||||
private Integer budgetCount;
|
||||
|
||||
private String remark;
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
package com.ruoyi.hrm.domain.bo;
|
||||
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class HrmLeaveBalanceBo extends BaseEntity {
|
||||
|
||||
private Long balId;
|
||||
|
||||
@NotNull(message = "员工ID不能为空")
|
||||
private Long empId;
|
||||
|
||||
@NotNull(message = "假期类型不能为空")
|
||||
private String leaveType;
|
||||
|
||||
@NotNull(message = "余额小时不能为空")
|
||||
private java.math.BigDecimal balanceHours;
|
||||
|
||||
private Date expireDate;
|
||||
|
||||
private String remark;
|
||||
}
|
||||
@@ -0,0 +1,52 @@
|
||||
package com.ruoyi.hrm.domain.bo;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class HrmLeaveReqBo extends BaseEntity {
|
||||
|
||||
private Long bizId;
|
||||
|
||||
@NotNull(message = "员工ID不能为空")
|
||||
private Long empId;
|
||||
|
||||
@NotBlank(message = "请假类型不能为空")
|
||||
private String leaveType;
|
||||
|
||||
@NotNull(message = "开始时间不能为空")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd'T'HH:mm:ss.SSSX", timezone = "GMT+8")
|
||||
private Date startTime;
|
||||
|
||||
@NotNull(message = "结束时间不能为空")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd'T'HH:mm:ss.SSSX", timezone = "GMT+8")
|
||||
private Date endTime;
|
||||
|
||||
@NotNull(message = "时长不能为空")
|
||||
private java.math.BigDecimal hours;
|
||||
|
||||
private String reason;
|
||||
private String status;
|
||||
|
||||
/**
|
||||
* 流程模板ID(前端选择模板流程时传入)。
|
||||
*
|
||||
* 不传则后端按 bizType 自动选择启用的最新版本模板;
|
||||
* 若也未配置模板,则可通过 manualAssigneeUserId 走一次性审批。
|
||||
*/
|
||||
private Long tplId;
|
||||
|
||||
// 无模板时,自选审批人 userId
|
||||
private Long manualAssigneeUserId;
|
||||
|
||||
private String accessoryApplyIds;
|
||||
private String accessoryReceiptIds;
|
||||
private String remark;
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
package com.ruoyi.hrm.domain.bo;
|
||||
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class HrmPayPlanBo extends BaseEntity {
|
||||
|
||||
private Long planId;
|
||||
|
||||
@NotBlank(message = "方案名称不能为空")
|
||||
private String planName;
|
||||
|
||||
private BigDecimal baseSalary;
|
||||
private String allowanceJson;
|
||||
private String formulaJson;
|
||||
private String remark;
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
package com.ruoyi.hrm.domain.bo;
|
||||
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class HrmPayRunBo extends BaseEntity {
|
||||
|
||||
private Long runId;
|
||||
|
||||
@NotBlank(message = "核算周期不能为空")
|
||||
private String period;
|
||||
|
||||
private String status;
|
||||
private Long planId;
|
||||
private String remark;
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
package com.ruoyi.hrm.domain.bo;
|
||||
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class HrmPayslipBo extends BaseEntity {
|
||||
|
||||
private Long slipId;
|
||||
|
||||
@NotNull(message = "批次ID不能为空")
|
||||
private Long runId;
|
||||
|
||||
@NotNull(message = "员工ID不能为空")
|
||||
private Long empId;
|
||||
|
||||
private BigDecimal amountGross;
|
||||
private BigDecimal amountNet;
|
||||
private String itemsJson;
|
||||
private String status;
|
||||
private String remark;
|
||||
}
|
||||
@@ -0,0 +1,26 @@
|
||||
package com.ruoyi.hrm.domain.bo;
|
||||
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class HrmPunchBo extends BaseEntity {
|
||||
|
||||
private Long punchId;
|
||||
|
||||
@NotNull(message = "员工ID不能为空")
|
||||
private Long empId;
|
||||
|
||||
@NotNull(message = "打卡时间不能为空")
|
||||
private Date punchTime;
|
||||
|
||||
private String source;
|
||||
private String location;
|
||||
private String deviceId;
|
||||
private String remark;
|
||||
}
|
||||
@@ -0,0 +1,39 @@
|
||||
package com.ruoyi.hrm.domain.bo;
|
||||
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class HrmReimburseReqBo extends BaseEntity {
|
||||
|
||||
private Long bizId;
|
||||
|
||||
@NotNull(message = "员工ID不能为空")
|
||||
private Long empId;
|
||||
|
||||
private String reimburseType;
|
||||
|
||||
@NotNull(message = "报销总金额不能为空")
|
||||
private BigDecimal totalAmount;
|
||||
|
||||
private String reason;
|
||||
|
||||
private String status;
|
||||
|
||||
// 无模板时,自选审批人 userId
|
||||
private Long manualAssigneeUserId;
|
||||
|
||||
/** 报销单据附件oss_id列表(CSV) */
|
||||
private String accessoryApplyIds;
|
||||
|
||||
/** 回执附件oss_id列表(CSV) */
|
||||
private String accessoryReceiptIds;
|
||||
|
||||
private String remark;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,26 @@
|
||||
package com.ruoyi.hrm.domain.bo;
|
||||
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class HrmScheduleBo extends BaseEntity {
|
||||
|
||||
private Long schedId;
|
||||
|
||||
@NotNull(message = "员工ID不能为空")
|
||||
private Long empId;
|
||||
|
||||
@NotNull(message = "工作日期不能为空")
|
||||
private Date workDate;
|
||||
|
||||
@NotNull(message = "班次ID不能为空")
|
||||
private Long shiftId;
|
||||
|
||||
private String remark;
|
||||
}
|
||||
@@ -0,0 +1,62 @@
|
||||
package com.ruoyi.hrm.domain.bo;
|
||||
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
/**
|
||||
* 用印申请 Bo
|
||||
*/
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class HrmSealReqBo extends BaseEntity {
|
||||
|
||||
/** 业务ID(编辑/审批时必填) */
|
||||
private Long bizId;
|
||||
|
||||
/** 申请人ID */
|
||||
@NotNull(message = "申请人不能为空")
|
||||
private Long empId;
|
||||
|
||||
/** 用印类型 */
|
||||
@NotBlank(message = "用印类型不能为空")
|
||||
private String sealType;
|
||||
|
||||
/** 用途说明 */
|
||||
private String purpose;
|
||||
|
||||
/** 申请材料附件ID列表(CSV,对应sys_oss) */
|
||||
private String applyFileIds;
|
||||
|
||||
/** 是否需要回执 1是0否 */
|
||||
private Integer receiptRequired;
|
||||
|
||||
/** 备注 */
|
||||
private String remark;
|
||||
|
||||
/** 状态 draft/running/approved/rejected/canceled */
|
||||
private String status;
|
||||
|
||||
/** 关联流程模板ID(旧字段,兼容历史前端/代码) */
|
||||
private Long flowTplId;
|
||||
|
||||
/**
|
||||
* 流程模板ID(新字段,前端选择模板流程时传入)。
|
||||
* 优先级高于 flowTplId。
|
||||
*/
|
||||
private Long tplId;
|
||||
|
||||
/**
|
||||
* 手动选择的审批人ID(前端选择手动审批时传入)。
|
||||
*/
|
||||
private Long manualAssigneeUserId;
|
||||
|
||||
/** 流程发起人ID(可选,不填可由服务侧取当前登录人) */
|
||||
private Long startUserId;
|
||||
|
||||
/** 提交流程时的表单内容JSON(可选) */
|
||||
private String contentJson;
|
||||
}
|
||||
@@ -0,0 +1,98 @@
|
||||
package com.ruoyi.hrm.domain.bo;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonInclude;
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
import com.fasterxml.jackson.annotation.JsonSetter;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Getter;
|
||||
import lombok.NoArgsConstructor;
|
||||
import lombok.Setter;
|
||||
|
||||
import javax.validation.constraints.Min;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
/**
|
||||
* 盖章命令(Java/Python 坐标统一使用 px)
|
||||
*/
|
||||
@Getter
|
||||
@Setter
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
@JsonInclude(JsonInclude.Include.ALWAYS)
|
||||
public class HrmSealStampBo {
|
||||
|
||||
/** 待盖章 PDF 的 OSS 完整 URL */
|
||||
@NotBlank(message = "待盖章文件地址不能为空")
|
||||
@JsonProperty("targetFileUrl")
|
||||
private String targetFileUrl;
|
||||
|
||||
/** 章图片 OSS 完整 URL(透明 PNG/JPG) */
|
||||
@NotBlank(message = "章图片地址不能为空")
|
||||
@JsonProperty("stampImageUrl")
|
||||
private String stampImageUrl;
|
||||
|
||||
/** 页码(从1开始) */
|
||||
@NotNull
|
||||
@Min(1)
|
||||
@JsonProperty("pageNo")
|
||||
private Integer pageNo;
|
||||
|
||||
/** 左下角 X 坐标(px) */
|
||||
@NotNull
|
||||
@Min(0)
|
||||
@JsonProperty("xPx")
|
||||
@JsonInclude(JsonInclude.Include.ALWAYS)
|
||||
@Setter(lombok.AccessLevel.NONE) // 禁用 Lombok 生成 setter,使用手动 setter
|
||||
private Integer xPx;
|
||||
|
||||
/** 左下角 Y 坐标(px) */
|
||||
@NotNull
|
||||
@Min(0)
|
||||
@JsonProperty("yPx")
|
||||
@JsonInclude(JsonInclude.Include.ALWAYS)
|
||||
@Setter(lombok.AccessLevel.NONE) // 禁用 Lombok 生成 setter,使用手动 setter
|
||||
private Integer yPx;
|
||||
|
||||
/** 盖章宽度(px,可选) */
|
||||
@Min(1)
|
||||
@JsonProperty("widthPx")
|
||||
private Integer widthPx;
|
||||
|
||||
/** 盖章高度(px,可选) */
|
||||
@Min(1)
|
||||
@JsonProperty("heightPx")
|
||||
private Integer heightPx;
|
||||
|
||||
/**
|
||||
* 前端渲染的 viewport 宽度(像素):用于把前端点击坐标换算成 PDFBox 坐标(pt)。
|
||||
* 注意:这不是 PDF 页面原始宽度,而是 pdf.js 按 scale 渲染到 canvas 的宽度。
|
||||
*/
|
||||
@Min(1)
|
||||
@JsonProperty("viewportWidth")
|
||||
private Integer viewportWidth;
|
||||
|
||||
/** 前端渲染的 viewport 高度(像素):用于坐标换算 */
|
||||
@Min(1)
|
||||
@JsonProperty("viewportHeight")
|
||||
private Integer viewportHeight;
|
||||
|
||||
/**
|
||||
* 手动添加 setter 方法,确保 Jackson 能够正确映射 yPx 字段
|
||||
* Lombok 生成的 setYPx() 可能与 Jackson 的字段名映射不匹配
|
||||
*/
|
||||
@JsonSetter("yPx")
|
||||
public void setYPx(Integer yPx) {
|
||||
this.yPx = yPx;
|
||||
}
|
||||
|
||||
/**
|
||||
* 手动添加 setter 方法,确保 Jackson 能够正确映射 xPx 字段
|
||||
*/
|
||||
@JsonSetter("xPx")
|
||||
public void setXPx(Integer xPx) {
|
||||
this.xPx = xPx;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
package com.ruoyi.hrm.domain.bo;
|
||||
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import java.time.LocalTime;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class HrmShiftBo extends BaseEntity {
|
||||
|
||||
private Long shiftId;
|
||||
|
||||
@NotBlank(message = "班次编码不能为空")
|
||||
private String shiftCode;
|
||||
|
||||
@NotBlank(message = "班次名称不能为空")
|
||||
private String shiftName;
|
||||
|
||||
private LocalTime startTime;
|
||||
private LocalTime endTime;
|
||||
private Integer breakMinutes;
|
||||
private Integer isNight;
|
||||
private String remark;
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
package com.ruoyi.hrm.domain.bo;
|
||||
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class HrmStatSnapshotBo extends BaseEntity {
|
||||
|
||||
private Long snapId;
|
||||
|
||||
@NotNull(message = "统计日期不能为空")
|
||||
private Date statDate;
|
||||
|
||||
@NotBlank(message = "指标类型不能为空")
|
||||
private String statType;
|
||||
|
||||
private String dimJson;
|
||||
|
||||
private BigDecimal valueNum;
|
||||
|
||||
private String remark;
|
||||
}
|
||||
@@ -0,0 +1,43 @@
|
||||
package com.ruoyi.hrm.domain.bo;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class HrmTravelReqBo extends BaseEntity {
|
||||
|
||||
private Long bizId;
|
||||
|
||||
@NotNull(message = "员工ID不能为空")
|
||||
private Long empId;
|
||||
|
||||
@NotNull(message = "开始时间不能为空")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd'T'HH:mm:ss.SSSX", timezone = "GMT+8")
|
||||
private Date startTime;
|
||||
|
||||
@NotNull(message = "结束时间不能为空")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd'T'HH:mm:ss.SSSX", timezone = "GMT+8")
|
||||
private Date endTime;
|
||||
|
||||
private String travelType;
|
||||
private String destination;
|
||||
private String reason;
|
||||
private String status;
|
||||
|
||||
// 无模板时,自选审批人 userId
|
||||
private Long manualAssigneeUserId;
|
||||
|
||||
private String accessoryApplyIds;
|
||||
private String accessoryReceiptIds;
|
||||
private String payeeName;
|
||||
private Double estimatedCost;
|
||||
private String bankName;
|
||||
private String bankAccount;
|
||||
private String remark;
|
||||
}
|
||||
@@ -0,0 +1,39 @@
|
||||
package com.ruoyi.hrm.domain.vo;
|
||||
|
||||
import com.ruoyi.common.annotation.Excel;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
public class HrmAttendCalcVo implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@Excel(name = "考勤结果ID")
|
||||
private Long calcId;
|
||||
@Excel(name = "员工ID")
|
||||
private Long empId;
|
||||
@Excel(name = "工作日期", width = 20, dateFormat = "yyyy-MM-dd")
|
||||
private Date workDate;
|
||||
@Excel(name = "班次ID")
|
||||
private Long shiftId;
|
||||
@Excel(name = "状态")
|
||||
private String status;
|
||||
@Excel(name = "出勤分钟")
|
||||
private Integer workMinutes;
|
||||
@Excel(name = "迟到分钟")
|
||||
private Integer lateMinutes;
|
||||
@Excel(name = "早退分钟")
|
||||
private Integer earlyMinutes;
|
||||
@Excel(name = "加班分钟")
|
||||
private Integer otMinutes;
|
||||
@Excel(name = "请假分钟JSON")
|
||||
private String leaveMinutesJson;
|
||||
@Excel(name = "备注")
|
||||
private String remark;
|
||||
private String createBy;
|
||||
private Date createTime;
|
||||
private String updateBy;
|
||||
private Date updateTime;
|
||||
}
|
||||
@@ -0,0 +1,40 @@
|
||||
package com.ruoyi.hrm.domain.vo;
|
||||
|
||||
import com.ruoyi.common.annotation.Excel;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
|
||||
@Data
|
||||
public class HrmCertificateVo implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@Excel(name = "证书ID")
|
||||
private Long certId;
|
||||
@Excel(name = "员工ID")
|
||||
private Long empId;
|
||||
@Excel(name = "证书名称")
|
||||
private String certName;
|
||||
@Excel(name = "证书编号")
|
||||
private String certNo;
|
||||
@Excel(name = "颁发机构")
|
||||
private String issuedBy;
|
||||
@Excel(name = "有效期开始", width = 20, dateFormat = "yyyy-MM-dd")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
private Date validFrom;
|
||||
@Excel(name = "有效期结束", width = 20, dateFormat = "yyyy-MM-dd")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
private Date validTo;
|
||||
@Excel(name = "备注")
|
||||
private String remark;
|
||||
/**
|
||||
* 证书附件 fileIds(逗号分隔的 OSS ID)
|
||||
*/
|
||||
private String fileIds;
|
||||
private String createBy;
|
||||
private Date createTime;
|
||||
private String updateBy;
|
||||
private Date updateTime;
|
||||
}
|
||||
@@ -0,0 +1,40 @@
|
||||
package com.ruoyi.hrm.domain.vo;
|
||||
|
||||
import com.ruoyi.common.annotation.Excel;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
|
||||
@Data
|
||||
public class HrmContractVo implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@Excel(name = "合同ID")
|
||||
private Long contractId;
|
||||
@Excel(name = "员工ID")
|
||||
private Long empId;
|
||||
@Excel(name = "合同编号")
|
||||
private String contractNo;
|
||||
@Excel(name = "合同类型")
|
||||
private String contractType;
|
||||
@Excel(name = "开始日期", width = 20, dateFormat = "yyyy-MM-dd")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
private Date startDate;
|
||||
@Excel(name = "结束日期", width = 20, dateFormat = "yyyy-MM-dd")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||
private Date endDate;
|
||||
@Excel(name = "状态")
|
||||
private String status;
|
||||
@Excel(name = "备注")
|
||||
private String remark;
|
||||
/**
|
||||
* 合同附件 fileIds(逗号分隔的 OSS ID)
|
||||
*/
|
||||
private String fileIds;
|
||||
private String createBy;
|
||||
private Date createTime;
|
||||
private String updateBy;
|
||||
private Date updateTime;
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
package com.ruoyi.hrm.domain.vo;
|
||||
|
||||
import com.ruoyi.common.annotation.Excel;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
public class HrmEmpOrgPositionVo implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@Excel(name = "关系ID")
|
||||
private Long relId;
|
||||
|
||||
@Excel(name = "员工ID")
|
||||
private Long empId;
|
||||
|
||||
@Excel(name = "部门ID")
|
||||
private Long deptId;
|
||||
|
||||
/** 部门名称 */
|
||||
private String deptName;
|
||||
|
||||
@Excel(name = "岗位ID")
|
||||
private Long postId;
|
||||
|
||||
/** 岗位名称 */
|
||||
private String postName;
|
||||
|
||||
@Excel(name = "是否主岗")
|
||||
private Integer isPrimary;
|
||||
|
||||
@Excel(name = "开始日期")
|
||||
private Date startDate;
|
||||
|
||||
@Excel(name = "结束日期")
|
||||
private Date endDate;
|
||||
|
||||
@Excel(name = "备注")
|
||||
private String remark;
|
||||
|
||||
private String createBy;
|
||||
private Date createTime;
|
||||
private String updateBy;
|
||||
private Date updateTime;
|
||||
}
|
||||
@@ -0,0 +1,65 @@
|
||||
package com.ruoyi.hrm.domain.vo;
|
||||
|
||||
import com.ruoyi.common.annotation.Excel;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
public class HrmEmployeeVo implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@Excel(name = "员工ID")
|
||||
private Long empId;
|
||||
|
||||
@Excel(name = "用户ID")
|
||||
private Long userId;
|
||||
|
||||
@Excel(name = "工号")
|
||||
private String empNo;
|
||||
|
||||
@Excel(name = "姓名")
|
||||
private String empName;
|
||||
|
||||
@Excel(name = "性别")
|
||||
private String gender;
|
||||
|
||||
@Excel(name = "手机号")
|
||||
private String mobile;
|
||||
|
||||
@Excel(name = "邮箱")
|
||||
private String email;
|
||||
|
||||
@Excel(name = "证件号码")
|
||||
private String idNo;
|
||||
|
||||
@Excel(name = "入职日期")
|
||||
private Date hireDate;
|
||||
|
||||
@Excel(name = "雇佣类型")
|
||||
private String employmentType;
|
||||
|
||||
@Excel(name = "在职状态")
|
||||
private String status;
|
||||
|
||||
@Excel(name = "主部门ID")
|
||||
private Long deptId;
|
||||
|
||||
/** 主部门名称 */
|
||||
private String deptName;
|
||||
|
||||
@Excel(name = "主岗位ID")
|
||||
private Long postId;
|
||||
|
||||
/** 主岗位名称 */
|
||||
private String postName;
|
||||
|
||||
@Excel(name = "备注")
|
||||
private String remark;
|
||||
|
||||
private String createBy;
|
||||
private Date createTime;
|
||||
private String updateBy;
|
||||
private Date updateTime;
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
package com.ruoyi.hrm.domain.vo;
|
||||
|
||||
import com.ruoyi.common.annotation.Excel;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
public class HrmFlowActionVo implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@Excel(name = "操作ID")
|
||||
private Long actionId;
|
||||
@Excel(name = "任务ID")
|
||||
private Long taskId;
|
||||
@Excel(name = "实例ID")
|
||||
private Long instId;
|
||||
@Excel(name = "动作")
|
||||
private String action;
|
||||
@Excel(name = "说明")
|
||||
private String remark;
|
||||
@Excel(name = "操作人")
|
||||
private Long actionUserId;
|
||||
private String createBy;
|
||||
private Date createTime;
|
||||
private String updateBy;
|
||||
private Date updateTime;
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
package com.ruoyi.hrm.domain.vo;
|
||||
|
||||
import com.ruoyi.common.core.domain.BaseEntity;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
public class HrmFlowCcVo extends BaseEntity implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
private Long ccId;
|
||||
private Long instId;
|
||||
private String bizType;
|
||||
private Long bizId;
|
||||
private String bizTypeName;
|
||||
private String bizTitle;
|
||||
private Long nodeId;
|
||||
private String nodeName;
|
||||
private Integer readFlag;
|
||||
private Long ccUserId;
|
||||
private Long fromUserId;
|
||||
private String remark;
|
||||
private Date createTime;
|
||||
}
|
||||
|
||||
@@ -0,0 +1,42 @@
|
||||
package com.ruoyi.hrm.domain.vo;
|
||||
|
||||
import com.ruoyi.common.annotation.Excel;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
public class HrmFlowInstanceVo implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@Excel(name = "实例ID")
|
||||
private Long instId;
|
||||
@Excel(name = "模板ID")
|
||||
private Long tplId;
|
||||
@Excel(name = "业务类型")
|
||||
private String bizType;
|
||||
@Excel(name = "业务ID")
|
||||
private Long bizId;
|
||||
@Excel(name = "状态")
|
||||
private String status;
|
||||
@Excel(name = "当前节点ID")
|
||||
private Long currentNodeId;
|
||||
@Excel(name = "发起人ID")
|
||||
private Long startUserId;
|
||||
@Excel(name = "备注")
|
||||
private String remark;
|
||||
|
||||
/** 列表展示字段(联查业务表) */
|
||||
private String bizTitle;
|
||||
private Date startTime;
|
||||
private Date endTime;
|
||||
private BigDecimal hours;
|
||||
private String procStatus;
|
||||
|
||||
private String createBy;
|
||||
private Date createTime;
|
||||
private String updateBy;
|
||||
private Date updateTime;
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
package com.ruoyi.hrm.domain.vo;
|
||||
|
||||
import com.ruoyi.common.annotation.Excel;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
public class HrmFlowNodeVo implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@Excel(name = "节点ID")
|
||||
private Long nodeId;
|
||||
@Excel(name = "模板ID")
|
||||
private Long tplId;
|
||||
@Excel(name = "顺序")
|
||||
private Integer orderNo;
|
||||
@Excel(name = "节点类型")
|
||||
private String nodeType;
|
||||
@Excel(name = "审批人规则")
|
||||
private String approverRule;
|
||||
@Excel(name = "审批人取值")
|
||||
private String approverValue;
|
||||
@Excel(name = "字段权限")
|
||||
private String fieldPerm;
|
||||
@Excel(name = "备注")
|
||||
private String remark;
|
||||
private String createBy;
|
||||
private Date createTime;
|
||||
private String updateBy;
|
||||
private Date updateTime;
|
||||
}
|
||||
@@ -0,0 +1,44 @@
|
||||
package com.ruoyi.hrm.domain.vo;
|
||||
|
||||
import com.ruoyi.common.annotation.Excel;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
import java.util.Map;
|
||||
|
||||
@Data
|
||||
public class HrmFlowTaskVo implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@Excel(name = "任务ID")
|
||||
private Long taskId;
|
||||
@Excel(name = "实例ID")
|
||||
private Long instId;
|
||||
@Excel(name = "节点ID")
|
||||
private Long nodeId;
|
||||
@Excel(name = "处理人")
|
||||
private Long assigneeUserId;
|
||||
@Excel(name = "状态")
|
||||
private String status;
|
||||
@Excel(name = "到期时间")
|
||||
private Date expireTime;
|
||||
@Excel(name = "备注")
|
||||
private String remark;
|
||||
|
||||
/** 业务类型:leave/travel/seal/reimburse */
|
||||
private String bizType;
|
||||
/** 业务ID */
|
||||
private Long bizId;
|
||||
|
||||
/**
|
||||
* 业务摘要数据(审批中心展示用),由后端联查后回填。
|
||||
* key/字段根据不同 bizType 不同。
|
||||
*/
|
||||
private Map<String, Object> bizData;
|
||||
|
||||
private String createBy;
|
||||
private Date createTime;
|
||||
private String updateBy;
|
||||
private Date updateTime;
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
package com.ruoyi.hrm.domain.vo;
|
||||
|
||||
import com.ruoyi.common.annotation.Excel;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
public class HrmFlowTemplateVo implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@Excel(name = "模板ID")
|
||||
private Long tplId;
|
||||
@Excel(name = "模板编码")
|
||||
private String tplCode;
|
||||
@Excel(name = "模板名称")
|
||||
private String tplName;
|
||||
@Excel(name = "业务类型")
|
||||
private String bizType;
|
||||
@Excel(name = "版本")
|
||||
private Integer version;
|
||||
@Excel(name = "是否启用")
|
||||
private Integer enabled;
|
||||
private String remark;
|
||||
private String createBy;
|
||||
private Date createTime;
|
||||
private String updateBy;
|
||||
private Date updateTime;
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
package com.ruoyi.hrm.domain.vo;
|
||||
|
||||
import com.ruoyi.common.annotation.Excel;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
public class HrmFormDataVo implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@Excel(name = "表单ID")
|
||||
private Long formId;
|
||||
@Excel(name = "业务类型")
|
||||
private String bizType;
|
||||
@Excel(name = "业务ID")
|
||||
private Long bizId;
|
||||
@Excel(name = "表单内容")
|
||||
private String contentJson;
|
||||
@Excel(name = "备注")
|
||||
private String remark;
|
||||
private String createBy;
|
||||
private Date createTime;
|
||||
private String updateBy;
|
||||
private Date updateTime;
|
||||
}
|
||||
@@ -0,0 +1,38 @@
|
||||
package com.ruoyi.hrm.domain.vo;
|
||||
|
||||
import com.ruoyi.common.annotation.Excel;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
public class HrmHeadcountPlanVo implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@Excel(name = "编制ID")
|
||||
private Long planId;
|
||||
|
||||
@Excel(name = "部门ID")
|
||||
private Long deptId;
|
||||
|
||||
@Excel(name = "岗位ID")
|
||||
private Long postId;
|
||||
|
||||
@Excel(name = "年份")
|
||||
private Integer year;
|
||||
|
||||
@Excel(name = "月份")
|
||||
private Integer month;
|
||||
|
||||
@Excel(name = "编制人数")
|
||||
private Integer budgetCount;
|
||||
|
||||
@Excel(name = "备注")
|
||||
private String remark;
|
||||
|
||||
private String createBy;
|
||||
private Date createTime;
|
||||
private String updateBy;
|
||||
private Date updateTime;
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
package com.ruoyi.hrm.domain.vo;
|
||||
|
||||
import com.ruoyi.common.annotation.Excel;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
public class HrmLeaveBalanceVo implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@Excel(name = "余额ID")
|
||||
private Long balId;
|
||||
@Excel(name = "员工ID")
|
||||
private Long empId;
|
||||
@Excel(name = "假期类型")
|
||||
private String leaveType;
|
||||
@Excel(name = "余额小时")
|
||||
private BigDecimal balanceHours;
|
||||
@Excel(name = "到期日", width = 20, dateFormat = "yyyy-MM-dd")
|
||||
private Date expireDate;
|
||||
@Excel(name = "备注")
|
||||
private String remark;
|
||||
private String createBy;
|
||||
private Date createTime;
|
||||
private String updateBy;
|
||||
private Date updateTime;
|
||||
}
|
||||
@@ -0,0 +1,40 @@
|
||||
package com.ruoyi.hrm.domain.vo;
|
||||
|
||||
import com.ruoyi.common.annotation.Excel;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
public class HrmLeaveReqVo implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@Excel(name = "业务ID")
|
||||
private Long bizId;
|
||||
@Excel(name = "员工ID")
|
||||
private Long empId;
|
||||
@Excel(name = "请假类型")
|
||||
private String leaveType;
|
||||
@Excel(name = "开始时间", width = 25, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date startTime;
|
||||
@Excel(name = "结束时间", width = 25, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date endTime;
|
||||
@Excel(name = "时长(小时)")
|
||||
private BigDecimal hours;
|
||||
@Excel(name = "原因")
|
||||
private String reason;
|
||||
@Excel(name = "状态")
|
||||
private String status;
|
||||
@Excel(name = "申请附件")
|
||||
private String accessoryApplyIds;
|
||||
@Excel(name = "回执附件")
|
||||
private String accessoryReceiptIds;
|
||||
@Excel(name = "备注")
|
||||
private String remark;
|
||||
private String createBy;
|
||||
private Date createTime;
|
||||
private String updateBy;
|
||||
private Date updateTime;
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
package com.ruoyi.hrm.domain.vo;
|
||||
|
||||
import com.ruoyi.common.annotation.Excel;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
public class HrmPayPlanVo implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@Excel(name = "方案ID")
|
||||
private Long planId;
|
||||
@Excel(name = "方案名称")
|
||||
private String planName;
|
||||
@Excel(name = "基础工资")
|
||||
private BigDecimal baseSalary;
|
||||
@Excel(name = "津贴配置JSON")
|
||||
private String allowanceJson;
|
||||
@Excel(name = "公式配置JSON")
|
||||
private String formulaJson;
|
||||
@Excel(name = "备注")
|
||||
private String remark;
|
||||
private String createBy;
|
||||
private Date createTime;
|
||||
private String updateBy;
|
||||
private Date updateTime;
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
package com.ruoyi.hrm.domain.vo;
|
||||
|
||||
import com.ruoyi.common.annotation.Excel;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
public class HrmPayRunVo implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@Excel(name = "批次ID")
|
||||
private Long runId;
|
||||
@Excel(name = "核算周期")
|
||||
private String period;
|
||||
@Excel(name = "状态")
|
||||
private String status;
|
||||
@Excel(name = "方案ID")
|
||||
private Long planId;
|
||||
@Excel(name = "备注")
|
||||
private String remark;
|
||||
private String createBy;
|
||||
private Date createTime;
|
||||
private String updateBy;
|
||||
private Date updateTime;
|
||||
}
|
||||
@@ -0,0 +1,34 @@
|
||||
package com.ruoyi.hrm.domain.vo;
|
||||
|
||||
import com.ruoyi.common.annotation.Excel;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
public class HrmPayslipVo implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@Excel(name = "工资条ID")
|
||||
private Long slipId;
|
||||
@Excel(name = "批次ID")
|
||||
private Long runId;
|
||||
@Excel(name = "员工ID")
|
||||
private Long empId;
|
||||
@Excel(name = "应发金额")
|
||||
private BigDecimal amountGross;
|
||||
@Excel(name = "实发金额")
|
||||
private BigDecimal amountNet;
|
||||
@Excel(name = "工资项JSON")
|
||||
private String itemsJson;
|
||||
@Excel(name = "状态")
|
||||
private String status;
|
||||
@Excel(name = "备注")
|
||||
private String remark;
|
||||
private String createBy;
|
||||
private Date createTime;
|
||||
private String updateBy;
|
||||
private Date updateTime;
|
||||
}
|
||||
@@ -0,0 +1,31 @@
|
||||
package com.ruoyi.hrm.domain.vo;
|
||||
|
||||
import com.ruoyi.common.annotation.Excel;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
public class HrmPunchVo implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@Excel(name = "打卡ID")
|
||||
private Long punchId;
|
||||
@Excel(name = "员工ID")
|
||||
private Long empId;
|
||||
@Excel(name = "打卡时间", width = 25, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date punchTime;
|
||||
@Excel(name = "来源")
|
||||
private String source;
|
||||
@Excel(name = "位置")
|
||||
private String location;
|
||||
@Excel(name = "设备ID")
|
||||
private String deviceId;
|
||||
@Excel(name = "备注")
|
||||
private String remark;
|
||||
private String createBy;
|
||||
private Date createTime;
|
||||
private String updateBy;
|
||||
private Date updateTime;
|
||||
}
|
||||
@@ -0,0 +1,46 @@
|
||||
package com.ruoyi.hrm.domain.vo;
|
||||
|
||||
import com.ruoyi.common.annotation.Excel;
|
||||
import lombok.Data;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
public class HrmReimburseReqVo implements Serializable {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
@Excel(name = "业务ID")
|
||||
private Long bizId;
|
||||
|
||||
@Excel(name = "员工ID")
|
||||
private Long empId;
|
||||
|
||||
@Excel(name = "报销类型")
|
||||
private String reimburseType;
|
||||
|
||||
@Excel(name = "报销总金额")
|
||||
private BigDecimal totalAmount;
|
||||
|
||||
@Excel(name = "报销事由")
|
||||
private String reason;
|
||||
|
||||
@Excel(name = "状态")
|
||||
private String status;
|
||||
|
||||
@Excel(name = "报销单据附件")
|
||||
private String accessoryApplyIds;
|
||||
|
||||
@Excel(name = "回执附件")
|
||||
private String accessoryReceiptIds;
|
||||
|
||||
@Excel(name = "备注")
|
||||
private String remark;
|
||||
|
||||
private String createBy;
|
||||
private Date createTime;
|
||||
private String updateBy;
|
||||
private Date updateTime;
|
||||
}
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user