
82 changed files with 5439 additions and 16 deletions
@ -0,0 +1,23 @@ |
|||
package com.yxt.anrui.scm.api.scmvehrebatecheckapply.flow; |
|||
|
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* @description: |
|||
* @author: dimengzhe |
|||
* @date: 2024/5/11 |
|||
**/ |
|||
@Data |
|||
public class ScmVehRebateCheckApplyDelegateQuery { |
|||
|
|||
private String userSid; |
|||
@ApiModelProperty("流程实例id") |
|||
private String instanceId; |
|||
@ApiModelProperty("任务Id") |
|||
private String taskId; |
|||
@ApiModelProperty("审批人sid") |
|||
private String assignee; |
|||
@ApiModelProperty("填写意见") |
|||
private String views; |
|||
} |
@ -0,0 +1,91 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.terminal.api.oa.mendapply; |
|||
|
|||
|
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import com.yxt.common.core.vo.Vo; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import java.util.ArrayList; |
|||
import java.util.Date; |
|||
import java.util.List; |
|||
|
|||
/** |
|||
* Project: yxt-oa(补卡申请) <br/> |
|||
* File: OaMendApplyVo.java <br/> |
|||
* Class: com.yxt.anrui.oa.api.oamendapply.OaMendApplyVo <br/> |
|||
* Description: 补卡申请 视图数据对象. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2024-12-04 14:14:34 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Data |
|||
@ApiModel(value = "补卡申请 视图数据详情", description = "补卡申请 视图数据详情") |
|||
public class AppMendApplyDetailsVo implements Vo { |
|||
|
|||
private String sid; // sid
|
|||
|
|||
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") |
|||
private Date createTime; |
|||
@ApiModelProperty("补卡原因") |
|||
private String remarks; |
|||
@ApiModelProperty("单据编号") |
|||
private String billNo; // 单据编号
|
|||
@ApiModelProperty("申请人") |
|||
private String createByName; // 申请人
|
|||
@ApiModelProperty("申请部门sid") |
|||
private String deptSid; // 申请部门sid
|
|||
@ApiModelProperty("申请部门名称") |
|||
private String deptName; // 申请部门名称
|
|||
@ApiModelProperty("补卡时间") |
|||
private String time; // 补卡时间
|
|||
@ApiModelProperty("分公司sid") |
|||
private String useOrgSid; // 分公司sid
|
|||
@ApiModelProperty("分公司名称") |
|||
private String useOrgName; // 分公司名称
|
|||
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8") |
|||
@ApiModelProperty("办结日期") |
|||
private Date finishTime; |
|||
@ApiModelProperty("实例id") |
|||
private String procInsId; // 实例id
|
|||
@ApiModelProperty("流程定义id") |
|||
private String procDefId; // 流程定义id
|
|||
@ApiModelProperty("任务id") |
|||
private String taskId; // 任务id
|
|||
@ApiModelProperty("环节id") |
|||
private String nodeId; // 环节id
|
|||
@ApiModelProperty("流程状态") |
|||
private String nodeState; // 流程状态
|
|||
@ApiModelProperty("图片") |
|||
private List<String> files = new ArrayList<>(); |
|||
} |
@ -0,0 +1,91 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.terminal.api.oa.mendapply; |
|||
|
|||
|
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import com.yxt.common.core.dto.Dto; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import java.util.ArrayList; |
|||
import java.util.Date; |
|||
import java.util.List; |
|||
|
|||
/** |
|||
* Project: yxt-oa(补卡申请) <br/> |
|||
* File: OaMendApplyDto.java <br/> |
|||
* Class: com.yxt.anrui.oa.api.oamendapply.OaMendApplyDto <br/> |
|||
* Description: 补卡申请 数据传输对象. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2024-12-04 14:14:34 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Data |
|||
@ApiModel(value = "补卡申请 数据传输对象", description = "补卡申请 数据传输对象") |
|||
public class AppMendApplyDto implements Dto { |
|||
|
|||
private String sid; // sid
|
|||
private String userSid; |
|||
private String orgPath; |
|||
|
|||
@ApiModelProperty("补卡原因") |
|||
private String remarks; |
|||
@ApiModelProperty("单据编号") |
|||
private String billNo; // 单据编号
|
|||
@ApiModelProperty("申请人") |
|||
private String createByName; // 申请人
|
|||
@ApiModelProperty("申请部门sid") |
|||
private String deptSid; // 申请部门sid
|
|||
@ApiModelProperty("申请部门名称") |
|||
private String deptName; // 申请部门名称
|
|||
@ApiModelProperty("补卡时间") |
|||
private String time; // 补卡时间
|
|||
@ApiModelProperty("分公司sid") |
|||
private String useOrgSid; // 分公司sid
|
|||
@ApiModelProperty("分公司名称") |
|||
private String useOrgName; // 分公司名称
|
|||
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8") |
|||
@ApiModelProperty("办结日期") |
|||
private Date finishTime; |
|||
@ApiModelProperty("实例id") |
|||
private String procInstId; // 实例id
|
|||
@ApiModelProperty("流程定义id") |
|||
private String procDefId; // 流程定义id
|
|||
@ApiModelProperty("任务id") |
|||
private String taskId; // 任务id
|
|||
@ApiModelProperty("环节id") |
|||
private String nodeId; // 环节id
|
|||
@ApiModelProperty("流程状态") |
|||
private String nodeState; // 流程状态
|
|||
@ApiModelProperty("图片") |
|||
private List<String> files = new ArrayList<>(); |
|||
} |
@ -0,0 +1,71 @@ |
|||
package com.yxt.anrui.terminal.api.oa.mendapply; |
|||
|
|||
import com.yxt.anrui.terminal.api.oa.mendapply.flowable.*; |
|||
import com.yxt.common.core.result.ResultBean; |
|||
import io.swagger.annotations.ApiOperation; |
|||
import org.springframework.cloud.openfeign.FeignClient; |
|||
import org.springframework.cloud.openfeign.SpringQueryMap; |
|||
import org.springframework.web.bind.annotation.*; |
|||
|
|||
import javax.validation.Valid; |
|||
|
|||
/** |
|||
* @Author |
|||
* @Date |
|||
* @Description |
|||
*/ |
|||
@FeignClient( |
|||
contextId = "terminal-AppMendApply", |
|||
name = "anrui-terminal", |
|||
path = "oa/v1/attendance") |
|||
public interface AppMendApplyFeign { |
|||
|
|||
@ApiOperation("详情") |
|||
@GetMapping("/detail") |
|||
public ResultBean<AppMendApplyDetailsVo> fetchDetailsBySid(@RequestParam("sid") String sid); |
|||
|
|||
@ApiOperation("初始化") |
|||
@GetMapping("/init") |
|||
public ResultBean<AppMendApplyInitVo> init(@RequestParam(value = "sid",required = false) String sid, @RequestParam("userSid") String userSid, @RequestParam("orgPath") String orgPath); |
|||
|
|||
/**********************************************流程********************************************/ |
|||
|
|||
@ApiOperation("提交审批流程") |
|||
@PostMapping("/save") |
|||
public ResultBean submit(@RequestBody @Valid SubmitAppMendApplyDto dto); |
|||
|
|||
@ApiOperation("办理") |
|||
@PutMapping("/agree") |
|||
@ResponseBody |
|||
ResultBean agreeCreditInfo(@RequestBody AppFlowDto dto); |
|||
|
|||
@ApiOperation("驳回") |
|||
@PutMapping("/reject") |
|||
@ResponseBody |
|||
ResultBean rejectCreditInfo(@RequestBody AppFlowTaskQuery query); |
|||
|
|||
@ApiOperation("撤回") |
|||
@PutMapping("/recall") |
|||
@ResponseBody |
|||
ResultBean recallCreditInfo(@RequestBody AppFlowTaskQuery query); |
|||
|
|||
@ApiOperation("终止") |
|||
@PutMapping("/stop") |
|||
@ResponseBody |
|||
ResultBean stopCreditInfo(@RequestBody AppFlowTaskQuery query); |
|||
|
|||
@ApiOperation("获取流程操作标题") |
|||
@GetMapping("/getFlowOperateTitle") |
|||
@ResponseBody |
|||
ResultBean<String> getFlowOperateTitle(@SpringQueryMap AppFlowQuery query); |
|||
|
|||
@ApiOperation(value = "加签") |
|||
@PutMapping(value = "/sign") |
|||
@ResponseBody |
|||
public ResultBean delegate(@RequestBody AppDelegateQuery delegateQuery); |
|||
|
|||
@ApiOperation(value = "转办") |
|||
@PutMapping(value = "/transfer") |
|||
@ResponseBody |
|||
public ResultBean assignTask(@RequestBody AppDelegateQuery delegateQuery); |
|||
} |
@ -0,0 +1,86 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.terminal.api.oa.mendapply; |
|||
|
|||
|
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import com.yxt.common.core.vo.Vo; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import java.util.Date; |
|||
|
|||
/** |
|||
* Project: yxt-oa(补卡申请) <br/> |
|||
* File: OaMendApplyVo.java <br/> |
|||
* Class: com.yxt.anrui.oa.api.oamendapply.OaMendApplyVo <br/> |
|||
* Description: 补卡申请 视图数据对象. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2024-12-04 14:14:34 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Data |
|||
@ApiModel(value = "补卡申请 视图数据对象", description = "补卡申请 视图数据对象") |
|||
public class AppMendApplyInitVo implements Vo { |
|||
|
|||
private String sid; // sid
|
|||
private String userSid; |
|||
private String orgPath; |
|||
|
|||
@ApiModelProperty("单据编号") |
|||
private String billNo; // 单据编号
|
|||
@ApiModelProperty("申请人") |
|||
private String createByName; // 申请人
|
|||
@ApiModelProperty("申请部门sid") |
|||
private String deptSid; // 申请部门sid
|
|||
@ApiModelProperty("申请部门名称") |
|||
private String deptName; // 申请部门名称
|
|||
@ApiModelProperty("补卡时间") |
|||
private String time; // 补卡时间
|
|||
@ApiModelProperty("分公司sid") |
|||
private String useOrgSid; // 分公司sid
|
|||
@ApiModelProperty("分公司名称") |
|||
private String useOrgName; // 分公司名称
|
|||
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8") |
|||
@ApiModelProperty("办结日期") |
|||
private Date finishTime; |
|||
@ApiModelProperty("实例id") |
|||
private String procInstId; // 实例id
|
|||
@ApiModelProperty("流程定义id") |
|||
private String procDefId; // 流程定义id
|
|||
@ApiModelProperty("任务id") |
|||
private String taskId; // 任务id
|
|||
@ApiModelProperty("环节id") |
|||
private String nodeId; // 环节id
|
|||
@ApiModelProperty("流程状态") |
|||
private String nodeState; // 流程状态
|
|||
|
|||
} |
@ -0,0 +1,25 @@ |
|||
package com.yxt.anrui.terminal.api.oa.mendapply.flowable; |
|||
|
|||
import com.fasterxml.jackson.annotation.JsonProperty; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* @author Administrator |
|||
* @description |
|||
* @date 2023/9/28 10:16 |
|||
*/ |
|||
@Data |
|||
public class AppDelegateQuery { |
|||
@ApiModelProperty |
|||
private String userSid; |
|||
@ApiModelProperty("流程实例id") |
|||
@JsonProperty("procInsId") |
|||
private String instanceId; |
|||
@ApiModelProperty("任务Id") |
|||
private String taskId; |
|||
@ApiModelProperty("审批人sid") |
|||
private String assignee; |
|||
@ApiModelProperty("填写意见") |
|||
private String views; |
|||
} |
@ -0,0 +1,37 @@ |
|||
package com.yxt.anrui.terminal.api.oa.mendapply.flowable; |
|||
|
|||
import com.fasterxml.jackson.annotation.JsonProperty; |
|||
import com.yxt.common.core.dto.Dto; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import javax.validation.constraints.NotBlank; |
|||
|
|||
/** |
|||
* @Author dimengzhe |
|||
* @Date 2022/8/9 14:09 |
|||
* @Description |
|||
*/ |
|||
@Data |
|||
public class AppFlowDto implements Dto { |
|||
private static final long serialVersionUID = 3626473483180150495L; |
|||
|
|||
@ApiModelProperty(value = "任务id") |
|||
@NotBlank(message = "参数错误:taskId") |
|||
private String taskId; |
|||
@ApiModelProperty(value = "流程id") |
|||
@NotBlank(message = "参数错误:procInsId") |
|||
@JsonProperty("procInsId") |
|||
private String instanceId; |
|||
@ApiModelProperty(value = "意见") |
|||
private String comment; |
|||
@ApiModelProperty(value = "业务sid") |
|||
@NotBlank(message = "参数错误:businessSid") |
|||
private String businessSid; |
|||
@ApiModelProperty(value = "用户sid") |
|||
@NotBlank(message = "参数错误:userSid") |
|||
private String userSid; |
|||
@ApiModelProperty(value = "节点id") |
|||
@NotBlank(message = "参数错误:taskDefKey") |
|||
private String taskDefKey; |
|||
} |
@ -0,0 +1,28 @@ |
|||
package com.yxt.anrui.terminal.api.oa.mendapply.flowable; |
|||
|
|||
import com.yxt.common.core.query.Query; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import javax.validation.constraints.NotNull; |
|||
|
|||
/** |
|||
* @Author dimengzhe |
|||
* @Date 2022/8/9 14:15 |
|||
* @Description |
|||
*/ |
|||
@Data |
|||
public class AppFlowQuery implements Query { |
|||
private static final long serialVersionUID = 5514095179438249641L; |
|||
|
|||
@ApiModelProperty(value = "节点key") |
|||
private String taskDefKey; |
|||
@ApiModelProperty(value = "业务sid") |
|||
private String businessSid; |
|||
@ApiModelProperty(value = "0 上一环节 1下一环节") |
|||
@NotNull(message = "参数错误:next") |
|||
private Integer next; |
|||
|
|||
@ApiModelProperty("组织机构全路径") |
|||
private String orgPath; |
|||
} |
@ -0,0 +1,47 @@ |
|||
package com.yxt.anrui.terminal.api.oa.mendapply.flowable; |
|||
|
|||
import com.fasterxml.jackson.annotation.JsonProperty; |
|||
import com.yxt.common.core.query.Query; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import javax.validation.constraints.NotBlank; |
|||
|
|||
/** |
|||
* @Author dimengzhe |
|||
* @Date 2022/8/9 14:11 |
|||
* @Description |
|||
*/ |
|||
@Data |
|||
public class AppFlowTaskQuery implements Query { |
|||
private static final long serialVersionUID = -7082170710942810289L; |
|||
|
|||
/** |
|||
* 终止、驳回、撤回 |
|||
*/ |
|||
@ApiModelProperty("任务Id") |
|||
@NotBlank(message = "参数错误:taskId") |
|||
private String taskId; |
|||
/** |
|||
* 终止、驳回、撤回 |
|||
*/ |
|||
@ApiModelProperty("业务sid") |
|||
@NotBlank(message = "参数错误:businessSid") |
|||
private String businessSid; |
|||
/** |
|||
* 终止、驳回 |
|||
*/ |
|||
@ApiModelProperty("任务意见") |
|||
private String comment; |
|||
/** |
|||
* 终止、撤回、驳回 |
|||
*/ |
|||
@ApiModelProperty("用户Sid") |
|||
private String userSid; |
|||
/** |
|||
* 终止 |
|||
*/ |
|||
@ApiModelProperty("流程实例Id") |
|||
@JsonProperty("procInsId") |
|||
private String instanceId; |
|||
} |
@ -0,0 +1,25 @@ |
|||
package com.yxt.anrui.terminal.api.oa.mendapply.flowable; |
|||
|
|||
import com.yxt.anrui.terminal.api.oa.leaveapply.AppLeaveApplyDto; |
|||
import com.yxt.anrui.terminal.api.oa.mendapply.AppMendApplyDto; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* @author liuguohui |
|||
* @version 1.0 |
|||
* @description |
|||
* @date 2022/04/13 |
|||
*/ |
|||
@ApiModel("提交") |
|||
@Data |
|||
public class SubmitAppMendApplyDto extends AppMendApplyDto { |
|||
|
|||
@ApiModelProperty("意见") |
|||
private String comment; |
|||
@ApiModelProperty("流程实例id") |
|||
private String instanceId; |
|||
@ApiModelProperty("任务id") |
|||
private String taskId; |
|||
} |
@ -0,0 +1,174 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.terminal.api.supplychain.vehrebatecheckapply; |
|||
|
|||
|
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import com.yxt.common.core.vo.Vo; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import java.math.BigDecimal; |
|||
import java.util.Date; |
|||
|
|||
/** |
|||
* Project: anrui-scm(单车返利) <br/> |
|||
* File: ScmVehRebateVo.java <br/> |
|||
* Class: com.yxt.anrui.scm.api.scmvehrebate.ScmVehRebateVo <br/> |
|||
* Description: 单车返利表 视图数据对象. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2022-08-24 09:01:54 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Data |
|||
@ApiModel(value = "单车返利表 视图数据详情", description = "单车返利表 视图数据详情") |
|||
public class AppVehRebateDetailsVo implements Vo { |
|||
|
|||
private String sid; // sid
|
|||
|
|||
@ApiModelProperty("状态") |
|||
private String state; |
|||
@ApiModelProperty("创建人sid") |
|||
private String createBySid; |
|||
@ApiModelProperty("创建日期") |
|||
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") |
|||
private Date createTime; // 创建日期
|
|||
@ApiModelProperty("备注") |
|||
private String remarks; // 备注
|
|||
@ApiModelProperty("品牌sid") |
|||
private String brandSid; // 品牌sid
|
|||
@ApiModelProperty("品牌名称") |
|||
private String brandName; // 品牌名称
|
|||
@ApiModelProperty("车型sid") |
|||
private String vehModelSid; // 车型sid
|
|||
@ApiModelProperty("车型名称") |
|||
private String vehModelName; // 车型名称
|
|||
@ApiModelProperty("车辆sid") |
|||
private String vehSid; // 车辆sid
|
|||
@ApiModelProperty("车架号") |
|||
private String vinNo; // 车架号
|
|||
@ApiModelProperty("厂家结算价") |
|||
private String manufactorSettlementPrice; // 厂家结算价
|
|||
@ApiModelProperty("运费") |
|||
private String freight; // 运费
|
|||
@ApiModelProperty("返利类型key") |
|||
private String rebateTypeKey; // 返利类型key
|
|||
@ApiModelProperty("返利类型value") |
|||
private String rebateTypeValue; // 返利类型value
|
|||
@ApiModelProperty("返利名称") |
|||
private String rebateName; // 返利名称
|
|||
@ApiModelProperty("计算标准") |
|||
private String calculationStandard; // 计算标准
|
|||
@ApiModelProperty("预计返利") |
|||
private String estimateRebate; // 预计返利
|
|||
@ApiModelProperty("所属年月") |
|||
private String palceGenDate; // 所属年月
|
|||
@ApiModelProperty("预提日期") |
|||
private String withholdingDate; // 预提日期
|
|||
@ApiModelProperty("上传日期") |
|||
private String uploadDate; // 上传日期
|
|||
@ApiModelProperty("上传金额") |
|||
private String uploadMoney; // 上传金额
|
|||
@ApiModelProperty("二次上传日期") |
|||
private String secondaryUploadDate; // 二次上传日期
|
|||
@ApiModelProperty("二次上传金额") |
|||
private String secondaryUploadMoney; // 二次上传金额
|
|||
@ApiModelProperty("待确定金额(动态)") |
|||
private String stayDetermineMoney; |
|||
@ApiModelProperty("待确定金额(常量)") |
|||
private String stayDetermineMoneyNew; |
|||
@ApiModelProperty("费用") |
|||
private String money; // 费用
|
|||
@ApiModelProperty("是否调整") |
|||
private String isAdjustment; // 是否调整
|
|||
@ApiModelProperty("调整金额") |
|||
private String adjustmentMoney; // 调整金额
|
|||
@ApiModelProperty("调整说明") |
|||
private String adjustmentRemarks; // 调整说明
|
|||
@ApiModelProperty("计算方式key") |
|||
private String calculationModeKey; // 计算方式key
|
|||
@ApiModelProperty("计算方式Value") |
|||
private String calculationModeValue; // 计算方式Value
|
|||
@ApiModelProperty("调整状态") |
|||
private Integer adjustmentState; |
|||
|
|||
@ApiModelProperty("一次核对状态") |
|||
private Integer onceCheckState; |
|||
@ApiModelProperty("其中预计费用") |
|||
private BigDecimal expectCost; |
|||
@ApiModelProperty("其中预提费用") |
|||
private BigDecimal withholdCost; |
|||
@ApiModelProperty("差异金额") |
|||
private BigDecimal diffAmount; |
|||
@ApiModelProperty("预计待支付费用") |
|||
private BigDecimal expectTreatCost; |
|||
@ApiModelProperty("预计抵顶费用") |
|||
private BigDecimal expectSuppCost; |
|||
@ApiModelProperty("预计抵顶费用说明") |
|||
private String expectSuppRemark; |
|||
@ApiModelProperty("上装金额") |
|||
private BigDecimal topAmount; |
|||
|
|||
@ApiModelProperty("一次待支付费用") |
|||
private BigDecimal onceTreatCost; |
|||
@ApiModelProperty("一次抵顶费用") |
|||
private BigDecimal onceSuppCost; |
|||
@ApiModelProperty("一次抵顶费用说明") |
|||
private String onceSuppRemark; |
|||
@ApiModelProperty("临时待支付费用") |
|||
private BigDecimal tempTreatCost; |
|||
@ApiModelProperty("临时抵顶费用") |
|||
private BigDecimal tempSuppCost; |
|||
@ApiModelProperty("二次待支付费用") |
|||
private BigDecimal secondTreatCost; |
|||
@ApiModelProperty("二次抵顶费用") |
|||
private BigDecimal secondSuppCost; |
|||
@ApiModelProperty("二次抵顶费用说明") |
|||
private String secondSuppRemark; |
|||
|
|||
@ApiModelProperty("待支付费用调整金额") |
|||
private BigDecimal treatAdjustmentMoney; |
|||
@ApiModelProperty("抵顶费用调整金额") |
|||
private BigDecimal suppAdjustmentMoney; |
|||
|
|||
@ApiModelProperty("使用组织sid") |
|||
private String useOrgSid; // 使用组织sid
|
|||
@ApiModelProperty("使用组织名称") |
|||
private String useOrgName; // 使用组织名称
|
|||
@ApiModelProperty("创建组织sid") |
|||
private String createOrgSid; // 创建组织sid
|
|||
@ApiModelProperty("创建组织名称") |
|||
private String createOrgName; // 创建组织名称
|
|||
@ApiModelProperty("组织全路径") |
|||
private String orgPath; |
|||
|
|||
private String vehRebateSid; |
|||
} |
@ -0,0 +1,76 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.terminal.api.supplychain.vehrebatecheckapply; |
|||
|
|||
|
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import com.yxt.common.core.vo.Vo; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import java.util.Date; |
|||
import java.util.List; |
|||
|
|||
/** |
|||
* Project: anrui-scm(单车返利核对) <br/> |
|||
* File: ScmVehrebateCheckapplyVo.java <br/> |
|||
* Class: com.yxt.anrui.scm.api.scmvehrebatecheckapply.ScmVehrebateCheckapplyVo <br/> |
|||
* Description: 单车返利核对申请表 视图数据对象. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2022-08-29 16:01:01 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Data |
|||
@ApiModel(value = "单车返利核对申请表 视图数据详情", description = "单车返利核对申请表 视图数据详情") |
|||
public class AppVehrebateCheckapplyDetailsVo implements Vo { |
|||
|
|||
private String sid; // sid
|
|||
|
|||
@ApiModelProperty("核对申请标题") |
|||
private String checkApply; |
|||
@ApiModelProperty("部门") |
|||
private String deptName; |
|||
@ApiModelProperty("创建人姓名") |
|||
private String createByName; |
|||
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8") |
|||
@ApiModelProperty("创建日期") |
|||
private Date createTime; |
|||
@ApiModelProperty("备注") |
|||
private String remarks; |
|||
@ApiModelProperty("流程实例的sid") |
|||
private String procInsId; |
|||
@ApiModelProperty("taskId") |
|||
private String taskId; |
|||
@ApiModelProperty("按返利类型统计") |
|||
private List<AppVehrebateCheckapplydetailDetailsVo> scmWhenVehrebateCheckapplydetailDetails; |
|||
@ApiModelProperty("按预提年月统计") |
|||
private List<AppVehrebateCheckapplydetailDetailsVo> scmLastVehrebateCheckapplydetailDetails; |
|||
} |
@ -0,0 +1,77 @@ |
|||
package com.yxt.anrui.terminal.api.supplychain.vehrebatecheckapply; |
|||
|
|||
|
|||
import com.yxt.anrui.terminal.api.supplychain.vehrebatecheckapply.flowable.AppDelegateQuery; |
|||
import com.yxt.anrui.terminal.api.supplychain.vehrebatecheckapply.flowable.AppFlowDto; |
|||
import com.yxt.anrui.terminal.api.supplychain.vehrebatecheckapply.flowable.AppFlowQuery; |
|||
import com.yxt.anrui.terminal.api.supplychain.vehrebatecheckapply.flowable.AppFlowTaskQuery; |
|||
import com.yxt.common.core.result.ResultBean; |
|||
import io.swagger.annotations.Api; |
|||
import io.swagger.annotations.ApiOperation; |
|||
import org.springframework.cloud.openfeign.FeignClient; |
|||
import org.springframework.cloud.openfeign.SpringQueryMap; |
|||
import org.springframework.web.bind.annotation.*; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* @Author |
|||
* @Date |
|||
* @Description |
|||
*/ |
|||
@Api(tags = "售后盘盈入库") |
|||
@FeignClient( |
|||
contextId = "terminal-AppVehrebateCheckapply", |
|||
name = "anrui-terminal", |
|||
path = "v1/vehrebatecheckapply") |
|||
public interface AppVehrebateCheckapplyFeign { |
|||
|
|||
@ApiOperation("详情") |
|||
@GetMapping("/fetchDetailsBySid/{sid}") |
|||
public ResultBean<AppVehrebateCheckapplyDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid); |
|||
|
|||
@ApiOperation("明细") |
|||
@GetMapping("/vehRebateCheckDetails/{sid}") |
|||
public ResultBean<List<AppVehRebateDetailsVo>> vehRebateCheckDetails(@PathVariable("sid") String sid); |
|||
|
|||
@ApiOperation("明细-详情") |
|||
@GetMapping("/vehRebateDetail/{sid}") |
|||
public ResultBean<AppVehRebateDetailsVo> vehRebateDetail(@PathVariable("sid") String sid); |
|||
|
|||
/**********************************************流程********************************************/ |
|||
|
|||
@ApiOperation("办理") |
|||
@PutMapping("/agreeCreditInfo") |
|||
@ResponseBody |
|||
ResultBean agreeCreditInfo(@RequestBody AppFlowDto dto); |
|||
|
|||
@ApiOperation("驳回") |
|||
@PutMapping("/rejectCreditInfo") |
|||
@ResponseBody |
|||
ResultBean rejectCreditInfo(@RequestBody AppFlowTaskQuery query); |
|||
|
|||
@ApiOperation("撤回") |
|||
@PutMapping("/recallCreditInfo") |
|||
@ResponseBody |
|||
ResultBean recallCreditInfo(@RequestBody AppFlowTaskQuery query); |
|||
|
|||
@ApiOperation("终止") |
|||
@PutMapping("/stopCreditInfo") |
|||
@ResponseBody |
|||
ResultBean stopCreditInfo(@RequestBody AppFlowTaskQuery query); |
|||
|
|||
@ApiOperation("获取流程操作标题") |
|||
@GetMapping("/getFlowOperateTitle") |
|||
@ResponseBody |
|||
ResultBean<String> getFlowOperateTitle(@SpringQueryMap AppFlowQuery query); |
|||
|
|||
@ApiOperation(value = "加签") |
|||
@PutMapping(value = "/delegate") |
|||
@ResponseBody |
|||
public ResultBean delegate(@RequestBody AppDelegateQuery delegateQuery); |
|||
|
|||
@ApiOperation(value = "转办") |
|||
@PutMapping(value = "/assignTask") |
|||
@ResponseBody |
|||
public ResultBean assignTask(@RequestBody AppDelegateQuery delegateQuery); |
|||
} |
@ -0,0 +1,77 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.terminal.api.supplychain.vehrebatecheckapply; |
|||
|
|||
|
|||
import com.yxt.common.core.vo.Vo; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* Project: anrui-scm(单车返利核对) <br/> |
|||
* File: ScmVehrebateCheckapplydetailVo.java <br/> |
|||
* Class: com.yxt.anrui.scm.api.scmvehrebatecheckapplydetail.ScmVehrebateCheckapplydetailVo <br/> |
|||
* Description: 单车返利核对申请表_返利列表 视图数据对象. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2022-08-29 16:01:01 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Data |
|||
@ApiModel(value = "单车返利核对申请表_返利列表 视图数据详情", description = "单车返利核对申请表_返利列表 视图数据详情") |
|||
public class AppVehrebateCheckapplydetailDetailsVo implements Vo { |
|||
|
|||
private String sid; // sid
|
|||
|
|||
@ApiModelProperty("返利类型value") |
|||
private String rebateTypeValue; |
|||
@ApiModelProperty("预提日期") |
|||
private String withholdingDate; |
|||
@ApiModelProperty("数量") |
|||
private String num; |
|||
@ApiModelProperty("预提金额") |
|||
private String withRebate; |
|||
@ApiModelProperty("其中预提费用") |
|||
private String withholdCost; |
|||
@ApiModelProperty("上传金额") |
|||
private String uploadMoney; |
|||
@ApiModelProperty("待确定金额") |
|||
private String stayDetermineMoney; |
|||
@ApiModelProperty("费用") |
|||
private String money; |
|||
@ApiModelProperty("调整金额") |
|||
private String adjustmentMoney; |
|||
@ApiModelProperty("费用调整金额") |
|||
private String fyAdjustmentMoney; |
|||
@ApiModelProperty("单车返利sid") |
|||
private String vehRebateSid; |
|||
} |
@ -0,0 +1,25 @@ |
|||
package com.yxt.anrui.terminal.api.supplychain.vehrebatecheckapply.flowable; |
|||
|
|||
import com.fasterxml.jackson.annotation.JsonProperty; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* @author Administrator |
|||
* @description |
|||
* @date 2023/9/28 10:16 |
|||
*/ |
|||
@Data |
|||
public class AppDelegateQuery { |
|||
@ApiModelProperty |
|||
private String userSid; |
|||
@ApiModelProperty("流程实例id") |
|||
@JsonProperty("procInsId") |
|||
private String instanceId; |
|||
@ApiModelProperty("任务Id") |
|||
private String taskId; |
|||
@ApiModelProperty("审批人sid") |
|||
private String assignee; |
|||
@ApiModelProperty("填写意见") |
|||
private String views; |
|||
} |
@ -0,0 +1,37 @@ |
|||
package com.yxt.anrui.terminal.api.supplychain.vehrebatecheckapply.flowable; |
|||
|
|||
import com.fasterxml.jackson.annotation.JsonProperty; |
|||
import com.yxt.common.core.dto.Dto; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import javax.validation.constraints.NotBlank; |
|||
|
|||
/** |
|||
* @Author dimengzhe |
|||
* @Date 2022/8/9 14:09 |
|||
* @Description |
|||
*/ |
|||
@Data |
|||
public class AppFlowDto implements Dto { |
|||
private static final long serialVersionUID = 3626473483180150495L; |
|||
|
|||
@ApiModelProperty(value = "任务id") |
|||
@NotBlank(message = "参数错误:taskId") |
|||
private String taskId; |
|||
@ApiModelProperty(value = "流程id") |
|||
@NotBlank(message = "参数错误:procInsId") |
|||
@JsonProperty("procInsId") |
|||
private String instanceId; |
|||
@ApiModelProperty(value = "意见") |
|||
private String comment; |
|||
@ApiModelProperty(value = "业务sid") |
|||
@NotBlank(message = "参数错误:businessSid") |
|||
private String businessSid; |
|||
@ApiModelProperty(value = "用户sid") |
|||
@NotBlank(message = "参数错误:userSid") |
|||
private String userSid; |
|||
@ApiModelProperty(value = "节点id") |
|||
@NotBlank(message = "参数错误:taskDefKey") |
|||
private String taskDefKey; |
|||
} |
@ -0,0 +1,28 @@ |
|||
package com.yxt.anrui.terminal.api.supplychain.vehrebatecheckapply.flowable; |
|||
|
|||
import com.yxt.common.core.query.Query; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import javax.validation.constraints.NotNull; |
|||
|
|||
/** |
|||
* @Author dimengzhe |
|||
* @Date 2022/8/9 14:15 |
|||
* @Description |
|||
*/ |
|||
@Data |
|||
public class AppFlowQuery implements Query { |
|||
private static final long serialVersionUID = 5514095179438249641L; |
|||
|
|||
@ApiModelProperty(value = "节点key") |
|||
private String taskDefKey; |
|||
@ApiModelProperty(value = "业务sid") |
|||
private String businessSid; |
|||
@ApiModelProperty(value = "0 上一环节 1下一环节") |
|||
@NotNull(message = "参数错误:next") |
|||
private Integer next; |
|||
|
|||
@ApiModelProperty("组织机构全路径") |
|||
private String orgPath; |
|||
} |
@ -0,0 +1,47 @@ |
|||
package com.yxt.anrui.terminal.api.supplychain.vehrebatecheckapply.flowable; |
|||
|
|||
import com.fasterxml.jackson.annotation.JsonProperty; |
|||
import com.yxt.common.core.query.Query; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import javax.validation.constraints.NotBlank; |
|||
|
|||
/** |
|||
* @Author dimengzhe |
|||
* @Date 2022/8/9 14:11 |
|||
* @Description |
|||
*/ |
|||
@Data |
|||
public class AppFlowTaskQuery implements Query { |
|||
private static final long serialVersionUID = -7082170710942810289L; |
|||
|
|||
/** |
|||
* 终止、驳回、撤回 |
|||
*/ |
|||
@ApiModelProperty("任务Id") |
|||
@NotBlank(message = "参数错误:taskId") |
|||
private String taskId; |
|||
/** |
|||
* 终止、驳回、撤回 |
|||
*/ |
|||
@ApiModelProperty("业务sid") |
|||
@NotBlank(message = "参数错误:businessSid") |
|||
private String businessSid; |
|||
/** |
|||
* 终止、驳回 |
|||
*/ |
|||
@ApiModelProperty("任务意见") |
|||
private String comment; |
|||
/** |
|||
* 终止、撤回、驳回 |
|||
*/ |
|||
@ApiModelProperty("用户Sid") |
|||
private String userSid; |
|||
/** |
|||
* 终止 |
|||
*/ |
|||
@ApiModelProperty("流程实例Id") |
|||
@JsonProperty("procInsId") |
|||
private String instanceId; |
|||
} |
@ -0,0 +1,93 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.terminal.biz.oa.mendapply; |
|||
|
|||
import com.yxt.anrui.terminal.api.oa.mendapply.flowable.*; |
|||
import com.yxt.anrui.terminal.api.oa.mendapply.AppMendApplyDetailsVo; |
|||
import com.yxt.anrui.terminal.api.oa.mendapply.AppMendApplyFeign; |
|||
import com.yxt.anrui.terminal.api.oa.mendapply.AppMendApplyInitVo; |
|||
import com.yxt.common.core.result.ResultBean; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.web.bind.annotation.RequestMapping; |
|||
import org.springframework.web.bind.annotation.RestController; |
|||
|
|||
@RestController |
|||
@RequestMapping("oa/v1/attendance") |
|||
public class AppMendApplyRest implements AppMendApplyFeign { |
|||
|
|||
@Autowired |
|||
private AppMendApplyService appMendApplyService; |
|||
|
|||
@Override |
|||
public ResultBean<AppMendApplyDetailsVo> fetchDetailsBySid(String sid) { |
|||
return appMendApplyService.fetchDetailsBySid(sid); |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean<AppMendApplyInitVo> init(String sid, String userSid, String orgPath) { |
|||
return appMendApplyService.init(sid,userSid,orgPath); |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean submit(SubmitAppMendApplyDto dto) { |
|||
return appMendApplyService.submit(dto); |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean agreeCreditInfo(AppFlowDto dto) { |
|||
return appMendApplyService.agreeCreditInfo(dto); |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean rejectCreditInfo(AppFlowTaskQuery query) { |
|||
return appMendApplyService.rejectCreditInfo(query); |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean recallCreditInfo(AppFlowTaskQuery query) { |
|||
return appMendApplyService.recallCreditInfo(query); |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean stopCreditInfo(AppFlowTaskQuery query) { |
|||
return appMendApplyService.stopCreditInfo(query); |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean<String> getFlowOperateTitle(AppFlowQuery query) { |
|||
return appMendApplyService.getFlowOperateTitle(query); |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean delegate(AppDelegateQuery delegateQuery) { |
|||
return appMendApplyService.delegate(delegateQuery); |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean assignTask(AppDelegateQuery delegateQuery) { |
|||
return appMendApplyService.assignTask(delegateQuery); |
|||
} |
|||
} |
@ -0,0 +1,186 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.terminal.biz.oa.mendapply; |
|||
|
|||
import cn.hutool.core.bean.BeanUtil; |
|||
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrg; |
|||
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign; |
|||
import com.yxt.anrui.portal.api.sysuser.SysUserFeign; |
|||
import com.yxt.anrui.portal.api.sysuser.SysUserVo; |
|||
import com.yxt.anrui.terminal.api.oa.mendapply.flowable.*; |
|||
import com.yxt.anrui.terminal.api.oa.mendapply.AppMendApplyDetailsVo; |
|||
import com.yxt.anrui.terminal.api.oa.mendapply.AppMendApplyInitVo; |
|||
import com.yxt.anrui.terminal.fegin.oamendapply.OaMendApplyDetailsVo; |
|||
import com.yxt.anrui.terminal.fegin.oamendapply.OaMendApplyFeign; |
|||
import com.yxt.anrui.terminal.fegin.oamendapply.OaMendApplyInitVo; |
|||
import com.yxt.anrui.terminal.fegin.oamendapply.flowable.*; |
|||
import com.yxt.common.core.result.ResultBean; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.stereotype.Service; |
|||
|
|||
import javax.annotation.Resource; |
|||
import java.util.Collections; |
|||
import java.util.List; |
|||
|
|||
@Service |
|||
public class AppMendApplyService { |
|||
|
|||
@Resource |
|||
private OaMendApplyFeign oaMendApplyFeign; |
|||
@Autowired |
|||
private SysUserFeign sysUserFeign; |
|||
@Autowired |
|||
private SysStaffOrgFeign sysStaffOrgFeign; |
|||
|
|||
public ResultBean<AppMendApplyDetailsVo> fetchDetailsBySid(String sid) { |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
OaMendApplyDetailsVo data = oaMendApplyFeign.fetchDetailsBySid(sid).getData(); |
|||
AppMendApplyDetailsVo appMendApplyDetailsVo = new AppMendApplyDetailsVo(); |
|||
appMendApplyDetailsVo.setProcInsId(data.getProcInstId()); |
|||
BeanUtil.copyProperties(data,appMendApplyDetailsVo); |
|||
return rb.success().setData(appMendApplyDetailsVo); |
|||
} |
|||
|
|||
public ResultBean<AppMendApplyInitVo> init(String sid, String userSid, String orgPath) { |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
OaMendApplyInitVo data = oaMendApplyFeign.init(sid, userSid, orgPath).getData(); |
|||
AppMendApplyInitVo appMendApplyInitVo = new AppMendApplyInitVo(); |
|||
BeanUtil.copyProperties(data,appMendApplyInitVo); |
|||
return rb.success().setData(appMendApplyInitVo); |
|||
} |
|||
|
|||
public ResultBean submit(SubmitAppMendApplyDto dto) { |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
SubmitOaMendApplyDto submitOaMendApplyDto = new SubmitOaMendApplyDto(); |
|||
BeanUtil.copyProperties(dto,submitOaMendApplyDto); |
|||
oaMendApplyFeign.submit(submitOaMendApplyDto); |
|||
return rb.success(); |
|||
} |
|||
|
|||
public ResultBean agreeCreditInfo(AppFlowDto dto) { |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
//根据用户sid获取staffSid
|
|||
ResultBean<SysUserVo> userVoResultBean = sysUserFeign.fetchBySid(dto.getUserSid()); |
|||
if (!userVoResultBean.getSuccess()) { |
|||
return rb.setMsg(userVoResultBean.getMsg()); |
|||
} |
|||
//根据staffSid获取用户的组织全路径
|
|||
ResultBean<SysStaffOrg> staffOrgResultBean = sysStaffOrgFeign.getOrgByStaffSid(userVoResultBean.getData().getStaffSid()); |
|||
if (!staffOrgResultBean.getSuccess()) { |
|||
return rb.setMsg(staffOrgResultBean.getMsg()); |
|||
} |
|||
//用户的组织全路径
|
|||
String orgSidPath = staffOrgResultBean.getData().getOrgSidPath(); |
|||
OaMendApplyCompleteDto oaMendApplyCompleteDto = new OaMendApplyCompleteDto(); |
|||
BeanUtil.copyProperties(dto, oaMendApplyCompleteDto); |
|||
oaMendApplyCompleteDto.setOrgPath(orgSidPath); |
|||
ResultBean resultBean = oaMendApplyFeign.complete(oaMendApplyCompleteDto); |
|||
if (!resultBean.getSuccess()) { |
|||
return rb.setMsg(resultBean.getMsg()); |
|||
} |
|||
return rb.success().setData(resultBean.getData()); |
|||
} |
|||
|
|||
public ResultBean rejectCreditInfo(AppFlowTaskQuery query) { |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
OaMendApplyTaskQuery oaMendApplyTaskQuery = new OaMendApplyTaskQuery(); |
|||
BeanUtil.copyProperties(query, oaMendApplyTaskQuery); |
|||
ResultBean resultBean = oaMendApplyFeign.reject(oaMendApplyTaskQuery); |
|||
if (!resultBean.getSuccess()) { |
|||
return rb.setMsg(resultBean.getMsg()); |
|||
} |
|||
return rb.success().setData(resultBean.getData()); |
|||
} |
|||
|
|||
public ResultBean recallCreditInfo(AppFlowTaskQuery query) { |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
OaMendApplyTaskQuery oaMendApplyTaskQuery = new OaMendApplyTaskQuery(); |
|||
BeanUtil.copyProperties(query, oaMendApplyTaskQuery); |
|||
ResultBean resultBean = oaMendApplyFeign.revokeProcess(oaMendApplyTaskQuery); |
|||
if (!resultBean.getSuccess()) { |
|||
return rb.setMsg(resultBean.getMsg()); |
|||
} |
|||
return rb.success().setData(resultBean.getData()); |
|||
} |
|||
|
|||
public ResultBean stopCreditInfo(AppFlowTaskQuery query) { |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
OaMendApplyTaskQuery oaMendApplyTaskQuery = new OaMendApplyTaskQuery(); |
|||
BeanUtil.copyProperties(query, oaMendApplyTaskQuery); |
|||
ResultBean resultBean = oaMendApplyFeign.breakProcess(oaMendApplyTaskQuery); |
|||
if (!resultBean.getSuccess()) { |
|||
return rb.setMsg(resultBean.getMsg()); |
|||
} |
|||
return rb.success().setData(resultBean.getData()); |
|||
} |
|||
|
|||
public ResultBean<String> getFlowOperateTitle(AppFlowQuery query) { |
|||
ResultBean<String> rb = ResultBean.fireFail(); |
|||
//0 上一环节 1下一环节
|
|||
int next = query.getNext(); |
|||
OaMendApplyNodeQuery getNodeQuery = new OaMendApplyNodeQuery(); |
|||
BeanUtil.copyProperties(query, getNodeQuery); |
|||
String data = ""; |
|||
if (next == 0) { |
|||
ResultBean<List<OaMendApplyNodeVo>> getPreviousNodesForReject = oaMendApplyFeign.getPreviousNodesForReject(getNodeQuery); |
|||
if (getPreviousNodesForReject.getSuccess()) { |
|||
getPreviousNodesForReject.getData().removeAll(Collections.singleton(null)); |
|||
data = getPreviousNodesForReject.getData().get(0).getName(); |
|||
} else { |
|||
return rb.setMsg(getPreviousNodesForReject.getMsg()); |
|||
} |
|||
} else if (next == 1) { |
|||
ResultBean<List<OaMendApplyNodeVo>> getNextNodesForSubmit = oaMendApplyFeign.getNextNodesForSubmit(getNodeQuery); |
|||
if (getNextNodesForSubmit.getSuccess()) { |
|||
getNextNodesForSubmit.getData().removeAll(Collections.singleton(null)); |
|||
data = getNextNodesForSubmit.getData().get(0).getName(); |
|||
} else { |
|||
return rb.setMsg(getNextNodesForSubmit.getMsg()); |
|||
} |
|||
} else { |
|||
return rb.setMsg("参数错误:next"); |
|||
} |
|||
return rb.success().setData(data); |
|||
} |
|||
|
|||
public ResultBean delegate(AppDelegateQuery delegateQuery) { |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
OaMendApplyDelegateQuery delegateQuery1 = new |
|||
OaMendApplyDelegateQuery(); |
|||
BeanUtil.copyProperties(delegateQuery, delegateQuery1); |
|||
oaMendApplyFeign.delegate(delegateQuery1); |
|||
return rb.success(); |
|||
} |
|||
|
|||
public ResultBean assignTask(AppDelegateQuery delegateQuery) { |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
OaMendApplyDelegateQuery delegateQuery1 = new |
|||
OaMendApplyDelegateQuery(); |
|||
BeanUtil.copyProperties(delegateQuery, delegateQuery1); |
|||
oaMendApplyFeign.assignTask(delegateQuery1); |
|||
return rb.success(); |
|||
} |
|||
} |
@ -0,0 +1,95 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.terminal.biz.supplychain.vehrebatecheckapply; |
|||
|
|||
import com.yxt.anrui.terminal.api.supplychain.vehrebatecheckapply.AppVehrebateCheckapplyDetailsVo; |
|||
import com.yxt.anrui.terminal.api.supplychain.vehrebatecheckapply.AppVehrebateCheckapplyFeign; |
|||
import com.yxt.anrui.terminal.api.supplychain.vehrebatecheckapply.AppVehRebateDetailsVo; |
|||
import com.yxt.anrui.terminal.api.supplychain.vehrebatecheckapply.flowable.*; |
|||
import com.yxt.common.core.result.ResultBean; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.web.bind.annotation.RequestMapping; |
|||
import org.springframework.web.bind.annotation.RestController; |
|||
|
|||
import java.util.List; |
|||
|
|||
@RestController |
|||
@RequestMapping("v1/vehrebatecheckapply") |
|||
public class AppVehrebateCheckapplyRest implements AppVehrebateCheckapplyFeign { |
|||
|
|||
@Autowired |
|||
private AppVehrebateCheckapplyService appVehrebateCheckapplyService; |
|||
|
|||
@Override |
|||
public ResultBean<AppVehrebateCheckapplyDetailsVo> fetchDetailsBySid(String sid) { |
|||
return appVehrebateCheckapplyService.fetchDetailsBySid(sid); |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean<List<AppVehRebateDetailsVo>> vehRebateCheckDetails(String sid) { |
|||
return appVehrebateCheckapplyService.vehRebateCheckDetails(sid); |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean<AppVehRebateDetailsVo> vehRebateDetail(String sid) { |
|||
return appVehrebateCheckapplyService.vehRebateDetail(sid); |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean agreeCreditInfo(AppFlowDto dto) { |
|||
return appVehrebateCheckapplyService.agreeCreditInfo(dto); |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean rejectCreditInfo(AppFlowTaskQuery query) { |
|||
return appVehrebateCheckapplyService.rejectCreditInfo(query); |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean recallCreditInfo(AppFlowTaskQuery query) { |
|||
return appVehrebateCheckapplyService.recallCreditInfo(query); |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean stopCreditInfo(AppFlowTaskQuery query) { |
|||
return appVehrebateCheckapplyService.stopCreditInfo(query); |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean<String> getFlowOperateTitle(AppFlowQuery query) { |
|||
return appVehrebateCheckapplyService.getFlowOperateTitle(query); |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean delegate(AppDelegateQuery delegateQuery) { |
|||
return appVehrebateCheckapplyService.delegate(delegateQuery); |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean assignTask(AppDelegateQuery delegateQuery) { |
|||
return appVehrebateCheckapplyService.assignTask(delegateQuery); |
|||
} |
|||
} |
@ -0,0 +1,206 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.terminal.biz.supplychain.vehrebatecheckapply; |
|||
|
|||
import cn.hutool.core.bean.BeanUtil; |
|||
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrg; |
|||
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign; |
|||
import com.yxt.anrui.portal.api.sysuser.SysUserFeign; |
|||
import com.yxt.anrui.portal.api.sysuser.SysUserVo; |
|||
import com.yxt.anrui.scm.api.flow.FlowTaskVo; |
|||
import com.yxt.anrui.scm.api.scmvehrebate.ScmVehRebateDetailsVo; |
|||
import com.yxt.anrui.scm.api.scmvehrebatecheckapply.ScmVehrebateCheckapplyDetailsVo; |
|||
import com.yxt.anrui.scm.api.scmvehrebatecheckapply.ScmVehrebateCheckapplyFeign; |
|||
import com.yxt.anrui.scm.api.scmvehrebatecheckapply.flow.ScmVehRebateCheckApplyCompleteDto; |
|||
import com.yxt.anrui.scm.api.scmvehrebatecheckapplydetail.ScmVehrebateCheckapplydetailFeign; |
|||
import com.yxt.anrui.scm.api.scmvehrebatecheckapply.flow.*; |
|||
import com.yxt.anrui.terminal.api.supplychain.vehrebatecheckapply.AppVehRebateDetailsVo; |
|||
import com.yxt.anrui.terminal.api.supplychain.vehrebatecheckapply.AppVehrebateCheckapplyDetailsVo; |
|||
import com.yxt.anrui.terminal.api.supplychain.vehrebatecheckapply.AppVehrebateCheckapplydetailDetailsVo; |
|||
import com.yxt.anrui.terminal.api.supplychain.vehrebatecheckapply.flowable.*; |
|||
import com.yxt.common.core.result.ResultBean; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.stereotype.Service; |
|||
|
|||
import javax.annotation.Resource; |
|||
import java.util.ArrayList; |
|||
import java.util.Collections; |
|||
import java.util.List; |
|||
|
|||
@Service |
|||
public class AppVehrebateCheckapplyService { |
|||
|
|||
@Resource |
|||
private ScmVehrebateCheckapplyFeign scmVehrebateCheckapplyFeign; |
|||
@Resource |
|||
private ScmVehrebateCheckapplydetailFeign scmVehrebateCheckapplydetailFeign; |
|||
@Autowired |
|||
private SysStaffOrgFeign sysStaffOrgFeign; |
|||
@Autowired |
|||
private SysUserFeign sysUserFeign; |
|||
|
|||
public ResultBean<AppVehrebateCheckapplyDetailsVo> fetchDetailsBySid(String sid) { |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
ScmVehrebateCheckapplyDetailsVo data = scmVehrebateCheckapplyFeign.fetchDetailsBySid(sid).getData(); |
|||
AppVehrebateCheckapplyDetailsVo appVehrebateCheckapplyDetailsVo = new AppVehrebateCheckapplyDetailsVo(); |
|||
appVehrebateCheckapplyDetailsVo.setProcInsId(data.getProcInstId()); |
|||
BeanUtil.copyProperties(data,appVehrebateCheckapplyDetailsVo); |
|||
List<AppVehrebateCheckapplydetailDetailsVo> when = appVehrebateCheckapplyDetailsVo.getScmWhenVehrebateCheckapplydetailDetails(); |
|||
List<AppVehrebateCheckapplydetailDetailsVo> last = appVehrebateCheckapplyDetailsVo.getScmLastVehrebateCheckapplydetailDetails(); |
|||
for (AppVehrebateCheckapplydetailDetailsVo vehrebateCheckapplydetailDetailsVo : when) { |
|||
vehrebateCheckapplydetailDetailsVo.setSid(vehrebateCheckapplydetailDetailsVo.getVehRebateSid()); |
|||
} |
|||
for (AppVehrebateCheckapplydetailDetailsVo vehrebateCheckapplydetailDetailsVo : last) { |
|||
vehrebateCheckapplydetailDetailsVo.setSid(vehrebateCheckapplydetailDetailsVo.getVehRebateSid()); |
|||
} |
|||
return rb.success().setData(appVehrebateCheckapplyDetailsVo); |
|||
} |
|||
|
|||
public ResultBean<List<AppVehRebateDetailsVo>> vehRebateCheckDetails(String sid) { |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
List<AppVehRebateDetailsVo> appVehRebateDetailsVos = new ArrayList<>(); |
|||
List<ScmVehRebateDetailsVo> data = scmVehrebateCheckapplydetailFeign.vehRebateCheckDetails(sid).getData(); |
|||
for (ScmVehRebateDetailsVo datum : data) { |
|||
AppVehRebateDetailsVo appVehRebateDetailsVo = new AppVehRebateDetailsVo(); |
|||
BeanUtil.copyProperties(datum,appVehRebateDetailsVo); |
|||
appVehRebateDetailsVo.setSid(appVehRebateDetailsVo.getVehRebateSid()); |
|||
appVehRebateDetailsVos.add(appVehRebateDetailsVo); |
|||
} |
|||
return rb.success().setData(appVehRebateDetailsVos); |
|||
} |
|||
|
|||
public ResultBean<AppVehRebateDetailsVo> vehRebateDetail(String sid) { |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
AppVehRebateDetailsVo appVehRebateDetailsVo = new AppVehRebateDetailsVo(); |
|||
ScmVehrebateCheckapplyDetailsVo data = scmVehrebateCheckapplyFeign.fetchDetailsBySid(sid).getData(); |
|||
BeanUtil.copyProperties(data,appVehRebateDetailsVo); |
|||
return rb.success().setData(appVehRebateDetailsVo); |
|||
} |
|||
|
|||
public ResultBean agreeCreditInfo(AppFlowDto dto) { |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
//根据用户sid获取staffSid
|
|||
ResultBean<SysUserVo> userVoResultBean = sysUserFeign.fetchBySid(dto.getUserSid()); |
|||
if (!userVoResultBean.getSuccess()) { |
|||
return rb.setMsg(userVoResultBean.getMsg()); |
|||
} |
|||
//根据staffSid获取用户的组织全路径
|
|||
ResultBean<SysStaffOrg> staffOrgResultBean = sysStaffOrgFeign.getOrgByStaffSid(userVoResultBean.getData().getStaffSid()); |
|||
if (!staffOrgResultBean.getSuccess()) { |
|||
return rb.setMsg(staffOrgResultBean.getMsg()); |
|||
} |
|||
//用户的组织全路径
|
|||
String orgSidPath = staffOrgResultBean.getData().getOrgSidPath(); |
|||
ScmVehRebateCheckApplyCompleteDto scmVehRebateCheckApplyCompleteDto = new ScmVehRebateCheckApplyCompleteDto(); |
|||
BeanUtil.copyProperties(dto, scmVehRebateCheckApplyCompleteDto); |
|||
scmVehRebateCheckApplyCompleteDto.setOrgSidPath(orgSidPath); |
|||
ResultBean resultBean = scmVehrebateCheckapplyFeign.complete(scmVehRebateCheckApplyCompleteDto); |
|||
if (!resultBean.getSuccess()) { |
|||
return rb.setMsg(resultBean.getMsg()); |
|||
} |
|||
return rb.success().setData(resultBean.getData()); |
|||
} |
|||
|
|||
public ResultBean rejectCreditInfo(AppFlowTaskQuery query) { |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
FlowTaskVo flowTaskVo = new FlowTaskVo(); |
|||
BeanUtil.copyProperties(query, flowTaskVo); |
|||
ResultBean resultBean = scmVehrebateCheckapplyFeign.taskReject(flowTaskVo); |
|||
if (!resultBean.getSuccess()) { |
|||
return rb.setMsg(resultBean.getMsg()); |
|||
} |
|||
return rb.success().setData(resultBean.getData()); |
|||
} |
|||
|
|||
public ResultBean recallCreditInfo(AppFlowTaskQuery query) { |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
FlowTaskVo flowTaskVo = new FlowTaskVo(); |
|||
BeanUtil.copyProperties(query, flowTaskVo); |
|||
ResultBean resultBean = scmVehrebateCheckapplyFeign.revokeProcess(flowTaskVo); |
|||
if (!resultBean.getSuccess()) { |
|||
return rb.setMsg(resultBean.getMsg()); |
|||
} |
|||
return rb.success().setData(resultBean.getData()); |
|||
} |
|||
|
|||
public ResultBean stopCreditInfo(AppFlowTaskQuery query) { |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
FlowTaskVo flowTaskVo = new FlowTaskVo(); |
|||
BeanUtil.copyProperties(query, flowTaskVo); |
|||
ResultBean resultBean = scmVehrebateCheckapplyFeign.breakProcess(flowTaskVo); |
|||
if (!resultBean.getSuccess()) { |
|||
return rb.setMsg(resultBean.getMsg()); |
|||
} |
|||
return rb.success().setData(resultBean.getData()); |
|||
} |
|||
|
|||
public ResultBean<String> getFlowOperateTitle(AppFlowQuery query) { |
|||
ResultBean<String> rb = ResultBean.fireFail(); |
|||
//0 上一环节 1下一环节
|
|||
int next = query.getNext(); |
|||
GetNodeQuery getNodeQuery = new GetNodeQuery(); |
|||
BeanUtil.copyProperties(query, getNodeQuery); |
|||
String data = ""; |
|||
if (next == 0) { |
|||
ResultBean<List<GetNodeVo>> getPreviousNodesForReject = scmVehrebateCheckapplyFeign.getPreviousNodesForReject(getNodeQuery); |
|||
if (getPreviousNodesForReject.getSuccess()) { |
|||
getPreviousNodesForReject.getData().removeAll(Collections.singleton(null)); |
|||
data = getPreviousNodesForReject.getData().get(0).getName(); |
|||
} else { |
|||
return rb.setMsg(getPreviousNodesForReject.getMsg()); |
|||
} |
|||
} else if (next == 1) { |
|||
ResultBean<List<GetNodeVo>> getNextNodesForSubmit = scmVehrebateCheckapplyFeign.getNextNodesForSubmit(getNodeQuery); |
|||
if (getNextNodesForSubmit.getSuccess()) { |
|||
getNextNodesForSubmit.getData().removeAll(Collections.singleton(null)); |
|||
data = getNextNodesForSubmit.getData().get(0).getName(); |
|||
} else { |
|||
return rb.setMsg(getNextNodesForSubmit.getMsg()); |
|||
} |
|||
} else { |
|||
return rb.setMsg("参数错误:next"); |
|||
} |
|||
return rb.success().setData(data); |
|||
} |
|||
|
|||
public ResultBean delegate(AppDelegateQuery delegateQuery) { |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
ScmVehRebateCheckApplyDelegateQuery delegateQuery1 = new |
|||
ScmVehRebateCheckApplyDelegateQuery(); |
|||
BeanUtil.copyProperties(delegateQuery, delegateQuery1); |
|||
scmVehrebateCheckapplyFeign.delegate(delegateQuery1); |
|||
return rb.success(); |
|||
} |
|||
|
|||
public ResultBean assignTask(AppDelegateQuery delegateQuery) { |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
ScmVehRebateCheckApplyDelegateQuery delegateQuery1 = new |
|||
ScmVehRebateCheckApplyDelegateQuery(); |
|||
BeanUtil.copyProperties(delegateQuery, delegateQuery1); |
|||
scmVehrebateCheckapplyFeign.assignTask(delegateQuery1); |
|||
return rb.success(); |
|||
} |
|||
} |
@ -0,0 +1,84 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.terminal.fegin.oamendapply; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.TableName; |
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import com.yxt.common.core.domain.BaseEntity; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import java.util.Date; |
|||
|
|||
/** |
|||
* Project: yxt-oa(补卡申请) <br/> |
|||
* File: OaMendApply.java <br/> |
|||
* Class: com.yxt.anrui.oa.api.oamendapply.OaMendApply <br/> |
|||
* Description: 补卡申请. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2024-12-04 14:14:34 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Data |
|||
@ApiModel(value = "补卡申请", description = "补卡申请") |
|||
@TableName("oa_mend_apply") |
|||
public class OaMendApply extends BaseEntity { |
|||
private static final long serialVersionUID = 1L; |
|||
|
|||
@ApiModelProperty("单据编号") |
|||
private String billNo; // 单据编号
|
|||
@ApiModelProperty("申请人") |
|||
private String createByName; // 申请人
|
|||
@ApiModelProperty("申请部门sid") |
|||
private String deptSid; // 申请部门sid
|
|||
@ApiModelProperty("申请部门名称") |
|||
private String deptName; // 申请部门名称
|
|||
@ApiModelProperty("补卡时间") |
|||
private String time; // 补卡时间
|
|||
@ApiModelProperty("分公司sid") |
|||
private String useOrgSid; // 分公司sid
|
|||
@ApiModelProperty("分公司名称") |
|||
private String useOrgName; // 分公司名称
|
|||
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8") |
|||
@ApiModelProperty("办结日期") |
|||
private Date finishTime; // 办结日期
|
|||
@ApiModelProperty("实例id") |
|||
private String procInstId; // 实例id
|
|||
@ApiModelProperty("流程定义id") |
|||
private String procDefId; // 流程定义id
|
|||
@ApiModelProperty("任务id") |
|||
private String taskId; // 任务id
|
|||
@ApiModelProperty("环节id") |
|||
private String nodeId; // 环节id
|
|||
@ApiModelProperty("流程状态") |
|||
private String nodeState; // 流程状态
|
|||
|
|||
} |
@ -0,0 +1,92 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.terminal.fegin.oamendapply; |
|||
|
|||
|
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import com.yxt.anrui.terminal.fegin.oaleaveapply.OaLeaveApplyDetailsVo; |
|||
import com.yxt.common.core.vo.Vo; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import java.util.ArrayList; |
|||
import java.util.Date; |
|||
import java.util.List; |
|||
|
|||
/** |
|||
* Project: yxt-oa(补卡申请) <br/> |
|||
* File: OaMendApplyVo.java <br/> |
|||
* Class: com.yxt.anrui.oa.api.oamendapply.OaMendApplyVo <br/> |
|||
* Description: 补卡申请 视图数据对象. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2024-12-04 14:14:34 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Data |
|||
@ApiModel(value = "补卡申请 视图数据详情", description = "补卡申请 视图数据详情") |
|||
public class OaMendApplyDetailsVo extends OaLeaveApplyDetailsVo implements Vo { |
|||
|
|||
private String sid; // sid
|
|||
|
|||
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") |
|||
private Date createTime; |
|||
@ApiModelProperty("补卡原因") |
|||
private String remarks; |
|||
@ApiModelProperty("单据编号") |
|||
private String billNo; // 单据编号
|
|||
@ApiModelProperty("申请人") |
|||
private String createByName; // 申请人
|
|||
@ApiModelProperty("申请部门sid") |
|||
private String deptSid; // 申请部门sid
|
|||
@ApiModelProperty("申请部门名称") |
|||
private String deptName; // 申请部门名称
|
|||
@ApiModelProperty("补卡时间") |
|||
private String time; // 补卡时间
|
|||
@ApiModelProperty("分公司sid") |
|||
private String useOrgSid; // 分公司sid
|
|||
@ApiModelProperty("分公司名称") |
|||
private String useOrgName; // 分公司名称
|
|||
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8") |
|||
@ApiModelProperty("办结日期") |
|||
private Date finishTime; |
|||
@ApiModelProperty("实例id") |
|||
private String procInstId; // 实例id
|
|||
@ApiModelProperty("流程定义id") |
|||
private String procDefId; // 流程定义id
|
|||
@ApiModelProperty("任务id") |
|||
private String taskId; // 任务id
|
|||
@ApiModelProperty("环节id") |
|||
private String nodeId; // 环节id
|
|||
@ApiModelProperty("流程状态") |
|||
private String nodeState; // 流程状态
|
|||
@ApiModelProperty("图片") |
|||
private List<String> files = new ArrayList<>(); |
|||
} |
@ -0,0 +1,91 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.terminal.fegin.oamendapply; |
|||
|
|||
|
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import com.yxt.common.core.dto.Dto; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import java.util.ArrayList; |
|||
import java.util.Date; |
|||
import java.util.List; |
|||
|
|||
/** |
|||
* Project: yxt-oa(补卡申请) <br/> |
|||
* File: OaMendApplyDto.java <br/> |
|||
* Class: com.yxt.anrui.oa.api.oamendapply.OaMendApplyDto <br/> |
|||
* Description: 补卡申请 数据传输对象. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2024-12-04 14:14:34 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Data |
|||
@ApiModel(value = "补卡申请 数据传输对象", description = "补卡申请 数据传输对象") |
|||
public class OaMendApplyDto implements Dto { |
|||
|
|||
private String sid; // sid
|
|||
private String userSid; |
|||
private String orgPath; |
|||
|
|||
@ApiModelProperty("补卡原因") |
|||
private String remarks; |
|||
@ApiModelProperty("单据编号") |
|||
private String billNo; // 单据编号
|
|||
@ApiModelProperty("申请人") |
|||
private String createByName; // 申请人
|
|||
@ApiModelProperty("申请部门sid") |
|||
private String deptSid; // 申请部门sid
|
|||
@ApiModelProperty("申请部门名称") |
|||
private String deptName; // 申请部门名称
|
|||
@ApiModelProperty("补卡时间") |
|||
private String time; // 补卡时间
|
|||
@ApiModelProperty("分公司sid") |
|||
private String useOrgSid; // 分公司sid
|
|||
@ApiModelProperty("分公司名称") |
|||
private String useOrgName; // 分公司名称
|
|||
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8") |
|||
@ApiModelProperty("办结日期") |
|||
private Date finishTime; |
|||
@ApiModelProperty("实例id") |
|||
private String procInstId; // 实例id
|
|||
@ApiModelProperty("流程定义id") |
|||
private String procDefId; // 流程定义id
|
|||
@ApiModelProperty("任务id") |
|||
private String taskId; // 任务id
|
|||
@ApiModelProperty("环节id") |
|||
private String nodeId; // 环节id
|
|||
@ApiModelProperty("流程状态") |
|||
private String nodeState; // 流程状态
|
|||
@ApiModelProperty("图片") |
|||
private List<String> files = new ArrayList<>(); |
|||
} |
@ -0,0 +1,69 @@ |
|||
package com.yxt.anrui.terminal.fegin.oamendapply; |
|||
|
|||
import com.yxt.anrui.terminal.fegin.oamendapply.flowable.*; |
|||
import com.yxt.common.core.result.ResultBean; |
|||
import io.swagger.annotations.ApiOperation; |
|||
import org.springframework.cloud.openfeign.FeignClient; |
|||
import org.springframework.cloud.openfeign.SpringQueryMap; |
|||
import org.springframework.web.bind.annotation.*; |
|||
|
|||
import javax.validation.Valid; |
|||
import java.util.List; |
|||
|
|||
/** |
|||
* @description: 商品基础信息 |
|||
* @author: fzz |
|||
* @date: 2024/3/7 |
|||
**/ |
|||
@FeignClient( |
|||
contextId = "yxt-oa-OaMendApply", |
|||
name = "yxt-oa", |
|||
path = "v1/oamendapply" |
|||
) |
|||
public interface OaMendApplyFeign { |
|||
|
|||
@ApiOperation("根据SID获取一条记录") |
|||
@GetMapping("/fetchDetailsBySid/{sid}") |
|||
public ResultBean<OaMendApplyDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid); |
|||
|
|||
@ApiOperation("初始化") |
|||
@GetMapping("/init") |
|||
public ResultBean<OaMendApplyInitVo> init(@RequestParam(value = "sid",required = false) String sid, @RequestParam("userSid") String userSid, @RequestParam("orgPath") String orgPath); |
|||
|
|||
@ApiOperation("提交审批流程") |
|||
@PostMapping("/submit") |
|||
public ResultBean submit(@RequestBody @Valid SubmitOaMendApplyDto dto); |
|||
|
|||
@ApiOperation(value = "办理(同意)") |
|||
@PostMapping("/complete") |
|||
public ResultBean complete(@Valid @RequestBody OaMendApplyCompleteDto query); |
|||
|
|||
@ApiOperation(value = "获取上一个环节") |
|||
@GetMapping(value = "/getPreviousNodesForReject") |
|||
public ResultBean<List<OaMendApplyNodeVo>> getPreviousNodesForReject(@Valid @SpringQueryMap OaMendApplyNodeQuery query); |
|||
|
|||
@ApiOperation(value = "获取下一个环节") |
|||
@GetMapping(value = "/getNextNodesForSubmit") |
|||
public ResultBean<List<OaMendApplyNodeVo>> getNextNodesForSubmit(@Valid @SpringQueryMap OaMendApplyNodeQuery query); |
|||
|
|||
@ApiOperation(value = "驳回任务") |
|||
@PostMapping(value = "/reject") |
|||
public ResultBean reject(@Valid @RequestBody OaMendApplyTaskQuery query); |
|||
|
|||
@ApiOperation(value = "撤回流程") |
|||
@PostMapping(value = "/revokeProcess") |
|||
public ResultBean revokeProcess(@Valid @RequestBody OaMendApplyTaskQuery query); |
|||
|
|||
@ApiOperation(value = "终止任务") |
|||
@PostMapping(value = "/breakProcess") |
|||
public ResultBean breakProcess(@Valid @RequestBody OaMendApplyTaskQuery query); |
|||
|
|||
@ApiOperation(value = "加签") |
|||
@PostMapping(value = "/delegate") |
|||
public ResultBean delegate(@RequestBody OaMendApplyDelegateQuery query); |
|||
|
|||
@ApiOperation(value = "转办") |
|||
@PutMapping(value = "/assignTask") |
|||
@ResponseBody |
|||
public ResultBean assignTask(@RequestBody OaMendApplyDelegateQuery query); |
|||
} |
@ -0,0 +1,86 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.terminal.fegin.oamendapply; |
|||
|
|||
|
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import com.yxt.common.core.vo.Vo; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import java.util.Date; |
|||
|
|||
/** |
|||
* Project: yxt-oa(补卡申请) <br/> |
|||
* File: OaMendApplyVo.java <br/> |
|||
* Class: com.yxt.anrui.oa.api.oamendapply.OaMendApplyVo <br/> |
|||
* Description: 补卡申请 视图数据对象. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2024-12-04 14:14:34 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Data |
|||
@ApiModel(value = "补卡申请 视图数据对象", description = "补卡申请 视图数据对象") |
|||
public class OaMendApplyInitVo implements Vo { |
|||
|
|||
private String sid; // sid
|
|||
private String userSid; |
|||
private String orgPath; |
|||
|
|||
@ApiModelProperty("单据编号") |
|||
private String billNo; // 单据编号
|
|||
@ApiModelProperty("申请人") |
|||
private String createByName; // 申请人
|
|||
@ApiModelProperty("申请部门sid") |
|||
private String deptSid; // 申请部门sid
|
|||
@ApiModelProperty("申请部门名称") |
|||
private String deptName; // 申请部门名称
|
|||
@ApiModelProperty("补卡时间") |
|||
private String time; // 补卡时间
|
|||
@ApiModelProperty("分公司sid") |
|||
private String useOrgSid; // 分公司sid
|
|||
@ApiModelProperty("分公司名称") |
|||
private String useOrgName; // 分公司名称
|
|||
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8") |
|||
@ApiModelProperty("办结日期") |
|||
private Date finishTime; |
|||
@ApiModelProperty("实例id") |
|||
private String procInstId; // 实例id
|
|||
@ApiModelProperty("流程定义id") |
|||
private String procDefId; // 流程定义id
|
|||
@ApiModelProperty("任务id") |
|||
private String taskId; // 任务id
|
|||
@ApiModelProperty("环节id") |
|||
private String nodeId; // 环节id
|
|||
@ApiModelProperty("流程状态") |
|||
private String nodeState; // 流程状态
|
|||
|
|||
} |
@ -0,0 +1,37 @@ |
|||
package com.yxt.anrui.terminal.fegin.oamendapply.flowable; |
|||
|
|||
import com.yxt.common.core.dto.Dto; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import javax.validation.constraints.NotBlank; |
|||
|
|||
/** |
|||
* @Author dimengzhe |
|||
* @Date 2022/9/6 14:57 |
|||
* @Description |
|||
*/ |
|||
@Data |
|||
public class OaMendApplyCompleteDto implements Dto { |
|||
private static final long serialVersionUID = 6378752532534735663L; |
|||
|
|||
@ApiModelProperty(value = "用户sid") |
|||
private String userSid; |
|||
@ApiModelProperty(value = "节点id") |
|||
@NotBlank(message = "参数错误:taskDefKey") |
|||
private String taskDefKey; |
|||
@ApiModelProperty(value = "任务id") |
|||
@NotBlank(message = "参数错误:taskId") |
|||
private String taskId; |
|||
@ApiModelProperty(value = "流程id(PC)") |
|||
private String instanceId; |
|||
@ApiModelProperty(value = "流程id(移动)") |
|||
private String procInsId; |
|||
@ApiModelProperty(value = "意见") |
|||
private String comment; |
|||
@ApiModelProperty(value = "业务sid") |
|||
@NotBlank(message = "参数错误:businessSid") |
|||
private String businessSid; |
|||
|
|||
private String orgPath; |
|||
} |
@ -0,0 +1,26 @@ |
|||
package com.yxt.anrui.terminal.fegin.oamendapply.flowable; |
|||
|
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* @author Administrator |
|||
* @description |
|||
* @date 2023/9/28 9:28 |
|||
*/ |
|||
@Data |
|||
public class OaMendApplyDelegateQuery { |
|||
@ApiModelProperty |
|||
private String userSid; |
|||
@ApiModelProperty("流程实例id") |
|||
// @JsonProperty("procInsId")
|
|||
private String instanceId; |
|||
@ApiModelProperty("任务Id") |
|||
private String taskId; |
|||
@ApiModelProperty("审批人sid") |
|||
private String assignee; |
|||
@ApiModelProperty("填写意见") |
|||
private String views; |
|||
|
|||
|
|||
} |
@ -0,0 +1,25 @@ |
|||
package com.yxt.anrui.terminal.fegin.oamendapply.flowable; |
|||
|
|||
import com.yxt.common.core.query.Query; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import javax.validation.constraints.NotBlank; |
|||
|
|||
/** |
|||
* @Author dimengzhe |
|||
* @Date 2022/9/6 15:04 |
|||
* @Description |
|||
*/ |
|||
@Data |
|||
public class OaMendApplyNodeQuery implements Query { |
|||
private static final long serialVersionUID = 9117613683840483366L; |
|||
|
|||
@ApiModelProperty(value = "环节定义id") |
|||
@NotBlank(message = "参数错误:taskDefKey") |
|||
private String taskDefKey; |
|||
@ApiModelProperty(value = "业务sid") |
|||
private String businessSid; |
|||
@ApiModelProperty(value = "0 上一环节 1下一环节") |
|||
private Integer next; |
|||
} |
@ -0,0 +1,26 @@ |
|||
package com.yxt.anrui.terminal.fegin.oamendapply.flowable; |
|||
|
|||
import com.yxt.common.core.vo.Vo; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* @Author dimengzhe |
|||
* @Date 2022/9/6 15:03 |
|||
* @Description |
|||
*/ |
|||
@Data |
|||
public class OaMendApplyNodeVo implements Vo { |
|||
private static final long serialVersionUID = -833419512294877848L; |
|||
|
|||
@ApiModelProperty(value = "节点名称") |
|||
private String name; |
|||
@ApiModelProperty(value = "节点id") |
|||
private String id; |
|||
@ApiModelProperty(value = "审批组") |
|||
private List<String> candidateGroups; |
|||
@ApiModelProperty(value = "是否是最后环节") |
|||
private String endTask; |
|||
} |
@ -0,0 +1,48 @@ |
|||
package com.yxt.anrui.terminal.fegin.oamendapply.flowable; |
|||
|
|||
import com.yxt.common.core.query.Query; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import javax.validation.constraints.NotBlank; |
|||
|
|||
/** |
|||
* @Author dimengzhe |
|||
* @Date 2022/9/6 15:06 |
|||
* @Description |
|||
*/ |
|||
@Data |
|||
public class OaMendApplyTaskQuery implements Query { |
|||
private static final long serialVersionUID = 1288615499873178778L; |
|||
|
|||
/** |
|||
* 终止、驳回、撤回 |
|||
*/ |
|||
@ApiModelProperty("任务Id") |
|||
@NotBlank(message = "参数错误:taskId") |
|||
private String taskId; |
|||
/** |
|||
* 终止、驳回、撤回 |
|||
*/ |
|||
@ApiModelProperty("业务sid") |
|||
@NotBlank(message = "参数错误:businessSid") |
|||
private String businessSid; |
|||
/** |
|||
* 终止、驳回 |
|||
*/ |
|||
@ApiModelProperty("任务意见") |
|||
private String comment; |
|||
/** |
|||
* 终止、撤回、驳回 |
|||
*/ |
|||
@ApiModelProperty("用户Sid") |
|||
private String userSid; |
|||
/** |
|||
* 终止 |
|||
*/ |
|||
@ApiModelProperty("流程实例Id(PC)") |
|||
private String instanceId; |
|||
|
|||
@ApiModelProperty("流程实例Id(移动)") |
|||
private String procInsId; |
|||
} |
@ -0,0 +1,24 @@ |
|||
package com.yxt.anrui.terminal.fegin.oamendapply.flowable; |
|||
|
|||
import com.yxt.anrui.terminal.fegin.oamendapply.OaMendApplyDto; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* @author liuguohui |
|||
* @version 1.0 |
|||
* @description |
|||
* @date 2022/04/13 |
|||
*/ |
|||
@ApiModel("提交") |
|||
@Data |
|||
public class SubmitOaMendApplyDto extends OaMendApplyDto { |
|||
|
|||
@ApiModelProperty("意见") |
|||
private String comment; |
|||
@ApiModelProperty("流程实例id") |
|||
private String instanceId; |
|||
@ApiModelProperty("任务id") |
|||
private String taskId; |
|||
} |
@ -0,0 +1,101 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.oa.api; |
|||
|
|||
import com.yxt.anrui.oa.biz.oahireapply.*; |
|||
import com.yxt.common.core.query.PagerQuery; |
|||
import com.yxt.common.core.result.ResultBean; |
|||
import com.yxt.common.core.vo.PagerVo; |
|||
import io.swagger.annotations.Api; |
|||
import io.swagger.annotations.ApiOperation; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.web.bind.annotation.*; |
|||
|
|||
import java.util.List; |
|||
import com.yxt.anrui.oa.api.oahireapply.OaHireApply; |
|||
import com.yxt.anrui.oa.api.oahireapply.OaHireApplyQuery; |
|||
import com.yxt.anrui.oa.api.oahireapply.OaHireApplyVo; |
|||
import com.yxt.anrui.oa.api.oahireapply.OaHireApplyDetailsVo; |
|||
import com.yxt.anrui.oa.api.oahireapply.OaHireApplyDto; |
|||
import com.yxt.anrui.oa.api.oahireapply.OaHireApplyFeign; |
|||
|
|||
/** |
|||
* Project: yxt-oa(招聘需求) <br/> |
|||
* File: OaHireApplyFeignFallback.java <br/> |
|||
* Class: com.yxt.anrui.oa.biz.oahireapply.OaHireApplyRest <br/> |
|||
* Description: 招聘需求申请. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2024-12-05 11:51:52 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Api(tags = "招聘需求申请") |
|||
@RestController("com.yxt.anrui.oa.biz.oahireapply.OaHireApplyRest") |
|||
@RequestMapping("v1/oahireapply") |
|||
public class OaHireApplyRest implements OaHireApplyFeign { |
|||
|
|||
@Autowired |
|||
private OaHireApplyService oaHireApplyService; |
|||
|
|||
@Override |
|||
@ApiOperation("根据条件分页查询数据的列表") |
|||
@PostMapping("/listPage") |
|||
public ResultBean<PagerVo<OaHireApplyVo>> listPage(@RequestBody PagerQuery<OaHireApplyQuery> pq){ |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
PagerVo<OaHireApplyVo> pv = oaHireApplyService.listPageVo(pq); |
|||
return rb.success().setData(pv); |
|||
} |
|||
|
|||
@Override |
|||
@ApiOperation("新增或修改") |
|||
@PostMapping("/save") |
|||
public ResultBean save(@RequestBody OaHireApplyDto dto){ |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
oaHireApplyService.saveOrUpdateDto(dto); |
|||
return rb.success(); |
|||
} |
|||
|
|||
@Override |
|||
@ApiOperation("根据sid批量删除") |
|||
@PostMapping("/delBySids") |
|||
public ResultBean delBySids(@RequestBody String[] sids){ |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
oaHireApplyService.delBySids(sids); |
|||
return rb.success(); |
|||
} |
|||
|
|||
@Override |
|||
@ApiOperation("根据SID获取一条记录") |
|||
@GetMapping("/fetchDetailsBySid/{sid}") |
|||
public ResultBean<OaHireApplyDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid){ |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
OaHireApplyDetailsVo vo = oaHireApplyService.fetchDetailsVoBySid(sid); |
|||
return rb.success().setData(vo); |
|||
} |
|||
} |
@ -0,0 +1,163 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.oa.api; |
|||
|
|||
import cn.hutool.core.bean.BeanUtil; |
|||
import com.yxt.anrui.oa.biz.oaleaveapply.flowable.*; |
|||
import com.yxt.anrui.oa.biz.oamendapply.*; |
|||
import com.yxt.anrui.oa.biz.oamendapply.flowable.*; |
|||
import com.yxt.anrui.oa.feign.flowable.flow.BusinessVariables; |
|||
import com.yxt.common.core.query.PagerQuery; |
|||
import com.yxt.common.core.result.ResultBean; |
|||
import com.yxt.common.core.vo.PagerVo; |
|||
import io.swagger.annotations.Api; |
|||
import io.swagger.annotations.ApiOperation; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.cloud.openfeign.SpringQueryMap; |
|||
import org.springframework.web.bind.annotation.*; |
|||
|
|||
import java.util.List; |
|||
|
|||
import javax.validation.Valid; |
|||
|
|||
/** |
|||
* Project: yxt-oa(补卡申请) <br/> |
|||
* File: OaMendApplyFeignFallback.java <br/> |
|||
* Class: com.yxt.anrui.oa.biz.oamendapply.OaMendApplyRest <br/> |
|||
* Description: 补卡申请. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2024-12-04 14:14:34 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Api(tags = "补卡申请") |
|||
@RestController |
|||
@RequestMapping("v1/oamendapply") |
|||
public class OaMendApplyRest { |
|||
|
|||
@Autowired |
|||
private OaMendApplyService oaMendApplyService; |
|||
|
|||
@ApiOperation("根据条件分页查询数据的列表") |
|||
@PostMapping("/listPage") |
|||
public ResultBean<PagerVo<OaMendApplyVo>> listPage(@RequestBody PagerQuery<OaMendApplyQuery> pq){ |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
PagerVo<OaMendApplyVo> pv = oaMendApplyService.listPageVo(pq); |
|||
return rb.success().setData(pv); |
|||
} |
|||
|
|||
@ApiOperation("新增或修改") |
|||
@PostMapping("/save") |
|||
public ResultBean save(@RequestBody OaMendApplyDto dto){ |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
oaMendApplyService.saveOrUpdateDto(dto); |
|||
return rb.success(); |
|||
} |
|||
|
|||
@ApiOperation("根据sid批量删除") |
|||
@DeleteMapping("/delBySids") |
|||
public ResultBean delBySids(@RequestBody String[] sids){ |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
oaMendApplyService.delAll(sids); |
|||
return rb.success(); |
|||
} |
|||
|
|||
@ApiOperation("根据SID获取一条记录") |
|||
@GetMapping("/fetchDetailsBySid/{sid}") |
|||
public ResultBean<OaMendApplyDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid){ |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
OaMendApplyDetailsVo vo = oaMendApplyService.fetchDetailsVoBySid(sid); |
|||
return rb.success().setData(vo); |
|||
} |
|||
|
|||
@ApiOperation("初始化") |
|||
@GetMapping("/init") |
|||
public ResultBean<OaMendApplyInitVo> init(@RequestParam(value = "sid",required = false) String sid, @RequestParam("userSid") String userSid, @RequestParam("orgPath") String orgPath) { |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
OaMendApplyInitVo vo = oaMendApplyService.init(sid, userSid, orgPath); |
|||
return rb.success().setData(vo); |
|||
} |
|||
|
|||
@ApiOperation("提交审批流程") |
|||
@PostMapping("/submit") |
|||
public ResultBean submit(@RequestBody @Valid SubmitOaMendApplyDto dto) { |
|||
return oaMendApplyService.submit(dto); |
|||
} |
|||
|
|||
@ApiOperation(value = "办理(同意)") |
|||
@PostMapping("/complete") |
|||
public ResultBean complete(@Valid @RequestBody OaLeaveApplyCompleteDto query) { |
|||
BusinessVariables bv = new BusinessVariables(); |
|||
BeanUtil.copyProperties(query, bv); |
|||
return oaMendApplyService.complete(bv); |
|||
} |
|||
|
|||
@ApiOperation(value = "获取上一个环节") |
|||
@GetMapping(value = "/getPreviousNodesForReject") |
|||
public ResultBean<List<OaMendApplyNodeVo>> getPreviousNodesForReject(@Valid @SpringQueryMap OaMendApplyNodeQuery query) { |
|||
return oaMendApplyService.getPreviousNodesForReject(query); |
|||
} |
|||
|
|||
@ApiOperation(value = "获取下一个环节") |
|||
@GetMapping(value = "/getNextNodesForSubmit") |
|||
public ResultBean<List<OaMendApplyNodeVo>> getNextNodesForSubmit(@Valid @SpringQueryMap OaMendApplyNodeQuery query) { |
|||
return oaMendApplyService.getNextNodesForSubmit(query); |
|||
} |
|||
|
|||
@ApiOperation(value = "驳回任务") |
|||
@PostMapping(value = "/reject") |
|||
public ResultBean reject(@Valid @RequestBody OaMendApplyTaskQuery query) { |
|||
return oaMendApplyService.reject(query); |
|||
} |
|||
|
|||
@ApiOperation(value = "撤回流程") |
|||
@PostMapping(value = "/revokeProcess") |
|||
public ResultBean revokeProcess(@Valid @RequestBody OaMendApplyTaskQuery query) { |
|||
return oaMendApplyService.revokeProcess(query); |
|||
} |
|||
|
|||
@ApiOperation(value = "终止任务") |
|||
@PostMapping(value = "/breakProcess") |
|||
public ResultBean breakProcess(@Valid @RequestBody OaMendApplyTaskQuery query) { |
|||
return oaMendApplyService.breakProcess(query); |
|||
} |
|||
|
|||
@ApiOperation(value = "加签") |
|||
@PostMapping(value = "/delegate") |
|||
public ResultBean delegate(@RequestBody OaMendApplyDelegateQuery query) { |
|||
return oaMendApplyService.delegate(query); |
|||
} |
|||
|
|||
@ApiOperation(value = "转办") |
|||
@PutMapping(value = "/assignTask") |
|||
@ResponseBody |
|||
public ResultBean assignTask(@RequestBody OaMendApplyDelegateQuery query) { |
|||
return oaMendApplyService.assignTask(query); |
|||
} |
|||
} |
@ -0,0 +1,83 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.oa.biz.oahireapply; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.TableName; |
|||
import com.yxt.common.core.domain.BaseEntity; |
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import java.util.Date; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* Project: yxt-oa(招聘需求) <br/> |
|||
* File: OaHireApply.java <br/> |
|||
* Class: com.yxt.anrui.oa.api.oahireapply.OaHireApply <br/> |
|||
* Description: 招聘需求申请. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2024-12-05 11:51:52 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Data |
|||
@ApiModel(value = "招聘需求申请", description = "招聘需求申请") |
|||
@TableName("oa_hire_apply") |
|||
public class OaHireApply extends BaseEntity { |
|||
private static final long serialVersionUID = 1L; |
|||
|
|||
@ApiModelProperty("单据编号") |
|||
private String billNo; // 单据编号
|
|||
@ApiModelProperty("申请人") |
|||
private String createByName; // 申请人
|
|||
@ApiModelProperty("所属机构key") |
|||
private String typeKey; // 所属机构key
|
|||
@ApiModelProperty("所属机构value") |
|||
private String typeValue; // 所属机构value
|
|||
@ApiModelProperty("是否财务") |
|||
private String isCw; // 是否财务
|
|||
@ApiModelProperty("分公司sid") |
|||
private String useOrgSid; // 分公司sid
|
|||
@ApiModelProperty("分公司名称") |
|||
private String useOrgName; // 分公司名称
|
|||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") |
|||
@ApiModelProperty("办结日期") |
|||
private Date finishTime; // 办结日期
|
|||
@ApiModelProperty("实例id") |
|||
private String procInstId; // 实例id
|
|||
@ApiModelProperty("流程定义id") |
|||
private String procDefId; // 流程定义id
|
|||
@ApiModelProperty("任务id") |
|||
private String taskId; // 任务id
|
|||
@ApiModelProperty("环节id") |
|||
private String nodeId; // 环节id
|
|||
@ApiModelProperty("流程状态") |
|||
private String nodeState; // 流程状态
|
|||
|
|||
} |
@ -0,0 +1,85 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.oa.biz.oahireapply; |
|||
|
|||
|
|||
import com.yxt.common.core.vo.Vo; |
|||
|
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import java.util.Date; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* Project: yxt-oa(招聘需求) <br/> |
|||
* File: OaHireApplyVo.java <br/> |
|||
* Class: com.yxt.anrui.oa.api.oahireapply.OaHireApplyVo <br/> |
|||
* Description: 招聘需求申请 视图数据对象. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2024-12-05 11:51:52 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Data |
|||
@ApiModel(value = "招聘需求申请 视图数据详情", description = "招聘需求申请 视图数据详情") |
|||
public class OaHireApplyDetailsVo implements Vo { |
|||
|
|||
private String sid; // sid
|
|||
|
|||
@ApiModelProperty("单据编号") |
|||
private String billNo; // 单据编号
|
|||
@ApiModelProperty("申请人") |
|||
private String createByName; // 申请人
|
|||
@ApiModelProperty("所属机构key") |
|||
private String typeKey; // 所属机构key
|
|||
@ApiModelProperty("所属机构value") |
|||
private String typeValue; // 所属机构value
|
|||
@ApiModelProperty("是否财务") |
|||
private String isCw; // 是否财务
|
|||
@ApiModelProperty("分公司sid") |
|||
private String useOrgSid; // 分公司sid
|
|||
@ApiModelProperty("分公司名称") |
|||
private String useOrgName; // 分公司名称
|
|||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") |
|||
@ApiModelProperty("办结日期") |
|||
private Date finishTimeStart; // 办结日期
|
|||
private Date finishTimeEnd; // 办结日期
|
|||
@ApiModelProperty("实例id") |
|||
private String procInstId; // 实例id
|
|||
@ApiModelProperty("流程定义id") |
|||
private String procDefId; // 流程定义id
|
|||
@ApiModelProperty("任务id") |
|||
private String taskId; // 任务id
|
|||
@ApiModelProperty("环节id") |
|||
private String nodeId; // 环节id
|
|||
@ApiModelProperty("流程状态") |
|||
private String nodeState; // 流程状态
|
|||
|
|||
} |
@ -0,0 +1,85 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.oa.biz.oahireapply; |
|||
|
|||
|
|||
import com.yxt.common.core.dto.Dto; |
|||
|
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import java.util.Date; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* Project: yxt-oa(招聘需求) <br/> |
|||
* File: OaHireApplyDto.java <br/> |
|||
* Class: com.yxt.anrui.oa.api.oahireapply.OaHireApplyDto <br/> |
|||
* Description: 招聘需求申请 数据传输对象. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2024-12-05 11:51:52 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Data |
|||
@ApiModel(value = "招聘需求申请 数据传输对象", description = "招聘需求申请 数据传输对象") |
|||
public class OaHireApplyDto implements Dto { |
|||
|
|||
private String sid; // sid
|
|||
|
|||
@ApiModelProperty("单据编号") |
|||
private String billNo; // 单据编号
|
|||
@ApiModelProperty("申请人") |
|||
private String createByName; // 申请人
|
|||
@ApiModelProperty("所属机构key") |
|||
private String typeKey; // 所属机构key
|
|||
@ApiModelProperty("所属机构value") |
|||
private String typeValue; // 所属机构value
|
|||
@ApiModelProperty("是否财务") |
|||
private String isCw; // 是否财务
|
|||
@ApiModelProperty("分公司sid") |
|||
private String useOrgSid; // 分公司sid
|
|||
@ApiModelProperty("分公司名称") |
|||
private String useOrgName; // 分公司名称
|
|||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") |
|||
@ApiModelProperty("办结日期") |
|||
private Date finishTimeStart; // 办结日期
|
|||
private Date finishTimeEnd; // 办结日期
|
|||
@ApiModelProperty("实例id") |
|||
private String procInstId; // 实例id
|
|||
@ApiModelProperty("流程定义id") |
|||
private String procDefId; // 流程定义id
|
|||
@ApiModelProperty("任务id") |
|||
private String taskId; // 任务id
|
|||
@ApiModelProperty("环节id") |
|||
private String nodeId; // 环节id
|
|||
@ApiModelProperty("流程状态") |
|||
private String nodeState; // 流程状态
|
|||
|
|||
} |
@ -0,0 +1,78 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.oa.biz.oahireapply; |
|||
|
|||
import io.swagger.annotations.Api; |
|||
import io.swagger.annotations.ApiOperation; |
|||
import com.yxt.common.core.query.PagerQuery; |
|||
import com.yxt.common.core.result.ResultBean; |
|||
import com.yxt.common.core.vo.PagerVo; |
|||
import org.springframework.cloud.openfeign.FeignClient; |
|||
import org.springframework.web.bind.annotation.*; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* Project: yxt-oa(招聘需求) <br/> |
|||
* File: OaHireApplyFeign.java <br/> |
|||
* Class: com.yxt.anrui.oa.api.oahireapply.OaHireApplyFeign <br/> |
|||
* Description: 招聘需求申请. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2024-12-05 11:51:52 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Api(tags = "招聘需求申请") |
|||
@FeignClient( |
|||
contextId = "yxt-oa-OaHireApply", |
|||
name = "yxt-oa", |
|||
path = "v1/oahireapply", |
|||
fallback = OaHireApplyFeignFallback.class) |
|||
public interface OaHireApplyFeign { |
|||
|
|||
@ApiOperation("根据条件分页查询数据的列表") |
|||
@PostMapping("/listPage") |
|||
@ResponseBody |
|||
public ResultBean<PagerVo<OaHireApplyVo>> listPage(@RequestBody PagerQuery<OaHireApplyQuery> pq); |
|||
|
|||
@ApiOperation("新增或修改") |
|||
@PostMapping("/save") |
|||
@ResponseBody |
|||
public ResultBean save(@RequestBody OaHireApplyDto dto); |
|||
|
|||
@ApiOperation("根据sid删除记录") |
|||
@DeleteMapping("/delBySids") |
|||
@ResponseBody |
|||
public ResultBean delBySids(@RequestBody String[] sids); |
|||
|
|||
@ApiOperation("根据SID获取一条记录") |
|||
@GetMapping("/fetchDetailsBySid/{sid}") |
|||
@ResponseBody |
|||
public ResultBean<OaHireApplyDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid); |
|||
} |
@ -0,0 +1,72 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.oa.biz.oahireapply; |
|||
|
|||
import com.yxt.common.core.query.PagerQuery; |
|||
import com.yxt.common.core.result.ResultBean; |
|||
import com.yxt.common.core.vo.PagerVo; |
|||
import org.springframework.stereotype.Component; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* Project: yxt-oa(招聘需求) <br/> |
|||
* File: OaHireApplyFeignFallback.java <br/> |
|||
* Class: com.yxt.anrui.oa.api.oahireapply.OaHireApplyFeignFallback <br/> |
|||
* Description: 招聘需求申请. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2024-12-05 11:51:52 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Component |
|||
public class OaHireApplyFeignFallback implements OaHireApplyFeign { |
|||
|
|||
@Override |
|||
public ResultBean<PagerVo<OaHireApplyVo>> listPage(PagerQuery<OaHireApplyQuery> pq){ |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
return rb.setMsg("接口yxt-oa/oahireapply/listPage无法访问"); |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean save(OaHireApplyDto dto){ |
|||
return ResultBean.fireFail().setMsg("接口yxt-oa/oahireapply/save无法访问"); |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean delBySids( String[] sids){ |
|||
return ResultBean.fireFail().setMsg("接口yxt-oa/oahireapply/delBySids无法访问"); |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean<OaHireApplyDetailsVo> fetchDetailsBySid(String sid){ |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
return rb.setMsg("接口yxt-oa/oahireapply/fetchDetailsBySid无法访问"); |
|||
} |
|||
} |
@ -0,0 +1,65 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.oa.biz.oahireapply; |
|||
|
|||
import com.baomidou.mybatisplus.core.conditions.Wrapper; |
|||
import com.baomidou.mybatisplus.core.metadata.IPage; |
|||
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
|||
import com.baomidou.mybatisplus.core.toolkit.Constants; |
|||
import org.apache.ibatis.annotations.Mapper; |
|||
import org.apache.ibatis.annotations.Param; |
|||
import org.apache.ibatis.annotations.Select; |
|||
import com.yxt.anrui.oa.api.oahireapply.OaHireApply; |
|||
import com.yxt.anrui.oa.api.oahireapply.OaHireApplyVo; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* Project: yxt-oa(招聘需求) <br/> |
|||
* File: OaHireApplyMapper.java <br/> |
|||
* Class: com.yxt.anrui.oa.biz.oahireapply.OaHireApplyMapper <br/> |
|||
* Description: 招聘需求申请. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2024-12-05 11:51:52 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Mapper |
|||
public interface OaHireApplyMapper extends BaseMapper<OaHireApply> { |
|||
|
|||
//@Update("update oa_hire_apply set name=#{msg} where id=#{id}")
|
|||
//IPage<OaHireApplyVo> voPage(IPage<OaHireApply> page, @Param(Constants.WRAPPER) QueryWrapper<OaHireApply> qw);
|
|||
|
|||
IPage<OaHireApplyVo> selectPageVo(IPage<OaHireApply> page, @Param(Constants.WRAPPER) Wrapper<OaHireApply> qw); |
|||
|
|||
List<OaHireApplyVo> selectListAllVo(@Param(Constants.WRAPPER) Wrapper<OaHireApply> qw); |
|||
|
|||
@Select("select * from oa_hire_apply") |
|||
List<OaHireApplyVo> selectListVo(); |
|||
} |
@ -0,0 +1,13 @@ |
|||
<?xml version="1.0" encoding="UTF-8" ?> |
|||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
<mapper namespace="com.yxt.anrui.oa.biz.oahireapply.OaHireApplyMapper"> |
|||
<!-- <where> ${ew.sqlSegment} </where>--> |
|||
<!-- ${ew.customSqlSegment} --> |
|||
<select id="selectPageVo" resultType="com.yxt.anrui.oa.api.oahireapply.OaHireApplyVo"> |
|||
SELECT * FROM oa_hire_apply <where> ${ew.sqlSegment} </where> |
|||
</select> |
|||
|
|||
<select id="selectListAllVo" resultType="com.yxt.anrui.oa.api.oahireapply.OaHireApplyVo"> |
|||
SELECT * FROM oa_hire_apply <where> ${ew.sqlSegment} </where> |
|||
</select> |
|||
</mapper> |
@ -0,0 +1,83 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.oa.biz.oahireapply; |
|||
|
|||
|
|||
import com.yxt.common.core.query.Query; |
|||
|
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import java.util.Date; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* Project: yxt-oa(招聘需求) <br/> |
|||
* File: OaHireApplyQuery.java <br/> |
|||
* Class: com.yxt.anrui.oa.api.oahireapply.OaHireApplyQuery <br/> |
|||
* Description: 招聘需求申请 查询条件. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2024-12-05 11:51:52 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Data |
|||
@ApiModel(value = "招聘需求申请 查询条件", description = "招聘需求申请 查询条件") |
|||
public class OaHireApplyQuery implements Query { |
|||
|
|||
@ApiModelProperty("单据编号") |
|||
private String billNo; // 单据编号
|
|||
@ApiModelProperty("申请人") |
|||
private String createByName; // 申请人
|
|||
@ApiModelProperty("所属机构key") |
|||
private String typeKey; // 所属机构key
|
|||
@ApiModelProperty("所属机构value") |
|||
private String typeValue; // 所属机构value
|
|||
@ApiModelProperty("是否财务") |
|||
private String isCw; // 是否财务
|
|||
@ApiModelProperty("分公司sid") |
|||
private String useOrgSid; // 分公司sid
|
|||
@ApiModelProperty("分公司名称") |
|||
private String useOrgName; // 分公司名称
|
|||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") |
|||
@ApiModelProperty("办结日期") |
|||
private Date finishTimeStart; // 办结日期
|
|||
private Date finishTimeEnd; // 办结日期
|
|||
@ApiModelProperty("实例id") |
|||
private String procInstId; // 实例id
|
|||
@ApiModelProperty("流程定义id") |
|||
private String procDefId; // 流程定义id
|
|||
@ApiModelProperty("任务id") |
|||
private String taskId; // 任务id
|
|||
@ApiModelProperty("环节id") |
|||
private String nodeId; // 环节id
|
|||
@ApiModelProperty("流程状态") |
|||
private String nodeState; // 流程状态
|
|||
|
|||
} |
@ -0,0 +1,110 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.oa.biz.oahireapply; |
|||
|
|||
import cn.hutool.core.bean.BeanUtil; |
|||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|||
import com.baomidou.mybatisplus.core.metadata.IPage; |
|||
import org.apache.commons.lang3.StringUtils; |
|||
import com.yxt.common.base.service.MybatisBaseService; |
|||
import com.yxt.common.base.utils.PagerUtil; |
|||
import com.yxt.common.core.query.PagerQuery; |
|||
import com.yxt.common.core.result.ResultBean; |
|||
import com.yxt.common.core.vo.PagerVo; |
|||
import com.yxt.anrui.oa.api.oahireapply.OaHireApply; |
|||
import com.yxt.anrui.oa.api.oahireapply.OaHireApplyQuery; |
|||
import com.yxt.anrui.oa.api.oahireapply.OaHireApplyVo; |
|||
import com.yxt.anrui.oa.api.oahireapply.OaHireApplyDetailsVo; |
|||
import com.yxt.anrui.oa.api.oahireapply.OaHireApplyDto; |
|||
import com.yxt.anrui.oa.api.oahireapply.OaHireApplyFeign; |
|||
|
|||
import org.springframework.stereotype.Service; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* Project: yxt-oa(招聘需求) <br/> |
|||
* File: OaHireApplyService.java <br/> |
|||
* Class: com.yxt.anrui.oa.biz.oahireapply.OaHireApplyService <br/> |
|||
* Description: 招聘需求申请 业务逻辑. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2024-12-05 11:51:52 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Service |
|||
public class OaHireApplyService extends MybatisBaseService<OaHireApplyMapper, OaHireApply> { |
|||
private QueryWrapper<OaHireApply> createQueryWrapper(OaHireApplyQuery query) { |
|||
// todo: 这里根据具体业务调整查询条件
|
|||
// 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName()));
|
|||
QueryWrapper<OaHireApply> qw = new QueryWrapper<>(); |
|||
return qw; |
|||
} |
|||
|
|||
public PagerVo<OaHireApplyVo> listPageVo(PagerQuery<OaHireApplyQuery> pq) { |
|||
OaHireApplyQuery query = pq.getParams(); |
|||
QueryWrapper<OaHireApply> qw = createQueryWrapper(query); |
|||
IPage<OaHireApply> page = PagerUtil.queryToPage(pq); |
|||
IPage<OaHireApplyVo> pagging = baseMapper.selectPageVo(page, qw); |
|||
PagerVo<OaHireApplyVo> p = PagerUtil.pageToVo(pagging, null); |
|||
return p; |
|||
} |
|||
|
|||
public void saveOrUpdateDto(OaHireApplyDto dto){ |
|||
String dtoSid = dto.getSid(); |
|||
if (StringUtils.isBlank(dtoSid)) { |
|||
this.insertByDto(dto); |
|||
return; |
|||
} |
|||
this.updateByDto(dto); |
|||
} |
|||
|
|||
public void insertByDto(OaHireApplyDto dto){ |
|||
OaHireApply entity = new OaHireApply(); |
|||
BeanUtil.copyProperties(dto, entity, "id", "sid"); |
|||
baseMapper.insert(entity); |
|||
} |
|||
|
|||
public void updateByDto(OaHireApplyDto dto){ |
|||
String dtoSid = dto.getSid(); |
|||
if (StringUtils.isBlank(dtoSid)) { |
|||
return; |
|||
} |
|||
OaHireApply entity = fetchBySid(dtoSid); |
|||
BeanUtil.copyProperties(dto, entity, "id", "sid"); |
|||
baseMapper.updateById(entity); |
|||
} |
|||
|
|||
public OaHireApplyDetailsVo fetchDetailsVoBySid(String sid){ |
|||
OaHireApply entity = fetchBySid(sid); |
|||
OaHireApplyDetailsVo vo = new OaHireApplyDetailsVo(); |
|||
BeanUtil.copyProperties(entity, vo); |
|||
return vo; |
|||
} |
|||
} |
@ -0,0 +1,85 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.oa.biz.oahireapply; |
|||
|
|||
|
|||
import com.yxt.common.core.vo.Vo; |
|||
|
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import java.util.Date; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* Project: yxt-oa(招聘需求) <br/> |
|||
* File: OaHireApplyVo.java <br/> |
|||
* Class: com.yxt.anrui.oa.api.oahireapply.OaHireApplyVo <br/> |
|||
* Description: 招聘需求申请 视图数据对象. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2024-12-05 11:51:52 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Data |
|||
@ApiModel(value = "招聘需求申请 视图数据对象", description = "招聘需求申请 视图数据对象") |
|||
public class OaHireApplyVo implements Vo { |
|||
|
|||
private String sid; // sid
|
|||
|
|||
@ApiModelProperty("单据编号") |
|||
private String billNo; // 单据编号
|
|||
@ApiModelProperty("申请人") |
|||
private String createByName; // 申请人
|
|||
@ApiModelProperty("所属机构key") |
|||
private String typeKey; // 所属机构key
|
|||
@ApiModelProperty("所属机构value") |
|||
private String typeValue; // 所属机构value
|
|||
@ApiModelProperty("是否财务") |
|||
private String isCw; // 是否财务
|
|||
@ApiModelProperty("分公司sid") |
|||
private String useOrgSid; // 分公司sid
|
|||
@ApiModelProperty("分公司名称") |
|||
private String useOrgName; // 分公司名称
|
|||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") |
|||
@ApiModelProperty("办结日期") |
|||
private Date finishTimeStart; // 办结日期
|
|||
private Date finishTimeEnd; // 办结日期
|
|||
@ApiModelProperty("实例id") |
|||
private String procInstId; // 实例id
|
|||
@ApiModelProperty("流程定义id") |
|||
private String procDefId; // 流程定义id
|
|||
@ApiModelProperty("任务id") |
|||
private String taskId; // 任务id
|
|||
@ApiModelProperty("环节id") |
|||
private String nodeId; // 环节id
|
|||
@ApiModelProperty("流程状态") |
|||
private String nodeState; // 流程状态
|
|||
|
|||
} |
@ -0,0 +1,74 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.oa.biz.oahiredetails; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.TableName; |
|||
import com.yxt.common.core.domain.BaseEntity; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* Project: yxt-oa(招聘需求) <br/> |
|||
* File: OaHireDetails.java <br/> |
|||
* Class: com.yxt.anrui.oa.api.oahiredetails.OaHireDetails <br/> |
|||
* Description: 招聘需求明细. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2024-12-05 11:51:52 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Data |
|||
@ApiModel(value = "招聘需求明细", description = "招聘需求明细") |
|||
@TableName("oa_hire_details") |
|||
public class OaHireDetails extends BaseEntity { |
|||
private static final long serialVersionUID = 1L; |
|||
|
|||
@ApiModelProperty("招聘部门") |
|||
private String hireDeptName; // 招聘部门
|
|||
@ApiModelProperty("招聘岗位") |
|||
private String hirePostName; // 招聘岗位
|
|||
@ApiModelProperty("招聘人数") |
|||
private String hirePeoNum; // 招聘人数
|
|||
@ApiModelProperty("学历要求key") |
|||
private String stuexTypeKey; // 学历要求key
|
|||
@ApiModelProperty("学历要求value") |
|||
private String stuexTypeValue; // 学历要求value
|
|||
@ApiModelProperty("薪资待遇") |
|||
private String salary; // 薪资待遇
|
|||
@ApiModelProperty("职位福利") |
|||
private String benefit; // 职位福利
|
|||
@ApiModelProperty("职位描述") |
|||
private String positionRemarks; // 职位描述
|
|||
@ApiModelProperty("任职要求") |
|||
private String requireRemarks; // 任职要求
|
|||
@ApiModelProperty("工作地址") |
|||
private String workAddress; // 工作地址
|
|||
|
|||
} |
@ -0,0 +1,75 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.oa.biz.oahiredetails; |
|||
|
|||
|
|||
import com.yxt.common.core.vo.Vo; |
|||
|
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* Project: yxt-oa(招聘需求) <br/> |
|||
* File: OaHireDetailsVo.java <br/> |
|||
* Class: com.yxt.anrui.oa.api.oahiredetails.OaHireDetailsVo <br/> |
|||
* Description: 招聘需求明细 视图数据对象. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2024-12-05 11:51:52 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Data |
|||
@ApiModel(value = "招聘需求明细 视图数据详情", description = "招聘需求明细 视图数据详情") |
|||
public class OaHireDetailsDetailsVo implements Vo { |
|||
|
|||
private String sid; // sid
|
|||
|
|||
@ApiModelProperty("招聘部门") |
|||
private String hireDeptName; // 招聘部门
|
|||
@ApiModelProperty("招聘岗位") |
|||
private String hirePostName; // 招聘岗位
|
|||
@ApiModelProperty("招聘人数") |
|||
private String hirePeoNum; // 招聘人数
|
|||
@ApiModelProperty("学历要求key") |
|||
private String stuexTypeKey; // 学历要求key
|
|||
@ApiModelProperty("学历要求value") |
|||
private String stuexTypeValue; // 学历要求value
|
|||
@ApiModelProperty("薪资待遇") |
|||
private String salary; // 薪资待遇
|
|||
@ApiModelProperty("职位福利") |
|||
private String benefit; // 职位福利
|
|||
@ApiModelProperty("职位描述") |
|||
private String positionRemarks; // 职位描述
|
|||
@ApiModelProperty("任职要求") |
|||
private String requireRemarks; // 任职要求
|
|||
@ApiModelProperty("工作地址") |
|||
private String workAddress; // 工作地址
|
|||
|
|||
} |
@ -0,0 +1,75 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.oa.biz.oahiredetails; |
|||
|
|||
|
|||
import com.yxt.common.core.dto.Dto; |
|||
|
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* Project: yxt-oa(招聘需求) <br/> |
|||
* File: OaHireDetailsDto.java <br/> |
|||
* Class: com.yxt.anrui.oa.api.oahiredetails.OaHireDetailsDto <br/> |
|||
* Description: 招聘需求明细 数据传输对象. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2024-12-05 11:51:52 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Data |
|||
@ApiModel(value = "招聘需求明细 数据传输对象", description = "招聘需求明细 数据传输对象") |
|||
public class OaHireDetailsDto implements Dto { |
|||
|
|||
private String sid; // sid
|
|||
|
|||
@ApiModelProperty("招聘部门") |
|||
private String hireDeptName; // 招聘部门
|
|||
@ApiModelProperty("招聘岗位") |
|||
private String hirePostName; // 招聘岗位
|
|||
@ApiModelProperty("招聘人数") |
|||
private String hirePeoNum; // 招聘人数
|
|||
@ApiModelProperty("学历要求key") |
|||
private String stuexTypeKey; // 学历要求key
|
|||
@ApiModelProperty("学历要求value") |
|||
private String stuexTypeValue; // 学历要求value
|
|||
@ApiModelProperty("薪资待遇") |
|||
private String salary; // 薪资待遇
|
|||
@ApiModelProperty("职位福利") |
|||
private String benefit; // 职位福利
|
|||
@ApiModelProperty("职位描述") |
|||
private String positionRemarks; // 职位描述
|
|||
@ApiModelProperty("任职要求") |
|||
private String requireRemarks; // 任职要求
|
|||
@ApiModelProperty("工作地址") |
|||
private String workAddress; // 工作地址
|
|||
|
|||
} |
@ -0,0 +1,78 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.oa.biz.oahiredetails; |
|||
|
|||
import io.swagger.annotations.Api; |
|||
import io.swagger.annotations.ApiOperation; |
|||
import com.yxt.common.core.query.PagerQuery; |
|||
import com.yxt.common.core.result.ResultBean; |
|||
import com.yxt.common.core.vo.PagerVo; |
|||
import org.springframework.cloud.openfeign.FeignClient; |
|||
import org.springframework.web.bind.annotation.*; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* Project: yxt-oa(招聘需求) <br/> |
|||
* File: OaHireDetailsFeign.java <br/> |
|||
* Class: com.yxt.anrui.oa.api.oahiredetails.OaHireDetailsFeign <br/> |
|||
* Description: 招聘需求明细. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2024-12-05 11:51:52 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Api(tags = "招聘需求明细") |
|||
@FeignClient( |
|||
contextId = "yxt-oa-OaHireDetails", |
|||
name = "yxt-oa", |
|||
path = "v1/oahiredetails", |
|||
fallback = OaHireDetailsFeignFallback.class) |
|||
public interface OaHireDetailsFeign { |
|||
|
|||
@ApiOperation("根据条件分页查询数据的列表") |
|||
@PostMapping("/listPage") |
|||
@ResponseBody |
|||
public ResultBean<PagerVo<OaHireDetailsVo>> listPage(@RequestBody PagerQuery<OaHireDetailsQuery> pq); |
|||
|
|||
@ApiOperation("新增或修改") |
|||
@PostMapping("/save") |
|||
@ResponseBody |
|||
public ResultBean save(@RequestBody OaHireDetailsDto dto); |
|||
|
|||
@ApiOperation("根据sid删除记录") |
|||
@DeleteMapping("/delBySids") |
|||
@ResponseBody |
|||
public ResultBean delBySids(@RequestBody String[] sids); |
|||
|
|||
@ApiOperation("根据SID获取一条记录") |
|||
@GetMapping("/fetchDetailsBySid/{sid}") |
|||
@ResponseBody |
|||
public ResultBean<OaHireDetailsDetailsVo> fetchDetailsBySid(@PathVariable("sid") String sid); |
|||
} |
@ -0,0 +1,72 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.oa.biz.oahiredetails; |
|||
|
|||
import com.yxt.common.core.query.PagerQuery; |
|||
import com.yxt.common.core.result.ResultBean; |
|||
import com.yxt.common.core.vo.PagerVo; |
|||
import org.springframework.stereotype.Component; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* Project: yxt-oa(招聘需求) <br/> |
|||
* File: OaHireDetailsFeignFallback.java <br/> |
|||
* Class: com.yxt.anrui.oa.api.oahiredetails.OaHireDetailsFeignFallback <br/> |
|||
* Description: 招聘需求明细. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2024-12-05 11:51:52 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Component |
|||
public class OaHireDetailsFeignFallback implements OaHireDetailsFeign { |
|||
|
|||
@Override |
|||
public ResultBean<PagerVo<OaHireDetailsVo>> listPage(PagerQuery<OaHireDetailsQuery> pq){ |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
return rb.setMsg("接口yxt-oa/oahiredetails/listPage无法访问"); |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean save(OaHireDetailsDto dto){ |
|||
return ResultBean.fireFail().setMsg("接口yxt-oa/oahiredetails/save无法访问"); |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean delBySids( String[] sids){ |
|||
return ResultBean.fireFail().setMsg("接口yxt-oa/oahiredetails/delBySids无法访问"); |
|||
} |
|||
|
|||
@Override |
|||
public ResultBean<OaHireDetailsDetailsVo> fetchDetailsBySid(String sid){ |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
return rb.setMsg("接口yxt-oa/oahiredetails/fetchDetailsBySid无法访问"); |
|||
} |
|||
} |
@ -0,0 +1,65 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.oa.biz.oahiredetails; |
|||
|
|||
import com.baomidou.mybatisplus.core.conditions.Wrapper; |
|||
import com.baomidou.mybatisplus.core.metadata.IPage; |
|||
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
|||
import com.baomidou.mybatisplus.core.toolkit.Constants; |
|||
import org.apache.ibatis.annotations.Mapper; |
|||
import org.apache.ibatis.annotations.Param; |
|||
import org.apache.ibatis.annotations.Select; |
|||
import com.yxt.anrui.oa.api.oahiredetails.OaHireDetails; |
|||
import com.yxt.anrui.oa.api.oahiredetails.OaHireDetailsVo; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* Project: yxt-oa(招聘需求) <br/> |
|||
* File: OaHireDetailsMapper.java <br/> |
|||
* Class: com.yxt.anrui.oa.biz.oahiredetails.OaHireDetailsMapper <br/> |
|||
* Description: 招聘需求明细. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2024-12-05 11:51:52 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Mapper |
|||
public interface OaHireDetailsMapper extends BaseMapper<OaHireDetails> { |
|||
|
|||
//@Update("update oa_hire_details set name=#{msg} where id=#{id}")
|
|||
//IPage<OaHireDetailsVo> voPage(IPage<OaHireDetails> page, @Param(Constants.WRAPPER) QueryWrapper<OaHireDetails> qw);
|
|||
|
|||
IPage<OaHireDetailsVo> selectPageVo(IPage<OaHireDetails> page, @Param(Constants.WRAPPER) Wrapper<OaHireDetails> qw); |
|||
|
|||
List<OaHireDetailsVo> selectListAllVo(@Param(Constants.WRAPPER) Wrapper<OaHireDetails> qw); |
|||
|
|||
@Select("select * from oa_hire_details") |
|||
List<OaHireDetailsVo> selectListVo(); |
|||
} |
@ -0,0 +1,13 @@ |
|||
<?xml version="1.0" encoding="UTF-8" ?> |
|||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
<mapper namespace="com.yxt.anrui.oa.biz.oahiredetails.OaHireDetailsMapper"> |
|||
<!-- <where> ${ew.sqlSegment} </where>--> |
|||
<!-- ${ew.customSqlSegment} --> |
|||
<select id="selectPageVo" resultType="com.yxt.anrui.oa.api.oahiredetails.OaHireDetailsVo"> |
|||
SELECT * FROM oa_hire_details <where> ${ew.sqlSegment} </where> |
|||
</select> |
|||
|
|||
<select id="selectListAllVo" resultType="com.yxt.anrui.oa.api.oahiredetails.OaHireDetailsVo"> |
|||
SELECT * FROM oa_hire_details <where> ${ew.sqlSegment} </where> |
|||
</select> |
|||
</mapper> |
@ -0,0 +1,73 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.oa.biz.oahiredetails; |
|||
|
|||
|
|||
import com.yxt.common.core.query.Query; |
|||
|
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* Project: yxt-oa(招聘需求) <br/> |
|||
* File: OaHireDetailsQuery.java <br/> |
|||
* Class: com.yxt.anrui.oa.api.oahiredetails.OaHireDetailsQuery <br/> |
|||
* Description: 招聘需求明细 查询条件. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2024-12-05 11:51:52 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Data |
|||
@ApiModel(value = "招聘需求明细 查询条件", description = "招聘需求明细 查询条件") |
|||
public class OaHireDetailsQuery implements Query { |
|||
|
|||
@ApiModelProperty("招聘部门") |
|||
private String hireDeptName; // 招聘部门
|
|||
@ApiModelProperty("招聘岗位") |
|||
private String hirePostName; // 招聘岗位
|
|||
@ApiModelProperty("招聘人数") |
|||
private String hirePeoNum; // 招聘人数
|
|||
@ApiModelProperty("学历要求key") |
|||
private String stuexTypeKey; // 学历要求key
|
|||
@ApiModelProperty("学历要求value") |
|||
private String stuexTypeValue; // 学历要求value
|
|||
@ApiModelProperty("薪资待遇") |
|||
private String salary; // 薪资待遇
|
|||
@ApiModelProperty("职位福利") |
|||
private String benefit; // 职位福利
|
|||
@ApiModelProperty("职位描述") |
|||
private String positionRemarks; // 职位描述
|
|||
@ApiModelProperty("任职要求") |
|||
private String requireRemarks; // 任职要求
|
|||
@ApiModelProperty("工作地址") |
|||
private String workAddress; // 工作地址
|
|||
|
|||
} |
@ -0,0 +1,110 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.oa.biz.oahiredetails; |
|||
|
|||
import cn.hutool.core.bean.BeanUtil; |
|||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|||
import com.baomidou.mybatisplus.core.metadata.IPage; |
|||
import org.apache.commons.lang3.StringUtils; |
|||
import com.yxt.common.base.service.MybatisBaseService; |
|||
import com.yxt.common.base.utils.PagerUtil; |
|||
import com.yxt.common.core.query.PagerQuery; |
|||
import com.yxt.common.core.result.ResultBean; |
|||
import com.yxt.common.core.vo.PagerVo; |
|||
import com.yxt.anrui.oa.api.oahiredetails.OaHireDetails; |
|||
import com.yxt.anrui.oa.api.oahiredetails.OaHireDetailsQuery; |
|||
import com.yxt.anrui.oa.api.oahiredetails.OaHireDetailsVo; |
|||
import com.yxt.anrui.oa.api.oahiredetails.OaHireDetailsDetailsVo; |
|||
import com.yxt.anrui.oa.api.oahiredetails.OaHireDetailsDto; |
|||
import com.yxt.anrui.oa.api.oahiredetails.OaHireDetailsFeign; |
|||
|
|||
import org.springframework.stereotype.Service; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* Project: yxt-oa(招聘需求) <br/> |
|||
* File: OaHireDetailsService.java <br/> |
|||
* Class: com.yxt.anrui.oa.biz.oahiredetails.OaHireDetailsService <br/> |
|||
* Description: 招聘需求明细 业务逻辑. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2024-12-05 11:51:52 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Service |
|||
public class OaHireDetailsService extends MybatisBaseService<OaHireDetailsMapper, OaHireDetails> { |
|||
private QueryWrapper<OaHireDetails> createQueryWrapper(OaHireDetailsQuery query) { |
|||
// todo: 这里根据具体业务调整查询条件
|
|||
// 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName()));
|
|||
QueryWrapper<OaHireDetails> qw = new QueryWrapper<>(); |
|||
return qw; |
|||
} |
|||
|
|||
public PagerVo<OaHireDetailsVo> listPageVo(PagerQuery<OaHireDetailsQuery> pq) { |
|||
OaHireDetailsQuery query = pq.getParams(); |
|||
QueryWrapper<OaHireDetails> qw = createQueryWrapper(query); |
|||
IPage<OaHireDetails> page = PagerUtil.queryToPage(pq); |
|||
IPage<OaHireDetailsVo> pagging = baseMapper.selectPageVo(page, qw); |
|||
PagerVo<OaHireDetailsVo> p = PagerUtil.pageToVo(pagging, null); |
|||
return p; |
|||
} |
|||
|
|||
public void saveOrUpdateDto(OaHireDetailsDto dto){ |
|||
String dtoSid = dto.getSid(); |
|||
if (StringUtils.isBlank(dtoSid)) { |
|||
this.insertByDto(dto); |
|||
return; |
|||
} |
|||
this.updateByDto(dto); |
|||
} |
|||
|
|||
public void insertByDto(OaHireDetailsDto dto){ |
|||
OaHireDetails entity = new OaHireDetails(); |
|||
BeanUtil.copyProperties(dto, entity, "id", "sid"); |
|||
baseMapper.insert(entity); |
|||
} |
|||
|
|||
public void updateByDto(OaHireDetailsDto dto){ |
|||
String dtoSid = dto.getSid(); |
|||
if (StringUtils.isBlank(dtoSid)) { |
|||
return; |
|||
} |
|||
OaHireDetails entity = fetchBySid(dtoSid); |
|||
BeanUtil.copyProperties(dto, entity, "id", "sid"); |
|||
baseMapper.updateById(entity); |
|||
} |
|||
|
|||
public OaHireDetailsDetailsVo fetchDetailsVoBySid(String sid){ |
|||
OaHireDetails entity = fetchBySid(sid); |
|||
OaHireDetailsDetailsVo vo = new OaHireDetailsDetailsVo(); |
|||
BeanUtil.copyProperties(entity, vo); |
|||
return vo; |
|||
} |
|||
} |
@ -0,0 +1,75 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.oa.biz.oahiredetails; |
|||
|
|||
|
|||
import com.yxt.common.core.vo.Vo; |
|||
|
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* Project: yxt-oa(招聘需求) <br/> |
|||
* File: OaHireDetailsVo.java <br/> |
|||
* Class: com.yxt.anrui.oa.api.oahiredetails.OaHireDetailsVo <br/> |
|||
* Description: 招聘需求明细 视图数据对象. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2024-12-05 11:51:52 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Data |
|||
@ApiModel(value = "招聘需求明细 视图数据对象", description = "招聘需求明细 视图数据对象") |
|||
public class OaHireDetailsVo implements Vo { |
|||
|
|||
private String sid; // sid
|
|||
|
|||
@ApiModelProperty("招聘部门") |
|||
private String hireDeptName; // 招聘部门
|
|||
@ApiModelProperty("招聘岗位") |
|||
private String hirePostName; // 招聘岗位
|
|||
@ApiModelProperty("招聘人数") |
|||
private String hirePeoNum; // 招聘人数
|
|||
@ApiModelProperty("学历要求key") |
|||
private String stuexTypeKey; // 学历要求key
|
|||
@ApiModelProperty("学历要求value") |
|||
private String stuexTypeValue; // 学历要求value
|
|||
@ApiModelProperty("薪资待遇") |
|||
private String salary; // 薪资待遇
|
|||
@ApiModelProperty("职位福利") |
|||
private String benefit; // 职位福利
|
|||
@ApiModelProperty("职位描述") |
|||
private String positionRemarks; // 职位描述
|
|||
@ApiModelProperty("任职要求") |
|||
private String requireRemarks; // 任职要求
|
|||
@ApiModelProperty("工作地址") |
|||
private String workAddress; // 工作地址
|
|||
|
|||
} |
@ -0,0 +1,83 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.oa.biz.oamendapply; |
|||
|
|||
import com.baomidou.mybatisplus.annotation.TableName; |
|||
import com.yxt.common.core.domain.BaseEntity; |
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import java.util.Date; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* Project: yxt-oa(补卡申请) <br/> |
|||
* File: OaMendApply.java <br/> |
|||
* Class: com.yxt.anrui.oa.api.oamendapply.OaMendApply <br/> |
|||
* Description: 补卡申请. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2024-12-04 14:14:34 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Data |
|||
@ApiModel(value = "补卡申请", description = "补卡申请") |
|||
@TableName("oa_mend_apply") |
|||
public class OaMendApply extends BaseEntity { |
|||
private static final long serialVersionUID = 1L; |
|||
|
|||
@ApiModelProperty("单据编号") |
|||
private String billNo; // 单据编号
|
|||
@ApiModelProperty("申请人") |
|||
private String createByName; // 申请人
|
|||
@ApiModelProperty("申请部门sid") |
|||
private String deptSid; // 申请部门sid
|
|||
@ApiModelProperty("申请部门名称") |
|||
private String deptName; // 申请部门名称
|
|||
@ApiModelProperty("补卡时间") |
|||
private String time; // 补卡时间
|
|||
@ApiModelProperty("分公司sid") |
|||
private String useOrgSid; // 分公司sid
|
|||
@ApiModelProperty("分公司名称") |
|||
private String useOrgName; // 分公司名称
|
|||
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8") |
|||
@ApiModelProperty("办结日期") |
|||
private Date finishTime; // 办结日期
|
|||
@ApiModelProperty("实例id") |
|||
private String procInstId; // 实例id
|
|||
@ApiModelProperty("流程定义id") |
|||
private String procDefId; // 流程定义id
|
|||
@ApiModelProperty("任务id") |
|||
private String taskId; // 任务id
|
|||
@ApiModelProperty("环节id") |
|||
private String nodeId; // 环节id
|
|||
@ApiModelProperty("流程状态") |
|||
private String nodeState; // 流程状态
|
|||
|
|||
} |
@ -0,0 +1,93 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.oa.biz.oamendapply; |
|||
|
|||
|
|||
import com.yxt.common.core.vo.Vo; |
|||
|
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
|
|||
import java.util.ArrayList; |
|||
import java.util.Date; |
|||
import java.util.List; |
|||
|
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* Project: yxt-oa(补卡申请) <br/> |
|||
* File: OaMendApplyVo.java <br/> |
|||
* Class: com.yxt.anrui.oa.api.oamendapply.OaMendApplyVo <br/> |
|||
* Description: 补卡申请 视图数据对象. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2024-12-04 14:14:34 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Data |
|||
@ApiModel(value = "补卡申请 视图数据详情", description = "补卡申请 视图数据详情") |
|||
public class OaMendApplyDetailsVo implements Vo { |
|||
|
|||
private String sid; // sid
|
|||
|
|||
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") |
|||
private Date createTime; |
|||
@ApiModelProperty("补卡原因") |
|||
private String remarks; |
|||
@ApiModelProperty("单据编号") |
|||
private String billNo; // 单据编号
|
|||
@ApiModelProperty("申请人") |
|||
private String createByName; // 申请人
|
|||
@ApiModelProperty("申请部门sid") |
|||
private String deptSid; // 申请部门sid
|
|||
@ApiModelProperty("申请部门名称") |
|||
private String deptName; // 申请部门名称
|
|||
@ApiModelProperty("补卡时间") |
|||
private String time; // 补卡时间
|
|||
@ApiModelProperty("分公司sid") |
|||
private String useOrgSid; // 分公司sid
|
|||
@ApiModelProperty("分公司名称") |
|||
private String useOrgName; // 分公司名称
|
|||
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8") |
|||
@ApiModelProperty("办结日期") |
|||
private Date finishTime; |
|||
@ApiModelProperty("实例id") |
|||
private String procInstId; // 实例id
|
|||
@ApiModelProperty("流程定义id") |
|||
private String procDefId; // 流程定义id
|
|||
@ApiModelProperty("任务id") |
|||
private String taskId; // 任务id
|
|||
@ApiModelProperty("环节id") |
|||
private String nodeId; // 环节id
|
|||
@ApiModelProperty("流程状态") |
|||
private String nodeState; // 流程状态
|
|||
@ApiModelProperty("图片") |
|||
private List<String> files = new ArrayList<>(); |
|||
} |
@ -0,0 +1,93 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.oa.biz.oamendapply; |
|||
|
|||
|
|||
import com.yxt.common.core.dto.Dto; |
|||
|
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
|
|||
import java.util.ArrayList; |
|||
import java.util.Date; |
|||
import java.util.List; |
|||
|
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* Project: yxt-oa(补卡申请) <br/> |
|||
* File: OaMendApplyDto.java <br/> |
|||
* Class: com.yxt.anrui.oa.api.oamendapply.OaMendApplyDto <br/> |
|||
* Description: 补卡申请 数据传输对象. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2024-12-04 14:14:34 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Data |
|||
@ApiModel(value = "补卡申请 数据传输对象", description = "补卡申请 数据传输对象") |
|||
public class OaMendApplyDto implements Dto { |
|||
|
|||
private String sid; // sid
|
|||
private String userSid; |
|||
private String orgPath; |
|||
|
|||
@ApiModelProperty("补卡原因") |
|||
private String remarks; |
|||
@ApiModelProperty("单据编号") |
|||
private String billNo; // 单据编号
|
|||
@ApiModelProperty("申请人") |
|||
private String createByName; // 申请人
|
|||
@ApiModelProperty("申请部门sid") |
|||
private String deptSid; // 申请部门sid
|
|||
@ApiModelProperty("申请部门名称") |
|||
private String deptName; // 申请部门名称
|
|||
@ApiModelProperty("补卡时间") |
|||
private String time; // 补卡时间
|
|||
@ApiModelProperty("分公司sid") |
|||
private String useOrgSid; // 分公司sid
|
|||
@ApiModelProperty("分公司名称") |
|||
private String useOrgName; // 分公司名称
|
|||
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8") |
|||
@ApiModelProperty("办结日期") |
|||
private Date finishTime; |
|||
@ApiModelProperty("实例id") |
|||
private String procInstId; // 实例id
|
|||
@ApiModelProperty("流程定义id") |
|||
private String procDefId; // 流程定义id
|
|||
@ApiModelProperty("任务id") |
|||
private String taskId; // 任务id
|
|||
@ApiModelProperty("环节id") |
|||
private String nodeId; // 环节id
|
|||
@ApiModelProperty("流程状态") |
|||
private String nodeState; // 流程状态
|
|||
@ApiModelProperty("图片") |
|||
private List<String> files = new ArrayList<>(); |
|||
} |
@ -0,0 +1,86 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.oa.biz.oamendapply; |
|||
|
|||
|
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import com.yxt.common.core.vo.Vo; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import java.util.Date; |
|||
|
|||
/** |
|||
* Project: yxt-oa(补卡申请) <br/> |
|||
* File: OaMendApplyVo.java <br/> |
|||
* Class: com.yxt.anrui.oa.api.oamendapply.OaMendApplyVo <br/> |
|||
* Description: 补卡申请 视图数据对象. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2024-12-04 14:14:34 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Data |
|||
@ApiModel(value = "补卡申请 视图数据对象", description = "补卡申请 视图数据对象") |
|||
public class OaMendApplyInitVo implements Vo { |
|||
|
|||
private String sid; // sid
|
|||
private String userSid; |
|||
private String orgPath; |
|||
|
|||
@ApiModelProperty("单据编号") |
|||
private String billNo; // 单据编号
|
|||
@ApiModelProperty("申请人") |
|||
private String createByName; // 申请人
|
|||
@ApiModelProperty("申请部门sid") |
|||
private String deptSid; // 申请部门sid
|
|||
@ApiModelProperty("申请部门名称") |
|||
private String deptName; // 申请部门名称
|
|||
@ApiModelProperty("补卡时间") |
|||
private String time; // 补卡时间
|
|||
@ApiModelProperty("分公司sid") |
|||
private String useOrgSid; // 分公司sid
|
|||
@ApiModelProperty("分公司名称") |
|||
private String useOrgName; // 分公司名称
|
|||
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8") |
|||
@ApiModelProperty("办结日期") |
|||
private Date finishTime; |
|||
@ApiModelProperty("实例id") |
|||
private String procInstId; // 实例id
|
|||
@ApiModelProperty("流程定义id") |
|||
private String procDefId; // 流程定义id
|
|||
@ApiModelProperty("任务id") |
|||
private String taskId; // 任务id
|
|||
@ApiModelProperty("环节id") |
|||
private String nodeId; // 环节id
|
|||
@ApiModelProperty("流程状态") |
|||
private String nodeState; // 流程状态
|
|||
|
|||
} |
@ -0,0 +1,59 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.oa.biz.oamendapply; |
|||
|
|||
import com.baomidou.mybatisplus.core.conditions.Wrapper; |
|||
import com.baomidou.mybatisplus.core.metadata.IPage; |
|||
import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
|||
import com.baomidou.mybatisplus.core.toolkit.Constants; |
|||
import org.apache.ibatis.annotations.Mapper; |
|||
import org.apache.ibatis.annotations.Param; |
|||
import java.util.Map; |
|||
|
|||
/** |
|||
* Project: yxt-oa(补卡申请) <br/> |
|||
* File: OaMendApplyMapper.java <br/> |
|||
* Class: com.yxt.anrui.oa.biz.oamendapply.OaMendApplyMapper <br/> |
|||
* Description: 补卡申请. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2024-12-04 14:14:34 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Mapper |
|||
public interface OaMendApplyMapper extends BaseMapper<OaMendApply> { |
|||
|
|||
IPage<OaMendApplyVo> selectPageVo(IPage<OaMendApply> page, @Param(Constants.WRAPPER) Wrapper<OaMendApply> qw); |
|||
|
|||
int updateFlowFiled(Map<String, Object> map); |
|||
|
|||
int selectBySid(String join); |
|||
|
|||
String selectNum(String billNo); |
|||
} |
@ -0,0 +1,42 @@ |
|||
<?xml version="1.0" encoding="UTF-8" ?> |
|||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
<mapper namespace="com.yxt.anrui.oa.biz.oamendapply.OaMendApplyMapper"> |
|||
<!-- <where> ${ew.sqlSegment} </where>--> |
|||
<!-- ${ew.customSqlSegment} --> |
|||
<select id="selectPageVo" resultType="com.yxt.anrui.oa.biz.oamendapply.OaMendApplyVo"> |
|||
SELECT * FROM oa_mend_apply <where> ${ew.sqlSegment} </where> |
|||
</select> |
|||
|
|||
<update id="updateFlowFiled"> |
|||
UPDATE oa_mend_apply |
|||
SET nodeState=#{nodeState}, nodeId=#{taskDefKey} |
|||
<if test="nodeState == '已办结' or nodeState == '终止'"> |
|||
, finishTime = NOW() |
|||
</if> |
|||
<if test="procDefId != null and procDefId != ''"> |
|||
, procDefId=#{procDefId} |
|||
</if> |
|||
<if test="procInsId != null and procInsId != ''"> |
|||
, procInstId=#{procInsId} |
|||
</if> |
|||
<if test="taskId != null and taskId != ''"> |
|||
, taskId=#{taskId} |
|||
</if> |
|||
WHERE sid=#{sid} |
|||
</update> |
|||
|
|||
<select id="selectBySid" resultType="int"> |
|||
SELECT COUNT(*) |
|||
FROM oa_mend_apply |
|||
WHERE nodeState != '待提交' |
|||
and find_in_set(sid, #{list}) |
|||
</select> |
|||
|
|||
<select id="selectNum" resultType="java.lang.String"> |
|||
select RIGHT (billNo, 4) |
|||
from oa_mend_apply |
|||
where billNo LIKE concat(#{billNo}, '%') |
|||
order by billNo desc |
|||
limit 1 |
|||
</select> |
|||
</mapper> |
@ -0,0 +1,83 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.oa.biz.oamendapply; |
|||
|
|||
|
|||
import com.yxt.common.core.query.Query; |
|||
|
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import java.util.Date; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* Project: yxt-oa(补卡申请) <br/> |
|||
* File: OaMendApplyQuery.java <br/> |
|||
* Class: com.yxt.anrui.oa.api.oamendapply.OaMendApplyQuery <br/> |
|||
* Description: 补卡申请 查询条件. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2024-12-04 14:14:34 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Data |
|||
@ApiModel(value = "补卡申请 查询条件", description = "补卡申请 查询条件") |
|||
public class OaMendApplyQuery implements Query { |
|||
|
|||
@ApiModelProperty("单据编号") |
|||
private String billNo; // 单据编号
|
|||
@ApiModelProperty("申请人") |
|||
private String createByName; // 申请人
|
|||
@ApiModelProperty("申请部门sid") |
|||
private String deptSid; // 申请部门sid
|
|||
@ApiModelProperty("申请部门名称") |
|||
private String deptName; // 申请部门名称
|
|||
@ApiModelProperty("补卡时间") |
|||
private String time; // 补卡时间
|
|||
@ApiModelProperty("分公司sid") |
|||
private String useOrgSid; // 分公司sid
|
|||
@ApiModelProperty("分公司名称") |
|||
private String useOrgName; // 分公司名称
|
|||
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8") |
|||
@ApiModelProperty("办结日期") |
|||
private Date finishTimeStart; // 办结日期
|
|||
private Date finishTimeEnd; // 办结日期
|
|||
@ApiModelProperty("实例id") |
|||
private String procInstId; // 实例id
|
|||
@ApiModelProperty("流程定义id") |
|||
private String procDefId; // 流程定义id
|
|||
@ApiModelProperty("任务id") |
|||
private String taskId; // 任务id
|
|||
@ApiModelProperty("环节id") |
|||
private String nodeId; // 环节id
|
|||
@ApiModelProperty("流程状态") |
|||
private String nodeState; // 流程状态
|
|||
|
|||
} |
@ -0,0 +1,571 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.oa.biz.oamendapply; |
|||
|
|||
import cn.hutool.core.bean.BeanUtil; |
|||
import cn.hutool.core.date.DateUtil; |
|||
import com.alibaba.fastjson.JSON; |
|||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|||
import com.baomidou.mybatisplus.core.metadata.IPage; |
|||
import com.google.common.util.concurrent.ThreadFactoryBuilder; |
|||
import com.yxt.anrui.oa.biz.oaappendix.OaAppendix; |
|||
import com.yxt.anrui.oa.biz.oaappendix.OaAppendixService; |
|||
import com.yxt.anrui.oa.biz.oamendapply.flowable.*; |
|||
import com.yxt.anrui.oa.feign.base.Rule; |
|||
import com.yxt.anrui.oa.feign.file.OaFileEnum; |
|||
import com.yxt.anrui.oa.feign.flowable.flow.BusinessVariables; |
|||
import com.yxt.anrui.oa.feign.flowable.flow.FlowableFeign; |
|||
import com.yxt.anrui.oa.feign.flowable.flow.ProcDefEnum; |
|||
import com.yxt.anrui.oa.feign.flowable.flow.UpdateFlowFieldVo; |
|||
import com.yxt.anrui.oa.feign.flowable.flow2.FlowDelegateQuery; |
|||
import com.yxt.anrui.oa.feign.flowable.flow2.FlowFeign; |
|||
import com.yxt.anrui.oa.feign.flowable.flowtask.FlowTaskFeign; |
|||
import com.yxt.anrui.oa.feign.flowable.flowtask.FlowTaskVo; |
|||
import com.yxt.anrui.oa.feign.flowable.flowtask.LatestTaskVo; |
|||
import com.yxt.anrui.oa.feign.message.MessageFeign; |
|||
import com.yxt.anrui.oa.feign.message.MessageFlowVo; |
|||
import com.yxt.anrui.oa.feign.message.MessageFlowableQuery; |
|||
import com.yxt.anrui.oa.feign.portal.sysorganization.SysOrganizationFeign; |
|||
import com.yxt.anrui.oa.feign.portal.sysorganization.SysOrganizationVo; |
|||
import com.yxt.anrui.oa.feign.portal.sysstafforg.SysStaffOrgFeign; |
|||
import com.yxt.anrui.oa.feign.sysuser.SysUserFeign; |
|||
import com.yxt.anrui.oa.feign.sysuser.SysUserVo; |
|||
import com.yxt.common.base.config.component.FileUploadComponent; |
|||
import org.apache.commons.lang3.StringUtils; |
|||
import com.yxt.common.base.service.MybatisBaseService; |
|||
import com.yxt.common.base.utils.PagerUtil; |
|||
import com.yxt.common.core.query.PagerQuery; |
|||
import com.yxt.common.core.result.ResultBean; |
|||
import com.yxt.common.core.vo.PagerVo; |
|||
|
|||
import org.apache.tomcat.util.threads.ThreadPoolExecutor; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.stereotype.Service; |
|||
|
|||
import java.util.*; |
|||
import java.util.concurrent.*; |
|||
import java.util.stream.Collectors; |
|||
|
|||
@Service |
|||
public class OaMendApplyService extends MybatisBaseService<OaMendApplyMapper, OaMendApply> { |
|||
|
|||
@Autowired |
|||
private SysOrganizationFeign sysOrganizationFeign; |
|||
@Autowired |
|||
private SysStaffOrgFeign sysStaffOrgFeign; |
|||
@Autowired |
|||
private FlowableFeign flowableFeign; |
|||
@Autowired |
|||
private FlowTaskFeign flowTaskFeign; |
|||
@Autowired |
|||
private FlowFeign flowFeign; |
|||
@Autowired |
|||
private MessageFeign messageFeign; |
|||
@Autowired |
|||
private SysUserFeign sysUserFeign; |
|||
@Autowired |
|||
private FileUploadComponent fileUploadComponent; |
|||
@Autowired |
|||
private OaAppendixService oaAppendixService; |
|||
|
|||
public PagerVo<OaMendApplyVo> listPageVo(PagerQuery<OaMendApplyQuery> pq) { |
|||
OaMendApplyQuery query = pq.getParams(); |
|||
QueryWrapper<OaMendApply> qw = new QueryWrapper<>(); |
|||
IPage<OaMendApply> page = PagerUtil.queryToPage(pq); |
|||
IPage<OaMendApplyVo> pagging = baseMapper.selectPageVo(page, qw); |
|||
PagerVo<OaMendApplyVo> p = PagerUtil.pageToVo(pagging, null); |
|||
return p; |
|||
} |
|||
|
|||
public String saveOrUpdateDto(OaMendApplyDto dto){ |
|||
String dtoSid = dto.getSid(); |
|||
List<String> files = dto.getFiles(); |
|||
String useOrgSid = sysStaffOrgFeign.getOrgSidByPath(dto.getOrgPath()).getData(); |
|||
SysOrganizationVo organizationVo = sysOrganizationFeign.fetchBySid(useOrgSid).getData(); |
|||
dto.setUseOrgSid(useOrgSid); |
|||
dto.setUseOrgName(organizationVo.getName()); |
|||
String deptName = ""; |
|||
String deptSid = ""; |
|||
List<String> split = Arrays.asList(dto.getOrgPath().split("/")); |
|||
if (split.size() > 1) { |
|||
//获取本级sid获取本级部门信息
|
|||
SysOrganizationVo sysOrganization = sysOrganizationFeign.fetchBySid(split.get(split.size() - 2)).getData(); |
|||
SysOrganizationVo sysOrganization1 = sysOrganizationFeign.fetchBySid(split.get(split.size() - 1)).getData(); |
|||
deptName = sysOrganization.getName() + "/" + sysOrganization1.getName(); |
|||
deptName = sysOrganization1.getName(); |
|||
deptSid = sysOrganization1.getSid(); |
|||
} else { |
|||
SysOrganizationVo sysOrganization = sysOrganizationFeign.fetchBySid(split.get(0)).getData(); |
|||
deptName = sysOrganization.getName(); |
|||
deptName = sysOrganization.getName(); |
|||
deptSid = sysOrganization.getSid(); |
|||
} |
|||
dto.setDeptSid(deptSid); |
|||
dto.setDeptName(deptName); |
|||
if (StringUtils.isBlank(dtoSid)) { |
|||
//生成单据编号
|
|||
String billNo = ""; |
|||
String date = DateUtil.format(DateUtil.date(), "yyyyMM"); |
|||
billNo = "QJSQ" + organizationVo.getOrgCode() + date; |
|||
String i = baseMapper.selectNum(billNo); |
|||
if (StringUtils.isNotBlank(i)) { |
|||
billNo = Rule.getBillNo(billNo, Integer.valueOf(i).intValue()); |
|||
} else { |
|||
billNo = Rule.getBillNo(billNo, 0); |
|||
} |
|||
dto.setBillNo(billNo); |
|||
String sid = this.insertByDto(dto); |
|||
for (String file : files) { |
|||
String filePath = file.replace(fileUploadComponent.getUrlPrefix(), ""); |
|||
OaAppendix oaAppendix = new OaAppendix(); |
|||
oaAppendix.setLinkSid(sid); |
|||
oaAppendix.setAttachType(OaFileEnum.OAMENDAPPLY.getAttachType()); |
|||
oaAppendix.setFilePath(filePath); |
|||
oaAppendixService.save(oaAppendix); |
|||
} |
|||
return sid; |
|||
} |
|||
this.updateByDto(dto); |
|||
return dtoSid; |
|||
} |
|||
|
|||
public String insertByDto(OaMendApplyDto dto){ |
|||
OaMendApply entity = new OaMendApply(); |
|||
BeanUtil.copyProperties(dto, entity, "id", "sid"); |
|||
entity.setNodeState("待提交"); |
|||
entity.setCreateBySid(dto.getUserSid()); |
|||
SysUserVo sysUserVo = sysUserFeign.fetchBySid(dto.getUserSid()).getData(); |
|||
entity.setCreateByName(sysUserVo.getName()); |
|||
baseMapper.insert(entity); |
|||
return entity.getSid(); |
|||
} |
|||
|
|||
public void updateByDto(OaMendApplyDto dto){ |
|||
String dtoSid = dto.getSid(); |
|||
if (StringUtils.isBlank(dtoSid)) { |
|||
return; |
|||
} |
|||
OaMendApply entity = fetchBySid(dtoSid); |
|||
BeanUtil.copyProperties(dto, entity, "id", "sid"); |
|||
baseMapper.updateById(entity); |
|||
} |
|||
|
|||
public OaMendApplyDetailsVo fetchDetailsVoBySid(String sid){ |
|||
OaMendApply entity = fetchBySid(sid); |
|||
OaMendApplyDetailsVo vo = new OaMendApplyDetailsVo(); |
|||
BeanUtil.copyProperties(entity, vo); |
|||
List<OaAppendix> oaAppendices = oaAppendixService.fetchByLinkSid(sid); |
|||
List<String> files = new ArrayList<>(); |
|||
for (OaAppendix oaAppendix : oaAppendices) { |
|||
String url = fileUploadComponent.getUrlPrefix() + oaAppendix.getFilePath(); |
|||
files.add(url); |
|||
} |
|||
vo.setFiles(files); |
|||
return vo; |
|||
} |
|||
|
|||
public ResultBean submit(SubmitOaMendApplyDto dto) { |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
OaMendApply oaMendApply = fetchBySid(dto.getSid()); |
|||
int r = submitBusinessData(dto, oaMendApply); |
|||
if (r == 3) { |
|||
return rb.setMsg("该申请不存在"); |
|||
} |
|||
if (r == 0) { |
|||
return rb.setMsg("操作失败!提交的数据不一致"); |
|||
} |
|||
//新增修改保存
|
|||
String businessSid = saveOrUpdateDto(dto); |
|||
oaMendApply = fetchBySid(businessSid); |
|||
//创建BusinessVariables实体对象
|
|||
BusinessVariables bv = new BusinessVariables(); |
|||
//流程中的参数赋值、若有网关,则赋值网关中判断的字段。
|
|||
Map<String, Object> variables = new HashMap<>(); |
|||
//用户的部门全路径sid
|
|||
SysOrganizationVo deptVo = sysOrganizationFeign.fetchBySid(oaMendApply.getDeptSid()).getData(); |
|||
bv.setOrgSidPath(deptVo.getOrgSidPath()); |
|||
//业务sid
|
|||
bv.setBusinessSid(businessSid); |
|||
//用户sid
|
|||
bv.setUserSid(oaMendApply.getCreateBySid()); |
|||
//若app移动端有此功能,则传递appMap参数
|
|||
Map<String, Object> appMap = new HashMap<>(); |
|||
appMap.put("sid", businessSid); |
|||
//需和移动端沟通业务sid保存的属性具体值:appMap中sid不是固定的。移动端提供具体字段。
|
|||
variables.put("app", appMap); |
|||
//网关
|
|||
|
|||
//流程定义id
|
|||
bv.setModelId(ProcDefEnum.OAMENDAPPLY.getProDefId()); |
|||
SysOrganizationVo organizationVo = sysOrganizationFeign.fetchBySid(oaMendApply.getDeptSid()).getData(); |
|||
bv.setNextNodeUserSids(organizationVo.getManagerSid()); |
|||
bv.setFormVariables(variables); |
|||
if (r == 1) { |
|||
ResultBean<UpdateFlowFieldVo> voResultBean = flowFeign.startProcess(bv); |
|||
UpdateFlowFieldVo ufVo = voResultBean.getData(); |
|||
updateFlowFiled(BeanUtil.beanToMap(ufVo)); |
|||
//极光推送
|
|||
oaMendApply = fetchBySid(businessSid); |
|||
//==================================添加线程
|
|||
try { |
|||
ThreadFactory namedThreadFactory = new ThreadFactoryBuilder() |
|||
.setNameFormat("demo-pool-%d").build(); |
|||
ExecutorService pool = new ThreadPoolExecutor(2, 100, |
|||
0L, TimeUnit.MILLISECONDS, |
|||
new LinkedBlockingQueue<Runnable>(1024), namedThreadFactory, new ThreadPoolExecutor.AbortPolicy()); |
|||
OaMendApply mendApply = oaMendApply; |
|||
Future future1 = pool.submit(() -> { |
|||
//极光推送
|
|||
MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery(); |
|||
MessageFlowVo messageFlowVo = new MessageFlowVo(); |
|||
BeanUtil.copyProperties(ufVo, messageFlowVo); |
|||
messageFlowableQuery.setUfVo(messageFlowVo); |
|||
messageFlowableQuery.setAppMap(appMap); |
|||
messageFlowableQuery.setBusinessSid(businessSid); |
|||
messageFlowableQuery.setModuleName("补卡申请"); |
|||
messageFlowableQuery.setMsgContent(mendApply.getCreateByName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批"); |
|||
messageFlowableQuery.setMsgTitle("补卡申请"); |
|||
messageFeign.pushMessage(messageFlowableQuery); |
|||
}); |
|||
} catch (Exception e) { |
|||
e.printStackTrace(); |
|||
} |
|||
//==================================添加线程
|
|||
return voResultBean; |
|||
} |
|||
if (r == 2) { |
|||
// ToDo:驳回到发起人后再次提交
|
|||
if (StringUtils.isBlank(dto.getInstanceId())) { |
|||
return rb.setMsg("参数错误:instanceId"); |
|||
} |
|||
bv.setTaskId(oaMendApply.getTaskId()); |
|||
bv.setTaskDefKey(oaMendApply.getNodeId()); |
|||
bv.setComment(StringUtils.isNotBlank(dto.getComment()) ? dto.getComment() : "重新提交"); |
|||
bv.setInstanceId(dto.getInstanceId()); |
|||
return complete(bv); |
|||
} |
|||
return rb; |
|||
} |
|||
|
|||
private synchronized int submitBusinessData(SubmitOaMendApplyDto dto, OaMendApply oaMendApply) { |
|||
int r = 0; |
|||
if (StringUtils.isBlank(dto.getSid())) { |
|||
r = 1; |
|||
} else { |
|||
if (oaMendApply != null) { |
|||
String businessTaskId = oaMendApply.getTaskId(); |
|||
if (StringUtils.isBlank(businessTaskId) && StringUtils.isBlank(dto.getTaskId())) { |
|||
//新提交
|
|||
r = 1; |
|||
} else if (StringUtils.isNotBlank(businessTaskId) && businessTaskId.equals(dto.getTaskId())) { |
|||
//二次提交//只有数据一致的时候才能进行下一步
|
|||
r = 2; |
|||
} |
|||
} else { |
|||
r = 3; |
|||
} |
|||
|
|||
} |
|||
return r; |
|||
} |
|||
|
|||
private int updateFlowFiled(Map<String, Object> map) { |
|||
return baseMapper.updateFlowFiled(map); |
|||
} |
|||
|
|||
public ResultBean complete(BusinessVariables bv) { |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
String businessSid = bv.getBusinessSid(); |
|||
OaMendApply oaMendApply = fetchBySid(businessSid); |
|||
Map<String, Object> variables = new HashMap<>(); |
|||
//网关
|
|||
|
|||
Map<String, Object> appMap = new HashMap<>(); |
|||
appMap.put("sid", businessSid); |
|||
variables.put("app", appMap); |
|||
//=======================================
|
|||
bv.setFormVariables(variables); |
|||
SysOrganizationVo deptVo = sysOrganizationFeign.fetchBySid(oaMendApply.getDeptSid()).getData(); |
|||
bv.setOrgSidPath(deptVo.getOrgSidPath()); |
|||
bv.setModelId(oaMendApply.getProcDefId()); |
|||
if (bv.getTaskId().equals(oaMendApply.getTaskId())) { |
|||
ResultBean<UpdateFlowFieldVo> resultBean = flowFeign.handleProsess(bv); |
|||
if (!resultBean.getSuccess()) { |
|||
return rb.setMsg(resultBean.getMsg()); |
|||
} |
|||
UpdateFlowFieldVo ufVo = resultBean.getData(); |
|||
updateFlowFiled(BeanUtil.beanToMap(resultBean.getData())); |
|||
if ("Event_end".equals(resultBean.getData().getTaskDefKey())) { |
|||
|
|||
} else { |
|||
//极光推送
|
|||
oaMendApply = fetchBySid(businessSid); |
|||
//==================================添加线程
|
|||
try { |
|||
ThreadFactory namedThreadFactory = new ThreadFactoryBuilder() |
|||
.setNameFormat("demo-pool-%d").build(); |
|||
ExecutorService pool = new ThreadPoolExecutor(2, 100, |
|||
0L, TimeUnit.MILLISECONDS, |
|||
new LinkedBlockingQueue<Runnable>(1024), namedThreadFactory, new ThreadPoolExecutor.AbortPolicy()); |
|||
OaMendApply mendApply = oaMendApply; |
|||
Future future1 = pool.submit(() -> { |
|||
//极光推送
|
|||
MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery(); |
|||
MessageFlowVo messageFlowVo = new MessageFlowVo(); |
|||
BeanUtil.copyProperties(ufVo, messageFlowVo); |
|||
ufVo.setProcDefId(mendApply.getProcDefId()); |
|||
ufVo.setProcInsId(mendApply.getProcInstId()); |
|||
messageFlowableQuery.setUfVo(messageFlowVo); |
|||
messageFlowableQuery.setAppMap(appMap); |
|||
messageFlowableQuery.setBusinessSid(businessSid); |
|||
messageFlowableQuery.setModuleName("补卡申请"); |
|||
messageFlowableQuery.setMsgContent(mendApply.getCreateByName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批"); |
|||
messageFlowableQuery.setMsgTitle("补卡申请"); |
|||
messageFeign.pushMessage(messageFlowableQuery); |
|||
}); |
|||
} catch (Exception e) { |
|||
e.printStackTrace(); |
|||
} |
|||
//==================================添加线程
|
|||
} |
|||
return rb.success().setData(resultBean.getData()); |
|||
} else { |
|||
return rb.setMsg("操作失败!提交的数据不一致"); |
|||
} |
|||
} |
|||
|
|||
public ResultBean<List<OaMendApplyNodeVo>> getPreviousNodesForReject(OaMendApplyNodeQuery query) { |
|||
ResultBean<List<OaMendApplyNodeVo>> rb = ResultBean.fireFail(); |
|||
BusinessVariables bv = new BusinessVariables(); |
|||
BeanUtil.copyProperties(query, bv); |
|||
//流程中的参数赋值、若有网关,则赋值网关中判断的字段。
|
|||
Map<String, Object> variables = new HashMap<>(); |
|||
//查询业务信息
|
|||
OaMendApply oaMendApply = fetchBySid(query.getBusinessSid()); |
|||
//网关
|
|||
|
|||
bv.setModelId(oaMendApply.getProcDefId()); |
|||
bv.setFormVariables(variables); |
|||
//=======================================
|
|||
ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getPreviousNodesForReject(bv); |
|||
//判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo
|
|||
List<OaMendApplyNodeVo> voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), OaMendApplyNodeVo.class)).collect(Collectors.toList()); |
|||
return rb.success().setData(voList); |
|||
} |
|||
|
|||
public ResultBean<List<OaMendApplyNodeVo>> getNextNodesForSubmit(OaMendApplyNodeQuery query) { |
|||
ResultBean<List<OaMendApplyNodeVo>> rb = ResultBean.fireFail(); |
|||
BusinessVariables bv = new BusinessVariables(); |
|||
BeanUtil.copyProperties(query, bv); |
|||
//流程中的参数赋值、若有网关,则赋值网关中判断的字段。
|
|||
Map<String, Object> variables = new HashMap<>(); |
|||
//查询业务信息
|
|||
OaMendApply oaMendApply = fetchBySid(query.getBusinessSid()); |
|||
//网关
|
|||
|
|||
bv.setModelId(oaMendApply.getProcDefId()); |
|||
bv.setFormVariables(variables); |
|||
//=======================================
|
|||
ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getNextNodesForSubmit(bv); |
|||
//判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo
|
|||
List<OaMendApplyNodeVo> voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), OaMendApplyNodeVo.class)).collect(Collectors.toList()); |
|||
return rb.success().setData(voList); |
|||
} |
|||
|
|||
public ResultBean reject(OaMendApplyTaskQuery query) { |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
String businessSid = query.getBusinessSid(); |
|||
OaMendApply oaMendApply = fetchBySid(businessSid); |
|||
if (oaMendApply == null) { |
|||
return rb.setMsg("该申请不存在"); |
|||
} |
|||
String businessTaskId = oaMendApply.getTaskId(); |
|||
if (StringUtils.isNotBlank(businessTaskId)) { |
|||
if (businessTaskId.equals(query.getTaskId())) { |
|||
if (StringUtils.isBlank(query.getComment())) { |
|||
return rb.setMsg("请填写意见"); |
|||
} |
|||
if (StringUtils.isBlank(query.getUserSid())) { |
|||
return rb.setMsg("参数错误:userSid"); |
|||
} |
|||
FlowTaskVo flowTaskVo = new FlowTaskVo(); |
|||
BeanUtil.copyProperties(query, flowTaskVo); |
|||
Map<String, Object> variables = new HashMap<>(); |
|||
Map<String, Object> appMap = new HashMap<>(); |
|||
appMap.put("sid", businessSid); |
|||
variables.put("app", appMap); |
|||
//网关
|
|||
|
|||
flowTaskVo.setValues(variables); |
|||
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.taskReject(flowTaskVo); |
|||
if (!resultBean.getSuccess()) { |
|||
return rb.setMsg(resultBean.getMsg()); |
|||
} |
|||
UpdateFlowFieldVo ufVo = resultBean.getData(); |
|||
Map<String, Object> map = BeanUtil.beanToMap(ufVo); |
|||
//更新业务中的流程相关的参数
|
|||
updateFlowFiled(map); |
|||
//极光推送
|
|||
oaMendApply = fetchBySid(businessSid); |
|||
//==================================添加线程
|
|||
try { |
|||
ThreadFactory namedThreadFactory = new ThreadFactoryBuilder() |
|||
.setNameFormat("demo-pool-%d").build(); |
|||
ExecutorService pool = new ThreadPoolExecutor(2, 100, |
|||
0L, TimeUnit.MILLISECONDS, |
|||
new LinkedBlockingQueue<Runnable>(1024), namedThreadFactory, new ThreadPoolExecutor.AbortPolicy()); |
|||
OaMendApply mendApply = oaMendApply; |
|||
Future future1 = pool.submit(() -> { |
|||
//极光推送
|
|||
MessageFlowableQuery messageFlowableQuery = new MessageFlowableQuery(); |
|||
MessageFlowVo messageFlowVo = new MessageFlowVo(); |
|||
BeanUtil.copyProperties(ufVo, messageFlowVo); |
|||
String procId = mendApply.getProcInstId(); |
|||
ufVo.setProcInsId(procId); |
|||
ufVo.setProcDefId(mendApply.getProcDefId()); |
|||
messageFlowableQuery.setUfVo(messageFlowVo); |
|||
messageFlowableQuery.setAppMap(appMap); |
|||
messageFlowableQuery.setBusinessSid(businessSid); |
|||
messageFlowableQuery.setModuleName("补卡申请"); |
|||
ResultBean<List<LatestTaskVo>> listResultBean = flowTaskFeign.getLatestTasks(procId); |
|||
String nextNodeUserSids = listResultBean.getData().get(0).getASSIGNEE_(); |
|||
List<String> receiveSidList = Arrays.asList(nextNodeUserSids.split(",")); |
|||
if (receiveSidList.size() == 1 && receiveSidList.get(0).equals(mendApply.getCreateBySid())) { |
|||
messageFlowableQuery.setMsgContent("您提交的" + messageFlowableQuery.getModuleName() + "已被驳回,请重新提交"); |
|||
} else { |
|||
messageFlowableQuery.setMsgContent(mendApply.getCreateByName() + "提交的" + messageFlowableQuery.getModuleName() + ",请审批"); |
|||
} |
|||
messageFlowableQuery.setMsgTitle("补卡申请"); |
|||
messageFeign.pushMessage(messageFlowableQuery); |
|||
}); |
|||
} catch (Exception e) { |
|||
e.printStackTrace(); |
|||
} |
|||
//==================================添加线程
|
|||
return rb.success(); |
|||
} |
|||
} |
|||
return rb.setMsg("操作失败!提交的数据不一致!"); |
|||
} |
|||
|
|||
public ResultBean revokeProcess(OaMendApplyTaskQuery query) { |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
if (StringUtils.isBlank(query.getUserSid())) { |
|||
return rb.setMsg("参数错误:userSid"); |
|||
} |
|||
OaMendApply oaMendApply = fetchBySid(query.getBusinessSid()); |
|||
String businessTaskId = oaMendApply.getTaskId(); |
|||
if (StringUtils.isNotBlank(businessTaskId)) { |
|||
if (businessTaskId.equals(query.getTaskId())) { |
|||
FlowTaskVo flowTaskVo = new FlowTaskVo(); |
|||
BeanUtil.copyProperties(query, flowTaskVo); |
|||
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.revokeProcess(flowTaskVo); |
|||
if (!resultBean.getSuccess()) { |
|||
return rb.setMsg(resultBean.getMsg()); |
|||
} |
|||
updateFlowFiled(BeanUtil.beanToMap(resultBean.getData())); |
|||
return rb.success().setData(resultBean.getData()); |
|||
} |
|||
} |
|||
return rb.setMsg("操作失败,提交的数据不一致!"); |
|||
} |
|||
|
|||
public ResultBean breakProcess(OaMendApplyTaskQuery query) { |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
if (StringUtils.isBlank(query.getInstanceId())) { |
|||
return rb.setMsg("参数错误:instanceId"); |
|||
} |
|||
if (StringUtils.isBlank(query.getUserSid())) { |
|||
return rb.setMsg("参数错误:userSid"); |
|||
} |
|||
if (StringUtils.isBlank(query.getComment())) { |
|||
return rb.setMsg("请填写意见"); |
|||
} |
|||
OaMendApply oaMendApply = fetchBySid(query.getBusinessSid()); |
|||
String businessTaskId = oaMendApply.getTaskId(); |
|||
if (StringUtils.isNotBlank(businessTaskId)) { |
|||
if (query.getUserSid().equals(oaMendApply.getCreateBySid())) { |
|||
FlowTaskVo flowTaskVo = new FlowTaskVo(); |
|||
BeanUtil.copyProperties(query, flowTaskVo); |
|||
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.breakProcess(flowTaskVo); |
|||
if (!resultBean.getSuccess()) { |
|||
return rb.setMsg(resultBean.getMsg()); |
|||
} |
|||
Map<String, Object> map = BeanUtil.beanToMap(resultBean.getData()); |
|||
updateFlowFiled(map); |
|||
return rb.success().setData(resultBean.getData()); |
|||
} else { |
|||
if (businessTaskId.equals(query.getTaskId())) { |
|||
FlowTaskVo flowTaskVo = new FlowTaskVo(); |
|||
BeanUtil.copyProperties(query, flowTaskVo); |
|||
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.breakProcess(flowTaskVo); |
|||
if (!resultBean.getSuccess()) { |
|||
return rb.setMsg(resultBean.getMsg()); |
|||
} |
|||
Map<String, Object> map = BeanUtil.beanToMap(resultBean.getData()); |
|||
updateFlowFiled(map); |
|||
return rb.success().setData(resultBean.getData()); |
|||
} |
|||
} |
|||
|
|||
} |
|||
return rb.setMsg("操作失败!提交的数据不一致!"); |
|||
} |
|||
|
|||
public ResultBean delegate(OaMendApplyDelegateQuery query) { |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
FlowDelegateQuery delegateQuery = new FlowDelegateQuery(); |
|||
BeanUtil.copyProperties(query, delegateQuery); |
|||
flowFeign.delegate(delegateQuery); |
|||
return rb.success(); |
|||
} |
|||
|
|||
public ResultBean assignTask(OaMendApplyDelegateQuery query) { |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
FlowDelegateQuery delegateQuery = new FlowDelegateQuery(); |
|||
BeanUtil.copyProperties(query, delegateQuery); |
|||
flowFeign.assignTask(delegateQuery); |
|||
return rb.success(); |
|||
} |
|||
|
|||
public ResultBean delAll(String[] sids) { |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
//查询该sid中是否有流程不是待提交的
|
|||
int count = baseMapper.selectBySid(StringUtils.join(sids, ",")); |
|||
if (count > 0) { |
|||
return rb.setMsg("删除的数据中包含已提交或已办结审批的数据,删除失败"); |
|||
} |
|||
delBySids(sids); |
|||
return rb.success(); |
|||
} |
|||
|
|||
public OaMendApplyInitVo init(String sid, String userSid, String orgPath) { |
|||
OaMendApplyInitVo oaMendApplyInitVo = new OaMendApplyInitVo(); |
|||
oaMendApplyInitVo.setUserSid(userSid); |
|||
oaMendApplyInitVo.setOrgPath(orgPath); |
|||
return oaMendApplyInitVo; |
|||
} |
|||
} |
@ -0,0 +1,84 @@ |
|||
/********************************************************* |
|||
********************************************************* |
|||
******************** ******************* |
|||
************* ************ |
|||
******* _oo0oo_ ******* |
|||
*** o8888888o *** |
|||
* 88" . "88 * |
|||
* (| -_- |) * |
|||
* 0\ = /0 * |
|||
* ___/`---'\___ * |
|||
* .' \\| |// '. *
|
|||
* / \\||| : |||// \ *
|
|||
* / _||||| -:- |||||- \ * |
|||
* | | \\\ - /// | | *
|
|||
* | \_| ''\---/'' |_/ | * |
|||
* \ .-\__ '-' ___/-. / * |
|||
* ___'. .' /--.--\ `. .'___ * |
|||
* ."" '< `.___\_<|>_/___.' >' "". * |
|||
* | | : `- \`.;`\ _ /`;.`/ - ` : | | * |
|||
* \ \ `_. \_ __\ /__ _/ .-` / / * |
|||
* =====`-.____`.___ \_____/___.-`___.-'===== * |
|||
* `=---=' * |
|||
* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * |
|||
*********__佛祖保佑__永无BUG__验收通过__钞票多多__********* |
|||
*********************************************************/ |
|||
package com.yxt.anrui.oa.biz.oamendapply; |
|||
|
|||
|
|||
import com.yxt.common.core.vo.Vo; |
|||
|
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import java.util.Date; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* Project: yxt-oa(补卡申请) <br/> |
|||
* File: OaMendApplyVo.java <br/> |
|||
* Class: com.yxt.anrui.oa.api.oamendapply.OaMendApplyVo <br/> |
|||
* Description: 补卡申请 视图数据对象. <br/> |
|||
* Copyright: Copyright (c) 2011 <br/> |
|||
* Company: https://gitee.com/liuzp315 <br/>
|
|||
* Makedate: 2024-12-04 14:14:34 <br/> |
|||
* |
|||
* @author liupopo |
|||
* @version 1.0 |
|||
* @since 1.0 |
|||
*/ |
|||
@Data |
|||
@ApiModel(value = "补卡申请 视图数据对象", description = "补卡申请 视图数据对象") |
|||
public class OaMendApplyVo implements Vo { |
|||
|
|||
private String sid; // sid
|
|||
|
|||
@ApiModelProperty("单据编号") |
|||
private String billNo; // 单据编号
|
|||
@ApiModelProperty("申请人") |
|||
private String createByName; // 申请人
|
|||
@ApiModelProperty("申请部门sid") |
|||
private String deptSid; // 申请部门sid
|
|||
@ApiModelProperty("申请部门名称") |
|||
private String deptName; // 申请部门名称
|
|||
@ApiModelProperty("补卡时间") |
|||
private String time; // 补卡时间
|
|||
@ApiModelProperty("分公司sid") |
|||
private String useOrgSid; // 分公司sid
|
|||
@ApiModelProperty("分公司名称") |
|||
private String useOrgName; // 分公司名称
|
|||
@JsonFormat(pattern = "yyyy-MM-dd",timezone = "GMT+8") |
|||
@ApiModelProperty("办结日期") |
|||
private Date finishTime; |
|||
@ApiModelProperty("实例id") |
|||
private String procInstId; // 实例id
|
|||
@ApiModelProperty("流程定义id") |
|||
private String procDefId; // 流程定义id
|
|||
@ApiModelProperty("任务id") |
|||
private String taskId; // 任务id
|
|||
@ApiModelProperty("环节id") |
|||
private String nodeId; // 环节id
|
|||
@ApiModelProperty("流程状态") |
|||
private String nodeState; // 流程状态
|
|||
|
|||
} |
@ -0,0 +1,37 @@ |
|||
package com.yxt.anrui.oa.biz.oamendapply.flowable; |
|||
|
|||
import com.yxt.common.core.dto.Dto; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import javax.validation.constraints.NotBlank; |
|||
|
|||
/** |
|||
* @Author dimengzhe |
|||
* @Date 2022/9/6 14:57 |
|||
* @Description |
|||
*/ |
|||
@Data |
|||
public class OaMendApplyCompleteDto implements Dto { |
|||
private static final long serialVersionUID = 6378752532534735663L; |
|||
|
|||
@ApiModelProperty(value = "用户sid") |
|||
private String userSid; |
|||
@ApiModelProperty(value = "节点id") |
|||
@NotBlank(message = "参数错误:taskDefKey") |
|||
private String taskDefKey; |
|||
@ApiModelProperty(value = "任务id") |
|||
@NotBlank(message = "参数错误:taskId") |
|||
private String taskId; |
|||
@ApiModelProperty(value = "流程id(PC)") |
|||
private String instanceId; |
|||
@ApiModelProperty(value = "流程id(移动)") |
|||
private String procInsId; |
|||
@ApiModelProperty(value = "意见") |
|||
private String comment; |
|||
@ApiModelProperty(value = "业务sid") |
|||
@NotBlank(message = "参数错误:businessSid") |
|||
private String businessSid; |
|||
|
|||
private String orgPath; |
|||
} |
@ -0,0 +1,26 @@ |
|||
package com.yxt.anrui.oa.biz.oamendapply.flowable; |
|||
|
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* @author Administrator |
|||
* @description |
|||
* @date 2023/9/28 9:28 |
|||
*/ |
|||
@Data |
|||
public class OaMendApplyDelegateQuery { |
|||
@ApiModelProperty |
|||
private String userSid; |
|||
@ApiModelProperty("流程实例id") |
|||
// @JsonProperty("procInsId")
|
|||
private String instanceId; |
|||
@ApiModelProperty("任务Id") |
|||
private String taskId; |
|||
@ApiModelProperty("审批人sid") |
|||
private String assignee; |
|||
@ApiModelProperty("填写意见") |
|||
private String views; |
|||
|
|||
|
|||
} |
@ -0,0 +1,25 @@ |
|||
package com.yxt.anrui.oa.biz.oamendapply.flowable; |
|||
|
|||
import com.yxt.common.core.query.Query; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import javax.validation.constraints.NotBlank; |
|||
|
|||
/** |
|||
* @Author dimengzhe |
|||
* @Date 2022/9/6 15:04 |
|||
* @Description |
|||
*/ |
|||
@Data |
|||
public class OaMendApplyNodeQuery implements Query { |
|||
private static final long serialVersionUID = 9117613683840483366L; |
|||
|
|||
@ApiModelProperty(value = "环节定义id") |
|||
@NotBlank(message = "参数错误:taskDefKey") |
|||
private String taskDefKey; |
|||
@ApiModelProperty(value = "业务sid") |
|||
private String businessSid; |
|||
@ApiModelProperty(value = "0 上一环节 1下一环节") |
|||
private Integer next; |
|||
} |
@ -0,0 +1,26 @@ |
|||
package com.yxt.anrui.oa.biz.oamendapply.flowable; |
|||
|
|||
import com.yxt.common.core.vo.Vo; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* @Author dimengzhe |
|||
* @Date 2022/9/6 15:03 |
|||
* @Description |
|||
*/ |
|||
@Data |
|||
public class OaMendApplyNodeVo implements Vo { |
|||
private static final long serialVersionUID = -833419512294877848L; |
|||
|
|||
@ApiModelProperty(value = "节点名称") |
|||
private String name; |
|||
@ApiModelProperty(value = "节点id") |
|||
private String id; |
|||
@ApiModelProperty(value = "审批组") |
|||
private List<String> candidateGroups; |
|||
@ApiModelProperty(value = "是否是最后环节") |
|||
private String endTask; |
|||
} |
@ -0,0 +1,48 @@ |
|||
package com.yxt.anrui.oa.biz.oamendapply.flowable; |
|||
|
|||
import com.yxt.common.core.query.Query; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import javax.validation.constraints.NotBlank; |
|||
|
|||
/** |
|||
* @Author dimengzhe |
|||
* @Date 2022/9/6 15:06 |
|||
* @Description |
|||
*/ |
|||
@Data |
|||
public class OaMendApplyTaskQuery implements Query { |
|||
private static final long serialVersionUID = 1288615499873178778L; |
|||
|
|||
/** |
|||
* 终止、驳回、撤回 |
|||
*/ |
|||
@ApiModelProperty("任务Id") |
|||
@NotBlank(message = "参数错误:taskId") |
|||
private String taskId; |
|||
/** |
|||
* 终止、驳回、撤回 |
|||
*/ |
|||
@ApiModelProperty("业务sid") |
|||
@NotBlank(message = "参数错误:businessSid") |
|||
private String businessSid; |
|||
/** |
|||
* 终止、驳回 |
|||
*/ |
|||
@ApiModelProperty("任务意见") |
|||
private String comment; |
|||
/** |
|||
* 终止、撤回、驳回 |
|||
*/ |
|||
@ApiModelProperty("用户Sid") |
|||
private String userSid; |
|||
/** |
|||
* 终止 |
|||
*/ |
|||
@ApiModelProperty("流程实例Id(PC)") |
|||
private String instanceId; |
|||
|
|||
@ApiModelProperty("流程实例Id(移动)") |
|||
private String procInsId; |
|||
} |
@ -0,0 +1,25 @@ |
|||
package com.yxt.anrui.oa.biz.oamendapply.flowable; |
|||
|
|||
import com.yxt.anrui.oa.biz.oaleaveapply.OaLeaveApplyDto; |
|||
import com.yxt.anrui.oa.biz.oamendapply.OaMendApplyDto; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* @author liuguohui |
|||
* @version 1.0 |
|||
* @description |
|||
* @date 2022/04/13 |
|||
*/ |
|||
@ApiModel("提交") |
|||
@Data |
|||
public class SubmitOaMendApplyDto extends OaMendApplyDto { |
|||
|
|||
@ApiModelProperty("意见") |
|||
private String comment; |
|||
@ApiModelProperty("流程实例id") |
|||
private String instanceId; |
|||
@ApiModelProperty("任务id") |
|||
private String taskId; |
|||
} |
Loading…
Reference in new issue