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-12-16 15:57:52 +08:00
commit fe6bbe0955
10 changed files with 80 additions and 30 deletions

View File

@ -324,7 +324,7 @@ public class DingTalkUtil {
departmentStaffBo.setEmail(json.getString("email"));//邮箱钉钉的企业邮箱才可以需要单独授权手机权限 departmentStaffBo.setEmail(json.getString("email"));//邮箱钉钉的企业邮箱才可以需要单独授权手机权限
departmentStaffBo.setAvatar(json.getString("avatar"));//头像 departmentStaffBo.setAvatar(json.getString("avatar"));//头像
departmentStaffBo.setPosition(json.getString("title")); departmentStaffBo.setPosition(json.getString("title"));
if(mapProbation.containsKey(departmentStaffBo.getEmployeeId())){ if(mapProbation != null && mapProbation.containsKey(departmentStaffBo.getEmployeeId())){
departmentStaffBo.setEmployeeType(2); departmentStaffBo.setEmployeeType(2);
}else{ }else{
departmentStaffBo.setEmployeeType(1); departmentStaffBo.setEmployeeType(1);

View File

@ -798,8 +798,9 @@ public class ResultRecordController extends AbstractController {
@ApiOperation("保存绩效详情-吴林") @ApiOperation("保存绩效详情-吴林")
public R saveDetail(@RequestBody @ApiParam ResultRecordDetailDto dto) { public R saveDetail(@RequestBody @ApiParam ResultRecordDetailDto dto) {
Long userId = getUserId(); Long userId = getUserId();
ResultRecord resultRecord = new ResultRecord(); //ResultRecord resultRecord = new ResultRecord();
BeanUtils.copyProperties(dto, resultRecord); ResultRecord resultRecord = resultRecordService.selectResultRecordById(dto.getId());
resultRecord.setAllScore(resultRecord.getLastScore()); resultRecord.setAllScore(resultRecord.getLastScore());
List<ResultDetail> inserts = new ArrayList<>(); List<ResultDetail> inserts = new ArrayList<>();
List<ResultDetail> updates = new ArrayList<>(); List<ResultDetail> updates = new ArrayList<>();
@ -842,6 +843,7 @@ public class ResultRecordController extends AbstractController {
/*if(model.getMaxCount() != null && model.getDetailDtos().size() > model.getMaxCount().intValue()){ /*if(model.getMaxCount() != null && model.getDetailDtos().size() > model.getMaxCount().intValue()){
return R.error(model.getName() + "维度指标数量不能超过" + model.getMaxCount()); return R.error(model.getName() + "维度指标数量不能超过" + model.getMaxCount());
}*/ }*/
for (ResultDetailDto detailDto:model.getDetailDtos() for (ResultDetailDto detailDto:model.getDetailDtos()
) {//排序 ) {//排序
ResultDetail resultDetail = new ResultDetail(); ResultDetail resultDetail = new ResultDetail();

View File

@ -203,8 +203,11 @@ public class DingtalkBusiness {
if(departmentInfosBos.size() > 0){ if(departmentInfosBos.size() > 0){
List<String> probationUserIDS = getProbationStaff(token);//获取试用期人员信息 List<String> probationUserIDS = getProbationStaff(token);//获取试用期人员信息
Map<String, String> mapProbation = Map<String, String> mapProbation = null;
probationUserIDS.stream().collect(Collectors.toMap(String::toString, Function.identity(), (e, r) -> e)); if(probationUserIDS != null){
mapProbation = probationUserIDS.stream().collect(Collectors.toMap(String::toString, Function.identity(), (e, r) -> e));
}
//获取原有部门信息 //获取原有部门信息
Map<String, DepartmentInfosBo> mapDepartmentInfosBos Map<String, DepartmentInfosBo> mapDepartmentInfosBos
= departmentInfosBos.stream().collect(Collectors.toMap(DepartmentInfosBo::getId, Function.identity(), (e, r) -> e)); = departmentInfosBos.stream().collect(Collectors.toMap(DepartmentInfosBo::getId, Function.identity(), (e, r) -> e));
@ -574,7 +577,7 @@ public class DingtalkBusiness {
private List<String> getProbationStaff(String token){ private List<String> getProbationStaff(String token){
//获取试用期员工信息 //获取试用期员工信息
List<String> ids = null;
try { try {
DingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.com/topapi/smartwork/hrm/employee/queryonjob"); DingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.com/topapi/smartwork/hrm/employee/queryonjob");
OapiSmartworkHrmEmployeeQueryonjobRequest req = new OapiSmartworkHrmEmployeeQueryonjobRequest(); OapiSmartworkHrmEmployeeQueryonjobRequest req = new OapiSmartworkHrmEmployeeQueryonjobRequest();
@ -582,7 +585,7 @@ public class DingtalkBusiness {
req.setStatusList("2"); req.setStatusList("2");
req.setSize(50L); req.setSize(50L);
boolean isNext = false; boolean isNext = false;
List<String> ids = new ArrayList<>(); ids = new ArrayList<>();
{ {
req.setOffset(offSet); req.setOffset(offSet);
OapiSmartworkHrmEmployeeQueryonjobResponse rsp = client.execute(req, token); OapiSmartworkHrmEmployeeQueryonjobResponse rsp = client.execute(req, token);
@ -599,13 +602,12 @@ public class DingtalkBusiness {
}else{ }else{
logger.info("钉钉请求返回错误{}", jsonObject); logger.info("钉钉请求返回错误{}", jsonObject);
} }
}while(isNext) }while(isNext);
return ids;
} catch (ApiException e) { } catch (ApiException e) {
e.printStackTrace(); e.printStackTrace();
} }
return null; return ids;
} }

View File

@ -12,6 +12,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.lz.modules.job.entity.ScheduleJobEntity; import com.lz.modules.job.entity.ScheduleJobEntity;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import java.util.List;
import java.util.Map; import java.util.Map;
/** /**
@ -26,4 +27,6 @@ public interface ScheduleJobDao extends BaseMapper<ScheduleJobEntity> {
* 批量更新状态 * 批量更新状态
*/ */
int updateBatch(Map<String, Object> map); int updateBatch(Map<String, Object> map);
List<ScheduleJobEntity> selectAll();
} }

View File

@ -33,12 +33,18 @@ public class ScheduleJobServiceImpl extends ServiceImpl<ScheduleJobDao, Schedule
@Autowired @Autowired
private Scheduler scheduler; private Scheduler scheduler;
@Autowired
private ScheduleJobDao scheduleJobMapper;
/** /**
* 项目启动时初始化定时器 * 项目启动时初始化定时器
*/ */
@PostConstruct @PostConstruct
public void init(){ public void init(){
List<ScheduleJobEntity> scheduleJobList = this.list(); List<ScheduleJobEntity> scheduleJobList = scheduleJobMapper.selectAll();
for(ScheduleJobEntity scheduleJob : scheduleJobList){ for(ScheduleJobEntity scheduleJob : scheduleJobList){
CronTrigger cronTrigger = ScheduleUtils.getCronTrigger(scheduler, scheduleJob.getJobId()); CronTrigger cronTrigger = ScheduleUtils.getCronTrigger(scheduler, scheduleJob.getJobId());
//如果不存在则创建 //如果不存在则创建

View File

@ -941,6 +941,7 @@ public class ResultRecordServiceImpl extends ServiceImpl<ResultRecordMapper, Res
private R resetNode(ApprovalDto approvalDto) { private R resetNode(ApprovalDto approvalDto) {
FlowRecord f = flowRecordService.selectFlowRecordById(approvalDto.getFlowRecordId()); FlowRecord f = flowRecordService.selectFlowRecordById(approvalDto.getFlowRecordId());
ResultRecord resultRecord = resultRecordService.selectResultRecordById(f.getRecordId());
List<FlowRecord> flowRecords = flowRecordService.selectFlowRecordByRecordIdGeFlowIndex(f.getRecordId(),f.getFlowIndex()); List<FlowRecord> flowRecords = flowRecordService.selectFlowRecordByRecordIdGeFlowIndex(f.getRecordId(),f.getFlowIndex());
boolean flag = false ; boolean flag = false ;
for(FlowRecord flowRecord:flowRecords){ for(FlowRecord flowRecord:flowRecords){
@ -963,9 +964,10 @@ public class ResultRecordServiceImpl extends ServiceImpl<ResultRecordMapper, Res
} }
for (FlowRecord r : runing) { for (FlowRecord r : runing) {
r.setStatus(2); r.setStatus(2);
resultRecord.setFlowProcess(r.getFlowProcess());
flowRecordService.updateFlowRecordById(r); flowRecordService.updateFlowRecordById(r);
} }
resultRecordService.updateResultRecordById(resultRecord);
if(flag) { //如果录入己经走了设置新的数据结果录入己走 if(flag) { //如果录入己经走了设置新的数据结果录入己走
List<FlowRecord> newflowRecords = flowRecordService.selectFlowRecordByRecordId(f.getRecordId()); List<FlowRecord> newflowRecords = flowRecordService.selectFlowRecordByRecordId(f.getRecordId());
for(int i = 0 ;i < newflowRecords.size() ; i ++){ for(int i = 0 ;i < newflowRecords.size() ; i ++){
@ -982,11 +984,12 @@ public class ResultRecordServiceImpl extends ServiceImpl<ResultRecordMapper, Res
private R resetAll(ApprovalDto approvalDto) { private R resetAll(ApprovalDto approvalDto) {
FlowRecord flowRecord = flowRecordService.selectFlowRecordById(approvalDto.getFlowRecordId()); FlowRecord flowRecord = flowRecordService.selectFlowRecordById(approvalDto.getFlowRecordId());
Long flowRecordId = approvalDto.getResultRecordId(); Long resultRecordId = approvalDto.getResultRecordId();
if(flowRecord != null ){ if(flowRecord != null ){
flowRecordId = flowRecord.getRecordId(); resultRecordId = flowRecord.getRecordId();
} }
List<FlowRecord> flowRecords = flowRecordService.selectFlowRecordByRecordId(flowRecordId); List<FlowRecord> flowRecords = flowRecordService.selectFlowRecordByRecordId(resultRecordId);
List<Long> flowRecordIds =new ArrayList<>(); List<Long> flowRecordIds =new ArrayList<>();
boolean flag = false ; boolean flag = false ;
for(FlowRecord f: flowRecords){ for(FlowRecord f: flowRecords){
@ -996,9 +999,9 @@ public class ResultRecordServiceImpl extends ServiceImpl<ResultRecordMapper, Res
flag = true; flag = true;
} }
} }
flowRecordService.deleteFlowRecordByRecordId(flowRecordId); flowRecordService.deleteFlowRecordByRecordId(resultRecordId);
initFlowRecord(flowRecordId); initFlowRecord(resultRecordId);
List<FlowRecord> newflowRecords = flowRecordService.selectFlowRecordByRecordId(flowRecordId); List<FlowRecord> newflowRecords = flowRecordService.selectFlowRecordByRecordId(resultRecordId);
for(int i = 0 ;i < newflowRecords.size() ; i ++){ for(int i = 0 ;i < newflowRecords.size() ; i ++){
flowRecordService.updateFlowRecordIdById(newflowRecords.get(i).getId(),flowRecordIds.get(i)); flowRecordService.updateFlowRecordIdById(newflowRecords.get(i).getId(),flowRecordIds.get(i));
if(flag ){ //如果录入己经走了设置新的数据结果录入己走 if(flag ){ //如果录入己经走了设置新的数据结果录入己走
@ -1009,7 +1012,14 @@ public class ResultRecordServiceImpl extends ServiceImpl<ResultRecordMapper, Res
} }
} }
} }
resultRecordService.resetData(flowRecordId,approvalDto.getClearFlag());
//更新flowProcess为0
ResultRecord resultRecord = resultRecordService.selectResultRecordById(resultRecordId);
resultRecord.setFlowProcess(0);
resultRecordService.updateResultRecordById(resultRecord);
resultRecordService.resetData(resultRecordId,approvalDto.getClearFlag());
return R.ok(); return R.ok();
} }
@ -1453,7 +1463,7 @@ public class ResultRecordServiceImpl extends ServiceImpl<ResultRecordMapper, Res
if(CollectionUtils.isEmpty(flowRecordRunning) ){ if(CollectionUtils.isEmpty(flowRecordRunning) ){
flowRecords = flowRecordService.selectFlowRecordByResultRecordId(recordDetailDto.getResultRecordId()); flowRecords = flowRecordService.selectFlowRecordByResultRecordId(recordDetailDto.getResultRecordId());
}else{ }else{
flowRecords = flowRecordService.selectFlowRecordByRecordIdLeFlowIndex(recordDetailDto.getResultRecordId(),flowRecordRunning.get(0).getFlowIndex()); flowRecords = flowRecordService.selectFlowRecordByRecordIdLeFlowIndex(recordDetailDto.getResultRecordId(),flowRecordRunning.get(0).getFlowIndex() -1 );
} }
int flowIndex = 0; int flowIndex = 0;
List<ResetDataResp> resetDataResps = new ArrayList<>(); List<ResetDataResp> resetDataResps = new ArrayList<>();

View File

@ -1,4 +1,4 @@
ALTER TABLE `lz_management`.`lz_result_detail` ADD COLUMN `process_rate` decimal(12,2) DEFAULT 0 COMMENT '进度' AFTER `model_id`; ALTER TABLE `lz_result_detail` ADD COLUMN `process_rate` decimal(12,2) DEFAULT 0 COMMENT '进度' AFTER `model_id`;
@ -35,31 +35,37 @@ CREATE TABLE `lz_task_process_record` (
ALTER TABLE `lz_management`.`lz_result_task` ADD COLUMN `name` text COMMENT '任务名称' AFTER `gmt_modified`, ADD COLUMN `detail_id` int(11) DEFAULT 0 COMMENT 'lz_result_detail 的id' AFTER `name`, ADD COLUMN `process_rate` decimal(12,2) DEFAULT 0 COMMENT '任务的当前进度' AFTER `detail_id`; ALTER TABLE `lz_result_task` ADD COLUMN `name` text COMMENT '任务名称' AFTER `gmt_modified`, ADD COLUMN `detail_id` int(11) DEFAULT 0 COMMENT 'lz_result_detail 的id' AFTER `name`, ADD COLUMN `process_rate` decimal(12,2) DEFAULT 0 COMMENT '任务的当前进度' AFTER `detail_id`;
ALTER TABLE `lz_management`.`lz_task_comment` ADD COLUMN `task_id` int(11) DEFAULT 0 COMMENT '任务id' AFTER `gmt_modified`, ADD COLUMN `type` int(11) DEFAULT 0 COMMENT '0表示对所有评论1表示对单个具体的detail做评论' AFTER `task_id`, ADD COLUMN `detail_id` int(11) AFTER `type`, ADD COLUMN `result_record_id` int(11) DEFAULT 0 COMMENT 'lz_result_record表id' AFTER `detail_id`, ADD COLUMN `staff_id` int(11) DEFAULT 0 COMMENT '评论人员' AFTER `result_record_id`, ADD COLUMN `content` text COMMENT '评论内容' AFTER `staff_id`, ADD COLUMN `staff_name` varchar(256) COMMENT '评论人员名称' AFTER `content`; ALTER TABLE `lz_task_comment` ADD COLUMN `task_id` int(11) DEFAULT 0 COMMENT '任务id' AFTER `gmt_modified`, ADD COLUMN `type` int(11) DEFAULT 0 COMMENT '0表示对所有评论1表示对单个具体的detail做评论' AFTER `task_id`, ADD COLUMN `detail_id` int(11) AFTER `type`, ADD COLUMN `result_record_id` int(11) DEFAULT 0 COMMENT 'lz_result_record表id' AFTER `detail_id`, ADD COLUMN `staff_id` int(11) DEFAULT 0 COMMENT '评论人员' AFTER `result_record_id`, ADD COLUMN `content` text COMMENT '评论内容' AFTER `staff_id`, ADD COLUMN `staff_name` varchar(256) COMMENT '评论人员名称' AFTER `content`;
ALTER TABLE `lz_management`.`lz_task_process_record` ADD COLUMN `detail_id` int(11) COMMENT 'lz_result_record表id' AFTER `at_staff_name`, ADD COLUMN `result_record_id` int(11) COMMENT 'lz_detail表id' AFTER `detail_id`; ALTER TABLE `lz_task_process_record` ADD COLUMN `detail_id` int(11) COMMENT 'lz_result_record表id' AFTER `at_staff_name`, ADD COLUMN `result_record_id` int(11) COMMENT 'lz_detail表id' AFTER `detail_id`;
ALTER TABLE `lz_management`.`lz_task_process_record` ADD COLUMN `process_rate` decimal(12,2) DEFAULT 0 COMMENT '当前进度' AFTER `gmt_modified`, ADD COLUMN `remark` text COMMENT '更新说明' AFTER `process_rate`, ADD COLUMN `label` text COMMENT '操作标签' AFTER `remark`, ADD COLUMN `type` int(11) DEFAULT 3 COMMENT '1修改名称2修改进度 3名称和进度都修改' AFTER `label`; ALTER TABLE `lz_task_process_record` ADD COLUMN `process_rate` decimal(12,2) DEFAULT 0 COMMENT '当前进度' AFTER `gmt_modified`, ADD COLUMN `remark` text COMMENT '更新说明' AFTER `process_rate`, ADD COLUMN `label` text COMMENT '操作标签' AFTER `remark`, ADD COLUMN `type` int(11) DEFAULT 3 COMMENT '1修改名称2修改进度 3名称和进度都修改' AFTER `label`;
ALTER TABLE `lz_management`.`lz_task_process_record` CHANGE COLUMN `type` `type` int(11) DEFAULT 3 COMMENT 'user_type为0时1修改名称2修改进度 3名称和进度都修改 4新增 5 删除 。user_type为1时0表示对所有评论1表示对单个具体的task做评论'; ALTER TABLE `lz_task_process_record` CHANGE COLUMN `type` `type` int(11) DEFAULT 3 COMMENT 'user_type为0时1修改名称2修改进度 3名称和进度都修改 4新增 5 删除 。user_type为1时0表示对所有评论1表示对单个具体的task做评论';
ALTER TABLE `lz_management`.`lz_task_process_record` ADD COLUMN `staff_id` int(11) COMMENT '员工id' AFTER `result_record_id`, ADD COLUMN `staff_name` varchar(256) COMMENT '员工名称' AFTER `staff_id`; ALTER TABLE `lz_task_process_record` ADD COLUMN `staff_id` int(11) COMMENT '员工id' AFTER `result_record_id`, ADD COLUMN `staff_name` varchar(256) COMMENT '员工名称' AFTER `staff_id`;
ALTER TABLE `lz_management`.`lz_task_process_record` CHANGE COLUMN `staff_id` `staff_ids` varchar(256) DEFAULT NULL COMMENT '员工id', CHANGE COLUMN `staff_name` `staff_names` varchar(256) DEFAULT NULL COMMENT '员工名称'; ALTER TABLE `lz_task_process_record` CHANGE COLUMN `staff_id` `staff_ids` varchar(256) DEFAULT NULL COMMENT '员工id', CHANGE COLUMN `staff_name` `staff_names` varchar(256) DEFAULT NULL COMMENT '员工名称';
ALTER TABLE `lz_task_process_record` CHANGE COLUMN `at_staff_id` `at_staff_ids` int(11) DEFAULT NULL COMMENT '@人员id', CHANGE COLUMN `at_staff_name` `at_staff_names` varchar(256) DEFAULT NULL COMMENT '@人员名称', CHANGE COLUMN `staff_ids` `staff_id` int(11) DEFAULT NULL COMMENT '员工id', CHANGE COLUMN `staff_names` `staff_name` varchar(256) DEFAULT NULL COMMENT '员工名称';
ALTER TABLE `lz_task_process_record` CHANGE COLUMN `at_staff_ids` `at_staff_ids` varchar(256) DEFAULT NULL COMMENT '@人员id';
ALTER TABLE `lz_management`.`lz_task_process_record` CHANGE COLUMN `at_staff_id` `at_staff_ids` int(11) DEFAULT NULL COMMENT '@人员id', CHANGE COLUMN `at_staff_name` `at_staff_names` varchar(256) DEFAULT NULL COMMENT '@人员名称', CHANGE COLUMN `staff_ids` `staff_id` int(11) DEFAULT NULL COMMENT '员工id', CHANGE COLUMN `staff_names` `staff_name` varchar(256) DEFAULT NULL COMMENT '员工名称';
ALTER TABLE `lz_management`.`lz_task_process_record` CHANGE COLUMN `at_staff_ids` `at_staff_ids` varchar(256) DEFAULT NULL COMMENT '@人员id';

View File

@ -11,4 +11,10 @@
</foreach> </foreach>
</update> </update>
<select id="selectAll" resultType="com.lz.modules.job.entity.ScheduleJobEntity">
select * from schedule_job where status = 0
</select>
</mapper> </mapper>

View File

@ -0,0 +1,7 @@
package com.lz.mysql;
public class ControlScanner {
private String filePath;//文件地址
static final String[] notesSym = {"/*", "*/", "//", "\\n"};//注释符号成对出现偶数为起始符号奇数为结束符号
}

View File

@ -0,0 +1,8 @@
package com.lz.mysql;
public class SourceData {
private String[] remarks;
private String name;//属性或者方法名称
private String[] params;//参数名称
private String reParam;//返回参数
}