Merge branch 'version_performance_2.0' of http://gitlab.ldxinyong.com/enterpriseManagement/lz_management into version_performance_2.0

This commit is contained in:
杜建超 2020-10-27 10:52:24 +08:00
commit f4a30d65e5
11 changed files with 106 additions and 32 deletions

View File

@ -652,17 +652,9 @@ public class ResultRecordController extends AbstractController {
*/
@RequestMapping("/new/approval")
public R approval(ApprovalDto approvalDto) {
approvalDto.setLoginUserId(approvalDto.getLoginUserId());
return resultRecordService.newApproval(approvalDto);
}
}

View File

@ -6,6 +6,7 @@ import com.dingtalk.api.response.OapiCrmAuthGroupMemberListResponse;
import com.lz.common.utils.R;
import com.lz.common.utils.StringUtil;
import com.lz.modules.app.dao.DepartmentsDao;
import com.lz.modules.app.dto.ApprovalDto;
import com.lz.modules.app.entity.DepartmentsEntity;
import com.lz.modules.app.entity.DepartmentsStaffRelateEntity;
import com.lz.modules.app.entity.StaffEntity;
@ -261,8 +262,21 @@ public class TestController {
@RequestMapping("/test/resultrecord")
public void resultRecorcd(Long resultRecordId) throws Exception{
R r = resultRecordService.initFlowRecord(resultRecordId);
}
/**
* 删除
*/
// http://localhost:8080/lz_management/user/lzresultrecord/new/approval?resultRecordId=215&status=1
@RequestMapping("/new/approval")
public R approval(Long resultRecordId,Integer status ) {
ApprovalDto approvalDto = new ApprovalDto();
approvalDto.setResultRecordId(resultRecordId);
approvalDto.setStatus(status);
return resultRecordService.newApproval(approvalDto);
}

View File

@ -7,4 +7,6 @@ public class ApprovalDto {
private Long resultRecordId;
private Integer status; //1 提交审批,审批通过,2 撤回,3 催办,5 驳回6 申述7 流程终止
private Long loginUserId;
private String menuName; //按钮名称
private String comment;
}

View File

@ -62,4 +62,6 @@ public interface FlowRecordMapper extends BaseMapper<FlowRecord> {
List<FlowRecord> selectFlowRecordByRecordIdStatus(@Param("resultRecordId") Long resultRecordId, @Param("status") Integer status);
FlowRecord selectFlowRecordByRecordIdAndFlowId(@Param("resultRecordId") Long resultRecordId, @Param("flowId") Long flowId);
}

View File

@ -61,4 +61,6 @@ public interface FlowRecordService extends IService<FlowRecord> {
void insertFlowRecords(List<FlowRecord> flowRecords);
List<FlowRecord> selectFlowRecordByRecordIdStatus(Long resultRecordId,Integer status);
FlowRecord selectFlowRecordByRecordIdAndFlowId(Long resultRecordId, Long id);
}

View File

@ -168,4 +168,9 @@ public class FlowRecordServiceImpl extends ServiceImpl<FlowRecordMapper, FlowRec
public List<FlowRecord> selectFlowRecordByRecordIdStatus(Long resultRecordId,Integer status) {
return flowRecordMapper.selectFlowRecordByRecordIdStatus(resultRecordId,status);
}
@Override
public FlowRecord selectFlowRecordByRecordIdAndFlowId(Long resultRecordId, Long flowId) {
return flowRecordMapper.selectFlowRecordByRecordIdAndFlowId(resultRecordId,flowId);
}
}

View File

@ -1,41 +1,55 @@
package com.lz.modules.sys.entity.app;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* <p>
* 菜单权限表
* </p>*业绩评论表
* @author quyixiao
* @since 2020-09-21
* @since 2020-10-26
*/
@Data
@TableName("lz_result_comment")
@ApiModel(value = "业绩评论表")
public class ResultComment implements java.io.Serializable {
//
@TableId(value = "id", type = IdType.AUTO)
private Long id;
//是否删除状态1删除0有效
@ApiModelProperty(value = "是否删除状态1删除0有效", name = "isDelete")
private Integer isDelete;
//创建时间
@ApiModelProperty(value = "创建时间", name = "gmtCreate")
private Date gmtCreate;
//最后修改时间
@ApiModelProperty(value = "最后修改时间", name = "gmtModified")
private Date gmtModified;
//记录id
@ApiModelProperty(value = "记录id", name = "recordId")
private Long recordId;
//评论用户id
@ApiModelProperty(value = "评论用户id", name = "staffId")
private Long staffId;
//评论内容
@ApiModelProperty(value = "评论内容", name = "comment")
private String comment;
//评论用户名称
@ApiModelProperty(value = "评论用户名称", name = "staffName")
private String staffName;
//状态
@ApiModelProperty(value = "状态", name = "status")
private Integer status;
//流程id
@ApiModelProperty(value = "流程id", name = "flowRecordId")
private Long flowRecordId;
//操作名称
@ApiModelProperty(value = "操作名称", name = "optDesc")
private String optDesc;
/**
*
* @return
@ -186,6 +200,21 @@ public class ResultComment implements java.io.Serializable {
this.flowRecordId = flowRecordId;
}
/**
* 操作名称
* @return
*/
public String getOptDesc() {
return optDesc;
}
/**
* 操作名称
* @param optDesc
*/
public void setOptDesc(String optDesc) {
this.optDesc = optDesc;
}
@Override
public String toString() {
return "ResultComment{" +
@ -199,6 +228,7 @@ public class ResultComment implements java.io.Serializable {
",staffName=" + staffName +
",status=" + status +
",flowRecordId=" + flowRecordId +
",optDesc=" + optDesc +
"}";
}
}

View File

@ -31,6 +31,7 @@ import com.lz.modules.performance.req.AssessDetailReq;
import com.lz.modules.performance.res.ChartStatistical;
import com.lz.modules.sys.dao.app.ResultRecordMapper;
import com.lz.modules.sys.entity.SysUserEntity;
import com.lz.modules.sys.entity.app.ResultComment;
import com.lz.modules.sys.entity.app.ResultDetail;
import com.lz.modules.sys.entity.app.ResultRecord;
import com.lz.modules.sys.service.app.ResultCommentService;
@ -818,21 +819,38 @@ public class ResultRecordServiceImpl extends ServiceImpl<ResultRecordMapper, Res
case 1: //1 提交审批,审批通过
return newSubmit(approvalDto);
case 2: //2 撤回
return newReject(approvalDto);
return reSubmit(approvalDto);
case 3: //3 催办
return urge(approvalDto);
case 5: //4 驳回
return newReject(approvalDto);
case 6: //6 申述
return explain(approvalDto);
case 7: //7 终止流程
return stop(approvalDto);
default:
break;
}
return null;
}
private R reSubmit(ApprovalDto approvalDto) {
List<FlowRecord> flowRecords = flowRecordService.selectFlowRecordByRecordIdStatus(approvalDto.getResultRecordId(), 1);
if(flowRecords!=null && flowRecords.size()>0){
return R.error("领导己经审批,不能撤回");
}
return newReject(approvalDto);
}
public void comment (ApprovalDto approvalDto,FlowChart flowChart){
ResultRecord resultRecord = resultRecordMapper.selectResultRecordById(approvalDto.getResultRecordId());
StaffEntity staffEntity = staffService.selectStaffById(resultRecord.getCurrentApprovalStaffId());
ResultComment resultComment = new ResultComment();
resultComment.setComment(approvalDto.getComment());
resultComment.setStaffName(staffEntity.getName());
resultComment.setRecordId(approvalDto.getResultRecordId());
resultComment.setOptDesc(approvalDto.getMenuName() + flowChart.getName());
resultCommentService.insertResultComment(resultComment);
}
private R newSubmit(ApprovalDto approvalDto) {
List<FlowRecord> flowRecords = flowRecordService.selectFlowRecordByRecordId(approvalDto.getResultRecordId());
ResultRecord resultRecord = resultRecordMapper.selectResultRecordById(approvalDto.getResultRecordId());
@ -858,6 +876,7 @@ public class ResultRecordServiceImpl extends ServiceImpl<ResultRecordMapper, Res
resultRecord.setCurrentApprovalStaffId(currentFlowRecord.getApprovalStaffId());
resultRecord.setCurrentApprovalStaffName(currentFlowRecord.getApprovalStaffName());
resultRecordService.updateResultRecordById(resultRecord);
comment(approvalDto,flowChart);
return R.ok();
}
@ -869,34 +888,35 @@ public class ResultRecordServiceImpl extends ServiceImpl<ResultRecordMapper, Res
flowRecord.setStatus(0);
flowRecordService.updateFlowRecordById(flowRecord);
}
ResultRecord resultRecord = resultRecordMapper.selectResultRecordById(approvalDto.getResultRecordId());
resultRecord.setCurrentApprovalStaffId(currentFlowRecord.getApprovalStaffId());
resultRecord.setCurrentApprovalStaffName(currentFlowRecord.getApprovalStaffName());
resultRecord.setFlowStaffIdRole(currentFlowRecord.getFlowStaffIdRole());
FlowChart flowChart = flowService.selectFlowChartByChartId(currentFlowRecord.getFlowId());
FlowRecord lastFlowRecord = flowRecordService.selectFlowRecordByRecordIdAndFlowId(approvalDto.getResultRecordId(),currentFlowRecord.getId());
lastFlowRecord.setStatus(2);
flowRecordService.updateFlowRecordById(lastFlowRecord);
ResultRecord resultRecord = resultRecordMapper.selectResultRecordById(approvalDto.getResultRecordId());
resultRecord.setCurrentApprovalStaffId(lastFlowRecord.getApprovalStaffId());
resultRecord.setCurrentApprovalStaffName(lastFlowRecord.getApprovalStaffName());
resultRecord.setFlowStaffIdRole(lastFlowRecord.getFlowStaffIdRole());
FlowChart flowChart = flowService.selectFlowChartByChartId(lastFlowRecord.getFlowId());
resultRecord.setFlowProcess(flowChart.getFlowProcess());
resultRecordService.updateResultRecordById(resultRecord);
comment(approvalDto,flowChart);
}
return R.ok();
}
private R urge(ApprovalDto approvalDto) {
ResultRecord resultRecord = resultRecordMapper.selectResultRecordById(approvalDto.getResultRecordId());
if(!resultRecord.getCurrentApprovalStaffId().equals(approvalDto.getLoginUserId())){
log.info("催办" + resultRecord.getCurrentApprovalStaffId());
StaffEntity mySelf = staffService.selectStaffById(resultRecord.getStaffId());
StaffEntity toSelf = staffService.selectStaffById(resultRecord.getCurrentApprovalStaffId());
resultRecordService.sendWorkMSG(mySelf, toSelf, WorkMsgTypeEnum.URGING, 0L, 2);
}
return R.ok();
}
private R stop(ApprovalDto approvalDto) {
return R.ok();
}
private R explain(ApprovalDto approvalDto) {
return R.ok();

View File

@ -14,12 +14,13 @@
<result column="staff_name" property="staffName"/>
<result column="status" property="status"/>
<result column="flow_record_id" property="flowRecordId"/>
<result column="opt_desc" property="optDesc"/>
</resultMap>
<!-- 通用查询结果列 -->
<sql id="Base_Column_List">
id AS id, is_delete AS isDelete, gmt_create AS gmtCreate, gmt_modified AS gmtModified, record_id AS recordId, staff_id AS staffId, comment AS comment, staff_name AS staffName, status AS status, flow_record_id AS flowRecordId
id AS id, is_delete AS isDelete, gmt_create AS gmtCreate, gmt_modified AS gmtModified, record_id AS recordId, staff_id AS staffId, comment AS comment, staff_name AS staffName, status AS status, flow_record_id AS flowRecordId, opt_desc AS optDesc
</sql>
@ -38,6 +39,7 @@
<if test="staffName != null">staff_name, </if>
<if test="status != null">status, </if>
<if test="flowRecordId != null">flow_record_id, </if>
<if test="optDesc != null">opt_desc, </if>
is_delete,
gmt_create,
gmt_modified
@ -48,6 +50,7 @@
<if test="staffName != null">#{ staffName}, </if>
<if test="status != null">#{ status}, </if>
<if test="flowRecordId != null">#{ flowRecordId}, </if>
<if test="optDesc != null">#{ optDesc}, </if>
0,
now(),
now()
@ -66,7 +69,8 @@
<if test="comment != null">comment = #{comment},</if>
<if test="staffName != null">staff_name = #{staffName},</if>
<if test="status != null">status = #{status},</if>
<if test="flowRecordId != null">flow_record_id = #{flowRecordId}</if>
<if test="flowRecordId != null">flow_record_id = #{flowRecordId},</if>
<if test="optDesc != null">opt_desc = #{optDesc}</if>
</trim>
,gmt_modified = now()
where id = #{id}
@ -84,7 +88,8 @@
comment = #{comment},
staff_name = #{staffName},
status = #{status},
flow_record_id = #{flowRecordId}
flow_record_id = #{flowRecordId},
opt_desc = #{optDesc}
,gmt_modified = now()
where id = #{id}
</update>

View File

@ -266,7 +266,9 @@
<select id="selectFlowRecordByRecordIdStatus" resultType="com.lz.modules.flow.entity.FlowRecord">
select * from lz_flow_record where is_delete = 0 and record_id = #{resultRecordId} and status = #{status}
</select>
<select id="selectFlowRecordByRecordIdAndFlowId" resultType="com.lz.modules.flow.entity.FlowRecord">
select * from lz_flow_record where is_delete = 0 and record_id = #{resultRecordId} and #{flowId} > id order by id desc limit 1
</select>
</mapper>

View File

@ -96,7 +96,7 @@ public class MysqlMain {
//list.add(new TablesBean("lz_flow_chart_detail_record"));
//list.add(new TablesBean("lz_flow_approval_role"));
list.add(new TablesBean("lz_flow_chart"));
list.add(new TablesBean("lz_result_comment"));
List<TablesBean> list2 = new ArrayList<TablesBean>();
Map<String, String> map = MysqlUtil2ShowCreateTable.getComments();