Merge remote-tracking branch 'origin/dev_third_stage' into dev_third_stage
@@ -824,21 +824,21 @@ CREATE TABLE `sar_file_compare_res_comment` (
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
||||
|
||||
-- 法规技术评估-条款信息评估结果表 字段增加长度 2022-08-08
|
||||
-- 法规技术评估-条款信息评估结果表 字段增加长度 2022-08-11 已同步生产环境
|
||||
ALTER TABLE `laws_weilai`.`laws_technology_evaluation_item_result`
|
||||
MODIFY COLUMN `technical_file_name` varchar(2000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '技术文件名称' AFTER `evaluation_methods`,
|
||||
MODIFY COLUMN `section` varchar(2000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '章节' AFTER `technical_file_name`;
|
||||
-- 问题知识库 字段长度修改 2022-08-08
|
||||
-- 问题知识库 字段长度修改 2022-08-11 已同步生产环境
|
||||
ALTER TABLE `laws_weilai`.`problem_knowledge_base`
|
||||
MODIFY COLUMN `buss_document_library_id` varchar(4000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '文档库id' AFTER `target_market`,
|
||||
MODIFY COLUMN `stand_number` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '标准编号' AFTER `buss_document_library_id`,
|
||||
MODIFY COLUMN `stand_title` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '标准标题' AFTER `stand_number`;
|
||||
|
||||
-- 问题知识库 字段类型修改 2022-08-09
|
||||
-- 问题知识库 字段类型修改 2022-08-11 已同步生产环境
|
||||
ALTER TABLE `laws_weilai`.`problem_knowledge_base`
|
||||
MODIFY COLUMN `content` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '内容(正文)' AFTER `stand_title`;
|
||||
|
||||
-- 国家与国旗关系表 2022-08-09
|
||||
-- 国家与国旗关系表 2022-08-11 已同步生产环境
|
||||
CREATE TABLE `laws_weilai`.`country_national_flag` (
|
||||
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
|
||||
`create_by` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '创建人',
|
||||
@@ -852,7 +852,7 @@ CREATE TABLE `laws_weilai`.`country_national_flag` (
|
||||
`national_flag_url` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '国旗url',
|
||||
PRIMARY KEY (`id`) USING BTREE
|
||||
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '国家与国旗中间表' ROW_FORMAT = Dynamic;
|
||||
-- 初始化数据 2022-08-10
|
||||
-- 初始化数据 2022-08-11 已同步生产环境
|
||||
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 ('1', NULL, NULL, NULL, NULL, NULL, '欧盟', 'EU', NULL, '/jero-boot/nationalFlag/EU.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 ('10', NULL, NULL, NULL, NULL, NULL, '美国', 'US', NULL, '/jero-boot/nationalFlag/US.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 ('11', NULL, NULL, NULL, NULL, NULL, '澳大利亚', 'Australia', NULL, '/jero-boot/nationalFlag/Australia.png');
|
||||
@@ -867,22 +867,22 @@ INSERT INTO `laws_weilai`.`country_national_flag` (`id`, `create_by`, `create_ti
|
||||
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 ('8', NULL, NULL, NULL, NULL, NULL, '海湾地区', 'GCC', NULL, '海湾地区.jpg');
|
||||
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 ('9', NULL, NULL, NULL, NULL, NULL, '阿联酋', 'UAE', NULL, '/jero-boot/nationalFlag/UAE.png');
|
||||
|
||||
-- 法规意见收集-评估结果表字段长度调整 2022-08-11
|
||||
-- 法规意见收集-评估结果表字段长度调整 2022-08-11 已同步生产环境
|
||||
ALTER TABLE `laws_weilai`.`laws_opinion_assessment_result`
|
||||
MODIFY COLUMN `related_section` varchar(2000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '相关章节' AFTER `laws_opinion_gather_id`,
|
||||
MODIFY COLUMN `issue_or_suggest` varchar(2000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '问题/建议' AFTER `related_section`;
|
||||
-- 法规技术评估-评估结果表 字段长度调整 2022-08-11
|
||||
-- 法规技术评估-评估结果表 字段长度调整 2022-08-11 已同步生产环境
|
||||
ALTER TABLE `laws_weilai`.`laws_technology_evaluation_result`
|
||||
MODIFY COLUMN `issue_or_suggest` varchar(2000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '问题/建议' AFTER `related_section`,
|
||||
MODIFY COLUMN `reason` varchar(2000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '理由' AFTER `issue_or_suggest`;
|
||||
|
||||
|
||||
-- 展示区域 英文修改 2022-08-11
|
||||
-- 展示区域 英文修改 2022-08-11 已同步生产环境
|
||||
UPDATE `laws_weilai`.`onl_cgform_area` SET `en_name` = 'Relevant Information' WHERE `id` = '1492408622838222850';
|
||||
UPDATE `laws_weilai`.`onl_cgform_area` SET `en_name` = 'General Information' WHERE `id` = '1499657602378825729';
|
||||
UPDATE `laws_weilai`.`onl_cgform_area` SET `en_name` = 'Document Files' WHERE `id` = '1499658880093847553';
|
||||
|
||||
-- 数据字典 英文修改 2022-08-11
|
||||
-- 数据字典 英文修改 2022-08-11 已同步生产环境
|
||||
-- 同步情况 sync_state
|
||||
UPDATE `laws_weilai`.`sys_dict_item` SET `en_name` = 'No' WHERE `id` = '1507311752583352322';
|
||||
UPDATE `laws_weilai`.`sys_dict_item` SET `en_name` = 'Yes' WHERE `id` = '1507311835571851265';
|
||||
@@ -899,7 +899,7 @@ UPDATE `laws_weilai`.`sys_dict_item` SET `en_name` = 'Development' WHERE `id` =
|
||||
UPDATE `laws_weilai`.`sys_dict_item` SET `en_name` = 'Production' WHERE `id` = '1513769467044179970';
|
||||
|
||||
|
||||
-- 表字段 英文修改 2022-08-11
|
||||
-- 表字段 英文修改 2022-08-11 已同步生产环境
|
||||
-- OCR识别转换记录表
|
||||
UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'Conversion Result' WHERE `id` = '6b29f1c0e03533bb380c5ead03195785';
|
||||
UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'Conversion Time' WHERE `id` = '85894f5ad04de66ccf45ebd96c97b534';
|
||||
@@ -917,13 +917,35 @@ UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'Item No.' WHER
|
||||
UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'Item Name' WHERE `id` = '9e91b704de198ccf2f5fb7297e675404';
|
||||
UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'Item Content' WHERE `id` = '120a92b6d595c2fd68d2b90278357ce4';
|
||||
UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'Technical Field' WHERE `id` = 'ccf68e6578a0a446a6ac34018f0a477d';
|
||||
-- 文档库信息表 2022-08-12
|
||||
-- 文档库信息表 2022-08-12 已同步生产环境
|
||||
UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'Standard Type' WHERE `id` = '441588d80cc31ce68fbdf2ce8b36f93c';
|
||||
UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'Area' WHERE `id` = '9f82d58f22a12792a53e202d64a39f06';
|
||||
-- 参数项收集清单 2022-08-12
|
||||
-- 参数项收集清单 2022-08-12 已同步生产环境
|
||||
UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'Para Batch' WHERE `id` = '161c35a16e92682972dd1aeb26151fa2';
|
||||
UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'Para Name' WHERE `id` = 'e586bd87d4d826ce3d7d373caf54c6f6';
|
||||
UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'Status' WHERE `id` = '9050dc65a7b2fe82927b74a9ef4a4bb4';
|
||||
UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'Responsible Field' WHERE `id` = 'ed57f77975218560b37ea497a20109c6';
|
||||
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
|
||||
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');
|
||||
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 ('17', NULL, NULL, NULL, NULL, NULL, '俄国', 'Russia', NULL, '/jero-boot/nationalFlag/Russia.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 ('18', NULL, NULL, NULL, NULL, NULL, '菲律宾', 'Philippines', NULL, '/jero-boot/nationalFlag/Philippines.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 ('19', NULL, NULL, NULL, NULL, NULL, '加拿大', 'Canada', NULL, '/jero-boot/nationalFlag/Canada.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 ('20', NULL, NULL, NULL, NULL, NULL, '墨西哥', 'Mexico', NULL, '/jero-boot/nationalFlag/Mexico.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 ('21', NULL, NULL, NULL, NULL, NULL, '挪威', 'Norway', NULL, '/jero-boot/nationalFlag/Norway.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 ('22', NULL, NULL, NULL, NULL, NULL, '泰国', 'Thailand', NULL, '/jero-boot/nationalFlag/Thailand.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 ('23', NULL, NULL, NULL, NULL, NULL, '印度', 'Hindustan', NULL, '/jero-boot/nationalFlag/Hindustan.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 ('24', NULL, NULL, NULL, NULL, NULL, '印尼', 'Indonesia', NULL, '/jero-boot/nationalFlag/Indonesia.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 ('25', NULL, NULL, NULL, NULL, NULL, '越南', 'Vietnam', NULL, '/jero-boot/nationalFlag/Vietnam.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 ('26', NULL, NULL, NULL, NULL, NULL, '智利', 'Chile', NULL, '/jero-boot/nationalFlag/Chile.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 ('27', NULL, NULL, NULL, NULL, NULL, '中国香港', 'Hong Kong China', NULL, '/jero-boot/nationalFlag/HongKongChina.png');
|
||||
-- 删除之前的3中国香港 和8海湾地区
|
||||
delete from country_national_flag where id in ('3','8');
|
||||
|
||||
-- 法规流程历史表增加字段 审批意见 2022-08-16
|
||||
ALTER TABLE `laws_weilai`.`laws_process_history`
|
||||
ADD COLUMN `approval_opinion` varchar(2000) NULL COMMENT '审批意见' AFTER `flow_type`;
|
||||
|
||||
@@ -36,6 +36,7 @@ import com.jero.modules.cert.report.service.*;
|
||||
import com.jero.modules.cert.template.entity.CertCategoryParamsInfoPublishEO;
|
||||
import com.jero.modules.cert.template.entity.ParamsInfoPublishEO;
|
||||
import com.jero.modules.cert.template.enums.ControlTypeEnum;
|
||||
import com.jero.modules.cert.template.enums.ParamsIsMustEnum;
|
||||
import com.jero.modules.cert.template.service.ICertCategoryParamsInfoPublishEOService;
|
||||
import com.jero.modules.cert.template.service.IParamsInfoPublishEOService;
|
||||
import com.jero.modules.feishu.service.IFeishuService;
|
||||
@@ -528,147 +529,196 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
|
||||
} else if (ControlTypeEnum.TEXT_PULL_SINGLE.getValue().equals(controlType)) {
|
||||
|
||||
ParamsConfigDataVO textConfigDataVO = new ParamsConfigDataVO();
|
||||
ParamsConfigDataVO pullConfigDataVO = new ParamsConfigDataVO();
|
||||
|
||||
if (ParamsIsMustEnum.YES.getValue().equals(paramsCollectManifestEO.getIsMust())) {
|
||||
pullConfigDataVO.setIsMust(ParamsIsMustEnum.YES.getValue());
|
||||
textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue());
|
||||
} else {
|
||||
pullConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue());
|
||||
textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue());
|
||||
}
|
||||
|
||||
textConfigDataVO.setType(ConfigDataTypeEnum.TEXT.getValue());
|
||||
textConfigDataVO.setIsMust(paramsCollectManifestEO.getIsMust());
|
||||
textConfigDataVO.setIsLock(paramsConfigEO.getIsLock());
|
||||
textConfigDataVO.setControlVerify(paramsCollectManifestEO.getControlVerify());
|
||||
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getTextData())) {
|
||||
textConfigDataVO.setDataValue(paramsConfigDataEO.getTextData());
|
||||
}
|
||||
paramsConfigDataVOList.add(textConfigDataVO);
|
||||
|
||||
ParamsConfigDataVO pullConfigDataVO = new ParamsConfigDataVO();
|
||||
pullConfigDataVO.setType(ConfigDataTypeEnum.PULL.getValue());
|
||||
pullConfigDataVO.setIsMust(paramsCollectManifestEO.getIsMust());
|
||||
pullConfigDataVO.setIsLock(paramsConfigEO.getIsLock());
|
||||
pullConfigDataVO.setControlValue(getControlValueMapList(paramsCollectManifestEO.getControlValues()));
|
||||
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getPullData())) {
|
||||
pullConfigDataVO.setDataValue(paramsConfigDataEO.getPullData());
|
||||
}
|
||||
|
||||
paramsConfigDataVOList.add(pullConfigDataVO);
|
||||
paramsConfigDataVOList.add(textConfigDataVO);
|
||||
|
||||
} else if (ControlTypeEnum.TEXT_PULL_MORE.getValue().equals(controlType)) {
|
||||
|
||||
ParamsConfigDataVO textConfigDataVO = new ParamsConfigDataVO();
|
||||
ParamsConfigDataVO pullMoreConfigDataVO = new ParamsConfigDataVO();
|
||||
|
||||
if (ParamsIsMustEnum.YES.getValue().equals(paramsCollectManifestEO.getIsMust())) {
|
||||
pullMoreConfigDataVO.setIsMust(ParamsIsMustEnum.YES.getValue());
|
||||
textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue());
|
||||
} else {
|
||||
pullMoreConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue());
|
||||
textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue());
|
||||
}
|
||||
|
||||
textConfigDataVO.setType(ConfigDataTypeEnum.TEXT.getValue());
|
||||
textConfigDataVO.setIsMust(paramsCollectManifestEO.getIsMust());
|
||||
textConfigDataVO.setIsLock(paramsConfigEO.getIsLock());
|
||||
textConfigDataVO.setControlVerify(paramsCollectManifestEO.getControlVerify());
|
||||
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getTextData())) {
|
||||
textConfigDataVO.setDataValue(paramsConfigDataEO.getTextData());
|
||||
}
|
||||
paramsConfigDataVOList.add(textConfigDataVO);
|
||||
|
||||
ParamsConfigDataVO pullMoreConfigDataVO = new ParamsConfigDataVO();
|
||||
pullMoreConfigDataVO.setType(ConfigDataTypeEnum.PULL_MORE.getValue());
|
||||
pullMoreConfigDataVO.setIsMust(paramsCollectManifestEO.getIsMust());
|
||||
pullMoreConfigDataVO.setIsLock(paramsConfigEO.getIsLock());
|
||||
pullMoreConfigDataVO.setControlValue(getControlValueMapList(paramsCollectManifestEO.getControlValues()));
|
||||
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getPullData())) {
|
||||
pullMoreConfigDataVO.setDataValue(paramsConfigDataEO.getPullData());
|
||||
}
|
||||
|
||||
paramsConfigDataVOList.add(pullMoreConfigDataVO);
|
||||
paramsConfigDataVOList.add(textConfigDataVO);
|
||||
|
||||
} else if (ControlTypeEnum.TEXT_FILE.getValue().equals(controlType)) {
|
||||
|
||||
ParamsConfigDataVO textConfigDataVO = new ParamsConfigDataVO();
|
||||
ParamsConfigDataVO fileConfigDataVO = new ParamsConfigDataVO();
|
||||
|
||||
if (ParamsIsMustEnum.YES.getValue().equals(paramsCollectManifestEO.getIsMust())) {
|
||||
textConfigDataVO.setIsMust(ParamsIsMustEnum.YES.getValue());
|
||||
fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue());
|
||||
} else {
|
||||
textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue());
|
||||
fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue());
|
||||
}
|
||||
|
||||
textConfigDataVO.setType(ConfigDataTypeEnum.TEXT.getValue());
|
||||
textConfigDataVO.setIsMust(paramsCollectManifestEO.getIsMust());
|
||||
textConfigDataVO.setIsLock(paramsConfigEO.getIsLock());
|
||||
textConfigDataVO.setControlVerify(paramsCollectManifestEO.getControlVerify());
|
||||
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getTextData())) {
|
||||
textConfigDataVO.setDataValue(paramsConfigDataEO.getTextData());
|
||||
}
|
||||
paramsConfigDataVOList.add(textConfigDataVO);
|
||||
|
||||
ParamsConfigDataVO fileConfigDataVO = new ParamsConfigDataVO();
|
||||
fileConfigDataVO.setType(ConfigDataTypeEnum.FILE.getValue());
|
||||
fileConfigDataVO.setIsMust(paramsCollectManifestEO.getIsMust());
|
||||
fileConfigDataVO.setIsLock(paramsConfigEO.getIsLock());
|
||||
fileConfigDataVO.setTemplateId(templateId);
|
||||
fileConfigDataVO.setTemplateName(templateName);
|
||||
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getFileConnectId())) {
|
||||
fileConfigDataVO.setDataValue(paramsConfigDataEO.getFileConnectId());
|
||||
}
|
||||
|
||||
paramsConfigDataVOList.add(textConfigDataVO);
|
||||
paramsConfigDataVOList.add(fileConfigDataVO);
|
||||
|
||||
} else if (ControlTypeEnum.PULL_SINGLE_FILE.getValue().equals(controlType)) {
|
||||
|
||||
ParamsConfigDataVO pullConfigDataVO = new ParamsConfigDataVO();
|
||||
ParamsConfigDataVO fileConfigDataVO = new ParamsConfigDataVO();
|
||||
|
||||
if (ParamsIsMustEnum.YES.getValue().equals(paramsCollectManifestEO.getIsMust())) {
|
||||
pullConfigDataVO.setIsMust(ParamsIsMustEnum.YES.getValue());
|
||||
fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue());
|
||||
} else {
|
||||
pullConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue());
|
||||
fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue());
|
||||
}
|
||||
|
||||
pullConfigDataVO.setType(ConfigDataTypeEnum.PULL.getValue());
|
||||
pullConfigDataVO.setIsMust(paramsCollectManifestEO.getIsMust());
|
||||
pullConfigDataVO.setIsLock(paramsConfigEO.getIsLock());
|
||||
pullConfigDataVO.setControlValue(getControlValueMapList(paramsCollectManifestEO.getControlValues()));
|
||||
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getPullData())) {
|
||||
pullConfigDataVO.setDataValue(paramsConfigDataEO.getPullData());
|
||||
}
|
||||
paramsConfigDataVOList.add(pullConfigDataVO);
|
||||
|
||||
ParamsConfigDataVO fileConfigDataVO = new ParamsConfigDataVO();
|
||||
fileConfigDataVO.setType(ConfigDataTypeEnum.FILE.getValue());
|
||||
fileConfigDataVO.setIsMust(paramsCollectManifestEO.getIsMust());
|
||||
fileConfigDataVO.setIsLock(paramsConfigEO.getIsLock());
|
||||
fileConfigDataVO.setTemplateId(templateId);
|
||||
fileConfigDataVO.setTemplateName(templateName);
|
||||
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getFileConnectId())) {
|
||||
fileConfigDataVO.setDataValue(paramsConfigDataEO.getFileConnectId());
|
||||
}
|
||||
|
||||
paramsConfigDataVOList.add(pullConfigDataVO);
|
||||
paramsConfigDataVOList.add(fileConfigDataVO);
|
||||
|
||||
} else if (ControlTypeEnum.PULL_MORE_FILE.getValue().equals(controlType)) {
|
||||
|
||||
ParamsConfigDataVO pullMoreConfigDataVO = new ParamsConfigDataVO();
|
||||
ParamsConfigDataVO fileConfigDataVO = new ParamsConfigDataVO();
|
||||
|
||||
if (ParamsIsMustEnum.YES.getValue().equals(paramsCollectManifestEO.getIsMust())) {
|
||||
pullMoreConfigDataVO.setIsMust(ParamsIsMustEnum.YES.getValue());
|
||||
fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue());
|
||||
} else {
|
||||
pullMoreConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue());
|
||||
fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue());
|
||||
}
|
||||
|
||||
pullMoreConfigDataVO.setType(ConfigDataTypeEnum.PULL_MORE.getValue());
|
||||
pullMoreConfigDataVO.setIsMust(paramsCollectManifestEO.getIsMust());
|
||||
pullMoreConfigDataVO.setIsLock(paramsConfigEO.getIsLock());
|
||||
pullMoreConfigDataVO.setControlValue(getControlValueMapList(paramsCollectManifestEO.getControlValues()));
|
||||
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getPullData())) {
|
||||
pullMoreConfigDataVO.setDataValue(paramsConfigDataEO.getPullData());
|
||||
}
|
||||
paramsConfigDataVOList.add(pullMoreConfigDataVO);
|
||||
|
||||
ParamsConfigDataVO fileConfigDataVO = new ParamsConfigDataVO();
|
||||
fileConfigDataVO.setType(ConfigDataTypeEnum.FILE.getValue());
|
||||
fileConfigDataVO.setIsMust(paramsCollectManifestEO.getIsMust());
|
||||
fileConfigDataVO.setIsLock(paramsConfigEO.getIsLock());
|
||||
fileConfigDataVO.setTemplateId(templateId);
|
||||
fileConfigDataVO.setTemplateName(templateName);
|
||||
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getFileConnectId())) {
|
||||
fileConfigDataVO.setDataValue(paramsConfigDataEO.getFileConnectId());
|
||||
}
|
||||
|
||||
paramsConfigDataVOList.add(pullMoreConfigDataVO);
|
||||
paramsConfigDataVOList.add(fileConfigDataVO);
|
||||
|
||||
} else if (ControlTypeEnum.TEXT_PULL_SINGLE_FILE.getValue().equals(controlType)) {
|
||||
|
||||
ParamsConfigDataVO textConfigDataVO = new ParamsConfigDataVO();
|
||||
ParamsConfigDataVO pullConfigDataVO = new ParamsConfigDataVO();
|
||||
ParamsConfigDataVO fileConfigDataVO = new ParamsConfigDataVO();
|
||||
|
||||
if (ParamsIsMustEnum.YES.getValue().equals(paramsCollectManifestEO.getIsMust())) {
|
||||
pullConfigDataVO.setIsMust(ParamsIsMustEnum.YES.getValue());
|
||||
textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue());
|
||||
fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue());
|
||||
} else {
|
||||
pullConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue());
|
||||
textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue());
|
||||
fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue());
|
||||
}
|
||||
|
||||
textConfigDataVO.setType(ConfigDataTypeEnum.TEXT.getValue());
|
||||
textConfigDataVO.setIsMust(paramsCollectManifestEO.getIsMust());
|
||||
textConfigDataVO.setIsLock(paramsConfigEO.getIsLock());
|
||||
textConfigDataVO.setControlVerify(paramsCollectManifestEO.getControlVerify());
|
||||
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getTextData())) {
|
||||
textConfigDataVO.setDataValue(paramsConfigDataEO.getTextData());
|
||||
}
|
||||
paramsConfigDataVOList.add(textConfigDataVO);
|
||||
|
||||
ParamsConfigDataVO pullConfigDataVO = new ParamsConfigDataVO();
|
||||
pullConfigDataVO.setType(ConfigDataTypeEnum.PULL.getValue());
|
||||
pullConfigDataVO.setIsMust(paramsCollectManifestEO.getIsMust());
|
||||
pullConfigDataVO.setIsLock(paramsConfigEO.getIsLock());
|
||||
pullConfigDataVO.setControlValue(getControlValueMapList(paramsCollectManifestEO.getControlValues()));
|
||||
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getPullData())) {
|
||||
pullConfigDataVO.setDataValue(paramsConfigDataEO.getPullData());
|
||||
}
|
||||
paramsConfigDataVOList.add(pullConfigDataVO);
|
||||
|
||||
ParamsConfigDataVO fileConfigDataVO = new ParamsConfigDataVO();
|
||||
fileConfigDataVO.setType(ConfigDataTypeEnum.FILE.getValue());
|
||||
fileConfigDataVO.setIsMust(paramsCollectManifestEO.getIsMust());
|
||||
fileConfigDataVO.setIsLock(paramsConfigEO.getIsLock());
|
||||
fileConfigDataVO.setTemplateId(templateId);
|
||||
fileConfigDataVO.setTemplateName(templateName);
|
||||
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getFileConnectId())) {
|
||||
fileConfigDataVO.setDataValue(paramsConfigDataEO.getFileConnectId());
|
||||
}
|
||||
|
||||
paramsConfigDataVOList.add(pullConfigDataVO);
|
||||
paramsConfigDataVOList.add(textConfigDataVO);
|
||||
paramsConfigDataVOList.add(fileConfigDataVO);
|
||||
|
||||
}
|
||||
@@ -724,6 +774,7 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
|
||||
String dbFieldName = onlCgformField.getDbFieldName();
|
||||
if ("description".equals(dbFieldName)) {
|
||||
indexOfDescription = i;
|
||||
map.put("click2", true);
|
||||
}
|
||||
if ("duty_territory".equals(dbFieldName)) {
|
||||
map.put("click1", true);
|
||||
|
||||
@@ -26,6 +26,7 @@ import com.jero.modules.cert.report.mapper.ParamsReportDetailEOMapper;
|
||||
import com.jero.modules.cert.report.service.*;
|
||||
import com.jero.modules.cert.report.vo.ParamsReportDetailVO;
|
||||
import com.jero.modules.cert.template.enums.ControlTypeEnum;
|
||||
import com.jero.modules.cert.template.enums.ParamsIsMustEnum;
|
||||
import com.jero.modules.ocr.util.LineHumpUtil;
|
||||
import com.jero.modules.oss.entity.OSSFile;
|
||||
import com.jero.modules.oss.service.IOSSFileService;
|
||||
@@ -274,147 +275,196 @@ public class ParamsReportDetailEOServiceImpl extends ServiceImpl<ParamsReportDet
|
||||
} else if (ControlTypeEnum.TEXT_PULL_SINGLE.getValue().equals(controlType)) {
|
||||
|
||||
ParamsConfigDataVO textConfigDataVO = new ParamsConfigDataVO();
|
||||
ParamsConfigDataVO pullConfigDataVO = new ParamsConfigDataVO();
|
||||
|
||||
if (ParamsIsMustEnum.YES.getValue().equals(paramsCollectManifestEO.getIsMust())) {
|
||||
pullConfigDataVO.setIsMust(ParamsIsMustEnum.YES.getValue());
|
||||
textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue());
|
||||
} else {
|
||||
pullConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue());
|
||||
textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue());
|
||||
}
|
||||
|
||||
textConfigDataVO.setType(ConfigDataTypeEnum.TEXT.getValue());
|
||||
textConfigDataVO.setIsMust(paramsCollectManifestEO.getIsMust());
|
||||
textConfigDataVO.setIsLock(paramsConfigEO.getIsLock());
|
||||
textConfigDataVO.setControlVerify(paramsCollectManifestEO.getControlVerify());
|
||||
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getTextData())) {
|
||||
textConfigDataVO.setDataValue(paramsConfigDataEO.getTextData());
|
||||
}
|
||||
paramsConfigDataVOList.add(textConfigDataVO);
|
||||
|
||||
ParamsConfigDataVO pullConfigDataVO = new ParamsConfigDataVO();
|
||||
pullConfigDataVO.setType(ConfigDataTypeEnum.PULL.getValue());
|
||||
pullConfigDataVO.setIsMust(paramsCollectManifestEO.getIsMust());
|
||||
pullConfigDataVO.setIsLock(paramsConfigEO.getIsLock());
|
||||
pullConfigDataVO.setControlValue(getControlValueMapList(paramsCollectManifestEO.getControlValues()));
|
||||
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getPullData())) {
|
||||
pullConfigDataVO.setDataValue(paramsConfigDataEO.getPullData());
|
||||
}
|
||||
|
||||
paramsConfigDataVOList.add(pullConfigDataVO);
|
||||
paramsConfigDataVOList.add(textConfigDataVO);
|
||||
|
||||
} else if (ControlTypeEnum.TEXT_PULL_MORE.getValue().equals(controlType)) {
|
||||
|
||||
ParamsConfigDataVO textConfigDataVO = new ParamsConfigDataVO();
|
||||
ParamsConfigDataVO pullMoreConfigDataVO = new ParamsConfigDataVO();
|
||||
|
||||
if (ParamsIsMustEnum.YES.getValue().equals(paramsCollectManifestEO.getIsMust())) {
|
||||
pullMoreConfigDataVO.setIsMust(ParamsIsMustEnum.YES.getValue());
|
||||
textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue());
|
||||
} else {
|
||||
pullMoreConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue());
|
||||
textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue());
|
||||
}
|
||||
|
||||
textConfigDataVO.setType(ConfigDataTypeEnum.TEXT.getValue());
|
||||
textConfigDataVO.setIsMust(paramsCollectManifestEO.getIsMust());
|
||||
textConfigDataVO.setIsLock(paramsConfigEO.getIsLock());
|
||||
textConfigDataVO.setControlVerify(paramsCollectManifestEO.getControlVerify());
|
||||
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getTextData())) {
|
||||
textConfigDataVO.setDataValue(paramsConfigDataEO.getTextData());
|
||||
}
|
||||
paramsConfigDataVOList.add(textConfigDataVO);
|
||||
|
||||
ParamsConfigDataVO pullMoreConfigDataVO = new ParamsConfigDataVO();
|
||||
pullMoreConfigDataVO.setType(ConfigDataTypeEnum.PULL_MORE.getValue());
|
||||
pullMoreConfigDataVO.setIsMust(paramsCollectManifestEO.getIsMust());
|
||||
pullMoreConfigDataVO.setIsLock(paramsConfigEO.getIsLock());
|
||||
pullMoreConfigDataVO.setControlValue(getControlValueMapList(paramsCollectManifestEO.getControlValues()));
|
||||
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getPullData())) {
|
||||
pullMoreConfigDataVO.setDataValue(paramsConfigDataEO.getPullData());
|
||||
}
|
||||
|
||||
paramsConfigDataVOList.add(pullMoreConfigDataVO);
|
||||
paramsConfigDataVOList.add(textConfigDataVO);
|
||||
|
||||
} else if (ControlTypeEnum.TEXT_FILE.getValue().equals(controlType)) {
|
||||
|
||||
ParamsConfigDataVO textConfigDataVO = new ParamsConfigDataVO();
|
||||
ParamsConfigDataVO fileConfigDataVO = new ParamsConfigDataVO();
|
||||
|
||||
if (ParamsIsMustEnum.YES.getValue().equals(paramsCollectManifestEO.getIsMust())) {
|
||||
textConfigDataVO.setIsMust(ParamsIsMustEnum.YES.getValue());
|
||||
fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue());
|
||||
} else {
|
||||
textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue());
|
||||
fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue());
|
||||
}
|
||||
|
||||
textConfigDataVO.setType(ConfigDataTypeEnum.TEXT.getValue());
|
||||
textConfigDataVO.setIsMust(paramsCollectManifestEO.getIsMust());
|
||||
textConfigDataVO.setIsLock(paramsConfigEO.getIsLock());
|
||||
textConfigDataVO.setControlVerify(paramsCollectManifestEO.getControlVerify());
|
||||
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getTextData())) {
|
||||
textConfigDataVO.setDataValue(paramsConfigDataEO.getTextData());
|
||||
}
|
||||
paramsConfigDataVOList.add(textConfigDataVO);
|
||||
|
||||
ParamsConfigDataVO fileConfigDataVO = new ParamsConfigDataVO();
|
||||
fileConfigDataVO.setType(ConfigDataTypeEnum.FILE.getValue());
|
||||
fileConfigDataVO.setIsMust(paramsCollectManifestEO.getIsMust());
|
||||
fileConfigDataVO.setIsLock(paramsConfigEO.getIsLock());
|
||||
fileConfigDataVO.setTemplateId(templateId);
|
||||
fileConfigDataVO.setTemplateName(templateName);
|
||||
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getFileConnectId())) {
|
||||
fileConfigDataVO.setDataValue(paramsConfigDataEO.getFileConnectId());
|
||||
}
|
||||
|
||||
paramsConfigDataVOList.add(textConfigDataVO);
|
||||
paramsConfigDataVOList.add(fileConfigDataVO);
|
||||
|
||||
} else if (ControlTypeEnum.PULL_SINGLE_FILE.getValue().equals(controlType)) {
|
||||
|
||||
ParamsConfigDataVO pullConfigDataVO = new ParamsConfigDataVO();
|
||||
ParamsConfigDataVO fileConfigDataVO = new ParamsConfigDataVO();
|
||||
|
||||
if (ParamsIsMustEnum.YES.getValue().equals(paramsCollectManifestEO.getIsMust())) {
|
||||
pullConfigDataVO.setIsMust(ParamsIsMustEnum.YES.getValue());
|
||||
fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue());
|
||||
} else {
|
||||
pullConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue());
|
||||
fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue());
|
||||
}
|
||||
|
||||
pullConfigDataVO.setType(ConfigDataTypeEnum.PULL.getValue());
|
||||
pullConfigDataVO.setIsMust(paramsCollectManifestEO.getIsMust());
|
||||
pullConfigDataVO.setIsLock(paramsConfigEO.getIsLock());
|
||||
pullConfigDataVO.setControlValue(getControlValueMapList(paramsCollectManifestEO.getControlValues()));
|
||||
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getPullData())) {
|
||||
pullConfigDataVO.setDataValue(paramsConfigDataEO.getPullData());
|
||||
}
|
||||
paramsConfigDataVOList.add(pullConfigDataVO);
|
||||
|
||||
ParamsConfigDataVO fileConfigDataVO = new ParamsConfigDataVO();
|
||||
fileConfigDataVO.setType(ConfigDataTypeEnum.FILE.getValue());
|
||||
fileConfigDataVO.setIsMust(paramsCollectManifestEO.getIsMust());
|
||||
fileConfigDataVO.setIsLock(paramsConfigEO.getIsLock());
|
||||
fileConfigDataVO.setTemplateId(templateId);
|
||||
fileConfigDataVO.setTemplateName(templateName);
|
||||
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getFileConnectId())) {
|
||||
fileConfigDataVO.setDataValue(paramsConfigDataEO.getFileConnectId());
|
||||
}
|
||||
|
||||
paramsConfigDataVOList.add(pullConfigDataVO);
|
||||
paramsConfigDataVOList.add(fileConfigDataVO);
|
||||
|
||||
} else if (ControlTypeEnum.PULL_MORE_FILE.getValue().equals(controlType)) {
|
||||
|
||||
ParamsConfigDataVO pullMoreConfigDataVO = new ParamsConfigDataVO();
|
||||
ParamsConfigDataVO fileConfigDataVO = new ParamsConfigDataVO();
|
||||
|
||||
if (ParamsIsMustEnum.YES.getValue().equals(paramsCollectManifestEO.getIsMust())) {
|
||||
pullMoreConfigDataVO.setIsMust(ParamsIsMustEnum.YES.getValue());
|
||||
fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue());
|
||||
} else {
|
||||
pullMoreConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue());
|
||||
fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue());
|
||||
}
|
||||
|
||||
pullMoreConfigDataVO.setType(ConfigDataTypeEnum.PULL_MORE.getValue());
|
||||
pullMoreConfigDataVO.setIsMust(paramsCollectManifestEO.getIsMust());
|
||||
pullMoreConfigDataVO.setIsLock(paramsConfigEO.getIsLock());
|
||||
pullMoreConfigDataVO.setControlValue(getControlValueMapList(paramsCollectManifestEO.getControlValues()));
|
||||
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getPullData())) {
|
||||
pullMoreConfigDataVO.setDataValue(paramsConfigDataEO.getPullData());
|
||||
}
|
||||
paramsConfigDataVOList.add(pullMoreConfigDataVO);
|
||||
|
||||
ParamsConfigDataVO fileConfigDataVO = new ParamsConfigDataVO();
|
||||
fileConfigDataVO.setType(ConfigDataTypeEnum.FILE.getValue());
|
||||
fileConfigDataVO.setIsMust(paramsCollectManifestEO.getIsMust());
|
||||
fileConfigDataVO.setIsLock(paramsConfigEO.getIsLock());
|
||||
fileConfigDataVO.setTemplateId(templateId);
|
||||
fileConfigDataVO.setTemplateName(templateName);
|
||||
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getFileConnectId())) {
|
||||
fileConfigDataVO.setDataValue(paramsConfigDataEO.getFileConnectId());
|
||||
}
|
||||
|
||||
paramsConfigDataVOList.add(pullMoreConfigDataVO);
|
||||
paramsConfigDataVOList.add(fileConfigDataVO);
|
||||
|
||||
} else if (ControlTypeEnum.TEXT_PULL_SINGLE_FILE.getValue().equals(controlType)) {
|
||||
|
||||
ParamsConfigDataVO textConfigDataVO = new ParamsConfigDataVO();
|
||||
ParamsConfigDataVO pullConfigDataVO = new ParamsConfigDataVO();
|
||||
ParamsConfigDataVO fileConfigDataVO = new ParamsConfigDataVO();
|
||||
|
||||
if (ParamsIsMustEnum.YES.getValue().equals(paramsCollectManifestEO.getIsMust())) {
|
||||
pullConfigDataVO.setIsMust(ParamsIsMustEnum.YES.getValue());
|
||||
textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue());
|
||||
fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue());
|
||||
} else {
|
||||
pullConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue());
|
||||
textConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue());
|
||||
fileConfigDataVO.setIsMust(ParamsIsMustEnum.NO.getValue());
|
||||
}
|
||||
|
||||
textConfigDataVO.setType(ConfigDataTypeEnum.TEXT.getValue());
|
||||
textConfigDataVO.setIsMust(paramsCollectManifestEO.getIsMust());
|
||||
textConfigDataVO.setIsLock(paramsConfigEO.getIsLock());
|
||||
textConfigDataVO.setControlVerify(paramsCollectManifestEO.getControlVerify());
|
||||
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getTextData())) {
|
||||
textConfigDataVO.setDataValue(paramsConfigDataEO.getTextData());
|
||||
}
|
||||
paramsConfigDataVOList.add(textConfigDataVO);
|
||||
|
||||
ParamsConfigDataVO pullConfigDataVO = new ParamsConfigDataVO();
|
||||
pullConfigDataVO.setType(ConfigDataTypeEnum.PULL.getValue());
|
||||
pullConfigDataVO.setIsMust(paramsCollectManifestEO.getIsMust());
|
||||
pullConfigDataVO.setIsLock(paramsConfigEO.getIsLock());
|
||||
pullConfigDataVO.setControlValue(getControlValueMapList(paramsCollectManifestEO.getControlValues()));
|
||||
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getPullData())) {
|
||||
pullConfigDataVO.setDataValue(paramsConfigDataEO.getPullData());
|
||||
}
|
||||
paramsConfigDataVOList.add(pullConfigDataVO);
|
||||
|
||||
ParamsConfigDataVO fileConfigDataVO = new ParamsConfigDataVO();
|
||||
fileConfigDataVO.setType(ConfigDataTypeEnum.FILE.getValue());
|
||||
fileConfigDataVO.setIsMust(paramsCollectManifestEO.getIsMust());
|
||||
fileConfigDataVO.setIsLock(paramsConfigEO.getIsLock());
|
||||
fileConfigDataVO.setTemplateId(templateId);
|
||||
fileConfigDataVO.setTemplateName(templateName);
|
||||
if (ObjectUtil.isNotEmpty(paramsConfigDataEO) && StringUtils.isNotEmpty(paramsConfigDataEO.getFileConnectId())) {
|
||||
fileConfigDataVO.setDataValue(paramsConfigDataEO.getFileConnectId());
|
||||
}
|
||||
|
||||
paramsConfigDataVOList.add(pullConfigDataVO);
|
||||
paramsConfigDataVOList.add(textConfigDataVO);
|
||||
paramsConfigDataVOList.add(fileConfigDataVO);
|
||||
|
||||
} else if (ControlTypeEnum.Title.getValue().equals(controlType)) {
|
||||
|
||||
@@ -146,7 +146,7 @@ public class OSSFileServiceImpl extends ServiceImpl<OSSFileMapper, OSSFile> impl
|
||||
if (cut.equals(CutEnum.CN.getValue())) {
|
||||
throw new JeroBootException("只能够上传pdf/word/excel/csv/ppt/txt/zip/rar/静态图片类型的文件。请重新选择文件!");
|
||||
} else {
|
||||
throw new JeroBootException("Only upload pdf/word/excel/csv/ppt/txt/zip/rar/Static image type file. Please re-select the file!");
|
||||
throw new JeroBootException("Only upload pdf/word/excel/csv/ppt/txt/zip/rar/Static image type file. Please re select the file!");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -265,7 +265,7 @@ public class OSSFileServiceImpl extends ServiceImpl<OSSFileMapper, OSSFile> impl
|
||||
if (cut.equals(CutEnum.CN.getValue())) {
|
||||
throw new JeroBootException("只能够上传pdf/word/excel/csv/ppt/txt/zip/rar/静态图片类型的文件。请重新选择文件!");
|
||||
} else {
|
||||
throw new JeroBootException("Only upload pdf/word/excel/csv/ppt/txt/zip/rar/Static image type file. Please re-select the file!");
|
||||
throw new JeroBootException("Only upload pdf/word/excel/csv/ppt/txt/zip/rar/Static image type file. Please re select the file!");
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -357,7 +357,7 @@ public class OSSFileServiceImpl extends ServiceImpl<OSSFileMapper, OSSFile> impl
|
||||
if (cut.equals(CutEnum.CN.getValue())) {
|
||||
throw new JeroBootException("只能够上传pdf/word/excel/csv/ppt/txt/zip/rar/静态图片类型的文件。请重新选择文件!");
|
||||
} else {
|
||||
throw new JeroBootException("Only upload pdf/word/excel/csv/ppt/txt/zip/rar/Static image type file. Please re-select the file!");
|
||||
throw new JeroBootException("Only upload pdf/word/excel/csv/ppt/txt/zip/rar/Static image type file. Please re select the file!");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -97,4 +97,7 @@ public class LawsProcessHistoryEO implements Serializable {
|
||||
@ApiModelProperty(value = "流程类型")
|
||||
private String flowType;
|
||||
|
||||
/**审批意见*/
|
||||
@ApiModelProperty(value = "审批意见")
|
||||
private String approvalOpinion;
|
||||
}
|
||||
|
||||
@@ -59,6 +59,6 @@ public class LawsOpinionGatherJob implements Job {
|
||||
}
|
||||
}
|
||||
}
|
||||
log.info("法规意见收集流程,定时任务开启 =====================================================");
|
||||
log.info("法规意见收集流程,定时任务结束 =====================================================");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -14,5 +14,6 @@
|
||||
<result column="operator_role_code" property="operatorRoleCode" />
|
||||
<result column="operator_time" property="operatorTime" />
|
||||
<result column="flow_type" property="flowType" />
|
||||
<result column="approval_opinion" property="approvalOpinion" />
|
||||
</resultMap>
|
||||
</mapper>
|
||||
|
||||
@@ -208,8 +208,7 @@ public class LawsTechnologyEvaluationEOController extends JeroController<LawsTec
|
||||
@ApiOperation(value = "条款导入")
|
||||
@PostMapping(value = "/importItemExcel")
|
||||
public Result<?> importItemExcel(MultipartFile file, @RequestParam(name = "cut") String cut, HttpServletRequest request) throws Exception {
|
||||
List<Map<String,Object>> result = this.lawsTechnologyEvaluationEOService.importItemExcel(file,cut,request);
|
||||
return Result.OK(result);
|
||||
return this.lawsTechnologyEvaluationEOService.importItemExcel(file,cut,request);
|
||||
}
|
||||
|
||||
@ApiOperation(value="根据id查询明细数据", notes="根据id查询明细数据")
|
||||
|
||||
@@ -85,7 +85,7 @@ public interface ILawsTechnologyEvaluationEOService extends IService<LawsTechnol
|
||||
|
||||
void exportItemTemplate(String cut, HttpServletResponse response, HttpServletRequest request);
|
||||
|
||||
List<Map<String,Object>> importItemExcel(MultipartFile file, String cut, HttpServletRequest request)throws Exception;
|
||||
Result<?> importItemExcel(MultipartFile file, String cut, HttpServletRequest request)throws Exception;
|
||||
|
||||
List<Map<String, Object>> queryPageDummyById(Map<String, Object> parameter);
|
||||
}
|
||||
|
||||
@@ -312,7 +312,7 @@ public class LawsTechnologyEvaluationEOServiceImpl extends ServiceImpl<LawsTechn
|
||||
title = "条款号,条款名称,条款内容";
|
||||
fileOriName = "条款信息导入模板.xls";
|
||||
} else {
|
||||
title = "Item num,Item name,Item Contents";
|
||||
title = "Item No.,Item Name,Item Content";
|
||||
fileOriName = "Item information is imported into the template.xls";
|
||||
}
|
||||
|
||||
@@ -356,7 +356,7 @@ public class LawsTechnologyEvaluationEOServiceImpl extends ServiceImpl<LawsTechn
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Map<String,Object>> importItemExcel(MultipartFile file, String cut, HttpServletRequest request)throws Exception {
|
||||
public Result<?> importItemExcel(MultipartFile file, String cut, HttpServletRequest request)throws Exception {
|
||||
//校验文件格式
|
||||
int pos = file.getOriginalFilename().lastIndexOf(".");
|
||||
String fileSuffixStr = file.getOriginalFilename().substring(pos+1).toLowerCase();
|
||||
@@ -367,7 +367,7 @@ public class LawsTechnologyEvaluationEOServiceImpl extends ServiceImpl<LawsTechn
|
||||
title = "条款号,条款名称,条款内容";
|
||||
verifyTemplateMsg = "模板不正确,请下载正确的模板导入!";
|
||||
} else {
|
||||
title = "Item num,Item name,Item Contents";
|
||||
title = "Item No.,Item Name,Item Content";
|
||||
verifyTemplateMsg = "The template is not correct, please download the correct template to import!";
|
||||
}
|
||||
|
||||
@@ -406,12 +406,35 @@ public class LawsTechnologyEvaluationEOServiceImpl extends ServiceImpl<LawsTechn
|
||||
}
|
||||
|
||||
int rowNos = sheet.getPhysicalNumberOfRows();// 得到excel的总记录条数
|
||||
|
||||
for (int i = 0; i < rowNos ; i++) {
|
||||
Row row = sheet.getRow(i + 1);
|
||||
if(row != null){
|
||||
String itemNum = row.getCell(0, Row.MissingCellPolicy.CREATE_NULL_AS_BLANK).toString();
|
||||
String itemNum = "";
|
||||
Cell itemNumCell = row.getCell(0);
|
||||
if(itemNumCell != null){
|
||||
itemNumCell.setCellType(CellType.STRING);
|
||||
itemNum = itemNumCell.toString().replaceAll("'","‘").replaceAll("\"","”");
|
||||
}
|
||||
|
||||
String itemName = "";
|
||||
Cell itemNameCell = row.getCell(1);
|
||||
if(itemNameCell != null){
|
||||
itemNameCell.setCellType(CellType.STRING);
|
||||
itemName = itemNameCell.toString().replaceAll("'","‘").replaceAll("\"","”");
|
||||
}
|
||||
|
||||
String itemContents = "";
|
||||
Cell itemContentsCell = row.getCell(2);
|
||||
if(itemContentsCell != null){
|
||||
itemContentsCell.setCellType(CellType.STRING);
|
||||
itemContents = itemContentsCell.toString().replaceAll("'","‘").replaceAll("\"","”");
|
||||
}
|
||||
|
||||
/*String itemNum = row.getCell(0, Row.MissingCellPolicy.CREATE_NULL_AS_BLANK).toString();
|
||||
String itemName = row.getCell(1, Row.MissingCellPolicy.CREATE_NULL_AS_BLANK).toString();
|
||||
String itemContents = row.getCell(2, Row.MissingCellPolicy.CREATE_NULL_AS_BLANK).toString();
|
||||
String itemContents = row.getCell(2, Row.MissingCellPolicy.CREATE_NULL_AS_BLANK).toString();*/
|
||||
|
||||
Map<String,Object> itemInfoMap = new HashMap<>();
|
||||
String itemId = UUID.randomUUID().toString().replace("-", "");
|
||||
itemInfoMap.put("itemId",itemId);
|
||||
@@ -421,9 +444,17 @@ public class LawsTechnologyEvaluationEOServiceImpl extends ServiceImpl<LawsTechn
|
||||
result.add(itemInfoMap);
|
||||
}
|
||||
}
|
||||
|
||||
Map map = validateImportDatas(result,cut);
|
||||
boolean isOk = (boolean) map.get("result");
|
||||
if (!isOk) {
|
||||
//验证没有通过
|
||||
String message = (String) map.get("message");
|
||||
return Result.error(message);
|
||||
}
|
||||
}
|
||||
}
|
||||
return result;
|
||||
return Result.OK(result);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -511,4 +542,105 @@ public class LawsTechnologyEvaluationEOServiceImpl extends ServiceImpl<LawsTechn
|
||||
}
|
||||
return technologyTerritoryName;
|
||||
}
|
||||
|
||||
public Map validateImportDatas(List<Map<String, Object>> dataList,String cut){
|
||||
//存放数据验证结果信息
|
||||
List<String> stringMessage = new ArrayList<>();
|
||||
|
||||
int i = 0;
|
||||
|
||||
for (Map<String, Object> map : dataList) {
|
||||
i++;
|
||||
|
||||
int countError = 0; //记录失败数据数量
|
||||
String errorMsg = "";
|
||||
if(CutEnum.CN.getValue().equals(cut)){
|
||||
errorMsg = "第" + i + "行:";
|
||||
}else{
|
||||
errorMsg = i + " line:";
|
||||
}
|
||||
|
||||
String itemNum = (String) map.get("itemNum");
|
||||
String itemName = (String) map.get("itemName");
|
||||
String itemContent = (String) map.get("itemContent");
|
||||
|
||||
if(StringUtils.isEmpty(itemNum)){
|
||||
if(StringUtils.equals(cut,CutEnum.CN.getValue())){
|
||||
errorMsg += "条款号不能为空;";
|
||||
}else if (StringUtils.equals(cut,CutEnum.EN.getValue())){
|
||||
errorMsg += "Item No. cannot be empty;";
|
||||
}
|
||||
countError++;
|
||||
}else if(itemNum.length() > 100){
|
||||
if(StringUtils.equals(cut,CutEnum.CN.getValue())){
|
||||
errorMsg += "条款号长度不能超过100;";
|
||||
}else if (StringUtils.equals(cut,CutEnum.EN.getValue())){
|
||||
errorMsg += "Item No. length of the cannot exceed 100;";
|
||||
}
|
||||
countError++;
|
||||
}
|
||||
|
||||
if(StringUtils.isEmpty(itemName)){
|
||||
if(StringUtils.equals(cut,CutEnum.CN.getValue())){
|
||||
errorMsg += "条款名称不能为空;";
|
||||
}else if (StringUtils.equals(cut,CutEnum.EN.getValue())){
|
||||
errorMsg += "Item Name cannot be empty;";
|
||||
}
|
||||
countError++;
|
||||
}else if(itemName.length() > 100){
|
||||
if(StringUtils.equals(cut,CutEnum.CN.getValue())){
|
||||
errorMsg += "条款名称长度不能超过100;";
|
||||
}else if (StringUtils.equals(cut,CutEnum.EN.getValue())){
|
||||
errorMsg += "Item Name length of the cannot exceed 100;";
|
||||
}
|
||||
countError++;
|
||||
}
|
||||
|
||||
if(StringUtils.isEmpty(itemContent)){
|
||||
if(StringUtils.equals(cut,CutEnum.CN.getValue())){
|
||||
errorMsg += "条款内容不能为空;";
|
||||
}else if (StringUtils.equals(cut,CutEnum.EN.getValue())){
|
||||
errorMsg += "Item Content cannot be empty;";
|
||||
}
|
||||
countError++;
|
||||
}else if(itemContent.length() > 500){
|
||||
if(StringUtils.equals(cut,CutEnum.CN.getValue())){
|
||||
errorMsg += "条款内容长度不能超过500;";
|
||||
}else if (StringUtils.equals(cut,CutEnum.EN.getValue())){
|
||||
errorMsg += "Item Content length of the cannot exceed 500;";
|
||||
}
|
||||
countError++;
|
||||
}
|
||||
|
||||
if (countError > 0) {
|
||||
errorMsg = errorMsg.substring(0,errorMsg.length()-1);
|
||||
stringMessage.add(errorMsg);
|
||||
}
|
||||
}
|
||||
|
||||
Map result = new HashMap();
|
||||
|
||||
if(CollectionUtils.isEmpty(dataList)){
|
||||
result.put("result", false);
|
||||
String message = "";
|
||||
if (StringUtils.equals(cut, CutEnum.CN.getValue())) {
|
||||
message = "不能导入空的模板,请检查!";
|
||||
}else if(StringUtils.equals(cut,CutEnum.EN.getValue())){
|
||||
message = "Cannot import empty template, please check!";
|
||||
}
|
||||
result.put("message", message);
|
||||
}else if (stringMessage.isEmpty()) {
|
||||
result.put("result", true);
|
||||
result.put("resultList", dataList);
|
||||
result.put("message", "");
|
||||
} else {
|
||||
result.put("result", false);
|
||||
String html = "";
|
||||
for (String message : stringMessage) {
|
||||
html += message + "</br>";
|
||||
}
|
||||
result.put("message", html);
|
||||
}
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -216,9 +216,12 @@ public class LawsTechnologyEvaluationItemResultEOServiceImpl extends ServiceImpl
|
||||
List<SysCategory> categoryList = sysCategoryService.list();
|
||||
for (LawsTechnologyEvaluationItemResultEO data : datas) {
|
||||
String evaluationMethods = data.getEvaluationMethods();
|
||||
List<String> evaluationMethodsList = Arrays.asList(evaluationMethods.split(","));
|
||||
String name = getTreeName(cut, categoryList, evaluationMethodsList);
|
||||
data.setEvaluationMethodsName(name);
|
||||
if(StringUtils.isNotEmpty(evaluationMethods)){
|
||||
List<String> evaluationMethodsList = Arrays.asList(evaluationMethods.split(","));
|
||||
String name = getTreeName(cut, categoryList, evaluationMethodsList);
|
||||
data.setEvaluationMethodsName(name);
|
||||
}
|
||||
|
||||
if(StringUtils.isNotEmpty(data.getComplianceResult())){
|
||||
data.setComplianceResultName(ComplianceResultEnum.getTextByValue(data.getComplianceResult(),cut));
|
||||
}
|
||||
@@ -263,7 +266,7 @@ public class LawsTechnologyEvaluationItemResultEOServiceImpl extends ServiceImpl
|
||||
title = "条款号,条款名称,条款内容,评估人,评估方式,技术文件名称,章节,符合性结果,意见,附件,反馈时间";
|
||||
fileName = "条款评估结果 " + ".xlsx";
|
||||
}else if(StringUtils.equals(cut,CutEnum.EN.getValue())){
|
||||
title = "Item num,Item name,Item Contents,Evaluator,Evaluation methods,Name of technical document,Section,Compliance results,Opinion,Accessory,Feedback time ";
|
||||
title = "Item No.,Item Name,Item Content,Assessor,Evaluation method,Name of technical document,chapter,Compliance Results,Opinion,Enclosure,Feedback Time";
|
||||
fileName = "Item Evaluation results " + ".xlsx";
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,48 @@
|
||||
package com.jero.modules.problemKnowledgeBase.enums;
|
||||
|
||||
import com.jero.common.constant.enums.CutEnum;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
|
||||
/**
|
||||
* 问题知识库-查询标识枚举类
|
||||
*/
|
||||
public enum QueryFlagEnum {
|
||||
|
||||
GET_ALL_APPLY_MARKET("获取所有的适用市场","","0"),
|
||||
GET_NOT_CREATE_APPLY_MARKET("获取还没有创建过countryCard的适用市场","","1"),
|
||||
GET_RELEASED_APPLY_MARKET("获取已发布的countryCard的适用市场","","2"),
|
||||
GET_CREATE_APPLY_MARKET("获取所有自己已创建的countryCard的适用市场","","3"),
|
||||
;
|
||||
|
||||
String cnName;
|
||||
String enName;
|
||||
String value;
|
||||
|
||||
private QueryFlagEnum(String cnName, String enName, String value) {
|
||||
this.cnName = cnName;
|
||||
this.enName = enName;
|
||||
this.value = value;
|
||||
}
|
||||
|
||||
public String getValue() {
|
||||
return value;
|
||||
}
|
||||
|
||||
public void setValue(String value) {
|
||||
this.value = value;
|
||||
}
|
||||
|
||||
public static String getTextByValue(String value,String cut) {
|
||||
QueryFlagEnum[] values = values();
|
||||
for (QueryFlagEnum queryFlagEnum : values) {
|
||||
if (queryFlagEnum.value.equals(value)) {
|
||||
if(StringUtils.equals(cut, CutEnum.CN.getValue())){
|
||||
return queryFlagEnum.cnName;
|
||||
}else if(StringUtils.equals(cut,CutEnum.EN.getValue())){
|
||||
return queryFlagEnum.enName;
|
||||
}
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
@@ -6,9 +6,11 @@ import com.jero.common.api.vo.Result;
|
||||
import com.jero.common.constant.enums.CutEnum;
|
||||
import com.jero.common.system.query.QueryGenerator;
|
||||
import com.jero.common.system.vo.DictModel;
|
||||
import com.jero.common.system.vo.LoginUser;
|
||||
import com.jero.modules.problemKnowledgeBase.entity.CountryCardManageReleaseDetailEO;
|
||||
import com.jero.modules.problemKnowledgeBase.entity.CountryCardManageReleaseEO;
|
||||
import com.jero.modules.problemKnowledgeBase.entity.CountryNationalFlagEO;
|
||||
import com.jero.modules.problemKnowledgeBase.enums.QueryFlagEnum;
|
||||
import com.jero.modules.problemKnowledgeBase.enums.ReleaseStatusEnum;
|
||||
import com.jero.modules.problemKnowledgeBase.mapper.CountryCardManageReleaseEOMapper;
|
||||
import com.jero.modules.problemKnowledgeBase.service.ICountryCardManageReleaseDetailEOService;
|
||||
@@ -18,6 +20,7 @@ import com.jero.modules.system.enums.DicCodeEnum;
|
||||
import com.jero.modules.system.service.ISysDictService;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.apache.shiro.SecurityUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@@ -216,9 +219,9 @@ public class CountryCardManageReleaseEOServiceImpl extends ServiceImpl<CountryCa
|
||||
//获取已经创建了country Card的适用地区,该接口只返回,在country Card里面没有的适用地区。
|
||||
List<CountryCardManageReleaseEO> countryCardManageReleaseEOList = this.list();
|
||||
|
||||
//如果查询标识是空,则是在countryCard管理发布页面新增数据时使用:管理发布页新增查询的是,所有未创建countryCard的适用市场。
|
||||
//如果查询标识不是空,则是在CountryCard的首页使用:首页查询的是 所有已创建了countryCard的适用市场。
|
||||
if (StringUtils.isEmpty(queryFlag)) {
|
||||
if (StringUtils.equals(queryFlag, QueryFlagEnum.GET_ALL_APPLY_MARKET.getValue())) {
|
||||
result = dictModelList;
|
||||
}else if (StringUtils.equals(queryFlag,QueryFlagEnum.GET_NOT_CREATE_APPLY_MARKET.getValue())) {
|
||||
if(CollectionUtils.isEmpty(countryCardManageReleaseEOList)){
|
||||
result = dictModelList;
|
||||
}else {
|
||||
@@ -236,7 +239,7 @@ public class CountryCardManageReleaseEOServiceImpl extends ServiceImpl<CountryCa
|
||||
}
|
||||
}
|
||||
}
|
||||
}else {
|
||||
}else if(StringUtils.equals(queryFlag,QueryFlagEnum.GET_RELEASED_APPLY_MARKET.getValue())){
|
||||
if(CollectionUtils.isEmpty(countryCardManageReleaseEOList)){
|
||||
result = null;
|
||||
}else {
|
||||
@@ -250,6 +253,26 @@ public class CountryCardManageReleaseEOServiceImpl extends ServiceImpl<CountryCa
|
||||
}
|
||||
}
|
||||
|
||||
if(flag){
|
||||
result.add(dictModel);
|
||||
}
|
||||
}
|
||||
}
|
||||
}else if(StringUtils.equals(queryFlag,QueryFlagEnum.GET_CREATE_APPLY_MARKET.getValue())){
|
||||
LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
if(CollectionUtils.isEmpty(countryCardManageReleaseEOList)){
|
||||
result = null;
|
||||
}else {
|
||||
for (DictModel dictModel : dictModelList) {
|
||||
boolean flag = false;
|
||||
for (CountryCardManageReleaseEO countryCardManageReleaseEO : countryCardManageReleaseEOList) {
|
||||
if(StringUtils.equals(dictModel.getValue(),countryCardManageReleaseEO.getApplyMarket())
|
||||
&& StringUtils.equals(countryCardManageReleaseEO.getCreateBy(),currentUser.getUsername())){
|
||||
flag = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if(flag){
|
||||
result.add(dictModel);
|
||||
}
|
||||
|
||||
@@ -3,6 +3,7 @@ package com.jero.modules.problemKnowledgeBase.service.impl;
|
||||
import com.jero.modules.problemKnowledgeBase.entity.ProblemKnowledgeBaseClassifyEO;
|
||||
import com.jero.modules.problemKnowledgeBase.mapper.ProblemKnowledgeBaseClassifyEOMapper;
|
||||
import com.jero.modules.problemKnowledgeBase.service.IProblemKnowledgeBaseClassifyEOService;
|
||||
import com.jero.modules.project.entity.ConditionAssessmentEO;
|
||||
import com.jero.modules.system.entity.SysUser;
|
||||
import com.jero.modules.system.service.ISysUserService;
|
||||
import com.jero.modules.system.util.StringUtils;
|
||||
@@ -10,10 +11,8 @@ import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.Date;
|
||||
import java.text.Collator;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
@@ -99,7 +98,15 @@ public class ProblemKnowledgeBaseClassifyEOServiceImpl extends ServiceImpl<Probl
|
||||
*/
|
||||
@Override
|
||||
public List<ProblemKnowledgeBaseClassifyEO> queryList() {
|
||||
return list();
|
||||
List<ProblemKnowledgeBaseClassifyEO> result = this.list();
|
||||
// 匿名比较器排序
|
||||
Collections.sort(result, new Comparator<ProblemKnowledgeBaseClassifyEO>() {
|
||||
@Override
|
||||
public int compare(ProblemKnowledgeBaseClassifyEO p1, ProblemKnowledgeBaseClassifyEO p2) {
|
||||
return p1.getProblemLabel().compareTo(p2.getProblemLabel());
|
||||
}
|
||||
});
|
||||
return result;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -50,6 +50,8 @@ public class ProblemKnowledgeBaseEOServiceImpl extends ServiceImpl<ProblemKnowle
|
||||
private IProblemKnowledgeBaseClassifyEOService problemKnowledgeBaseClassifyEOService;
|
||||
@Autowired
|
||||
private ISysDictService sysDictService;
|
||||
@Autowired
|
||||
private IProblemKnowledgeBaseCommentEOService problemKnowledgeBaseCommentEOService;
|
||||
|
||||
/**
|
||||
* 保存
|
||||
@@ -108,6 +110,18 @@ public class ProblemKnowledgeBaseEOServiceImpl extends ServiceImpl<ProblemKnowle
|
||||
@Override
|
||||
public void deleteByIds(List<String> ids) {
|
||||
removeByIds(ids);
|
||||
|
||||
QueryWrapper deleteWrapper = new QueryWrapper<>();
|
||||
deleteWrapper.in("problem_knowledge_base_id",ids);
|
||||
this.problemKnowledgeBaseUserEOService.remove(deleteWrapper);
|
||||
|
||||
this.problemKnowledgeBasePraiseEOService.remove(deleteWrapper);
|
||||
|
||||
this.problemKnowledgeBaseCollectEOService.remove(deleteWrapper);
|
||||
|
||||
this.problemKnowledgeBaseBrowsingHistoryEOService.remove(deleteWrapper);
|
||||
|
||||
this.problemKnowledgeBaseCommentEOService.remove(deleteWrapper);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -308,20 +322,25 @@ public class ProblemKnowledgeBaseEOServiceImpl extends ServiceImpl<ProblemKnowle
|
||||
|
||||
String targetMarket = data.getTargetMarket();
|
||||
if(StringUtils.isNotEmpty(targetMarket) && CollectionUtils.isNotEmpty(regionList)){
|
||||
String[] targetMarketArr = targetMarket.split(",");
|
||||
String targetMarket_dicText = "";
|
||||
if(StringUtils.equals(cut, CutEnum.CN.getValue())){
|
||||
targetMarket_dicText = regionList.stream().filter(region -> {
|
||||
boolean flag = false;
|
||||
if (StringUtils.equals(targetMarket, region.getValue())) {
|
||||
flag = true;
|
||||
for (String s : targetMarketArr) {
|
||||
if (StringUtils.equals(s, region.getValue())) {
|
||||
flag = true;
|
||||
}
|
||||
}
|
||||
return flag;
|
||||
}).map(DictModel::getText).collect(Collectors.joining(","));
|
||||
}else if(StringUtils.equals(cut, CutEnum.EN.getValue())){
|
||||
targetMarket_dicText = regionList.stream().filter(region -> {
|
||||
boolean flag = false;
|
||||
if (StringUtils.equals(targetMarket, region.getValue())) {
|
||||
flag = true;
|
||||
for (String s : targetMarketArr) {
|
||||
if (StringUtils.equals(s, region.getValue())) {
|
||||
flag = true;
|
||||
}
|
||||
}
|
||||
return flag;
|
||||
}).map(DictModel::getTextEn).collect(Collectors.joining(","));
|
||||
@@ -348,11 +367,13 @@ public class ProblemKnowledgeBaseEOServiceImpl extends ServiceImpl<ProblemKnowle
|
||||
List<String> problemKnowledgeBaseIdList = problemKnowledgeBaseUserEOList.stream().map(ProblemKnowledgeBaseUserEO::getProblemKnowledgeBaseId).distinct().collect(Collectors.toList());
|
||||
|
||||
queryWrapper.lambda().and(query -> {
|
||||
query.eq(ProblemKnowledgeBaseEO::getShowPermissions,ShowPermissionsEnum.OPEN.getValue()).
|
||||
or(o -> {
|
||||
query.eq(ProblemKnowledgeBaseEO::getShowPermissions,ShowPermissionsEnum.OPEN.getValue());
|
||||
if(CollectionUtils.isNotEmpty(problemKnowledgeBaseIdList)){
|
||||
query.or(o -> {
|
||||
o.eq(ProblemKnowledgeBaseEO::getShowPermissions,ShowPermissionsEnum.PRIVACY.getValue());
|
||||
o.in(ProblemKnowledgeBaseEO::getId,problemKnowledgeBaseIdList);
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
String searchStr = problemKnowledgeBaseEO.getSearchStr();
|
||||
|
||||
@@ -44,7 +44,6 @@ public class ProjectLibraryBaseController extends JeroController<ProjectLibraryB
|
||||
*/
|
||||
@AutoLog(value = "项目库基础表-分页列表查询")
|
||||
@ApiOperation(value="项目库基础表-分页列表查询", notes="项目库基础表-分页列表查询")
|
||||
@RequiresPermissions("projectLibraryBase:page")
|
||||
@PostMapping(value = "/page")
|
||||
public Result<?> queryPageList(@RequestBody Map<String,Object> params) {
|
||||
IPage<ProjectLibraryBase> pageList= projectLibraryBaseService.queryPageList(params);
|
||||
|
||||
@@ -7,9 +7,9 @@ public enum ProjectTaskPlanningNameEnum {
|
||||
// PREHOMO_DEADLINE("Pre-Homo","Pre-Homo"),
|
||||
// ATTESTATION_START_TIME("认证开始","Certification begins"),
|
||||
// ATTESTATION_END_TIME("认证结束"," End of certification"),
|
||||
PREHOMO_DEADLINE("Pre-Homo确认","Pre-Homo Confirmation"), // name:Pre-Homo value:Pre-Homo
|
||||
ATTESTATION_START_TIME("认证结束","Homo Completion"),// name:认证开始 value:Certification begins
|
||||
ATTESTATION_END_TIME("认证开始","Homo KO"),// name:认证结束 value:End of certification
|
||||
PREHOMO_DEADLINE("摸底试验结束","Pre-Homo Confirmation"), // name:Pre-Homo value:Pre-Homo
|
||||
ATTESTATION_START_TIME("认证试验结束","Homo Completion"),// name:认证开始 value:Certification begins
|
||||
ATTESTATION_END_TIME("认证批准","Homo KO"),// name:认证结束 value:End of certification
|
||||
VERIFY_DEADLINE("验证符合性确认","Validation Compliance Confirmation"),
|
||||
;
|
||||
String name;
|
||||
|
||||
@@ -257,7 +257,7 @@ public class LawsComplianceBoardServiceImpl implements ILawsComplianceBoardServi
|
||||
title = "编号,标题,状态,技术领域,责任领域,相关项目,设计符合性,Pre-Homo确认,验证符合性";
|
||||
fileName = "符合性结果" + ".xlsx";
|
||||
}else if(StringUtils.equals(cut,CutEnum.EN.getValue())){
|
||||
title = "Serial number,Title,State,Technology territory,Responsible Field,Relevant project,Design conformance,Pre-Homo Confirm,Verify conformance";
|
||||
title = "Number,Title,Status,Tech field,Responsible Field,Relevant project,Design Compliance Confirmation,Pre-Homo Confirmation,Validation Compliance Confirmation";
|
||||
fileName = "Compliance results" + ".xlsx";
|
||||
}
|
||||
OutputStream os = null;
|
||||
@@ -281,7 +281,7 @@ public class LawsComplianceBoardServiceImpl implements ILawsComplianceBoardServi
|
||||
|
||||
//设置居中、表头值。
|
||||
for (int i = 0; i < firstLineTitleArr.length; i++){
|
||||
sheet.setColumnWidth(i,5000);
|
||||
sheet.setColumnWidth(i,8000);
|
||||
Cell cell = firstRow.createCell(i);
|
||||
cell.setCellStyle(titleCellStyle);
|
||||
cell.setCellValue(firstLineTitleArr[i]);
|
||||
@@ -367,7 +367,7 @@ public class LawsComplianceBoardServiceImpl implements ILawsComplianceBoardServi
|
||||
title = "责任领域,相关项目,设计符合性,Pre-Homo确认,验证符合性";
|
||||
fileName = "符合性结果" + ".xlsx";
|
||||
}else if(StringUtils.equals(cut,CutEnum.EN.getValue())){
|
||||
title = "Responsible Field,Relevant project,Design conformance,Pre-Homo Confirm,Verify conformance";
|
||||
title = "Responsible Field,Relevant project,Design Compliance Confirmation,Pre-Homo Confirmation,Validation Compliance Confirmation";
|
||||
fileName = "Compliance results" + ".xlsx";
|
||||
}
|
||||
OutputStream os = null;
|
||||
@@ -391,7 +391,7 @@ public class LawsComplianceBoardServiceImpl implements ILawsComplianceBoardServi
|
||||
|
||||
//设置居中、表头值。
|
||||
for (int i = 0; i < firstLineTitleArr.length; i++){
|
||||
sheet.setColumnWidth(i,5000);
|
||||
sheet.setColumnWidth(i,8000);
|
||||
Cell cell = firstRow.createCell(i);
|
||||
cell.setCellStyle(titleCellStyle);
|
||||
cell.setCellValue(firstLineTitleArr[i]);
|
||||
|
||||
@@ -134,6 +134,22 @@ public class LawsMonthlyReportTitleTemplateEOController extends JeroController<L
|
||||
return Result.OK("批量删除成功!");
|
||||
}
|
||||
|
||||
/**
|
||||
* 目录删除验证
|
||||
*
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "月报标题模板-批量删除")
|
||||
@ApiOperation(value="月报标题模板-批量删除", notes="月报标题模板-批量删除")
|
||||
@GetMapping(value = "/verifyDelete")
|
||||
public Result<?> verifyDelete(@RequestParam(name="ids",required=true) String ids) {
|
||||
String flag = this.lawsMonthlyReportTitleTemplateEOService.verifyDelete(Arrays.asList(ids.split(",")));
|
||||
return Result.OK(flag);
|
||||
}
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
|
||||
@@ -193,4 +193,10 @@ public class LawsMonthlyReportWriteEO implements Serializable {
|
||||
@TableField(exist = false)
|
||||
private String ids;
|
||||
|
||||
//新添字段
|
||||
private String relatedAreasCn;//相关领域中文
|
||||
private String relatedAreasEn;//相关领域英文
|
||||
private String source;//来源
|
||||
private String time;//日期
|
||||
|
||||
}
|
||||
|
||||
@@ -9,7 +9,8 @@ package com.jero.modules.report.enums;
|
||||
public enum ContentTemplateEnum {
|
||||
DEFAULT_TEMPLATE("默认模板","1"),
|
||||
NEW_REQUEST_LIST_TEMPLATE("新征求意见清单模板","2"),
|
||||
NEW_RELEASE_STANDARD_MANIFEST_TEMPLATE("新发布标准清单模板","3");
|
||||
NEW_RELEASE_STANDARD_MANIFEST_TEMPLATE("新发布标准清单模板","3"),
|
||||
INDUSTRY_INFORMATION_TRENDS("行业资讯动态","4");
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -29,5 +29,9 @@
|
||||
<result column="laws_contact" property="lawsContact" />
|
||||
<result column="link" property="link" />
|
||||
<result column="export_state" property="exportState" />
|
||||
<result column="related_areas_cn" property="relatedAreasCn" />
|
||||
<result column="related_areas_en" property="relatedAreasEn" />
|
||||
<result column="source" property="source" />
|
||||
<result column="time" property="time" />
|
||||
</resultMap>
|
||||
</mapper>
|
||||
|
||||
@@ -48,6 +48,13 @@ public interface ILawsMonthlyReportTitleTemplateEOService extends IService<LawsM
|
||||
*/
|
||||
void deleteByIds(List<String> ids);
|
||||
|
||||
/**
|
||||
* 目录删除验证
|
||||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
String verifyDelete(List<String> ids);
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
|
||||
@@ -121,6 +121,32 @@ public class LawsMonthlyReportTitleTemplateEOServiceImpl extends ServiceImpl<Law
|
||||
removeByIds(ids);
|
||||
}
|
||||
|
||||
/**
|
||||
* 目录删除验证
|
||||
* @param ids
|
||||
*/
|
||||
@Override
|
||||
public String verifyDelete(List<String> ids) {
|
||||
//标题下存在内容或子标题时不能删除
|
||||
//1. 判断是否存在子标题
|
||||
LambdaQueryWrapper<LawsMonthlyReportTitleTemplateEO> wrapper = new LambdaQueryWrapper<>();
|
||||
wrapper.in(LawsMonthlyReportTitleTemplateEO::getParentId,ids);
|
||||
List<LawsMonthlyReportTitleTemplateEO> list = this.list(wrapper);
|
||||
if(list.size() != 0){
|
||||
//不能删除
|
||||
return "false";
|
||||
}
|
||||
//2. 判断是否存在内容 memories_chapter
|
||||
LambdaQueryWrapper<LawsMonthlyReportWriteEO> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
||||
lambdaQueryWrapper.in(LawsMonthlyReportWriteEO::getMemoriesChapter,ids);
|
||||
List<LawsMonthlyReportWriteEO> lawsMonthlyReportWriteEOS = lawsMonthlyReportWriteEOService.list(lambdaQueryWrapper);
|
||||
if(lawsMonthlyReportWriteEOS.size() != 0){
|
||||
//不能删除
|
||||
return "false";
|
||||
}
|
||||
return "true";
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
|
||||
@@ -414,7 +414,16 @@ public class LawsMonthlyReportWriteEOServiceImpl extends ServiceImpl<LawsMonthly
|
||||
if(StringUtils.isNotBlank(lawsMonthlyReportWriteEO.getIds())){
|
||||
wrapper.in(LawsMonthlyReportWriteEO::getId,Arrays.asList(lawsMonthlyReportWriteEO.getIds().split(",")));
|
||||
}
|
||||
//管理员查看全部数据,其余人只能查看自己的数据
|
||||
LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
List<String> rolesList = sysBaseApi.getRolesByUsername(currentUser.getUsername());
|
||||
if(!rolesList.contains(ProjectRoleEnum.ADMIN.getCode())){
|
||||
wrapper.in(LawsMonthlyReportWriteEO::getCreateBy,currentUser.getUsername());
|
||||
}
|
||||
List<LawsMonthlyReportWriteEO> lawsMonthlyReportWriteEOS = this.list(wrapper);
|
||||
//法规联系人
|
||||
List<LoginUser> loginUserList = getlawsContact(lawsMonthlyReportWriteEOS);
|
||||
|
||||
|
||||
List<String> lawsMonthlyReportIdList = lawsMonthlyReportWriteEOS.stream().map(LawsMonthlyReportWriteEO::getId).collect(Collectors.toList());
|
||||
//新征求意见清单模板
|
||||
@@ -456,8 +465,8 @@ public class LawsMonthlyReportWriteEOServiceImpl extends ServiceImpl<LawsMonthly
|
||||
List<LawsMonthlyReportTitleTemplateEO> lawsMonthlyReportTitleTemplateEOS = lawsMonthlyReportTitleTemplateEOService.list();
|
||||
lawsMonthlyReportTitleTemplateEOS = lawsMonthlyReportTitleTemplateEOS.stream()
|
||||
.filter(e -> memoriesChapterList.contains(e.getId())).collect(Collectors.toList());
|
||||
|
||||
String path = uploadpath + "/tempZip";
|
||||
long l = System.currentTimeMillis();
|
||||
String path = uploadpath + "/tempZip"+l;
|
||||
File fileTemp = new File(path);
|
||||
if (fileTemp.exists()) {
|
||||
fileTemp.delete();
|
||||
@@ -465,7 +474,7 @@ public class LawsMonthlyReportWriteEOServiceImpl extends ServiceImpl<LawsMonthly
|
||||
fileTemp.mkdirs();
|
||||
OutputStream os = null;
|
||||
try {
|
||||
createWord(path,lawsMonthlyReportWriteEOS,lawsMonthlyReportTitleTemplateEOS);
|
||||
createWord(path,lawsMonthlyReportWriteEOS,lawsMonthlyReportTitleTemplateEOS,loginUserList);
|
||||
ZipUtil.zip(path, path + ".zip");
|
||||
//文件
|
||||
os = response.getOutputStream();
|
||||
@@ -477,13 +486,15 @@ public class LawsMonthlyReportWriteEOServiceImpl extends ServiceImpl<LawsMonthly
|
||||
os.write(len);
|
||||
}
|
||||
os.flush();
|
||||
os.close();
|
||||
fis.close();
|
||||
} catch (Exception e) {
|
||||
|
||||
}finally {
|
||||
IOUtils.closeQuietly(os);
|
||||
File file = new File(uploadpath + "/tempZip");
|
||||
File file = new File(uploadpath + "/tempZip"+l);
|
||||
FileUtil.deleteContents(file);
|
||||
File fileTem = new File(uploadpath + "/tempZip.zip");
|
||||
File fileTem = new File(uploadpath + "/tempZip"+l+".zip");
|
||||
FileUtil.deleteContents(fileTem);
|
||||
}
|
||||
//导出月报后修改列表状态
|
||||
@@ -505,6 +516,28 @@ public class LawsMonthlyReportWriteEOServiceImpl extends ServiceImpl<LawsMonthly
|
||||
}
|
||||
}
|
||||
|
||||
private List<LoginUser> getlawsContact(List<LawsMonthlyReportWriteEO> lawsMonthlyReportWriteEOS) {
|
||||
List<String> userIdList = lawsMonthlyReportWriteEOS.stream().map(LawsMonthlyReportWriteEO::getLawsContact).collect(Collectors.toList());
|
||||
//法规联系人
|
||||
List<String> userIds = new ArrayList<>();
|
||||
for (String s : userIdList) {
|
||||
if(StringUtils.isNotBlank(s)){
|
||||
if(s.contains(",")){
|
||||
userIds.addAll(Arrays.asList(s.split(",")));
|
||||
}else{
|
||||
userIds.add(s);
|
||||
}
|
||||
}
|
||||
}
|
||||
List<JSONObject> jsonObjects = sysBaseApi.queryUsersByIds(StringUtils.join(userIds, ","));
|
||||
List<LoginUser> userList = new ArrayList<>();
|
||||
for (JSONObject jsonObject : jsonObjects) {
|
||||
LoginUser loginUser = JSONObject.parseObject(jsonObject.toJSONString(), LoginUser.class);
|
||||
userList.add(loginUser);
|
||||
}
|
||||
return userList;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
*创建word文件
|
||||
@@ -514,7 +547,8 @@ public class LawsMonthlyReportWriteEOServiceImpl extends ServiceImpl<LawsMonthly
|
||||
*/
|
||||
private void createWord(String path,
|
||||
List<LawsMonthlyReportWriteEO> lawsMonthlyReportWriteEOS,
|
||||
List<LawsMonthlyReportTitleTemplateEO> lawsMonthlyReportTitleTemplateEOS){
|
||||
List<LawsMonthlyReportTitleTemplateEO> lawsMonthlyReportTitleTemplateEOS,
|
||||
List<LoginUser> loginUserList){
|
||||
//一级菜单
|
||||
List<String> parentIdList = lawsMonthlyReportTitleTemplateEOS.stream().map(LawsMonthlyReportTitleTemplateEO::getParentId).distinct().collect(Collectors.toList());
|
||||
LambdaQueryWrapper<LawsMonthlyReportTitleTemplateEO> wrapper = new LambdaQueryWrapper<>();
|
||||
@@ -583,13 +617,15 @@ public class LawsMonthlyReportWriteEOServiceImpl extends ServiceImpl<LawsMonthly
|
||||
//内容中文版
|
||||
XWPFDocument documentContentCn = new XWPFDocument();
|
||||
FileOutputStream outContentCn = new FileOutputStream(wordFileContentCn);
|
||||
wordContent(lawsMonthlyReportWriteEOS, lawsMonthlyReportTitleTemplateEOS, reportTitleOneList, titleCN, documentContentCn,CutEnum.CN.getValue());
|
||||
wordContent(lawsMonthlyReportWriteEOS, lawsMonthlyReportTitleTemplateEOS, reportTitleOneList, titleCN,
|
||||
documentContentCn,CutEnum.CN.getValue(),loginUserList);
|
||||
documentContentCn.write(outContentCn);
|
||||
|
||||
//内容英文版
|
||||
XWPFDocument documentContentEn = new XWPFDocument();
|
||||
FileOutputStream outContentEn = new FileOutputStream(wordFileContentEn);
|
||||
wordContent(lawsMonthlyReportWriteEOS, lawsMonthlyReportTitleTemplateEOS, reportTitleOneList, titleCN, documentContentEn,CutEnum.EN.getValue());
|
||||
wordContent(lawsMonthlyReportWriteEOS, lawsMonthlyReportTitleTemplateEOS, reportTitleOneList, titleEN,
|
||||
documentContentEn,CutEnum.EN.getValue(), loginUserList);
|
||||
documentContentEn.write(outContentEn);
|
||||
|
||||
} catch (IOException e) {
|
||||
@@ -675,7 +711,8 @@ public class LawsMonthlyReportWriteEOServiceImpl extends ServiceImpl<LawsMonthly
|
||||
List<LawsMonthlyReportTitleTemplateEO> reportTitleOneList,
|
||||
String titleCN,
|
||||
XWPFDocument document,
|
||||
String cut) {
|
||||
String cut,
|
||||
List<LoginUser> loginUserList) {
|
||||
//数据字典
|
||||
List<SysDictItem> sysDictItems = sysDictItemServiceImpl.selectItemsAll();
|
||||
|
||||
@@ -753,9 +790,12 @@ public class LawsMonthlyReportWriteEOServiceImpl extends ServiceImpl<LawsMonthly
|
||||
String contentTemplate = lawsMonthlyReportWriteEO.getContentTemplate();
|
||||
if(ContentTemplateEnum.DEFAULT_TEMPLATE.getValue().equals(contentTemplate)){
|
||||
//写入模板
|
||||
WordUtil.exportWordExcelDefault(document,lawsMonthlyReportWriteEO,sysDictItems,categoryList,cut);
|
||||
|
||||
WordUtil.exportWordExcelDefault(document,lawsMonthlyReportWriteEO,sysDictItems,categoryList,cut,loginUserList);
|
||||
}
|
||||
if(ContentTemplateEnum.INDUSTRY_INFORMATION_TRENDS.getValue().equals(contentTemplate)){
|
||||
WordUtil.exportWordExcelIndustry(document,lawsMonthlyReportWriteEO,cut);
|
||||
}
|
||||
|
||||
// else if(ContentTemplateEnum.NEW_REQUEST_LIST_TEMPLATE.getValue().equals(contentTemplate)){
|
||||
// //新征求意见清单模板
|
||||
// WordUtil.exportWordExcelAsk(document,lawsMonthlyReportWriteEO,cut);
|
||||
|
||||
@@ -2,7 +2,7 @@ package com.jero.modules.report.util;
|
||||
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.jero.common.constant.enums.CutEnum;
|
||||
import com.jero.modules.project.service.impl.ProjectLawsInventoryEOServiceImpl;
|
||||
import com.jero.common.system.vo.LoginUser;
|
||||
import com.jero.modules.report.entity.LawsMonthlyReportWriteEO;
|
||||
import com.jero.modules.report.entity.NewOpinionTemplateEO;
|
||||
import com.jero.modules.report.entity.NewStandardTemplateEO;
|
||||
@@ -36,7 +36,6 @@ import org.openxmlformats.schemas.wordprocessingml.x2006.main.STFldCharType;
|
||||
import org.openxmlformats.schemas.wordprocessingml.x2006.main.STJc;
|
||||
import org.openxmlformats.schemas.wordprocessingml.x2006.main.STTblWidth;
|
||||
|
||||
import java.io.FileInputStream;
|
||||
import java.io.InputStream;
|
||||
import java.math.BigInteger;
|
||||
import java.util.Arrays;
|
||||
@@ -44,6 +43,7 @@ import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class WordUtil {
|
||||
|
||||
/**
|
||||
* 导出工具示例
|
||||
*
|
||||
@@ -350,7 +350,8 @@ public class WordUtil {
|
||||
LawsMonthlyReportWriteEO lawsMonthlyReportWriteEO,
|
||||
List<SysDictItem> sysDictItems,
|
||||
List<SysCategory> categoryList,
|
||||
String cut) {
|
||||
String cut,
|
||||
List<LoginUser> loginUserList) {
|
||||
String technologyTerritory = lawsMonthlyReportWriteEO.getTechnologyTerritory();//技术领域
|
||||
String applyCar = lawsMonthlyReportWriteEO.getApplyCar();//适用车型
|
||||
String applyScope = lawsMonthlyReportWriteEO.getApplyScope();//适用范围
|
||||
@@ -363,7 +364,8 @@ public class WordUtil {
|
||||
String contentEn = lawsMonthlyReportWriteEO.getContentEn();//主要内容英文
|
||||
String workProgressCn = lawsMonthlyReportWriteEO.getWorkProgressCn();//NIO工作进展中文
|
||||
String workProgressEn = lawsMonthlyReportWriteEO.getWorkProgressEn();//NIO工作进展英文
|
||||
String lawsContact = lawsMonthlyReportWriteEO.getLawsContact();//法规联系人
|
||||
String lawsContactTemp = lawsMonthlyReportWriteEO.getLawsContact();//法规联系人
|
||||
String lawsContact = getLawsContact(loginUserList, lawsContactTemp);
|
||||
String link = lawsMonthlyReportWriteEO.getLink();//链接
|
||||
String technologyTerritoryName = "";
|
||||
if(org.apache.commons.lang3.StringUtils.isNotBlank(technologyTerritory)){
|
||||
@@ -404,54 +406,163 @@ public class WordUtil {
|
||||
//第1行
|
||||
if(CutEnum.CN.getValue().equals(cut)){
|
||||
//第1行
|
||||
setCell(table.getRow(0), "技术领域",technologyTerritoryName);
|
||||
setCell(table, 0, "相关领域",technologyTerritoryName);
|
||||
//第2行
|
||||
setCell(table.getRow(1), "适用车型",applyCarName);
|
||||
setCell(table,1, "适用车型",applyCarName);
|
||||
//第3行
|
||||
setCell(table.getRow(2), "适用范围",applyScopeName);
|
||||
setCell(table,2, "适用范围",applyScopeName);
|
||||
//第4行
|
||||
setCell(table.getRow(3), "状态",stateName);
|
||||
setCell(table,3, "状态",stateName);
|
||||
//第5行
|
||||
setCell(table.getRow(4), "用法",useMethodName);
|
||||
setCell(table,4, "用法",useMethodName);
|
||||
//第6行
|
||||
setCell(table.getRow(5), "实施车型",implementCar);
|
||||
setCell(table,5, "实施车型",implementCar);
|
||||
//第7行
|
||||
setCell(table.getRow(6), "新车型实施日期",newCarImplementTime);
|
||||
setCell(table,6, "新车型实施日期",newCarImplementTime);
|
||||
//第8行
|
||||
setCell(table.getRow(7), "在产车实施日期",productionCarImplementTime);
|
||||
setCell(table,7, "在产车实施日期",productionCarImplementTime);
|
||||
//第9行
|
||||
setCell(table.getRow(8), "主要内容中文",contentCn);
|
||||
setCell(table,8, "主要内容",contentCn);
|
||||
//第10行
|
||||
setCell(table.getRow(9), "NIO工作进展中文",workProgressCn);
|
||||
setCell(table,9, "NIO工作进展",workProgressCn);
|
||||
//第11行
|
||||
setCell(table.getRow(10), "法规联系人",lawsContact);
|
||||
setCell(table,10, "法规联系人",lawsContact);
|
||||
//第12行
|
||||
setCell(table.getRow(11), "链接",link);
|
||||
setCell(table,11, "链接",link);
|
||||
}else{
|
||||
//第1行
|
||||
setCell(table.getRow(0), "Technical Field",technologyTerritoryName);
|
||||
setCell(table,0, "Related Areas",technologyTerritoryName);
|
||||
//第2行
|
||||
setCell(table.getRow(1), "Vehicle Type",applyCarName);
|
||||
setCell(table,1,"Vehicle Type",applyCarName);
|
||||
//第3行
|
||||
setCell(table.getRow(2), "Scope",applyScopeName);
|
||||
setCell(table,2,"Scope",applyScopeName);
|
||||
//第4行
|
||||
setCell(table.getRow(3), "Status",stateName);
|
||||
setCell(table,3,"Status",stateName);
|
||||
//第5行
|
||||
setCell(table.getRow(4), "usage",useMethodName);
|
||||
setCell(table,4,"usage",useMethodName);
|
||||
//第6行
|
||||
setCell(table.getRow(5), "Implementation Model",implementCar);
|
||||
setCell(table,5,"Implementation Model",implementCar);
|
||||
//第7行
|
||||
setCell(table.getRow(6), "New Type Execution Date",newCarImplementTime);
|
||||
setCell(table,6,"New Type Execution Date",newCarImplementTime);
|
||||
//第8行
|
||||
setCell(table.getRow(7), "New Vehicle Execution Date",productionCarImplementTime);
|
||||
setCell(table,7,"New Vehicle Execution Date",productionCarImplementTime);
|
||||
//第9行
|
||||
setCell(table.getRow(8), "Main Content (English)",contentEn);
|
||||
setCell(table,8,"Main Content",contentEn);
|
||||
//第10行
|
||||
setCell(table.getRow(9), "NIO Work Progress (English)",workProgressEn);
|
||||
setCell(table,9,"NIO Work Progress",workProgressEn);
|
||||
//第11行
|
||||
setCell(table.getRow(10), "Regulatory Contact",lawsContact);
|
||||
setCell(table, 10,"Regulatory Contact",lawsContact);
|
||||
//第12行
|
||||
setCell(table.getRow(11), "Link",link);
|
||||
setCell(table, 11,"Link",link);
|
||||
}
|
||||
// if(CutEnum.CN.getValue().equals(cut)){
|
||||
// //第1行
|
||||
// setCell(table.getRow(0), "相关领域",technologyTerritoryName);
|
||||
// //第2行
|
||||
// setCell(table.getRow(1), "适用车型",applyCarName);
|
||||
// //第3行
|
||||
// setCell(table.getRow(2), "适用范围",applyScopeName);
|
||||
// //第4行
|
||||
// setCell(table.getRow(3), "状态",stateName);
|
||||
// //第5行
|
||||
// setCell(table.getRow(4), "用法",useMethodName);
|
||||
// //第6行
|
||||
// setCell(table.getRow(5), "实施车型",implementCar);
|
||||
// //第7行
|
||||
// setCell(table.getRow(6), "新车型实施日期",newCarImplementTime);
|
||||
// //第8行
|
||||
// setCell(table.getRow(7), "在产车实施日期",productionCarImplementTime);
|
||||
// //第9行
|
||||
// setCell(table.getRow(8), "主要内容",contentCn);
|
||||
// //第10行
|
||||
// setCell(table.getRow(9), "NIO工作进展",workProgressCn);
|
||||
// //第11行
|
||||
// setCell(table.getRow(10), "法规联系人",lawsContact);
|
||||
// //第12行
|
||||
// setCell(table.getRow(11), "链接",link);
|
||||
// }else{
|
||||
// //第1行
|
||||
// setCell(table.getRow(0), "Related Areas",technologyTerritoryName);
|
||||
// //第2行
|
||||
// setCell(table.getRow(1), "Vehicle Type",applyCarName);
|
||||
// //第3行
|
||||
// setCell(table.getRow(2), "Scope",applyScopeName);
|
||||
// //第4行
|
||||
// setCell(table.getRow(3), "Status",stateName);
|
||||
// //第5行
|
||||
// setCell(table.getRow(4), "usage",useMethodName);
|
||||
// //第6行
|
||||
// setCell(table.getRow(5), "Implementation Model",implementCar);
|
||||
// //第7行
|
||||
// setCell(table.getRow(6), "New Type Execution Date",newCarImplementTime);
|
||||
// //第8行
|
||||
// setCell(table.getRow(7), "New Vehicle Execution Date",productionCarImplementTime);
|
||||
// //第9行
|
||||
// setCell(table.getRow(8), "Main Content",contentEn);
|
||||
// //第10行
|
||||
// setCell(table.getRow(9), "NIO Work Progress",workProgressEn);
|
||||
// //第11行
|
||||
// setCell(table.getRow(10), "Regulatory Contact",lawsContact);
|
||||
// //第12行
|
||||
// setCell(table.getRow(11), "Link",link);
|
||||
// }
|
||||
}
|
||||
|
||||
/**
|
||||
* 行业资讯动态
|
||||
* @param document
|
||||
* @param lawsMonthlyReportWriteEO
|
||||
* @param cut
|
||||
*/
|
||||
public static void exportWordExcelIndustry(XWPFDocument document,
|
||||
LawsMonthlyReportWriteEO lawsMonthlyReportWriteEO,
|
||||
String cut) {
|
||||
String relatedAreasCn = lawsMonthlyReportWriteEO.getRelatedAreasCn();//相关领域中文
|
||||
String relatedAreasEn = lawsMonthlyReportWriteEO.getRelatedAreasEn();//相关领域英文
|
||||
String source = lawsMonthlyReportWriteEO.getSource();//来源
|
||||
String time = lawsMonthlyReportWriteEO.getTime();//日期
|
||||
String contentCn = lawsMonthlyReportWriteEO.getContentCn();//主要内容中文
|
||||
String contentEn = lawsMonthlyReportWriteEO.getContentEn();//主要内容英文
|
||||
String link = lawsMonthlyReportWriteEO.getLink();//链接
|
||||
|
||||
XWPFTable table = document.createTable(5, 2);
|
||||
|
||||
//表格属性
|
||||
CTTblPr tablePr = table.getCTTbl().addNewTblPr();
|
||||
//表格宽度
|
||||
CTJc cTJc = tablePr.addNewJc();
|
||||
//居中
|
||||
cTJc.setVal(STJc.CENTER);
|
||||
//列宽自动分割
|
||||
CTTblWidth tableWidth = tablePr.addNewTblW();
|
||||
//设置表格宽度
|
||||
tableWidth.setType(STTblWidth.DXA);
|
||||
tableWidth.setW(BigInteger.valueOf(8000));
|
||||
|
||||
|
||||
//第1行
|
||||
if(CutEnum.CN.getValue().equals(cut)){
|
||||
//第1行
|
||||
setCell(table, 0, "相关领域",relatedAreasCn);
|
||||
//第2行
|
||||
setCell(table,1, "来源",source);
|
||||
//第3行
|
||||
setCell(table,2, "日期",time);
|
||||
//第4行
|
||||
setCell(table,3, "主要内容",contentCn);
|
||||
//第5行
|
||||
setCell(table,4, "链接",link);
|
||||
}else{
|
||||
//第1行
|
||||
setCell(table,0, "Related Areas",relatedAreasEn);
|
||||
//第2行
|
||||
setCell(table,1,"source",source);
|
||||
//第3行
|
||||
setCell(table,2,"Date",time);
|
||||
//第4行
|
||||
setCell(table,3,"Main Content",contentEn);
|
||||
//第5行
|
||||
setCell(table,4,"Link",link);
|
||||
}
|
||||
}
|
||||
public static void exportWordExcelAsk(XWPFDocument document,
|
||||
@@ -666,18 +777,49 @@ public class WordUtil {
|
||||
return fieldValueName;
|
||||
}
|
||||
|
||||
private static void setCell(XWPFTableRow tableRow, String fieldName,String technologyTerritory) {
|
||||
private static void setCell(XWPFTable table, int number, String fieldName,String technologyTerritory) {
|
||||
|
||||
tableRow.setHeight(500);
|
||||
CTTblWidth ctTblWidth0 = tableRow.getCell(0).getCTTc().addNewTcPr().addNewTcW();
|
||||
table.getRow(number).setHeight(500);
|
||||
CTTblWidth ctTblWidth0 = table.getRow(number).getCell(0).getCTTc().addNewTcPr().addNewTcW();
|
||||
ctTblWidth0.setType(STTblWidth.DXA);
|
||||
ctTblWidth0.setW(BigInteger.valueOf(3000));
|
||||
CTTblWidth ctTblWidth1 = tableRow.getCell(1).getCTTc().addNewTcPr().addNewTcW();
|
||||
ctTblWidth0.setW(BigInteger.valueOf(2000));
|
||||
CTTblWidth ctTblWidth1 = table.getRow(number).getCell(1).getCTTc().addNewTcPr().addNewTcW();
|
||||
ctTblWidth1.setType(STTblWidth.DXA);
|
||||
ctTblWidth1.setW(BigInteger.valueOf(5000));
|
||||
|
||||
tableRow.getCell(0).setText(fieldName);
|
||||
tableRow.getCell(1).setText(technologyTerritory);
|
||||
table.getRow(number).getCell(0).setText(fieldName);
|
||||
table.getRow(number).getCell(1).setText(technologyTerritory);
|
||||
}
|
||||
// private static void setCell(XWPFTableRow tableRow, String fieldName,String technologyTerritory) {
|
||||
//
|
||||
// tableRow.setHeight(500);
|
||||
// CTTblWidth ctTblWidth0 = tableRow.getCell(0).getCTTc().addNewTcPr().addNewTcW();
|
||||
// ctTblWidth0.setType(STTblWidth.DXA);
|
||||
// ctTblWidth0.setW(BigInteger.valueOf(3000));
|
||||
// CTTblWidth ctTblWidth1 = tableRow.getCell(1).getCTTc().addNewTcPr().addNewTcW();
|
||||
// ctTblWidth1.setType(STTblWidth.DXA);
|
||||
// ctTblWidth1.setW(BigInteger.valueOf(5000));
|
||||
//
|
||||
// tableRow.getCell(0).setText(fieldName);
|
||||
// tableRow.getCell(1).setText(technologyTerritory);
|
||||
// }
|
||||
|
||||
private static String getLawsContact(List<LoginUser> userList, String lawsContact) {
|
||||
if(com.jero.modules.system.util.StringUtils.isNotBlank(lawsContact)){
|
||||
List<LoginUser> collect = userList.stream().filter(e -> lawsContact.contains(e.getId())).collect(Collectors.toList());
|
||||
StringBuilder sb = new StringBuilder();
|
||||
for (String s : lawsContact.split(",")) {
|
||||
List<LoginUser> loginUserList = collect.stream().filter(e -> e.getId().equals(s)).collect(Collectors.toList());
|
||||
if(loginUserList.size() != 0){
|
||||
sb.append(loginUserList.get(0).getUsername()+",");
|
||||
}
|
||||
}
|
||||
if(com.jero.modules.system.util.StringUtils.isNotBlank(sb)){
|
||||
String substring = sb.substring(0, sb.length() - 1);
|
||||
return substring;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -41,9 +41,12 @@ import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.io.IOException;
|
||||
import java.io.OutputStream;
|
||||
import java.text.ParseException;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.Calendar;
|
||||
import java.util.Date;
|
||||
import java.util.HashSet;
|
||||
import java.util.LinkedList;
|
||||
import java.util.List;
|
||||
@@ -127,9 +130,63 @@ public class LawsWarnService {
|
||||
bussDocumentLibraryEOService.dictItem(sysDictItems, entry, cut, onlCgformFieldListTemp,null);
|
||||
bussDocumentLibraryEOService.treeDictItem(categoryList, entry, treeFieldList, cut,null);
|
||||
}
|
||||
//到期前6个月显示红色,到期前12个月显示黄色
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
||||
String newCarTime = String.valueOf(record.get("xin1_che1_xing2_shi2_shi1_ri4_qi1"));
|
||||
String implementTime = String.valueOf(record.get("implement_time"));
|
||||
String currentTime = sdf.format(new Date());
|
||||
if(StringUtils.isNotBlank(newCarTime) && !"null".equals(newCarTime)){
|
||||
try {
|
||||
if(Integer.parseInt(String.valueOf(parameter.get("flag"))) == 0){
|
||||
Date newCarTimeDate = sdf.parse(newCarTime);
|
||||
//当前时间的前6个月
|
||||
String beforeTimeSix = beforeTime(6,new Date());
|
||||
String beforeTimeTwelve = beforeTime(12,new Date());
|
||||
Date parseSix = sdf.parse(beforeTimeSix);
|
||||
Date parseTwelve = sdf.parse(beforeTimeTwelve);
|
||||
if((newCarTimeDate.after(new Date()) && newCarTimeDate.before(parseSix)) || newCarTime.equals(beforeTimeSix)){
|
||||
record.put("new_colour","red");
|
||||
}
|
||||
if((newCarTimeDate.after(parseSix) && newCarTimeDate.before(parseTwelve)) || newCarTime.equals(beforeTimeTwelve)){
|
||||
record.put("new_colour","yellow");
|
||||
}
|
||||
}
|
||||
} catch (ParseException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
if(StringUtils.isNotBlank(implementTime) && !"null".equals(implementTime)){
|
||||
try {
|
||||
if(Integer.parseInt(String.valueOf(parameter.get("flag"))) == 1){
|
||||
Date implementTimeDate = sdf.parse(implementTime);
|
||||
//当前时间的前6个月
|
||||
String beforeTimeSix = beforeTime(6,new Date());
|
||||
String beforeTimeTwelve = beforeTime(12,new Date());
|
||||
Date parseSix = sdf.parse(beforeTimeSix);
|
||||
Date parseTwelve = sdf.parse(beforeTimeTwelve);
|
||||
if((implementTimeDate.after(new Date()) && implementTimeDate.before(parseSix)) || implementTime.equals(beforeTimeSix)){
|
||||
record.put("implement_colour","red");
|
||||
}
|
||||
if((implementTimeDate.after(parseSix) && implementTimeDate.before(parseTwelve)) || implementTime.equals(beforeTimeTwelve)){
|
||||
record.put("implement_colour","yellow");
|
||||
}
|
||||
}
|
||||
} catch (ParseException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
return infoPage;
|
||||
}
|
||||
private String beforeTime (int month, Date date){
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
||||
Calendar calendarBefore = Calendar.getInstance();
|
||||
calendarBefore.setTime(date);
|
||||
calendarBefore.add(Calendar.MONTH, month);
|
||||
Date dateBefore = calendarBefore.getTime();
|
||||
String beforeTime = sdf.format(dateBefore);
|
||||
return beforeTime;
|
||||
}
|
||||
|
||||
public void exportExcel(Map<String, Object> map, HttpServletResponse response, HttpServletRequest request) {
|
||||
String cut = (String) map.get("cut");
|
||||
|
||||
|
After Width: | Height: | Size: 68 KiB |
|
After Width: | Height: | Size: 16 KiB |
|
After Width: | Height: | Size: 5.5 KiB |
|
After Width: | Height: | Size: 94 KiB |
|
After Width: | Height: | Size: 1.6 KiB |
|
After Width: | Height: | Size: 34 KiB |
|
After Width: | Height: | Size: 17 KiB |
|
After Width: | Height: | Size: 178 KiB |
|
After Width: | Height: | Size: 2.8 KiB |
|
After Width: | Height: | Size: 58 KiB |
|
After Width: | Height: | Size: 1.5 KiB |
|
After Width: | Height: | Size: 1.5 KiB |
|
After Width: | Height: | Size: 7.1 KiB |
@@ -1168,7 +1168,7 @@ module.exports = {
|
||||
exportComparisonReport: 'Export Comparison Report',
|
||||
comparisonDifferenceComment: 'Comparison Difference Comment',
|
||||
fullTextComments: 'Full text comments',
|
||||
fileDeclaration: 'file Declaration',
|
||||
fileDeclaration: 'File Declaration',
|
||||
FileForDetails: 'File For Details',
|
||||
Converting: 'Converting',
|
||||
convertNetwork: 'Convert Network',
|
||||
@@ -1255,9 +1255,11 @@ module.exports = {
|
||||
deleteNode:'If there is any file information, the file will be deleted. Are you sure to delete this data?',
|
||||
HaveReleased:'Have released',
|
||||
forward:'Forward',
|
||||
areResponsibilityAreaInformationBatch:'Are you sure you want to modify the responsibility area information in batch',
|
||||
issuedBy:'Issued by',
|
||||
pleaseDecompositionStandardOrder:'Please import or bring in at least one decomposition standard order',
|
||||
currentlyTheFirstOneThatCannotMovedUp:'Currently the first one that cannot be moved up',
|
||||
currentlyTheLastOneCannotmovedDown:'Currently the last one cannot be moved down',
|
||||
weilaiRegulationMonthlyReport:'Weilai Regulation Monthly Report',
|
||||
thereTitleWhichCannotBeDeleted:'There are new contents under this title, which cannot be deleted',
|
||||
}
|
||||
@@ -495,7 +495,7 @@ module.exports = {
|
||||
toBeConfirmed: '待确认',
|
||||
Operator: '操作人',
|
||||
role: '角色',
|
||||
operationContent: '操作内容',
|
||||
OperationContent: '操作内容',
|
||||
operationTime: '操作时间',
|
||||
toDoProcess: '待办流程',
|
||||
processDone: '已办流程',
|
||||
@@ -1357,9 +1357,11 @@ module.exports = {
|
||||
deleteNode:'若有文件信息将同步删除,确认删除该条数据?',
|
||||
HaveReleased:'已发布',
|
||||
forward:'转发',
|
||||
areResponsibilityAreaInformationBatch:'确实是否批量修改责任领域信息',
|
||||
issuedBy:'发布人',
|
||||
pleaseDecompositionStandardOrder:'请导入或带入至少一条分解标准单',
|
||||
currentlyTheFirstOneThatCannotMovedUp:'当前已是第一个无法进行上移',
|
||||
currentlyTheLastOneCannotmovedDown:'当前已是最后一个无法进行下移',
|
||||
weilaiRegulationMonthlyReport:'蔚来法规月报',
|
||||
thereTitleWhichCannotBeDeleted:'该标题下存在新增内容,不能删除',
|
||||
}
|
||||
@@ -278,6 +278,18 @@
|
||||
<!-- 文本+下拉多选-->
|
||||
<div v-else-if='detailDate.controlType === "6"' class='add_flex'>
|
||||
<div v-for='(item,index) in detailDate.list' :key='index' class='add-width'>
|
||||
<div v-if='item.type==="pull_more"'>
|
||||
<a-select v-model="item.dataValue"
|
||||
:getPopupContainer="triggerNode=> triggerNode.parentNode"
|
||||
mode="multiple" class='selectWid'
|
||||
:disabled="item.isLock == '1' ? true: false" allowClear>
|
||||
<a-select-option v-for="(item, key) in item.controlValue" :key="key" :value="item.value">
|
||||
<span style="display: inline-block;width: 100%" :title=" item.label ">
|
||||
{{ item.label }}
|
||||
</span>
|
||||
</a-select-option>
|
||||
</a-select>
|
||||
</div>
|
||||
<div v-if='item.type==="text"'>
|
||||
<!-- 文本校验 分情况-->
|
||||
<!-- 1 无-->
|
||||
@@ -369,18 +381,7 @@
|
||||
v-model="item.dataValue"/>
|
||||
</div>
|
||||
</div>
|
||||
<div v-if='item.type==="pull_more"'>
|
||||
<a-select v-model="item.dataValue"
|
||||
:getPopupContainer="triggerNode=> triggerNode.parentNode"
|
||||
mode="multiple" class='selectWid'
|
||||
:disabled="item.isLock == '1' ? true: false" allowClear>
|
||||
<a-select-option v-for="(item, key) in item.controlValue" :key="key" :value="item.value">
|
||||
<span style="display: inline-block;width: 100%" :title=" item.label ">
|
||||
{{ item.label }}
|
||||
</span>
|
||||
</a-select-option>
|
||||
</a-select>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<!-- 文本+附件-->
|
||||
@@ -680,8 +681,9 @@
|
||||
uploadFileChangeDown
|
||||
},
|
||||
mounted() {
|
||||
console.log(this.detailDate)
|
||||
this.detailDate.list.forEach((item) => {
|
||||
if (item.type === 'pull_more') {
|
||||
if (item.type === 'pull_more' && !item.dataValue) {
|
||||
item.dataValue = []
|
||||
}
|
||||
// this.detailDatetransformation.push(item)
|
||||
@@ -737,11 +739,11 @@
|
||||
},
|
||||
watch: {
|
||||
detailDate(newold, oldold) {
|
||||
console.log(newold, oldold, 'll')
|
||||
// console.log(newold, oldold, 'll')
|
||||
},
|
||||
formInline: {
|
||||
handler(newOld, oldval) {
|
||||
console.log(newOld, oldval, 'll')
|
||||
// console.log(newOld, oldval, 'll')
|
||||
},
|
||||
deep: true
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div>
|
||||
<div class="box-title-text">
|
||||
<a-input class="box-input" :value="value" @input="indexclick($event)"
|
||||
<a-input class="box-input" :value="value" :title="value" @input="indexclick($event)"
|
||||
:disabled="isDisabled"
|
||||
:placeholder="!isDisabled?$t('PleaseEnterOrSelect')+query.db_field_txt:query.db_field_txt"/>
|
||||
<a-button v-if="!isDisabled" type="primary" class="button-box" @click="standardClick">
|
||||
@@ -224,7 +224,7 @@
|
||||
position: absolute;
|
||||
bottom: 0;
|
||||
width: 100%;
|
||||
z-index:100;
|
||||
z-index: 100;
|
||||
border-top: 1px solid #e8e8e8;
|
||||
padding: 10px 16px;
|
||||
text-align: right;
|
||||
|
||||
@@ -56,12 +56,19 @@
|
||||
|
||||
<a-row style="margin-bottom: 12px;">
|
||||
<a-col :md="12" :xs="24">
|
||||
<a-form-item :label="$t('FilterMatching')" :labelCol="{md: 6,xs:24}" :wrapperCol="{md: 18,xs:24}" style="width: 100%;">
|
||||
<a-select v-model="matchType" :getPopupContainer="node=>node.parentNode" style="width: 100%;">
|
||||
<a-select-option value="and">AND{{$t('AllMatching')}}</a-select-option>
|
||||
<a-select-option value="or">OR{{$t('AnyOneMatches')}}</a-select-option>
|
||||
</a-select>
|
||||
</a-form-item>
|
||||
<div class="box-title-text">
|
||||
<div class="title-text" :title="$t('FilterMatching')">
|
||||
<span>{{$t('FilterMatching')}}</span>
|
||||
</div>
|
||||
<!-- :label="$t('FilterMatching')" :labelCol="{md: 6,xs:24}" :wrapperCol="{md: 18,xs:24}" style="width: 100%;"-->
|
||||
<a-form-item class='box-input'>
|
||||
<a-select v-model="matchType" :getPopupContainer="node=>node.parentNode" style="width: 100%;">
|
||||
<a-select-option value="and">AND{{$t('AllMatching')}}</a-select-option>
|
||||
<a-select-option value="or">OR{{$t('AnyOneMatches')}}</a-select-option>
|
||||
</a-select>
|
||||
</a-form-item>
|
||||
</div>
|
||||
|
||||
</a-col>
|
||||
</a-row>
|
||||
|
||||
@@ -627,7 +634,33 @@
|
||||
</script>
|
||||
|
||||
<style lang="less" scoped>
|
||||
.box-title-text {
|
||||
line-height: 1.4;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
.title-text {
|
||||
width: 110px;
|
||||
color: #000F16;
|
||||
display: inline-block;
|
||||
font-weight: 500;
|
||||
font-size: 14px;
|
||||
margin-right: 16px;
|
||||
margin-top: 3px;
|
||||
text-align: right;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
|
||||
.box-input {
|
||||
display: inline-block;
|
||||
width: 70%;
|
||||
height: 38px;
|
||||
margin-top: 2px;
|
||||
}
|
||||
.j-super-query-box {
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
@@ -189,6 +189,14 @@
|
||||
},
|
||||
methods: {
|
||||
searchQuery() {
|
||||
if (this.isDefault) {
|
||||
let startTime = moment(new Date()).format('YYYY-MM-DD')
|
||||
let endTime = this.haflYear()
|
||||
if (this.queryParam['WarnTime'].length == 0) {
|
||||
this.queryParam['WarnTime'] = [startTime, endTime]
|
||||
}
|
||||
this.queryParam = { ...this.queryParam }
|
||||
}
|
||||
eventBUs.$emit('searchQuery', JSON.parse(JSON.stringify(this.queryParam)))
|
||||
},
|
||||
searchReset() {
|
||||
@@ -298,8 +306,7 @@
|
||||
}
|
||||
|
||||
.title-text {
|
||||
width: 20%;
|
||||
min-width: 110px;
|
||||
width: 100px;
|
||||
color: #000F16;
|
||||
display: inline-block;
|
||||
font-weight: 500;
|
||||
@@ -315,7 +322,7 @@
|
||||
.box-input {
|
||||
/*min-width: 200px;*/
|
||||
display: inline-block;
|
||||
width: 70%;
|
||||
width: calc(100% - 116px);
|
||||
height: 38px;
|
||||
margin-top: 2px;
|
||||
}
|
||||
@@ -324,4 +331,16 @@
|
||||
height: 38px;
|
||||
/*margin-top: 2px;*/
|
||||
}
|
||||
|
||||
::v-deep .ant-select-tree {
|
||||
width: auto;
|
||||
height: 300px;
|
||||
overflow: auto;
|
||||
position: absolute;
|
||||
/*background: #fff;*/
|
||||
}
|
||||
|
||||
::v-deep .ant-select-tree-dropdown {
|
||||
min-height: 320px;
|
||||
}
|
||||
</style>
|
||||
@@ -25,6 +25,9 @@
|
||||
<span style='padding-right: 10px;margin-left: -16px'>{{ item.db_field_txt }} </span>
|
||||
<a-button @click='onClickSee(item)'>{{$t('See')}}</a-button>
|
||||
</div>
|
||||
<span slot="ParameterDescription" slot-scope="text,record" :title="text">
|
||||
{{ text && text.length > 8 ? text.slice(0, 7) + '...' : text }}
|
||||
</span>
|
||||
|
||||
<span slot="operationbtn" slot-scope="record">
|
||||
<span v-if='currentPersonRole === "homo"'>
|
||||
@@ -220,10 +223,10 @@
|
||||
type: Object,
|
||||
default: true
|
||||
},
|
||||
queryParamQuery: {
|
||||
type: Object,
|
||||
default: true
|
||||
},
|
||||
// queryParamQuery: {
|
||||
// type: Object,
|
||||
// default: true
|
||||
// },
|
||||
currentPersonRole: {
|
||||
type: String,
|
||||
default: true
|
||||
@@ -452,6 +455,7 @@
|
||||
console.log(res)
|
||||
if (res.data.success) {
|
||||
_this.$message.success(_this.$t('OperationSuccessful'))
|
||||
// this.$refs['ruleFormOne'].resetFields()
|
||||
_this.areaVisiblezr = false
|
||||
this.getLoginUserType()
|
||||
} else {
|
||||
@@ -492,6 +496,7 @@
|
||||
console.log(res)
|
||||
if (res.data.success) {
|
||||
_this.$message.success(_this.$t('OperationSuccessful'))
|
||||
this.$refs['ruleForm'].resetFields()
|
||||
_this.areaVisible = false
|
||||
this.getLoginUserType()
|
||||
} else {
|
||||
@@ -515,23 +520,25 @@
|
||||
},
|
||||
// 点击工程接口人的详情人员 有权限
|
||||
areaOfResponsibility(record) {
|
||||
this.areaVisible = true
|
||||
|
||||
// this.$refs.ruleForm.clearValidate()
|
||||
this.$nextTick(() => {
|
||||
this.Dateline = { ...this.Dateline }
|
||||
this.getquerySdtList(record)
|
||||
this.$refs.ruleForm.clearValidate()
|
||||
})
|
||||
this.areaVisible = true
|
||||
},
|
||||
// 点击责任领域的详情人员 有权限
|
||||
ondataValueTobe(record) {
|
||||
this.areaVisiblezr = true
|
||||
|
||||
// this.$refs.ruleForm.clearValidate()
|
||||
this.$nextTick(() => {
|
||||
this.Dateline = { ...this.Dateline }
|
||||
this.getquerySdtId = record.id
|
||||
this.$refs.ruleFormOne.clearValidate()
|
||||
})
|
||||
this.areaVisiblezr = true
|
||||
},
|
||||
dataValueTobeinitiated() {
|
||||
this.$message.warning(this.$t('certifiedEngineer') + this.$t('and') + this.$t('Statusis') + this.$t('CollectionInitiated') + this.$t('ReturnedPerson') + this.$t('alteration') + this.$t('toHavePermission'))
|
||||
@@ -627,7 +634,7 @@
|
||||
title: res.db_field_txt,
|
||||
dataIndex: res.db_field_name,
|
||||
align: 'center',
|
||||
ellipsis: true,
|
||||
// ellipsis: true,
|
||||
sorter: res.sort,
|
||||
width: 160
|
||||
})
|
||||
@@ -640,6 +647,11 @@
|
||||
customRender: 'operationzr'
|
||||
}
|
||||
}
|
||||
if(res.click2){
|
||||
this.columns[index].scopedSlots = {
|
||||
customRender: 'ParameterDescription'
|
||||
}
|
||||
}
|
||||
if (res.click) {
|
||||
// 工程接口人列表修改
|
||||
this.columns[index].scopedSlots = {
|
||||
@@ -649,7 +661,6 @@
|
||||
}
|
||||
})
|
||||
this.columns = [...this.columns]
|
||||
console.log(this.columns)
|
||||
}
|
||||
})
|
||||
},
|
||||
@@ -726,9 +737,6 @@
|
||||
this.selectedRowKeys = []
|
||||
},
|
||||
getTableList(currentPersonRole) {
|
||||
console.log(currentPersonRole)
|
||||
console.log(this.queryParamQuery)
|
||||
// todo
|
||||
let paramsManifestid
|
||||
let url
|
||||
if (this.$route.query.it === undefined) {
|
||||
@@ -752,7 +760,6 @@
|
||||
this.loading = true
|
||||
getAction(url, params).then((res) => {
|
||||
if (res.success) {
|
||||
// todo
|
||||
// console.log(res.result,'res.result')
|
||||
// let tt = []
|
||||
// this.dataSource = []
|
||||
@@ -771,13 +778,14 @@
|
||||
// })
|
||||
let tt = []
|
||||
if (this.currentPersonRole !== 'dre') {
|
||||
console.log(res.result.records,'res.result.records')
|
||||
res.result.records.forEach((Obj) => {
|
||||
Object.keys(Obj).forEach((item) => {
|
||||
if (Obj[item] instanceof Object && Obj[item].controlType !== undefined) {
|
||||
Obj[item].list.forEach((itemLi) => {
|
||||
itemLi.isLock = 1
|
||||
if (itemLi.type === 'pull_more') {
|
||||
itemLi.dataValue = itemLi.dataValue === null ? [] : itemLi.dataValue.split(',')
|
||||
itemLi.dataValue = !itemLi.dataValue ? [] : itemLi.dataValue.split(',')
|
||||
}
|
||||
})
|
||||
}
|
||||
@@ -790,7 +798,7 @@
|
||||
if (Obj[item] instanceof Object && Obj[item].controlType !== undefined) {
|
||||
Obj[item].list.forEach((itemLi) => {
|
||||
if (itemLi.type === 'pull_more') {
|
||||
itemLi.dataValue = itemLi.dataValue === null ? [] : itemLi.dataValue.split(',')
|
||||
itemLi.dataValue = !itemLi.dataValue ? [] : itemLi.dataValue.split(',')
|
||||
}
|
||||
})
|
||||
}
|
||||
@@ -798,7 +806,7 @@
|
||||
tt.push(Obj)
|
||||
})
|
||||
}
|
||||
this.dataSource = tt
|
||||
this.dataSource = JSON.parse(JSON.stringify(tt))
|
||||
this.total = res.result.total
|
||||
this.selectedRowKeys = []
|
||||
this.selectedRowrowValue = []
|
||||
@@ -875,6 +883,7 @@
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
word-break: break-word;
|
||||
color: #040B29;
|
||||
font-weight: 400;
|
||||
}
|
||||
|
||||
@@ -62,7 +62,7 @@ import { mapGetters } from 'vuex'
|
||||
}
|
||||
},
|
||||
created() {
|
||||
console.log(this.detailDate, 'detailDate')
|
||||
// console.log(this.detailDate, 'detailDate')
|
||||
// this.detailDate.list.forEach((item) => {
|
||||
// if (item.type == 'file' && item.isLock == '1') {
|
||||
// this.disabled = true
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
size="middle"
|
||||
:loading="loading"
|
||||
:pagination="false"
|
||||
:scroll="{x: '100%'}"
|
||||
:scroll="{x: '100%',y:'calc(100vh - 320px)'}"
|
||||
:data-source="dataSource"
|
||||
:columns="columns"
|
||||
>
|
||||
|
||||
@@ -362,7 +362,7 @@
|
||||
},
|
||||
completeTask(value, taskId, isTrue) {
|
||||
let handlingTime = moment(new Date()).format('YYYY-MM-DD HH:mm:ss')
|
||||
value.operatorTime = handlingTime
|
||||
value.handlingTime = handlingTime
|
||||
Object.keys(value).forEach(res => {
|
||||
if (value[res] && value[res] instanceof String) {
|
||||
value[res] = value[res].replace(/\"/g, '“')
|
||||
|
||||
@@ -32,7 +32,6 @@
|
||||
:maxTagCount="1"
|
||||
:getPopupContainer="triggerNode=> triggerNode.parentNode"
|
||||
class="box-input"
|
||||
style="width: 100%"
|
||||
:tree-data="CategoryTreeList"
|
||||
tree-checkable
|
||||
:placeholder="$t('PleaseSelect')+$t('technicalField')"
|
||||
@@ -86,7 +85,7 @@
|
||||
size="middle"
|
||||
:loading="loading"
|
||||
:pagination="false"
|
||||
:scroll="{x: '100%'}"
|
||||
:scroll="{x: '100%',y:'calc(100vh - 160px)'}"
|
||||
rowKey="id"
|
||||
:data-source="dataSource"
|
||||
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
|
||||
@@ -320,8 +319,7 @@
|
||||
}
|
||||
|
||||
.title-text {
|
||||
width: 20%;
|
||||
min-width: 110px;
|
||||
width: 110px;
|
||||
color: #000F16;
|
||||
display: inline-block;
|
||||
font-weight: 500;
|
||||
@@ -336,7 +334,7 @@
|
||||
|
||||
.box-input {
|
||||
display: inline-block;
|
||||
width: 70%;
|
||||
width: calc(100% - 126px);
|
||||
height: 38px;
|
||||
margin-top: 2px;
|
||||
}
|
||||
|
||||
@@ -10,6 +10,8 @@
|
||||
</div>
|
||||
<a-select :placeholder="$t('PleaseSelect')+$t('applicableMarket')"
|
||||
:disabled="false"
|
||||
style="z-index: 100"
|
||||
:getPopupContainer="triggerNode=> triggerNode.parentNode"
|
||||
v-model="queryParam.applyMarket">
|
||||
<a-select-option v-for="(item, key) in applyMarketList"
|
||||
:key="key"
|
||||
@@ -86,7 +88,7 @@
|
||||
},
|
||||
methods: {
|
||||
getApplyMarketList() {
|
||||
getAction('/problemKnowledgeBase/countryCardManageReleaseEO/getApplyMarketList', { queryFlag: 'countryCard' }).then((res) => {
|
||||
getAction('/problemKnowledgeBase/countryCardManageReleaseEO/getApplyMarketList', { queryFlag: '2' }).then((res) => {
|
||||
if (res.success) {
|
||||
this.applyMarketList = res.result || []
|
||||
} else {
|
||||
|
||||
@@ -20,8 +20,9 @@
|
||||
<span>{{$t('applicableMarket')}}</span>
|
||||
</div>
|
||||
<a-select class="box-input"
|
||||
:getPopupContainer="triggerNode=> triggerNode.parentNode"
|
||||
:placeholder="$t('PleaseSelect')+$t('applicableMarket')"
|
||||
style="width: 100%"
|
||||
style="width: 100%;"
|
||||
v-model="queryParam.applyMarket">
|
||||
<a-select-option v-for="(item, key) in applyMarketList"
|
||||
:key="key"
|
||||
@@ -39,8 +40,9 @@
|
||||
<span>{{$t('releaseStatus')}}</span>
|
||||
</div>
|
||||
<a-select class="box-input"
|
||||
:getPopupContainer="triggerNode=> triggerNode.parentNode"
|
||||
:placeholder="$t('PleaseSelect')+$t('releaseStatus')"
|
||||
style="width: 100%"
|
||||
style="width: 100%;"
|
||||
v-model="queryParam.releaseStatus">
|
||||
<a-select-option v-for="(item, key) in releaseStatusList"
|
||||
:key="key"
|
||||
@@ -192,7 +194,7 @@
|
||||
methods: {
|
||||
...mapGetters(['userInfo']),
|
||||
getApplyMarketList() {
|
||||
getAction('/problemKnowledgeBase/countryCardManageReleaseEO/getApplyMarketList', { queryFlag: '1' }).then((res) => {
|
||||
getAction('/problemKnowledgeBase/countryCardManageReleaseEO/getApplyMarketList', { queryFlag: '3' }).then((res) => {
|
||||
if (res.success) {
|
||||
this.applyMarketList = res.result || []
|
||||
} else {
|
||||
@@ -233,6 +235,7 @@
|
||||
let query = {
|
||||
pageNo: this.pageNo,
|
||||
pageSize: this.pageSize,
|
||||
createBy: this.userInfo().username,
|
||||
...queryParam
|
||||
}
|
||||
this.loading = true
|
||||
@@ -474,4 +477,8 @@
|
||||
.text-operation {
|
||||
margin-right: 8px;
|
||||
}
|
||||
|
||||
::v-deep .ant-select-dropdown {
|
||||
z-index: 100;
|
||||
}
|
||||
</style>
|
||||
@@ -181,7 +181,7 @@
|
||||
this.editReplacePage(row)
|
||||
},
|
||||
getApplyMarketList() {
|
||||
getAction('/problemKnowledgeBase/countryCardManageReleaseEO/getApplyMarketList', {}).then((res) => {
|
||||
getAction('/problemKnowledgeBase/countryCardManageReleaseEO/getApplyMarketList', { queryFlag: '1' }).then((res) => {
|
||||
if (res.success) {
|
||||
this.applyMarketList = res.result || []
|
||||
} else {
|
||||
|
||||
@@ -186,7 +186,6 @@
|
||||
})
|
||||
}
|
||||
if (content && content.length > 0) {
|
||||
console.log(content)
|
||||
content.forEach((res, index) => {
|
||||
this.contentList[index + 1] = { name: res.lableName }
|
||||
this.contentList[index + 1].list = []
|
||||
@@ -228,7 +227,15 @@
|
||||
}
|
||||
postAction(this.list, query).then((res) => {
|
||||
if (res.success) {
|
||||
this.queryCountryList = res.result || []
|
||||
this.queryCountryList = []
|
||||
applyMarkets.split(',').forEach(val => {
|
||||
res.result.forEach(ol => {
|
||||
if (val == ol.applyMarket) {
|
||||
this.queryCountryList.push(ol)
|
||||
}
|
||||
})
|
||||
})
|
||||
// this.queryCountryList = res.result || []
|
||||
this.isTrue = false
|
||||
this.$nextTick(() => {
|
||||
this.clientWidth = 340 * (this.queryCountryList.length + 1) + 'px'
|
||||
@@ -350,13 +357,13 @@
|
||||
border-bottom: 1px #d9d9d9 solid;
|
||||
|
||||
.content-box-box-img {
|
||||
width: 70%;
|
||||
width: 238px;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.content-box-box-text {
|
||||
display: inline-block;
|
||||
width: 30%;
|
||||
width: calc(100% - 238px);
|
||||
text-align: center;
|
||||
font-size: 18px;
|
||||
font-weight: 500;
|
||||
@@ -380,13 +387,13 @@
|
||||
cursor: pointer;
|
||||
|
||||
.content-box-box-img {
|
||||
width: 70%;
|
||||
width: 238px;
|
||||
height: 100%;
|
||||
}
|
||||
|
||||
.content-box-box-text {
|
||||
display: inline-block;
|
||||
width: 30%;
|
||||
width: calc(100% - 238px);
|
||||
text-align: center;
|
||||
font-size: 18px;
|
||||
font-weight: 500;
|
||||
|
||||
@@ -587,7 +587,12 @@
|
||||
::v-deep .itemModel-explain .ant-form-explain {
|
||||
margin-top: 60px
|
||||
}
|
||||
|
||||
::v-deep .ql-tooltip {
|
||||
z-index: 10 !important;
|
||||
}
|
||||
|
||||
::v-deep .ql-snow .ql-picker {
|
||||
height: 36px;
|
||||
}
|
||||
</style>
|
||||
@@ -26,15 +26,15 @@
|
||||
</template>
|
||||
</div>
|
||||
<div class="box-content-right">
|
||||
<div @click="classificationClick" class="operator-text" v-has="'virtual:set:creater'">
|
||||
<div @click="classificationClick" class="operator-text">
|
||||
<a-icon type="setting"/>
|
||||
{{$t('classificationMaintenance')}}
|
||||
</div>
|
||||
<div @click="managePublishingClick" class="operator-text" v-has="'virtual:set:creater'">
|
||||
<div @click="managePublishingClick" class="operator-text">
|
||||
<a-icon type="carry-out"/>
|
||||
{{$t('managePublishing')}}
|
||||
</div>
|
||||
<div @click="newlyAddedClick" class="operator-text" v-has="'virtual:set:creater'">
|
||||
<div @click="newlyAddedClick" class="operator-text">
|
||||
<a-icon type="plus"/>
|
||||
{{$t('newlyAdded')}}
|
||||
</div>
|
||||
|
||||
@@ -205,6 +205,15 @@
|
||||
this.$message.warning(this.$t('thereWhichCannotDeleted'))
|
||||
return
|
||||
}
|
||||
getAction('/report/lawsMonthlyReportTitleTemplateEO/verifyDelete', { ids: val.id }).then((res) => {
|
||||
if (res.result == 'true') {
|
||||
this.deleteBatch(val)
|
||||
} else {
|
||||
this.$message.warning(this.$t('thereTitleWhichCannotBeDeleted'))
|
||||
}
|
||||
})
|
||||
},
|
||||
deleteBatch(val) {
|
||||
let _this = this
|
||||
this.$confirm({
|
||||
content: _this.$t('ConfirmDelete'),
|
||||
|
||||
@@ -44,8 +44,10 @@
|
||||
<span class="title-text-text" :title="$t('selectedStandard')">{{$t('selectedStandard')}}</span>
|
||||
</div>
|
||||
<div class="title-text-content"
|
||||
:title="selectedRowKeysRecord[0] ? selectedRowKeysRecord[0].serialNumber+' - '+selectedRowKeysRecord[0].title:''"
|
||||
:class="{'title-text-content-one':!isTrue}">
|
||||
{{selectedRowKeysRecord[0] ? selectedRowKeysRecord[0].serialNumber+' - '+selectedRowKeysRecord[0].title:''}}
|
||||
{{selectedRowKeysRecord[0] ?
|
||||
selectedRowKeysRecord[0].serialNumber+'-'+selectedRowKeysRecord[0].title:''}}
|
||||
</div>
|
||||
<div class="title-text-right" v-if="isTrue">
|
||||
<span :title="$t('standardDecompositionDocument')" @click="standardDecompositionDocumentClick">
|
||||
@@ -323,6 +325,7 @@
|
||||
this.formInline.lawsTechnologyEvaluationId = this.$route.query.lawsTechnologyEvaluationId
|
||||
this.formInline.remark = this.$route.query.remark
|
||||
this.formInline.standId = this.$route.query.standId
|
||||
this.formInline = { ...this.formInline }
|
||||
this.getListOne()
|
||||
}
|
||||
eventBUs.$on('searchQuery', search => {
|
||||
@@ -539,6 +542,8 @@
|
||||
value[res] = value[res].replace(/\'/g, '‘')
|
||||
}
|
||||
})
|
||||
let operatorTime = moment(new Date()).format('YYYY-MM-DD HH:mm:ss')
|
||||
value.handlingTime = operatorTime
|
||||
this.startProcess(value, dataList)
|
||||
},
|
||||
startProcess(value, dataList) {
|
||||
@@ -694,6 +699,9 @@
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
word-break: break-word;
|
||||
padding: 0 14px;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
.title-text-right {
|
||||
@@ -707,6 +715,9 @@
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
word-break: break-word;
|
||||
padding: 0 14px;
|
||||
box-sizing: border-box;
|
||||
color: #21c9cc;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
@@ -590,6 +590,7 @@
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
word-break: break-word;
|
||||
color: #040B29;
|
||||
font-weight: 400;
|
||||
}
|
||||
@@ -618,6 +619,7 @@
|
||||
font-size: 16px;
|
||||
text-overflow: ellipsis;
|
||||
white-space: pre-wrap;
|
||||
word-break: break-word;
|
||||
overflow: visible;
|
||||
float: left;
|
||||
color: #040B29;
|
||||
|
||||
@@ -540,6 +540,7 @@
|
||||
this.form.name = this.nodeItem.name
|
||||
this.form.itemName = this.nodeItem.itemName
|
||||
this.form.displaySeq = this.nodeItem.displaySeq
|
||||
this.form = { ...this.form }
|
||||
this.menuRightVisible = true
|
||||
},
|
||||
//树形删除
|
||||
@@ -1314,7 +1315,7 @@
|
||||
max-height: 39vh !important;
|
||||
}
|
||||
|
||||
.ant-modal-body {
|
||||
.ant-modal-body {
|
||||
overflow-y: visible !important;
|
||||
}
|
||||
|
||||
@@ -1388,11 +1389,9 @@
|
||||
/*.title-text {*/
|
||||
/* min-width: 73px !important;*/
|
||||
/*}*/
|
||||
|
||||
/*.split-detail-wrap {*/
|
||||
/* height: 481px !important;*/
|
||||
/*}*/
|
||||
|
||||
/*.mainItem {*/
|
||||
/* height: 500px;*/
|
||||
/*}*/
|
||||
@@ -1402,7 +1401,6 @@
|
||||
/*.split-detail .split-detail-wrap .split-detail-left {*/
|
||||
/* height: 735px !important;*/
|
||||
/*}*/
|
||||
|
||||
/*.mainItem {*/
|
||||
/* height: 800px !important;*/
|
||||
/*}*/
|
||||
|
||||
@@ -47,7 +47,8 @@
|
||||
<div class="detail-content-content" v-for="(item,index) in resultData.resList">
|
||||
<a-checkbox :value="item.id" class="detail-checkbox">
|
||||
</a-checkbox>
|
||||
<div class="detail-content-content-text">
|
||||
<div class="detail-content-content-text"
|
||||
:class="{'detail-content-content-text-color':checkboxList.join(',').includes(item.id)}">
|
||||
<div class="detail-content-content-text-left"
|
||||
:class="{'detail-content-content-text-dis':isDisplay}">
|
||||
<div class="detail-content-left">
|
||||
@@ -64,7 +65,7 @@
|
||||
</div>
|
||||
<div class="detail-content-left-button" v-html="item.itemsTextRight"></div>
|
||||
</div>
|
||||
<div class="detail-content-bottom">
|
||||
<div class="detail-content-bottom" :class="{'detail-content-bottom-color':checkboxList.join(',').includes(item.id)}">
|
||||
<div class="detail-content-bottom-left"
|
||||
:class="{'detail-content-bottom-left-text':language == 'en-us' ? true:false}"
|
||||
:title="$t('comparisonDifferenceComment')">
|
||||
@@ -89,7 +90,7 @@
|
||||
<div class="detail-content-content">
|
||||
<a-checkbox @change="fullCheckboxChange" v-model="fullCheckbox" class="detail-checkbox">
|
||||
</a-checkbox>
|
||||
<div class="detail-content-content-text">
|
||||
<div class="detail-content-content-text" :class="{'detail-content-content-text-color':fullCheckbox}">
|
||||
<div class="detail-content-content-text-left"
|
||||
:class="{'detail-content-content-text-dis':isDisplay}">
|
||||
<div class="detail-content-content-text-left-text" :title="resultData.comments">
|
||||
@@ -533,6 +534,11 @@
|
||||
}
|
||||
}
|
||||
|
||||
.detail-content-content-text-color {
|
||||
border: 1px solid #00B3BE;
|
||||
background: rgba(0,179,190,0.0300);
|
||||
}
|
||||
|
||||
.detail-content-left {
|
||||
width: 50%;
|
||||
display: inline-block;
|
||||
@@ -571,7 +577,9 @@
|
||||
border-radius: 4px;
|
||||
float: left;
|
||||
}
|
||||
|
||||
.detail-content-bottom-color{
|
||||
background: rgba(0,179,190,0.0300);
|
||||
}
|
||||
.detail-content-bottom-left {
|
||||
width: 115px;
|
||||
font-size: 14px;
|
||||
|
||||
@@ -327,7 +327,7 @@
|
||||
if (detailRightColor && detailRightColor.length > 0) {
|
||||
detailRightColor[0].classList.remove('detail-content-content-right-data-color-right')
|
||||
}
|
||||
if (item.targetStand && item.targetStand >= 0) {
|
||||
if (item.targetStand > -1) {
|
||||
let detailContent = document.getElementsByClassName('detail-content-content-right-right-top')
|
||||
let detailRight = document.getElementsByClassName('detail-content-content-right-data-right')
|
||||
this.dataRight = this.resultData.textRight[item.targetStand]
|
||||
@@ -357,7 +357,7 @@
|
||||
if (detailLeftColor && detailLeftColor.length > 0) {
|
||||
detailLeftColor[0].classList.remove('detail-content-content-right-data-color')
|
||||
}
|
||||
if (item.targetStand && item.targetStand >= 0) {
|
||||
if (item.targetStand > -1) {
|
||||
this.dataLeft = this.resultData.textLeft[item.targetStand]
|
||||
let detailContent = document.getElementsByClassName('detail-content-content-right-top')
|
||||
let detailLeft = document.getElementsByClassName('detail-content-content-right-data')
|
||||
|
||||
@@ -720,10 +720,6 @@
|
||||
height: 18px !important;
|
||||
line-height: 18px !important;
|
||||
}
|
||||
|
||||
.text-left-select .ant-select {
|
||||
max-width: calc(100% - 126px) !important;
|
||||
}
|
||||
</style>
|
||||
<style lang="less" scoped>
|
||||
|
||||
@@ -923,4 +919,7 @@
|
||||
text-justify: inter-ideograph;
|
||||
word-break: break-all
|
||||
}
|
||||
::v-deep .ant-select{
|
||||
max-width: calc(100% - 126px) !important;
|
||||
}
|
||||
</style>
|
||||
@@ -0,0 +1,278 @@
|
||||
<template>
|
||||
<div class="box">
|
||||
<div class="search-text-title">
|
||||
<span>{{$t('searchScope')}}:</span>
|
||||
<span>{{ queryParam.selectValue }}</span>
|
||||
</div>
|
||||
<a-checkbox-group v-model="checkboxText" v-if="conList.length > 0">
|
||||
<li v-for="(item,index) in conList" :key="item.id">
|
||||
<div style="margin-bottom: 10px;position: relative">
|
||||
<a-checkbox :value="item.id" class="checkbox-left"></a-checkbox>
|
||||
<div class="text-text-right"
|
||||
:class="{ 'null-input':item.checked }">
|
||||
<div class="text-header" @click="titleClick(item)">
|
||||
<a-tooltip placement="topLeft" overlayClassName="tooltip-index" :mouseEnterDelay="0.5">
|
||||
<template slot="title">
|
||||
<span v-html="item.title"></span>
|
||||
</template>
|
||||
<span class="text-header-text" style="cursor: pointer" v-html="item.title"></span>
|
||||
</a-tooltip>
|
||||
</div>
|
||||
<a-tooltip placement="topLeft" overlayClassName="tooltip-index" :mouseEnterDelay="0.5">
|
||||
<template slot="title">
|
||||
<span v-html="item.content"></span>
|
||||
</template>
|
||||
<div class="text-content" @click="checkedClick(item)" v-html="item.content"
|
||||
>
|
||||
</div>
|
||||
</a-tooltip>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
</a-checkbox-group>
|
||||
<div class="noData" v-else>
|
||||
暂无数据
|
||||
</div>
|
||||
<div class="page" v-if="conList.length > 0">
|
||||
<a-pagination
|
||||
:show-total="total => $t('total')+` ${total} `+$t('strip')"
|
||||
show-quick-jumper
|
||||
show-size-changer
|
||||
:page-size.sync="pageSize"
|
||||
:total="total"
|
||||
:current="pageNo"
|
||||
@change="pageOnChange"
|
||||
@showSizeChange="SizeChange"
|
||||
/>
|
||||
</div>
|
||||
<JLoading :loading="loading">{{$t('dataLoading')}}</JLoading>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { getAction, postAction, downloadFile } from '@/api/manage'
|
||||
import { Base64 } from 'js-base64'
|
||||
import { mapGetters } from 'vuex'
|
||||
|
||||
export default {
|
||||
name: 'monthlyReportRegulations',
|
||||
data() {
|
||||
return {
|
||||
checkboxText: [],
|
||||
url: {
|
||||
getInfoList: 'search/document/getFullTextInfoList'
|
||||
},
|
||||
loading: false,
|
||||
conList: [],
|
||||
total: 0,
|
||||
pageSize: 10,
|
||||
downLoadFileUrl: window._CONFIG['domianPreviewURL'] + '/sys/common/download',
|
||||
pageNo: 1,
|
||||
queryParam: {}
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
checkboxText: function(value) {
|
||||
this.conList.forEach(val => {
|
||||
val.checked = false
|
||||
})
|
||||
if (value.length > 0) {
|
||||
this.conList.forEach(val => {
|
||||
value.forEach(res => {
|
||||
if (res === val.id) {
|
||||
val.checked = true
|
||||
}
|
||||
})
|
||||
})
|
||||
}
|
||||
this.conList = [...this.conList]
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.conList = []
|
||||
this.getList()
|
||||
},
|
||||
methods: {
|
||||
...mapGetters(['userInfo']),
|
||||
checkedClick(item) {
|
||||
if (item.checked) {
|
||||
this.checkboxText = this.checkboxText.filter(res => {
|
||||
return res !== item.id
|
||||
})
|
||||
} else {
|
||||
this.checkboxText.push(item.id)
|
||||
}
|
||||
},
|
||||
ResetSearch() {
|
||||
this.pageNo = 1
|
||||
this.checkboxText = []
|
||||
this.queryParam = {}
|
||||
this.getList()
|
||||
},
|
||||
fileClick(fileQuery) {
|
||||
let fileName = fileQuery.file_name
|
||||
let index1 = fileName.lastIndexOf('.')
|
||||
let index2 = fileName.length
|
||||
let fileSuffix = fileName.substring(index1, index2)
|
||||
if (fileSuffix == '.pdf') {
|
||||
window.open('/pdf/web/viewer.html?file=' + encodeURIComponent('/jero-boot/sys/common/pdf/viewFile?id=' + fileQuery.id.slice(0, 32) + '&userName=' + this.userInfo().username))
|
||||
} else if (fileSuffix == '.docx') {
|
||||
let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadFileUrl + '/' + fileQuery.id.slice(0, 32) + fileSuffix)
|
||||
window.open(url, '_blank')
|
||||
} else if (fileSuffix == '.xlsx' || fileSuffix == '.xls') {
|
||||
let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadFileUrl + '/' + fileQuery.id.slice(0, 32) + fileSuffix)
|
||||
window.open(url, '_blank')
|
||||
} else {
|
||||
downloadFile('/sys/common/downLoadFile', fileQuery.file_name, { id: fileQuery.id.slice(0, 32) })
|
||||
}
|
||||
},
|
||||
pageOnChange(page, pageSize) {
|
||||
this.pageNo = page
|
||||
this.getList()
|
||||
},
|
||||
SizeChange(page, pageSize) {
|
||||
this.pageNo = 1
|
||||
this.pageSize = pageSize
|
||||
this.getList()
|
||||
},
|
||||
searchData(value) {
|
||||
this.queryParam.selectValue = value || undefined
|
||||
this.queryParam.selectValueTwo = undefined
|
||||
this.getList()
|
||||
},
|
||||
searchDataTwo(value) {
|
||||
this.queryParam.selectValueTwo = value
|
||||
this.getList()
|
||||
},
|
||||
getList() {
|
||||
let queryParam = JSON.parse(JSON.stringify(this.queryParam))
|
||||
Object.keys(queryParam).forEach(val => {
|
||||
if (queryParam[val] instanceof Array) {
|
||||
queryParam[val] = queryParam[val].join(',')
|
||||
}
|
||||
})
|
||||
let checkboxText = JSON.parse(JSON.stringify(this.checkboxText))
|
||||
let query = {
|
||||
pageNo: this.pageNo,
|
||||
pageSize: this.pageSize,
|
||||
ids: checkboxText.join(','),
|
||||
...queryParam
|
||||
}
|
||||
this.loading = true
|
||||
postAction(this.url.getInfoList, query).then((res) => {
|
||||
if (res.success) {
|
||||
this.conList = res.result.records
|
||||
this.total = res.result.total
|
||||
this.loading = false
|
||||
} else {
|
||||
this.conList = []
|
||||
this.loading = false
|
||||
}
|
||||
})
|
||||
},
|
||||
titleClick(item) {
|
||||
let newUrl = this.$router.resolve({
|
||||
path: '/docManage/library/detail',
|
||||
query: {
|
||||
id: item.id.slice(0, 32),
|
||||
title: item.title,
|
||||
serial_number: item.serial_number
|
||||
}
|
||||
})
|
||||
window.open(newUrl.href, '_blank')
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style>
|
||||
.highlight-class {
|
||||
color: #21c9cc;
|
||||
}
|
||||
|
||||
.tooltip-index {
|
||||
max-width: 600px !important;
|
||||
}
|
||||
</style>
|
||||
<style scoped lang="less">
|
||||
.box {
|
||||
padding: 0 0 0 18px;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
.checkbox-left {
|
||||
float: left;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
top: 50%;
|
||||
transform: translateY(-50%);
|
||||
}
|
||||
|
||||
.text-text-right {
|
||||
padding: 19px 28px;
|
||||
box-sizing: border-box;
|
||||
margin-left: 38px;
|
||||
}
|
||||
|
||||
.null-input {
|
||||
background-color: #F2F4F8;
|
||||
}
|
||||
|
||||
.search-text-title {
|
||||
margin-bottom: 22px;
|
||||
}
|
||||
|
||||
.text-header {
|
||||
margin-bottom: 11px;
|
||||
|
||||
.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;
|
||||
}
|
||||
|
||||
/*span {*/
|
||||
/* margin-right: 52px;*/
|
||||
/* font-size: 16px;*/
|
||||
/* font-weight: bold;*/
|
||||
/* color: #040B29;*/
|
||||
/* display: inline-block;*/
|
||||
/* max-width: 500px;*/
|
||||
/* text-overflow: ellipsis;*/
|
||||
/* white-space: nowrap;*/
|
||||
/* overflow: hidden;*/
|
||||
/*}*/
|
||||
}
|
||||
|
||||
.text-content {
|
||||
font-size: 14px;
|
||||
font-weight: 400;
|
||||
color: #040B29;
|
||||
opacity: 0.7;
|
||||
overflow: hidden;
|
||||
display: -webkit-box;
|
||||
text-overflow: ellipsis;
|
||||
/*! autoprefixer: off */
|
||||
-webkit-box-orient: vertical;
|
||||
-webkit-line-clamp: 4;
|
||||
/*! autoprefixer: on;*/
|
||||
text-justify: inter-ideograph;
|
||||
word-break: break-all
|
||||
}
|
||||
|
||||
.page {
|
||||
text-align: right;
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
||||
.noData {
|
||||
width: 100%;
|
||||
text-align: center;
|
||||
line-height: 10;
|
||||
}
|
||||
</style>
|
||||
@@ -0,0 +1,546 @@
|
||||
<template>
|
||||
<div class="search-con-text">
|
||||
<div class="search-text-wrap">
|
||||
<div class="text-left">
|
||||
<div class="text-left-wrap">
|
||||
<div class="text-left-select">
|
||||
<span class="text-sel" :title="$t('problemClassification')">{{$t('problemClassification')}}</span>
|
||||
<a-select :placeholder="$t('PleaseSelect')+$t('problemClassification')"
|
||||
class="text-select"
|
||||
v-model="queryParamOne.showPermissions">
|
||||
<a-select-option v-for="(item, key) in tagList"
|
||||
:key="key"
|
||||
:value="item.id">
|
||||
<span style="display: inline-block;width: 100%" :title=" item.problemLabel ">
|
||||
{{ item.problemLabel}}
|
||||
</span>
|
||||
</a-select-option>
|
||||
</a-select>
|
||||
</div>
|
||||
<div class="text-left-select">
|
||||
<span class="text-sel" :title="$t('market')">{{$t('market')}}</span>
|
||||
<j-dict-select-tag class="text-select" v-model="queryParamOne.applyMarket"
|
||||
:placeholder="$t('PleaseSelect')+$t('market')"
|
||||
:type="'select'"
|
||||
:triggerChange="false" :dictCode="'region'"/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="table-page-search-submitButtons submitButtons">
|
||||
<a-button class="box-button" type="primary" @click="searchQuery">{{$t('query')}}</a-button>
|
||||
<a-button class="box-button" style="margin-left: 8px" @click="searchReset">{{$t('reset')}}
|
||||
</a-button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="text-right">
|
||||
<div class="search-text-list">
|
||||
<div class="search-text-title">
|
||||
<div class="search-header-left">
|
||||
<span>{{$t('searchScope')}}:</span>
|
||||
<span>{{queryParamSeach}}</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="box-content">
|
||||
<a-checkbox-group v-model="checkboxText">
|
||||
<li v-for="item in conList" :key="item.id">
|
||||
<div style="margin-bottom: 10px;position: relative">
|
||||
<a-checkbox :value="item.id" class="checkbox-left"></a-checkbox>
|
||||
<div class="text-text-right"
|
||||
@click="checkedClick(item)"
|
||||
:class="{ 'null-input':item.checked }">
|
||||
<div class="text-header">
|
||||
<a-tooltip placement="topLeft" overlayClassName="tooltip-index" :mouseEnterDelay="0.5">
|
||||
<template slot="title">
|
||||
<span v-html="item.title"></span>
|
||||
</template>
|
||||
<span style="cursor: pointer" v-html="item.title" @click="titleClick(item)"></span>
|
||||
</a-tooltip>
|
||||
</div>
|
||||
<a-tooltip placement="topLeft" overlayClassName="tooltip-index" :mouseEnterDelay="0.5">
|
||||
<template slot="title">
|
||||
<span v-html="item.content"></span>
|
||||
</template>
|
||||
<div class="text-content" @click="checkedClick(item)" v-html="item.content"
|
||||
>
|
||||
</div>
|
||||
</a-tooltip>
|
||||
</div>
|
||||
</div>
|
||||
</li>
|
||||
</a-checkbox-group>
|
||||
</div>
|
||||
<div class="page">
|
||||
<a-pagination
|
||||
:show-total="total => $t('total')+` ${total} `+$t('strip')"
|
||||
show-quick-jumper
|
||||
show-size-changer
|
||||
:page-size.sync="pageSize"
|
||||
:total="total"
|
||||
:current="pageNo"
|
||||
@change="pageOnChange"
|
||||
@showSizeChange="SizeChange"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<a-modal
|
||||
:title="$t('viewFile')"
|
||||
:width="500"
|
||||
:visible="visible"
|
||||
@cancel="visible=false"
|
||||
>
|
||||
<template slot="footer">
|
||||
<a-button key="back" @click="visible = false">
|
||||
{{$t('cancel')}}
|
||||
</a-button>
|
||||
</template>
|
||||
<p v-for="(item,index) in fileList" :key="index"
|
||||
class="fileText" :title="item.fileName" @click="fileClick(item)">{{ item.fileName }}</p>
|
||||
</a-modal>
|
||||
<JLoading :loading="loading">{{$t('dataLoading')}}</JLoading>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import eventBUs from '../../../../common/event'
|
||||
import { getAction, postAction, downloadFile } from '@/api/manage'
|
||||
import moment from 'moment'
|
||||
import { Base64 } from 'js-base64'
|
||||
import { mapGetters } from 'vuex'
|
||||
|
||||
export default {
|
||||
name: 'problemKnowledgeBase',
|
||||
data() {
|
||||
return {
|
||||
searchOption: [],
|
||||
queryParam: {},
|
||||
visible: false,
|
||||
db_field_name: '',
|
||||
url: {
|
||||
queryCondition: 'search/document/queryCondition',
|
||||
getParagraphInfoList: 'search/document/getParagraphInfoList'//段落
|
||||
},
|
||||
selectedRowKeys: [],
|
||||
checkboxText: [],
|
||||
conList: [],
|
||||
total: 0,
|
||||
pageSize: 10,
|
||||
pageNo: 1,
|
||||
loading: false,
|
||||
selectModel: '',
|
||||
fileList: [],
|
||||
downLoadFileUrl: window._CONFIG['domianPreviewURL'] + '/sys/common/download',
|
||||
queryParamSeach: '',
|
||||
mapOne: {},
|
||||
mapTwo: {},
|
||||
selectModelName: '',
|
||||
queryParamOne: {},
|
||||
searchQueryOne: {},
|
||||
orderBy: '1',
|
||||
orderByField: '',
|
||||
tagList: []
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
checkboxText: function(value) {
|
||||
this.conList.forEach(val => {
|
||||
val.checked = false
|
||||
})
|
||||
if (value.length > 0) {
|
||||
this.conList.forEach(val => {
|
||||
value.forEach(res => {
|
||||
if (res === val.id) {
|
||||
val.checked = true
|
||||
}
|
||||
})
|
||||
})
|
||||
}
|
||||
this.conList = [...this.conList]
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.getCondition()
|
||||
this.replacePage()
|
||||
this.getParagraphInfoList()
|
||||
},
|
||||
methods: {
|
||||
...mapGetters(['userInfo']),
|
||||
replacePage() {
|
||||
getAction('/problemKnowledgeBase/problemKnowledgeBaseClassifyEO/list', {}).then((res) => {
|
||||
if (res.success) {
|
||||
this.tagList = res.result
|
||||
} else {
|
||||
this.tagList = []
|
||||
}
|
||||
})
|
||||
},
|
||||
checkedClick(item) {
|
||||
if (item.checked) {
|
||||
this.checkboxText = this.checkboxText.filter(res => {
|
||||
return res !== item.id
|
||||
})
|
||||
} else {
|
||||
this.checkboxText.push(item.id)
|
||||
}
|
||||
},
|
||||
pageOnChange(page, pageSize) {
|
||||
this.queryParam = { ...this.queryParamOne, ...this.searchQueryOne }
|
||||
this.pageNo = page
|
||||
this.getParagraphInfoList(1)
|
||||
},
|
||||
SizeChange(page, pageSize) {
|
||||
this.queryParam = { ...this.queryParamOne, ...this.searchQueryOne }
|
||||
this.pageNo = 1
|
||||
this.pageSize = pageSize
|
||||
this.getParagraphInfoList(1)
|
||||
},
|
||||
getCondition() {
|
||||
let query = {
|
||||
flag: 1,
|
||||
searchFlag: 0
|
||||
}
|
||||
getAction(this.url.queryCondition, query).then((res) => {
|
||||
if (res.success) {
|
||||
this.searchOption = res.result
|
||||
} else {
|
||||
this.searchOption = []
|
||||
}
|
||||
})
|
||||
},
|
||||
searchReset() {
|
||||
this.pageNo = 1
|
||||
this.queryParamOne = {}
|
||||
this.queryParam = { ...this.queryParamOne, ...this.searchQueryOne }
|
||||
this.queryParamSeach = ''
|
||||
this.getParagraphInfoList(1)
|
||||
},
|
||||
searchQuery() {
|
||||
this.ParamSeach()
|
||||
this.queryParam = { ...this.queryParamOne, ...this.searchQueryOne }
|
||||
this.pageNo = 1
|
||||
this.getParagraphInfoList(1)
|
||||
},
|
||||
ParamSeach() {
|
||||
let queryParam = JSON.parse(JSON.stringify(this.searchQueryOne))
|
||||
if (queryParam[this.selectModel]) {
|
||||
this.queryParamSeach = this.selectModelName + ':' + queryParam[this.selectModel]
|
||||
} else {
|
||||
this.queryParamSeach = ''
|
||||
}
|
||||
},
|
||||
searchData(data, selectModel, name) {
|
||||
this.queryParam = {}
|
||||
this.searchQueryOne = data || {}
|
||||
this.queryParam = { ...this.queryParamOne, ...data }
|
||||
this.selectModel = selectModel
|
||||
this.selectModelName = name
|
||||
this.ParamSeach()
|
||||
this.pageNo = 1
|
||||
this.getParagraphInfoList(1)
|
||||
},
|
||||
searchDataTwo(data, selectModel, name) {
|
||||
this.queryParam = {}
|
||||
this.searchQueryOne = data || {}
|
||||
this.queryParam = { ...this.queryParamOne, ...data }
|
||||
this.selectModel = selectModel
|
||||
this.selectModelName = name
|
||||
this.ParamSeach()
|
||||
this.pageNo = 1
|
||||
this.getParagraphInfoList(2)
|
||||
},
|
||||
ResetSearch() {
|
||||
this.queryParam = {}
|
||||
this.queryParamOne = {}
|
||||
this.searchQueryOne = {}
|
||||
this.checkboxText = []
|
||||
this.selectedRowKeys = []
|
||||
this.selectModel = ''
|
||||
this.selectModelName = ''
|
||||
this.ParamSeach()
|
||||
this.pageNo = 1
|
||||
this.getParagraphInfoList(1)
|
||||
},
|
||||
getParagraphInfoList(num) {
|
||||
let queryParam = JSON.parse(JSON.stringify(this.queryParam))
|
||||
Object.keys(queryParam).forEach(val => {
|
||||
if (queryParam[val] instanceof Array) {
|
||||
queryParam[val] = queryParam[val].join(',')
|
||||
}
|
||||
if (val.includes('_name')) {
|
||||
delete queryParam[val]
|
||||
}
|
||||
})
|
||||
this.mapTwo = {}
|
||||
if (num == 1) {
|
||||
this.mapOne = queryParam
|
||||
} else if (num == 2) {
|
||||
this.mapTwo = queryParam
|
||||
let checkboxText = JSON.parse(JSON.stringify(this.checkboxText))
|
||||
this.mapTwo.ids = checkboxText.join(',')
|
||||
}
|
||||
let query = {
|
||||
pageNo: this.pageNo,
|
||||
pageSize: this.pageSize,
|
||||
mapOne: this.mapOne,
|
||||
mapTwo: this.mapTwo
|
||||
}
|
||||
this.loading = true
|
||||
postAction(this.url.getParagraphInfoList, query).then((res) => {
|
||||
if (res.success) {
|
||||
this.conList = res.result.records
|
||||
this.total = res.result.total
|
||||
this.loading = false
|
||||
} else {
|
||||
this.loading = false
|
||||
}
|
||||
})
|
||||
},
|
||||
fileClick(fileQuery) {
|
||||
let fileName = fileQuery.fileName || fileQuery.file_name
|
||||
let index1 = fileName.lastIndexOf('.')
|
||||
let index2 = fileName.length
|
||||
let fileSuffix = fileName.substring(index1, index2)
|
||||
if (fileSuffix == '.pdf') {
|
||||
window.open('/pdf/web/viewer.html?file=' + encodeURIComponent('/jero-boot/sys/common/pdf/viewFile?id=' + fileQuery.id + '&userName=' + this.userInfo().username))
|
||||
} else if (fileSuffix == '.docx') {
|
||||
let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadFileUrl + '/' + fileQuery.id + fileSuffix)
|
||||
window.open(url, '_blank')
|
||||
} else if (fileSuffix == '.xlsx' || fileSuffix == '.xls') {
|
||||
let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadFileUrl + '/' + fileQuery.id + fileSuffix)
|
||||
window.open(url, '_blank')
|
||||
} else {
|
||||
downloadFile('/sys/common/downLoadFile', fileQuery.fileName || fileQuery.file_name, { id: fileQuery.id })
|
||||
}
|
||||
},
|
||||
titleClick(item) {
|
||||
let newUrl = this.$router.resolve({
|
||||
path: '/docManage/library/detail',
|
||||
query: {
|
||||
id: item.id.slice(0, 32),
|
||||
title: item.title,
|
||||
serial_number: item.serial_number
|
||||
}
|
||||
})
|
||||
window.open(newUrl.href, '_blank')
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style>
|
||||
.checkbox-left .ant-checkbox-inner {
|
||||
width: 18px !important;
|
||||
height: 18px !important;
|
||||
line-height: 18px !important;
|
||||
}
|
||||
|
||||
.tooltip-index {
|
||||
max-width: 600px !important;
|
||||
}
|
||||
</style>
|
||||
<style lang="less" scoped>
|
||||
.search-con-text {
|
||||
|
||||
.search-text-wrap {
|
||||
margin-top: -27px;
|
||||
height: 100%;
|
||||
display: flex;
|
||||
justify-content: flex-start;
|
||||
|
||||
.text-left {
|
||||
width: 358px;
|
||||
padding: 24px 24px 24px 0;
|
||||
box-sizing: border-box;
|
||||
|
||||
.text-left-wrap {
|
||||
|
||||
.text-left-select {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
margin-bottom: 24px;
|
||||
line-height: 32px;
|
||||
|
||||
.text-sel {
|
||||
font-size: 14px;
|
||||
font-weight: 400;
|
||||
color: #000F16;
|
||||
text-align: right;
|
||||
margin-right: 14px;
|
||||
width: 65px;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
|
||||
.text-select {
|
||||
flex: 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.text-right {
|
||||
width: calc(100% - 358px);
|
||||
position: relative;
|
||||
padding: 26px 0 22px 24px;
|
||||
box-sizing: border-box;
|
||||
border-left: 2px solid #E6E7EC;
|
||||
|
||||
.search-text-title {
|
||||
padding: 0 0 24px 0;
|
||||
|
||||
.search-header-left {
|
||||
width: calc(100% - 80px);
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
span {
|
||||
font-size: 14px;
|
||||
font-weight: 400;
|
||||
color: #040B29;
|
||||
}
|
||||
|
||||
.search-header-right {
|
||||
float: right;
|
||||
margin-top: -7px;
|
||||
|
||||
a-icon {
|
||||
|
||||
border: 1px solid rgba(0, 0, 0, 0.65);
|
||||
cursor: pointer;
|
||||
padding: 2px 5px;
|
||||
border-right: none;
|
||||
}
|
||||
|
||||
a-icon:last-child {
|
||||
border-right: 1px solid rgba(0, 0, 0, 0.65);
|
||||
}
|
||||
|
||||
.header-list {
|
||||
font-size: 20px;
|
||||
border: 1px solid gray;
|
||||
border-radius: 3px;
|
||||
padding: 3px;
|
||||
}
|
||||
|
||||
.header-list:hover {
|
||||
color: #00B3BE;
|
||||
border: 1px solid #00B3BE;
|
||||
}
|
||||
|
||||
.header-list-active {
|
||||
border: 1px solid #00B3BE;
|
||||
color: #00B3BE;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.search-text-list {
|
||||
ul {
|
||||
padding: 0 0 0 18px;
|
||||
margin: 0;
|
||||
|
||||
li {
|
||||
list-style: none;
|
||||
|
||||
.text-content {
|
||||
font-size: 14px;
|
||||
font-weight: 400;
|
||||
color: #040B29;
|
||||
opacity: 0.8;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.checkbox-left {
|
||||
float: left;
|
||||
position: absolute;
|
||||
left: 0;
|
||||
top: 50%;
|
||||
transform: translateY(-50%);
|
||||
}
|
||||
|
||||
.text-text-right {
|
||||
padding: 19px 28px;
|
||||
box-sizing: border-box;
|
||||
margin-left: 38px;
|
||||
}
|
||||
|
||||
.null-input {
|
||||
background-color: #F2F4F8;
|
||||
}
|
||||
|
||||
.text-header {
|
||||
margin-bottom: 11px;
|
||||
|
||||
span {
|
||||
font-size: 16px;
|
||||
font-weight: bold;
|
||||
color: #040B29;
|
||||
display: inline-block;
|
||||
width: 100%;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
}
|
||||
}
|
||||
|
||||
.text-content {
|
||||
font-size: 14px;
|
||||
font-weight: 400;
|
||||
color: #040B29;
|
||||
opacity: 0.7;
|
||||
overflow: hidden;
|
||||
display: -webkit-box;
|
||||
text-overflow: ellipsis;
|
||||
/*! autoprefixer: off */
|
||||
-webkit-box-orient: vertical;
|
||||
-webkit-line-clamp: 4;
|
||||
/*! autoprefixer: on;*/
|
||||
text-justify: inter-ideograph;
|
||||
word-break: break-all
|
||||
}
|
||||
|
||||
.box-content {
|
||||
padding: 0 0 0 8px;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
.page {
|
||||
text-align: right;
|
||||
margin-top: 20px;
|
||||
}
|
||||
|
||||
.text-operation {
|
||||
margin-right: 8px;
|
||||
}
|
||||
|
||||
.submitButtons {
|
||||
text-align: center;
|
||||
}
|
||||
|
||||
.fileText {
|
||||
width: 100%;
|
||||
cursor: pointer;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
|
||||
.textName {
|
||||
width: 100%;
|
||||
overflow: hidden;
|
||||
display: -webkit-box;
|
||||
text-overflow: ellipsis;
|
||||
/*! autoprefixer: off */
|
||||
-webkit-box-orient: vertical;
|
||||
-webkit-line-clamp: 1;
|
||||
/*! autoprefixer: on;*/
|
||||
text-justify: inter-ideograph;
|
||||
word-break: break-all
|
||||
}
|
||||
</style>
|
||||
@@ -23,7 +23,8 @@
|
||||
v-model="selectValueTwo"
|
||||
:maxLength="100"
|
||||
@keyup.enter.native="wholeOnSearch(selectValueTwo)"
|
||||
v-else-if="active === $t('whole')"
|
||||
v-else-if="active === $t('whole') || active === $t('problemKnowledgeBase')
|
||||
|| active === $t('monthlyReportRegulations')"
|
||||
class="inputSearch"
|
||||
:placeholder="$t('pleaseEnter')+$t('searchContent')"
|
||||
></a-input>
|
||||
@@ -33,18 +34,21 @@
|
||||
>{{$t('query')}}
|
||||
</a-button>
|
||||
<a-button class="textSearch"
|
||||
v-if="active === $t('whole')"
|
||||
v-if="active === $t('whole') || active === $t('problemKnowledgeBase')
|
||||
|| active === $t('monthlyReportRegulations')"
|
||||
@keyup.enter.native="wholeOnSearch(selectValueTwo)"
|
||||
@click="wholeOnSearch(selectValueTwo)"
|
||||
>{{$t('query')}}
|
||||
</a-button>
|
||||
<a-button class="textSearch"
|
||||
v-if="active === $t('whole') || active === $t('DocumentLibrary')"
|
||||
v-if="active === $t('whole') || active === $t('DocumentLibrary')
|
||||
|| active === $t('problemKnowledgeBase') || active === $t('monthlyReportRegulations')"
|
||||
@click="wholeTextSearch(selectValueTwo)"
|
||||
>{{$t('searchInResults')}}
|
||||
</a-button>
|
||||
<a-button class="textSearch"
|
||||
v-if="active === $t('whole') || active === $t('DocumentLibrary')"
|
||||
v-if="active === $t('whole') || active === $t('DocumentLibrary')
|
||||
|| active === $t('problemKnowledgeBase') || active === $t('monthlyReportRegulations')"
|
||||
@click="ResetSearch()"
|
||||
>{{$t('reset')}}
|
||||
</a-button>
|
||||
@@ -61,14 +65,18 @@
|
||||
<a-tab-pane :key="$t('whole')" :tab="$t('whole')"></a-tab-pane>
|
||||
<a-tab-pane :key="$t('DocumentLibrary')" :tab="$t('DocumentLibrary')" force-render>
|
||||
</a-tab-pane>
|
||||
<!-- <a-tab-pane :key="$t('KnowledgeDatabase')" :tab="$t('KnowledgeDatabase')"></a-tab-pane>-->
|
||||
<!-- <a-tab-pane :key="$t('DocumentComparisonLibrary')" :tab="$t('DocumentComparisonLibrary')"></a-tab-pane>-->
|
||||
<!-- <a-tab-pane :key="$t('weekly')" :tab="$t('weekly')"></a-tab-pane>-->
|
||||
<a-tab-pane :key="$t('problemKnowledgeBase')" :tab="$t('problemKnowledgeBase')" force-render>
|
||||
</a-tab-pane>
|
||||
<a-tab-pane :key="$t('monthlyReportRegulations')" :tab="$t('monthlyReportRegulations')" force-render>
|
||||
</a-tab-pane>
|
||||
</a-tabs>
|
||||
</div>
|
||||
</div>
|
||||
<whole ref="wholeRef" :url="url" v-if="active === $t('whole')"/>
|
||||
<DocumentLibrary ref="DocumentLibraryRef" v-else-if="active === $t('DocumentLibrary')"/>
|
||||
<problemKnowledgeBase ref="problemKnowledgeBaseRef" v-else-if="active === $t('problemKnowledgeBase')"/>
|
||||
<monthlyReportRegulations ref="monthlyReportRegulationsRef"
|
||||
v-else-if="active === $t('monthlyReportRegulations')"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -78,13 +86,17 @@
|
||||
<script>
|
||||
import whole from './components/whole'
|
||||
import DocumentLibrary from './components/DocumentLibrary'
|
||||
import problemKnowledgeBase from './components/problemKnowledgeBase'
|
||||
import monthlyReportRegulations from './components/monthlyReportRegulations'
|
||||
import { getAction, postAction, deleteAction, downloadFile } from '@/api/manage'
|
||||
|
||||
export default {
|
||||
name: 'searchCenter',
|
||||
components: {
|
||||
whole,
|
||||
DocumentLibrary
|
||||
DocumentLibrary,
|
||||
problemKnowledgeBase,
|
||||
monthlyReportRegulations
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
@@ -257,6 +269,10 @@
|
||||
width: 608px;
|
||||
display: inline-block;
|
||||
}
|
||||
|
||||
::v-deep .input-group .ant-select-selection--single {
|
||||
height: 40px !important;
|
||||
}
|
||||
</style>
|
||||
<style>
|
||||
.inputSearch {
|
||||
|
||||
@@ -35,11 +35,11 @@
|
||||
:placeholder="$t('PleaseSelect')+$t('certificationType')"
|
||||
:type="'select'"
|
||||
:triggerChange="false" :dictCode="'attestation_type'"/>
|
||||
<!-- <j-dict-select-tag class="box-input" v-model="formInline.attestationType"-->
|
||||
<!-- @input="handleInput('attestationType')"-->
|
||||
<!-- :placeholder="$t('PleaseSelect')+$t('certificationType')"-->
|
||||
<!-- :type="'select'"-->
|
||||
<!-- :triggerChange="false" dictCode="attestation_type"/>-->
|
||||
<!-- <j-dict-select-tag class="box-input" v-model="formInline.attestationType"-->
|
||||
<!-- @input="handleInput('attestationType')"-->
|
||||
<!-- :placeholder="$t('PleaseSelect')+$t('certificationType')"-->
|
||||
<!-- :type="'select'"-->
|
||||
<!-- :triggerChange="false" dictCode="attestation_type"/>-->
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
@@ -55,11 +55,11 @@
|
||||
:placeholder="$t('PleaseSelect')+$t('certificationLevel')"
|
||||
:type="'select'"
|
||||
:triggerChange="false" :dictCode="'attestation_rank'"/>
|
||||
<!-- <j-dict-select-tag class="box-input" v-model="formInline.attestationRank"-->
|
||||
<!-- @input="handleInput('attestationRank')"-->
|
||||
<!-- :placeholder="$t('PleaseSelect')+$t('certificationLevel')"-->
|
||||
<!-- :type="'select'"-->
|
||||
<!-- :triggerChange="false" dictCode="attestation_rank"/>-->
|
||||
<!-- <j-dict-select-tag class="box-input" v-model="formInline.attestationRank"-->
|
||||
<!-- @input="handleInput('attestationRank')"-->
|
||||
<!-- :placeholder="$t('PleaseSelect')+$t('certificationLevel')"-->
|
||||
<!-- :type="'select'"-->
|
||||
<!-- :triggerChange="false" dictCode="attestation_rank"/>-->
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
@@ -73,11 +73,11 @@
|
||||
:placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"
|
||||
:type="'select'"
|
||||
:triggerChange="false" :dictCode="'duty_territory'"/>
|
||||
<!-- <j-dict-select-tag class="box-input" v-model="formInline.dutyTerritory"-->
|
||||
<!-- @input="handleInput('dutyTerritory')"-->
|
||||
<!-- :placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"-->
|
||||
<!-- :type="'select'"-->
|
||||
<!-- :triggerChange="false" dictCode="duty_territory"/>-->
|
||||
<!-- <j-dict-select-tag class="box-input" v-model="formInline.dutyTerritory"-->
|
||||
<!-- @input="handleInput('dutyTerritory')"-->
|
||||
<!-- :placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"-->
|
||||
<!-- :type="'select'"-->
|
||||
<!-- :triggerChange="false" dictCode="duty_territory"/>-->
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
@@ -216,6 +216,13 @@
|
||||
})
|
||||
},
|
||||
handleOk() {
|
||||
if (this.formInline.dutyTerritory) {
|
||||
this.handleOnTwo()
|
||||
} else {
|
||||
this.handleOkOne()
|
||||
}
|
||||
},
|
||||
handleOkOne() {
|
||||
let ids = JSON.parse(JSON.stringify(this.ids))
|
||||
let formInline = JSON.parse(JSON.stringify(this.formInline))
|
||||
Object.keys(formInline).forEach(res => {
|
||||
@@ -240,6 +247,37 @@
|
||||
}
|
||||
})
|
||||
},
|
||||
handleOnTwo() {
|
||||
let _this = this
|
||||
this.$confirm({
|
||||
content: _this.$t('areResponsibilityAreaInformationBatch'),
|
||||
onOk() {
|
||||
let ids = JSON.parse(JSON.stringify(_this.ids))
|
||||
let formInline = JSON.parse(JSON.stringify(_this.formInline))
|
||||
Object.keys(formInline).forEach(res => {
|
||||
if (formInline[res] instanceof Array) {
|
||||
formInline[res] = formInline[res].join(',')
|
||||
}
|
||||
})
|
||||
let query = {
|
||||
ids: ids.join(','),
|
||||
...formInline
|
||||
}
|
||||
_this.confirmLoading = true
|
||||
postAction(_this.url.setBatch, query).then((res) => {
|
||||
if (res.success) {
|
||||
_this.$message.success(_this.$t('OperationSuccessful'))
|
||||
_this.visible = false
|
||||
_this.confirmLoading = false
|
||||
_this.$emit('batSettingList')
|
||||
} else {
|
||||
_this.$message.warning(res.message)
|
||||
_this.confirmLoading = false
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
handleCancel() {
|
||||
this.formInline = {}
|
||||
this.visible = false
|
||||
|
||||
@@ -113,11 +113,13 @@
|
||||
<span class="title-text-text"
|
||||
:title="$t('correspondingStandard')">{{$t('correspondingStandard')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel">
|
||||
<a-input class="box-input"
|
||||
:disabled="true"
|
||||
v-model="formInline.correspondingStandard"
|
||||
:placeholder="$t('PleaseEnter')+$t('correspondingStandard')"/>
|
||||
<a-form-model-item class="itemModel" prop="correspondingStandard">
|
||||
<Standardselection :query="{'db_field_txt':$t('correspondingStandard')}"
|
||||
:standard="formInline"
|
||||
v-model="formInline.correspondingStandard"/>
|
||||
<!-- <a-input class="box-input"-->
|
||||
<!-- v-model="formInline.correspondingStandard"-->
|
||||
<!-- :placeholder="$t('PleaseEnter')+$t('correspondingStandard')"/>-->
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
@@ -621,8 +623,15 @@
|
||||
rules: {
|
||||
subtitle: [
|
||||
{
|
||||
max: 100,
|
||||
message: this.$t('subtitle') + this.$t('cannotExceed') + 100 + this.$t('Characters'),
|
||||
max: 300,
|
||||
message: this.$t('subtitle') + this.$t('cannotExceed') + 300 + this.$t('Characters'),
|
||||
trigger: 'blur'
|
||||
}
|
||||
],
|
||||
correspondingStandard: [
|
||||
{
|
||||
max: 300,
|
||||
message: this.$t('correspondingStandard') + this.$t('cannotExceed') + 300 + this.$t('Characters'),
|
||||
trigger: 'blur'
|
||||
}
|
||||
],
|
||||
|
||||
@@ -143,7 +143,7 @@
|
||||
class="ant-table tableList"
|
||||
:loading="loading"
|
||||
:pagination="false"
|
||||
:scroll="{x: '100%',y:'calc(100vh - 170px)'}"
|
||||
:scroll="{x: '100%',y:'calc(100vh - 186px)'}"
|
||||
rowKey="id"
|
||||
:data-source="dataSource"
|
||||
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
|
||||
@@ -202,6 +202,9 @@
|
||||
<span v-else>--</span>
|
||||
</span>
|
||||
</a-table>
|
||||
<div class="buttom-box" v-if="dataSource && dataSource.length > 0">
|
||||
{{$t('total')+' '+this.dataSource.length+' '+ $t('strip')}}
|
||||
</div>
|
||||
</div>
|
||||
</a-card>
|
||||
</div>
|
||||
@@ -796,7 +799,7 @@
|
||||
let index2 = fileName.length
|
||||
let fileSuffix = fileName.substring(index1, index2)
|
||||
if (fileSuffix == '.pdf') {
|
||||
window.open('/pdf/web/viewer.html?file=' + encodeURIComponent('/jero-boot/sys/common/pdf/viewFile?id=' + fileQuery.id+'&userName='+this.userInfo().username))
|
||||
window.open('/pdf/web/viewer.html?file=' + encodeURIComponent('/jero-boot/sys/common/pdf/viewFile?id=' + fileQuery.id + '&userName=' + this.userInfo().username))
|
||||
} else if (fileSuffix == '.docx') {
|
||||
let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadFileUrl + '/' + fileQuery.id + fileSuffix)
|
||||
window.open(url, '_blank')
|
||||
@@ -813,7 +816,7 @@
|
||||
let index2 = fileName.length
|
||||
let fileSuffix = fileName.substring(index1, index2)
|
||||
if (fileSuffix == '.pdf') {
|
||||
window.open('/pdf/web/viewer.html?file=' + encodeURIComponent('/jero-boot/sys/common/pdf/viewFile?id=' + id+'&userName='+this.userInfo().username))
|
||||
window.open('/pdf/web/viewer.html?file=' + encodeURIComponent('/jero-boot/sys/common/pdf/viewFile?id=' + id + '&userName=' + this.userInfo().username))
|
||||
} else if (fileSuffix == '.docx') {
|
||||
let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadFileUrl + '/' + id + fileSuffix)
|
||||
window.open(url, '_blank')
|
||||
@@ -825,7 +828,7 @@
|
||||
}
|
||||
},
|
||||
download(item) {
|
||||
downloadFile('/sys/common/downLoadFile', item.fileName, { id: item.id ,userName:this.userInfo().username})
|
||||
downloadFile('/sys/common/downLoadFile', item.fileName, { id: item.id, userName: this.userInfo().username })
|
||||
},
|
||||
clickButtonToUpload(item) {
|
||||
this.loading = true
|
||||
@@ -1004,6 +1007,14 @@
|
||||
text-justify: inter-ideograph;
|
||||
word-break: break-all
|
||||
}
|
||||
|
||||
.buttom-box {
|
||||
width: 100%;
|
||||
text-align: right;
|
||||
font-size: 16px;
|
||||
font-weight: 500;
|
||||
color: #000F16;
|
||||
}
|
||||
</style>
|
||||
<style>
|
||||
.box-input .ant-select-selection {
|
||||
|
||||
@@ -87,8 +87,6 @@
|
||||
class="box-input"
|
||||
@change="onChange"
|
||||
style='margin-left: -1px'
|
||||
format="YYYY-MM-DD"
|
||||
:getCalendarContainer="(trigger) => trigger.parentNode"
|
||||
v-model="queryParams.time"
|
||||
:disabled="false"/>
|
||||
</div>
|
||||
@@ -645,6 +643,7 @@ export default {
|
||||
this.form.authViewIdsName = this.nodeItem.authViewIdsName
|
||||
this.form.folderName = this.nodeItem.folderName
|
||||
this.form.orderId = this.nodeItem.orderId
|
||||
this.form = { ...this.form }
|
||||
this.menuRightVisible = true
|
||||
},
|
||||
//树形删除
|
||||
@@ -779,7 +778,7 @@ export default {
|
||||
//搜索
|
||||
searchQuery(item) {
|
||||
this.pageNo = 1
|
||||
if(this.queryParams.time){
|
||||
if(this.queryParams.time && this.queryParams.time instanceof Array){
|
||||
this.queryParams.time = this.queryParams.time.join(',')
|
||||
}
|
||||
this.loadData(item)
|
||||
@@ -1086,11 +1085,14 @@ export default {
|
||||
/deep/.ant-table td{
|
||||
white-space: nowrap;
|
||||
}
|
||||
.ant-calendar-range-picker-input{
|
||||
width: 46% !important;
|
||||
}
|
||||
.title-text {
|
||||
width: 114px;
|
||||
text-align: right;
|
||||
display: inline-block;
|
||||
font-weight: 500;
|
||||
font-weight: 400;
|
||||
font-size: 14px;
|
||||
margin-right: 16px;
|
||||
overflow: hidden;
|
||||
@@ -1098,6 +1100,7 @@ export default {
|
||||
white-space: nowrap;
|
||||
height: 42px;
|
||||
line-height: 48px;
|
||||
color: #040B29;
|
||||
}
|
||||
|
||||
.box-input {
|
||||
@@ -1333,6 +1336,7 @@ export default {
|
||||
width: auto;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
color: #040B29;
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -43,8 +43,8 @@
|
||||
:columns="columns"
|
||||
>
|
||||
<span slot="projectName" slot-scope="text,record" :title="text">
|
||||
<a @click="entryNameClick(record)">
|
||||
{{ text && text.length > 15 ? text.slice(0, 14) + '...' : text }}
|
||||
<a >
|
||||
{{ text && text.length > 10 ? text.slice(0, 9) + '...' : text }}
|
||||
</a>
|
||||
</span>
|
||||
<span slot="operation" slot-scope="text,record">
|
||||
@@ -113,8 +113,9 @@
|
||||
{
|
||||
title: this.$t('entryName'),
|
||||
align: 'center',
|
||||
width: '10%',
|
||||
dataIndex: 'projectName'
|
||||
width: '13%',
|
||||
dataIndex: 'projectName',
|
||||
scopedSlots: { customRender: 'projectName' }
|
||||
},
|
||||
{
|
||||
title: this.$t('ListTitle'),
|
||||
|
||||
@@ -275,6 +275,12 @@
|
||||
mounted() {
|
||||
if (this.evaluatorFeedbackList && this.evaluatorFeedbackList.length > 0) {
|
||||
this.dataSource = this.evaluatorFeedbackList
|
||||
if (this.dataSource && this.dataSource.length == 1 && this.$route.query.taskDefinitionKey == 'pgrqr') {
|
||||
this.$nextTick(() => {
|
||||
let antTableBody = document.getElementsByClassName('ant-table-body')
|
||||
antTableBody[0].style = 'position:auto'
|
||||
})
|
||||
}
|
||||
if (this.$route.query.taskDefinitionKey != 'pgrqr') {
|
||||
this.dataSource.forEach(res => {
|
||||
res.sponsorFeedback = ''
|
||||
|
||||
@@ -145,6 +145,7 @@
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
word-break: break-word;
|
||||
color: #040B29;
|
||||
font-weight: 400;
|
||||
}
|
||||
|
||||
@@ -26,34 +26,46 @@
|
||||
|
||||
export default {
|
||||
name: 'regulatoryCirculationHistory',
|
||||
props: {
|
||||
isTrue: {
|
||||
type: Boolean,
|
||||
default: false
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
dataSource: [],
|
||||
loading: false,
|
||||
columns: [
|
||||
columnsAll: [
|
||||
{
|
||||
title: this.$t('OperationContent'),
|
||||
dataIndex: 'taskDefinitionKeyName',
|
||||
align: 'center',
|
||||
width: '25%'
|
||||
width: '20%'
|
||||
},
|
||||
{
|
||||
title: this.$t('opinion'),
|
||||
dataIndex: 'approvalOpinion',
|
||||
align: 'center',
|
||||
width: '20%'
|
||||
},
|
||||
{
|
||||
title: this.$t('Operator'),
|
||||
dataIndex: 'createBy',
|
||||
align: 'center',
|
||||
width: '25%'
|
||||
width: '20%'
|
||||
},
|
||||
{
|
||||
title: this.$t('role'),
|
||||
dataIndex: 'operatorRoleName',
|
||||
align: 'center',
|
||||
width: '25%'
|
||||
width: '20%'
|
||||
},
|
||||
{
|
||||
title: this.$t('OperationTime'),
|
||||
dataIndex: 'createTime',
|
||||
align: 'center',
|
||||
width: '25%',
|
||||
width: '20%',
|
||||
customRender: function(t, r, index) {
|
||||
return moment(t).format('YYYY-MM-DD HH:mm:ss')
|
||||
}
|
||||
@@ -64,6 +76,20 @@
|
||||
mounted() {
|
||||
this.getList()
|
||||
},
|
||||
computed: {
|
||||
columns() {
|
||||
let columnsAll = JSON.parse(JSON.stringify(this.columnsAll))
|
||||
if (!this.isTrue) {
|
||||
for (let i = 0; i < columnsAll.length; i++) {
|
||||
if (columnsAll[i].title == this.$t('opinion')) {
|
||||
columnsAll.splice(i, 1)
|
||||
i--
|
||||
}
|
||||
}
|
||||
}
|
||||
return columnsAll
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
getList() {
|
||||
let query = {
|
||||
|
||||
@@ -77,7 +77,6 @@
|
||||
},
|
||||
mounted() {
|
||||
this.queryForm = this.standardContentQuery
|
||||
this.queryForm.taskExplain = 'sdf dsjf;l sdf;ldsf ;lsdfkj d;lsfkds;lfdksf第三方是德国搞定过分乐观看待给对方;公开地方领导反馈给东丽的反馈给管库给的给'
|
||||
},
|
||||
methods: {
|
||||
urlClick(val) {
|
||||
@@ -139,6 +138,7 @@
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
word-break: break-word;
|
||||
color: #040B29;
|
||||
font-weight: 400;
|
||||
}
|
||||
@@ -173,6 +173,7 @@
|
||||
text-overflow: ellipsis;
|
||||
white-space: pre-wrap;
|
||||
overflow: visible;
|
||||
word-break: break-word;
|
||||
float: left;
|
||||
color: #040B29;
|
||||
font-weight: 400;
|
||||
|
||||
@@ -34,7 +34,7 @@
|
||||
@submit="submit"
|
||||
@sendBack="sendBack"
|
||||
/>
|
||||
<circulationHistory v-if="isDisplay"/>
|
||||
<circulationHistory :isTrue="true" v-if="isDisplay"/>
|
||||
</div>
|
||||
</div>
|
||||
<JLoading :loading="loading">{{this.$t('pleaseWaitWhileRunning')}}</JLoading>
|
||||
@@ -309,7 +309,7 @@
|
||||
completeTask() {
|
||||
let value = JSON.parse(JSON.stringify(this.queryProject))
|
||||
let handlingTime = moment(new Date()).format('YYYY-MM-DD HH:mm:ss')
|
||||
value.operatorTime = handlingTime
|
||||
value.handlingTime = handlingTime
|
||||
Object.keys(value).forEach(res => {
|
||||
if (value[res] && value[res] instanceof String) {
|
||||
value[res] = value[res].replace(/\"/g, '“')
|
||||
|
||||
@@ -173,6 +173,8 @@
|
||||
},
|
||||
completeTask() {
|
||||
let value = JSON.parse(JSON.stringify(this.queryProject))
|
||||
let handlingTime = moment(new Date()).format('YYYY-MM-DD HH:mm:ss')
|
||||
value.handlingTime = handlingTime
|
||||
Object.keys(value).forEach(res => {
|
||||
if (value[res] && value[res] instanceof String) {
|
||||
value[res] = value[res].replace(/\"/g, '“')
|
||||
|
||||
@@ -87,13 +87,10 @@
|
||||
},
|
||||
{
|
||||
title: this.$t('createTime'),
|
||||
dataIndex: 'createTime',
|
||||
dataIndex: 'creatTime',
|
||||
align: 'center',
|
||||
ellipsis: true,
|
||||
width: 180,
|
||||
customRender: function(t, r, index) {
|
||||
return moment(t).format('YYYY-MM-DD HH:mm:ss')
|
||||
}
|
||||
},
|
||||
{
|
||||
title: this.$t('CompletionTime'),
|
||||
@@ -101,9 +98,6 @@
|
||||
align: 'center',
|
||||
ellipsis: true,
|
||||
width: 180,
|
||||
customRender: function(t, r, index) {
|
||||
return moment(t).format('YYYY-MM-DD HH:mm:ss')
|
||||
}
|
||||
},
|
||||
{
|
||||
title: this.$t('ProcessStatus'),
|
||||
|
||||
@@ -87,13 +87,10 @@
|
||||
},
|
||||
{
|
||||
title: this.$t('createTime'),
|
||||
dataIndex: 'createTime',
|
||||
dataIndex: 'creatTime',
|
||||
align: 'center',
|
||||
ellipsis: true,
|
||||
width: 180,
|
||||
customRender: function(t, r, index) {
|
||||
return moment(t).format('YYYY-MM-DD HH:mm:ss')
|
||||
}
|
||||
},
|
||||
{
|
||||
title: this.$t('CompletionTime'),
|
||||
@@ -101,9 +98,6 @@
|
||||
align: 'center',
|
||||
width: 180,
|
||||
ellipsis: true,
|
||||
customRender: function(t, r, index) {
|
||||
return moment(t).format('YYYY-MM-DD HH:mm:ss')
|
||||
}
|
||||
},
|
||||
{
|
||||
title: this.$t('ProcessStatus'),
|
||||
|
||||
@@ -5,13 +5,13 @@
|
||||
<a-row :gutter="24">
|
||||
<a-col :md="6" :sm="10">
|
||||
<a-form-item :label="$t('Collectlist')">
|
||||
<a-select v-model="queryParam.ctype" @change="getonChange" :getPopupContainer="triggerNode => triggerNode.parentNode">
|
||||
<a-select v-model="queryParam.ctype" @change="getonChange" :getPopupContainer="triggerNode => triggerNode.parentNode" :popper-append-to-body="false">
|
||||
<a-select-option v-for="d in options" :key="d.value" :value="d.value" >{{ d.label }}</a-select-option>
|
||||
</a-select>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :md="6" :sm="14">
|
||||
<a-form-model-item :label="$t('Statisticalmodels')" prop="value" class="process-form-item">
|
||||
<a-form-model-item :label="$t('Statisticalmodels')" prop="value" style='width: 388px' class="process-form-item">
|
||||
<a-radio-group v-model="queryParam.value" @change="onChange" style='width: 253px'>
|
||||
<a-radio :value="1">
|
||||
{{$t('Thepercentage')}}
|
||||
|
||||
@@ -49,7 +49,7 @@
|
||||
<div class="title-text" :title="$t('NareaOfResponsibility')">
|
||||
<span>{{$t('NareaOfResponsibility')}}</span>
|
||||
</div>
|
||||
<j-dict-select-tag class="box-input" v-model="formInline.dutyTerritory"
|
||||
<j-multi-select-tag class="box-input" v-model="formInline.dutyTerritory"
|
||||
:placeholder="$t('PleaseSelect')+$t('NareaOfResponsibility')"
|
||||
:type="'select'"
|
||||
:triggerChange="false" :dictCode="'duty_territory'"/>
|
||||
@@ -168,7 +168,8 @@
|
||||
{{$t('Adjustareasofresponsibility')}}
|
||||
</div>
|
||||
</template>
|
||||
<div class="operator-text" style="position: relative " @click='morepop' v-if='currentPersonRole == "homo" || currentPersonRole == "sdt"'>
|
||||
<!-- @click='morepop'-->
|
||||
<div class="operator-text" style="position: relative " v-if='currentPersonRole == "homo" || currentPersonRole == "sdt"'>
|
||||
<span style="position: absolute;left: -13px;top: -4px">...</span>{{ $t('more') }}
|
||||
</div>
|
||||
</a-popconfirm>
|
||||
@@ -226,8 +227,9 @@
|
||||
</div>
|
||||
<div style="width: 100%">
|
||||
<!-- 表格-10控件-->
|
||||
<!-- :queryParamQuery='queryParamQuery'-->
|
||||
<table-collection ref="CollectionTabel" :url='url' :paramsManifest='paramsManifest' @rowValue='rowValue'
|
||||
:formInline='formInline' :queryParamQuery='queryParamQuery' :currentPersonRole='currentPersonRole'
|
||||
:formInline='formInline' :currentPersonRole='currentPersonRole'
|
||||
@getDataSource="getDataSource"
|
||||
@handlePreservation="handlePreservation"
|
||||
@value='value'
|
||||
|
||||
@@ -268,6 +268,7 @@
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
word-break: break-word;
|
||||
color: #040B29;
|
||||
font-weight: 400;
|
||||
}
|
||||
|
||||
@@ -14,18 +14,18 @@
|
||||
</a-col>
|
||||
<a-col :md="6" :sm="8">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text" :title="$t('areaOfResponsibility')">
|
||||
<div class="title-text" :title="$t('areaOfResponsibility')">
|
||||
<span>{{$t('areaOfResponsibility')}}</span>
|
||||
</div>
|
||||
<j-dict-select-tag class="box-input" v-model="queryParam.dutyTerritory"
|
||||
:placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"
|
||||
:type="'select'"
|
||||
:triggerChange="false" :dictCode="'duty_territory'"/>
|
||||
<j-multi-select-tag class="box-input" v-model="queryParam.dutyTerritory"
|
||||
:placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"
|
||||
:type="'select'"
|
||||
:triggerChange="false" :dictCode="'duty_territory'"/>
|
||||
</div>
|
||||
</a-col>
|
||||
<a-col :md="6" :sm="8">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text" :title="$t('CertificationProgress')">
|
||||
<div class="title-text" :title="$t('CertificationProgress')">
|
||||
<span>{{$t('CertificationProgress')}}</span>
|
||||
</div>
|
||||
<j-dict-select-tag class="box-input" v-model="queryParam.certificationProgress"
|
||||
@@ -76,6 +76,10 @@
|
||||
</a-form>
|
||||
</div>
|
||||
<div class="table-operator">
|
||||
<!-- <div class="operator-text" @click="batSettingClick">-->
|
||||
<!-- <a-icon type="setting"/>-->
|
||||
<!-- {{ $t('batSetting') }}-->
|
||||
<!-- </div>-->
|
||||
<div @click="CertificationDirectory" class="operator-text">
|
||||
<a-icon type="bulb"/>
|
||||
{{$t('CertificationDirectory')}}
|
||||
@@ -86,6 +90,8 @@
|
||||
</div>
|
||||
</div>
|
||||
<div style="width: 100%">
|
||||
<!-- rowKey="id"
|
||||
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"-->
|
||||
<a-table
|
||||
ref="table"
|
||||
bordered
|
||||
@@ -98,7 +104,8 @@
|
||||
>
|
||||
<div slot="standardInformation" slot-scope="text,result" class="box-left">
|
||||
<div class="content">
|
||||
<a class="box-content-a" @click="standardClick(result)" :title="result.serialNumber">{{result.serialNumber}}</a>
|
||||
<a class="box-content-a" @click="standardClick(result)"
|
||||
:title="result.serialNumber">{{result.serialNumber}}</a>
|
||||
<a class="box-content-buttom" :title="result.title">{{result.title}}</a>
|
||||
</div>
|
||||
</div>
|
||||
@@ -170,12 +177,14 @@
|
||||
</div>
|
||||
<certificationDirectory :isDisplayNum="isDisplayNum" :url="url" ref="certificationDirectoryRef"/>
|
||||
<TaskListModel @TaskListModelList="TaskListModelList" ref="TaskListModelRef"/>
|
||||
<taskBatSetting @taskBatSettingForm="taskBatSettingForm" ref="taskBatSettingRef"></taskBatSetting>
|
||||
</a-card>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import certificationDirectory from './certificationDirectory'
|
||||
import TaskListModel from './TaskListModel'
|
||||
import taskBatSetting from './taskBatSetting'
|
||||
import { getAction, postAction, deleteAction, downloadFile } from '@/api/manage'
|
||||
import { mapGetters } from 'vuex'
|
||||
import store from '@/store/'
|
||||
@@ -184,7 +193,8 @@
|
||||
name: 'TaskList',
|
||||
components: {
|
||||
certificationDirectory,
|
||||
TaskListModel
|
||||
TaskListModel,
|
||||
taskBatSetting
|
||||
},
|
||||
props: ['isDisplayNum', 'areaOfResponsibility'],
|
||||
data() {
|
||||
@@ -332,8 +342,18 @@
|
||||
this.queryParam = {}
|
||||
this.getList()
|
||||
},
|
||||
onSelectChange() {
|
||||
|
||||
batSettingClick() {
|
||||
if (this.selectedRowKeys && this.selectedRowKeys.length > 0) {
|
||||
this.$refs.taskBatSettingRef.edit(JSON.parse(JSON.stringify(this.selectedRowKeys)))
|
||||
} else {
|
||||
this.$message.warning(this.$t('selectLeastOne'))
|
||||
}
|
||||
},
|
||||
taskBatSettingForm() {
|
||||
this.getList()
|
||||
},
|
||||
onSelectChange(value) {
|
||||
this.selectedRowKeys = value
|
||||
},
|
||||
handleExport() {
|
||||
let query = {
|
||||
@@ -364,7 +384,7 @@
|
||||
DueDate: 'designDueDate',
|
||||
remarks: 'designRemark',
|
||||
projectName: this.$route.query.projectName,
|
||||
targetMarket:this.$route.query.targetMarket,
|
||||
targetMarket: this.$route.query.targetMarket,
|
||||
projectNameId: this.$route.query.projectNameId,
|
||||
primaryKeyId: val.designTaskDetailId,
|
||||
PersonChargeFeedback: val.designPersonChargeFeedback
|
||||
@@ -389,7 +409,7 @@
|
||||
DueDate: 'prehomoDueDate',
|
||||
remarks: 'prehomoRemark',
|
||||
projectName: this.$route.query.projectName,
|
||||
targetMarket:this.$route.query.targetMarket,
|
||||
targetMarket: this.$route.query.targetMarket,
|
||||
projectNameId: this.$route.query.projectNameId,
|
||||
primaryKeyId: val.prehomoTaskDetailId,
|
||||
PersonChargeFeedback: val.prehomoPersonChargeFeedback
|
||||
@@ -414,7 +434,7 @@
|
||||
DueDate: 'verifyDueDate',
|
||||
remarks: 'verifyRemark',
|
||||
projectName: this.$route.query.projectName,
|
||||
targetMarket:this.$route.query.targetMarket,
|
||||
targetMarket: this.$route.query.targetMarket,
|
||||
projectNameId: this.$route.query.projectNameId,
|
||||
primaryKeyId: val.verifyTaskDetailId,
|
||||
PersonChargeFeedback: val.verifyPersonChargeFeedback
|
||||
@@ -431,9 +451,15 @@
|
||||
this.$refs.certificationDirectoryRef.addModel()
|
||||
},
|
||||
getList() {
|
||||
let queryParam = JSON.parse(JSON.stringify(this.queryParam))
|
||||
Object.keys(queryParam).forEach(val => {
|
||||
if (queryParam[val] instanceof Array) {
|
||||
queryParam[val] = queryParam[val].join(',')
|
||||
}
|
||||
})
|
||||
let query = {
|
||||
projectLibraryId: this.$route.query.id,
|
||||
...this.queryParam
|
||||
...queryParam
|
||||
}
|
||||
this.loading = true
|
||||
getAction(this.url.list, query).then((res) => {
|
||||
@@ -458,15 +484,15 @@
|
||||
TaskListModelList() {
|
||||
this.getList()
|
||||
},
|
||||
standardClick(row){
|
||||
standardClick(row) {
|
||||
let newUrl = this.$router.resolve({
|
||||
path: '/docManage/library/detail',
|
||||
query: {
|
||||
id:row.standId
|
||||
id: row.standId
|
||||
}
|
||||
})
|
||||
window.open(newUrl.href, '_blank')
|
||||
},
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
@@ -659,7 +685,8 @@
|
||||
.box-content-cou {
|
||||
cursor: pointer;
|
||||
}
|
||||
.box-content-buttom{
|
||||
|
||||
.box-content-buttom {
|
||||
width: 100%;
|
||||
overflow: hidden;
|
||||
display: -webkit-box;
|
||||
|
||||
@@ -215,6 +215,13 @@
|
||||
})
|
||||
},
|
||||
handleOk() {
|
||||
if (this.formInline.dutyTerritory) {
|
||||
this.handleOkTwo()
|
||||
} else {
|
||||
this.handleOkOne()
|
||||
}
|
||||
},
|
||||
handleOkOne() {
|
||||
let ids = JSON.parse(JSON.stringify(this.ids))
|
||||
let query = {
|
||||
ids: ids.join(','),
|
||||
@@ -233,6 +240,31 @@
|
||||
}
|
||||
})
|
||||
},
|
||||
handleOkTwo() {
|
||||
let _this = this
|
||||
this.$confirm({
|
||||
content: _this.$t('areResponsibilityAreaInformationBatch'),
|
||||
onOk() {
|
||||
let ids = JSON.parse(JSON.stringify(_this.ids))
|
||||
let query = {
|
||||
ids: ids.join(','),
|
||||
..._this.formInline
|
||||
}
|
||||
_this.confirmLoading = true
|
||||
postAction(_this.url.setBatch, query).then((res) => {
|
||||
if (res.success) {
|
||||
_this.$message.success(_this.$t('OperationSuccessful'))
|
||||
_this.visible = false
|
||||
_this.confirmLoading = false
|
||||
_this.$emit('batSettingList')
|
||||
} else {
|
||||
_this.$message.warning(_this.$t('operationFailed'))
|
||||
_this.confirmLoading = false
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
handleCancel() {
|
||||
this.formInline = {}
|
||||
this.visible = false
|
||||
|
||||
@@ -838,8 +838,8 @@
|
||||
rulesData: {
|
||||
subtitle: [
|
||||
{
|
||||
max: 100,
|
||||
message: this.$t('subtitle') + this.$t('cannotExceed') + 100 + this.$t('Characters'),
|
||||
max: 300,
|
||||
message: this.$t('subtitle') + this.$t('cannotExceed') + 300 + this.$t('Characters'),
|
||||
trigger: 'blur'
|
||||
}
|
||||
],
|
||||
|
||||
@@ -29,10 +29,10 @@
|
||||
<div class="title-text" :title="$t('areaOfResponsibility')">
|
||||
<span>{{ $t('areaOfResponsibility') }}</span>
|
||||
</div>
|
||||
<j-dict-select-tag class="box-input" v-model="queryParam.dutyTerritory"
|
||||
:placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"
|
||||
:type="'select'"
|
||||
:triggerChange="false" :dictCode="'duty_territory'"/>
|
||||
<j-multi-select-tag class="box-input" v-model="queryParam.dutyTerritory"
|
||||
:placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"
|
||||
:type="'select'"
|
||||
:triggerChange="false" :dictCode="'duty_territory'"/>
|
||||
</div>
|
||||
</a-col>
|
||||
<a-col :md="6" :sm="8">
|
||||
@@ -200,7 +200,7 @@
|
||||
class="tableList"
|
||||
:loading="loading"
|
||||
:pagination="false"
|
||||
:scroll="{x: '100%',y:'calc(100vh - 170px)'}"
|
||||
:scroll="{x: '100%',y:'calc(100vh - 186px)'}"
|
||||
rowKey="id"
|
||||
:data-source="dataSource"
|
||||
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
|
||||
@@ -273,6 +273,9 @@
|
||||
<span v-else>--</span>
|
||||
</span>
|
||||
</a-table>
|
||||
<div class="buttom-box" v-if="dataSource && dataSource.length > 0">
|
||||
{{$t('total')+' '+this.dataSource.length+' '+ $t('strip')}}
|
||||
</div>
|
||||
</div>
|
||||
<listAddModel :url="url" @addModelList="addModelList" ref="addModelRef"/>
|
||||
<listEditModel :url="url" @editModelList="addModelList" ref="editModelRef"/>
|
||||
@@ -1386,9 +1389,15 @@
|
||||
if (this.formInlineRoleSwitching.roleSwitchingCode == '11' || this.formInlineRoleSwitching.roleSwitchingCode == '12') {
|
||||
roleCode = 0
|
||||
}
|
||||
let queryParam = JSON.parse(JSON.stringify(this.queryParam))
|
||||
Object.keys(queryParam).forEach(val => {
|
||||
if (queryParam[val] instanceof Array) {
|
||||
queryParam[val] = queryParam[val].join(',')
|
||||
}
|
||||
})
|
||||
let query = {
|
||||
...this.queryParamQuery,
|
||||
...this.queryParam,
|
||||
...queryParam,
|
||||
projectLibraryId: this.$route.query.id,
|
||||
roleCode: roleCode
|
||||
}
|
||||
@@ -2257,6 +2266,14 @@
|
||||
text-justify: inter-ideograph;
|
||||
word-break: break-all
|
||||
}
|
||||
|
||||
.buttom-box {
|
||||
width: 100%;
|
||||
text-align: right;
|
||||
font-size: 16px;
|
||||
font-weight: 500;
|
||||
color: #000F16;
|
||||
}
|
||||
</style>
|
||||
<style>
|
||||
.box-input .ant-select-selection {
|
||||
|
||||
@@ -0,0 +1,251 @@
|
||||
<template>
|
||||
<a-modal
|
||||
:title="$t('batSetting')"
|
||||
:width="600"
|
||||
:visible="visible"
|
||||
:confirm-loading="confirmLoading"
|
||||
:maskClosable="false"
|
||||
@ok="handleOk"
|
||||
@cancel="handleCancel"
|
||||
>
|
||||
<a-form-model :model="formInline" class="formAdd" :rules="rules" ref="ruleForm">
|
||||
<a-row :gutter="24">
|
||||
<a-col :span="24">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<span class="title-text-text"
|
||||
:title="$t('CertificationProgress')">{{$t('CertificationProgress')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel">
|
||||
<j-dict-select-tag class="box-input" v-model="formInline.certificationProgress"
|
||||
@input="handleInput('certificationProgress')"
|
||||
:placeholder="$t('PleaseSelect')+$t('CertificationProgress')"
|
||||
:type="'select'"
|
||||
:triggerChange="false" :dictCode="'certification_progress'"/>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
<a-col :span="24">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<span class="title-text-text"
|
||||
:title="$t('CurrentStatus')">{{$t('CurrentStatus')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="conditionAssessment">
|
||||
<a-select
|
||||
v-model="formInline.conditionAssessment"
|
||||
:placeholder="$t('PleaseSelect')+$t('CurrentProjectStatusEvaluation')">
|
||||
<a-select-option :value="'1'">
|
||||
<span style="display: inline-block;width: 100%">
|
||||
{{ $t('red') }}
|
||||
</span>
|
||||
</a-select-option>
|
||||
<a-select-option :value="'2'">
|
||||
<span style="display: inline-block;width: 100%">
|
||||
{{ $t('yellow') }}
|
||||
</span>
|
||||
</a-select-option>
|
||||
<a-select-option :value="'3'">
|
||||
<span style="display: inline-block;width: 100%">
|
||||
{{ $t('green') }}
|
||||
</span>
|
||||
</a-select-option>
|
||||
|
||||
<a-select-option :value="'4'" disabled>
|
||||
<span style="display: inline-block;width: 100%">
|
||||
{{ $t('blue') }}
|
||||
</span>
|
||||
</a-select-option>
|
||||
</a-select>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
</a-row>
|
||||
</a-form-model>
|
||||
</a-modal>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { getAction, postAction } from '@/api/manage'
|
||||
import moment from 'moment'
|
||||
|
||||
export default {
|
||||
name: 'taskBatSetting',
|
||||
props: ['url'],
|
||||
data() {
|
||||
return {
|
||||
visible: false,
|
||||
confirmLoading: false,
|
||||
formInline: {},
|
||||
rules: {},
|
||||
ids: []
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
},
|
||||
methods: {
|
||||
edit(data) {
|
||||
this.visible = true
|
||||
this.$nextTick(() => {
|
||||
this.ids = data || []
|
||||
this.formInline = {}
|
||||
})
|
||||
},
|
||||
handleOk() {
|
||||
if (this.formInline.dutyTerritory) {
|
||||
this.handleOkTwo()
|
||||
} else {
|
||||
this.handleOkOne()
|
||||
}
|
||||
},
|
||||
handleOkOne() {
|
||||
let ids = JSON.parse(JSON.stringify(this.ids))
|
||||
let query = {
|
||||
ids: ids.join(','),
|
||||
...this.formInline
|
||||
}
|
||||
this.confirmLoading = true
|
||||
postAction(this.url.setBatch, query).then((res) => {
|
||||
if (res.success) {
|
||||
this.$message.success(this.$t('OperationSuccessful'))
|
||||
this.visible = false
|
||||
this.confirmLoading = false
|
||||
this.$emit('batSettingList')
|
||||
} else {
|
||||
this.$message.warning(this.$t('operationFailed'))
|
||||
this.confirmLoading = false
|
||||
}
|
||||
})
|
||||
},
|
||||
handleOkTwo() {
|
||||
let _this = this
|
||||
this.$confirm({
|
||||
content: _this.$t('areResponsibilityAreaInformationBatch'),
|
||||
onOk() {
|
||||
let ids = JSON.parse(JSON.stringify(_this.ids))
|
||||
let query = {
|
||||
ids: ids.join(','),
|
||||
..._this.formInline
|
||||
}
|
||||
_this.confirmLoading = true
|
||||
postAction(_this.url.setBatch, query).then((res) => {
|
||||
if (res.success) {
|
||||
_this.$message.success(_this.$t('OperationSuccessful'))
|
||||
_this.visible = false
|
||||
_this.confirmLoading = false
|
||||
_this.$emit('batSettingList')
|
||||
} else {
|
||||
_this.$message.warning(_this.$t('operationFailed'))
|
||||
_this.confirmLoading = false
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
handleCancel() {
|
||||
this.formInline = {}
|
||||
this.visible = false
|
||||
},
|
||||
handleInput(value) {
|
||||
this.$nextTick(() => {
|
||||
this.formInline = { ...this.formInline }
|
||||
this.$refs.ruleForm.validateField([value])
|
||||
})
|
||||
},
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style>
|
||||
.formAdd .ant-form-item-label {
|
||||
width: 130px;
|
||||
}
|
||||
|
||||
.formAdd .ant-form-item-control-wrapper {
|
||||
display: inline-block;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
/*.formAdd .ant-form-item {*/
|
||||
/* margin-bottom: 20px;*/
|
||||
/*}*/
|
||||
|
||||
.itemModel .ant-form-item-control-wrapper {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.box-input .ant-select-selection--single {
|
||||
height: 38px;
|
||||
}
|
||||
|
||||
.box-input .ant-select-selection--multiple {
|
||||
height: 38px;
|
||||
}
|
||||
|
||||
.box-input .ant-select-selection__rendered {
|
||||
line-height: 38px;
|
||||
height: 38px;
|
||||
}
|
||||
|
||||
.box-input .ant-select-selection--multiple .ant-select-selection__rendered > ul > li {
|
||||
margin-top: 6px;
|
||||
}
|
||||
|
||||
.box-input .ant-calendar-picker {
|
||||
line-height: 38px;
|
||||
height: 38px;
|
||||
}
|
||||
|
||||
.box-input .ant-calendar-picker-input {
|
||||
height: 38px;
|
||||
}
|
||||
|
||||
.box-input .ant-input-number-input-wrap {
|
||||
line-height: 38px;
|
||||
height: 38px;
|
||||
}
|
||||
|
||||
.box-input .ant-calendar-picker-input {
|
||||
padding: 4px 30px 4px 11px;
|
||||
}
|
||||
</style>
|
||||
<style scoped>
|
||||
.box-title-text {
|
||||
line-height: 1.4;
|
||||
display: flex;
|
||||
}
|
||||
|
||||
.title-text {
|
||||
width: 84px;
|
||||
text-align: right;
|
||||
display: inline-block;
|
||||
font-weight: 500;
|
||||
font-size: 14px;
|
||||
margin-right: 16px;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
height: 42px;
|
||||
line-height: 42px;
|
||||
}
|
||||
|
||||
.box-input {
|
||||
display: inline-block;
|
||||
height: 38px;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.itemModel {
|
||||
width: calc(100% - 130px);
|
||||
display: inline-block;
|
||||
margin-top: 2px;
|
||||
}
|
||||
|
||||
.title-text-text {
|
||||
margin-top: 9px;
|
||||
}
|
||||
|
||||
.formAdd {
|
||||
margin-bottom: 40px;
|
||||
}
|
||||
</style>
|
||||
@@ -11,28 +11,44 @@
|
||||
>
|
||||
<a-row :gutter='24'>
|
||||
<a-col :span='9'>
|
||||
<a-form-model-item :label="$t('areaOfResponsibility')">
|
||||
<a-select class="box-input" v-model="formData.dutyTerritory"
|
||||
:placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')">
|
||||
<a-select-option v-for="(element,index) in dutyTerritory" :key="element.value" :value="element.value">
|
||||
{{element.text}}
|
||||
</a-select-option>
|
||||
</a-select>
|
||||
<!-- <j-dict-select-tag class="box-input" v-model="formData.dutyTerritory"-->
|
||||
<!-- :placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"-->
|
||||
<!-- :type="'select'"-->
|
||||
<!-- :triggerChange="false" :dictCode="'duty_territory'"/>-->
|
||||
</a-form-model-item>
|
||||
<div class="box-title-text">
|
||||
<div class="title-text" :title="$t('areaOfResponsibility')">
|
||||
<span>{{$t('areaOfResponsibility')}}</span>
|
||||
</div>
|
||||
<!-- :label="$t('FilterMatching')" :labelCol="{md: 6,xs:24}" :wrapperCol="{md: 18,xs:24}" style="width: 100%;"-->
|
||||
<a-form-model-item class='box-input'>
|
||||
<a-select v-model="formData.dutyTerritory"
|
||||
style='width: 148%'
|
||||
:placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')">
|
||||
<a-select-option v-for="(element,index) in dutyTerritory" :key="element.value" :value="element.value">
|
||||
{{element.text}}
|
||||
</a-select-option>
|
||||
</a-select>
|
||||
<!-- <j-dict-select-tag class="box-input" v-model="formData.dutyTerritory"-->
|
||||
<!-- :placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"-->
|
||||
<!-- :type="'select'"-->
|
||||
<!-- :triggerChange="false" :dictCode="'duty_territory'"/>-->
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
|
||||
</a-col>
|
||||
<a-col :span='9'>
|
||||
<a-form-model-item :label="$t('RelatedItems')" prop='ListTitle'>
|
||||
<a-select class="box-input" v-model="formData.projectNameId"
|
||||
:placeholder="$t('PleaseSelect')+$t('RelatedItems')">
|
||||
<a-select-option v-for="(element,index) in RelatedItemList" :key="element.id" :value="element.id">
|
||||
{{element.projectName}}
|
||||
</a-select-option>
|
||||
</a-select>
|
||||
</a-form-model-item>
|
||||
<div class="box-title-text">
|
||||
<div class="title-text" :title="$t('RelatedItems')">
|
||||
<span>{{$t('RelatedItems')}}</span>
|
||||
</div>
|
||||
<!-- :label="$t('FilterMatching')" :labelCol="{md: 6,xs:24}" :wrapperCol="{md: 18,xs:24}" style="width: 100%;"-->
|
||||
<a-form-model-item class='box-input'>
|
||||
<a-select v-model="formData.projectNameId"
|
||||
style='width: 148%'
|
||||
:placeholder="$t('PleaseSelect')+$t('RelatedItems')">
|
||||
<a-select-option v-for="(element,index) in RelatedItemList" :key="element.id" :value="element.id">
|
||||
{{element.projectName}}
|
||||
</a-select-option>
|
||||
</a-select>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
|
||||
</a-col>
|
||||
<a-col :span='6' style='margin-top: 4px;'>
|
||||
<a-button class='box-button' type='primary' @click='searchQuery'>{{ $t('query') }}</a-button>
|
||||
@@ -58,28 +74,28 @@
|
||||
|
||||
@change='handleTableChange'>
|
||||
<span slot="status" slot-scope="text,record" :title="text" >
|
||||
<a v-if="record.designFlowTaskStatus_dicText == '符合'" style='color: #26BD4B'>{{ text }}</a>
|
||||
<a v-if="record.designFlowTaskStatus_dicText == '不符合'" style='color: #E83030'>{{ text }}</a>
|
||||
<a v-if="record.designFlowTaskStatus_dicText == '待追踪'" style='color: #FDA71C'>{{ text }}</a>
|
||||
<a v-if="record.designFlowTaskStatus_dicText == '不涉及'" style='color: #707486'>{{ text }}</a>
|
||||
<a v-if="record.designFlowTaskStatus_dicText == '待确认'" style='color: #00B3BE'>{{ text }}</a>
|
||||
<a v-if="record.designFlowTaskStatus_dicText == '任务终止'" style='color: #E83030'>{{ text }}</a>
|
||||
<a v-if="record.designFlowTaskStatus == 'Compliance'" style='color: #26BD4B'>{{ text }}</a>
|
||||
<a v-if="record.designFlowTaskStatus == 'Non-Compliance'" style='color: #E83030'>{{ text }}</a>
|
||||
<a v-if="record.designFlowTaskStatus == 'To be tracked'" style='color: #FDA71C'>{{ text }}</a>
|
||||
<a v-if="record.designFlowTaskStatus == 'NA'" style='color: #707486'>{{ text }}</a>
|
||||
<a v-if="record.designFlowTaskStatus == 'No rating'" style='color: #00B3BE'>{{ text }}</a>
|
||||
<a v-if="record.designFlowTaskStatus == 'Termination of task'" style='color: #E83030'>{{ text }}</a>
|
||||
</span>
|
||||
<span slot="statusprehomo" slot-scope="text,record" :title="text" >
|
||||
<a v-if="record.prehomoFlowTaskStatus_dicText == '符合'" style='color: #26BD4B'>{{ text }}</a>
|
||||
<a v-if="record.prehomoFlowTaskStatus_dicText == '不符合'" style='color: #E83030'>{{ text }}</a>
|
||||
<a v-if="record.prehomoFlowTaskStatus_dicText == '待追踪'" style='color: #FDA71C'>{{ text }}</a>
|
||||
<a v-if="record.prehomoFlowTaskStatus_dicText == '不涉及'" style='color: #707486'>{{ text }}</a>
|
||||
<a v-if="record.prehomoFlowTaskStatus_dicText == '待确认'" style='color: #00B3BE'>{{ text }}</a>
|
||||
<a v-if="record.prehomoFlowTaskStatus_dicText == '任务终止'" style='color: #E83030'>{{ text }}</a>
|
||||
<a v-if="record.prehomoFlowTaskStatus == 'Compliance'" style='color: #26BD4B'>{{ text }}</a>
|
||||
<a v-if="record.prehomoFlowTaskStatus == 'Non-Compliance'" style='color: #E83030'>{{ text }}</a>
|
||||
<a v-if="record.prehomoFlowTaskStatus == 'To be tracked'" style='color: #FDA71C'>{{ text }}</a>
|
||||
<a v-if="record.prehomoFlowTaskStatus == 'NA'" style='color: #707486'>{{ text }}</a>
|
||||
<a v-if="record.prehomoFlowTaskStatus == 'No rating'" style='color: #00B3BE'>{{ text }}</a>
|
||||
<a v-if="record.prehomoFlowTaskStatus == 'Termination of task'" style='color: #E83030'>{{ text }}</a>
|
||||
</span>
|
||||
<span slot="filstatuse" slot-scope="text,record" :title="text" >
|
||||
<a v-if="record.verifyFlowTaskStatus_dicText == '符合'" style='color: #26BD4B'>{{ text }}</a>
|
||||
<a v-if="record.verifyFlowTaskStatus_dicText == '不符合'" style='color: #E83030'>{{ text }}</a>
|
||||
<a v-if="record.verifyFlowTaskStatus_dicText == '待追踪'" style='color: #FDA71C'>{{ text }}</a>
|
||||
<a v-if="record.verifyFlowTaskStatus_dicText == '不涉及'" style='color: #707486'>{{ text }}</a>
|
||||
<a v-if="record.verifyFlowTaskStatus_dicText == '待确认'" style='color: #00B3BE'>{{ text }}</a>
|
||||
<a v-if="record.verifyFlowTaskStatus_dicText == '任务终止'" style='color: #E83030'>{{ text }}</a>
|
||||
<a v-if="record.verifyFlowTaskStatus == 'Compliance'" style='color: #26BD4B'>{{ text }}</a>
|
||||
<a v-if="record.verifyFlowTaskStatus == 'Non-Compliance'" style='color: #E83030'>{{ text }}</a>
|
||||
<a v-if="record.verifyFlowTaskStatus == 'To be tracked'" style='color: #FDA71C'>{{ text }}</a>
|
||||
<a v-if="record.verifyFlowTaskStatus == 'NA'" style='color: #707486'>{{ text }}</a>
|
||||
<a v-if="record.verifyFlowTaskStatus == 'No rating'" style='color: #00B3BE'>{{ text }}</a>
|
||||
<a v-if="record.verifyFlowTaskStatus == 'Termination of task'" style='color: #E83030'>{{ text }}</a>
|
||||
</span>
|
||||
|
||||
<!-- <template slot="file" slot-scope="text, record">-->
|
||||
@@ -321,6 +337,33 @@ export default {
|
||||
|
||||
<style lang='less' scoped>
|
||||
@import '~@assets/less/common.less';
|
||||
.box-title-text {
|
||||
line-height: 1.4;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
|
||||
.title-text {
|
||||
width: 110px;
|
||||
color: #000F16;
|
||||
display: inline-block;
|
||||
font-weight: 500;
|
||||
font-size: 14px;
|
||||
margin-right: 16px;
|
||||
margin-top: -15px;
|
||||
text-align: right;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
|
||||
.box-input {
|
||||
display: inline-block;
|
||||
width: 70%;
|
||||
height: 38px;
|
||||
margin-top: 2px;
|
||||
}
|
||||
|
||||
.diolag-area {
|
||||
.table-area {
|
||||
|
||||
@@ -175,7 +175,7 @@ export default {
|
||||
title: this.$t('title'),
|
||||
align: 'center',
|
||||
dataIndex: 'title',
|
||||
width: 180,
|
||||
width: 250,
|
||||
scopedSlots: { customRender: 'standard' }
|
||||
},
|
||||
{
|
||||
@@ -193,14 +193,14 @@ export default {
|
||||
title: this.$t('technicalField'),
|
||||
align: 'center',
|
||||
dataIndex: 'technologyTerritory_dicText',
|
||||
width: 350,
|
||||
width: 250,
|
||||
scopedSlots: { customRender: 'technicalField' }
|
||||
},
|
||||
{
|
||||
title: this.$t('RegulatoryProcessEvaluationResults'),
|
||||
align: 'center',
|
||||
fixed: 'right',
|
||||
width: 250,
|
||||
width: 380,
|
||||
scopedSlots: { customRender: 'operation' }
|
||||
}
|
||||
],
|
||||
|
||||
@@ -35,6 +35,39 @@
|
||||
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
|
||||
:columns="columns"
|
||||
>
|
||||
<span slot="vehicleInProductionDate" slot-scope="text,result">
|
||||
<span v-if="result.xin1_che1_xing2_shi2_shi1_ri4_qi1 == 'yellow'">
|
||||
{{text}}
|
||||
</span>
|
||||
<span v-else-if="result.xin1_che1_xing2_shi2_shi1_ri4_qi1 == 'red'">
|
||||
{{text}}
|
||||
</span>
|
||||
<span v-else>
|
||||
{{text}}
|
||||
</span>
|
||||
</span>
|
||||
<span slot="ImplementationDate" slot-scope="text,result">
|
||||
<span v-if="result.new_colour == 'yellow'" style="color: #fdd835">
|
||||
{{text}}
|
||||
</span>
|
||||
<span v-else-if="result.new_colour == 'red'" style="color: red">
|
||||
{{text}}
|
||||
</span>
|
||||
<span v-else>
|
||||
{{text}}
|
||||
</span>
|
||||
</span>
|
||||
<span slot="vehicleInProductionDate" slot-scope="text,result">
|
||||
<span v-if="result.implement_colour == 'yellow'" style="color: #fdd835">
|
||||
{{text}}
|
||||
</span>
|
||||
<span v-else-if="result.implement_colour == 'red'" style="color: red">
|
||||
{{text}}
|
||||
</span>
|
||||
<span v-else>
|
||||
{{text}}
|
||||
</span>
|
||||
</span>
|
||||
</a-table>
|
||||
<div class="page" v-if="dataSource && dataSource.length > 0">
|
||||
<a-pagination
|
||||
@@ -138,14 +171,16 @@
|
||||
align: 'center',
|
||||
ellipsis: true,
|
||||
width: 210,
|
||||
dataIndex: 'implement_time'
|
||||
dataIndex: 'implement_time',
|
||||
scopedSlots: { customRender: 'vehicleInProductionDate' }
|
||||
},
|
||||
{
|
||||
title: this.$t('ImplementationDate'),
|
||||
align: 'center',
|
||||
ellipsis: true,
|
||||
width: 210,
|
||||
dataIndex: 'xin1_che1_xing2_shi2_shi1_ri4_qi1'
|
||||
dataIndex: 'xin1_che1_xing2_shi2_shi1_ri4_qi1',
|
||||
scopedSlots: { customRender: 'ImplementationDate' }
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||