| | |
| | | |
| | | import annotation.DataScope; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper; |
| | | import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.ycl.platform.base.CheckIndex; |
| | | import com.ycl.platform.domain.dto.CheckScoreDTO; |
| | | import com.ycl.platform.domain.dto.CheckScoreIndexDTO; |
| | | import com.ycl.platform.domain.dto.ScoreIndexDTO; |
| | | import com.ycl.platform.domain.entity.*; |
| | | import com.ycl.platform.domain.vo.CheckIndexCarVO; |
| | | import com.ycl.platform.domain.vo.CheckIndexFaceVO; |
| | | import com.ycl.platform.domain.vo.CheckIndexVideoVO; |
| | | import com.ycl.platform.domain.vo.CheckScoreDetailVO; |
| | | import com.ycl.platform.mapper.CheckRuleMapper; |
| | | import com.ycl.platform.mapper.CheckScoreMapper; |
| | |
| | | import com.ycl.platform.service.ICheckIndexFaceService; |
| | | import com.ycl.platform.service.ICheckIndexVideoService; |
| | | import com.ycl.platform.service.ICheckScoreService; |
| | | import com.ycl.system.entity.BaseEntity; |
| | | import com.ycl.system.entity.SysRole; |
| | | import com.ycl.system.entity.SysUser; |
| | | import com.ycl.system.service.ISysDeptService; |
| | |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | import org.springframework.util.CollectionUtils; |
| | | import pojo.ExcelExp; |
| | | import utils.poi.ExcelUtilManySheet; |
| | |
| | | scoreIndexDTO.setDate(formatter.format(createTime)); |
| | | } |
| | | |
| | | //权限控制 |
| | | roleControl(scoreIndexDTO); |
| | | List<Map> map = scoreMapper.selectScoreIndex(scoreIndexDTO); |
| | | |
| | | scoreMap.put("tableData", checkRules); |
| | |
| | | * @return 结果 |
| | | */ |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public int publishCheckScore(CheckScoreDTO checkScoreDTO) { |
| | | if (CollectionUtils.isEmpty(checkScoreDTO.getId())) { |
| | | return 0; |
| | |
| | | } |
| | | String code = publishType.getCode(); |
| | | checkScoreDTO.setPublish(code); |
| | | |
| | | return scoreMapper.publishCheckScore(checkScoreDTO); |
| | | int i = scoreMapper.publishCheckScore(checkScoreDTO); |
| | | //控制index表的发布状态 |
| | | List<Integer> ids = checkScoreDTO.getId(); |
| | | QueryWrapper<CheckScore> queryWrapper = new QueryWrapper<>(); |
| | | queryWrapper.in("id",ids); |
| | | List<CheckScore> scoreList = scoreMapper.selectList(queryWrapper); |
| | | //最多为3次循环 |
| | | for (CheckScore checkScore : scoreList) { |
| | | Short examineCategory = checkScore.getExamineCategory(); |
| | | if(CheckConstants.Rule_Category_Video.equals(examineCategory)){ |
| | | UpdateWrapper<CheckIndexVideo> updateWrapper = new UpdateWrapper<>(); |
| | | updateWrapper.set("publish",code); |
| | | updateWrapper.eq("dept_id",checkScore.getDeptId()); |
| | | updateWrapper.eq("examine_tag",checkScore.getExamineTag()); |
| | | updateWrapper.between("create_time",DateUtils.getDayStart(checkScore.getCreateTime()),DateUtils.getDayEnd(checkScore.getCreateTime())); |
| | | indexVideoService.update(updateWrapper); |
| | | }else if(CheckConstants.Rule_Category_Car.equals(examineCategory)){ |
| | | UpdateWrapper<CheckIndexCar> updateWrapper = new UpdateWrapper<>(); |
| | | updateWrapper.set("publish",code); |
| | | updateWrapper.eq("dept_id",checkScore.getDeptId()); |
| | | updateWrapper.eq("examine_tag",checkScore.getExamineTag()); |
| | | updateWrapper.between("create_time",DateUtils.getDayStart(checkScore.getCreateTime()),DateUtils.getDayEnd(checkScore.getCreateTime())); |
| | | indexCarService.update(updateWrapper); |
| | | }else if(CheckConstants.Rule_Category_Face.equals(examineCategory)){ |
| | | UpdateWrapper<CheckIndexFace> updateWrapper = new UpdateWrapper<>(); |
| | | updateWrapper.set("publish",code); |
| | | updateWrapper.eq("dept_id",checkScore.getDeptId()); |
| | | updateWrapper.eq("examine_tag",checkScore.getExamineTag()); |
| | | updateWrapper.between("create_time",DateUtils.getDayStart(checkScore.getCreateTime()),DateUtils.getDayEnd(checkScore.getCreateTime())); |
| | | indexFaceService.update(updateWrapper); |
| | | } |
| | | } |
| | | return i; |
| | | } |
| | | |
| | | /** |
| | |
| | | CheckIndexCar checkIndexCar = new CheckIndexCar(); |
| | | checkIndexCar.setDate(date); |
| | | checkIndexCar.setQuarter(checkScoreDTO.getQuarter()); |
| | | //权限控制 只能查看已发布 |
| | | roleControl(checkIndexCar); |
| | | List<CheckIndexCar> checkIndexCars = indexCarService.selectCheckIndexCarList(checkIndexCar); |
| | | List<CheckIndexCarVO> checkIndexCarVOS = new ArrayList<>(); |
| | | for (CheckIndexCar indexCar : checkIndexCars) { |
| | | indexCar.setExamineTagStr(CheckConstants.Examine_Tag_Province.equals(indexCar.getExamineTag()) ? "省厅考核" : "区县考核"); |
| | | CheckIndexCarVO excelVo = CheckIndexCar.getExcelVo(indexCar); |
| | | checkIndexCarVOS.add(excelVo); |
| | | } |
| | | ExcelExp e1 = new ExcelExp("车辆考核指标数据", checkIndexCars, CheckIndexCar.class); |
| | | ExcelExp e1 = new ExcelExp("车辆考核指标数据", checkIndexCarVOS, CheckIndexCarVO.class); |
| | | //人脸 |
| | | CheckIndexFace checkIndexFace = new CheckIndexFace(); |
| | | checkIndexFace.setDate(date); |
| | | checkIndexFace.setQuarter(checkScoreDTO.getQuarter()); |
| | | //权限控制 只能查看已发布 |
| | | roleControl(checkIndexFace); |
| | | List<CheckIndexFace> checkIndexFaces = indexFaceService.selectCheckIndexFaceList(checkIndexFace); |
| | | List<CheckIndexFaceVO> checkIndexFaceVOS = new ArrayList<>(); |
| | | for (CheckIndexFace indexFace : checkIndexFaces) { |
| | | indexFace.setExamineTagStr(CheckConstants.Examine_Tag_Province.equals(indexFace.getExamineTag()) ? "省厅考核" : "区县考核"); |
| | | CheckIndexFaceVO excelVo = CheckIndexFace.getExcelVo(indexFace); |
| | | checkIndexFaceVOS.add(excelVo); |
| | | } |
| | | ExcelExp e2 = new ExcelExp("人脸考核指标数据", checkIndexFaces, CheckIndexFace.class); |
| | | ExcelExp e2 = new ExcelExp("人脸考核指标数据", checkIndexFaceVOS, CheckIndexFaceVO.class); |
| | | //视频 |
| | | CheckIndexVideo checkIndexVideo = new CheckIndexVideo(); |
| | | checkIndexVideo.setDate(date); |
| | | checkIndexVideo.setQuarter(checkScoreDTO.getQuarter()); |
| | | //权限控制 只能查看已发布 |
| | | roleControl(checkIndexVideo); |
| | | List<CheckIndexVideo> checkIndexVideos = indexVideoService.selectCheckIndexVideoList(checkIndexVideo); |
| | | List<CheckIndexVideoVO> checkIndexVideoVOS = new ArrayList<>(); |
| | | for (CheckIndexVideo indexVideo : checkIndexVideos) { |
| | | indexVideo.setExamineTagStr(CheckConstants.Examine_Tag_Province.equals(indexVideo.getExamineTag()) ? "省厅考核" : "区县考核"); |
| | | CheckIndexVideoVO excelVo = CheckIndexVideo.getExcelVo(indexVideo); |
| | | checkIndexVideoVOS.add(excelVo); |
| | | } |
| | | ExcelExp e3 = new ExcelExp("视频考核指标数据", checkIndexVideos, CheckIndexVideo.class); |
| | | ExcelExp e3 = new ExcelExp("视频考核指标数据", checkIndexVideoVOS, CheckIndexVideoVO.class); |
| | | |
| | | List<ExcelExp> mysheet = new ArrayList<>(); |
| | | mysheet.add(e1); |
| | |
| | | |
| | | } |
| | | |
| | | private void roleControl(CheckScore checkScore) { |
| | | private void roleControl(CheckIndex checkIndex) { |
| | | List<SysRole> roles = SecurityUtils.getLoginUser().getUser().getRoles(); |
| | | SysUser user = SecurityUtils.getLoginUser().getUser(); |
| | | if (!user.isAdmin()) { |
| | | for (SysRole role : roles) { |
| | | if (role.getPermissions().contains("check:score:role:publish")) { |
| | | Map<String, Object> params = checkIndex.getParams(); |
| | | params.put("publish", PublishType.PUBLISHED.getCode()); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | private void roleControl(BaseEntity checkScore) { |
| | | List<SysRole> roles = SecurityUtils.getLoginUser().getUser().getRoles(); |
| | | SysUser user = SecurityUtils.getLoginUser().getUser(); |
| | | if (!user.isAdmin()) { |