diff --git a/jero-boot/db/蔚来标准sql/dev_third_record.sql b/jero-boot/db/蔚来标准sql/dev_third_record.sql index e31b0a1fc..f52e1d14e 100644 --- a/jero-boot/db/蔚来标准sql/dev_third_record.sql +++ b/jero-boot/db/蔚来标准sql/dev_third_record.sql @@ -928,7 +928,7 @@ UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'Responsible Fi UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'Filled by' WHERE `id` = 'a371f6d49781c0921a48f317d1ba69b6'; UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'Eng. Interface' WHERE `id` = '58c3d5a50c86be19d5ab0cd5ac4d6d8b'; --- 国家国旗表 增加旗帜 2022-08-16 +-- 国家国旗表 增加旗帜 2022-08-16 已同步生产环境 INSERT INTO `laws_weilai`.`country_national_flag` (`id`, `create_by`, `create_time`, `update_by`, `update_time`, `sys_org_code`, `country_name_cn`, `country_name_en`, `national_flag_id`, `national_flag_url`) VALUES ('14', NULL, NULL, NULL, NULL, NULL, '海湾地区', 'GCC', NULL, '/jero-boot/nationalFlag/GCC.png'); INSERT INTO `laws_weilai`.`country_national_flag` (`id`, `create_by`, `create_time`, `update_by`, `update_time`, `sys_org_code`, `country_name_cn`, `country_name_en`, `national_flag_id`, `national_flag_url`) VALUES ('15', NULL, NULL, NULL, NULL, NULL, '巴西', 'Brazil', NULL, '/jero-boot/nationalFlag/Brazil.png'); INSERT INTO `laws_weilai`.`country_national_flag` (`id`, `create_by`, `create_time`, `update_by`, `update_time`, `sys_org_code`, `country_name_cn`, `country_name_en`, `national_flag_id`, `national_flag_url`) VALUES ('16', NULL, NULL, NULL, NULL, NULL, '德国', 'Germany', NULL, '/jero-boot/nationalFlag/Germany.png'); @@ -946,15 +946,15 @@ INSERT INTO `laws_weilai`.`country_national_flag` (`id`, `create_by`, `create_ti -- 删除之前的3中国香港 和8海湾地区 delete from country_national_flag where id in ('3','8'); --- 法规流程历史表增加字段 审批意见 2022-08-16 +-- 法规流程历史表增加字段 审批意见 2022-08-16 已同步生产环境 ALTER TABLE `laws_weilai`.`laws_process_history` ADD COLUMN `approval_opinion` varchar(2000) NULL COMMENT '审批意见' AFTER `flow_type`; ---- 用户表 删除工号唯一索引 2022-08-18 +--- 用户表 删除工号唯一索引 2022-08-18 已同步生产环境 ALTER TABLE `laws_weilai`.`sys_user` DROP INDEX `uniq_sys_user_work_no`; --- 工作流 流程表增加流程名称 英文字段 2022-08-19 +-- 工作流 流程表增加流程名称 英文字段 2022-08-19 已同步生产环境 ALTER TABLE `laws_weilai_wkflow`.`bus_process_name` ADD COLUMN `PRC_NAME_EN` varchar(255) NULL COMMENT '流程名称(英文)' AFTER `PROJECT_LAWS_INVENTORY_ID`; diff --git a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/service/impl/ParamsCollectManifestEOServiceImpl.java b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/service/impl/ParamsCollectManifestEOServiceImpl.java index 844f7bebe..881d10a4d 100644 --- a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/service/impl/ParamsCollectManifestEOServiceImpl.java +++ b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/collect/service/impl/ParamsCollectManifestEOServiceImpl.java @@ -772,6 +772,9 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl map = new HashMap<>(); String dbFieldName = onlCgformField.getDbFieldName(); + if ("nio_number".equals(dbFieldName) || "params_name".equals(dbFieldName)) { + map.put("click3", true); + } if ("description".equals(dbFieldName)) { indexOfDescription = i; map.put("click2", true); diff --git a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/report/controller/ParamsExportTemplateEOController.java b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/report/controller/ParamsExportTemplateEOController.java index 872aacfee..259554efa 100644 --- a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/report/controller/ParamsExportTemplateEOController.java +++ b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/report/controller/ParamsExportTemplateEOController.java @@ -1,6 +1,6 @@ package com.jero.modules.cert.report.controller; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.jero.common.api.vo.Result; @@ -9,6 +9,7 @@ import com.jero.common.system.base.controller.JeroController; import com.jero.modules.cert.report.entity.ParamsExportTemplateEO; import com.jero.modules.cert.report.enums.ExportTemplateStateEnum; import com.jero.modules.cert.report.service.IParamsExportTemplateEOService; +import com.jero.modules.ocr.util.LineHumpUtil; import com.jero.modules.system.util.StringUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -61,9 +62,15 @@ public class ParamsExportTemplateEOController extends JeroController queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.like(StringUtils.isNotEmpty(paramsExportTemplateEO.getTemplateName()), ParamsExportTemplateEO::getTemplateName, paramsExportTemplateEO.getTemplateName()) - .orderByDesc(ParamsExportTemplateEO::getCreateTime); + if (StringUtils.isNotBlank(paramsExportTemplateEO.getOrderByField())) { + paramsExportTemplateEO.setOrderByField(LineHumpUtil.humpToLine2(paramsExportTemplateEO.getOrderByField())); + } + + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.lambda().like(StringUtils.isNotEmpty(paramsExportTemplateEO.getTemplateName()), ParamsExportTemplateEO::getTemplateName, paramsExportTemplateEO.getTemplateName()); + queryWrapper.orderBy(StringUtils.isNotBlank(paramsExportTemplateEO.getOrderByField()), "1".equals(paramsExportTemplateEO.getOrderBy())?true:false, paramsExportTemplateEO.getOrderByField()) + .orderBy(StringUtils.isBlank(paramsExportTemplateEO.getOrderByField()), false, "create_time"); // 默认按创建时间降序 + Page page = new Page(pageNo, pageSize); IPage pageList = paramsExportTemplateEOService.page(page, queryWrapper); // 处理 状态 中英文 diff --git a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/report/entity/ParamsExportTemplateEO.java b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/report/entity/ParamsExportTemplateEO.java index f60c054a5..35e411dce 100644 --- a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/report/entity/ParamsExportTemplateEO.java +++ b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/report/entity/ParamsExportTemplateEO.java @@ -85,4 +85,10 @@ public class ParamsExportTemplateEO implements Serializable { @TableField(exist = false) private String state_dictText; + //排序 + @TableField(exist = false) + private String orderBy; // 顺序 1-升序, 2-降序 + @TableField(exist = false) + private String orderByField; // 字段 + } diff --git a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/template/controller/ParamsTemplateEOController.java b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/template/controller/ParamsTemplateEOController.java index f98d03861..d6640cb1e 100644 --- a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/template/controller/ParamsTemplateEOController.java +++ b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/template/controller/ParamsTemplateEOController.java @@ -1,6 +1,6 @@ package com.jero.modules.cert.template.controller; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.jero.common.api.vo.Result; @@ -9,6 +9,7 @@ import com.jero.common.constant.enums.CutEnum; import com.jero.common.system.base.controller.JeroController; import com.jero.modules.cert.template.entity.ParamsTemplateEO; import com.jero.modules.cert.template.service.IParamsTemplateEOService; +import com.jero.modules.ocr.util.LineHumpUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; @@ -62,11 +63,17 @@ public class ParamsTemplateEOController extends JeroController queryWrapper = new LambdaQueryWrapper<>(); - queryWrapper.like(StringUtils.isNotEmpty(paramsTemplateEO.getParamsTemplateName()), ParamsTemplateEO::getParamsTemplateName, paramsTemplateEO.getParamsTemplateName()) - .eq(StringUtils.isNotEmpty(paramsTemplateEO.getRegion()), ParamsTemplateEO::getRegion, paramsTemplateEO.getRegion()) + if (StringUtils.isNotBlank(paramsTemplateEO.getOrderByField())) { + paramsTemplateEO.setOrderByField(LineHumpUtil.humpToLine2(paramsTemplateEO.getOrderByField())); + } + + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.lambda().like(StringUtils.isNotEmpty(paramsTemplateEO.getParamsTemplateName()), ParamsTemplateEO::getParamsTemplateName, paramsTemplateEO.getParamsTemplateName()) + .eq(StringUtils.isNotEmpty(paramsTemplateEO.getRegion()), ParamsTemplateEO::getRegion, paramsTemplateEO.getRegion()); // .eq(StringUtils.isNotEmpty(paramsTemplateEO.getState()), ParamsTemplateEO::getState, paramsTemplateEO.getState()) - .orderByDesc(ParamsTemplateEO::getUpdateTime); + queryWrapper.orderBy(StringUtils.isNotBlank(paramsTemplateEO.getOrderByField()), "1".equals(paramsTemplateEO.getOrderBy())?true:false, paramsTemplateEO.getOrderByField()) + .orderBy(StringUtils.isBlank(paramsTemplateEO.getOrderByField()), false, "update_time"); + Page page = new Page(pageNo, pageSize); IPage pageList = paramsTemplateEOService.page(page, queryWrapper); return Result.OK(cut, pageList); diff --git a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/template/entity/ParamsTemplateEO.java b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/template/entity/ParamsTemplateEO.java index 22c3ed3b3..f0358630f 100644 --- a/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/template/entity/ParamsTemplateEO.java +++ b/jero-boot/jero-boot-module-certification/src/main/java/com/jero/modules/cert/template/entity/ParamsTemplateEO.java @@ -1,6 +1,7 @@ package com.jero.modules.cert.template.entity; import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import com.fasterxml.jackson.annotation.JsonFormat; @@ -86,4 +87,10 @@ public class ParamsTemplateEO implements Serializable { @ApiModelProperty(value = "当前版本") private java.lang.Integer version; + //排序 + @TableField(exist = false) + private String orderBy; // 顺序 1-升序, 2-降序 + @TableField(exist = false) + private String orderByField; // 字段 + } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/compare/controller/SarFileCompareItemCommentController.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/compare/controller/SarFileCompareItemCommentController.java index 651006e93..2856b2102 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/compare/controller/SarFileCompareItemCommentController.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/compare/controller/SarFileCompareItemCommentController.java @@ -161,13 +161,12 @@ public class SarFileCompareItemCommentController extends JeroController exportResXls(@RequestParam(name = "infoId", required = true) String infoId, + public void exportResXls(@RequestParam(name = "infoId", required = true) String infoId, @RequestParam(name = "selectIds", required = true) String selectIds, @RequestParam(name = "includeComments", required = true) boolean includeComments, @RequestParam(name = "cut", required = true) String cut, HttpServletResponse response) { sarFileCompareItemCommentService.exportResXls(response, infoId, selectIds, includeComments, cut); - return Result.OK(); } } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/compare/service/impl/SarFileCompareItemCommentServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/compare/service/impl/SarFileCompareItemCommentServiceImpl.java index 61c51b882..032e45072 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/compare/service/impl/SarFileCompareItemCommentServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/compare/service/impl/SarFileCompareItemCommentServiceImpl.java @@ -188,7 +188,13 @@ public class SarFileCompareItemCommentServiceImpl extends ServiceImpl", "").replace("

", "\r\n"); row.createCell(2).setCellValue(text); + row.setRowStyle(cellStyle); } } String itemIdRight = itemComment.getItemsIdRight(); - SarFileCompareItem itemRight = sfcItemMap.get(itemIdRight); - if (null != itemRight) { - row.createCell(3).setCellValue(itemRight.getItemsNum()); - row.createCell(4).setCellValue(itemRight.getItemsName()); - String text = itemRight.getItemsText(); - text = text.replace("

", "").replace("

", "\r\n"); - row.createCell(5).setCellValue(text); + if (!StringUtils.isEmpty(itemIdRight)) { + SarFileCompareItem itemRight = sfcItemMap.get(itemIdRight); + if (null != itemRight) { + row.createCell(3).setCellValue(itemRight.getItemsNum()); + row.createCell(4).setCellValue(itemRight.getItemsName()); + String text = itemRight.getItemsText(); + text = text.replace("

", "").replace("

", "\r\n"); + row.createCell(5).setCellValue(text); + row.setRowStyle(cellStyle); + } } row.createCell(6).setCellValue(itemComment.getComment()); + for (int j = 0; j < 7; j++) { + Cell cell = row.getCell(j); + if (null != cell) { + cell.setCellStyle(cellStyle); + } + } i++; } if (includeComments || StringUtils.isEmpty(selectIds)) { @@ -245,13 +264,10 @@ public class SarFileCompareItemCommentServiceImpl extends ServiceImpl\",\n" + + " \"tag\": \"lark_md\"\n" + + " }\n" + + " }\n" + + " ],\n" + + " \"tag\": \"div\"\n" + + " }\n" + + " ]\n" + + "}";*/ + + String sendJson = "{\n" + + " \"header\": {\n" + + " \"template\": \"green\",\n" + + " \"title\": {\n" + + " \"content\": \"知识库分类负责人\",\n" + + " \"tag\": \"plain_text\"\n" + + " }\n" + " }\n" + "}"; JSONObject jsonObject = JSONObject.parseObject(sendJson); JSONArray elements = new JSONArray(); JSONObject element = new JSONObject(); - element.put("tag","action"); - element.put("layout","bisected"); + JSONArray fields = new JSONArray(); //获取分类 List problemKnowledgeBaseClassifyEOList = this.problemKnowledgeBaseClassifyEOService.list(); this.problemKnowledgeBaseClassifyEOService.disposeData(problemKnowledgeBaseClassifyEOList); - JSONArray actions = new JSONArray(); - - //组装推送过去的点击按钮 + //获取所有分类下的负责人信息 + List chargePersonUserIdList = new ArrayList<>(); for (ProblemKnowledgeBaseClassifyEO problemKnowledgeBaseClassifyEO : problemKnowledgeBaseClassifyEOList) { - JSONObject buttonObject = new JSONObject(); - JSONObject text = new JSONObject(); - JSONObject value = new JSONObject(); - buttonObject.put("tag","button"); - - text.put("tag","plain_text"); - text.put("content",problemKnowledgeBaseClassifyEO.getProblemLabel() + " [" + problemKnowledgeBaseClassifyEO.getChargePersonIdName() + "]"); - value.put("chosen",problemKnowledgeBaseClassifyEO.getChargePersonId()); - - buttonObject.put("text",text); - buttonObject.put("type","primary"); - buttonObject.put("value",value); - actions.add(buttonObject); + if(StringUtils.isNotEmpty(problemKnowledgeBaseClassifyEO.getChargePersonId())){ + String chargePersonId = problemKnowledgeBaseClassifyEO.getChargePersonId(); + for (String chargePerson : chargePersonId.split(",")) { + chargePersonUserIdList.add(chargePerson); + } + } } - element.put("actions",actions); + if(CollectionUtils.isNotEmpty(chargePersonUserIdList)){ + List chargePersonUserList = this.sysUserService.querySysUserListByIdList(chargePersonUserIdList); + //组装推送过去的知识库负责人信息 + for (ProblemKnowledgeBaseClassifyEO problemKnowledgeBaseClassifyEO : problemKnowledgeBaseClassifyEOList) { + JSONObject field = new JSONObject(); + JSONObject text = new JSONObject(); + StringBuilder atUserSb = new StringBuilder(); - elements.add(element); - jsonObject.put("elements",elements); - // 设置请求参数 - JSONObject paramsMap = new JSONObject(); - paramsMap.put("user_ids", userIds); - paramsMap.put("msg_type", "interactive"); - paramsMap.put("card", jsonObject); + if(StringUtils.isNotEmpty(problemKnowledgeBaseClassifyEO.getChargePersonId())){ + for (String chargePersonId : problemKnowledgeBaseClassifyEO.getChargePersonId().split(",")) { + for (SysUser sysUser : chargePersonUserList) { + if(StringUtils.equals(chargePersonId,sysUser.getId())){ + String thirdId = sysUser.getThirdId(); + atUserSb.append(""); + atUserSb.append(" "); + } + } + } + } - // 发送请求给飞书 - String response = null; - try { - response = HttpRequestUtil.getResponseOfPOST(batchSendMessageUrl, headerMap, paramsMap.toJSONString()); - } catch (IOException e) { - e.printStackTrace(); - } - // 获取返回结果 - JSONObject tokenJson = JSONObject.parseObject(response); - if(!tokenJson.get("code").toString().equals("0")) { - log.error("请求出现异常:" + tokenJson.get("msg") + " " + tokenJson); + text.put("content","问题标签:" + problemKnowledgeBaseClassifyEO.getProblemLabel() + "\n" + "责任人:" + atUserSb.toString()); + text.put("tag","lark_md"); + + field.put("is_short",true); + field.put("text",text); + fields.add(field); + } + + element.put("tag","div"); + element.put("fields",fields); + elements.add(element); + jsonObject.put("elements",elements); + // 设置请求参数 + JSONObject paramsMap = new JSONObject(); + paramsMap.put("user_ids", userIds); + paramsMap.put("msg_type", "interactive"); + paramsMap.put("card", jsonObject); + + // 发送请求给飞书 + String response = null; + try { + response = HttpRequestUtil.getResponseOfPOST(batchSendMessageUrl, headerMap, paramsMap.toJSONString()); + } catch (IOException e) { + e.printStackTrace(); + } + // 获取返回结果 + JSONObject tokenJson = JSONObject.parseObject(response); + if(!tokenJson.get("code").toString().equals("0")) { + log.error("请求出现异常:" + tokenJson.get("msg") + " " + tokenJson); + } } } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/impl/ProblemKnowledgeBaseEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/impl/ProblemKnowledgeBaseEOServiceImpl.java index acb14a326..48c39fdb2 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/impl/ProblemKnowledgeBaseEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/problemKnowledgeBase/service/impl/ProblemKnowledgeBaseEOServiceImpl.java @@ -92,6 +92,7 @@ public class ProblemKnowledgeBaseEOServiceImpl extends ServiceImpl targetMarketList = sysDictService.queryDictItemsByCode(DicCodeEnum.REGION.getCode()); + //sbCn sbEn 这两个字段作为es中英文切换 StringBuilder sbCn = new StringBuilder(); - esFullText(problemKnowledgeBaseEO,sbCn,null,CutEnum.CN.getValue(),fileTextSb.toString()); + esFullText(problemKnowledgeBaseEO,sbCn,null,CutEnum.CN.getValue(),fileTextSb.toString(),targetMarketList); StringBuilder sbEn = new StringBuilder(); - esFullText(problemKnowledgeBaseEO,null,sbEn,CutEnum.EN.getValue(),fileTextSb.toString()); + esFullText(problemKnowledgeBaseEO,null,sbEn,CutEnum.EN.getValue(),fileTextSb.toString(),targetMarketList); Map stringMapCn = new HashMap<>(); this.problemKnowledgeBaseEOConvertMapByCut(problemKnowledgeBaseEO,CutEnum.EN.getValue(),stringMapCn); @@ -216,10 +220,11 @@ public class ProblemKnowledgeBaseEOServiceImpl extends ServiceImpl targetMarketList){ if(StringUtils.equals(cut,CutEnum.CN.getValue())){ - if(StringUtils.isNotEmpty(problemKnowledgeBaseEO.getShowPermissions_dicText())){ - sbCn.append("展示权限" + ":" + problemKnowledgeBaseEO.getShowPermissions_dicText() + " "); + if(StringUtils.isNotEmpty(problemKnowledgeBaseEO.getShowPermissions())){ + String textByValue = ShowPermissionsEnum.getTextByValue(problemKnowledgeBaseEO.getShowPermissions(), cut); + sbCn.append("展示权限" + ":" + textByValue + " "); }else { sbCn.append("展示权限" + ":" + "-- "); } @@ -236,8 +241,19 @@ public class ProblemKnowledgeBaseEOServiceImpl extends ServiceImpl { + boolean flag = false; + for (String s : targetMarketArr) { + if (StringUtils.equals(s, e.getValue())) { + flag = true; + } + } + return flag; + }).map(DictModel::getText).collect(Collectors.joining(",")); + + sbCn.append("市场" + ":" + targetMarket + " "); }else { sbCn.append("市场" + ":" + "-- "); } @@ -255,8 +271,10 @@ public class ProblemKnowledgeBaseEOServiceImpl extends ServiceImpl"); sbCn.append("内容" + ":" + problemKnowledgeBaseEO.getContent() + " "); }else { + sbCn.append("
"); sbCn.append("内容" + ":" + "-- "); } @@ -268,7 +286,8 @@ public class ProblemKnowledgeBaseEOServiceImpl extends ServiceImpl { + boolean flag = false; + for (String s : targetMarketArr) { + if (StringUtils.equals(s, e.getValue())) { + flag = true; + } + } + return flag; + }).map(DictModel::getTextEn).collect(Collectors.joining(",")); + + sbEn.append("Market" + ":" + targetMarket + " "); }else { sbEn.append("Market" + ":" + "-- "); } @@ -304,8 +334,10 @@ public class ProblemKnowledgeBaseEOServiceImpl extends ServiceImpl"); sbEn.append("Content" + ":" + problemKnowledgeBaseEO.getContent() + " "); }else { + sbEn.append("
"); sbEn.append("Content" + ":" + "-- "); } @@ -349,6 +381,7 @@ public class ProblemKnowledgeBaseEOServiceImpl extends ServiceImpl addOrUpdateConditionAssessmentBatch(@RequestBody ConditionAssessmentVO conditionAssessmentVO) { + return conditionAssessmentEOService.addOrUpdateBatch(conditionAssessmentVO); + } } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/controller/ProjectTaskInventoryEOController.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/controller/ProjectTaskInventoryEOController.java index 34920988e..a15ea842e 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/controller/ProjectTaskInventoryEOController.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/controller/ProjectTaskInventoryEOController.java @@ -1,27 +1,27 @@ package com.jero.modules.project.controller; -import java.util.Arrays; -import java.util.List; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - import com.alibaba.fastjson.JSONObject; -import com.jero.common.api.vo.Result; -import com.jero.common.system.query.QueryGenerator; -import com.jero.modules.project.entity.ProjectTaskInventoryEO; -import com.jero.modules.project.service.IProjectTaskInventoryEOService; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import lombok.extern.slf4j.Slf4j; +import com.jero.common.api.vo.Result; +import com.jero.common.aspect.annotation.AutoLog; import com.jero.common.system.base.controller.JeroController; +import com.jero.common.system.query.QueryGenerator; +import com.jero.modules.project.entity.ProjectTaskInventoryEO; +import com.jero.modules.project.service.IProjectTaskInventoryEOService; +import com.jero.modules.project.vo.ProjectTaskInventoryVO; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; -import org.springframework.web.servlet.ModelAndView; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import com.jero.common.aspect.annotation.AutoLog; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.util.Arrays; +import java.util.List; /** @@ -203,4 +203,32 @@ public class ProjectTaskInventoryEOController extends JeroController remindDispose(@RequestBody JSONObject jsonObject){ return this.projectTaskInventoryEOService.remindDispose(jsonObject); } + + /** + * 编辑 + * + * @param projectTaskInventoryVO + * @return + */ + @AutoLog(value = "项目库-任务清单表-批量维护进度") + @ApiOperation(value="项目库-任务清单表-批量维护进度", notes="项目库-任务清单表-批量维护进度") + @PostMapping(value = "/editBatch") + public Result editCertificationProgressBatch(@RequestBody ProjectTaskInventoryVO projectTaskInventoryVO) { + projectTaskInventoryEOService.editBatch(projectTaskInventoryVO); + return Result.OK("编辑成功!"); + } + + /** + * 认证进度和当前状态修改时,校验角色是否符合 + * + * @param projectTaskInventoryVO + * @return + */ + @AutoLog(value = "项目库-任务清单表-校验角色是否符合") + @ApiOperation(value="项目库-任务清单表-校验角色是否符合", notes="项目库-任务清单表-校验角色是否符合") + @PostMapping(value = "/verifyRoleCode") + public Result verifyRoleCode(@RequestBody ProjectTaskInventoryVO projectTaskInventoryVO) { + List msgList = projectTaskInventoryEOService.verifyRoleCode(projectTaskInventoryVO); + return Result.OK(msgList); + } } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/IConditionAssessmentEOService.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/IConditionAssessmentEOService.java index b4ed25732..ff5ad39bd 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/IConditionAssessmentEOService.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/IConditionAssessmentEOService.java @@ -1,11 +1,11 @@ package com.jero.modules.project.service; +import com.baomidou.mybatisplus.extension.service.IService; import com.jero.common.api.vo.Result; import com.jero.common.system.vo.LoginUser; import com.jero.modules.project.entity.ConditionAssessmentEO; -import com.jero.modules.project.entity. ConditionAssessmentEO; -import com.baomidou.mybatisplus.extension.service.IService; import com.jero.modules.project.entity.ProjectTaskInventoryEO; +import com.jero.modules.project.vo.ConditionAssessmentVO; import java.util.List; import java.util.Map; @@ -92,4 +92,10 @@ public interface IConditionAssessmentEOService extends IService> getProjectStatusAssessStatisticsGroupByTerritory(Map params); + + /** + * 任务清单-项目状态评估表-批量添加或修改 + * @param conditionAssessmentVO + */ + Result addOrUpdateBatch(ConditionAssessmentVO conditionAssessmentVO); } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/IProjectTaskInventoryEOService.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/IProjectTaskInventoryEOService.java index 034acff8a..0ade9b8a2 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/IProjectTaskInventoryEOService.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/IProjectTaskInventoryEOService.java @@ -1,9 +1,10 @@ package com.jero.modules.project.service; import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.extension.service.IService; import com.jero.common.api.vo.Result; import com.jero.modules.project.entity.ProjectTaskInventoryEO; -import com.baomidou.mybatisplus.extension.service.IService; +import com.jero.modules.project.vo.ProjectTaskInventoryVO; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @@ -84,5 +85,21 @@ public interface IProjectTaskInventoryEOService extends IService projectLawsInventoryIds); + /** + * 批量更新认证进度 + * + * @param projectTaskInventoryVO + * @return + */ + void editBatch(ProjectTaskInventoryVO projectTaskInventoryVO); + + /** + * 校验角色是否符合 + * + * @param projectTaskInventoryVO + * @return + */ + List verifyRoleCode(ProjectTaskInventoryVO projectTaskInventoryVO); + void exportXls(HttpServletResponse response, HttpServletRequest request, ProjectTaskInventoryEO projectTaskInventoryEO); } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ConditionAssessmentEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ConditionAssessmentEOServiceImpl.java index 8f87663db..2f28cb299 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ConditionAssessmentEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ConditionAssessmentEOServiceImpl.java @@ -1,6 +1,7 @@ package com.jero.modules.project.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.jero.common.api.vo.Result; import com.jero.common.system.vo.LoginUser; import com.jero.modules.project.entity.ConditionAssessmentEO; @@ -8,6 +9,7 @@ import com.jero.modules.project.entity.ProjectTaskInventoryEO; import com.jero.modules.project.enums.ProjectRoleEnum; import com.jero.modules.project.mapper.ConditionAssessmentEOMapper; import com.jero.modules.project.service.IConditionAssessmentEOService; +import com.jero.modules.project.vo.ConditionAssessmentVO; import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.BeanUtils; @@ -16,8 +18,6 @@ import org.springframework.stereotype.Service; import java.util.*; import java.util.stream.Collectors; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; - /** * @Description: 任务清单-项目状态评估表 * @Author: jero-boot @@ -251,4 +251,70 @@ public class ConditionAssessmentEOServiceImpl extends ServiceImpl addOrUpdateBatch(ConditionAssessmentVO conditionAssessmentVO) { + List projectLawsInventoryIdList = Arrays.asList(conditionAssessmentVO.getProjectLawsInventoryIds().split(",")); + List roleCodeListOld = Arrays.asList(conditionAssessmentVO.getRoleCodes().split(",")); + + + for (int i=0; i < projectLawsInventoryIdList.size(); i++) { + String projectLawsInventoryId = projectLawsInventoryIdList.get(i); + String roleCode = roleCodeListOld.get(i); + List roleCodeList = new ArrayList<>(); + List list = new ArrayList<>(); + + if (StringUtils.equals(roleCode, ProjectRoleEnum.REGULATI_ENGINEER.getValue())) { + roleCodeList.add(ProjectRoleEnum.REGULATI_ENGINEER.getValue()); + + ConditionAssessmentEO regulatiEngineer = new ConditionAssessmentEO(); + regulatiEngineer.setProjectLawsInventoryId(projectLawsInventoryId); + regulatiEngineer.setConditionAssessment(conditionAssessmentVO.getConditionAssessment()); + regulatiEngineer.setRemark(conditionAssessmentVO.getRemark()); + regulatiEngineer.setRoleCode(ProjectRoleEnum.REGULATI_ENGINEER.getValue()); + + list.add(regulatiEngineer); + + } else if (StringUtils.equals(roleCode, ProjectRoleEnum.HOMOLOGATION_ENGINEER.getValue())) { + roleCodeList.add(ProjectRoleEnum.HOMOLOGATION_ENGINEER.getValue()); + + ConditionAssessmentEO homologationEngineer = new ConditionAssessmentEO(); + homologationEngineer.setProjectLawsInventoryId(projectLawsInventoryId); + homologationEngineer.setConditionAssessment(conditionAssessmentVO.getConditionAssessment()); + homologationEngineer.setRemark(conditionAssessmentVO.getRemark()); + homologationEngineer.setRoleCode(ProjectRoleEnum.HOMOLOGATION_ENGINEER.getValue()); + + list.add(homologationEngineer); + + } else if (StringUtils.equals(roleCode, ProjectRoleEnum.REGULATI_AND_HOMOLOGATION_ENGINEER.getValue())) { + roleCodeList.add(ProjectRoleEnum.REGULATI_ENGINEER.getValue()); + roleCodeList.add(ProjectRoleEnum.HOMOLOGATION_ENGINEER.getValue()); + + ConditionAssessmentEO regulatiEngineer = new ConditionAssessmentEO(); + regulatiEngineer.setProjectLawsInventoryId(projectLawsInventoryId); + regulatiEngineer.setConditionAssessment(conditionAssessmentVO.getConditionAssessment()); + regulatiEngineer.setRemark(conditionAssessmentVO.getRemark()); + regulatiEngineer.setRoleCode(ProjectRoleEnum.REGULATI_ENGINEER.getValue()); + + ConditionAssessmentEO homologationEngineer = new ConditionAssessmentEO(); + homologationEngineer.setProjectLawsInventoryId(projectLawsInventoryId); + homologationEngineer.setConditionAssessment(conditionAssessmentVO.getConditionAssessment()); + homologationEngineer.setRemark(conditionAssessmentVO.getRemark()); + homologationEngineer.setRoleCode(ProjectRoleEnum.HOMOLOGATION_ENGINEER.getValue()); + + list.add(regulatiEngineer); + list.add(homologationEngineer); + } + if(CollectionUtils.isNotEmpty(list)){ + QueryWrapper deleteWrapper = new QueryWrapper<>(); + deleteWrapper.lambda().eq(ConditionAssessmentEO::getProjectLawsInventoryId,projectLawsInventoryId); + deleteWrapper.lambda().in(ConditionAssessmentEO::getRoleCode,roleCodeList); + this.baseMapper.delete(deleteWrapper); + + saveBatch(list); + } + } + + return Result.ok(); + } } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLawsInventoryEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLawsInventoryEOServiceImpl.java index f3424e520..44c08d6b0 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLawsInventoryEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectLawsInventoryEOServiceImpl.java @@ -236,11 +236,26 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl lambdaQueryWrapper = new LambdaQueryWrapper<>(); lambdaQueryWrapper.in(DummyInventoryInfoEO::getDummyInventoryBaseId,projectLawsInventoryEO.getDummyInventoryBaseId()); List dummyInventoryInfoEOList = dummyInventoryInfoEOService.list(lambdaQueryWrapper); + List dummyInventoryInfoEOListNew = new ArrayList<>(); if(dummyInventoryInfoEOList.size() != 0){ List projectLawsInventoryEOS = new ArrayList<>(); + //责任领域如果有多个,则需要拆分成多条 + for (DummyInventoryInfoEO dummyInventoryInfoEO : dummyInventoryInfoEOList) { + String dutyTerritory = dummyInventoryInfoEO.getDutyTerritory(); + if(StringUtils.isNotBlank(dutyTerritory)){ + for (String dutyTerritoryOne : dutyTerritory.split(",")) { + DummyInventoryInfoEO dummyInventoryInfoEONew = new DummyInventoryInfoEO(); + BeanUtils.copyProperties(dummyInventoryInfoEO,dummyInventoryInfoEONew); + dummyInventoryInfoEONew.setDutyTerritory(dutyTerritoryOne); + dummyInventoryInfoEOListNew.add(dummyInventoryInfoEONew); + } + }else{ + dummyInventoryInfoEOListNew.add(dummyInventoryInfoEO); + } + } if(projectLawsInventoryEOList.size() ==0){ //此时法规清单中没有数据,直接将维护清单中的数据添加即可 - for (DummyInventoryInfoEO dummyInventoryInfoEO : dummyInventoryInfoEOList) { + for (DummyInventoryInfoEO dummyInventoryInfoEO : dummyInventoryInfoEOListNew) { ProjectLawsInventoryEO projectLawsInventoryEOTemp = new ProjectLawsInventoryEO(); projectLawsInventoryEOTemp.setProjectLibraryId(projectLawsInventoryEO.getProjectLibraryId()); BeanUtils.copyProperties(dummyInventoryInfoEO,projectLawsInventoryEOTemp); @@ -253,7 +268,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl projectLawsInventoryEOListTemp = new ArrayList<>(); - for (DummyInventoryInfoEO dummyInventoryInfoEO : dummyInventoryInfoEOList) { + for (DummyInventoryInfoEO dummyInventoryInfoEO : dummyInventoryInfoEOListNew) { List collect = projectLawsInventoryEOList.stream() .filter(e -> e.getSerialNumber().equals(dummyInventoryInfoEO.getSerialNumber())).collect(Collectors.toList()); if(collect.size() != 0){ @@ -426,7 +441,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl infoDiffEn = ListDiff.compareObject(dataListCopy.get(0),projectLawsInventoryEOCopy); //设置更新log - setContentLog(infoDiff,contentLog,infoDiffEn,enContentLog,projectLawsInventoryEO.getProjectLibraryId()); +// setContentLog(infoDiff,contentLog,infoDiffEn,enContentLog,projectLawsInventoryEO.getProjectLibraryId()); //验证用户是否是该法规上级 项目库的studio, 如果是,则同步更新流程 @@ -2593,14 +2608,14 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImple.getSerialNumber()).collect(Collectors.joining(",")); - String contentLog = username+"复制了“"+serialNumber+"”"; - String enContentLog = username+" copied “"+serialNumber+"”"; - projectLawsInventoryLogEOService.updateLog(contentLog, projectLibraryId,CutEnum.CN.getValue()); - projectLawsInventoryLogEOService.updateLog(enContentLog, projectLibraryId,CutEnum.EN.getValue()); +// LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); +// String username = sysUser.getUsername(); +// String projectLibraryId = projectLawsInventoryEOList.get(0).getProjectLibraryId(); +// String serialNumber = projectLawsInventoryEOList.stream().map(e->e.getSerialNumber()).collect(Collectors.joining(",")); +// String contentLog = username+"复制了“"+serialNumber+"”"; +// String enContentLog = username+" copied “"+serialNumber+"”"; +// projectLawsInventoryLogEOService.updateLog(contentLog, projectLibraryId,CutEnum.CN.getValue()); +// projectLawsInventoryLogEOService.updateLog(enContentLog, projectLibraryId,CutEnum.EN.getValue()); this.projectTaskInventoryEOService.saveBatch(projectTaskInventoryEOList); } @@ -2867,15 +2882,15 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl collect = bussDocumentLibraryEOList.stream().map(BussDocumentLibraryEO::getSerialNumber).collect(Collectors.toList()); List serialNumbers = serialNumberList.stream().filter(e -> !collect.contains(e)).collect(Collectors.toList()); - if(CutEnum.CN.getValue().equals(dataList.get(0).getCut())){ - throw new JeroBootException(StringUtils.join(serialNumbers,",")+"文档库中不存在,不能添加"); - }else{ - throw new JeroBootException(StringUtils.join(serialNumbers,",")+" does not exist in the document library and cannot be added"); + if(serialNumbers.size() > 0){ + if(CutEnum.CN.getValue().equals(dataList.get(0).getCut())){ + throw new JeroBootException(StringUtils.join(serialNumbers,",")+"文档库中不存在,不能添加"); + }else{ + throw new JeroBootException(StringUtils.join(serialNumbers,",")+" does not exist in the document library and cannot be added"); + } } } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectTaskInventoryEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectTaskInventoryEOServiceImpl.java index 17c1d4e9c..8730fe829 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectTaskInventoryEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/service/impl/ProjectTaskInventoryEOServiceImpl.java @@ -18,6 +18,7 @@ import com.jero.modules.project.service.IConditionAssessmentEOService; import com.jero.modules.project.service.IProjectLawsInventoryEOService; import com.jero.modules.project.service.IProjectTaskInventoryEOService; import com.jero.modules.project.util.SendMessageUtils; +import com.jero.modules.project.vo.ProjectTaskInventoryVO; import com.jero.modules.system.entity.SysDictItem; import com.jero.modules.system.entity.SysUser; import com.jero.modules.system.mapper.SysUserMapper; @@ -459,6 +460,96 @@ public class ProjectTaskInventoryEOServiceImpl extends ServiceImpl idList = Arrays.asList(projectTaskInventoryVO.getIds().split(",")); + + List updateEOList = new ArrayList<>(); + for (String id : idList) { + ProjectTaskInventoryEO updateEO = new ProjectTaskInventoryEO(); + updateEO.setId(id); + updateEO.setCertificationProgress(projectTaskInventoryVO.getCertificationProgress()); + updateEO.setCertificationProgressRemark(projectTaskInventoryVO.getCertificationProgressRemark()); + + Date now = new Date(); + updateEO.setUpdateTime(now); + + updateEOList.add(updateEO); + } + + updateBatchById(updateEOList); + } + + @Override + public List verifyRoleCode(ProjectTaskInventoryVO projectTaskInventoryVO) { + List projectLawsInventoryIdList = Arrays.asList(projectTaskInventoryVO.getProjectLawsInventoryIds().split(",")); + List roleCodeList = new ArrayList<>(); + if (StringUtils.isNotEmpty(projectTaskInventoryVO.getRoleCodes())) { + roleCodeList = Arrays.asList(projectTaskInventoryVO.getRoleCodes().split(",")); + } + String cut = projectTaskInventoryVO.getCut(); + String operation = projectTaskInventoryVO.getOperation(); + + List> msgMapList = new ArrayList<>(); + for (int i=0; i < projectLawsInventoryIdList.size(); i++) { + String projectLawsInventoryId = projectLawsInventoryIdList.get(i); + ProjectLawsInventoryEO projectLawsInventoryEO = projectLawsInventoryEOService.getById(projectLawsInventoryId); + + Map msgMap = new HashMap<>(); + if (CollectionUtils.isEmpty(roleCodeList)) { + msgMap.put("serialNumber", projectLawsInventoryEO.getSerialNumber()); + msgMapList.add(msgMap); + } else { + String roleCode = roleCodeList.get(i); + if ("1".equals(operation)) { + if (!(ProjectRoleEnum.HOMOLOGATION_ENGINEER.getValue().equals(roleCode) + || ProjectRoleEnum.REGULATI_AND_HOMOLOGATION_ENGINEER.getValue().equals(roleCode))) { + msgMap.put("serialNumber", projectLawsInventoryEO.getSerialNumber()); + msgMapList.add(msgMap); + } + } else if ("2".equals(operation)) { + if (!(ProjectRoleEnum.REGULATI_ENGINEER.getValue().equals(roleCode) + || ProjectRoleEnum.HOMOLOGATION_ENGINEER.getValue().equals(roleCode) + || ProjectRoleEnum.REGULATI_AND_HOMOLOGATION_ENGINEER.getValue().equals(roleCode))) { + msgMap.put("serialNumber", projectLawsInventoryEO.getSerialNumber()); + msgMapList.add(msgMap); + } + } + } + + } + + return getMsg(msgMapList, cut, operation); + } + + private List getMsg(List> msgMapList, String cut, String operation) { + List msgList = new ArrayList<>(); + + for (Map msgMap : msgMapList) { + String serialNumber = msgMap.get("serialNumber"); + StringBuilder stringBuilder = new StringBuilder(); + if ("1".equals(operation)) { + if (CutEnum.EN.getValue().equals(cut)) { + stringBuilder.append("Number ").append("").append(serialNumber).append("").append(", the current user can not maintain homologation progress."); + } else { + stringBuilder.append("编号").append("").append(serialNumber).append("").append(",当前用户没有维护认证进度权限。"); + } + + } else if("2".equals(operation)) { + if (CutEnum.EN.getValue().equals(cut)) { + stringBuilder.append("Number ").append("").append(serialNumber).append("").append(", the current user can not modify current status."); + } else { + stringBuilder.append("编号").append("").append(serialNumber).append("").append(",当前用户没有修改状态权限。"); + } + + } + + msgList.add(stringBuilder.toString()); + } + + return msgList; + } + /** * 创建任务清单列表数据 * @param projectTaskInventoryEOList diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/vo/ConditionAssessmentVO.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/vo/ConditionAssessmentVO.java new file mode 100644 index 000000000..21bf266c1 --- /dev/null +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/vo/ConditionAssessmentVO.java @@ -0,0 +1,15 @@ +package com.jero.modules.project.vo; + +import lombok.Data; + +@Data +public class ConditionAssessmentVO { + + private String cut; + + // 当前状态 + private String projectLawsInventoryIds; + private String roleCodes; + private String conditionAssessment; + private String remark; +} diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/vo/ProjectTaskInventoryVO.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/vo/ProjectTaskInventoryVO.java new file mode 100644 index 000000000..321895fd8 --- /dev/null +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/project/vo/ProjectTaskInventoryVO.java @@ -0,0 +1,18 @@ +package com.jero.modules.project.vo; + +import lombok.Data; + +@Data +public class ProjectTaskInventoryVO { + + private String cut; + + // 认证进度 + private String ids; + private String projectLawsInventoryIds; + private String roleCodes; + private String certificationProgress; + private String certificationProgressRemark; + + private String operation; // 1-维护进度,2-修改状态 +} diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/report/service/impl/LawsMonthlyReportManageEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/report/service/impl/LawsMonthlyReportManageEOServiceImpl.java index 1947159ab..c9f25752b 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/report/service/impl/LawsMonthlyReportManageEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/report/service/impl/LawsMonthlyReportManageEOServiceImpl.java @@ -146,7 +146,7 @@ public class LawsMonthlyReportManageEOServiceImpl extends ServiceImpl fieldList = new ArrayList<>(); fieldList.add("title");//权重5 fieldList.add("content");//权重4 -// fieldList.add("problem_type");//权重3 -// fieldList.add("target_market"); //权重2 - fieldList.add("module_type"); - fieldList.add("id"); - fieldList.add("flag"); + //fieldList.add("module_type"); + //fieldList.add("id"); + //fieldList.add("flag"); JSONArray queryMapJson = new JSONArray(); + JSONArray queryMapInputJson = new JSONArray(); JSONArray queryMapJsonTwo = new JSONArray(); JSONArray queryMapJsonThree = new JSONArray(); - JSONArray queryMapJsonProblemType = new JSONArray(); - JSONArray queryMapJsonTargetMarket = new JSONArray(); JSONArray queryMapJsonAll = new JSONArray(); + //基础查询权限,展示权限为公开的,所有人都能查看,展示权限为私密的,只有配置了权限的用户可以查看。 + if("base".equals("base")){ + JSONArray queryMapJsonBase = new JSONArray(); + + this.createQueryWhere(ShowPermissionsEnum.OPEN.getValue(),"show_permissions",queryMapJsonBase); + + JSONObject jsonObject = jeroElasticsearchTemplate.buildBoolQuery(null, null, queryMapJsonBase); + queryMapJsonAll.add(jsonObject); + } + Map mapHighlight = new HashMap<>(); Map mapHighlight1 = new HashMap<>(); //封装首次的条件 @@ -1124,14 +1145,19 @@ public class DocumentSearchServiceImpl implements IDocumentSearchService { map3.put("boost",0.01); }else if("content".equals(field)){ map3.put("boost",0.01); - }else if("file_name".equals(field)){ - map3.put("boost",1); } - - map3.put("query",selectValue); - map2.put(field, map3); - map4.put("match",map2); - queryMapJson.add(map4); + //特殊处理标题字段 + if (field.equals("title")){ + // map2放最内层 + map2.put(field, "*" + selectValue + "*"); + // map4放query + map4.put("wildcard",map2); + } else { + map3.put("query",selectValue); + map2.put(field, map3); + map4.put("match",map2); + } + queryMapInputJson.add(map4); //高亮 if(!"flag".equals(field)){ @@ -1143,41 +1169,23 @@ public class DocumentSearchServiceImpl implements IDocumentSearchService { //封装问题类型选择框查询条件。 if (StringUtils.isNotBlank(problem_type)) { - Map map2 = new HashMap<>(); - Map map3 = new HashMap<>(); - Map map4 = new HashMap<>(); - - map3.put("query",problem_type); - map2.put("problem_type", map3); - map4.put("match",map2); - queryMapJson.add(map4); - //高亮 - highlight(mapHighlight, problem_type); - - mapHighlight1.put("fields",mapHighlight); + this.createQueryWhere(problem_type,"problem_type",queryMapJson); } //封装市场选择框查询条件。 if (StringUtils.isNotBlank(target_market)) { - Map map2 = new HashMap<>(); - Map map3 = new HashMap<>(); - Map map4 = new HashMap<>(); - - map3.put("query",target_market); - map2.put("target_market", map3); - map4.put("match",map2); - queryMapJson.add(map4); - //高亮 - highlight(mapHighlight, target_market); - - mapHighlight1.put("fields",mapHighlight); + this.createQueryWhere(target_market,"target_market",queryMapJson); } - if(CollectionUtils.isNotEmpty(queryMapJson)){ - JSONObject jsonObject = jeroElasticsearchTemplate.buildBoolQuery(null, null, queryMapJson); + JSONObject jsonObject = jeroElasticsearchTemplate.buildBoolQuery(queryMapJson, null, null); queryMapJsonAll.add(jsonObject); } + if(CollectionUtils.isNotEmpty(queryMapInputJson)){ + JSONObject jsonObject = jeroElasticsearchTemplate.buildBoolQuery(null, null, queryMapInputJson); + queryMapJsonAll.add(jsonObject); + } + //封装二次的条件 if (StringUtils.isNotBlank(selectValueTwo)) { for (String field : fieldList) { @@ -1190,13 +1198,10 @@ public class DocumentSearchServiceImpl implements IDocumentSearchService { map3.put("boost",0.01); }else if("content".equals(field)){ map3.put("boost",0.01); - }else if("file_name".equals(field)){ - map3.put("boost",1); } //特殊处理编号字段 map3.put("query",selectValueTwo); -// map3.put("minimum_should_match",2); map2.put(field, map3); queryMap.put("match", map2); @@ -1237,20 +1242,20 @@ public class DocumentSearchServiceImpl implements IDocumentSearchService { Integer pageNo = Integer.parseInt(map.get("pageNo").toString()); Integer pageSize = Integer.parseInt(map.get("pageSize").toString()); IPage page = this.getProblemKnowledgeBasePage(selectValue, selectValueTwo, queryMapJsonAll, mapHighlight1,null, - pageNo, pageSize, null,(String) map.get("cut"),sort,queryJsonMustNot); + pageNo, pageSize, null,(String) map.get("cut"),sort,queryJsonMustNot,queryShould); return page; } @NotNull private IPage getProblemKnowledgeBasePage(String selectValue, String selectValueTwo, JSONArray queryMapJson,Map highlightMap, JSONArray should, Integer pageNo, Integer pageSize, String paragraphFlag, - String cut,JSONObject querySort,JSONArray queryMustNot) { + String cut,JSONObject querySort,JSONArray queryMustNot,JSONArray queryShould) { JSONObject jsonObject = new JSONObject(); //基础添加封装 if ("paragraphFlag".equals(paragraphFlag)) { - jsonObject = jeroElasticsearchTemplate.buildBoolQuery(queryMapJson, queryMustNot, null); + jsonObject = jeroElasticsearchTemplate.buildBoolQuery(queryMapJson, queryMustNot, queryShould); } else { - jsonObject = jeroElasticsearchTemplate.buildBoolQuery(queryMapJson, queryMustNot, null); + jsonObject = jeroElasticsearchTemplate.buildBoolQuery(queryMapJson, queryMustNot, queryShould); } JSONArray jsonArraySort = new JSONArray(); jsonArraySort.add(querySort); @@ -1291,10 +1296,10 @@ public class DocumentSearchServiceImpl implements IDocumentSearchService { mapSource.put(key,fieldConyent); } //如果这一条数据中有高亮字段值,但是file_text中没有高亮值, 则赋控制,否则列表中会展示所有的文件内容, 赋空后,则展示基础数据 - String fileText = (String) mapSource.get("content"); + /*String fileText = (String) mapSource.get("content"); if(StringUtils.isNotBlank(fileText) && !fileText.contains("")){ mapSource.put("content",""); - } + }*/ } mapList.add(mapSource); } @@ -1313,6 +1318,58 @@ public class DocumentSearchServiceImpl implements IDocumentSearchService { return page; } + /** + * 创建查询条件 + * @param queryValue 查询的值 + * @param fieldKey 查询的字段 + * @param jsonArray + */ + public void createQueryWhere (String queryValue,String fieldKey,JSONArray jsonArray){ + /** + * fieldKeyMap:字段keyMap,用于存 需要查询的字段 以及字段中的条件 "queryMap" + * queryMap:存放查询条件map + * matchMap:匹配Map + */ + Map fieldKeyMap = new HashMap<>(); + Map queryMap = new HashMap<>(); + Map matchMap = new HashMap<>(); + + queryMap.put("query", queryValue); + fieldKeyMap.put(fieldKey, queryMap); + matchMap.put("match",fieldKeyMap); + + // 如果是私密,并且查询字段key是展示权限 的话,查询当前用户拥有权限的问题知识库数据 + if(StringUtils.equals(fieldKey,"show_permissions")){ + //查询出当前登录人所拥有的问题知识库私密数据权限。 + LoginUser currentOperatorUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + QueryWrapper userPermissionQueryWrapper = new QueryWrapper<>(); + userPermissionQueryWrapper.lambda().eq(ProblemKnowledgeBaseUserEO::getUserId,currentOperatorUser.getId()); + List problemKnowledgeBaseUserEOList = this.problemKnowledgeBaseUserEOService.list(userPermissionQueryWrapper); + + if(CollectionUtils.isNotEmpty(problemKnowledgeBaseUserEOList)){ + List problemKnowledgeBaseIdList = problemKnowledgeBaseUserEOList.stream().map(ProblemKnowledgeBaseUserEO::getProblemKnowledgeBaseId).distinct().collect(Collectors.toList()); + + //in查询该用户拥有权限的问题知识库id。 + Map fieldKeyMap2 = new HashMap<>(); + Map matchMap2 = new HashMap<>(); + fieldKeyMap2.put("id", problemKnowledgeBaseIdList); + matchMap2.put("terms",fieldKeyMap2); + jsonArray.add(matchMap2); + }else { + Map fieldKeyMap2 = new HashMap<>(); + Map queryMap2 = new HashMap<>(); + Map matchMap2 = new HashMap<>(); + + queryMap2.put("query", "null"); + fieldKeyMap2.put("id", queryMap2); + matchMap2.put("match",fieldKeyMap2); + jsonArray.add(matchMap2); + } + } + + jsonArray.add(matchMap); + } + } diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/searchcenter/service/impl/LawsMonthlyReportSearchServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/searchcenter/service/impl/LawsMonthlyReportSearchServiceImpl.java index 55375d65b..54c828580 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/searchcenter/service/impl/LawsMonthlyReportSearchServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/searchcenter/service/impl/LawsMonthlyReportSearchServiceImpl.java @@ -64,12 +64,8 @@ public class LawsMonthlyReportSearchServiceImpl implements ILawsMonthlyReportSea String selectValueTwo = searchVO.getSelectValueTwo(); //1. 需要查询的字段 List fieldList = new ArrayList<>(); - fieldList.add("title");//权重5 - fieldList.add("file_text");//权重4 - fieldList.add("content");//权重3 - fieldList.add("file_name"); //权重2 - fieldList.add("module_type"); - fieldList.add("id"); + fieldList.add("title");//权重2 + fieldList.add("content");//权重1 fieldList.add("flag"); JSONArray queryMapJson = new JSONArray(); @@ -87,17 +83,21 @@ public class LawsMonthlyReportSearchServiceImpl implements ILawsMonthlyReportSea Map map4 = new HashMap<>(); if("title".equals(field)){ map3.put("boost",1); - }else if("file_text".equals(field)){ - map3.put("boost",0.01); }else if("content".equals(field)){ map3.put("boost",0.01); - }else if("file_name".equals(field)){ - map3.put("boost",1); } + // 标题字段 通配符模糊匹配 + if (field.equals("title")){ + // map2放最内层 + map2.put(field, "*" + selectValue + "*"); - map3.put("query",selectValue); - map2.put(field, map3); - map4.put("match",map2); + // map4放query + map4.put("wildcard",map2); + } else { + map3.put("query", selectValue); + map2.put(field, map3); + map4.put("match", map2); + } queryMapJson.add(map4); //高亮 @@ -119,19 +119,22 @@ public class LawsMonthlyReportSearchServiceImpl implements ILawsMonthlyReportSea Map map3 = new HashMap<>(); if("title".equals(field)){ map3.put("boost",1); - }else if("file_text".equals(field)){ - map3.put("boost",0.01); }else if("content".equals(field)){ map3.put("boost",0.01); - }else if("file_name".equals(field)){ - map3.put("boost",1); } - //特殊处理编号字段 - map3.put("query",selectValueTwo); + // 标题字段 通配符模糊匹配 + if (field.equals("title")){ + // map2放最内层 + map2.put(field, "*" + selectValueTwo + "*"); + // map4放query + queryMap.put("wildcard",map2); + } else { + map3.put("query", selectValueTwo); // map3.put("minimum_should_match",2); - map2.put(field, map3); - queryMap.put("match", map2); + map2.put(field, map3); + queryMap.put("match", map2); + } queryMapJsonTwo.add(queryMap); //高亮 @@ -190,8 +193,11 @@ public class LawsMonthlyReportSearchServiceImpl implements ILawsMonthlyReportSea } else { jsonObject = jeroElasticsearchTemplate.buildBoolQuery(queryMapJson, queryMustNot, null); } + JSONArray jsonArraySort = new JSONArray(); - jsonArraySort.add(querySort); + if (SEARCH_FLAG.equals(selectValue) && StringUtils.isEmpty(selectValueTwo)) { + jsonArraySort.add(querySort); + } //1. 条件,分页 JSONObject queryObject = jeroElasticsearchTemplate.buildQuery(null, diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/split/controller/SarFileSplitInfoController.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/split/controller/SarFileSplitInfoController.java index 3c447ac77..ee5b097cd 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/split/controller/SarFileSplitInfoController.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/split/controller/SarFileSplitInfoController.java @@ -1,6 +1,6 @@ package com.jero.modules.split.controller; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.jero.common.api.vo.Result; @@ -9,6 +9,7 @@ import com.jero.common.constant.enums.CutEnum; import com.jero.common.system.base.controller.JeroController; import com.jero.modules.document.service.IBussDocumentLibraryEOService; import com.jero.modules.lanswitch.service.ILanguageSwitchService; +import com.jero.modules.ocr.util.LineHumpUtil; import com.jero.modules.split.entity.SarFileSplitInfoEO; import com.jero.modules.split.page.SarFileSplitInfoEOPage; import com.jero.modules.split.service.ISarFileSplitInfoService; @@ -59,7 +60,7 @@ public class SarFileSplitInfoController extends JeroController queryPageList(SarFileSplitInfoEOPage sarFileSplitInfoEOPage) { - LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + QueryWrapper queryWrapper = new QueryWrapper<>(); if(StringUtils.isNotEmpty(sarFileSplitInfoEOPage.getSerialNumber())){ sarFileSplitInfoEOPage.setSerialNumber(sarFileSplitInfoEOPage.getSerialNumber().replace("%","\\%")); } @@ -67,13 +68,18 @@ public class SarFileSplitInfoController extends JeroController page = new Page(sarFileSplitInfoEOPage.getPageNo(), sarFileSplitInfoEOPage.getPageSize()); IPage pageList = sarFileSplitInfoService.page(page, queryWrapper); List rows = pageList.getRecords(); diff --git a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/split/service/impl/FileSplitItemsEOServiceImpl.java b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/split/service/impl/FileSplitItemsEOServiceImpl.java index 757e76a96..5e3a7e59d 100644 --- a/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/split/service/impl/FileSplitItemsEOServiceImpl.java +++ b/jero-boot/jero-boot-modules/src/main/java/com/jero/modules/split/service/impl/FileSplitItemsEOServiceImpl.java @@ -24,7 +24,6 @@ import com.jero.generater.modules.online.cgform.entity.OnlCgformField; import com.jero.generater.modules.online.cgform.service.impl.OnlCgformFieldServiceImpl; import com.jero.modules.document.enums.FieldTypeEnum; import com.jero.modules.document.service.IBussDocumentLibraryEOService; -import com.jero.modules.ocr.util.LineHumpUtil; import com.jero.modules.ocr.util.UUIDUtils; import com.jero.modules.oss.entity.OSSFile; import com.jero.modules.oss.service.IOSSFileService; @@ -72,7 +71,6 @@ import org.apache.poi.xssf.usermodel.XSSFSheet; import org.apache.poi.xssf.usermodel.XSSFWorkbook; import org.apache.shiro.SecurityUtils; import org.jetbrains.annotations.NotNull; -import org.jetbrains.annotations.Nullable; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.mock.web.MockMultipartFile; @@ -81,12 +79,10 @@ import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.multipart.MultipartFile; import sun.misc.BASE64Decoder; -import sun.misc.BASE64Encoder; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.*; -import java.nio.charset.StandardCharsets; import java.nio.file.Files; import java.nio.file.Paths; import java.nio.file.StandardOpenOption; @@ -792,6 +788,16 @@ public class FileSplitItemsEOServiceImpl extends ServiceImpl
- - - + + +
- + {{$t('NiONumber')}}
- - - - - - + +
- - - -
- +
{{$t('ParameterName')}}
- - - - - - + +
- - - -
- - {{ $t('query') }} - {{ $t('reset') }} - -
- - +
{{$t('areaOfResponsibility')}}
- - - - - - + + :triggerChange='false' :dictCode="'duty_territory'"/>
- - - - - - - -
- + + + {{ $t('query') }} + {{ $t('reset') }} + +
-
+
{{ $t('cancel') }} - {{ $t('submit') }} + {{ $t('submit') }}
\ No newline at end of file diff --git a/jero-web/src/components/TaskCutOffTime/index.vue b/jero-web/src/components/TaskCutOffTime/index.vue index 953e9aaa2..69b6313b3 100644 --- a/jero-web/src/components/TaskCutOffTime/index.vue +++ b/jero-web/src/components/TaskCutOffTime/index.vue @@ -286,6 +286,9 @@ export default { } \ No newline at end of file diff --git a/jero-web/src/views/businessSupport/problemKnowledgeBase/components/problemKnowledgeBaseList.vue b/jero-web/src/views/businessSupport/problemKnowledgeBase/components/problemKnowledgeBaseList.vue index ec476304d..e8efb5c01 100644 --- a/jero-web/src/views/businessSupport/problemKnowledgeBase/components/problemKnowledgeBaseList.vue +++ b/jero-web/src/views/businessSupport/problemKnowledgeBase/components/problemKnowledgeBaseList.vue @@ -365,14 +365,21 @@ ::v-deep .ant-tag { padding: 2px 4px; background: #9B9DA9; - color: #fff!important; + color: #fff !important; } - ::v-deep .ant-tag-checkable:not(.ant-tag-checkable-checked):hover{ - color: #fff!important; + + ::v-deep .ant-tag-checkable:not(.ant-tag-checkable-checked):hover { + color: #fff !important; } - ::v-deep .ant-tag-checkable-checked{ + + ::v-deep .ant-tag-checkable-checked { background: #21c9cc; } + + ::v-deep p { + margin: 0; + padding: 0; + } \ No newline at end of file diff --git a/jero-web/src/views/documentTools/searchCenter/components/problemKnowledgeBase.vue b/jero-web/src/views/documentTools/searchCenter/components/problemKnowledgeBase.vue index b66553e89..474298ff7 100644 --- a/jero-web/src/views/documentTools/searchCenter/components/problemKnowledgeBase.vue +++ b/jero-web/src/views/documentTools/searchCenter/components/problemKnowledgeBase.vue @@ -12,7 +12,7 @@ - + {{ item.problemLabel}} @@ -20,10 +20,10 @@
{{$t('market')}} - +
@@ -41,8 +41,8 @@
- -
  • + +
    - +
    + +
    - - -
    -
    -
    + + + + +
    +
    +
    -
  • +
    @@ -220,7 +222,9 @@ return words.replace(/\s/g, '') //这里是去除空格 }, getParagraphInfoList() { - let queryParamOne = Object.assign(this.queryParam, this.queryParamOne) + let queryParamIndex = JSON.parse(JSON.stringify(this.queryParam)) + let queryParamAdmin = JSON.parse(JSON.stringify(this.queryParamOne)) + let queryParamOne = Object.assign(queryParamIndex, queryParamAdmin) let queryParam = JSON.parse(JSON.stringify(queryParamOne)) Object.keys(queryParam).forEach(val => { if (queryParam[val] instanceof Array) { @@ -238,6 +242,12 @@ postAction(this.url.getParagraphInfoList, query).then((res) => { if (res.success) { this.conList = res.result.records + if (this.conList && this.conList.length > 0) { + this.conList.forEach(val => { + val.content = val.content.replace(//g, '') + val.content = val.content.replace(/<\/?p[^>]*>/gi, '') + }) + } this.total = res.result.total this.loading = false } else { @@ -428,16 +438,17 @@ .text-header { margin-bottom: 11px; + width: 100%; - span { + .text-header-text { font-size: 16px; font-weight: bold; color: #040B29; - display: inline-block; width: 100%; text-overflow: ellipsis; white-space: nowrap; overflow: hidden; + word-break: break-word; } } @@ -482,4 +493,18 @@ overflow: hidden; text-overflow: ellipsis; } + + ::v-deep p { + margin: 0; + padding: 0; + } + + .selectText { + width: 100%; + display: inline-block; + text-overflow: ellipsis; + white-space: nowrap; + overflow: hidden; + word-break: break-word; + } \ No newline at end of file diff --git a/jero-web/src/views/documentTools/searchCenter/components/whole.vue b/jero-web/src/views/documentTools/searchCenter/components/whole.vue index cc7d965e3..493f8d71c 100644 --- a/jero-web/src/views/documentTools/searchCenter/components/whole.vue +++ b/jero-web/src/views/documentTools/searchCenter/components/whole.vue @@ -8,9 +8,9 @@
  • -
    -
    +
    + + \ No newline at end of file diff --git a/jero-web/src/views/projectManagement/components/batchModel.vue b/jero-web/src/views/projectManagement/components/batchModel.vue new file mode 100644 index 000000000..fd18f1864 --- /dev/null +++ b/jero-web/src/views/projectManagement/components/batchModel.vue @@ -0,0 +1,180 @@ + + + + + + \ No newline at end of file diff --git a/jero-web/src/views/projectManagement/components/listEditModel.vue b/jero-web/src/views/projectManagement/components/listEditModel.vue index 460c504bd..38b7f34f6 100644 --- a/jero-web/src/views/projectManagement/components/listEditModel.vue +++ b/jero-web/src/views/projectManagement/components/listEditModel.vue @@ -808,7 +808,10 @@
    {{$t('cancel')}} - {{$t('submit')}} + + {{$t('submit')}} + + {{$t('confirm')}}
    diff --git a/jero-web/src/views/projectManagement/components/listOfRegulations.vue b/jero-web/src/views/projectManagement/components/listOfRegulations.vue index 7ad82c138..316af4691 100644 --- a/jero-web/src/views/projectManagement/components/listOfRegulations.vue +++ b/jero-web/src/views/projectManagement/components/listOfRegulations.vue @@ -1263,11 +1263,15 @@ if (this.dataSource[i].id == selectedRowKeys[j]) { if (this.dataSource[i].taskAffirmStatus == 'Accepted' || (this.dataSource[i].inventoryAffirmStatus == 'Accepted' && this.dataSource[i].taskAffirmStatus == 'Accepted') || - (this.dataSource[i].inventoryAffirmStatus == 'Accepted' && this.dataSource[i].taskAffirmStatus == 'Not started')) { + (this.dataSource[i].inventoryAffirmStatus == 'Rejected' && this.dataSource[i].taskAffirmStatus == 'Accepted') || + (this.dataSource[i].inventoryAffirmStatus == 'Accepted' && this.dataSource[i].taskAffirmStatus == 'Rejected') || + (this.dataSource[i].inventoryAffirmStatus == 'Rejected' && this.dataSource[i].taskAffirmStatus == 'Rejected') || + (this.dataSource[i].inventoryAffirmStatus == 'Accepted' && this.dataSource[i].taskAffirmStatus == 'Not started') || + (this.dataSource[i].inventoryAffirmStatus == 'Rejected' && this.dataSource[i].taskAffirmStatus == 'Not started')) { isTrue = true } else { isTrue = false - this.$message.warning(this.$t('onlyTheDataWhoseStatusNotInitiatedAcceptedChanged')) + this.$message.warning(this.$t('theTaskConfirmationStatusCannot')) return } } diff --git a/jero-web/src/views/projectManagement/projectStatusBoard/components/TaskPlanList.vue b/jero-web/src/views/projectManagement/projectStatusBoard/components/TaskPlanList.vue index 738675ff3..ea6f263f7 100644 --- a/jero-web/src/views/projectManagement/projectStatusBoard/components/TaskPlanList.vue +++ b/jero-web/src/views/projectManagement/projectStatusBoard/components/TaskPlanList.vue @@ -30,45 +30,48 @@
    -
    -
    - {{item.projectName}} -
    +
    +
    {{item}}
    -
    -
    -
    {{item}}
    +
    +
    +
    + {{item.projectName}} +
    -
    -
    -
    -
    +
    +
    +
    +
    +
    -
    {{val.name}}
    -
    {{val.name}}
    - - - - - - - +
    {{val.name}}
    +
    {{val.name}} +
    + + + + + + + +
    +
    +
    +
    + {{handlingTime}}
    -
    -
    - {{handlingTime}} -
    -
    +
    {{this.$t('dataLoading')}}
    @@ -299,8 +302,8 @@ let num = Math.ceil(clientWidthOne / 31) * parseInt(this.handlingTime.slice(8, 10)) timeList.forEach((res, index) => { if (res.slice(0, 7) == this.handlingTime.slice(0, 7)) { - contentRightText[0].style = 'left:' + ((clientWidthOne * index + num) - 24) + 'px;' + 'display:block' - contentRightXian[0].style = 'left:' + ((clientWidthOne * index + num) + 10) + 'px;' + 'display:block' + contentRightText[0].style = 'left:' + ((clientWidthOne * index + num) - 28) + 'px;' + 'display:block' + contentRightXian[0].style = 'left:' + ((clientWidthOne * index + num) + 6) + 'px;' + 'display:block' } }) @@ -384,7 +387,7 @@ width: 100%; height: calc(100vh - 160px); margin-bottom: 20px; - padding: 25px 50px 10px 20px; + padding: 0 50px 10px 20px; box-sizing: border-box; overflow: auto; } @@ -417,12 +420,13 @@ width: 300px; margin-top: -4px; margin-right: 20px; + margin-bottom: 10px; } .box-top-content-left { width: 140px; float: left; - padding-top: 100px; + padding-top: 68px; margin-right: 20px; } @@ -447,6 +451,12 @@ display: flex; flex-direction: row; justify-content: space-between; + position: sticky; + top: 0; + background: #fff; + z-index: 100; + padding-top: 25px; + padding-left: 160px; } .box-top-content-right-top-text { @@ -506,7 +516,8 @@ left: 50%; transform: translate(-50%, -50%); } - .process-content-right-button{ + + .process-content-right-button { font-size: 12px; color: #040B29; width: 75px; @@ -518,6 +529,7 @@ left: 50%; transform: translate(-50%, -50%); } + .process-content-right-button { width: 75px; font-size: 12px; @@ -555,5 +567,6 @@ font-weight: bold; font-size: 14px; width: 100px; + z-index: 101; } \ No newline at end of file diff --git a/jero-web/src/views/projectManagement/projectStatusBoard/index.vue b/jero-web/src/views/projectManagement/projectStatusBoard/index.vue index 6332b145c..0492867a4 100644 --- a/jero-web/src/views/projectManagement/projectStatusBoard/index.vue +++ b/jero-web/src/views/projectManagement/projectStatusBoard/index.vue @@ -56,45 +56,47 @@
    -
    -
    - {{item.projectName}} -
    +
    +
    {{item}}
    -
    -
    -
    {{item}}
    +
    +
    +
    + {{item.projectName}} +
    -
    -
    -
    -
    -
    {{val.name}}
    -
    {{val.name}}
    - - - - - - +
    +
    +
    +
    +
    +
    {{val.name}}
    +
    {{val.name}} +
    + + + + + + - + +
    +
    +
    +
    + {{handlingTime}}
    -
    -
    - {{handlingTime}} -
    -
    {{this.$t('dataLoading')}}
    @@ -308,8 +310,8 @@ }, getTimeline() { let query = { - startTime: this.startTime || this.getNewDate('before',6), - endTime: this.endTime || this.getNewDate('after',5), + startTime: this.startTime || this.getNewDate('before', 6), + endTime: this.endTime || this.getNewDate('after', 5), ...this.queryParam } this.loadingMain = true @@ -341,8 +343,8 @@ }, getTimelineList(time) { let query = { - startTime: this.startTime || this.getNewDate('before',6), - endTime: this.endTime || this.getNewDate('after',5), + startTime: this.startTime || this.getNewDate('before', 6), + endTime: this.endTime || this.getNewDate('after', 5), ...this.queryParam } getAction(this.url.timelineList, query).then((res) => { @@ -529,7 +531,7 @@ width: 100%; height: 500px; margin-bottom: 20px; - padding: 20px 58px 20px 10px; + padding: 0 58px 20px 10px; box-sizing: border-box; overflow: auto; } @@ -572,7 +574,7 @@ .box-top-content-left { width: 140px; float: left; - padding-top: 100px; + padding-top: 57px; margin-right: 20px; } @@ -597,6 +599,12 @@ display: flex; flex-direction: row; justify-content: space-between; + position: sticky; + top: 0; + background: #fff; + z-index: 100; + padding-top: 20px; + padding-left: 160px; } .box-top-content-right-top-text { @@ -620,7 +628,7 @@ .box-top-content-right-bottom { position: relative; - padding-top: 60px; + padding-top: 50px; } .process-content { @@ -657,18 +665,20 @@ left: 50%; transform: translate(-50%, -50%); } - .process-content-right-button{ - font-size: 12px; - color: #040B29; - width: 75px; - background: #fff; - display: inline-block; - overflow: hidden; - position: absolute; - top: 12px; - left: 50%; - transform: translate(-50%, -50%); - } + + .process-content-right-button { + font-size: 12px; + color: #040B29; + width: 75px; + background: #fff; + display: inline-block; + overflow: hidden; + position: absolute; + top: 12px; + left: 50%; + transform: translate(-50%, -50%); + } + .process-content-right-button { width: 75px; font-size: 12px; @@ -706,5 +716,6 @@ font-weight: bold; font-size: 14px; width: 100px; + z-index: 101; } \ No newline at end of file diff --git a/jero-web/src/views/system/UserAnnouncementList.vue b/jero-web/src/views/system/UserAnnouncementList.vue index e7ac57559..7a000da26 100644 --- a/jero-web/src/views/system/UserAnnouncementList.vue +++ b/jero-web/src/views/system/UserAnnouncementList.vue @@ -105,7 +105,7 @@ '1': this.$t('SubscriptionNotification'), '2': this.$t('warningInformation'), '3': this.$t('ForwardPush'), - '4': this.$t('authenticationMessage'), + '4': this.$t('CollectinguthenticationParameters'), // '6':this.$t('RegulationListConfirmationTask'), // '7':this.$t('RegulationListConfirmationNotification'), // '8':this.$t('RegulationTaskConfirmation'),