diff --git a/src/main/java/com/lz/common/utils/DingTalkUtil.java b/src/main/java/com/lz/common/utils/DingTalkUtil.java index 67563ec6..ead7f0f6 100644 --- a/src/main/java/com/lz/common/utils/DingTalkUtil.java +++ b/src/main/java/com/lz/common/utils/DingTalkUtil.java @@ -324,7 +324,7 @@ public class DingTalkUtil { departmentStaffBo.setEmail(json.getString("email"));//邮箱,钉钉的企业邮箱才可以,需要单独授权手机权限 departmentStaffBo.setAvatar(json.getString("avatar"));//头像 departmentStaffBo.setPosition(json.getString("title")); - if(mapProbation.containsKey(departmentStaffBo.getEmployeeId())){ + if(mapProbation != null && mapProbation.containsKey(departmentStaffBo.getEmployeeId())){ departmentStaffBo.setEmployeeType(2); }else{ departmentStaffBo.setEmployeeType(1); diff --git a/src/main/java/com/lz/modules/app/controller/ResultRecordController.java b/src/main/java/com/lz/modules/app/controller/ResultRecordController.java index 358ef7fd..0a57c291 100644 --- a/src/main/java/com/lz/modules/app/controller/ResultRecordController.java +++ b/src/main/java/com/lz/modules/app/controller/ResultRecordController.java @@ -798,8 +798,9 @@ public class ResultRecordController extends AbstractController { @ApiOperation("保存绩效详情-吴林") public R saveDetail(@RequestBody @ApiParam ResultRecordDetailDto dto) { Long userId = getUserId(); - ResultRecord resultRecord = new ResultRecord(); - BeanUtils.copyProperties(dto, resultRecord); + //ResultRecord resultRecord = new ResultRecord(); + ResultRecord resultRecord = resultRecordService.selectResultRecordById(dto.getId()); + resultRecord.setAllScore(resultRecord.getLastScore()); List inserts = new ArrayList<>(); List updates = new ArrayList<>(); @@ -842,6 +843,7 @@ public class ResultRecordController extends AbstractController { /*if(model.getMaxCount() != null && model.getDetailDtos().size() > model.getMaxCount().intValue()){ return R.error(model.getName() + "维度指标数量不能超过" + model.getMaxCount()); }*/ + for (ResultDetailDto detailDto:model.getDetailDtos() ) {//排序 ResultDetail resultDetail = new ResultDetail(); diff --git a/src/main/java/com/lz/modules/job/business/DingtalkBusiness.java b/src/main/java/com/lz/modules/job/business/DingtalkBusiness.java index 6b37868a..93f5950d 100644 --- a/src/main/java/com/lz/modules/job/business/DingtalkBusiness.java +++ b/src/main/java/com/lz/modules/job/business/DingtalkBusiness.java @@ -203,8 +203,11 @@ public class DingtalkBusiness { if(departmentInfosBos.size() > 0){ List probationUserIDS = getProbationStaff(token);//获取试用期人员信息 - Map mapProbation = - probationUserIDS.stream().collect(Collectors.toMap(String::toString, Function.identity(), (e, r) -> e)); + Map mapProbation = null; + if(probationUserIDS != null){ + mapProbation = probationUserIDS.stream().collect(Collectors.toMap(String::toString, Function.identity(), (e, r) -> e)); + } + //获取原有部门信息 Map mapDepartmentInfosBos = departmentInfosBos.stream().collect(Collectors.toMap(DepartmentInfosBo::getId, Function.identity(), (e, r) -> e)); @@ -574,7 +577,7 @@ public class DingtalkBusiness { private List getProbationStaff(String token){ //获取试用期员工信息 - + List ids = null; try { DingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.com/topapi/smartwork/hrm/employee/queryonjob"); OapiSmartworkHrmEmployeeQueryonjobRequest req = new OapiSmartworkHrmEmployeeQueryonjobRequest(); @@ -582,7 +585,7 @@ public class DingtalkBusiness { req.setStatusList("2"); req.setSize(50L); boolean isNext = false; - List ids = new ArrayList<>(); + ids = new ArrayList<>(); { req.setOffset(offSet); OapiSmartworkHrmEmployeeQueryonjobResponse rsp = client.execute(req, token); @@ -599,13 +602,12 @@ public class DingtalkBusiness { }else{ logger.info("钉钉请求返回错误{}", jsonObject); } - }while(isNext) - return ids; + }while(isNext); } catch (ApiException e) { e.printStackTrace(); } - return null; + return ids; } diff --git a/src/main/java/com/lz/modules/job/dao/ScheduleJobDao.java b/src/main/java/com/lz/modules/job/dao/ScheduleJobDao.java index 4b277a76..12b3cf3b 100644 --- a/src/main/java/com/lz/modules/job/dao/ScheduleJobDao.java +++ b/src/main/java/com/lz/modules/job/dao/ScheduleJobDao.java @@ -12,6 +12,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.lz.modules.job.entity.ScheduleJobEntity; import org.apache.ibatis.annotations.Mapper; +import java.util.List; import java.util.Map; /** @@ -26,4 +27,6 @@ public interface ScheduleJobDao extends BaseMapper { * 批量更新状态 */ int updateBatch(Map map); + + List selectAll(); } diff --git a/src/main/java/com/lz/modules/job/service/impl/ScheduleJobServiceImpl.java b/src/main/java/com/lz/modules/job/service/impl/ScheduleJobServiceImpl.java index 6d33f1d1..c4c2487f 100644 --- a/src/main/java/com/lz/modules/job/service/impl/ScheduleJobServiceImpl.java +++ b/src/main/java/com/lz/modules/job/service/impl/ScheduleJobServiceImpl.java @@ -33,12 +33,18 @@ public class ScheduleJobServiceImpl extends ServiceImpl scheduleJobList = this.list(); + List scheduleJobList = scheduleJobMapper.selectAll(); for(ScheduleJobEntity scheduleJob : scheduleJobList){ CronTrigger cronTrigger = ScheduleUtils.getCronTrigger(scheduler, scheduleJob.getJobId()); //如果不存在,则创建 diff --git a/src/main/java/com/lz/modules/sys/service/app/impl/ResultRecordServiceImpl.java b/src/main/java/com/lz/modules/sys/service/app/impl/ResultRecordServiceImpl.java index 67472279..ede99e92 100644 --- a/src/main/java/com/lz/modules/sys/service/app/impl/ResultRecordServiceImpl.java +++ b/src/main/java/com/lz/modules/sys/service/app/impl/ResultRecordServiceImpl.java @@ -941,6 +941,7 @@ public class ResultRecordServiceImpl extends ServiceImpl flowRecords = flowRecordService.selectFlowRecordByRecordIdGeFlowIndex(f.getRecordId(),f.getFlowIndex()); boolean flag = false ; for(FlowRecord flowRecord:flowRecords){ @@ -963,9 +964,10 @@ public class ResultRecordServiceImpl extends ServiceImpl newflowRecords = flowRecordService.selectFlowRecordByRecordId(f.getRecordId()); for(int i = 0 ;i < newflowRecords.size() ; i ++){ @@ -982,11 +984,12 @@ public class ResultRecordServiceImpl extends ServiceImpl flowRecords = flowRecordService.selectFlowRecordByRecordId(flowRecordId); + List flowRecords = flowRecordService.selectFlowRecordByRecordId(resultRecordId); List flowRecordIds =new ArrayList<>(); boolean flag = false ; for(FlowRecord f: flowRecords){ @@ -996,9 +999,9 @@ public class ResultRecordServiceImpl extends ServiceImpl newflowRecords = flowRecordService.selectFlowRecordByRecordId(flowRecordId); + flowRecordService.deleteFlowRecordByRecordId(resultRecordId); + initFlowRecord(resultRecordId); + List newflowRecords = flowRecordService.selectFlowRecordByRecordId(resultRecordId); for(int i = 0 ;i < newflowRecords.size() ; i ++){ flowRecordService.updateFlowRecordIdById(newflowRecords.get(i).getId(),flowRecordIds.get(i)); if(flag ){ //如果录入己经走了,设置新的数据,结果录入己走 @@ -1009,7 +1012,14 @@ public class ResultRecordServiceImpl extends ServiceImpl resetDataResps = new ArrayList<>(); diff --git a/src/main/resources/2020_12_08_sql b/src/main/resources/2020_12_08_sql index 917764da..21a9ae1c 100644 --- a/src/main/resources/2020_12_08_sql +++ b/src/main/resources/2020_12_08_sql @@ -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'; \ No newline at end of file diff --git a/src/main/resources/mapper/job/ScheduleJobDao.xml b/src/main/resources/mapper/job/ScheduleJobDao.xml index 5c35544c..603ec916 100644 --- a/src/main/resources/mapper/job/ScheduleJobDao.xml +++ b/src/main/resources/mapper/job/ScheduleJobDao.xml @@ -11,4 +11,10 @@ + + + + diff --git a/src/test/java/com/lz/mysql/ControlScanner.java b/src/test/java/com/lz/mysql/ControlScanner.java new file mode 100644 index 00000000..6ea3aed7 --- /dev/null +++ b/src/test/java/com/lz/mysql/ControlScanner.java @@ -0,0 +1,7 @@ +package com.lz.mysql; + +public class ControlScanner { + private String filePath;//文件地址 + static final String[] notesSym = {"/*", "*/", "//", "\\n"};//注释符号,成对出现,偶数为起始符号,奇数为结束符号 + +} diff --git a/src/test/java/com/lz/mysql/SourceData.java b/src/test/java/com/lz/mysql/SourceData.java new file mode 100644 index 00000000..d321dc41 --- /dev/null +++ b/src/test/java/com/lz/mysql/SourceData.java @@ -0,0 +1,8 @@ +package com.lz.mysql; + +public class SourceData { + private String[] remarks; + private String name;//属性或者方法名称 + private String[] params;//参数名称 + private String reParam;//返回参数 +}