合并分支 'dev_third_stage' 到 'master'
Dev third stage 查看合并请求 laws-nio/laws-weilai!136
This commit is contained in:
@@ -511,26 +511,23 @@ INSERT INTO `laws_weilai`.`sys_permission`(`id`, `parent_id`, `name`, `url`, `co
|
||||
-- 角色表-增加对外报告管理员角色 2022-7-28 已同步生产环境
|
||||
INSERT INTO `sys_role` VALUES ('1552536424587862017', '对外报告管理员', 'ExternalReportsManager', '对外报告文件夹列表的管理员', 'admin', '2022-7-28 14:08:23', NULL, NULL, NULL, NULL);
|
||||
|
||||
-- 菜单管理 添加对外报告文件夹管理按钮权限 2022-07-28 已同步生产环境
|
||||
INSERT INTO `sys_permission` VALUES ('1552182885208608770', '1549937961282908162', '对外报告文件夹管理', '', NULL, NULL, NULL, 2, 'externalReports:folder', '1', 1.00, 0, NULL, 1, 1, 0, 0, NULL, 'admin', '2022-7-27 14:43:33', NULL, NULL, 0, 0, '1', 0, 'External Report Folder Management ');
|
||||
|
||||
-- 对外报告文件夹表 2022-7-29 已同步生产环境
|
||||
DROP TABLE IF EXISTS `ext_repo_folder`;
|
||||
CREATE TABLE `ext_repo_folder` (
|
||||
`id` varchar(36) NOT NULL,
|
||||
`create_by` varchar(50) DEFAULT NULL COMMENT '创建人',
|
||||
`create_time` datetime DEFAULT NULL COMMENT '创建日期',
|
||||
`update_by` varchar(50) DEFAULT NULL COMMENT '更新人',
|
||||
`update_time` datetime DEFAULT NULL COMMENT '更新日期',
|
||||
`sys_org_code` varchar(64) DEFAULT NULL COMMENT '所属部门',
|
||||
`folder_name` varchar(255) DEFAULT NULL COMMENT '文件夹名称',
|
||||
`order_id` int(11) DEFAULT NULL COMMENT '文件夹排序',
|
||||
`sup_folder` varchar(36) DEFAULT NULL COMMENT '所属文件夹',
|
||||
`auth_view_ids_name` varchar(2000) DEFAULT NULL COMMENT '查看权限人员',
|
||||
`auth_manage_ids_name` varchar(2000) DEFAULT NULL COMMENT '管理权限人员',
|
||||
`auth_view_ids` varchar(2000) DEFAULT NULL COMMENT '查看权限人员id',
|
||||
`auth_manage_ids` varchar(2000) DEFAULT NULL COMMENT '管理权限人员id',
|
||||
PRIMARY KEY (`id`)
|
||||
`id` varchar(36) NOT NULL,
|
||||
`create_by` varchar(50) DEFAULT NULL COMMENT '创建人',
|
||||
`create_time` datetime DEFAULT NULL COMMENT '创建日期',
|
||||
`update_by` varchar(50) DEFAULT NULL COMMENT '更新人',
|
||||
`update_time` datetime DEFAULT NULL COMMENT '更新日期',
|
||||
`sys_org_code` varchar(64) DEFAULT NULL COMMENT '所属部门',
|
||||
`folder_name` varchar(255) DEFAULT NULL COMMENT '文件夹名称',
|
||||
`order_id` int(11) DEFAULT NULL COMMENT '文件夹排序',
|
||||
`sup_folder` varchar(36) DEFAULT NULL COMMENT '所属文件夹',
|
||||
`auth_view_ids_name` varchar(2000) DEFAULT NULL COMMENT '查看权限人员',
|
||||
`auth_manage_ids_name` varchar(2000) DEFAULT NULL COMMENT '管理权限人员',
|
||||
`auth_view_ids` varchar(2000) DEFAULT NULL COMMENT '查看权限人员id',
|
||||
`auth_manage_ids` varchar(2000) DEFAULT NULL COMMENT '管理权限人员id',
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
||||
|
||||
INSERT INTO `ext_repo_folder` VALUES ('1552846304994131970', 'admin', '2022-07-01 11:11:11', 'admin', '2022-11-11 11:11:11', 'A01', '文件夹', '1', 'root', '', '', '', '');
|
||||
@@ -538,17 +535,17 @@ INSERT INTO `ext_repo_folder` VALUES ('1552846304994131970', 'admin', '2022-07-0
|
||||
-- 对外报告数据表 2022-7-29 已同步生产环境
|
||||
DROP TABLE IF EXISTS `ext_repo_data`;
|
||||
CREATE TABLE `ext_repo_data` (
|
||||
`id` varchar(36) NOT NULL,
|
||||
`create_by` varchar(50) DEFAULT NULL COMMENT '创建人',
|
||||
`create_time` datetime DEFAULT NULL COMMENT '创建日期',
|
||||
`update_by` varchar(50) DEFAULT NULL COMMENT '更新人',
|
||||
`update_time` datetime DEFAULT NULL COMMENT '更新日期',
|
||||
`sys_org_code` varchar(64) DEFAULT NULL COMMENT '所属部门',
|
||||
`file_key` varchar(255) DEFAULT NULL COMMENT '文件标识',
|
||||
`file_name` varchar(255) DEFAULT NULL COMMENT '文件名称',
|
||||
`file_description` varchar(255) DEFAULT NULL COMMENT '文件说明',
|
||||
`sup_folder` varchar(36) DEFAULT NULL COMMENT '所属文件夹',
|
||||
PRIMARY KEY (`id`)
|
||||
`id` varchar(36) NOT NULL,
|
||||
`create_by` varchar(50) DEFAULT NULL COMMENT '创建人',
|
||||
`create_time` datetime DEFAULT NULL COMMENT '创建日期',
|
||||
`update_by` varchar(50) DEFAULT NULL COMMENT '更新人',
|
||||
`update_time` datetime DEFAULT NULL COMMENT '更新日期',
|
||||
`sys_org_code` varchar(64) DEFAULT NULL COMMENT '所属部门',
|
||||
`file_key` varchar(255) DEFAULT NULL COMMENT '文件标识',
|
||||
`file_name` varchar(255) DEFAULT NULL COMMENT '文件名称',
|
||||
`file_description` varchar(255) DEFAULT NULL COMMENT '文件说明',
|
||||
`sup_folder` varchar(36) DEFAULT NULL COMMENT '所属文件夹',
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
||||
|
||||
-- 参数项收集清单 认证类别取消列表显示 2022-08-02 已同步生产环境
|
||||
@@ -731,100 +728,100 @@ CREATE TABLE `laws_weilai`.`country_card_manage_release_detail` (
|
||||
-- 文档对比信息表 2022-08-07 已同步生产环境
|
||||
DROP TABLE IF EXISTS `sar_file_compare_info`;
|
||||
CREATE TABLE `sar_file_compare_info` (
|
||||
`id` varchar(36) NOT NULL,
|
||||
`create_by` varchar(50) DEFAULT NULL COMMENT '创建人',
|
||||
`create_time` datetime DEFAULT NULL COMMENT '创建日期',
|
||||
`update_by` varchar(50) DEFAULT NULL COMMENT '更新人',
|
||||
`update_time` datetime DEFAULT NULL COMMENT '更新日期',
|
||||
`sys_org_code` varchar(64) DEFAULT NULL COMMENT '所属部门',
|
||||
`file_id_left` varchar(36) DEFAULT NULL COMMENT '文档1',
|
||||
`file_key_left` varchar(32) DEFAULT NULL COMMENT '文档key1',
|
||||
`serial_number_left` varchar(36) DEFAULT NULL COMMENT '编号1',
|
||||
`title_left` varchar(255) DEFAULT NULL COMMENT '标题1',
|
||||
`file_type_left` varchar(36) DEFAULT NULL COMMENT '文本状态1',
|
||||
`file_name_left` varchar(255) DEFAULT NULL COMMENT '文件名称1',
|
||||
`file_id_right` varchar(36) DEFAULT NULL COMMENT '文档2',
|
||||
`file_key_right` varchar(32) DEFAULT NULL COMMENT '文档key2',
|
||||
`serial_number_right` varchar(36) DEFAULT NULL COMMENT '编号2',
|
||||
`title_right` varchar(255) DEFAULT NULL COMMENT '标题2',
|
||||
`file_type_right` varchar(36) DEFAULT NULL COMMENT '文本状态2',
|
||||
`file_name_right` varchar(255) DEFAULT NULL COMMENT '文件名称2',
|
||||
`release_state` varchar(36) DEFAULT NULL COMMENT '发布状态',
|
||||
`remark` varchar(1000) DEFAULT NULL COMMENT '备注',
|
||||
`comments` varchar(1000) DEFAULT NULL COMMENT '评论',
|
||||
PRIMARY KEY (`id`)
|
||||
`id` varchar(36) NOT NULL,
|
||||
`create_by` varchar(50) DEFAULT NULL COMMENT '创建人',
|
||||
`create_time` datetime DEFAULT NULL COMMENT '创建日期',
|
||||
`update_by` varchar(50) DEFAULT NULL COMMENT '更新人',
|
||||
`update_time` datetime DEFAULT NULL COMMENT '更新日期',
|
||||
`sys_org_code` varchar(64) DEFAULT NULL COMMENT '所属部门',
|
||||
`file_id_left` varchar(36) DEFAULT NULL COMMENT '文档1',
|
||||
`file_key_left` varchar(32) DEFAULT NULL COMMENT '文档key1',
|
||||
`serial_number_left` varchar(36) DEFAULT NULL COMMENT '编号1',
|
||||
`title_left` varchar(255) DEFAULT NULL COMMENT '标题1',
|
||||
`file_type_left` varchar(36) DEFAULT NULL COMMENT '文本状态1',
|
||||
`file_name_left` varchar(255) DEFAULT NULL COMMENT '文件名称1',
|
||||
`file_id_right` varchar(36) DEFAULT NULL COMMENT '文档2',
|
||||
`file_key_right` varchar(32) DEFAULT NULL COMMENT '文档key2',
|
||||
`serial_number_right` varchar(36) DEFAULT NULL COMMENT '编号2',
|
||||
`title_right` varchar(255) DEFAULT NULL COMMENT '标题2',
|
||||
`file_type_right` varchar(36) DEFAULT NULL COMMENT '文本状态2',
|
||||
`file_name_right` varchar(255) DEFAULT NULL COMMENT '文件名称2',
|
||||
`release_state` varchar(36) DEFAULT NULL COMMENT '发布状态',
|
||||
`remark` varchar(1000) DEFAULT NULL COMMENT '备注',
|
||||
`comments` varchar(1000) DEFAULT NULL COMMENT '评论',
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
||||
|
||||
-- 文档对比信息条目表 2022-08-07 已同步生产环境
|
||||
DROP TABLE IF EXISTS `sar_file_compare_item`;
|
||||
CREATE TABLE `sar_file_compare_item` (
|
||||
`id` varchar(36) NOT NULL,
|
||||
`create_by` varchar(50) DEFAULT NULL COMMENT '创建人',
|
||||
`create_time` datetime DEFAULT NULL COMMENT '创建日期',
|
||||
`update_by` varchar(50) DEFAULT NULL COMMENT '更新人',
|
||||
`update_time` datetime DEFAULT NULL COMMENT '更新日期',
|
||||
`sys_org_code` varchar(64) DEFAULT NULL COMMENT '所属部门',
|
||||
`info_id` varchar(36) DEFAULT NULL COMMENT '文档对比信息id',
|
||||
`menu_id` varchar(36) DEFAULT NULL COMMENT '目录id',
|
||||
`items_name` varchar(255) DEFAULT NULL COMMENT '条款名称',
|
||||
`items_num` varchar(255) DEFAULT NULL COMMENT '条款编号',
|
||||
`items_text` longtext COMMENT '条款正文',
|
||||
`items_display_num` int(11) DEFAULT NULL COMMENT '条款展示编号',
|
||||
`target_stand` int(11) DEFAULT NULL COMMENT '对应相似条目',
|
||||
`left_or_right` varchar(36) DEFAULT NULL COMMENT '条款位置',
|
||||
`reviewed` int(11) DEFAULT NULL COMMENT '是否被评论(0或1)',
|
||||
PRIMARY KEY (`id`)
|
||||
`id` varchar(36) NOT NULL,
|
||||
`create_by` varchar(50) DEFAULT NULL COMMENT '创建人',
|
||||
`create_time` datetime DEFAULT NULL COMMENT '创建日期',
|
||||
`update_by` varchar(50) DEFAULT NULL COMMENT '更新人',
|
||||
`update_time` datetime DEFAULT NULL COMMENT '更新日期',
|
||||
`sys_org_code` varchar(64) DEFAULT NULL COMMENT '所属部门',
|
||||
`info_id` varchar(36) DEFAULT NULL COMMENT '文档对比信息id',
|
||||
`menu_id` varchar(36) DEFAULT NULL COMMENT '目录id',
|
||||
`items_name` varchar(255) DEFAULT NULL COMMENT '条款名称',
|
||||
`items_num` varchar(255) DEFAULT NULL COMMENT '条款编号',
|
||||
`items_text` longtext COMMENT '条款正文',
|
||||
`items_display_num` int(11) DEFAULT NULL COMMENT '条款展示编号',
|
||||
`target_stand` int(11) DEFAULT NULL COMMENT '对应相似条目',
|
||||
`left_or_right` varchar(36) DEFAULT NULL COMMENT '条款位置',
|
||||
`reviewed` int(11) DEFAULT NULL COMMENT '是否被评论(0或1)',
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
||||
|
||||
-- 文档对比信息条目评论表 2022-08-07 已同步生产环境
|
||||
DROP TABLE IF EXISTS `sar_file_compare_item_comment`;
|
||||
CREATE TABLE `sar_file_compare_item_comment` (
|
||||
`id` varchar(36) NOT NULL,
|
||||
`create_by` varchar(50) DEFAULT NULL COMMENT '创建人',
|
||||
`create_time` datetime DEFAULT NULL COMMENT '创建日期',
|
||||
`update_by` varchar(50) DEFAULT NULL COMMENT '更新人',
|
||||
`update_time` datetime DEFAULT NULL COMMENT '更新日期',
|
||||
`sys_org_code` varchar(64) DEFAULT NULL COMMENT '所属部门',
|
||||
`info_id` varchar(36) DEFAULT NULL COMMENT '文档对比信息id',
|
||||
`items_id_left` varchar(36) DEFAULT NULL COMMENT '条款id左',
|
||||
`items_id_right` varchar(36) DEFAULT NULL COMMENT '条款id右',
|
||||
`comment` longtext COMMENT '评论',
|
||||
PRIMARY KEY (`id`)
|
||||
`id` varchar(36) NOT NULL,
|
||||
`create_by` varchar(50) DEFAULT NULL COMMENT '创建人',
|
||||
`create_time` datetime DEFAULT NULL COMMENT '创建日期',
|
||||
`update_by` varchar(50) DEFAULT NULL COMMENT '更新人',
|
||||
`update_time` datetime DEFAULT NULL COMMENT '更新日期',
|
||||
`sys_org_code` varchar(64) DEFAULT NULL COMMENT '所属部门',
|
||||
`info_id` varchar(36) DEFAULT NULL COMMENT '文档对比信息id',
|
||||
`items_id_left` varchar(36) DEFAULT NULL COMMENT '条款id左',
|
||||
`items_id_right` varchar(36) DEFAULT NULL COMMENT '条款id右',
|
||||
`comment` longtext COMMENT '评论',
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
||||
|
||||
-- 文档对比信息目录表 2022-08-07 已同步生产环境
|
||||
DROP TABLE IF EXISTS `sar_file_compare_menu`;
|
||||
CREATE TABLE `sar_file_compare_menu` (
|
||||
`id` varchar(36) NOT NULL,
|
||||
`create_by` varchar(50) DEFAULT NULL COMMENT '创建人',
|
||||
`create_time` datetime DEFAULT NULL COMMENT '创建日期',
|
||||
`update_by` varchar(50) DEFAULT NULL COMMENT '更新人',
|
||||
`update_time` datetime DEFAULT NULL COMMENT '更新日期',
|
||||
`sys_org_code` varchar(64) DEFAULT NULL COMMENT '所属部门',
|
||||
`menu_id` varchar(36) DEFAULT NULL COMMENT '目录ID',
|
||||
`info_id` varchar(36) DEFAULT NULL COMMENT '信息ID',
|
||||
`name` varchar(200) DEFAULT NULL COMMENT '目录名称',
|
||||
`parent_id` varchar(36) DEFAULT NULL COMMENT '父级目录ID',
|
||||
`display_seq` int(11) DEFAULT NULL COMMENT '排序序号',
|
||||
`left_or_right` varchar(32) DEFAULT NULL COMMENT '目录位置',
|
||||
`item_name` varchar(255) DEFAULT NULL COMMENT '条款名称',
|
||||
`remarks` varchar(255) DEFAULT NULL COMMENT '备注',
|
||||
PRIMARY KEY (`id`)
|
||||
`id` varchar(36) NOT NULL,
|
||||
`create_by` varchar(50) DEFAULT NULL COMMENT '创建人',
|
||||
`create_time` datetime DEFAULT NULL COMMENT '创建日期',
|
||||
`update_by` varchar(50) DEFAULT NULL COMMENT '更新人',
|
||||
`update_time` datetime DEFAULT NULL COMMENT '更新日期',
|
||||
`sys_org_code` varchar(64) DEFAULT NULL COMMENT '所属部门',
|
||||
`menu_id` varchar(36) DEFAULT NULL COMMENT '目录ID',
|
||||
`info_id` varchar(36) DEFAULT NULL COMMENT '信息ID',
|
||||
`name` varchar(200) DEFAULT NULL COMMENT '目录名称',
|
||||
`parent_id` varchar(36) DEFAULT NULL COMMENT '父级目录ID',
|
||||
`display_seq` int(11) DEFAULT NULL COMMENT '排序序号',
|
||||
`left_or_right` varchar(32) DEFAULT NULL COMMENT '目录位置',
|
||||
`item_name` varchar(255) DEFAULT NULL COMMENT '条款名称',
|
||||
`remarks` varchar(255) DEFAULT NULL COMMENT '备注',
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
||||
|
||||
-- 文档对比信息结果表 2022-08-07 已同步生产环境
|
||||
DROP TABLE IF EXISTS `sar_file_compare_res_comment`;
|
||||
CREATE TABLE `sar_file_compare_res_comment` (
|
||||
`id` varchar(36) NOT NULL,
|
||||
`create_by` varchar(50) DEFAULT NULL COMMENT '创建人',
|
||||
`create_time` datetime DEFAULT NULL COMMENT '创建日期',
|
||||
`update_by` varchar(50) DEFAULT NULL COMMENT '更新人',
|
||||
`update_time` datetime DEFAULT NULL COMMENT '更新日期',
|
||||
`sys_org_code` varchar(64) DEFAULT NULL COMMENT '所属部门',
|
||||
`info_id` varchar(36) DEFAULT NULL COMMENT '文档对比信息id',
|
||||
`parent_id` varchar(36) DEFAULT NULL COMMENT '回复评论ID',
|
||||
`comment` longtext COMMENT '评论',
|
||||
PRIMARY KEY (`id`)
|
||||
`id` varchar(36) NOT NULL,
|
||||
`create_by` varchar(50) DEFAULT NULL COMMENT '创建人',
|
||||
`create_time` datetime DEFAULT NULL COMMENT '创建日期',
|
||||
`update_by` varchar(50) DEFAULT NULL COMMENT '更新人',
|
||||
`update_time` datetime DEFAULT NULL COMMENT '更新日期',
|
||||
`sys_org_code` varchar(64) DEFAULT NULL COMMENT '所属部门',
|
||||
`info_id` varchar(36) DEFAULT NULL COMMENT '文档对比信息id',
|
||||
`parent_id` varchar(36) DEFAULT NULL COMMENT '回复评论ID',
|
||||
`comment` longtext COMMENT '评论',
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
||||
|
||||
-- 法规技术评估-条款信息评估结果表 字段增加长度 2022-08-08
|
||||
@@ -869,3 +866,50 @@ 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 ('7', NULL, NULL, NULL, NULL, NULL, '马来西亚', 'Malaysia', NULL, '/jero-boot/nationalFlag/Malaysia.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 ('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
|
||||
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
|
||||
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
|
||||
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
|
||||
-- 同步情况 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';
|
||||
-- 转换结果 result_content
|
||||
UPDATE `laws_weilai`.`sys_dict_item` SET `en_name` = 'In progress' WHERE `id` = '1496785163561398273';
|
||||
UPDATE `laws_weilai`.`sys_dict_item` SET `en_name` = 'Success' WHERE `id` = '1496785251536924674';
|
||||
UPDATE `laws_weilai`.`sys_dict_item` SET `en_name` = 'Fail' WHERE `id` = '1496785330251427841';
|
||||
-- 机构类型 org_category
|
||||
UPDATE `laws_weilai`.`sys_dict_item` SET `en_name` = 'Depart' WHERE `id` = '1174511244036587521';
|
||||
UPDATE `laws_weilai`.`sys_dict_item` SET `en_name` = 'Company' WHERE `id` = '1174511197735665665';
|
||||
UPDATE `laws_weilai`.`sys_dict_item` SET `en_name` = 'Position' WHERE `id` = '1174509082208395266';
|
||||
|
||||
-- 表字段 英文修改 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';
|
||||
UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'Text Status' WHERE `id` = '0240325189062ca96d262e44ccb5811b';
|
||||
UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'File Name' WHERE `id` = 'a049f9915ab5f6be06d4b56f609b75ca';
|
||||
UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'Sync State' WHERE `id` = 'e560314880e6097deb64594262e09dab';
|
||||
-- 文档拆分表
|
||||
UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'Split Time' WHERE `id` = '29c73fd0b2eeacb9870ab32f2f82eb3d';
|
||||
UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'Text Status' WHERE `id` = '804ff1fcbca3f47bdc9009b34069a9c5';
|
||||
UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'File Name' WHERE `id` = 'c975087db4023e6e4a5b3732f0835e2e';
|
||||
UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'Split Result' WHERE `id` = 'e071def461ccb368dd9ae0ad4f982bc7';
|
||||
-- 文档拆分条款信息表
|
||||
UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'Info Type' WHERE `id` = '09fa6530229280174071eae0514e0f63';
|
||||
UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'Item No.' WHERE `id` = '0a455895498552bc709dff250b3364b1';
|
||||
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';
|
||||
|
||||
+3
-3
@@ -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/静态图片类型的文件。请重新选择文件!");
|
||||
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/静态图片类型的文件。请重新选择文件!");
|
||||
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/静态图片类型的文件。请重新选择文件!");
|
||||
throw new JeroBootException("Only upload pdf/word/excel/csv/ppt/txt/zip/rar/Static image type file. Please re-select the file!");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+6
-4
@@ -100,7 +100,7 @@ public class SysDepartController {
|
||||
@ApiOperation(value = "部门管理-查询树状结构")
|
||||
@RequiresPermissions("sys:depart:list")
|
||||
@RequestMapping(value = "/queryTreeList", method = RequestMethod.GET)
|
||||
public Result<List<SysDepartTreeModel>> queryTreeList() {
|
||||
public Result<List<SysDepartTreeModel>> queryTreeList(@RequestParam(name = "cut", required = false) String cut) {
|
||||
Result<List<SysDepartTreeModel>> result = new Result<>();
|
||||
try {
|
||||
// 从内存中读取
|
||||
@@ -108,7 +108,7 @@ public class SysDepartController {
|
||||
// if (CollectionUtils.isEmpty(list)) {
|
||||
// list = sysDepartService.queryTreeList();
|
||||
// }
|
||||
List<SysDepartTreeModel> list = sysDepartService.queryTreeList();
|
||||
List<SysDepartTreeModel> list = sysDepartService.queryTreeList(cut);
|
||||
result.setResult(list);
|
||||
result.setSuccess(true);
|
||||
} catch (Exception e) {
|
||||
@@ -272,7 +272,9 @@ public class SysDepartController {
|
||||
*/
|
||||
@RequiresPermissions("sys:depart:list")
|
||||
@RequestMapping(value = "/searchBy", method = RequestMethod.GET)
|
||||
public Result<List<SysDepartTreeModel>> searchBy(@RequestParam(name = "keyWord", required = true) String keyWord,@RequestParam(name = "myDeptSearch", required = false) String myDeptSearch) {
|
||||
public Result<List<SysDepartTreeModel>> searchBy(@RequestParam(name = "keyWord", required = true) String keyWord,
|
||||
@RequestParam(name = "myDeptSearch", required = false) String myDeptSearch,
|
||||
@RequestParam(name = "cut", required = false) String cut) {
|
||||
Result<List<SysDepartTreeModel>> result = new Result<List<SysDepartTreeModel>>();
|
||||
//部门查询,myDeptSearch为1时为我的部门查询,登录用户为上级时查只查负责部门下数据
|
||||
LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
@@ -280,7 +282,7 @@ public class SysDepartController {
|
||||
if(oConvertUtils.isNotEmpty(user.getUserIdentity()) && user.getUserIdentity().equals( CommonConstant.USER_IDENTITY_2 )){
|
||||
departIds = user.getDepartIds();
|
||||
}
|
||||
List<SysDepartTreeModel> treeList = this.sysDepartService.searhBy(keyWord,myDeptSearch,departIds);
|
||||
List<SysDepartTreeModel> treeList = this.sysDepartService.searhBy(keyWord,myDeptSearch,departIds,cut);
|
||||
if (treeList == null || treeList.size() == 0) {
|
||||
result.setSuccess(false);
|
||||
result.setMessage("未查询匹配数据!");
|
||||
|
||||
+13
-4
@@ -14,6 +14,7 @@ import com.jero.common.api.vo.Result;
|
||||
import com.jero.common.aspect.annotation.AutoLog;
|
||||
import com.jero.common.aspect.annotation.PermissionData;
|
||||
import com.jero.common.constant.CommonConstant;
|
||||
import com.jero.common.constant.enums.CutEnum;
|
||||
import com.jero.common.system.api.ISysBaseAPI;
|
||||
import com.jero.common.system.query.QueryGenerator;
|
||||
import com.jero.common.system.util.JwtUtil;
|
||||
@@ -1486,7 +1487,7 @@ public class SysUserController {
|
||||
Result<List<SysDepartUserTreeModel>> result = new Result<>();
|
||||
|
||||
//获取当前组织下数据
|
||||
List<SysDepartTreeModel> departTreeModelList = sysDepartService.queryTreeListByDepartId(departId);
|
||||
List<SysDepartTreeModel> departTreeModelList = sysDepartService.queryTreeListByDepartId(departId, sysPushVO.getCut());
|
||||
if (StringUtils.isNotEmpty(departId)) {
|
||||
List<String> departIds = new ArrayList<>();
|
||||
departIds.add(departId);
|
||||
@@ -1537,7 +1538,7 @@ public class SysUserController {
|
||||
@AutoLog(value = "文档库推送部门和人员的模糊搜索")
|
||||
@ApiOperation(value="文档库推送部门和人员的模糊搜索", notes="文档库推送部门和人员的模糊搜索")
|
||||
@GetMapping(value = "/getUserAndDepart")
|
||||
public List<SysUserDepartVO> getUserAndDepart(String name){
|
||||
public List<SysUserDepartVO> getUserAndDepart(String name, String cut){
|
||||
if("%".equals(name)){
|
||||
name = "/%";
|
||||
}
|
||||
@@ -1546,7 +1547,11 @@ public class SysUserController {
|
||||
List<SysUser> sysUserList = sysUserService.list(lambdaQueryWrapper);
|
||||
|
||||
LambdaQueryWrapper<SysDepart> wrapper = new LambdaQueryWrapper<>();
|
||||
wrapper.like(SysDepart::getDepartName,name);
|
||||
if (CutEnum.EN.getValue().equals(cut)) {
|
||||
wrapper.like(SysDepart::getDepartNameEn, name);
|
||||
} else {
|
||||
wrapper.like(SysDepart::getDepartName, name);
|
||||
}
|
||||
List<SysDepart> sysDepartList = sysDepartService.list(wrapper);
|
||||
|
||||
List<SysUserDepartVO> list = new LinkedList<>();
|
||||
@@ -1554,7 +1559,11 @@ public class SysUserController {
|
||||
for (SysDepart sysDepart : sysDepartList) {
|
||||
SysUserDepartVO sysUserDepartVO = new SysUserDepartVO();
|
||||
sysUserDepartVO.setKey(sysDepart.getId());
|
||||
sysUserDepartVO.setTitle(sysDepart.getDepartName());
|
||||
if (CutEnum.EN.getValue().equals(cut)) {
|
||||
sysUserDepartVO.setTitle(sysDepart.getDepartNameEn());
|
||||
} else {
|
||||
sysUserDepartVO.setTitle(sysDepart.getDepartName());
|
||||
}
|
||||
sysUserDepartVO.setFlag(UserOrDepartEnum.USER.getValue());
|
||||
list.add(sysUserDepartVO);
|
||||
}
|
||||
|
||||
+3
-3
@@ -27,9 +27,9 @@ public interface ISysDepartService extends IService<SysDepart>{
|
||||
* 查询所有部门信息,并分节点进行显示
|
||||
* @return
|
||||
*/
|
||||
List<SysDepartTreeModel> queryTreeList();
|
||||
List<SysDepartTreeModel> queryTreeList(String cut);
|
||||
|
||||
List<SysDepartTreeModel> queryTreeListByDepartId(String departId);
|
||||
List<SysDepartTreeModel> queryTreeListByDepartId(String departId, String cut);
|
||||
|
||||
/**
|
||||
* 查询所有部门DepartId信息,并分节点进行显示
|
||||
@@ -62,7 +62,7 @@ public interface ISysDepartService extends IService<SysDepart>{
|
||||
* @param keyWord
|
||||
* @return
|
||||
*/
|
||||
List<SysDepartTreeModel> searhBy(String keyWord,String myDeptSearch,String departIds);
|
||||
List<SysDepartTreeModel> searhBy(String keyWord,String myDeptSearch,String departIds,String cut);
|
||||
|
||||
/**
|
||||
* 根据部门id删除并删除其可能存在的子级部门
|
||||
|
||||
+17
-11
@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.jero.common.constant.CacheConstant;
|
||||
import com.jero.common.constant.CommonConstant;
|
||||
import com.jero.common.constant.FillRuleConstant;
|
||||
import com.jero.common.constant.enums.CutEnum;
|
||||
import com.jero.common.system.vo.SysDepartTreeModel;
|
||||
import com.jero.common.util.FillRuleUtil;
|
||||
import com.jero.common.util.YouBianCodeUtil;
|
||||
@@ -70,7 +71,7 @@ public class SysDepartServiceImpl extends ServiceImpl<SysDepartMapper, SysDepart
|
||||
}
|
||||
}
|
||||
// 调用wrapTreeDataToTreeList方法生成树状数据
|
||||
List<SysDepartTreeModel> listResult = FindsDepartsChildrenUtil.wrapTreeDataToTreeList(listDepts);
|
||||
List<SysDepartTreeModel> listResult = FindsDepartsChildrenUtil.wrapTreeDataToTreeList(listDepts, null);
|
||||
return listResult;
|
||||
}
|
||||
|
||||
@@ -79,20 +80,20 @@ public class SysDepartServiceImpl extends ServiceImpl<SysDepartMapper, SysDepart
|
||||
*/
|
||||
@Cacheable(value = CacheConstant.SYS_DEPARTS_CACHE)
|
||||
@Override
|
||||
public List<SysDepartTreeModel> queryTreeList() {
|
||||
public List<SysDepartTreeModel> queryTreeList(String cut) {
|
||||
LambdaQueryWrapper<SysDepart> query = new LambdaQueryWrapper<SysDepart>();
|
||||
query.eq(SysDepart::getDelFlag, CommonConstant.DEL_FLAG_0.toString());
|
||||
query.last("order by depart_order is null, depart_order asc");
|
||||
List<SysDepart> list = this.list(query);
|
||||
// 调用wrapTreeDataToTreeList方法生成树状数据
|
||||
List<SysDepartTreeModel> listResult = FindsDepartsChildrenUtil.wrapTreeDataToTreeList(list);
|
||||
List<SysDepartTreeModel> listResult = FindsDepartsChildrenUtil.wrapTreeDataToTreeList(list, cut);
|
||||
return listResult;
|
||||
}
|
||||
|
||||
|
||||
// @Cacheable(value = CacheConstant.SYS_DEPARTS_CACHE)
|
||||
@Override
|
||||
public List<SysDepartTreeModel> queryTreeListByDepartId(String departId) {
|
||||
public List<SysDepartTreeModel> queryTreeListByDepartId(String departId, String cut) {
|
||||
LambdaQueryWrapper<SysDepart> query = new LambdaQueryWrapper<SysDepart>();
|
||||
if (StringUtils.isBlank(departId)) {
|
||||
query.isNull(SysDepart::getParentId);
|
||||
@@ -108,7 +109,7 @@ public class SysDepartServiceImpl extends ServiceImpl<SysDepartMapper, SysDepart
|
||||
SysDepart depart = list.get(i);
|
||||
SysDepartTreeModel sysDepartTreeModel = new SysDepartTreeModel();
|
||||
// 将sysDepart转换为sysDepartTreeModel
|
||||
convertSysDepartToSysDepartTreeModel(depart, sysDepartTreeModel);
|
||||
convertSysDepartToSysDepartTreeModel(depart, sysDepartTreeModel, cut);
|
||||
listResult.add(sysDepartTreeModel);
|
||||
}
|
||||
return listResult;
|
||||
@@ -301,7 +302,7 @@ public class SysDepartServiceImpl extends ServiceImpl<SysDepartMapper, SysDepart
|
||||
* </p>
|
||||
*/
|
||||
@Override
|
||||
public List<SysDepartTreeModel> searhBy(String keyWord,String myDeptSearch,String departIds) {
|
||||
public List<SysDepartTreeModel> searhBy(String keyWord,String myDeptSearch,String departIds,String cut) {
|
||||
LambdaQueryWrapper<SysDepart> query = new LambdaQueryWrapper<SysDepart>();
|
||||
List<SysDepartTreeModel> newList = new ArrayList<>();
|
||||
//myDeptSearch不为空时为我的部门搜索,只搜索所负责部门
|
||||
@@ -317,7 +318,12 @@ public class SysDepartServiceImpl extends ServiceImpl<SysDepartMapper, SysDepart
|
||||
}
|
||||
query.eq(SysDepart::getDelFlag, CommonConstant.DEL_FLAG_0.toString());
|
||||
}
|
||||
query.like(SysDepart::getDepartName, keyWord);
|
||||
|
||||
if (CutEnum.EN.getValue().equals(cut)) {
|
||||
query.like(SysDepart::getDepartNameEn, keyWord);
|
||||
} else {
|
||||
query.like(SysDepart::getDepartName, keyWord);
|
||||
}
|
||||
//update-begin--Author:huangzhilin Date:20140417 for:[bugfree号]组织机构搜索回显优化--------------------
|
||||
SysDepartTreeModel model = new SysDepartTreeModel();
|
||||
List<SysDepart> departList = this.list(query);
|
||||
@@ -325,7 +331,7 @@ public class SysDepartServiceImpl extends ServiceImpl<SysDepartMapper, SysDepart
|
||||
for(SysDepart depart : departList) {
|
||||
SysDepartTreeModel sysDepartTreeModel = new SysDepartTreeModel();
|
||||
// 将sysDepart转换为sysDepartTreeModel
|
||||
convertSysDepartToSysDepartTreeModel(depart, sysDepartTreeModel);
|
||||
convertSysDepartToSysDepartTreeModel(depart, sysDepartTreeModel, cut);
|
||||
model = sysDepartTreeModel;
|
||||
model.setChildren(null);
|
||||
//update-end--Author:huangzhilin Date:20140417 for:[bugfree号]组织机构搜索功回显优化----------------------
|
||||
@@ -473,7 +479,7 @@ public class SysDepartServiceImpl extends ServiceImpl<SysDepartMapper, SysDepart
|
||||
query.orderByAsc(SysDepart::getDepartOrder);
|
||||
List<SysDepart> list = this.list(query);
|
||||
// 调用wrapTreeDataToTreeList方法生成树状数据
|
||||
List<SysDepartTreeModel> listResult = FindsDepartsChildrenUtil.wrapTreeDataToTreeList(list);
|
||||
List<SysDepartTreeModel> listResult = FindsDepartsChildrenUtil.wrapTreeDataToTreeList(list, null);
|
||||
List<SysDepartTreeModel> treelist =new ArrayList<>();
|
||||
if(StringUtils.isNotBlank(keyWord)){
|
||||
this.getTreeByKeyWord(keyWord,listResult,treelist);
|
||||
@@ -519,7 +525,7 @@ public class SysDepartServiceImpl extends ServiceImpl<SysDepartMapper, SysDepart
|
||||
}
|
||||
Collections.reverse(list);
|
||||
// 调用wrapTreeDataToTreeList方法生成树状数据
|
||||
return FindsDepartsChildrenUtil.wrapTreeDataToTreeList(list);
|
||||
return FindsDepartsChildrenUtil.wrapTreeDataToTreeList(list, null);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -547,7 +553,7 @@ public class SysDepartServiceImpl extends ServiceImpl<SysDepartMapper, SysDepart
|
||||
SysDepart sysDepartTemp = this.getById(id);
|
||||
listResult.add(sysDepartTemp);
|
||||
});
|
||||
List<SysDepartTreeModel> sysDepartTreeModels = FindsDepartsChildrenUtil.wrapTreeDataToTreeList(listResult);
|
||||
List<SysDepartTreeModel> sysDepartTreeModels = FindsDepartsChildrenUtil.wrapTreeDataToTreeList(listResult, null);
|
||||
realResult.addAll(sysDepartTreeModels);
|
||||
}
|
||||
|
||||
|
||||
+11
-8
@@ -1,12 +1,10 @@
|
||||
package com.jero.modules.system.util;
|
||||
|
||||
import com.jero.common.constant.CommonConstant;
|
||||
import com.jero.common.constant.enums.CutEnum;
|
||||
import com.jero.common.system.vo.SysDepartTreeModel;
|
||||
import com.jero.common.util.RedisUtil;
|
||||
import com.jero.common.util.oConvertUtils;
|
||||
import com.jero.modules.system.entity.SysDepart;
|
||||
import com.jero.modules.system.model.DepartIdModel;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
@@ -32,7 +30,7 @@ public class FindsDepartsChildrenUtil {
|
||||
* queryTreeList的子方法 ====1=====
|
||||
* 该方法是s将SysDepart类型的list集合转换成SysDepartTreeModel类型的集合
|
||||
*/
|
||||
public static List<SysDepartTreeModel> wrapTreeDataToTreeList(List<SysDepart> recordList) {
|
||||
public static List<SysDepartTreeModel> wrapTreeDataToTreeList(List<SysDepart> recordList, String cut) {
|
||||
// 在该方法每请求一次,都要对全局list集合进行一次清理
|
||||
//idList.clear();
|
||||
List<DepartIdModel> idList = new ArrayList<DepartIdModel>();
|
||||
@@ -41,7 +39,7 @@ public class FindsDepartsChildrenUtil {
|
||||
SysDepart depart = recordList.get(i);
|
||||
SysDepartTreeModel sysDepartTreeModel = new SysDepartTreeModel();
|
||||
// 将sysDepart转换为sysDepartTreeModel
|
||||
convertSysDepartToSysDepartTreeModel(depart, sysDepartTreeModel);
|
||||
convertSysDepartToSysDepartTreeModel(depart, sysDepartTreeModel, cut);
|
||||
records.add(sysDepartTreeModel);
|
||||
}
|
||||
List<SysDepartTreeModel> tree = findChildren(records, idList);
|
||||
@@ -63,7 +61,7 @@ public class FindsDepartsChildrenUtil {
|
||||
SysDepart depart = recordList.get(i);
|
||||
SysDepartTreeModel sysDepartTreeModel = new SysDepartTreeModel();
|
||||
// 将sysDepart转换为sysDepartTreeModel
|
||||
convertSysDepartToSysDepartTreeModel(depart, sysDepartTreeModel);
|
||||
convertSysDepartToSysDepartTreeModel(depart, sysDepartTreeModel, null);
|
||||
records.add(sysDepartTreeModel);
|
||||
}
|
||||
findChildren(records, idList);
|
||||
@@ -144,10 +142,14 @@ public class FindsDepartsChildrenUtil {
|
||||
* @param sysDepartTreeModel 转换的结果对象
|
||||
* @return
|
||||
*/
|
||||
public static void convertSysDepartToSysDepartTreeModel(SysDepart sysDepart, SysDepartTreeModel sysDepartTreeModel){
|
||||
public static void convertSysDepartToSysDepartTreeModel(SysDepart sysDepart, SysDepartTreeModel sysDepartTreeModel, String cut){
|
||||
sysDepartTreeModel.setKey( sysDepart.getId());
|
||||
sysDepartTreeModel.setValue( sysDepart.getId());
|
||||
sysDepartTreeModel.setTitle(sysDepart.getDepartName());
|
||||
if (CutEnum.EN.getValue().equals(cut)) { // 部门名称中英文处理
|
||||
sysDepartTreeModel.setTitle(sysDepart.getDepartNameEn());
|
||||
} else {
|
||||
sysDepartTreeModel.setTitle(sysDepart.getDepartName());
|
||||
}
|
||||
sysDepartTreeModel.setId(sysDepart.getId());
|
||||
sysDepartTreeModel.setParentId(sysDepart.getParentId());
|
||||
sysDepartTreeModel.setDepartName(sysDepart.getDepartName());
|
||||
@@ -169,4 +171,5 @@ public class FindsDepartsChildrenUtil {
|
||||
sysDepartTreeModel.setUpdateBy(sysDepart.getUpdateBy());
|
||||
sysDepartTreeModel.setUpdateTime(sysDepart.getUpdateTime());
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+3
-2
@@ -64,8 +64,9 @@ public class SarFileCompareInfoController extends JeroController<SarFileCompareI
|
||||
@RequestParam(name = "cut", defaultValue = "cn") String cut, HttpServletRequest req) {
|
||||
QueryWrapper<SarFileCompareInfo> queryWrapper = QueryGenerator.initQueryWrapper(sarFileCompareInfo, req.getParameterMap());
|
||||
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
queryWrapper.eq("create_by", sysUser.getUsername()).or().eq("release_state", ReleaseConditionEnum.DRAFT.getValue());
|
||||
Page<SarFileCompareInfo> page = new Page<SarFileCompareInfo>(pageNo, pageSize);
|
||||
queryWrapper.eq("create_by", sysUser.getUsername()).or().eq("release_state", ReleaseConditionEnum.PUBLISHED.getValue());
|
||||
queryWrapper.orderByAsc("create_by");
|
||||
Page<SarFileCompareInfo> page = new Page<>(pageNo, pageSize);
|
||||
IPage<SarFileCompareInfo> pageList = sarFileCompareInfoService.page(page, queryWrapper);
|
||||
for (SarFileCompareInfo info : pageList.getRecords()) {
|
||||
info.setReleaseStateTitle(ReleaseConditionEnum.getTextByValue(info.getReleaseState(), cut));
|
||||
|
||||
+16
-2
@@ -1,5 +1,6 @@
|
||||
package com.jero.modules.compare.service.impl;
|
||||
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.jero.modules.compare.entity.*;
|
||||
import com.jero.modules.compare.mapper.SarFileCompareInfoMapper;
|
||||
@@ -9,6 +10,7 @@ import com.jero.modules.compare.service.ISarFileCompareMenuService;
|
||||
import com.jero.modules.compare.utils.CompHanLPUtils;
|
||||
import com.jero.modules.compare.utils.CompareConst;
|
||||
import com.jero.modules.docTranslation.enums.ReleaseConditionEnum;
|
||||
import com.jero.modules.document.service.IBussDocumentLibraryEOService;
|
||||
import com.jero.modules.split.entity.SarFileSplitInfoEO;
|
||||
import com.jero.modules.split.entity.SarFileSplitItemsEO;
|
||||
import com.jero.modules.split.entity.SarFileSplitMenuEO;
|
||||
@@ -44,6 +46,9 @@ public class SarFileCompareInfoServiceImpl extends ServiceImpl<SarFileCompareInf
|
||||
@Autowired
|
||||
private ISarFileCompareMenuService sarFileCompareMenuService;
|
||||
|
||||
@Autowired
|
||||
private IBussDocumentLibraryEOService bussDocumentLibraryEOService;
|
||||
|
||||
|
||||
/**
|
||||
* 保存
|
||||
@@ -229,14 +234,23 @@ public class SarFileCompareInfoServiceImpl extends ServiceImpl<SarFileCompareInf
|
||||
String id = UUID.randomUUID().toString();
|
||||
sarFileCompareInfo.setId(id);
|
||||
sarFileCompareInfo.setFileIdLeft(leftInfo.getId());
|
||||
sarFileCompareInfo.setFileKeyLeft(leftInfo.getFileId());
|
||||
// 处理文档库id字段 根据编号和标题查询
|
||||
List<Map<String, Object>> bussDocumentLibraryEOList = bussDocumentLibraryEOService.getListBySerialNumber(leftInfo.getSerialNumber());
|
||||
if (CollectionUtil.isNotEmpty(bussDocumentLibraryEOList)) {
|
||||
sarFileCompareInfo.setFileKeyLeft(bussDocumentLibraryEOList.get(0).get("id").toString());
|
||||
}
|
||||
sarFileCompareInfo.setFileNameLeft(leftInfo.getFileName());
|
||||
sarFileCompareInfo.setTitleLeft(leftInfo.getTitle());
|
||||
sarFileCompareInfo.setFileTypeLeft(leftInfo.getFileType());
|
||||
sarFileCompareInfo.setSerialNumberLeft(leftInfo.getSerialNumber());
|
||||
|
||||
sarFileCompareInfo.setFileIdRight(rightInfo.getId());
|
||||
sarFileCompareInfo.setFileKeyRight(rightInfo.getFileId());
|
||||
// 处理文档库id字段 根据编号和标题查询
|
||||
List<Map<String, Object>> bussDocumentLibraryEOList1 = bussDocumentLibraryEOService.getListBySerialNumber(rightInfo.getSerialNumber());
|
||||
if (CollectionUtil.isNotEmpty(bussDocumentLibraryEOList1)) {
|
||||
sarFileCompareInfo.setFileKeyRight(bussDocumentLibraryEOList1.get(0).get("id").toString());
|
||||
}
|
||||
sarFileCompareInfo.setFileKeyRight(rightInfo.getConnectId());
|
||||
sarFileCompareInfo.setFileNameRight(rightInfo.getFileName());
|
||||
sarFileCompareInfo.setFileTypeRight(rightInfo.getFileType());
|
||||
sarFileCompareInfo.setTitleRight(rightInfo.getTitle());
|
||||
|
||||
+1
-1
@@ -193,7 +193,7 @@ public class SarFileCompareItemCommentServiceImpl extends ServiceImpl<SarFileCom
|
||||
// 创建头部
|
||||
String header = "";
|
||||
if (CutEnum.CN.getValue().equals(cut)) {
|
||||
header = "条款号,条款名称,条款内容,条款号,条款名称,条款内容,评论";
|
||||
header = "条款号,条款名称,条款内容,条款号,条款名称,条款内容,评论";
|
||||
} else {
|
||||
header = "Number,Title,Content,Number,Title,Content,Comment";
|
||||
}
|
||||
|
||||
+10
-10
@@ -4575,7 +4575,7 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
||||
} else {
|
||||
//编号
|
||||
map1.put("db_field_name", "serial_number");//字段
|
||||
map1.put("db_field_txt", "Serial number");//字段中文名
|
||||
map1.put("db_field_txt", "Number");//字段中文名
|
||||
list.add(map1);
|
||||
//标题
|
||||
map2.put("db_field_name", "title_en");//字段
|
||||
@@ -4583,15 +4583,15 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
||||
list.add(map2);
|
||||
//状态
|
||||
map3.put("db_field_name", "state");//字段
|
||||
map3.put("db_field_txt", "State");//字段中文名
|
||||
map3.put("db_field_txt", "Status");//字段中文名
|
||||
list.add(map3);
|
||||
//文件名称
|
||||
map4.put("db_field_name", "file_name");//字段
|
||||
map4.put("db_field_txt", "File name");//字段中文名
|
||||
map4.put("db_field_txt", "File Name");//字段中文名
|
||||
list.add(map4);
|
||||
//文件信息
|
||||
map5.put("db_field_name", "text_info");//字段
|
||||
map5.put("db_field_txt", "Text info");//字段中文名
|
||||
map5.put("db_field_txt", "Text Info");//字段中文名
|
||||
list.add(map5);
|
||||
}
|
||||
} else if ("condition".equals(flag)) {
|
||||
@@ -4611,7 +4611,7 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
||||
} else {
|
||||
//编号
|
||||
map1.put("db_field_name", "serial_number");//字段
|
||||
map1.put("db_field_txt", "Serial number");//字段中文名
|
||||
map1.put("db_field_txt", "Number");//字段中文名
|
||||
map1.put("dict_field", "");//数据字典
|
||||
map1.put("field_show_type", "1");
|
||||
list.add(map1);
|
||||
@@ -4662,7 +4662,7 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
||||
} else {
|
||||
//编号
|
||||
map1.put("db_field_name", "serial_number");//字段
|
||||
map1.put("db_field_txt", "Serial number");//字段中文名
|
||||
map1.put("db_field_txt", "Number");//字段中文名
|
||||
list.add(map1);
|
||||
//标题
|
||||
map2.put("db_field_name", "title_en");//字段
|
||||
@@ -4670,11 +4670,11 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
||||
list.add(map2);
|
||||
//文件名称
|
||||
map3.put("db_field_name", "file_name");//字段
|
||||
map3.put("db_field_txt", "File name");//字段中文名
|
||||
map3.put("db_field_txt", "File Name");//字段中文名
|
||||
list.add(map3);
|
||||
//文件信息
|
||||
map4.put("db_field_name", "text_info");//字段
|
||||
map4.put("db_field_txt", "Text info");//字段中文名
|
||||
map4.put("db_field_txt", "Text Info");//字段中文名
|
||||
list.add(map4);
|
||||
}
|
||||
} else if ("condition".equals(flag)) {
|
||||
@@ -4694,13 +4694,13 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
|
||||
} else {
|
||||
//编号
|
||||
map1.put("db_field_name", "serial_number");//字段
|
||||
map1.put("db_field_txt", "serial number");//字段中文名
|
||||
map1.put("db_field_txt", "Number");//字段中文名
|
||||
map1.put("dict_field", "");//数据字典
|
||||
map1.put("field_show_type", "1");
|
||||
list.add(map1);
|
||||
//标题
|
||||
map2.put("db_field_name", "title");//字段
|
||||
map2.put("db_field_txt", "title");//字段中文名
|
||||
map2.put("db_field_txt", "Title");//字段中文名
|
||||
map2.put("dict_field", "");//数据字典
|
||||
map2.put("field_show_type", "1");
|
||||
list.add(map2);
|
||||
|
||||
+4
-5
@@ -9,12 +9,10 @@ import com.jero.common.constant.enums.CutEnum;
|
||||
import com.jero.common.system.base.controller.JeroController;
|
||||
import com.jero.common.system.vo.LoginUser;
|
||||
import com.jero.common.util.oss.CosBootUtil;
|
||||
import com.jero.generater.modules.online.auth.entity.OnlAuthData;
|
||||
import com.jero.modules.extRepo.entity.ExtRepoData;
|
||||
import com.jero.modules.extRepo.entity.ExtRepoDataPage;
|
||||
import com.jero.modules.extRepo.service.IExtRepoDataService;
|
||||
import com.jero.modules.extRepo.service.IExtRepoFolderService;
|
||||
import com.jero.modules.split.entity.SarFileSplitInfoEO;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
@@ -74,13 +72,13 @@ public class ExtRepoDataController extends JeroController<ExtRepoData, IExtRepoD
|
||||
// 文件名称模糊查询
|
||||
String fileName = req.getParameter("fileName");
|
||||
if (StringUtils.isNotBlank(fileName)) {
|
||||
fileName = fileName.replace("%","\\%");
|
||||
fileName = fileName.replace("%", "\\%");
|
||||
queryWrapper.like(ExtRepoData::getFileName, fileName);
|
||||
}
|
||||
// 上传人模糊查询
|
||||
String createBy = req.getParameter("createBy");
|
||||
if (StringUtils.isNotBlank(createBy)) {
|
||||
createBy = createBy.replace("%","\\%");
|
||||
createBy = createBy.replace("%", "\\%");
|
||||
queryWrapper.like(ExtRepoData::getCreateBy, createBy);
|
||||
}
|
||||
// 更新时间查询
|
||||
@@ -187,7 +185,7 @@ public class ExtRepoDataController extends JeroController<ExtRepoData, IExtRepoD
|
||||
ExtRepoData erd = extRepoDataService.queryById(id);
|
||||
if (null != erd) {
|
||||
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
if (sysUser.getUsername().equals(erd.getCreateBy())) {
|
||||
if (extRepoFolderService.isManager() || sysUser.getUsername().equals(erd.getCreateBy())) {
|
||||
extRepoDataService.deleteById(id);
|
||||
CosBootUtil.delete(erd.getFileKey());
|
||||
if (CutEnum.CN.getValue().equals(cut)) {
|
||||
@@ -212,6 +210,7 @@ public class ExtRepoDataController extends JeroController<ExtRepoData, IExtRepoD
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 批量删除
|
||||
*
|
||||
|
||||
+37
-12
@@ -1,10 +1,11 @@
|
||||
package com.jero.modules.extRepo.controller;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.jero.common.api.vo.Result;
|
||||
import com.jero.common.aspect.annotation.AutoLog;
|
||||
import com.jero.common.constant.enums.CutEnum;
|
||||
import com.jero.common.system.base.controller.JeroController;
|
||||
import com.jero.modules.extRepo.entity.ERFTreeData;
|
||||
import com.jero.modules.extRepo.entity.ERFTreeDataVO;
|
||||
import com.jero.modules.extRepo.entity.ExtRepoData;
|
||||
import com.jero.modules.extRepo.entity.ExtRepoFolder;
|
||||
import com.jero.modules.extRepo.service.IExtRepoDataService;
|
||||
@@ -44,9 +45,11 @@ public class ExtRepoFolderController extends JeroController<ExtRepoFolder, IExtR
|
||||
@AutoLog(value = "对外报告文件夹表-列表查询")
|
||||
@ApiOperation(value = "对外报告文件夹表-列表查询", notes = "对外报告文件夹表-列表查询")
|
||||
@GetMapping(value = "/list")
|
||||
public Result<List<ERFTreeData>> queryList() {
|
||||
List<ERFTreeData> list = extRepoFolderService.queryTreeList();
|
||||
return Result.OK(list);
|
||||
public Result<ERFTreeDataVO> queryList() {
|
||||
ERFTreeDataVO dataVO = new ERFTreeDataVO();
|
||||
dataVO.setManager(extRepoFolderService.isManager());
|
||||
dataVO.setList(extRepoFolderService.queryTreeList());
|
||||
return Result.OK(dataVO);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -61,6 +64,11 @@ public class ExtRepoFolderController extends JeroController<ExtRepoFolder, IExtR
|
||||
public Result<?> add(@Validated @RequestBody ExtRepoFolder extRepoFolder) {
|
||||
Result<ExtRepoFolder> result = new Result();
|
||||
if (extRepoFolderService.haveManageAuth(extRepoFolder.getSupFolder())) {
|
||||
if (!extRepoFolder.isAddSub()) {
|
||||
//增加同级文件夹
|
||||
ExtRepoFolder folder = extRepoFolderService.queryById(extRepoFolder.getSupFolder());
|
||||
extRepoFolder.setSupFolder(folder.getSupFolder());
|
||||
}
|
||||
extRepoFolderService.add(extRepoFolder);
|
||||
if (CutEnum.CN.getValue().equals(extRepoFolder.getCut())) {
|
||||
result.success("添加成功!");
|
||||
@@ -120,15 +128,25 @@ public class ExtRepoFolderController extends JeroController<ExtRepoFolder, IExtR
|
||||
if (extRepoFolderService.haveManageAuth(id)) {
|
||||
List<ExtRepoFolder> resList = extRepoFolderService.getListBySupFolder(id);
|
||||
if (resList.isEmpty()) {
|
||||
List<ExtRepoData> erdList = extRepoDataService.queryByFolder(id);
|
||||
for (ExtRepoData erd : erdList) {
|
||||
extRepoDataService.deleteById(erd.getId());
|
||||
}
|
||||
extRepoFolderService.deleteById(id);
|
||||
if (CutEnum.CN.getValue().equals(cut)) {
|
||||
result.success("删除成功!");
|
||||
ExtRepoFolder erf = extRepoFolderService.queryById(id);
|
||||
int count = getRootFolderCount();
|
||||
if (erf.getSupFolder().equals("root") && count <= 1) {
|
||||
if (CutEnum.CN.getValue().equals(cut)) {
|
||||
result.error500("此文件夹不可删除!");
|
||||
} else {
|
||||
result.error500("This folder cannot be deleted!");
|
||||
}
|
||||
} else {
|
||||
result.success("Data deletion successfully!");
|
||||
List<ExtRepoData> erdList = extRepoDataService.queryByFolder(id);
|
||||
for (ExtRepoData erd : erdList) {
|
||||
extRepoDataService.deleteById(erd.getId());
|
||||
}
|
||||
extRepoFolderService.deleteById(id);
|
||||
if (CutEnum.CN.getValue().equals(cut)) {
|
||||
result.success("删除成功!");
|
||||
} else {
|
||||
result.success("Data deletion successfully!");
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if (CutEnum.CN.getValue().equals(cut)) {
|
||||
@@ -147,6 +165,13 @@ public class ExtRepoFolderController extends JeroController<ExtRepoFolder, IExtR
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
private int getRootFolderCount() {
|
||||
LambdaQueryWrapper<ExtRepoFolder> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(ExtRepoFolder::getSupFolder, "root");
|
||||
return extRepoFolderService.count(queryWrapper);
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
|
||||
-15
@@ -36,13 +36,6 @@ public class ERFTreeData implements Comparable<ERFTreeData> {
|
||||
*/
|
||||
private int orderId;
|
||||
|
||||
|
||||
/**
|
||||
* 是否显示
|
||||
*/
|
||||
private boolean display = false;
|
||||
|
||||
|
||||
/**
|
||||
* 查看权限人员
|
||||
*/
|
||||
@@ -119,14 +112,6 @@ public class ERFTreeData implements Comparable<ERFTreeData> {
|
||||
this.orderId = orderId;
|
||||
}
|
||||
|
||||
public boolean isDisplay() {
|
||||
return display;
|
||||
}
|
||||
|
||||
public void setDisplay(boolean display) {
|
||||
this.display = display;
|
||||
}
|
||||
|
||||
public String getFolderName() {
|
||||
return folderName;
|
||||
}
|
||||
|
||||
+27
@@ -0,0 +1,27 @@
|
||||
package com.jero.modules.extRepo.entity;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class ERFTreeDataVO {
|
||||
boolean isManager;
|
||||
List<ERFTreeData> list;
|
||||
|
||||
public ERFTreeDataVO() {
|
||||
}
|
||||
|
||||
public boolean isManager() {
|
||||
return isManager;
|
||||
}
|
||||
|
||||
public void setManager(boolean manager) {
|
||||
isManager = manager;
|
||||
}
|
||||
|
||||
public List<ERFTreeData> getList() {
|
||||
return list;
|
||||
}
|
||||
|
||||
public void setList(List<ERFTreeData> list) {
|
||||
this.list = list;
|
||||
}
|
||||
}
|
||||
+3
@@ -96,4 +96,7 @@ public class ExtRepoFolder implements Serializable {
|
||||
|
||||
@TableField(exist = false)
|
||||
private String cut;
|
||||
|
||||
@TableField(exist = false)
|
||||
private boolean addSub;
|
||||
}
|
||||
|
||||
+33
-72
@@ -22,10 +22,7 @@ import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* @Description: 对外报告文件夹表
|
||||
* @Author: jero-boot
|
||||
* @Date: 2022-07-25
|
||||
* @Version: V1.0
|
||||
* 对外报告文件夹表
|
||||
*/
|
||||
@Service
|
||||
public class ExtRepoFolderServiceImpl extends ServiceImpl<ExtRepoFolderMapper, ExtRepoFolder> implements IExtRepoFolderService {
|
||||
@@ -38,9 +35,6 @@ public class ExtRepoFolderServiceImpl extends ServiceImpl<ExtRepoFolderMapper, E
|
||||
|
||||
/**
|
||||
* 保存
|
||||
*
|
||||
* @param extRepoFolder
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void add(ExtRepoFolder extRepoFolder) {
|
||||
@@ -52,9 +46,6 @@ public class ExtRepoFolderServiceImpl extends ServiceImpl<ExtRepoFolderMapper, E
|
||||
Date now = new Date();
|
||||
extRepoFolder.setCreateTime(now);
|
||||
extRepoFolder.setUpdateTime(now);
|
||||
// LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
// extRepoFolder.setAuthManageName(extRepoFolder.getAuthManageName() + "," + sysUser.getUsername());
|
||||
// extRepoFolder.setAuthManageIds(extRepoFolder.getAuthManageIds() + "," + sysUser.getId());
|
||||
extRepoFolder.setAuthManageIdsName(extRepoFolder.getAuthManageIdsName());
|
||||
extRepoFolder.setAuthManageIds(extRepoFolder.getAuthManageIds());
|
||||
save(extRepoFolder);
|
||||
@@ -67,10 +58,8 @@ public class ExtRepoFolderServiceImpl extends ServiceImpl<ExtRepoFolderMapper, E
|
||||
|
||||
/**
|
||||
* 同级文件夹,修改顺序号
|
||||
*
|
||||
* @param extRepoFolder
|
||||
*/
|
||||
private void editOrderId(ExtRepoFolder extRepoFolder) throws Exception {
|
||||
private void editOrderId(ExtRepoFolder extRepoFolder) {
|
||||
List<ExtRepoFolder> list = getListBySupFolder(extRepoFolder.getSupFolder());
|
||||
for (ExtRepoFolder erf : list) {
|
||||
if (erf.getOrderId() >= extRepoFolder.getOrderId() && !erf.getId().equals(extRepoFolder.getId())) {
|
||||
@@ -90,9 +79,6 @@ public class ExtRepoFolderServiceImpl extends ServiceImpl<ExtRepoFolderMapper, E
|
||||
|
||||
/**
|
||||
* 更新
|
||||
*
|
||||
* @param extRepoFolder
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void editById(ExtRepoFolder extRepoFolder) {
|
||||
@@ -113,7 +99,7 @@ public class ExtRepoFolderServiceImpl extends ServiceImpl<ExtRepoFolderMapper, E
|
||||
/**
|
||||
* 修改所有关联文件夹的权限
|
||||
*/
|
||||
private void editAuth(ExtRepoFolder erf_orig, ExtRepoFolder erf_new) throws Exception {
|
||||
private void editAuth(ExtRepoFolder erf_orig, ExtRepoFolder erf_new) {
|
||||
//管理权限
|
||||
Map<String, String> authManage_orig = getAuthMap(erf_orig.getAuthManageIdsName(), erf_orig.getAuthManageIds());
|
||||
Map<String, String> authManage_new = getAuthMap(erf_new.getAuthManageIdsName(), erf_new.getAuthManageIds());
|
||||
@@ -132,20 +118,20 @@ public class ExtRepoFolderServiceImpl extends ServiceImpl<ExtRepoFolderMapper, E
|
||||
|
||||
List<ExtRepoFolder> allSubFolder = getAllSubFolder(erf_orig.getId());
|
||||
//存储变化的对象
|
||||
List<ExtRepoFolder> updateFolder = new ArrayList<ExtRepoFolder>();
|
||||
List<ExtRepoFolder> updateFolder = new ArrayList<>();
|
||||
for (ExtRepoFolder erf : allSubFolder) {
|
||||
boolean isChange = false;
|
||||
Map<String, String> authManage_erf = getAuthMap(erf.getAuthManageIdsName(), erf.getAuthManageIds());
|
||||
Map<String, String> authView_erf = getAuthMap(erf.getAuthViewIdsName(), erf.getAuthViewIds());
|
||||
for (String add : addManageRole.keySet()) {
|
||||
if (!authManage_erf.keySet().contains(add)) {
|
||||
if (!authManage_erf.containsKey(add)) {
|
||||
authManage_erf.put(add, addManageRole.get(add));
|
||||
isChange = true;
|
||||
}
|
||||
}
|
||||
for (String del : delManageRole.keySet()) {
|
||||
//如果是创建人 不能删除管理权限
|
||||
if (authManage_erf.keySet().contains(del)) {
|
||||
if (authManage_erf.containsKey(del)) {
|
||||
if (!del.equals(erf_orig.getCreateBy())) {
|
||||
authManage_erf.remove(del);
|
||||
isChange = true;
|
||||
@@ -153,13 +139,13 @@ public class ExtRepoFolderServiceImpl extends ServiceImpl<ExtRepoFolderMapper, E
|
||||
}
|
||||
}
|
||||
for (String add : addViewRole.keySet()) {
|
||||
if (!authView_erf.keySet().contains(add)) {
|
||||
if (!authView_erf.containsKey(add)) {
|
||||
authView_erf.put(add, addViewRole.get(add));
|
||||
isChange = true;
|
||||
}
|
||||
}
|
||||
for (String del : delViewRole.keySet()) {
|
||||
if (authView_erf.keySet().contains(del)) {
|
||||
if (authView_erf.containsKey(del)) {
|
||||
authView_erf.remove(del);
|
||||
isChange = true;
|
||||
}
|
||||
@@ -179,15 +165,11 @@ public class ExtRepoFolderServiceImpl extends ServiceImpl<ExtRepoFolderMapper, E
|
||||
|
||||
/**
|
||||
* 得到列表新增元素集合
|
||||
*
|
||||
* @param mapA
|
||||
* @param mapB
|
||||
* @return
|
||||
*/
|
||||
private Map<String, String> getDefMap(Map<String, String> mapA, Map<String, String> mapB) {
|
||||
Map<String, String> res = new HashMap<String, String>();
|
||||
Map<String, String> res = new HashMap<>();
|
||||
for (String s : mapA.keySet()) {
|
||||
if (StringUtils.isNotBlank(s) && !mapB.keySet().contains(s)) {
|
||||
if (StringUtils.isNotBlank(s) && !mapB.containsKey(s)) {
|
||||
res.put(s, mapA.get(s));
|
||||
}
|
||||
}
|
||||
@@ -196,7 +178,7 @@ public class ExtRepoFolderServiceImpl extends ServiceImpl<ExtRepoFolderMapper, E
|
||||
|
||||
private List<ExtRepoFolder> getAllSubFolder(String folderId) {
|
||||
List<ExtRepoFolder> resList = getListBySupFolder(folderId);
|
||||
List<ExtRepoFolder> subList = new ArrayList<ExtRepoFolder>();
|
||||
List<ExtRepoFolder> subList = new ArrayList<>();
|
||||
for (ExtRepoFolder erf : resList) {
|
||||
subList.addAll(getAllSubFolder(erf.getId()));
|
||||
}
|
||||
@@ -206,9 +188,6 @@ public class ExtRepoFolderServiceImpl extends ServiceImpl<ExtRepoFolderMapper, E
|
||||
|
||||
/**
|
||||
* 通过id删除
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public void deleteById(String id) {
|
||||
@@ -222,9 +201,6 @@ public class ExtRepoFolderServiceImpl extends ServiceImpl<ExtRepoFolderMapper, E
|
||||
|
||||
/**
|
||||
* 通过id查询
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public ExtRepoFolder queryById(String id) {
|
||||
@@ -233,8 +209,6 @@ public class ExtRepoFolderServiceImpl extends ServiceImpl<ExtRepoFolderMapper, E
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<ExtRepoFolder> queryList() {
|
||||
@@ -243,14 +217,12 @@ public class ExtRepoFolderServiceImpl extends ServiceImpl<ExtRepoFolderMapper, E
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<ERFTreeData> queryTreeList() {
|
||||
try {
|
||||
List<ExtRepoFolder> list = queryList();
|
||||
List<ERFTreeData> res = getSubFolder(superFolder, list, 1);
|
||||
List<ERFTreeData> res = getSubFolder(superFolder, list, 1, true);
|
||||
Collections.sort(res);
|
||||
return res;
|
||||
} catch (Exception ex) {
|
||||
@@ -262,34 +234,31 @@ public class ExtRepoFolderServiceImpl extends ServiceImpl<ExtRepoFolderMapper, E
|
||||
|
||||
/**
|
||||
* 查找子文件夹,生成树结构
|
||||
*
|
||||
* @param supId
|
||||
* @param list
|
||||
* @param level 前端需要知道当前文件夹在哪一层
|
||||
* @return
|
||||
*/
|
||||
private List<ERFTreeData> getSubFolder(String supId, List<ExtRepoFolder> list, int level) throws Exception {
|
||||
List<ERFTreeData> resList = new ArrayList<ERFTreeData>();
|
||||
private List<ERFTreeData> getSubFolder(String supId, List<ExtRepoFolder> list, int level, boolean needAuth) {
|
||||
List<ERFTreeData> resList = new ArrayList<>();
|
||||
for (ExtRepoFolder erf : list) {
|
||||
if (supId.equals(erf.getSupFolder())) {
|
||||
ERFTreeData date = new ERFTreeData(erf.getFolderName(), erf.getId(), level, erf.getOrderId());
|
||||
//检查有没有权限查看
|
||||
date.setDisplay(haveViewAuth(erf.getSupFolder()));
|
||||
int childLevel = date.getLevel() + 1;
|
||||
date.setAuthManageIdsName(erf.getAuthManageIdsName());
|
||||
date.setAuthManageIds(erf.getAuthManageIds());
|
||||
date.setAuthViewIdsName(erf.getAuthViewIdsName());
|
||||
date.setAuthViewIds(erf.getAuthViewIds());
|
||||
date.setChildren(getSubFolder(erf.getId(), list, childLevel));
|
||||
date.sortChildren();
|
||||
resList.add(date);
|
||||
int childLevel = level + 1;
|
||||
if (!needAuth || haveViewAuth(erf.getId())) {
|
||||
ERFTreeData date = new ERFTreeData(erf.getFolderName(), erf.getId(), level, erf.getOrderId());
|
||||
date.setAuthManageIdsName(erf.getAuthManageIdsName());
|
||||
date.setAuthManageIds(erf.getAuthManageIds());
|
||||
date.setAuthViewIdsName(erf.getAuthViewIdsName());
|
||||
date.setAuthViewIds(erf.getAuthViewIds());
|
||||
date.setChildren(getSubFolder(erf.getId(), list, childLevel, false));
|
||||
date.sortChildren();
|
||||
resList.add(date);
|
||||
} else {
|
||||
resList.addAll(getSubFolder(erf.getId(), list, childLevel, true));
|
||||
}
|
||||
}
|
||||
}
|
||||
return resList;
|
||||
}
|
||||
|
||||
private List<String> getStringList(String listStr) {
|
||||
List<String> res = new ArrayList<String>();
|
||||
List<String> res = new ArrayList<>();
|
||||
if (null != listStr) {
|
||||
res = Arrays.asList(listStr.split(","));
|
||||
}
|
||||
@@ -297,7 +266,7 @@ public class ExtRepoFolderServiceImpl extends ServiceImpl<ExtRepoFolderMapper, E
|
||||
}
|
||||
|
||||
private Map<String, String> getAuthMap(String strKey, String strValue) {
|
||||
Map<String, String> resMap = new HashMap<String, String>();
|
||||
Map<String, String> resMap = new HashMap<>();
|
||||
List<String> keyList = getStringList(strKey);
|
||||
List<String> valueList = getStringList(strValue);
|
||||
for (int i = 0; i < keyList.size(); i++) {
|
||||
@@ -308,19 +277,17 @@ public class ExtRepoFolderServiceImpl extends ServiceImpl<ExtRepoFolderMapper, E
|
||||
|
||||
/**
|
||||
* 判断是否是文件夹管理员角色
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public boolean isManager() {
|
||||
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal(); // 获取当前登录用户
|
||||
// 查询当前登录用户角色
|
||||
List<SysUserRole> userRoles = sysUserRoleService.list(new QueryWrapper<SysUserRole>().lambda().eq(SysUserRole::getUserId, loginUser.getId())); // 查询用户所有角色
|
||||
List<String> userRoleIds = new ArrayList<>(); // 用户管理员/对外报告管理员
|
||||
List<String> userRoleIds; // 用户管理员/对外报告管理员
|
||||
if (CollectionUtil.isNotEmpty(userRoles)) {
|
||||
List<String> roleIdList = ExtRepoMamagerRoleIdEnum.getIdList();
|
||||
List<String> userRoleIdList = userRoles.stream().map(SysUserRole::getRoleId).collect(Collectors.toList());
|
||||
userRoleIds = roleIdList.stream().filter(e -> userRoleIdList.contains(e)).collect(Collectors.toList());
|
||||
userRoleIds = roleIdList.stream().filter(userRoleIdList::contains).collect(Collectors.toList());
|
||||
return !CollectionUtil.isEmpty(userRoleIds);
|
||||
}
|
||||
return false;
|
||||
@@ -328,13 +295,10 @@ public class ExtRepoFolderServiceImpl extends ServiceImpl<ExtRepoFolderMapper, E
|
||||
|
||||
/**
|
||||
* 是否有管理权限
|
||||
*
|
||||
* @param folderId
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public boolean haveManageAuth(String folderId) {
|
||||
boolean res = false;
|
||||
boolean res;
|
||||
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
res = isManager();
|
||||
ExtRepoFolder erf = queryById(folderId);
|
||||
@@ -346,12 +310,9 @@ public class ExtRepoFolderServiceImpl extends ServiceImpl<ExtRepoFolderMapper, E
|
||||
|
||||
/**
|
||||
* 是否有查看权限
|
||||
*
|
||||
* @param folderId
|
||||
* @return
|
||||
*/
|
||||
public boolean haveViewAuth(String folderId) {
|
||||
boolean res = false;
|
||||
boolean res;
|
||||
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
|
||||
res = isManager();
|
||||
ExtRepoFolder erf = queryById(folderId);
|
||||
|
||||
+126
-63
@@ -1,15 +1,29 @@
|
||||
package com.jero.modules.feishu.service.impl;
|
||||
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import com.alibaba.druid.support.json.JSONUtils;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.JSONArray;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.jero.modules.feishu.service.IFeishuService;
|
||||
import com.jero.modules.feishu.vo.FeishuMsgVo;
|
||||
import com.jero.modules.problemKnowledgeBase.entity.ProblemKnowledgeBaseClassifyEO;
|
||||
import com.jero.modules.problemKnowledgeBase.entity.ProblemKnowledgeBaseEO;
|
||||
import com.jero.modules.problemKnowledgeBase.entity.ProblemKnowledgeBaseUserEO;
|
||||
import com.jero.modules.problemKnowledgeBase.enums.ShowPermissionsEnum;
|
||||
import com.jero.modules.problemKnowledgeBase.service.IProblemKnowledgeBaseClassifyEOService;
|
||||
import com.jero.modules.problemKnowledgeBase.service.IProblemKnowledgeBaseEOService;
|
||||
import com.jero.modules.problemKnowledgeBase.service.IProblemKnowledgeBaseUserEOService;
|
||||
import com.jero.modules.project.enums.JumpLinkEnum;
|
||||
import com.jero.modules.system.entity.SysUser;
|
||||
import com.jero.modules.system.service.ISysUserService;
|
||||
import com.jero.modules.system.util.HttpRequestUtil;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang3.ObjectUtils;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
@@ -18,6 +32,7 @@ import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* @Author: liyawei
|
||||
@@ -42,6 +57,17 @@ public class FeishuServiceImpl implements IFeishuService {
|
||||
@Value("${Feishu.translateTextUrl}")
|
||||
private String translateTextUrl;
|
||||
|
||||
@Value(value = "${jero.backUrl}")
|
||||
private String backUrl;
|
||||
@Autowired
|
||||
private IProblemKnowledgeBaseClassifyEOService problemKnowledgeBaseClassifyEOService;
|
||||
@Autowired
|
||||
private IProblemKnowledgeBaseEOService problemKnowledgeBaseEOService;
|
||||
@Autowired
|
||||
private IProblemKnowledgeBaseUserEOService problemKnowledgeBaseUserEOService;
|
||||
@Autowired
|
||||
private ISysUserService sysUserService;
|
||||
|
||||
/**
|
||||
* 获取token
|
||||
* @return
|
||||
@@ -333,7 +359,8 @@ public class FeishuServiceImpl implements IFeishuService {
|
||||
" \"title\": {\n" +
|
||||
" \"tag\": \"plain_text\",\n" +
|
||||
" \"content\": \"点击下方的分类查看常见问题\"\n" +
|
||||
" }\n" +
|
||||
" },\n" +
|
||||
" \"template\": \"green\"\n" +
|
||||
" }\n" +
|
||||
"}";
|
||||
JSONObject jsonObject = JSONObject.parseObject(sendJson);
|
||||
@@ -342,56 +369,28 @@ public class FeishuServiceImpl implements IFeishuService {
|
||||
element.put("tag","action");
|
||||
element.put("layout","bisected");
|
||||
|
||||
JSONArray actions = new JSONArray();
|
||||
//组装推送过去的点击按钮
|
||||
for (int i=0; i<5; i++){
|
||||
//获取分类
|
||||
List<ProblemKnowledgeBaseClassifyEO> problemKnowledgeBaseClassifyEOList = this.problemKnowledgeBaseClassifyEOService.list();
|
||||
|
||||
JSONArray actions = new JSONArray();
|
||||
|
||||
//组装推送过去的点击按钮
|
||||
for (ProblemKnowledgeBaseClassifyEO problemKnowledgeBaseClassifyEO : problemKnowledgeBaseClassifyEOList) {
|
||||
JSONObject buttonObject = new JSONObject();
|
||||
JSONObject text = new JSONObject();
|
||||
JSONObject value = new JSONObject();
|
||||
buttonObject.put("tag","button");
|
||||
|
||||
if(i==0){
|
||||
text.put("tag","plain_text");
|
||||
text.put("content","content1");
|
||||
text.put("tag","plain_text");
|
||||
text.put("content",problemKnowledgeBaseClassifyEO.getProblemLabel());
|
||||
value.put("chosen",problemKnowledgeBaseClassifyEO.getId());
|
||||
|
||||
value.put("chosen","chosen1");
|
||||
}
|
||||
if(i==1){
|
||||
text.put("tag","plain_text");
|
||||
text.put("content","content2");
|
||||
|
||||
value.put("chosen","chosen2");
|
||||
}
|
||||
if(i==2){
|
||||
text.put("tag","plain_text");
|
||||
text.put("content","content3");
|
||||
|
||||
value.put("chosen","chosen3");
|
||||
}
|
||||
if(i==3){
|
||||
text.put("tag","plain_text");
|
||||
text.put("content","content4");
|
||||
|
||||
value.put("chosen","chosen4");
|
||||
}
|
||||
if(i==4){
|
||||
text.put("tag","plain_text");
|
||||
text.put("content","content5");
|
||||
|
||||
value.put("chosen","chosen5");
|
||||
}
|
||||
if(i==5){
|
||||
text.put("tag","plain_text");
|
||||
text.put("content","content6");
|
||||
|
||||
value.put("chosen","chosen6");
|
||||
}
|
||||
buttonObject.put("text",text);
|
||||
buttonObject.put("type","primary");
|
||||
buttonObject.put("value",value);
|
||||
actions.add(buttonObject);
|
||||
}
|
||||
|
||||
element.put("actions",actions);
|
||||
|
||||
|
||||
@@ -423,12 +422,94 @@ public class FeishuServiceImpl implements IFeishuService {
|
||||
String clickStr = JSONObject.toJSONString(JSONObject.parseObject(JSONObject.toJSONString(jsonObject.get("action"))).get("value"));
|
||||
log.info("用户点击的数据: " + clickStr);
|
||||
|
||||
String sendJson = " ";
|
||||
String sendJsonStr = "{\n" +
|
||||
" \"config\": {\n" +
|
||||
" \"wide_screen_mode\": true\n" +
|
||||
" },\n" +
|
||||
" \"header\": {\n" +
|
||||
" \"title\": {\n" +
|
||||
" \"tag\": \"plain_text\",\n" +
|
||||
" \"content\": \"问题知识库信息,点击下方标题即可跳转至详情页查看\"\n" +
|
||||
" },\n" +
|
||||
" \"template\": \"green\"\n" +
|
||||
" }\n" +
|
||||
"}";
|
||||
|
||||
JSONObject sendJson = JSONObject.parseObject(sendJsonStr);
|
||||
JSONArray elements = new JSONArray();
|
||||
|
||||
//分隔行对象。
|
||||
JSONObject dividingLineJson = new JSONObject();
|
||||
dividingLineJson.put("tag","hr");
|
||||
|
||||
JSONObject clickJson = JSONObject.parseObject(clickStr);
|
||||
if(StringUtils.isNotEmpty(clickJson.getString("chosen"))){
|
||||
sendJson = clickJson.getString("chosen");
|
||||
String problemTypeId = clickJson.getString("chosen");
|
||||
String thirdId = userIds[0];
|
||||
SysUser currentOperatorUser = this.sysUserService.getBaseMapper().selectOne(
|
||||
new QueryWrapper<SysUser>().lambda().eq(SysUser::getThirdId, thirdId)
|
||||
);
|
||||
if(ObjectUtils.isNotEmpty(currentOperatorUser)){
|
||||
QueryWrapper<ProblemKnowledgeBaseUserEO> userPermissionQueryWrapper = new QueryWrapper<>();
|
||||
userPermissionQueryWrapper.lambda().eq(ProblemKnowledgeBaseUserEO::getUserId,currentOperatorUser.getId());
|
||||
List<ProblemKnowledgeBaseUserEO> problemKnowledgeBaseUserEOList = this.problemKnowledgeBaseUserEOService.list(userPermissionQueryWrapper);
|
||||
|
||||
List<String> problemKnowledgeBaseIdList = problemKnowledgeBaseUserEOList.stream().map(ProblemKnowledgeBaseUserEO::getProblemKnowledgeBaseId).distinct().collect(Collectors.toList());
|
||||
|
||||
QueryWrapper<ProblemKnowledgeBaseEO> problemKnowledgeBaseEOQueryWrapper = new QueryWrapper<>();
|
||||
|
||||
problemKnowledgeBaseEOQueryWrapper.lambda().eq(ProblemKnowledgeBaseEO::getProblemType,problemTypeId);
|
||||
problemKnowledgeBaseEOQueryWrapper.lambda().and(query -> {
|
||||
query.eq(ProblemKnowledgeBaseEO::getShowPermissions, ShowPermissionsEnum.OPEN.getValue()).
|
||||
or(o -> {
|
||||
o.eq(ProblemKnowledgeBaseEO::getShowPermissions,ShowPermissionsEnum.PRIVACY.getValue());
|
||||
o.in(ProblemKnowledgeBaseEO::getId,problemKnowledgeBaseIdList);
|
||||
});
|
||||
});
|
||||
|
||||
//根据发布日期倒序 查询出(公开、私密且自己是权限用户)最新的五条数据
|
||||
problemKnowledgeBaseEOQueryWrapper.orderByDesc("release_time");
|
||||
Integer pageNo = 1;
|
||||
Integer pageSize = 5;
|
||||
Page<ProblemKnowledgeBaseEO> page = new Page<ProblemKnowledgeBaseEO>(pageNo, pageSize);
|
||||
IPage<ProblemKnowledgeBaseEO> pageList = problemKnowledgeBaseEOService.page(page, problemKnowledgeBaseEOQueryWrapper);
|
||||
List<ProblemKnowledgeBaseEO> records = pageList.getRecords();
|
||||
|
||||
JSONObject element = new JSONObject();
|
||||
JSONArray actions = new JSONArray();
|
||||
|
||||
for (ProblemKnowledgeBaseEO record : records) {
|
||||
String url = backUrl + JumpLinkEnum.PROBLEM_KNOWLEDGE_BASE_DETAIL.getLink() + "?id=" + record.getId();
|
||||
|
||||
JSONObject action = new JSONObject();
|
||||
JSONObject text = new JSONObject();
|
||||
action.put("tag","button");
|
||||
|
||||
text.put("tag","plain_text");
|
||||
text.put("content",record.getTitle());
|
||||
action.put("text",text);
|
||||
action.put("type","primary");
|
||||
action.put("url",url);
|
||||
actions.add(action);
|
||||
}
|
||||
|
||||
element.put("tag","action");
|
||||
element.put("actions",actions);
|
||||
elements.add(element);
|
||||
//添加一个分隔线。
|
||||
elements.add(dividingLineJson);
|
||||
}
|
||||
}
|
||||
JSONObject textFinally = new JSONObject();
|
||||
textFinally.put("tag","lark_md");
|
||||
textFinally.put("content","[以上都不是>>]("+backUrl + JumpLinkEnum.PROBLEM_KNOWLEDGE_BASE.getLink()+")");
|
||||
|
||||
JSONObject elementFinally = new JSONObject();
|
||||
elementFinally.put("tag","div");
|
||||
elementFinally.put("text",textFinally);
|
||||
elements.add(elementFinally);
|
||||
|
||||
sendJson.put("elements",elements);
|
||||
|
||||
String token = null;
|
||||
try {
|
||||
@@ -440,30 +521,13 @@ public class FeishuServiceImpl implements IFeishuService {
|
||||
Map<String, String> headerMap = new HashMap<>();
|
||||
headerMap.put("Authorization", "Bearer " + token);
|
||||
headerMap.put("Content-Type", "application/json; charset=utf-8");
|
||||
// 设置消息标题
|
||||
JSONObject zh_cn = new JSONObject();
|
||||
zh_cn.put("title", "title");
|
||||
// 设置消息内容
|
||||
// 第一行
|
||||
JSONObject contentOne = new JSONObject();
|
||||
contentOne.put("tag", "text");
|
||||
contentOne.put("text", sendJson);
|
||||
List<JSONObject> contentList = new ArrayList<>();
|
||||
contentList.add(contentOne);
|
||||
|
||||
List<List<JSONObject>> list = new ArrayList<>();
|
||||
list.add(contentList);
|
||||
zh_cn.put("content", list);
|
||||
|
||||
JSONObject post = new JSONObject();
|
||||
post.put("zh_cn", zh_cn);
|
||||
JSONObject contentObj = new JSONObject();
|
||||
contentObj.put("post", post);
|
||||
// 设置请求参数
|
||||
JSONObject paramsMap = new JSONObject();
|
||||
paramsMap.put("user_ids", userIds);
|
||||
paramsMap.put("msg_type", "post");
|
||||
paramsMap.put("content", contentObj);
|
||||
paramsMap.put("msg_type", "interactive");
|
||||
paramsMap.put("card", sendJson);
|
||||
|
||||
// 发送请求给飞书
|
||||
String response = null;
|
||||
try {
|
||||
@@ -471,7 +535,6 @@ public class FeishuServiceImpl implements IFeishuService {
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
// 返回结果样例:{"code":0,"data":{"invalid_department_ids":[],"invalid_open_ids":[],"invalid_union_ids":[],"invalid_user_ids":[],"message_id":"bm-d595567e4f448fafe397bc916f0be646"},"msg":"ok"}
|
||||
// 获取返回结果
|
||||
JSONObject tokenJson = JSONObject.parseObject(response);
|
||||
if(!tokenJson.get("code").toString().equals("0")) {
|
||||
|
||||
+5
-1
@@ -214,7 +214,11 @@ public class OcrRecordEOServiceImpl extends ServiceImpl<OcrRecordEOMapper, OcrRe
|
||||
if (CutEnum.CN.getValue().equals(cut)) {
|
||||
map.put("db_field_txt", onlCgformField.getDbFieldTxt());//字段中文名
|
||||
} else {
|
||||
map.put("db_field_txt", onlCgformField.getDbFieldEnName());//字段英文名
|
||||
if("stand_name_en".equals(onlCgformField.getDbFieldName())) { // 英文标题字段特殊处理
|
||||
map.put("db_field_txt", "English Title");
|
||||
} else {
|
||||
map.put("db_field_txt", onlCgformField.getDbFieldEnName());//字段英文名
|
||||
}
|
||||
}
|
||||
if("文本状态".equals(onlCgformField.getDbFieldTxt())){
|
||||
// 查询文档库所有文件类型的字段名称
|
||||
|
||||
+5
-2
@@ -16,8 +16,8 @@
|
||||
LEFT JOIN project_task_inventory pti ON ( pli.id = pti.project_laws_inventory_id )
|
||||
WHERE
|
||||
(
|
||||
bdl.id IN ( SELECT DISTINCT stand_id FROM laws_opinion_gather)
|
||||
OR bdl.id IN ( SELECT DISTINCT stand_id FROM laws_technology_evaluation)
|
||||
bdl.id IN ( SELECT DISTINCT stand_id FROM laws_opinion_gather where gather_result = #{params.gatherResult})
|
||||
OR bdl.id IN ( SELECT DISTINCT stand_id FROM laws_technology_evaluation where flow_status = #{params.flowStatus})
|
||||
or pti.design_p_id IS NOT NULL
|
||||
OR pti.prehomo_p_id IS NOT NULL
|
||||
OR pti.verify_p_id IS NOT NULL
|
||||
@@ -37,10 +37,13 @@
|
||||
pni.project_name as "projectName",
|
||||
pyni.year_name as "yearName",
|
||||
pti.design_status as "designStatus",
|
||||
pti.design_flow_task_status as "designFlowTaskStatus",
|
||||
pti.design_p_id as "designPId",
|
||||
pti.prehomo_status as "prehomoStatus",
|
||||
pti.prehomo_flow_task_status as "prehomoFlowTaskStatus",
|
||||
pti.prehomo_p_id as "prehomoPId",
|
||||
pti.verify_status as "verifyStatus",
|
||||
pti.verify_flow_task_status as "verifyFlowTaskStatus",
|
||||
pti.verify_p_id as "verifyPId",
|
||||
pli.duty_territory as "dutyTerritory"
|
||||
FROM
|
||||
|
||||
+28
-7
@@ -10,10 +10,12 @@ import com.jero.modules.document.enums.FieldTypeEnum;
|
||||
import com.jero.modules.document.service.IBussDocumentLibraryEOService;
|
||||
import com.jero.modules.document.vo.QueryConditionVO;
|
||||
import com.jero.modules.lawsOpinionGather.entity.LawsOpinionGatherEO;
|
||||
import com.jero.modules.lawsOpinionGather.enums.GatherResultEnum;
|
||||
import com.jero.modules.lawsOpinionGather.service.ILawsOpinionGatherEOService;
|
||||
import com.jero.modules.lawsTechnologyEvaluation.entity.LawsTechnologyEvaluationEO;
|
||||
import com.jero.modules.lawsTechnologyEvaluation.service.ILawsTechnologyEvaluationEOService;
|
||||
import com.jero.modules.project.enums.DesignComplianceStatusEnum;
|
||||
import com.jero.modules.project.enums.ReviewResultEnum;
|
||||
import com.jero.modules.project.mapper.LawsComplianceBoardMapper;
|
||||
import com.jero.modules.project.service.ILawsComplianceBoardService;
|
||||
import com.jero.modules.system.entity.SysCategory;
|
||||
@@ -68,6 +70,9 @@ public class LawsComplianceBoardServiceImpl implements ILawsComplianceBoardServi
|
||||
//封装查询条件(包含高级搜索)
|
||||
String condition = this.getConditionStr(params);
|
||||
params.put("condition",condition);
|
||||
//只查询 法规技术评估流程状态、法规意见收集 收集结果 为已完成的数据
|
||||
params.put("flowStatus", GatherResultEnum.COMPLETED.getValue());
|
||||
params.put("gatherResult", GatherResultEnum.COMPLETED.getValue());
|
||||
IPage page = new Page(pageNo, pageSize);
|
||||
IPage infoPage = this.lawsComplianceBoardMapper.queryPageList(page, params);
|
||||
List records = infoPage.getRecords();
|
||||
@@ -139,12 +144,14 @@ public class LawsComplianceBoardServiceImpl implements ILawsComplianceBoardServi
|
||||
//查询当前数据是否有法规意见收集流程数据
|
||||
QueryWrapper<LawsOpinionGatherEO> opinionGatherEOQueryWrapper = new QueryWrapper<>();
|
||||
opinionGatherEOQueryWrapper.lambda().eq(LawsOpinionGatherEO::getStandId,id);
|
||||
opinionGatherEOQueryWrapper.lambda().eq(LawsOpinionGatherEO::getGatherResult,GatherResultEnum.COMPLETED.getValue());
|
||||
int opinionGatherCount = this.lawsOpinionGatherEOService.count(opinionGatherEOQueryWrapper);
|
||||
result.put("opinionGather",opinionGatherCount);
|
||||
|
||||
//查询当前数据是否有法规技术评估流程数据
|
||||
QueryWrapper<LawsTechnologyEvaluationEO> evaluationEOQueryWrapper = new QueryWrapper<>();
|
||||
evaluationEOQueryWrapper.lambda().eq(LawsTechnologyEvaluationEO::getStandId,id);
|
||||
evaluationEOQueryWrapper.lambda().eq(LawsTechnologyEvaluationEO::getFlowStatus,GatherResultEnum.COMPLETED.getValue());
|
||||
int evaluationCount = this.lawsTechnologyEvaluationEOService.count(evaluationEOQueryWrapper);
|
||||
result.put("technologyEvaluation",evaluationCount);
|
||||
return result;
|
||||
@@ -166,6 +173,20 @@ public class LawsComplianceBoardServiceImpl implements ILawsComplianceBoardServi
|
||||
String textByValue = DesignComplianceStatusEnum.getTextByValue(complianceResult.get("verifyStatus").toString(), cut);
|
||||
complianceResult.put("verifyStatus_dicText",textByValue);
|
||||
}
|
||||
|
||||
if (complianceResult.get("designFlowTaskStatus") != null) {
|
||||
String textByValue = ReviewResultEnum.getTextByValue(complianceResult.get("designFlowTaskStatus").toString(), cut);
|
||||
complianceResult.put("designFlowTaskStatus_dicText",textByValue);
|
||||
}
|
||||
if (complianceResult.get("prehomoFlowTaskStatus") != null && complianceResult.get("prehomoFlowTaskStatus") != "") {
|
||||
String textByValue = ReviewResultEnum.getTextByValue(complianceResult.get("prehomoFlowTaskStatus").toString(), cut);
|
||||
complianceResult.put("prehomoFlowTaskStatus_dicText",textByValue);
|
||||
}
|
||||
if (complianceResult.get("verifyFlowTaskStatus") != null) {
|
||||
String textByValue = ReviewResultEnum.getTextByValue(complianceResult.get("verifyFlowTaskStatus").toString(), cut);
|
||||
complianceResult.put("verifyFlowTaskStatus_dicText",textByValue);
|
||||
}
|
||||
|
||||
if (complianceResult.get("dutyTerritory") != null) {
|
||||
String dutyTerritory_dicText = "";
|
||||
if (CutEnum.EN.getValue().equals(cut)) {
|
||||
@@ -291,9 +312,9 @@ public class LawsComplianceBoardServiceImpl implements ILawsComplianceBoardServi
|
||||
dataRow.createCell(4).setCellValue(checkValueIsNotNull(byStandIdcomplianceResultList.get(i).get("dutyTerritory_dicText")));
|
||||
String projectName = checkValueIsNotNull(byStandIdcomplianceResultList.get(i).get("projectName")) + "-" + checkValueIsNotNull(byStandIdcomplianceResultList.get(i).get("yearName"));
|
||||
dataRow.createCell(5).setCellValue(projectName);
|
||||
dataRow.createCell(6).setCellValue(checkValueIsNotNull(byStandIdcomplianceResultList.get(i).get("designStatus_dicText")));
|
||||
dataRow.createCell(7).setCellValue(checkValueIsNotNull(byStandIdcomplianceResultList.get(i).get("prehomoStatus_dicText")));
|
||||
dataRow.createCell(8).setCellValue(checkValueIsNotNull(byStandIdcomplianceResultList.get(i).get("verifyStatus_dicText")));
|
||||
dataRow.createCell(6).setCellValue(checkValueIsNotNull(byStandIdcomplianceResultList.get(i).get("designFlowTaskStatus_dicText")));
|
||||
dataRow.createCell(7).setCellValue(checkValueIsNotNull(byStandIdcomplianceResultList.get(i).get("prehomoFlowTaskStatus_dicText")));
|
||||
dataRow.createCell(8).setCellValue(checkValueIsNotNull(byStandIdcomplianceResultList.get(i).get("verifyFlowTaskStatus_dicText")));
|
||||
if(byStandIdComlianceResultSize > 1 && i != (byStandIdComlianceResultSize - 1)){
|
||||
rowIndex ++;
|
||||
}
|
||||
@@ -383,9 +404,9 @@ public class LawsComplianceBoardServiceImpl implements ILawsComplianceBoardServi
|
||||
Row dataRow = sheet.createRow(rowIndex);
|
||||
dataRow.createCell(0).setCellValue(checkValueIsNotNull(exportData.get(dataIndex).get("dutyTerritory_dicText")));
|
||||
dataRow.createCell(1).setCellValue(checkValueIsNotNull(exportData.get(dataIndex).get("projectName")));
|
||||
dataRow.createCell(2).setCellValue(checkValueIsNotNull(exportData.get(dataIndex).get("designStatus_dicText")));
|
||||
dataRow.createCell(3).setCellValue(checkValueIsNotNull(exportData.get(dataIndex).get("prehomoStatus_dicText")));
|
||||
dataRow.createCell(4).setCellValue(checkValueIsNotNull(exportData.get(dataIndex).get("verifyStatus_dicText")));
|
||||
dataRow.createCell(2).setCellValue(checkValueIsNotNull(exportData.get(dataIndex).get("designFlowTaskStatus_dicText")));
|
||||
dataRow.createCell(3).setCellValue(checkValueIsNotNull(exportData.get(dataIndex).get("prehomoFlowTaskStatus_dicText")));
|
||||
dataRow.createCell(4).setCellValue(checkValueIsNotNull(exportData.get(dataIndex).get("verifyFlowTaskStatus_dicText")));
|
||||
rowIndex ++;
|
||||
}
|
||||
}
|
||||
@@ -512,7 +533,7 @@ public class LawsComplianceBoardServiceImpl implements ILawsComplianceBoardServi
|
||||
}
|
||||
if(StringUtils.isNotEmpty(idStr)){
|
||||
idStr = idStr.substring(0,idStr.length()-1);
|
||||
conditionSb.append(" and id in("+idStr+")");
|
||||
conditionSb.append(" and bdl.id in("+idStr+")");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+3
@@ -66,6 +66,9 @@ public class SarFileSplitInfoController extends JeroController<SarFileSplitInfoE
|
||||
if(StringUtils.isNotEmpty(sarFileSplitInfoEOPage.getTitle())){
|
||||
sarFileSplitInfoEOPage.setTitle(sarFileSplitInfoEOPage.getTitle().replace("%","\\%"));
|
||||
}
|
||||
if(StringUtils.isNotEmpty(sarFileSplitInfoEOPage.getFileId())){//判断是不是以及传回文档库
|
||||
queryWrapper.isNotNull(SarFileSplitInfoEO::getFileId);
|
||||
}
|
||||
queryWrapper.like(StringUtils.isNotEmpty(sarFileSplitInfoEOPage.getSerialNumber()), SarFileSplitInfoEO::getSerialNumber, sarFileSplitInfoEOPage.getSerialNumber())
|
||||
.like(StringUtils.isNotEmpty(sarFileSplitInfoEOPage.getTitle()) && CutEnum.CN.getValue().equals(sarFileSplitInfoEOPage.getCut()), SarFileSplitInfoEO::getTitle, sarFileSplitInfoEOPage.getTitle())
|
||||
.like(StringUtils.isNotEmpty(sarFileSplitInfoEOPage.getTitle()) && CutEnum.EN.getValue().equals(sarFileSplitInfoEOPage.getCut()), SarFileSplitInfoEO::getTitleEn, sarFileSplitInfoEOPage.getTitle())
|
||||
|
||||
+16
-20
@@ -16,10 +16,8 @@ import com.jero.modules.split.service.IFileSplitItemsEOService;
|
||||
import com.jero.modules.split.service.ISarFileSplitItemsValEOService;
|
||||
import com.jero.modules.split.util.FileSplitUtils;
|
||||
import com.jero.modules.split.util.ReadWordTable;
|
||||
import com.qcloud.cos.utils.IOUtils;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.commons.lang.StringUtils;
|
||||
import org.apache.pdfbox.cos.COSBase;
|
||||
import org.apache.poi.xwpf.usermodel.*;
|
||||
import org.apache.shiro.SecurityUtils;
|
||||
import org.apache.xmlbeans.XmlCursor;
|
||||
@@ -36,11 +34,9 @@ import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Propagation;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import sun.misc.BASE64Encoder;
|
||||
|
||||
import java.io.*;
|
||||
import java.net.InetAddress;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.util.*;
|
||||
import java.util.regex.Matcher;
|
||||
import java.util.regex.Pattern;
|
||||
@@ -411,9 +407,9 @@ public class FileSpiltService {
|
||||
|
||||
String generalCatalogueId = UUIDUtils.randomUUID20();
|
||||
SarFileSplitMenuEO documentTreeEO = new SarFileSplitMenuEO();
|
||||
// SarFileSplitMenuEO documentTreeEO = new SarFileSplitMenuEO(generalCatalogueId,"General catalogue","",sarFileSplitInfoEO.getId(),treeListDisplay++,"");
|
||||
// SarFileSplitMenuEO documentTreeEO = new SarFileSplitMenuEO(generalCatalogueId,"General Catalogue","",sarFileSplitInfoEO.getId(),treeListDisplay++,"");
|
||||
documentTreeEO.setId(generalCatalogueId);
|
||||
documentTreeEO.setName("General catalogue");
|
||||
documentTreeEO.setName("General Catalogue");
|
||||
documentTreeEO.setInfoId(sarFileSplitInfoEO.getId());
|
||||
documentTreeEO.setDisplaySeq(1L);
|
||||
documentTreeEO.setDisplaySeq(treeListDisplay++);
|
||||
@@ -627,9 +623,9 @@ public class FileSpiltService {
|
||||
|
||||
String generalCatalogueId = UUIDUtils.randomUUID20();
|
||||
SarFileSplitMenuEO documentTreeEO = new SarFileSplitMenuEO();
|
||||
// SarFileSplitMenuEO documentTreeEO = new SarFileSplitMenuEO(generalCatalogueId,"General catalogue","",sarFileSplitInfoEO.getId(),treeListDisplay++,"");
|
||||
// SarFileSplitMenuEO documentTreeEO = new SarFileSplitMenuEO(generalCatalogueId,"General Catalogue","",sarFileSplitInfoEO.getId(),treeListDisplay++,"");
|
||||
documentTreeEO.setId(generalCatalogueId);
|
||||
documentTreeEO.setName("General catalogue");
|
||||
documentTreeEO.setName("General Catalogue");
|
||||
documentTreeEO.setInfoId(sarFileSplitInfoEO.getId());
|
||||
documentTreeEO.setDisplaySeq(1L);
|
||||
documentTreeEO.setDisplaySeq(treeListDisplay++);
|
||||
@@ -809,9 +805,9 @@ public class FileSpiltService {
|
||||
|
||||
String generalCatalogueId = UUIDUtils.randomUUID20();
|
||||
SarFileSplitMenuEO documentTreeEO = new SarFileSplitMenuEO();
|
||||
// SarFileSplitMenuEO documentTreeEO = new SarFileSplitMenuEO(generalCatalogueId,"General catalogue","",sarFileSplitInfoEO.getId(),treeListDisplay++,"");
|
||||
// SarFileSplitMenuEO documentTreeEO = new SarFileSplitMenuEO(generalCatalogueId,"General Catalogue","",sarFileSplitInfoEO.getId(),treeListDisplay++,"");
|
||||
documentTreeEO.setId(generalCatalogueId);
|
||||
documentTreeEO.setName("General catalogue");
|
||||
documentTreeEO.setName("General Catalogue");
|
||||
documentTreeEO.setInfoId(sarFileSplitInfoEO.getId());
|
||||
documentTreeEO.setDisplaySeq(1L);
|
||||
documentTreeEO.setDisplaySeq(treeListDisplay++);
|
||||
@@ -998,9 +994,9 @@ public class FileSpiltService {
|
||||
|
||||
String generalCatalogueId = UUIDUtils.randomUUID20();
|
||||
SarFileSplitMenuEO documentTreeEO = new SarFileSplitMenuEO();
|
||||
// SarFileSplitMenuEO documentTreeEO = new SarFileSplitMenuEO(generalCatalogueId,"General catalogue","",sarFileSplitInfoEO.getId(),treeListDisplay++,"");
|
||||
// SarFileSplitMenuEO documentTreeEO = new SarFileSplitMenuEO(generalCatalogueId,"General Catalogue","",sarFileSplitInfoEO.getId(),treeListDisplay++,"");
|
||||
documentTreeEO.setId(generalCatalogueId);
|
||||
documentTreeEO.setName("General catalogue");
|
||||
documentTreeEO.setName("General Catalogue");
|
||||
documentTreeEO.setInfoId(sarFileSplitInfoEO.getId());
|
||||
documentTreeEO.setDisplaySeq(1L);
|
||||
documentTreeEO.setDisplaySeq(treeListDisplay++);
|
||||
@@ -1185,9 +1181,9 @@ public class FileSpiltService {
|
||||
|
||||
String generalCatalogueId = UUIDUtils.randomUUID20();
|
||||
SarFileSplitMenuEO documentTreeEO = new SarFileSplitMenuEO();
|
||||
// SarFileSplitMenuEO documentTreeEO = new SarFileSplitMenuEO(generalCatalogueId,"General catalogue","",sarFileSplitInfoEO.getId(),treeListDisplay++,"");
|
||||
// SarFileSplitMenuEO documentTreeEO = new SarFileSplitMenuEO(generalCatalogueId,"General Catalogue","",sarFileSplitInfoEO.getId(),treeListDisplay++,"");
|
||||
documentTreeEO.setId(generalCatalogueId);
|
||||
documentTreeEO.setName("General catalogue");
|
||||
documentTreeEO.setName("General Catalogue");
|
||||
documentTreeEO.setInfoId(sarFileSplitInfoEO.getId());
|
||||
documentTreeEO.setDisplaySeq(1L);
|
||||
documentTreeEO.setDisplaySeq(treeListDisplay++);
|
||||
@@ -1362,9 +1358,9 @@ public class FileSpiltService {
|
||||
|
||||
String generalCatalogueId = UUIDUtils.randomUUID20();
|
||||
SarFileSplitMenuEO documentTreeEO = new SarFileSplitMenuEO();
|
||||
// SarFileSplitMenuEO documentTreeEO = new SarFileSplitMenuEO(generalCatalogueId,"General catalogue","",sarFileSplitInfoEO.getId(),treeListDisplay++,"");
|
||||
// SarFileSplitMenuEO documentTreeEO = new SarFileSplitMenuEO(generalCatalogueId,"General Catalogue","",sarFileSplitInfoEO.getId(),treeListDisplay++,"");
|
||||
documentTreeEO.setId(generalCatalogueId);
|
||||
documentTreeEO.setName("General catalogue");
|
||||
documentTreeEO.setName("General Catalogue");
|
||||
documentTreeEO.setInfoId(sarFileSplitInfoEO.getId());
|
||||
documentTreeEO.setDisplaySeq(1L);
|
||||
documentTreeEO.setDisplaySeq(treeListDisplay++);
|
||||
@@ -1546,9 +1542,9 @@ public class FileSpiltService {
|
||||
|
||||
String generalCatalogueId = UUIDUtils.randomUUID20();
|
||||
SarFileSplitMenuEO documentTreeEO = new SarFileSplitMenuEO();
|
||||
// SarFileSplitMenuEO documentTreeEO = new SarFileSplitMenuEO(generalCatalogueId,"General catalogue","",sarFileSplitInfoEO.getId(),treeListDisplay++,"");
|
||||
// SarFileSplitMenuEO documentTreeEO = new SarFileSplitMenuEO(generalCatalogueId,"General Catalogue","",sarFileSplitInfoEO.getId(),treeListDisplay++,"");
|
||||
documentTreeEO.setId(generalCatalogueId);
|
||||
documentTreeEO.setName("General catalogue");
|
||||
documentTreeEO.setName("General Catalogue");
|
||||
documentTreeEO.setInfoId(sarFileSplitInfoEO.getId());
|
||||
documentTreeEO.setDisplaySeq(1L);
|
||||
documentTreeEO.setDisplaySeq(treeListDisplay++);
|
||||
|
||||
@@ -355,7 +355,7 @@ module.exports = {
|
||||
templateDownload: 'Download Template',
|
||||
textInformation: 'Document Files',
|
||||
relatedInformation: 'Relevant Information',
|
||||
RetrieveFiles: 'Retrieve Library File',
|
||||
RetrieveFiles: 'Select Stored File',
|
||||
SplitText: 'Split Library File',
|
||||
ImportResults: 'Import Split Results',
|
||||
copy: 'Copy',
|
||||
@@ -475,7 +475,7 @@ module.exports = {
|
||||
away: 'Collapse',
|
||||
toDoProcess: 'To Do',
|
||||
processDone: 'Completed',
|
||||
sentProcess: 'Create',
|
||||
sentProcess: 'Initiated',
|
||||
monitoringProcess: 'Monitor',
|
||||
ConfirmDeployment: 'Confirm Deployment?',
|
||||
terminationProcess: 'Termination Process',
|
||||
@@ -589,7 +589,7 @@ module.exports = {
|
||||
withdraw: 'Withdraw',
|
||||
maintenanceList: 'Maintain',
|
||||
instructionForUse: 'Instruction',
|
||||
subtitle: 'Sub-Title',
|
||||
subtitle: 'Sub-title',
|
||||
scopeOfApplication: 'Scope',
|
||||
correspondingStandard: 'Compare EU/CN',
|
||||
implementationCategory: 'Usage',
|
||||
@@ -610,7 +610,7 @@ module.exports = {
|
||||
deliverableTemplate: 'Deliverable Template',
|
||||
entryName: 'Project Name',
|
||||
targetMarket: 'Target Market',
|
||||
projectStatus: 'Development',
|
||||
projectStatus: 'Project Status',
|
||||
StudioEngineer: 'R&H Studio',
|
||||
CertificationTime: 'Certification Time',
|
||||
NTplatform: 'NT Platform',
|
||||
@@ -1115,26 +1115,26 @@ module.exports = {
|
||||
RegulationTaskConfirmationNotification: 'Regulation Task Confirmation Notification',
|
||||
evaluationMethod: 'Evaluation method',
|
||||
uploadRelevantMaterials: 'Upload relevant materials',
|
||||
processBackground: 'Process background',
|
||||
selectedStandard: 'Selected standard',
|
||||
processBackground: 'Process Background',
|
||||
selectedStandard: 'Selected Standard',
|
||||
standardDecompositionDocument: 'Standard decomposition document',
|
||||
pleaseSelectStandardFirst: 'Please select a standard first',
|
||||
RelevantMaterials: 'RelevantMaterials',
|
||||
evaluatorFeedback: 'Evaluator feedback',
|
||||
evaluatorFeedback: 'Evaluator Feedback',
|
||||
nameTechnicalDocument: 'Name of technical document',
|
||||
chapter: 'chapter',
|
||||
problemDescription: 'Problem description',
|
||||
problemDescription: 'Problem Description',
|
||||
filingExternalOpinions: 'Filing of external opinions',
|
||||
regulatoryTechnicalEvaluationResults: 'Regulatory technical evaluation results',
|
||||
initiateProcessForCurrentStandard: 'Initiate process for current standard',
|
||||
engineerFeedbackResults: 'Engineer feedback results',
|
||||
fileExport: 'File export',
|
||||
feedbackTime: 'Feedback time',
|
||||
fileExport: 'File Export',
|
||||
feedbackTime: 'Feedback Time',
|
||||
regulatoryTechnologyAssessmentProcess: 'Regulatory technology assessment process',
|
||||
feedbackEvaluation: 'Feedback evaluation',
|
||||
clauseEvaluation: 'Clause evaluation',
|
||||
standardDocuments: 'Standard documents',
|
||||
pleaseCompleteTheEvaluationMethodorEvaluator: 'Please complete the evaluation method or evaluator in the list',
|
||||
feedbackEvaluation: 'Feedback Evaluation',
|
||||
clauseEvaluation: 'Clause Evaluation',
|
||||
standardDocuments: 'Standard Documents',
|
||||
pleaseCompleteTheEvaluationMethodorEvaluator: 'Please complete the evaluator in the list',
|
||||
reviewComments: 'Review comments',
|
||||
PleaseCompleteList: 'Please complete the compliance results in the list',
|
||||
sponsorFeedback: 'Sponsor feedback',
|
||||
@@ -1256,4 +1256,7 @@ module.exports = {
|
||||
HaveReleased:'Have released',
|
||||
forward:'Forward',
|
||||
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',
|
||||
}
|
||||
@@ -1139,7 +1139,6 @@ module.exports = {
|
||||
feedbackEvaluation: '反馈评估',
|
||||
clauseEvaluation: '条款评估',
|
||||
standardDocuments: '标准文件',
|
||||
pleaseCompleteTheEvaluationMethodorEvaluator: '请补全列表中评估方式或评估人',
|
||||
reviewComments: '审核意见',
|
||||
PleaseCompleteList: '请补全列表中符合性结果',
|
||||
sponsorFeedback: '发起人反馈',
|
||||
@@ -1240,7 +1239,7 @@ module.exports = {
|
||||
feedbackEvaluation: '反馈评估',
|
||||
clauseEvaluation: '条款评估',
|
||||
standardDocuments: '标准文件',
|
||||
pleaseCompleteTheEvaluationMethodorEvaluator: '请补全列表中评估方式或评估人',
|
||||
pleaseCompleteTheEvaluationMethodorEvaluator: '请补全列表中评估人',
|
||||
reviewComments: '审核意见',
|
||||
PleaseCompleteList: '请补全列表中符合性结果',
|
||||
sponsorFeedback: '发起人反馈',
|
||||
@@ -1359,4 +1358,7 @@ module.exports = {
|
||||
HaveReleased:'已发布',
|
||||
forward:'转发',
|
||||
issuedBy:'发布人',
|
||||
pleaseDecompositionStandardOrder:'请导入或带入至少一条分解标准单',
|
||||
currentlyTheFirstOneThatCannotMovedUp:'当前已是第一个无法进行上移',
|
||||
currentlyTheLastOneCannotmovedDown:'当前已是最后一个无法进行下移',
|
||||
}
|
||||
@@ -124,7 +124,7 @@
|
||||
} else {
|
||||
eventBUs.$emit('searchReset')
|
||||
}
|
||||
this.$message.success(info.file.response.message || `${info.file.name} 文件导入成功`)
|
||||
this.$message.success(this.$t('OperationSuccessful'))
|
||||
}
|
||||
this.spinning = false
|
||||
} else {
|
||||
@@ -187,7 +187,7 @@
|
||||
}
|
||||
this.spinning = false
|
||||
} else {
|
||||
this.$message.error(`文件导入失败: ${info.file.msg} `)
|
||||
this.$message.error(this.$t('operationFailed'))
|
||||
this.spinning = false
|
||||
}
|
||||
}
|
||||
|
||||
@@ -150,14 +150,14 @@
|
||||
if (res.success) {
|
||||
var jsonHead = res.result
|
||||
this.columns = []
|
||||
this.columns.push(
|
||||
{
|
||||
title: this.$t('serialNumber'),
|
||||
dataIndex: 'index',
|
||||
key: 'index',
|
||||
align: 'center',
|
||||
customRender: (text, record, index) => `${index + 1}`
|
||||
})
|
||||
// this.columns.push(
|
||||
// {
|
||||
// title: this.$t('serialNumber'),
|
||||
// dataIndex: 'index',
|
||||
// key: 'index',
|
||||
// align: 'center',
|
||||
// customRender: (text, record, index) => `${index + 1}`
|
||||
// })
|
||||
jsonHead.forEach((res, index) => {
|
||||
this.columns.push({
|
||||
title: res.db_field_txt,
|
||||
|
||||
@@ -712,4 +712,7 @@
|
||||
/deep/ .ant-calendar-picker{
|
||||
display: block;
|
||||
}
|
||||
::v-deep .ant-modal-body{
|
||||
overflow-y: visible!important;
|
||||
}
|
||||
</style>
|
||||
@@ -147,12 +147,12 @@
|
||||
key: 'role',
|
||||
},
|
||||
{
|
||||
title: this.$t('operationContent'),
|
||||
title: this.$t('OperationContent'),
|
||||
dataIndex: 'content',
|
||||
key: 'content',
|
||||
},
|
||||
{
|
||||
title: this.$t('operationTime'),
|
||||
title: this.$t('OperationTime'),
|
||||
dataIndex: 'time',
|
||||
key: 'time',
|
||||
},
|
||||
|
||||
+2
@@ -361,6 +361,8 @@
|
||||
})
|
||||
},
|
||||
completeTask(value, taskId, isTrue) {
|
||||
let handlingTime = moment(new Date()).format('YYYY-MM-DD HH:mm:ss')
|
||||
value.operatorTime = handlingTime
|
||||
Object.keys(value).forEach(res => {
|
||||
if (value[res] && value[res] instanceof String) {
|
||||
value[res] = value[res].replace(/\"/g, '“')
|
||||
|
||||
@@ -255,6 +255,7 @@
|
||||
pageNo: this.pageNo,
|
||||
pageSize: this.pageSize,
|
||||
serialNumber: this.$route.query.serialNumber ? this.$route.query.serialNumber : '',
|
||||
gatherResult: this.$route.query.gatherResult ? this.$route.query.gatherResult : '',
|
||||
...queryParam
|
||||
}
|
||||
this.loading = true
|
||||
|
||||
+3
-2
@@ -62,7 +62,8 @@
|
||||
<span slot="content" slot-scope="text,record,index">
|
||||
<a-input class="box-input"
|
||||
v-if="record.lableType == 8"
|
||||
v-model="record.content"
|
||||
v-model.trim="record.content"
|
||||
:maxLength="100"
|
||||
:placeholder="$t('PleaseEnter')"/>
|
||||
<a-select :placeholder="$t('PleaseSelect')"
|
||||
style="width: 100%"
|
||||
@@ -126,7 +127,7 @@
|
||||
},
|
||||
visible: false,
|
||||
selectedRowKeys: [],
|
||||
dataList: [{}],
|
||||
dataList: [],
|
||||
loading: false,
|
||||
confirmLoading: false,
|
||||
index: '',
|
||||
|
||||
+12
-5
@@ -92,7 +92,7 @@
|
||||
contentList: [],
|
||||
displayList: [],
|
||||
queryCountryList: [],
|
||||
countryCardViewList:[],
|
||||
countryCardViewList: [],
|
||||
applyMarkets: '',
|
||||
url: {
|
||||
list: '/problemKnowledgeBase/countryCardTempEO/list',
|
||||
@@ -182,10 +182,17 @@
|
||||
res.countryCardManageReleaseDetailEOList.forEach((val, index1) => {
|
||||
this.contentList.forEach(res1 => {
|
||||
if (res1.name == val.lableName) {
|
||||
res1.list.push({
|
||||
lableName: val.content,
|
||||
lableType: val.lableType
|
||||
})
|
||||
if (val.lableType == 3) {
|
||||
res1.list.push({
|
||||
lableName: val.contentDropDownValue,
|
||||
lableType: val.lableType
|
||||
})
|
||||
} else {
|
||||
res1.list.push({
|
||||
lableName: val.content,
|
||||
lableType: val.lableType
|
||||
})
|
||||
}
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
+6
-2
@@ -133,8 +133,9 @@
|
||||
<div class="title-text">
|
||||
<span class="title-text-text">{{$t('content')}}</span>
|
||||
</div>
|
||||
<a-form-model-item style="height: 300px" class="itemModel" prop="content">
|
||||
<a-form-model-item style="height: 357px" class="itemModel itemModel-explain" prop="content">
|
||||
<quill-editor
|
||||
v-model="formInline.content"
|
||||
style="height: 300px"
|
||||
:content="formInline.content"
|
||||
:options="editorOption"
|
||||
@@ -245,7 +246,7 @@
|
||||
{
|
||||
max: 5000,
|
||||
message: this.$t('content') + this.$t('cannotExceed') + 5000 + this.$t('Characters'),
|
||||
trigger: 'change'
|
||||
trigger: 'blur'
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -582,4 +583,7 @@
|
||||
box-sizing: border-box;
|
||||
}
|
||||
|
||||
::v-deep .itemModel-explain .ant-form-explain {
|
||||
margin-top: 60px
|
||||
}
|
||||
</style>
|
||||
+2
@@ -109,12 +109,14 @@
|
||||
title: this.$t('chapterContents'),
|
||||
align: 'center',
|
||||
dataIndex: 'memoriesChapterName',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
},
|
||||
{
|
||||
title: this.$t('chineseTitle'),
|
||||
align: 'center',
|
||||
dataIndex: 'titleCn',
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
},
|
||||
{
|
||||
|
||||
+2
-2
@@ -391,8 +391,8 @@
|
||||
this.formInline = { ...this.formInline }
|
||||
} else {
|
||||
this.formInline = {}
|
||||
this.formInline.lawsContact = this.userInfo().username
|
||||
this.formInline.lawsContactName = this.userInfo().id
|
||||
this.formInline.lawsContact = this.userInfo().id
|
||||
this.formInline.lawsContactName = this.userInfo().username
|
||||
this.formInline = { ...this.formInline }
|
||||
}
|
||||
})
|
||||
|
||||
@@ -384,4 +384,21 @@
|
||||
height: 38px;
|
||||
margin-top: 4px;
|
||||
}
|
||||
|
||||
::v-deep .ant-select-tree-treenode-switcher-close {
|
||||
width: 255px;
|
||||
}
|
||||
|
||||
::v-deep .ant-select-tree-node-content-wrapper {
|
||||
float: right;
|
||||
margin-top: -2px!important;
|
||||
}
|
||||
|
||||
::v-deep .ant-select-tree-title {
|
||||
width: 100%;
|
||||
display: block;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
}
|
||||
</style>
|
||||
+13
-4
@@ -84,12 +84,13 @@
|
||||
title: this.$t('chineseTitle'),
|
||||
align: 'center',
|
||||
dataIndex: 'titleCn',
|
||||
width: 210
|
||||
ellipsis: true,
|
||||
width: 320
|
||||
},
|
||||
{
|
||||
title: this.$t('englishTitle'),
|
||||
align: 'center',
|
||||
width: 210,
|
||||
width: 320,
|
||||
ellipsis: true,
|
||||
dataIndex: 'titleEn'
|
||||
},
|
||||
@@ -162,7 +163,11 @@
|
||||
this.sortList.push(this.dataSource[index - 1])
|
||||
}
|
||||
}
|
||||
this.move()
|
||||
if (this.sortList.length > 1) {
|
||||
this.move()
|
||||
} else {
|
||||
this.$message.warning(this.$t('currentlyTheFirstOneThatCannotMovedUp'))
|
||||
}
|
||||
},
|
||||
moveDownClick(row, index) {
|
||||
this.sortList = []
|
||||
@@ -179,7 +184,11 @@
|
||||
this.sortList.push(this.dataSource[index + 1])
|
||||
}
|
||||
}
|
||||
this.move()
|
||||
if (this.sortList.length > 1) {
|
||||
this.move()
|
||||
} else {
|
||||
this.$message.warning(this.$t('currentlyTheLastOneCannotmovedDown'))
|
||||
}
|
||||
},
|
||||
move() {
|
||||
postAction('/report/lawsMonthlyReportTitleTemplateEO/move', { lawsMonthlyReportTitleTemplateEOS: this.sortList }).then((res) => {
|
||||
|
||||
+33
-8
@@ -164,16 +164,22 @@
|
||||
},
|
||||
submitData(callback) {
|
||||
let dataList = JSON.parse(JSON.stringify(this.dataList))
|
||||
for (let i = 0; i < dataList.length; i++) {
|
||||
if (dataList[i].evaluationMethods && dataList[i].evaluationMethods instanceof Array) {
|
||||
dataList[i].evaluationMethods = dataList[i].evaluationMethods.join(',')
|
||||
}
|
||||
dataList[i].lawsTechnologyEvaluationId = this.$route.query.lawsTechnologyEvaluationId || this.getUUID
|
||||
if (!dataList[i].evaluationMethods || !dataList[i].evaluatorIds) {
|
||||
this.$message.warning(this.$t('pleaseCompleteTheEvaluationMethodorEvaluator'))
|
||||
return
|
||||
if (dataList && dataList.length > 0) {
|
||||
for (let i = 0; i < dataList.length; i++) {
|
||||
if (dataList[i].evaluationMethods && dataList[i].evaluationMethods instanceof Array) {
|
||||
dataList[i].evaluationMethods = dataList[i].evaluationMethods.join(',')
|
||||
}
|
||||
dataList[i].lawsTechnologyEvaluationId = this.$route.query.lawsTechnologyEvaluationId || this.getUUID
|
||||
if (!dataList[i].evaluatorIds) {
|
||||
this.$message.warning(this.$t('pleaseCompleteTheEvaluationMethodorEvaluator'))
|
||||
return
|
||||
}
|
||||
}
|
||||
} else {
|
||||
this.$message.warning(this.$t('pleaseDecompositionStandardOrder'))
|
||||
return
|
||||
}
|
||||
|
||||
callback && callback(dataList)
|
||||
},
|
||||
handleModule() {
|
||||
@@ -202,4 +208,23 @@
|
||||
text-justify: inter-ideograph;
|
||||
word-break: break-all
|
||||
}
|
||||
|
||||
::v-deep .ant-select-tree-treenode-switcher-close {
|
||||
width: 255px;
|
||||
}
|
||||
|
||||
::v-deep .ant-select-tree-node-content-wrapper {
|
||||
text-align: left;
|
||||
float: right;
|
||||
margin-top: -2px !important;
|
||||
}
|
||||
|
||||
::v-deep .ant-select-tree-title {
|
||||
width: 100%;
|
||||
display: block;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
}
|
||||
|
||||
</style>
|
||||
+12
-3
@@ -64,6 +64,7 @@
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="endTime">
|
||||
<a-date-picker class="box-input"
|
||||
:disabledDate="disabledDate"
|
||||
:placeholder="$t('PleaseSelect')+$t('closingDate')"
|
||||
@change="dateChange('endTime')"
|
||||
:getCalendarContainer="(trigger) => trigger.parentNode"
|
||||
@@ -99,7 +100,6 @@
|
||||
<a-form-model-item class="itemModel" prop="processBackground">
|
||||
<a-textarea :placeholder="$t('pleaseEnter')+$t('processBackground')"
|
||||
v-model="formInline.processBackground"
|
||||
:disabled="!whetherDisplay"
|
||||
:rows="4"/>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
@@ -114,7 +114,6 @@
|
||||
<a-form-model-item class="itemModel" prop="remark">
|
||||
<a-textarea :placeholder="$t('pleaseEnter')+$t('remarks')"
|
||||
v-model="formInline.remark"
|
||||
:disabled="!whetherDisplay"
|
||||
:rows="4"/>
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
@@ -257,6 +256,7 @@
|
||||
},
|
||||
searchParmes: {},
|
||||
selectedRowKeysRecord: [],
|
||||
standardList: [],
|
||||
whetherDisplay: false,
|
||||
columns: [
|
||||
{
|
||||
@@ -347,6 +347,9 @@
|
||||
}
|
||||
})
|
||||
},
|
||||
disabledDate(current) {
|
||||
return current && current < moment().subtract(1, 'day')
|
||||
},
|
||||
pageOnChange(page) {
|
||||
this.pageNo = page
|
||||
this.getList()
|
||||
@@ -432,15 +435,21 @@
|
||||
},
|
||||
standardDecompositionDocumentClick() {
|
||||
if (this.standardDecomposition && this.standardDecomposition.length > 0) {
|
||||
this.$refs.standardDecompositionSheetRef.getData(JSON.parse(JSON.stringify(this.standardDecomposition[0])))
|
||||
this.$refs.standardDecompositionSheetRef.getData(JSON.parse(JSON.stringify(this.standardDecomposition[0])), this.standardList)
|
||||
} else {
|
||||
this.$message.warning(this.$t('pleaseSelectStandardFirst'))
|
||||
}
|
||||
},
|
||||
standardDecompositionSheetForm(value) {
|
||||
this.standardList = JSON.parse(JSON.stringify(value))
|
||||
this.$refs.TermInformationRef.getData(JSON.parse(JSON.stringify(value)))
|
||||
},
|
||||
TermInformationRefForm(value) {
|
||||
if (value && value.itemId) {
|
||||
this.standardList = this.standardList.filter(res => {
|
||||
return value.itemId != res.id
|
||||
})
|
||||
}
|
||||
this.$refs.standardDecompositionSheetRef.getRowList(JSON.parse(JSON.stringify(value)))
|
||||
},
|
||||
clickButtonToUpload(item) {
|
||||
|
||||
+27
-8
@@ -49,7 +49,7 @@
|
||||
</div>
|
||||
<a-table
|
||||
:columns="columns"
|
||||
rowKey="id"
|
||||
:rowKey="(record)=>JSON.stringify(record)"
|
||||
:scroll="{x: '100%'}"
|
||||
:data-source="dataList"
|
||||
:pagination="false"
|
||||
@@ -150,7 +150,8 @@
|
||||
fieldList: [],
|
||||
queryConditionVOList: [],
|
||||
info_id: '',
|
||||
selectedRowKeysData: []
|
||||
selectedRowKeysData: [],
|
||||
standardList: ''
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
@@ -160,7 +161,16 @@
|
||||
standardDocumentsChange(value) {
|
||||
this.replacePage()
|
||||
},
|
||||
getData(row) {
|
||||
getData(row, standardList) {
|
||||
this.selectedRowKeys = []
|
||||
this.selectedRowKeysData = []
|
||||
this.standardList = JSON.parse(JSON.stringify(standardList))
|
||||
if (this.standardList && this.standardList.length > 0) {
|
||||
this.standardList.forEach(val => {
|
||||
this.selectedRowKeys.push(JSON.stringify(val))
|
||||
})
|
||||
this.selectedRowKeysData = this.standardList
|
||||
}
|
||||
this.total = 0
|
||||
this.dataList = []
|
||||
this.standData = row
|
||||
@@ -169,15 +179,16 @@
|
||||
this.queryParam.info_id = this.sarFileSplitInfoList && this.sarFileSplitInfoList.length > 0 ? this.sarFileSplitInfoList[0].id : ''
|
||||
this.visible = true
|
||||
if (this.queryParam.info_id) {
|
||||
this.pageNo = 1
|
||||
this.replacePage()
|
||||
}
|
||||
},
|
||||
getRowList(value) {
|
||||
if (value && value.itemId) {
|
||||
this.selectedRowKeys = this.selectedRowKeys.filter(res=>{
|
||||
return value.itemId != res
|
||||
this.selectedRowKeys = this.selectedRowKeys.filter(res => {
|
||||
return !res.includes(value.itemId)
|
||||
})
|
||||
this.selectedRowKeysData = this.selectedRowKeysData.filter(res=>{
|
||||
this.selectedRowKeysData = this.selectedRowKeysData.filter(res => {
|
||||
return value.itemId != res.id
|
||||
})
|
||||
}
|
||||
@@ -232,15 +243,23 @@
|
||||
},
|
||||
handleSubmit() {
|
||||
if (this.selectedRowKeys && this.selectedRowKeys.length > 0) {
|
||||
this.$emit('standardDecompositionSheetForm', this.selectedRowKeysData)
|
||||
this.$emit('standardDecompositionSheetForm', JSON.parse(JSON.stringify(this.selectedRowKeysData)))
|
||||
this.visible = false
|
||||
} else {
|
||||
this.$message.warning(this.$t('PleaseSelectData'))
|
||||
}
|
||||
},
|
||||
onSelectChange(value, record) {
|
||||
console.log(value)
|
||||
this.selectedRowKeysData = []
|
||||
this.selectedRowKeys = value
|
||||
this.selectedRowKeysData = record
|
||||
console.log(this.selectedRowKeys)
|
||||
if (this.selectedRowKeys && this.selectedRowKeys.length > 0) {
|
||||
this.selectedRowKeys.forEach(res => {
|
||||
this.selectedRowKeysData.push(JSON.parse(res))
|
||||
})
|
||||
}
|
||||
// this.selectedRowKeysData = record
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -324,6 +324,7 @@
|
||||
pageNo: this.pageNo,
|
||||
pageSize: this.pageSize,
|
||||
serialNumber: this.$route.query.serialNumber ? this.$route.query.serialNumber : '',
|
||||
flowStatus: this.$route.query.flowStatus ? this.$route.query.flowStatus : '',
|
||||
...queryParam
|
||||
}
|
||||
this.loading = true
|
||||
|
||||
@@ -88,6 +88,7 @@
|
||||
prcClick(row) {
|
||||
// let index = row.taskIds.lastIndexOf(',')
|
||||
// row.taskIds = row.taskIds.slice(0, index)
|
||||
row.router = this.$route.path
|
||||
if (row.prcType == '1') {
|
||||
let newUrl = this.$router.resolve({
|
||||
path: '/handshakeProcess',
|
||||
@@ -100,7 +101,7 @@
|
||||
query: row
|
||||
})
|
||||
window.open(newUrl.href, '_blank')
|
||||
}else if (row.prcType == '6') {
|
||||
} else if (row.prcType == '6') {
|
||||
let newUrl = this.$router.resolve({
|
||||
path: '/evaluationProcess',
|
||||
query: row
|
||||
|
||||
@@ -122,6 +122,11 @@
|
||||
required: true,
|
||||
message: this.$t('publishComment') + this.$t('cannotEmpty'),
|
||||
trigger: 'blur'
|
||||
},
|
||||
{
|
||||
max: 500,
|
||||
message: this.$t('publishComment') + this.$t('cannotExceed') + 500 + this.$t('Characters'),
|
||||
trigger: 'blur'
|
||||
}
|
||||
],
|
||||
replyContent: [
|
||||
@@ -129,6 +134,11 @@
|
||||
required: true,
|
||||
message: this.$t('replyToComments') + this.$t('cannotEmpty'),
|
||||
trigger: 'blur'
|
||||
},
|
||||
{
|
||||
max: 500,
|
||||
message: this.$t('replyToComments') + this.$t('cannotExceed') + 500 + this.$t('Characters'),
|
||||
trigger: 'blur'
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -286,6 +296,7 @@
|
||||
display: inline-block;
|
||||
margin-top: 22px;
|
||||
margin-left: 40px;
|
||||
word-break: break-word;
|
||||
}
|
||||
|
||||
.title-text {
|
||||
@@ -385,10 +396,18 @@
|
||||
}
|
||||
|
||||
.button-text {
|
||||
width: 73px;
|
||||
width: 88px;
|
||||
overflow: hidden;
|
||||
padding: 0 8px;
|
||||
box-sizing: border-box;
|
||||
float: right;
|
||||
}
|
||||
|
||||
::v-deep .button-text span {
|
||||
width: 64px;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
white-space: nowrap;
|
||||
margin-top: 4px;
|
||||
}
|
||||
</style>
|
||||
<style>
|
||||
|
||||
+26
-11
@@ -28,10 +28,12 @@
|
||||
style="margin-left: 20px;float: left"></a-checkbox>
|
||||
<div class="detail-content-header-content">
|
||||
<div class="detail-content-header-content-left"
|
||||
:title="resultData.serialNumberLeft + resultData.fileNameLeft"
|
||||
:class="{'detail-content-header-content-left-active':isDisplay}">
|
||||
{{$t('selectedStandard')}}:{{resultData.serialNumberLeft}} {{resultData.fileNameLeft}}
|
||||
</div>
|
||||
<div class="detail-content-header-content-content"
|
||||
:title="resultData.serialNumberRight + resultData.fileNameRight"
|
||||
:class="{'detail-content-header-content-left-active':isDisplay}">
|
||||
{{$t('selectedStandard')}}:{{resultData.serialNumberRight}} {{resultData.fileNameRight}}
|
||||
</div>
|
||||
@@ -63,11 +65,14 @@
|
||||
<div class="detail-content-left-button" v-html="item.itemsTextRight"></div>
|
||||
</div>
|
||||
<div class="detail-content-bottom">
|
||||
<div class="detail-content-bottom-left" :title="$t('comparisonDifferenceComment')">
|
||||
<div class="detail-content-bottom-left"
|
||||
:class="{'detail-content-bottom-left-text':language == 'en-us' ? true:false}"
|
||||
:title="$t('comparisonDifferenceComment')">
|
||||
<a-icon type="message"/>
|
||||
{{$t('comparisonDifferenceComment')}}:
|
||||
</div>
|
||||
<div class="detail-content-bottom-right">
|
||||
<div class="detail-content-bottom-right"
|
||||
:class="{'detail-content-bottom-right-text':language == 'en-us' ? true:false}">
|
||||
{{item.comment}}
|
||||
</div>
|
||||
</div>
|
||||
@@ -87,8 +92,8 @@
|
||||
<div class="detail-content-content-text">
|
||||
<div class="detail-content-content-text-left"
|
||||
:class="{'detail-content-content-text-dis':isDisplay}">
|
||||
<div class="detail-content-content-text-left-text">
|
||||
{{$t('fullTextComments')}}: {{resultData.comments}}
|
||||
<div class="detail-content-content-text-left-text" :title="resultData.comments">
|
||||
<span>{{$t('fullTextComments')}}:</span> {{resultData.comments}}
|
||||
</div>
|
||||
</div>
|
||||
<div class="detail-content-content-text-right" v-if="!isDisplay">
|
||||
@@ -170,6 +175,7 @@
|
||||
isDisplay: false,
|
||||
fullCheckbox: false,
|
||||
resultData: {},
|
||||
language: '',
|
||||
url: {
|
||||
exportData: '/compare/sarFileCompareItemComment/exportResXls'
|
||||
}
|
||||
@@ -181,6 +187,7 @@
|
||||
} else {
|
||||
this.isDisplay = true
|
||||
}
|
||||
this.language = localStorage.getItem('language') || ''
|
||||
this.getData()
|
||||
},
|
||||
methods: {
|
||||
@@ -307,8 +314,8 @@
|
||||
this.rulesText = {
|
||||
comment: [
|
||||
{
|
||||
max: 300,
|
||||
message: this.$t('fullTextComments') + this.$t('cannotExceed') + 300 + this.$t('Characters'),
|
||||
max: 500,
|
||||
message: this.$t('fullTextComments') + this.$t('cannotExceed') + 500 + this.$t('Characters'),
|
||||
trigger: 'blur'
|
||||
}
|
||||
]
|
||||
@@ -326,8 +333,8 @@
|
||||
this.rulesText = {
|
||||
comment: [
|
||||
{
|
||||
max: 300,
|
||||
message: this.$t('comparativeComments') + this.$t('cannotExceed') + 300 + this.$t('Characters'),
|
||||
max: 500,
|
||||
message: this.$t('comparativeComments') + this.$t('cannotExceed') + 500 + this.$t('Characters'),
|
||||
trigger: 'blur'
|
||||
}
|
||||
]
|
||||
@@ -388,7 +395,7 @@
|
||||
}
|
||||
|
||||
.doc-detail-right {
|
||||
width: 300px;
|
||||
width: 800px;
|
||||
line-height: 68px;
|
||||
/*display: flex;*/
|
||||
text-align: right;
|
||||
@@ -572,6 +579,7 @@
|
||||
font-size: 14px;
|
||||
font-weight: 400;
|
||||
color: #040B29;
|
||||
word-break: break-word;
|
||||
}
|
||||
|
||||
.detail-content-content-text-left-text {
|
||||
@@ -586,8 +594,7 @@
|
||||
-webkit-box-orient: vertical;
|
||||
-webkit-line-clamp: 3;
|
||||
/*! autoprefixer: on;*/
|
||||
text-justify: inter-ideograph;
|
||||
word-break: break-all
|
||||
word-break: break-word;
|
||||
}
|
||||
|
||||
.box-title-text-Remarks {
|
||||
@@ -618,4 +625,12 @@
|
||||
.detail-content-header-content-left-active {
|
||||
width: 50% !important;
|
||||
}
|
||||
|
||||
.detail-content-bottom-left-text {
|
||||
width: 256px;
|
||||
}
|
||||
|
||||
.detail-content-bottom-right-text {
|
||||
width: calc(50% - 256px);
|
||||
}
|
||||
</style>
|
||||
+12
-11
@@ -30,7 +30,7 @@
|
||||
<div class="detail-content" style="padding-bottom: 20px">
|
||||
<div style="width: 100%;height: auto;overflow: hidden">
|
||||
<div class="detail-content-left">
|
||||
<div class="detail-content-left-header">
|
||||
<div class="detail-content-left-header" :title="resultData.serialNumberLeft + resultData.fileNameLeft">
|
||||
{{this.resultData.serialNumberLeft}}
|
||||
{{this.resultData.fileNameLeft}}
|
||||
</div>
|
||||
@@ -56,14 +56,15 @@
|
||||
</div>
|
||||
<div class="detail-content-right">
|
||||
<div class="detail-content-left-header">
|
||||
<span class="detail-content-left-header-text">
|
||||
<span class="detail-content-left-header-text"
|
||||
:title="resultData.serialNumberRight + resultData.fileNameRight">
|
||||
{{this.resultData.serialNumberRight}}
|
||||
{{this.resultData.fileNameRight}}
|
||||
</span>
|
||||
<span class="detail-content-left-header-text-right">
|
||||
<!-- <span style="color: #9B9DA9">相似度:</span>-->
|
||||
<!-- <span style="color: #E83030">98%</span>-->
|
||||
</span>
|
||||
<!-- <span class="detail-content-left-header-text-right">-->
|
||||
<!-- <span style="color: #9B9DA9">相似度:</span>-->
|
||||
<!-- <span style="color: #E83030">98%</span>-->
|
||||
<!-- </span>-->
|
||||
</div>
|
||||
<div class="detail-content-content-left">
|
||||
<a-tree
|
||||
@@ -154,8 +155,8 @@
|
||||
rules: {
|
||||
comment: [
|
||||
{
|
||||
max: 300,
|
||||
message: this.$t('comparativeComments') + this.$t('cannotExceed') + 300 + this.$t('Characters'),
|
||||
max: 500,
|
||||
message: this.$t('comparativeComments') + this.$t('cannotExceed') + 500 + this.$t('Characters'),
|
||||
trigger: 'blur'
|
||||
}
|
||||
]
|
||||
@@ -163,8 +164,8 @@
|
||||
rulesText: {
|
||||
comment: [
|
||||
{
|
||||
max: 300,
|
||||
message: this.$t('fullTextComments') + this.$t('cannotExceed') + 300 + this.$t('Characters'),
|
||||
max: 500,
|
||||
message: this.$t('fullTextComments') + this.$t('cannotExceed') + 500 + this.$t('Characters'),
|
||||
trigger: 'blur'
|
||||
}
|
||||
]
|
||||
@@ -578,7 +579,7 @@
|
||||
}
|
||||
|
||||
.detail-content-left-header-text {
|
||||
width: calc(100% - 200px);
|
||||
width: 100%;
|
||||
white-space: nowrap;
|
||||
overflow: hidden;
|
||||
text-overflow: ellipsis;
|
||||
|
||||
+14
-10
@@ -20,8 +20,8 @@
|
||||
<div class="title-text" :title="$t('standard')">
|
||||
<span>{{$t('standard')}}</span>
|
||||
</div>
|
||||
<j-input class="box-input" :placeholder="$t('PleaseEnter')+$t('standard')"
|
||||
v-model="queryParamLeft.serialNumber"></j-input>
|
||||
<a-input class="box-input" :placeholder="$t('PleaseEnter')+$t('standard')"
|
||||
v-model="queryParamLeft.serialNumber"></a-input>
|
||||
</div>
|
||||
</a-col>
|
||||
<a-col :md="8" :sm="8">
|
||||
@@ -29,8 +29,8 @@
|
||||
<div class="title-text" :title="$t('title')">
|
||||
<span>{{$t('title')}}</span>
|
||||
</div>
|
||||
<j-input class="box-input" :placeholder="$t('PleaseEnter')+$t('title')"
|
||||
v-model="queryParamLeft.title"></j-input>
|
||||
<a-input class="box-input" :placeholder="$t('PleaseEnter')+$t('title')"
|
||||
v-model="queryParamLeft.title"></a-input>
|
||||
</div>
|
||||
</a-col>
|
||||
<span style="text-align:right;overflow: hidden;" class="table-page-search-submitButtons">
|
||||
@@ -67,7 +67,7 @@
|
||||
/>
|
||||
</div>
|
||||
<div class="box-button-standard">
|
||||
<span class="box-button-standard-left">
|
||||
<span class="box-button-standard-left" :title="$t('selectedStandard')">
|
||||
{{$t('selectedStandard')}}
|
||||
</span>
|
||||
<span class="box-button-standard-right"
|
||||
@@ -84,8 +84,8 @@
|
||||
<div class="title-text" :title="$t('standard')">
|
||||
<span>{{$t('standard')}}</span>
|
||||
</div>
|
||||
<j-input class="box-input" :placeholder="$t('PleaseEnter')+$t('standard')"
|
||||
v-model="queryParamRight.serialNumber"></j-input>
|
||||
<a-input class="box-input" :placeholder="$t('PleaseEnter')+$t('standard')"
|
||||
v-model="queryParamRight.serialNumber"></a-input>
|
||||
</div>
|
||||
</a-col>
|
||||
<a-col :md="8" :sm="8">
|
||||
@@ -93,8 +93,8 @@
|
||||
<div class="title-text" :title="$t('title')">
|
||||
<span>{{$t('title')}}</span>
|
||||
</div>
|
||||
<j-input class="box-input" :placeholder="$t('PleaseEnter')+$t('title')"
|
||||
v-model="queryParamRight.title"></j-input>
|
||||
<a-input class="box-input" :placeholder="$t('PleaseEnter')+$t('title')"
|
||||
v-model="queryParamRight.title"></a-input>
|
||||
</div>
|
||||
</a-col>
|
||||
<span style="text-align:right;overflow: hidden;" class="table-page-search-submitButtons">
|
||||
@@ -131,7 +131,7 @@
|
||||
/>
|
||||
</div>
|
||||
<div class="box-button-standard">
|
||||
<span class="box-button-standard-left">
|
||||
<span class="box-button-standard-left" :title="$t('selectedStandard')">
|
||||
{{$t('selectedStandard')}}
|
||||
</span>
|
||||
<span class="box-button-standard-right"
|
||||
@@ -348,6 +348,7 @@
|
||||
let query = {
|
||||
pageNo: this.pageNoLeft,
|
||||
pageSize: this.pageSizeLeft,
|
||||
fileId:'1',
|
||||
...queryParam
|
||||
}
|
||||
this.loadingLeft = true
|
||||
@@ -371,6 +372,7 @@
|
||||
let query = {
|
||||
pageNo: this.pageNoRight,
|
||||
pageSize: this.pageSizeRight,
|
||||
fileId:'1',
|
||||
...queryParam
|
||||
}
|
||||
this.loadingRight = true
|
||||
@@ -514,6 +516,8 @@
|
||||
.box-button-standard-left {
|
||||
width: 111px;
|
||||
height: 46px;
|
||||
padding: 0 6px;
|
||||
box-sizing: border-box;
|
||||
display: inline-block;
|
||||
border: 1px solid #CED0D8;
|
||||
border-right: none;
|
||||
|
||||
@@ -57,7 +57,7 @@
|
||||
size="middle"
|
||||
:loading="loading"
|
||||
:pagination="false"
|
||||
:scroll="{x: '100%'}"
|
||||
:scroll="{x: '100%',y:'calc(100vh - 280px)'}"
|
||||
rowKey="id"
|
||||
:data-source="dataSource"
|
||||
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
|
||||
@@ -78,6 +78,18 @@
|
||||
v-if="record.createBy == userInfoQuery.username && record.releaseState == 'draft'"
|
||||
@click="deleteData(record)">{{$t('delete')}}</a>
|
||||
</span>
|
||||
<span slot="serialNumberRight" :title="text" slot-scope="text,record">
|
||||
<a @click="serialNumberRightClick(record)">{{text}}</a>
|
||||
</span>
|
||||
<span slot="serialNumberLeft" :title="text" slot-scope="text,record">
|
||||
<a @click="serialNumberLeftClick(record)">{{text}}</a>
|
||||
</span>
|
||||
<span slot="fileNameLeft" :title="text" slot-scope="text,record">
|
||||
<a @click="fileNameLeftClick(record)">{{text}}</a>
|
||||
</span>
|
||||
<span slot="fileNameRight" :title="text" slot-scope="text,record">
|
||||
<a @click="fileNameRightClick(record)">{{text}}</a>
|
||||
</span>
|
||||
</a-table>
|
||||
<div class="page" v-if="dataSource && dataSource.length > 0">
|
||||
<a-pagination
|
||||
@@ -96,8 +108,9 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { getAction, postAction, deleteAction } from '@/api/manage'
|
||||
import { getAction, postAction, deleteAction, downloadFile } from '@/api/manage'
|
||||
import { mapGetters } from 'vuex'
|
||||
import { Base64 } from 'js-base64'
|
||||
|
||||
export default {
|
||||
name: 'index',
|
||||
@@ -112,6 +125,7 @@
|
||||
loading: false,
|
||||
dataSource: [],
|
||||
selectedRowKeys: [],
|
||||
downLoadFileUrl: window._CONFIG['domianPreviewURL'] + '/sys/common/download',
|
||||
total: 0,
|
||||
pageSize: 10,
|
||||
pageNo: 1,
|
||||
@@ -123,13 +137,17 @@
|
||||
title: this.$t('standard') + 1,
|
||||
align: 'center',
|
||||
dataIndex: 'serialNumberLeft',
|
||||
width: 170
|
||||
width: 170,
|
||||
ellipsis: true,
|
||||
scopedSlots: { customRender: 'serialNumberLeft' }
|
||||
},
|
||||
{
|
||||
title: this.$t('title') + 1,
|
||||
align: 'center',
|
||||
dataIndex: 'titleLeft',
|
||||
width: 170
|
||||
width: 170,
|
||||
ellipsis: true,
|
||||
scopedSlots: { customRender: 'serialNumberLeft' }
|
||||
},
|
||||
{
|
||||
title: this.$t('TextStatus'),
|
||||
@@ -143,18 +161,23 @@
|
||||
align: 'center',
|
||||
width: 270,
|
||||
ellipsis: true,
|
||||
dataIndex: 'fileNameLeft'
|
||||
dataIndex: 'fileNameLeft',
|
||||
scopedSlots: { customRender: 'fileNameLeft' }
|
||||
},
|
||||
{
|
||||
title: this.$t('standard') + 2,
|
||||
align: 'center',
|
||||
dataIndex: 'serialNumberRight',
|
||||
ellipsis: true,
|
||||
scopedSlots: { customRender: 'serialNumberRight' },
|
||||
width: 170
|
||||
},
|
||||
{
|
||||
title: this.$t('title') + 2,
|
||||
align: 'center',
|
||||
dataIndex: 'titleRight',
|
||||
scopedSlots: { customRender: 'serialNumberRight' },
|
||||
ellipsis: true,
|
||||
width: 170
|
||||
},
|
||||
{
|
||||
@@ -169,7 +192,8 @@
|
||||
align: 'center',
|
||||
width: 270,
|
||||
ellipsis: true,
|
||||
dataIndex: 'fileNameRight'
|
||||
dataIndex: 'fileNameRight',
|
||||
scopedSlots: { customRender: 'fileNameRight' }
|
||||
},
|
||||
{
|
||||
title: this.$t('releaseSituation'),
|
||||
@@ -189,7 +213,7 @@
|
||||
title: this.$t('operation'),
|
||||
align: 'center',
|
||||
fixed: 'right',
|
||||
width: 260,
|
||||
width: 310,
|
||||
scopedSlots: { customRender: 'operation' }
|
||||
}
|
||||
]
|
||||
@@ -330,10 +354,13 @@
|
||||
window.open(newUrl.href, '_blank')
|
||||
},
|
||||
initiatingProcessClick() {
|
||||
let newUrl = this.$router.resolve({
|
||||
path: '/initiateDocumentComparison'
|
||||
this.$router.push({
|
||||
path:'/initiateDocumentComparison'
|
||||
})
|
||||
window.open(newUrl.href, '_blank')
|
||||
// let newUrl = this.$router.resolve({
|
||||
// path: '/initiateDocumentComparison'
|
||||
// })
|
||||
// window.open(newUrl.href, '_blank')
|
||||
},
|
||||
deleteData(val) {
|
||||
let _this = this
|
||||
@@ -350,6 +377,58 @@
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
serialNumberRightClick(row) {
|
||||
let newUrl = this.$router.resolve({
|
||||
path: '/docManage/library/detail',
|
||||
query: {
|
||||
id: row.fileKeyRight
|
||||
}
|
||||
})
|
||||
window.open(newUrl.href, '_blank')
|
||||
},
|
||||
serialNumberLeftClick(row) {
|
||||
let newUrl = this.$router.resolve({
|
||||
path: '/docManage/library/detail',
|
||||
query: {
|
||||
id: row.fileKeyLeft
|
||||
}
|
||||
})
|
||||
window.open(newUrl.href, '_blank')
|
||||
},
|
||||
fileNameLeftClick(row) {
|
||||
let fileName = row.fileNameLeft
|
||||
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=' + row.fileIdLeft + '&userName=' + this.userInfo().username))
|
||||
} else if (fileSuffix === '.docx') {
|
||||
let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadFileUrl + '/' + row.fileIdLeft + fileSuffix)
|
||||
window.open(url, '_blank')
|
||||
} else if (fileSuffix === '.xlsx' || fileSuffix === '.xls') {
|
||||
let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadFileUrl + '/' + row.fileIdLeft + fileSuffix)
|
||||
window.open(url, '_blank')
|
||||
} else {
|
||||
downloadFile('/sys/common/downLoadFile', row.fileNameLeft, { id: row.fileIdLeft })
|
||||
}
|
||||
},
|
||||
fileNameRightClick(row) {
|
||||
let fileName = row.fileNameRight
|
||||
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=' + row.fileIdRight + '&userName=' + this.userInfo().username))
|
||||
} else if (fileSuffix === '.docx') {
|
||||
let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadFileUrl + '/' + row.fileIdRight + fileSuffix)
|
||||
window.open(url, '_blank')
|
||||
} else if (fileSuffix === '.xlsx' || fileSuffix === '.xls') {
|
||||
let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadFileUrl + '/' + row.fileIdRight + fileSuffix)
|
||||
window.open(url, '_blank')
|
||||
} else {
|
||||
downloadFile('/sys/common/downLoadFile', row.fileNameRight, { id: row.fileIdRight })
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -100,8 +100,8 @@
|
||||
v-if="record.createBy == userInfoQuery.username && record.releaseCondition == 'draft'"
|
||||
@click="deleteData(record)">{{$t('delete')}}</a>
|
||||
</span>
|
||||
<span slot="title" slot-scope="text,record" :title="text">
|
||||
{{ text && text.length > 15 ? text.slice(0, 14) + '...' : text }}
|
||||
<span slot="standardTitle" slot-scope="text,record" :title="text">
|
||||
{{ text}}
|
||||
</span>
|
||||
<span slot="translationLanguage" slot-scope="text,record"
|
||||
:title="record.sourceLanguage_dictText +' -- '+record.targetLanguage_dictText">
|
||||
@@ -150,7 +150,7 @@
|
||||
},
|
||||
toggleSearchStatus: false,
|
||||
loading: false,
|
||||
dataSource: [{}],
|
||||
dataSource: [],
|
||||
selectedRowKeys: [],
|
||||
total: 0,
|
||||
pageSize: 10,
|
||||
@@ -164,14 +164,16 @@
|
||||
align: 'center',
|
||||
dataIndex: 'serialNumber',
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'title' }
|
||||
ellipsis: true,
|
||||
scopedSlots: { customRender: 'standardTitle' }
|
||||
},
|
||||
{
|
||||
title: this.$t('title'),
|
||||
align: 'center',
|
||||
dataIndex: 'title',
|
||||
width: 170,
|
||||
scopedSlots: { customRender: 'title' }
|
||||
ellipsis: true,
|
||||
scopedSlots: { customRender: 'standardTitle' }
|
||||
},
|
||||
{
|
||||
title: this.$t('TextStatus'),
|
||||
@@ -254,7 +256,7 @@
|
||||
this.pageNo = page
|
||||
this.getList()
|
||||
},
|
||||
SizeChange(page,pageSize) {
|
||||
SizeChange(page, pageSize) {
|
||||
this.pageNo = 1
|
||||
this.pageSize = pageSize
|
||||
this.getList()
|
||||
|
||||
@@ -40,12 +40,12 @@
|
||||
<span v-else :title="title">
|
||||
{{title && title.length > 18?title.slice(0,17)+'...':title}}
|
||||
</span>
|
||||
<template #overlay >
|
||||
<template #overlay v-if='manager'>
|
||||
<a-menu @click="({ key: menuKey }) => onContextMenuClick(treeKey, menuKey, record)">
|
||||
<a-menu-item key="1" @click="orgAdd" v-has="'externalReports:folder'">{{$t('Addingfolder')}}</a-menu-item>
|
||||
<a-menu-item key="4" @click="orgAdds" v-has="'externalReports:folder'" v-if="deleteNode">{{$t('Addingsubfolders')}}</a-menu-item>
|
||||
<a-menu-item key="2" @click="orgEdit" v-has="'externalReports:folder'">{{$t('Editfolder')}}</a-menu-item>
|
||||
<a-menu-item key="3" @click="orgDelete" v-has="'externalReports:folder'">{{$t('Deletefolders')}}</a-menu-item>
|
||||
<a-menu-item key="1" @click="orgAdd" >{{$t('Addingfolder')}}</a-menu-item>
|
||||
<a-menu-item key="4" @click="orgAdds" v-if="deleteNode">{{$t('Addingsubfolders')}}</a-menu-item>
|
||||
<a-menu-item key="2" @click="orgEdit" >{{$t('Editfolder')}}</a-menu-item>
|
||||
<a-menu-item key="3" @click="orgDelete" >{{$t('Deletefolders')}}</a-menu-item>
|
||||
|
||||
</a-menu>
|
||||
</template>
|
||||
@@ -191,7 +191,7 @@
|
||||
:title="$t('Foldername')">{{$t('Foldername')}}</span>
|
||||
</div>
|
||||
<a-form-model-item prop="folderName" style='width: 72%'>
|
||||
<a-input v-model="form.folderName" :min="1" :max="100" style='width: 130%' class="box-input add-input" :placeholder="$t('PleaseEnter')+$t('Foldername')" />
|
||||
<a-input v-model.trim="form.folderName" :min="1" :max="100" style='width: 130%' class="box-input add-input" :placeholder="$t('PleaseEnter')+$t('Foldername')" />
|
||||
</a-form-model-item>
|
||||
</div>
|
||||
</a-col>
|
||||
@@ -240,7 +240,7 @@
|
||||
:title="$t('Folderorder')">{{$t('Folderorder')}}</span>
|
||||
</div>
|
||||
<a-form-model-item class="itemModel" prop="orderId">
|
||||
<a-input-number v-model="form.orderId" :min="1" :max="9999" class="box-input add-input"
|
||||
<a-input-number v-model.trim="form.orderId" :min="1" :max="9999" class="box-input add-input"
|
||||
:placeholder="$t('PleaseEnter')+$t('Folderorder')" :formatter="limitNumber"
|
||||
:parser="limitNumber" />
|
||||
<!-- <a-input-number v-model="rowCount" :min="1" :placeholder="$t('pleaseEnter')+$t('numberRows')" :formatter="limitNumber" :parser="limitNumber" />-->
|
||||
@@ -296,7 +296,9 @@ export default {
|
||||
pageSize: 10,
|
||||
pageNo: 1,
|
||||
disabled:false,
|
||||
manager:false,
|
||||
total: 0,
|
||||
addSub:true,
|
||||
tableData: [],
|
||||
selectedRowKeys: [],
|
||||
dataSource: [],
|
||||
@@ -503,8 +505,9 @@ export default {
|
||||
getAction(`extRepo/extRepoFolder/list`, {}).then(res => {
|
||||
if (res.success) {
|
||||
// this.data = this.toTree(res.result)
|
||||
this.data = res.result
|
||||
this.data = res.result.list
|
||||
this.menuId = this.data[0].key
|
||||
this.manager = res.result.manager
|
||||
console.log(this.menuId)
|
||||
let queryParam = {
|
||||
supFolder: this.menuId
|
||||
@@ -613,6 +616,7 @@ export default {
|
||||
this.form = {}
|
||||
let supFolder = ''
|
||||
this.supFolder = this.nodeItem.key
|
||||
this.addSub = false
|
||||
this.menuRightVisible = true
|
||||
|
||||
},
|
||||
@@ -622,6 +626,7 @@ export default {
|
||||
this.form = {}
|
||||
let supFolder = ''
|
||||
this.supFolder = this.nodeItem.key
|
||||
this.addSub = true
|
||||
this.menuRightVisible = true
|
||||
},
|
||||
//树形修改
|
||||
@@ -680,6 +685,7 @@ export default {
|
||||
if (!this.isEdit) {
|
||||
let params = {
|
||||
supFolder: this.supFolder,
|
||||
addSub: this.addSub,
|
||||
...this.form
|
||||
}
|
||||
this.$refs.ruleForm.validate(valid => {
|
||||
|
||||
@@ -41,7 +41,7 @@
|
||||
},
|
||||
columns: [
|
||||
{
|
||||
title: this.$t('operationNode'),
|
||||
title: this.$t('OperationNode'),
|
||||
dataIndex: 'name',
|
||||
align: 'center',
|
||||
width:'20%',
|
||||
@@ -66,7 +66,7 @@
|
||||
width:'20%',
|
||||
},
|
||||
{
|
||||
title: this.$t('operationTime'),
|
||||
title: this.$t('OperationTime'),
|
||||
dataIndex: 'createTime',
|
||||
align: 'center',
|
||||
width:'20%',
|
||||
|
||||
@@ -43,7 +43,7 @@
|
||||
v-if="formInline.dataList.length > 1 && (formInline.dataList.length - 1) == index && !disabled"
|
||||
type="minus-circle"/>
|
||||
</div>
|
||||
<a-row :gutter="24">
|
||||
<a-row :gutter="24" v-if="!disabled">
|
||||
<a-col :span="12">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
@@ -87,7 +87,7 @@
|
||||
</div>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="24">
|
||||
<a-row :gutter="24" v-if="!disabled">
|
||||
<a-col :span="12">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
@@ -113,6 +113,48 @@
|
||||
</div>
|
||||
</a-col>
|
||||
</a-row>
|
||||
|
||||
<a-row :gutter="24" v-if="disabled">
|
||||
<a-col :span="24">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<span class="title-text-text" :title="$t('relevantSections')">{{$t('relevantSections')}}</span>
|
||||
</div>
|
||||
<div class="title-text-right" :class="{'title-text-right-text':disabled}" :title="item.relatedSection">
|
||||
{{item.relatedSection}}
|
||||
</div>
|
||||
</div>
|
||||
</a-col>
|
||||
<a-col :span="24">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<span class="title-text-text"
|
||||
:title="$t('problemDescription')">{{$t('problemDescription')}}</span>
|
||||
</div>
|
||||
<div class="title-text-right" :class="{'title-text-right-text':disabled}" :title="item.issueOrSuggest">
|
||||
{{item.issueOrSuggest}}
|
||||
</div>
|
||||
</div>
|
||||
</a-col>
|
||||
</a-row>
|
||||
<a-row :gutter="24" v-if="disabled">
|
||||
<a-col :span="12">
|
||||
<div class="box-title-text">
|
||||
<div class="title-text">
|
||||
<span class="title-text-text" :title="$t('enclosure')">{{$t('enclosure')}}</span>
|
||||
</div>
|
||||
<div class="title-text-right">
|
||||
<span style="color: #21c9cc;cursor: pointer"
|
||||
v-if="item.accessoryFile" @click="viewUploadedFilesClick(item.accessoryFile)">
|
||||
{{$t('viewFile')}}
|
||||
</span>
|
||||
<span v-else>
|
||||
--
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
</a-col>
|
||||
</a-row>
|
||||
</div>
|
||||
<div class="box-text" style="margin-top: 10px" v-if="disabled">
|
||||
<div class="header-text">
|
||||
@@ -395,4 +437,10 @@
|
||||
margin-left: 8px;
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.title-text-right-text {
|
||||
overflow: visible;
|
||||
white-space: normal;
|
||||
word-break: break-all;
|
||||
}
|
||||
</style>
|
||||
@@ -10,7 +10,7 @@
|
||||
ref="table"
|
||||
:loading="loading"
|
||||
:pagination="false"
|
||||
:scroll="{x: '100%'}"
|
||||
:scroll="{x: '100%',y:500}"
|
||||
:data-source="dataSource"
|
||||
:columns="columns"
|
||||
>
|
||||
@@ -26,18 +26,21 @@
|
||||
<span slot="nameTechnicalDocument" slot-scope="text,result">
|
||||
<a-input class="box-input"
|
||||
:maxLength="100"
|
||||
v-model="result.technicalFileName"
|
||||
onkeyup="this.value=this.value.replace(/(^\s+)|(\s+$)/g, '')"
|
||||
v-model.trim="result.technicalFileName"
|
||||
:placeholder="$t('PleaseEnter')+$t('nameTechnicalDocument')"/>
|
||||
</span>
|
||||
<span slot="chapter" slot-scope="text,result">
|
||||
<a-textarea :placeholder="$t('pleaseEnter')+$t('chapter')"
|
||||
v-model="result.section"
|
||||
v-model.trim="result.section"
|
||||
onkeyup="this.value=this.value.replace(/(^\s+)|(\s+$)/g, '')"
|
||||
:maxLength="300"
|
||||
:rows="2"/>
|
||||
</span>
|
||||
<span slot="opinion" slot-scope="text,result">
|
||||
<a-textarea :placeholder="$t('pleaseEnter')+$t('opinion')"
|
||||
v-model="result.opinion"
|
||||
v-model.trim="result.opinion"
|
||||
onkeyup="this.value=this.value.replace(/(^\s+)|(\s+$)/g, '')"
|
||||
:maxLength="300"
|
||||
:rows="2"/>
|
||||
</span>
|
||||
@@ -75,7 +78,8 @@
|
||||
</span>
|
||||
<span slot="sponsorFeedback" slot-scope="text,result">
|
||||
<a-textarea :placeholder="$t('pleaseEnter')+$t('sponsorFeedback')"
|
||||
v-model="result.sponsorFeedback"
|
||||
v-model.trim="result.sponsorFeedback"
|
||||
onkeyup="this.value=this.value.replace(/(^\s+)|(\s+$)/g, '')"
|
||||
:maxLength="300"
|
||||
:rows="2"/>
|
||||
</span>
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
loading: false,
|
||||
columns: [
|
||||
{
|
||||
title: this.$t('operationContent'),
|
||||
title: this.$t('OperationContent'),
|
||||
dataIndex: 'taskDefinitionKeyName',
|
||||
align: 'center',
|
||||
width: '25%'
|
||||
@@ -50,7 +50,7 @@
|
||||
width: '25%'
|
||||
},
|
||||
{
|
||||
title: this.$t('operationTime'),
|
||||
title: this.$t('OperationTime'),
|
||||
dataIndex: 'createTime',
|
||||
align: 'center',
|
||||
width: '25%',
|
||||
|
||||
@@ -43,7 +43,7 @@
|
||||
},
|
||||
columns: [
|
||||
{
|
||||
title: this.$t('operationNode'),
|
||||
title: this.$t('OperationNode'),
|
||||
dataIndex: 'name',
|
||||
align: 'left'
|
||||
},
|
||||
|
||||
@@ -308,6 +308,8 @@
|
||||
},
|
||||
completeTask() {
|
||||
let value = JSON.parse(JSON.stringify(this.queryProject))
|
||||
let handlingTime = moment(new Date()).format('YYYY-MM-DD HH:mm:ss')
|
||||
value.operatorTime = handlingTime
|
||||
Object.keys(value).forEach(res => {
|
||||
if (value[res] && value[res] instanceof String) {
|
||||
value[res] = value[res].replace(/\"/g, '“')
|
||||
@@ -325,7 +327,7 @@
|
||||
this.$message.success(this.$t('OperationSuccessful'))
|
||||
this.loading = false
|
||||
this.$router.push({
|
||||
path: '/technologyAssessment'
|
||||
path: this.$route.query.router
|
||||
})
|
||||
} else {
|
||||
this.loading = false
|
||||
|
||||
@@ -89,7 +89,7 @@
|
||||
{
|
||||
title: this.$t('taskDescription'),
|
||||
value: 'taskExplain',
|
||||
type:4,
|
||||
type: 4
|
||||
}
|
||||
// {
|
||||
// title: this.$t('remarks'),
|
||||
@@ -121,7 +121,8 @@
|
||||
lawsOpinionAssessmentResult() {
|
||||
getAction(this.url.list, {
|
||||
lawsOpinionGatherId: this.queryProject.id,
|
||||
actiProcInstId: this.$route.query.prcId
|
||||
actiProcInstId: this.$route.query.prcId,
|
||||
createBy: this.userInfo().username
|
||||
}).then((res) => {
|
||||
if (res.success) {
|
||||
this.feedbackDataList = res.result || []
|
||||
@@ -191,7 +192,7 @@
|
||||
this.$message.success(this.$t('OperationSuccessful'))
|
||||
this.loading = false
|
||||
this.$router.push({
|
||||
path: '/collectionOfRegulatoryOpinions'
|
||||
path: this.$route.query.router
|
||||
})
|
||||
} else {
|
||||
this.loading = false
|
||||
|
||||
@@ -50,8 +50,8 @@
|
||||
selectedRowKeys: [],
|
||||
prcTypeName: {
|
||||
1: this.$t('taskConfirmationProcess'),
|
||||
5:this.$t('collectionOfRegulatoryOpinionsProcess'),
|
||||
6:this.$t('regulatoryTechnologyAssessmentProcess')
|
||||
5: this.$t('collectionOfRegulatoryOpinionsProcess'),
|
||||
6: this.$t('regulatoryTechnologyAssessmentProcess')
|
||||
},
|
||||
columns: [
|
||||
{
|
||||
@@ -92,13 +92,10 @@
|
||||
},
|
||||
{
|
||||
title: this.$t('createTime'),
|
||||
dataIndex: 'createTime',
|
||||
dataIndex: 'creatTime',
|
||||
align: 'center',
|
||||
width: 180,
|
||||
ellipsis: true,
|
||||
customRender: function(t, r, index) {
|
||||
return moment(t).format('YYYY-MM-DD HH:mm:ss')
|
||||
}
|
||||
ellipsis: true
|
||||
},
|
||||
{
|
||||
title: this.$t('cutoffTime'),
|
||||
@@ -157,6 +154,7 @@
|
||||
dealWith(row) {
|
||||
// let index = row.taskIds.lastIndexOf(',')
|
||||
// row.taskIds = row.taskIds.slice(0, index)
|
||||
row.router = this.$route.path
|
||||
if (row.prcType == '1') {
|
||||
let newUrl = this.$router.resolve({
|
||||
path: '/handshakeProcess',
|
||||
|
||||
@@ -675,7 +675,9 @@
|
||||
this.handlePreservation()
|
||||
}
|
||||
}, 10000)
|
||||
this.paramsManifest = JSON.parse(localStorage.getItem('paramsManifest'))
|
||||
// this.paramsManifest = JSON.parse(localStorage.getItem('paramsManifest'))
|
||||
this.paramsManifest = this.$route.query
|
||||
// document.title = `${this.paramsManifest.title}-` + this.$t('ParameteItemCollectionList')
|
||||
document.title = `${this.paramsManifest.title}-` + this.$t('ParameteItemCollectionList')
|
||||
},
|
||||
methods: {
|
||||
@@ -1287,7 +1289,7 @@
|
||||
handlePreservation(num) {
|
||||
let _this = this
|
||||
let postDate = []
|
||||
let data = JSON.parse(JSON.stringify(this.dataSource))
|
||||
let data = JSON.parse(JSON.stringify(this.$refs.CollectionTabel.dataSource))
|
||||
let selectedRowKeysValue = []
|
||||
data.forEach(res => {
|
||||
if (res.state == 'Wait Fill' || res.state == '待填写' || res.state == '认证工程师退回' ||
|
||||
|
||||
@@ -252,12 +252,11 @@
|
||||
// 先调取接口判断是否有配置信息
|
||||
getAction(this.url.verifyConfig, { paramsManifestId: item.id }).then((res) => {
|
||||
if (res.result) {
|
||||
localStorage.setItem('paramsManifest', JSON.stringify(item))
|
||||
// localStorage.setItem('paramsManifest', JSON.stringify(item))
|
||||
let newUrl = _this.$router.resolve({
|
||||
path: '/ParameterItemCollection',
|
||||
query: item
|
||||
// projectName:this.$route.query.projectName
|
||||
|
||||
})
|
||||
window.open(newUrl.href, '_blank')
|
||||
} else {
|
||||
|
||||
@@ -12,10 +12,16 @@
|
||||
<a-row :gutter='24'>
|
||||
<a-col :span='9'>
|
||||
<a-form-model-item :label="$t('areaOfResponsibility')">
|
||||
<j-dict-select-tag class="box-input" v-model="formData.dutyTerritory"
|
||||
:placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"
|
||||
:type="'select'"
|
||||
:triggerChange="false" :dictCode="'duty_territory'"/>
|
||||
<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>
|
||||
</a-col>
|
||||
<a-col :span='9'>
|
||||
@@ -99,6 +105,7 @@ export default {
|
||||
loading: false,
|
||||
editId: '',
|
||||
RelatedItemList:[],
|
||||
dutyTerritory:[],
|
||||
columns: [
|
||||
{
|
||||
title: this.$t('areaOfResponsibility'),
|
||||
@@ -180,6 +187,7 @@ export default {
|
||||
mounted() {
|
||||
this.loadData()
|
||||
this.getRelatedItemList()
|
||||
this.getdutyTerritory()
|
||||
},
|
||||
methods: {
|
||||
getRelatedItemList(){
|
||||
@@ -203,7 +211,15 @@ export default {
|
||||
this.$router.push({
|
||||
path: '/collectionOfRegulatoryOpinions',
|
||||
query:{
|
||||
serialNumber:this.item.serialNumber
|
||||
serialNumber:this.item.serialNumber,
|
||||
gatherResult:'Completed'
|
||||
}
|
||||
})
|
||||
},
|
||||
getdutyTerritory(){
|
||||
getAction('sys/dict/getDictItems/duty_territory', { }).then((res) => {
|
||||
if (res.success) {
|
||||
this.dutyTerritory = res.result
|
||||
}
|
||||
})
|
||||
},
|
||||
@@ -213,7 +229,8 @@ export default {
|
||||
this.$router.push({
|
||||
path: '/technologyAssessment',
|
||||
query:{
|
||||
serialNumber:this.item.serialNumber
|
||||
serialNumber:this.item.serialNumber,
|
||||
flowStatus:'Completed'
|
||||
}
|
||||
})
|
||||
},
|
||||
@@ -242,7 +259,7 @@ export default {
|
||||
id:this.paramsManifestId,
|
||||
...this.formData
|
||||
}
|
||||
downloadFile('/project/lawsComplianceBoard/exportComplianceResultDetail', this.$t('complianceResults')+'.xls', query, this.Deselect)
|
||||
downloadFile('/project/lawsComplianceBoard/exportComplianceResultDetail', this.item.serialNumber +'.xls', query, this.Deselect)
|
||||
},
|
||||
searchQuery() {
|
||||
this.loadData()
|
||||
|
||||
@@ -72,22 +72,29 @@
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<!-- calc(100vh - 130px)-->
|
||||
<a-table
|
||||
ref="table"
|
||||
size="middle"
|
||||
:loading="loading"
|
||||
:pagination="false"
|
||||
:scroll="{x: '100%',y:'calc(100vh - 130px)'}"
|
||||
class="table"
|
||||
rowKey="id"
|
||||
:data-source="dataSource"
|
||||
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
|
||||
:pagination="false"
|
||||
:scroll="{x: '100%',y:'calc(100vh - 155px)'}"
|
||||
:data-source="dataSource"
|
||||
:loading="loading"
|
||||
:columns="columns"
|
||||
@change="tableOnChange"
|
||||
>
|
||||
<span slot="projectName" slot-scope="text,record" :title="text">
|
||||
<span slot="technicalField" slot-scope="text,record" :title="text">
|
||||
<a @click="entryNameClick(record)">
|
||||
{{ text && text.length > 15 ? text.slice(0, 14) + '...' : text }}
|
||||
{{ text && text.length > 23 ? text.slice(0, 22) + '...' : text }}
|
||||
</a>
|
||||
</span>
|
||||
<span slot="standard" slot-scope="text,record" :title="text">
|
||||
{{ text && text.length > 15 ? text.slice(0, 14) + '...' : text }}
|
||||
</span>
|
||||
<!-- <span slot="serialNumber" slot-scope="text,record" :title="text">-->
|
||||
<!-- {{ text && text.length > 15 ? text.slice(0, 14) + '...' : text }}-->
|
||||
<!-- </span>-->
|
||||
<span slot="operation" slot-scope="text,record">
|
||||
<a class="text-operation" @click="handlecody(record)">{{$t('ViewConformanceResults')}}</a>
|
||||
</span>
|
||||
@@ -161,13 +168,15 @@ export default {
|
||||
title: this.$t('standard'),
|
||||
align: 'center',
|
||||
dataIndex: 'serialNumber',
|
||||
width: 180
|
||||
width: 180,
|
||||
scopedSlots: { customRender: 'standard' }
|
||||
},
|
||||
{
|
||||
title: this.$t('title'),
|
||||
align: 'center',
|
||||
dataIndex: 'title',
|
||||
width: 180
|
||||
width: 180,
|
||||
scopedSlots: { customRender: 'standard' }
|
||||
},
|
||||
{
|
||||
title: this.$t('status'),
|
||||
@@ -183,7 +192,9 @@ export default {
|
||||
{
|
||||
title: this.$t('technicalField'),
|
||||
align: 'center',
|
||||
dataIndex: 'technologyTerritory_dicText'
|
||||
dataIndex: 'technologyTerritory_dicText',
|
||||
width: 350,
|
||||
scopedSlots: { customRender: 'technicalField' }
|
||||
},
|
||||
{
|
||||
title: this.$t('RegulatoryProcessEvaluationResults'),
|
||||
@@ -254,7 +265,11 @@ export default {
|
||||
this.toggleSearchStatus = !this.toggleSearchStatus
|
||||
},
|
||||
onSelectChange(value) {
|
||||
this.selectedRowKeys = value
|
||||
this.selectedRowKeysArray = this.selectedRowKeys.join(',')
|
||||
console.log(this.selectedRowKeysArray)
|
||||
},
|
||||
tableOnChange(val) {
|
||||
},
|
||||
deriveconformanceresults(){
|
||||
let query = {
|
||||
|
||||
Reference in New Issue
Block a user