Merge remote-tracking branch 'origin/dev_third_stage' into dev_third_stage

This commit is contained in:
wangzhijiang
2022-08-16 09:45:28 +08:00
17 changed files with 551 additions and 69 deletions
@@ -824,21 +824,21 @@ CREATE TABLE `sar_file_compare_res_comment` (
PRIMARY KEY (`id`) PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
-- 法规技术评估-条款信息评估结果表 字段增加长度 2022-08-08 -- 法规技术评估-条款信息评估结果表 字段增加长度 2022-08-11 已同步生产环境
ALTER TABLE `laws_weilai`.`laws_technology_evaluation_item_result` ALTER TABLE `laws_weilai`.`laws_technology_evaluation_item_result`
MODIFY COLUMN `technical_file_name` varchar(2000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '技术文件名称' AFTER `evaluation_methods`, MODIFY COLUMN `technical_file_name` varchar(2000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '技术文件名称' AFTER `evaluation_methods`,
MODIFY COLUMN `section` varchar(2000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '章节' AFTER `technical_file_name`; MODIFY COLUMN `section` varchar(2000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '章节' AFTER `technical_file_name`;
-- 问题知识库 字段长度修改 2022-08-08 -- 问题知识库 字段长度修改 2022-08-11 已同步生产环境
ALTER TABLE `laws_weilai`.`problem_knowledge_base` ALTER TABLE `laws_weilai`.`problem_knowledge_base`
MODIFY COLUMN `buss_document_library_id` varchar(4000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '文档库id' AFTER `target_market`, MODIFY COLUMN `buss_document_library_id` varchar(4000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '文档库id' AFTER `target_market`,
MODIFY COLUMN `stand_number` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '标准编号' AFTER `buss_document_library_id`, MODIFY COLUMN `stand_number` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '标准编号' AFTER `buss_document_library_id`,
MODIFY COLUMN `stand_title` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '标准标题' AFTER `stand_number`; MODIFY COLUMN `stand_title` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '标准标题' AFTER `stand_number`;
-- 问题知识库 字段类型修改 2022-08-09 -- 问题知识库 字段类型修改 2022-08-11 已同步生产环境
ALTER TABLE `laws_weilai`.`problem_knowledge_base` ALTER TABLE `laws_weilai`.`problem_knowledge_base`
MODIFY COLUMN `content` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '内容(正文)' AFTER `stand_title`; MODIFY COLUMN `content` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '内容(正文)' AFTER `stand_title`;
-- 国家与国旗关系表 2022-08-09 -- 国家与国旗关系表 2022-08-11 已同步生产环境
CREATE TABLE `laws_weilai`.`country_national_flag` ( CREATE TABLE `laws_weilai`.`country_national_flag` (
`id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, `id` varchar(36) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL,
`create_by` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '创建人', `create_by` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '创建人',
@@ -852,7 +852,7 @@ CREATE TABLE `laws_weilai`.`country_national_flag` (
`national_flag_url` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '国旗url', `national_flag_url` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '国旗url',
PRIMARY KEY (`id`) USING BTREE PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '国家与国旗中间表' ROW_FORMAT = Dynamic; ) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '国家与国旗中间表' ROW_FORMAT = Dynamic;
-- 初始化数据 2022-08-10 -- 初始化数据 2022-08-11 已同步生产环境
INSERT INTO `laws_weilai`.`country_national_flag` (`id`, `create_by`, `create_time`, `update_by`, `update_time`, `sys_org_code`, `country_name_cn`, `country_name_en`, `national_flag_id`, `national_flag_url`) VALUES ('1', NULL, NULL, NULL, NULL, NULL, '欧盟', 'EU', NULL, '/jero-boot/nationalFlag/EU.png'); INSERT INTO `laws_weilai`.`country_national_flag` (`id`, `create_by`, `create_time`, `update_by`, `update_time`, `sys_org_code`, `country_name_cn`, `country_name_en`, `national_flag_id`, `national_flag_url`) VALUES ('1', NULL, NULL, NULL, NULL, NULL, '欧盟', 'EU', NULL, '/jero-boot/nationalFlag/EU.png');
INSERT INTO `laws_weilai`.`country_national_flag` (`id`, `create_by`, `create_time`, `update_by`, `update_time`, `sys_org_code`, `country_name_cn`, `country_name_en`, `national_flag_id`, `national_flag_url`) VALUES ('10', NULL, NULL, NULL, NULL, NULL, '美国', 'US', NULL, '/jero-boot/nationalFlag/US.png'); INSERT INTO `laws_weilai`.`country_national_flag` (`id`, `create_by`, `create_time`, `update_by`, `update_time`, `sys_org_code`, `country_name_cn`, `country_name_en`, `national_flag_id`, `national_flag_url`) VALUES ('10', NULL, NULL, NULL, NULL, NULL, '美国', 'US', NULL, '/jero-boot/nationalFlag/US.png');
INSERT INTO `laws_weilai`.`country_national_flag` (`id`, `create_by`, `create_time`, `update_by`, `update_time`, `sys_org_code`, `country_name_cn`, `country_name_en`, `national_flag_id`, `national_flag_url`) VALUES ('11', NULL, NULL, NULL, NULL, NULL, '澳大利亚', 'Australia', NULL, '/jero-boot/nationalFlag/Australia.png'); INSERT INTO `laws_weilai`.`country_national_flag` (`id`, `create_by`, `create_time`, `update_by`, `update_time`, `sys_org_code`, `country_name_cn`, `country_name_en`, `national_flag_id`, `national_flag_url`) VALUES ('11', NULL, NULL, NULL, NULL, NULL, '澳大利亚', 'Australia', NULL, '/jero-boot/nationalFlag/Australia.png');
@@ -867,22 +867,22 @@ INSERT INTO `laws_weilai`.`country_national_flag` (`id`, `create_by`, `create_ti
INSERT INTO `laws_weilai`.`country_national_flag` (`id`, `create_by`, `create_time`, `update_by`, `update_time`, `sys_org_code`, `country_name_cn`, `country_name_en`, `national_flag_id`, `national_flag_url`) VALUES ('8', NULL, NULL, NULL, NULL, NULL, '海湾地区', 'GCC', NULL, '海湾地区.jpg'); INSERT INTO `laws_weilai`.`country_national_flag` (`id`, `create_by`, `create_time`, `update_by`, `update_time`, `sys_org_code`, `country_name_cn`, `country_name_en`, `national_flag_id`, `national_flag_url`) VALUES ('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'); INSERT INTO `laws_weilai`.`country_national_flag` (`id`, `create_by`, `create_time`, `update_by`, `update_time`, `sys_org_code`, `country_name_cn`, `country_name_en`, `national_flag_id`, `national_flag_url`) VALUES ('9', NULL, NULL, NULL, NULL, NULL, '阿联酋', 'UAE', NULL, '/jero-boot/nationalFlag/UAE.png');
-- 法规意见收集-评估结果表字段长度调整 2022-08-11 -- 法规意见收集-评估结果表字段长度调整 2022-08-11 已同步生产环境
ALTER TABLE `laws_weilai`.`laws_opinion_assessment_result` 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 `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`; MODIFY COLUMN `issue_or_suggest` varchar(2000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '问题/建议' AFTER `related_section`;
-- 法规技术评估-评估结果表 字段长度调整 2022-08-11 -- 法规技术评估-评估结果表 字段长度调整 2022-08-11 已同步生产环境
ALTER TABLE `laws_weilai`.`laws_technology_evaluation_result` 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 `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`; MODIFY COLUMN `reason` varchar(2000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '理由' AFTER `issue_or_suggest`;
-- 展示区域 英文修改 2022-08-11 -- 展示区域 英文修改 2022-08-11 已同步生产环境
UPDATE `laws_weilai`.`onl_cgform_area` SET `en_name` = 'Relevant Information' WHERE `id` = '1492408622838222850'; UPDATE `laws_weilai`.`onl_cgform_area` SET `en_name` = '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` = 'General Information' WHERE `id` = '1499657602378825729';
UPDATE `laws_weilai`.`onl_cgform_area` SET `en_name` = 'Document Files' WHERE `id` = '1499658880093847553'; UPDATE `laws_weilai`.`onl_cgform_area` SET `en_name` = 'Document Files' WHERE `id` = '1499658880093847553';
-- 数据字典 英文修改 2022-08-11 -- 数据字典 英文修改 2022-08-11 已同步生产环境
-- 同步情况 sync_state -- 同步情况 sync_state
UPDATE `laws_weilai`.`sys_dict_item` SET `en_name` = 'No' WHERE `id` = '1507311752583352322'; 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'; UPDATE `laws_weilai`.`sys_dict_item` SET `en_name` = 'Yes' WHERE `id` = '1507311835571851265';
@@ -899,7 +899,7 @@ UPDATE `laws_weilai`.`sys_dict_item` SET `en_name` = 'Development' WHERE `id` =
UPDATE `laws_weilai`.`sys_dict_item` SET `en_name` = 'Production' WHERE `id` = '1513769467044179970'; UPDATE `laws_weilai`.`sys_dict_item` SET `en_name` = 'Production' WHERE `id` = '1513769467044179970';
-- 表字段 英文修改 2022-08-11 -- 表字段 英文修改 2022-08-11 已同步生产环境
-- OCR识别转换记录表 -- 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 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` = 'Conversion Time' WHERE `id` = '85894f5ad04de66ccf45ebd96c97b534';
@@ -917,10 +917,10 @@ UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'Item No.' WHER
UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'Item Name' WHERE `id` = '9e91b704de198ccf2f5fb7297e675404'; UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'Item 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` = 'Item Content' WHERE `id` = '120a92b6d595c2fd68d2b90278357ce4';
UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'Technical Field' WHERE `id` = 'ccf68e6578a0a446a6ac34018f0a477d'; UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'Technical Field' WHERE `id` = 'ccf68e6578a0a446a6ac34018f0a477d';
-- 文档库信息表 2022-08-12 -- 文档库信息表 2022-08-12 已同步生产环境
UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'Standard Type' WHERE `id` = '441588d80cc31ce68fbdf2ce8b36f93c'; UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'Standard Type' WHERE `id` = '441588d80cc31ce68fbdf2ce8b36f93c';
UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'Area' WHERE `id` = '9f82d58f22a12792a53e202d64a39f06'; UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'Area' WHERE `id` = '9f82d58f22a12792a53e202d64a39f06';
-- 参数项收集清单 2022-08-12 -- 参数项收集清单 2022-08-12 已同步生产环境
UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'Para Batch' WHERE `id` = '161c35a16e92682972dd1aeb26151fa2'; UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'Para Batch' WHERE `id` = '161c35a16e92682972dd1aeb26151fa2';
UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'Para Name' WHERE `id` = 'e586bd87d4d826ce3d7d373caf54c6f6'; UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'Para Name' WHERE `id` = 'e586bd87d4d826ce3d7d373caf54c6f6';
UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'Status' WHERE `id` = '9050dc65a7b2fe82927b74a9ef4a4bb4'; UPDATE `laws_weilai`.`onl_cgform_field` SET `db_field_en_name` = 'Status' WHERE `id` = '9050dc65a7b2fe82927b74a9ef4a4bb4';
@@ -44,7 +44,6 @@ public class ProjectLibraryBaseController extends JeroController<ProjectLibraryB
*/ */
@AutoLog(value = "项目库基础表-分页列表查询") @AutoLog(value = "项目库基础表-分页列表查询")
@ApiOperation(value="项目库基础表-分页列表查询", notes="项目库基础表-分页列表查询") @ApiOperation(value="项目库基础表-分页列表查询", notes="项目库基础表-分页列表查询")
@RequiresPermissions("projectLibraryBase:page")
@PostMapping(value = "/page") @PostMapping(value = "/page")
public Result<?> queryPageList(@RequestBody Map<String,Object> params) { public Result<?> queryPageList(@RequestBody Map<String,Object> params) {
IPage<ProjectLibraryBase> pageList= projectLibraryBaseService.queryPageList(params); IPage<ProjectLibraryBase> pageList= projectLibraryBaseService.queryPageList(params);
@@ -41,9 +41,12 @@ import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.io.IOException; import java.io.IOException;
import java.io.OutputStream; import java.io.OutputStream;
import java.text.ParseException;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.Calendar;
import java.util.Date;
import java.util.HashSet; import java.util.HashSet;
import java.util.LinkedList; import java.util.LinkedList;
import java.util.List; import java.util.List;
@@ -127,9 +130,63 @@ public class LawsWarnService {
bussDocumentLibraryEOService.dictItem(sysDictItems, entry, cut, onlCgformFieldListTemp,null); bussDocumentLibraryEOService.dictItem(sysDictItems, entry, cut, onlCgformFieldListTemp,null);
bussDocumentLibraryEOService.treeDictItem(categoryList, entry, treeFieldList, cut,null); bussDocumentLibraryEOService.treeDictItem(categoryList, entry, treeFieldList, cut,null);
} }
//到期前6个月显示红色,到期前12个月显示黄色
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String newCarTime = String.valueOf(record.get("xin1_che1_xing2_shi2_shi1_ri4_qi1"));
String implementTime = String.valueOf(record.get("implement_time"));
String currentTime = sdf.format(new Date());
if(StringUtils.isNotBlank(newCarTime) && !"null".equals(newCarTime)){
try {
if(Integer.parseInt(String.valueOf(parameter.get("flag"))) == 0){
Date newCarTimeDate = sdf.parse(newCarTime);
//当前时间的前6个月
String beforeTimeSix = beforeTime(6,new Date());
String beforeTimeTwelve = beforeTime(12,new Date());
Date parseSix = sdf.parse(beforeTimeSix);
Date parseTwelve = sdf.parse(beforeTimeTwelve);
if(newCarTimeDate.after(new Date()) && newCarTimeDate.before(parseSix)){
record.put("new_colour","red");
}
if(newCarTimeDate.after(parseSix) && newCarTimeDate.before(parseTwelve)){
record.put("new_colour","yellow");
}
}
} catch (ParseException e) {
e.printStackTrace();
}
}
if(StringUtils.isNotBlank(implementTime) && !"null".equals(implementTime)){
try {
if(Integer.parseInt(String.valueOf(parameter.get("flag"))) == 1){
Date newCarTimeDate = sdf.parse(implementTime);
//当前时间的前6个月
String beforeTimeSix = beforeTime(6,new Date());
String beforeTimeTwelve = beforeTime(12,new Date());
Date parseSix = sdf.parse(beforeTimeSix);
Date parseTwelve = sdf.parse(beforeTimeTwelve);
if(newCarTimeDate.after(new Date()) && newCarTimeDate.before(parseSix)){
record.put("implement_colour","red");
}
if(newCarTimeDate.after(parseSix) && newCarTimeDate.before(parseTwelve)){
record.put("implement_colour","yellow");
}
}
} catch (ParseException e) {
e.printStackTrace();
}
}
} }
return infoPage; return infoPage;
} }
private String beforeTime (int month, Date date){
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Calendar calendarBefore = Calendar.getInstance();
calendarBefore.setTime(date);
calendarBefore.add(Calendar.MONTH, month);
Date dateBefore = calendarBefore.getTime();
String beforeTime = sdf.format(dateBefore);
return beforeTime;
}
public void exportExcel(Map<String, Object> map, HttpServletResponse response, HttpServletRequest request) { public void exportExcel(Map<String, Object> map, HttpServletResponse response, HttpServletRequest request) {
String cut = (String) map.get("cut"); String cut = (String) map.get("cut");
+1
View File
@@ -1255,6 +1255,7 @@ module.exports = {
deleteNode:'If there is any file information, the file will be deleted. Are you sure to delete this data?', deleteNode:'If there is any file information, the file will be deleted. Are you sure to delete this data?',
HaveReleased:'Have released', HaveReleased:'Have released',
forward:'Forward', forward:'Forward',
areResponsibilityAreaInformationBatch:'Are you sure you want to modify the responsibility area information in batch',
issuedBy:'Issued by', issuedBy:'Issued by',
pleaseDecompositionStandardOrder:'Please import or bring in at least one decomposition standard order', pleaseDecompositionStandardOrder:'Please import or bring in at least one decomposition standard order',
currentlyTheFirstOneThatCannotMovedUp:'Currently the first one that cannot be moved up', currentlyTheFirstOneThatCannotMovedUp:'Currently the first one that cannot be moved up',
+1
View File
@@ -1357,6 +1357,7 @@ module.exports = {
deleteNode:'若有文件信息将同步删除确认删除该条数据', deleteNode:'若有文件信息将同步删除确认删除该条数据',
HaveReleased:'已发布', HaveReleased:'已发布',
forward:'转发', forward:'转发',
areResponsibilityAreaInformationBatch:'确实是否批量修改责任领域信息',
issuedBy:'发布人', issuedBy:'发布人',
pleaseDecompositionStandardOrder:'请导入或带入至少一条分解标准单', pleaseDecompositionStandardOrder:'请导入或带入至少一条分解标准单',
currentlyTheFirstOneThatCannotMovedUp:'当前已是第一个无法进行上移', currentlyTheFirstOneThatCannotMovedUp:'当前已是第一个无法进行上移',
@@ -1,7 +1,7 @@
<template> <template>
<div> <div>
<div class="box-title-text"> <div class="box-title-text">
<a-input class="box-input" :value="value" @input="indexclick($event)" <a-input class="box-input" :value="value" :title="value" @input="indexclick($event)"
:disabled="isDisabled" :disabled="isDisabled"
:placeholder="!isDisabled?$t('PleaseEnterOrSelect')+query.db_field_txt:query.db_field_txt"/> :placeholder="!isDisabled?$t('PleaseEnterOrSelect')+query.db_field_txt:query.db_field_txt"/>
<a-button v-if="!isDisabled" type="primary" class="button-box" @click="standardClick"> <a-button v-if="!isDisabled" type="primary" class="button-box" @click="standardClick">
@@ -224,7 +224,7 @@
position: absolute; position: absolute;
bottom: 0; bottom: 0;
width: 100%; width: 100%;
z-index:100; z-index: 100;
border-top: 1px solid #e8e8e8; border-top: 1px solid #e8e8e8;
padding: 10px 16px; padding: 10px 16px;
text-align: right; text-align: right;
@@ -10,6 +10,8 @@
</div> </div>
<a-select :placeholder="$t('PleaseSelect')+$t('applicableMarket')" <a-select :placeholder="$t('PleaseSelect')+$t('applicableMarket')"
:disabled="false" :disabled="false"
style="z-index: 100"
:getPopupContainer="triggerNode=> triggerNode.parentNode"
v-model="queryParam.applyMarket"> v-model="queryParam.applyMarket">
<a-select-option v-for="(item, key) in applyMarketList" <a-select-option v-for="(item, key) in applyMarketList"
:key="key" :key="key"
@@ -20,6 +20,7 @@
<span>{{$t('applicableMarket')}}</span> <span>{{$t('applicableMarket')}}</span>
</div> </div>
<a-select class="box-input" <a-select class="box-input"
:getPopupContainer="triggerNode=> triggerNode.parentNode"
:placeholder="$t('PleaseSelect')+$t('applicableMarket')" :placeholder="$t('PleaseSelect')+$t('applicableMarket')"
style="width: 100%" style="width: 100%"
v-model="queryParam.applyMarket"> v-model="queryParam.applyMarket">
@@ -39,6 +40,7 @@
<span>{{$t('releaseStatus')}}</span> <span>{{$t('releaseStatus')}}</span>
</div> </div>
<a-select class="box-input" <a-select class="box-input"
:getPopupContainer="triggerNode=> triggerNode.parentNode"
:placeholder="$t('PleaseSelect')+$t('releaseStatus')" :placeholder="$t('PleaseSelect')+$t('releaseStatus')"
style="width: 100%" style="width: 100%"
v-model="queryParam.releaseStatus"> v-model="queryParam.releaseStatus">
@@ -35,11 +35,11 @@
:placeholder="$t('PleaseSelect')+$t('certificationType')" :placeholder="$t('PleaseSelect')+$t('certificationType')"
:type="'select'" :type="'select'"
:triggerChange="false" :dictCode="'attestation_type'"/> :triggerChange="false" :dictCode="'attestation_type'"/>
<!-- <j-dict-select-tag class="box-input" v-model="formInline.attestationType"--> <!-- <j-dict-select-tag class="box-input" v-model="formInline.attestationType"-->
<!-- @input="handleInput('attestationType')"--> <!-- @input="handleInput('attestationType')"-->
<!-- :placeholder="$t('PleaseSelect')+$t('certificationType')"--> <!-- :placeholder="$t('PleaseSelect')+$t('certificationType')"-->
<!-- :type="'select'"--> <!-- :type="'select'"-->
<!-- :triggerChange="false" dictCode="attestation_type"/>--> <!-- :triggerChange="false" dictCode="attestation_type"/>-->
</a-form-model-item> </a-form-model-item>
</div> </div>
</a-col> </a-col>
@@ -55,11 +55,11 @@
:placeholder="$t('PleaseSelect')+$t('certificationLevel')" :placeholder="$t('PleaseSelect')+$t('certificationLevel')"
:type="'select'" :type="'select'"
:triggerChange="false" :dictCode="'attestation_rank'"/> :triggerChange="false" :dictCode="'attestation_rank'"/>
<!-- <j-dict-select-tag class="box-input" v-model="formInline.attestationRank"--> <!-- <j-dict-select-tag class="box-input" v-model="formInline.attestationRank"-->
<!-- @input="handleInput('attestationRank')"--> <!-- @input="handleInput('attestationRank')"-->
<!-- :placeholder="$t('PleaseSelect')+$t('certificationLevel')"--> <!-- :placeholder="$t('PleaseSelect')+$t('certificationLevel')"-->
<!-- :type="'select'"--> <!-- :type="'select'"-->
<!-- :triggerChange="false" dictCode="attestation_rank"/>--> <!-- :triggerChange="false" dictCode="attestation_rank"/>-->
</a-form-model-item> </a-form-model-item>
</div> </div>
</a-col> </a-col>
@@ -73,11 +73,11 @@
:placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')" :placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"
:type="'select'" :type="'select'"
:triggerChange="false" :dictCode="'duty_territory'"/> :triggerChange="false" :dictCode="'duty_territory'"/>
<!-- <j-dict-select-tag class="box-input" v-model="formInline.dutyTerritory"--> <!-- <j-dict-select-tag class="box-input" v-model="formInline.dutyTerritory"-->
<!-- @input="handleInput('dutyTerritory')"--> <!-- @input="handleInput('dutyTerritory')"-->
<!-- :placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"--> <!-- :placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"-->
<!-- :type="'select'"--> <!-- :type="'select'"-->
<!-- :triggerChange="false" dictCode="duty_territory"/>--> <!-- :triggerChange="false" dictCode="duty_territory"/>-->
</a-form-model-item> </a-form-model-item>
</div> </div>
</a-col> </a-col>
@@ -216,6 +216,13 @@
}) })
}, },
handleOk() { handleOk() {
if (this.formInline.dutyTerritory) {
this.handleOnTwo()
} else {
this.handleOkOne()
}
},
handleOkOne() {
let ids = JSON.parse(JSON.stringify(this.ids)) let ids = JSON.parse(JSON.stringify(this.ids))
let formInline = JSON.parse(JSON.stringify(this.formInline)) let formInline = JSON.parse(JSON.stringify(this.formInline))
Object.keys(formInline).forEach(res => { Object.keys(formInline).forEach(res => {
@@ -240,6 +247,37 @@
} }
}) })
}, },
handleOnTwo() {
let _this = this
this.$confirm({
content: _this.$t('areResponsibilityAreaInformationBatch'),
onOk() {
let ids = JSON.parse(JSON.stringify(_this.ids))
let formInline = JSON.parse(JSON.stringify(_this.formInline))
Object.keys(formInline).forEach(res => {
if (formInline[res] instanceof Array) {
formInline[res] = formInline[res].join(',')
}
})
let query = {
ids: ids.join(','),
...formInline
}
_this.confirmLoading = true
postAction(_this.url.setBatch, query).then((res) => {
if (res.success) {
_this.$message.success(_this.$t('OperationSuccessful'))
_this.visible = false
_this.confirmLoading = false
_this.$emit('batSettingList')
} else {
_this.$message.warning(res.message)
_this.confirmLoading = false
}
})
}
})
},
handleCancel() { handleCancel() {
this.formInline = {} this.formInline = {}
this.visible = false this.visible = false
@@ -113,11 +113,13 @@
<span class="title-text-text" <span class="title-text-text"
:title="$t('correspondingStandard')">{{$t('correspondingStandard')}}</span> :title="$t('correspondingStandard')">{{$t('correspondingStandard')}}</span>
</div> </div>
<a-form-model-item class="itemModel"> <a-form-model-item class="itemModel" prop="correspondingStandard">
<a-input class="box-input" <Standardselection :query="{'db_field_txt':$t('correspondingStandard')}"
:disabled="true" :standard="formInline"
v-model="formInline.correspondingStandard" v-model="formInline.correspondingStandard"/>
:placeholder="$t('PleaseEnter')+$t('correspondingStandard')"/> <!-- <a-input class="box-input"-->
<!-- v-model="formInline.correspondingStandard"-->
<!-- :placeholder="$t('PleaseEnter')+$t('correspondingStandard')"/>-->
</a-form-model-item> </a-form-model-item>
</div> </div>
</a-col> </a-col>
@@ -621,8 +623,15 @@
rules: { rules: {
subtitle: [ subtitle: [
{ {
max: 100, max: 300,
message: this.$t('subtitle') + this.$t('cannotExceed') + 100 + this.$t('Characters'), message: this.$t('subtitle') + this.$t('cannotExceed') + 300 + this.$t('Characters'),
trigger: 'blur'
}
],
correspondingStandard: [
{
max: 300,
message: this.$t('correspondingStandard') + this.$t('cannotExceed') + 300 + this.$t('Characters'),
trigger: 'blur' trigger: 'blur'
} }
], ],
@@ -143,7 +143,7 @@
class="ant-table tableList" class="ant-table tableList"
:loading="loading" :loading="loading"
:pagination="false" :pagination="false"
:scroll="{x: '100%',y:'calc(100vh - 170px)'}" :scroll="{x: '100%',y:'calc(100vh - 186px)'}"
rowKey="id" rowKey="id"
:data-source="dataSource" :data-source="dataSource"
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }" :row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
@@ -202,6 +202,9 @@
<span v-else>--</span> <span v-else>--</span>
</span> </span>
</a-table> </a-table>
<div class="buttom-box" v-if="dataSource && dataSource.length > 0">
{{$t('total')+' '+this.dataSource.length+' '+ $t('strip')}}
</div>
</div> </div>
</a-card> </a-card>
</div> </div>
@@ -796,7 +799,7 @@
let index2 = fileName.length let index2 = fileName.length
let fileSuffix = fileName.substring(index1, index2) let fileSuffix = fileName.substring(index1, index2)
if (fileSuffix == '.pdf') { if (fileSuffix == '.pdf') {
window.open('/pdf/web/viewer.html?file=' + encodeURIComponent('/jero-boot/sys/common/pdf/viewFile?id=' + fileQuery.id+'&userName='+this.userInfo().username)) window.open('/pdf/web/viewer.html?file=' + encodeURIComponent('/jero-boot/sys/common/pdf/viewFile?id=' + fileQuery.id + '&userName=' + this.userInfo().username))
} else if (fileSuffix == '.docx') { } else if (fileSuffix == '.docx') {
let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadFileUrl + '/' + fileQuery.id + fileSuffix) let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadFileUrl + '/' + fileQuery.id + fileSuffix)
window.open(url, '_blank') window.open(url, '_blank')
@@ -813,7 +816,7 @@
let index2 = fileName.length let index2 = fileName.length
let fileSuffix = fileName.substring(index1, index2) let fileSuffix = fileName.substring(index1, index2)
if (fileSuffix == '.pdf') { if (fileSuffix == '.pdf') {
window.open('/pdf/web/viewer.html?file=' + encodeURIComponent('/jero-boot/sys/common/pdf/viewFile?id=' + id+'&userName='+this.userInfo().username)) window.open('/pdf/web/viewer.html?file=' + encodeURIComponent('/jero-boot/sys/common/pdf/viewFile?id=' + id + '&userName=' + this.userInfo().username))
} else if (fileSuffix == '.docx') { } else if (fileSuffix == '.docx') {
let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadFileUrl + '/' + id + fileSuffix) let url = window._CONFIG['onlinePreviewDomainURL'] + '?url=' + Base64.encode(this.downLoadFileUrl + '/' + id + fileSuffix)
window.open(url, '_blank') window.open(url, '_blank')
@@ -825,7 +828,7 @@
} }
}, },
download(item) { download(item) {
downloadFile('/sys/common/downLoadFile', item.fileName, { id: item.id ,userName:this.userInfo().username}) downloadFile('/sys/common/downLoadFile', item.fileName, { id: item.id, userName: this.userInfo().username })
}, },
clickButtonToUpload(item) { clickButtonToUpload(item) {
this.loading = true this.loading = true
@@ -1004,6 +1007,14 @@
text-justify: inter-ideograph; text-justify: inter-ideograph;
word-break: break-all word-break: break-all
} }
.buttom-box {
width: 100%;
text-align: right;
font-size: 16px;
font-weight: 500;
color: #000F16;
}
</style> </style>
<style> <style>
.box-input .ant-select-selection { .box-input .ant-select-selection {
@@ -14,18 +14,18 @@
</a-col> </a-col>
<a-col :md="6" :sm="8"> <a-col :md="6" :sm="8">
<div class="box-title-text"> <div class="box-title-text">
<div class="title-text" :title="$t('areaOfResponsibility')"> <div class="title-text" :title="$t('areaOfResponsibility')">
<span>{{$t('areaOfResponsibility')}}</span> <span>{{$t('areaOfResponsibility')}}</span>
</div> </div>
<j-dict-select-tag class="box-input" v-model="queryParam.dutyTerritory" <j-multi-select-tag class="box-input" v-model="queryParam.dutyTerritory"
:placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')" :placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"
:type="'select'" :type="'select'"
:triggerChange="false" :dictCode="'duty_territory'"/> :triggerChange="false" :dictCode="'duty_territory'"/>
</div> </div>
</a-col> </a-col>
<a-col :md="6" :sm="8"> <a-col :md="6" :sm="8">
<div class="box-title-text"> <div class="box-title-text">
<div class="title-text" :title="$t('CertificationProgress')"> <div class="title-text" :title="$t('CertificationProgress')">
<span>{{$t('CertificationProgress')}}</span> <span>{{$t('CertificationProgress')}}</span>
</div> </div>
<j-dict-select-tag class="box-input" v-model="queryParam.certificationProgress" <j-dict-select-tag class="box-input" v-model="queryParam.certificationProgress"
@@ -76,6 +76,10 @@
</a-form> </a-form>
</div> </div>
<div class="table-operator"> <div class="table-operator">
<!-- <div class="operator-text" @click="batSettingClick">-->
<!-- <a-icon type="setting"/>-->
<!-- {{ $t('batSetting') }}-->
<!-- </div>-->
<div @click="CertificationDirectory" class="operator-text"> <div @click="CertificationDirectory" class="operator-text">
<a-icon type="bulb"/> <a-icon type="bulb"/>
{{$t('CertificationDirectory')}} {{$t('CertificationDirectory')}}
@@ -86,6 +90,8 @@
</div> </div>
</div> </div>
<div style="width: 100%"> <div style="width: 100%">
<!-- rowKey="id"
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"-->
<a-table <a-table
ref="table" ref="table"
bordered bordered
@@ -98,7 +104,8 @@
> >
<div slot="standardInformation" slot-scope="text,result" class="box-left"> <div slot="standardInformation" slot-scope="text,result" class="box-left">
<div class="content"> <div class="content">
<a class="box-content-a" @click="standardClick(result)" :title="result.serialNumber">{{result.serialNumber}}</a> <a class="box-content-a" @click="standardClick(result)"
:title="result.serialNumber">{{result.serialNumber}}</a>
<a class="box-content-buttom" :title="result.title">{{result.title}}</a> <a class="box-content-buttom" :title="result.title">{{result.title}}</a>
</div> </div>
</div> </div>
@@ -170,12 +177,14 @@
</div> </div>
<certificationDirectory :isDisplayNum="isDisplayNum" :url="url" ref="certificationDirectoryRef"/> <certificationDirectory :isDisplayNum="isDisplayNum" :url="url" ref="certificationDirectoryRef"/>
<TaskListModel @TaskListModelList="TaskListModelList" ref="TaskListModelRef"/> <TaskListModel @TaskListModelList="TaskListModelList" ref="TaskListModelRef"/>
<taskBatSetting @taskBatSettingForm="taskBatSettingForm" ref="taskBatSettingRef"></taskBatSetting>
</a-card> </a-card>
</template> </template>
<script> <script>
import certificationDirectory from './certificationDirectory' import certificationDirectory from './certificationDirectory'
import TaskListModel from './TaskListModel' import TaskListModel from './TaskListModel'
import taskBatSetting from './taskBatSetting'
import { getAction, postAction, deleteAction, downloadFile } from '@/api/manage' import { getAction, postAction, deleteAction, downloadFile } from '@/api/manage'
import { mapGetters } from 'vuex' import { mapGetters } from 'vuex'
import store from '@/store/' import store from '@/store/'
@@ -184,7 +193,8 @@
name: 'TaskList', name: 'TaskList',
components: { components: {
certificationDirectory, certificationDirectory,
TaskListModel TaskListModel,
taskBatSetting
}, },
props: ['isDisplayNum', 'areaOfResponsibility'], props: ['isDisplayNum', 'areaOfResponsibility'],
data() { data() {
@@ -332,8 +342,18 @@
this.queryParam = {} this.queryParam = {}
this.getList() this.getList()
}, },
onSelectChange() { batSettingClick() {
if (this.selectedRowKeys && this.selectedRowKeys.length > 0) {
this.$refs.taskBatSettingRef.edit(JSON.parse(JSON.stringify(this.selectedRowKeys)))
} else {
this.$message.warning(this.$t('selectLeastOne'))
}
},
taskBatSettingForm() {
this.getList()
},
onSelectChange(value) {
this.selectedRowKeys = value
}, },
handleExport() { handleExport() {
let query = { let query = {
@@ -364,7 +384,7 @@
DueDate: 'designDueDate', DueDate: 'designDueDate',
remarks: 'designRemark', remarks: 'designRemark',
projectName: this.$route.query.projectName, projectName: this.$route.query.projectName,
targetMarket:this.$route.query.targetMarket, targetMarket: this.$route.query.targetMarket,
projectNameId: this.$route.query.projectNameId, projectNameId: this.$route.query.projectNameId,
primaryKeyId: val.designTaskDetailId, primaryKeyId: val.designTaskDetailId,
PersonChargeFeedback: val.designPersonChargeFeedback PersonChargeFeedback: val.designPersonChargeFeedback
@@ -389,7 +409,7 @@
DueDate: 'prehomoDueDate', DueDate: 'prehomoDueDate',
remarks: 'prehomoRemark', remarks: 'prehomoRemark',
projectName: this.$route.query.projectName, projectName: this.$route.query.projectName,
targetMarket:this.$route.query.targetMarket, targetMarket: this.$route.query.targetMarket,
projectNameId: this.$route.query.projectNameId, projectNameId: this.$route.query.projectNameId,
primaryKeyId: val.prehomoTaskDetailId, primaryKeyId: val.prehomoTaskDetailId,
PersonChargeFeedback: val.prehomoPersonChargeFeedback PersonChargeFeedback: val.prehomoPersonChargeFeedback
@@ -414,7 +434,7 @@
DueDate: 'verifyDueDate', DueDate: 'verifyDueDate',
remarks: 'verifyRemark', remarks: 'verifyRemark',
projectName: this.$route.query.projectName, projectName: this.$route.query.projectName,
targetMarket:this.$route.query.targetMarket, targetMarket: this.$route.query.targetMarket,
projectNameId: this.$route.query.projectNameId, projectNameId: this.$route.query.projectNameId,
primaryKeyId: val.verifyTaskDetailId, primaryKeyId: val.verifyTaskDetailId,
PersonChargeFeedback: val.verifyPersonChargeFeedback PersonChargeFeedback: val.verifyPersonChargeFeedback
@@ -431,9 +451,15 @@
this.$refs.certificationDirectoryRef.addModel() this.$refs.certificationDirectoryRef.addModel()
}, },
getList() { getList() {
let queryParam = JSON.parse(JSON.stringify(this.queryParam))
Object.keys(queryParam).forEach(val => {
if (queryParam[val] instanceof Array) {
queryParam[val] = queryParam[val].join(',')
}
})
let query = { let query = {
projectLibraryId: this.$route.query.id, projectLibraryId: this.$route.query.id,
...this.queryParam ...queryParam
} }
this.loading = true this.loading = true
getAction(this.url.list, query).then((res) => { getAction(this.url.list, query).then((res) => {
@@ -458,15 +484,15 @@
TaskListModelList() { TaskListModelList() {
this.getList() this.getList()
}, },
standardClick(row){ standardClick(row) {
let newUrl = this.$router.resolve({ let newUrl = this.$router.resolve({
path: '/docManage/library/detail', path: '/docManage/library/detail',
query: { query: {
id:row.standId id: row.standId
} }
}) })
window.open(newUrl.href, '_blank') window.open(newUrl.href, '_blank')
}, }
} }
} }
</script> </script>
@@ -659,7 +685,8 @@
.box-content-cou { .box-content-cou {
cursor: pointer; cursor: pointer;
} }
.box-content-buttom{
.box-content-buttom {
width: 100%; width: 100%;
overflow: hidden; overflow: hidden;
display: -webkit-box; display: -webkit-box;
@@ -215,6 +215,13 @@
}) })
}, },
handleOk() { handleOk() {
if (this.formInline.dutyTerritory) {
this.handleOkTwo()
} else {
this.handleOkOne()
}
},
handleOkOne() {
let ids = JSON.parse(JSON.stringify(this.ids)) let ids = JSON.parse(JSON.stringify(this.ids))
let query = { let query = {
ids: ids.join(','), ids: ids.join(','),
@@ -233,6 +240,31 @@
} }
}) })
}, },
handleOkTwo() {
let _this = this
this.$confirm({
content: _this.$t('areResponsibilityAreaInformationBatch'),
onOk() {
let ids = JSON.parse(JSON.stringify(_this.ids))
let query = {
ids: ids.join(','),
..._this.formInline
}
_this.confirmLoading = true
postAction(_this.url.setBatch, query).then((res) => {
if (res.success) {
_this.$message.success(_this.$t('OperationSuccessful'))
_this.visible = false
_this.confirmLoading = false
_this.$emit('batSettingList')
} else {
_this.$message.warning(_this.$t('operationFailed'))
_this.confirmLoading = false
}
})
}
})
},
handleCancel() { handleCancel() {
this.formInline = {} this.formInline = {}
this.visible = false this.visible = false
@@ -838,8 +838,8 @@
rulesData: { rulesData: {
subtitle: [ subtitle: [
{ {
max: 100, max: 300,
message: this.$t('subtitle') + this.$t('cannotExceed') + 100 + this.$t('Characters'), message: this.$t('subtitle') + this.$t('cannotExceed') + 300 + this.$t('Characters'),
trigger: 'blur' trigger: 'blur'
} }
], ],
@@ -29,10 +29,10 @@
<div class="title-text" :title="$t('areaOfResponsibility')"> <div class="title-text" :title="$t('areaOfResponsibility')">
<span>{{ $t('areaOfResponsibility') }}</span> <span>{{ $t('areaOfResponsibility') }}</span>
</div> </div>
<j-dict-select-tag class="box-input" v-model="queryParam.dutyTerritory" <j-multi-select-tag class="box-input" v-model="queryParam.dutyTerritory"
:placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')" :placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"
:type="'select'" :type="'select'"
:triggerChange="false" :dictCode="'duty_territory'"/> :triggerChange="false" :dictCode="'duty_territory'"/>
</div> </div>
</a-col> </a-col>
<a-col :md="6" :sm="8"> <a-col :md="6" :sm="8">
@@ -200,7 +200,7 @@
class="tableList" class="tableList"
:loading="loading" :loading="loading"
:pagination="false" :pagination="false"
:scroll="{x: '100%',y:'calc(100vh - 170px)'}" :scroll="{x: '100%',y:'calc(100vh - 186px)'}"
rowKey="id" rowKey="id"
:data-source="dataSource" :data-source="dataSource"
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }" :row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
@@ -273,6 +273,9 @@
<span v-else>--</span> <span v-else>--</span>
</span> </span>
</a-table> </a-table>
<div class="buttom-box" v-if="dataSource && dataSource.length > 0">
{{$t('total')+' '+this.dataSource.length+' '+ $t('strip')}}
</div>
</div> </div>
<listAddModel :url="url" @addModelList="addModelList" ref="addModelRef"/> <listAddModel :url="url" @addModelList="addModelList" ref="addModelRef"/>
<listEditModel :url="url" @editModelList="addModelList" ref="editModelRef"/> <listEditModel :url="url" @editModelList="addModelList" ref="editModelRef"/>
@@ -1386,9 +1389,15 @@
if (this.formInlineRoleSwitching.roleSwitchingCode == '11' || this.formInlineRoleSwitching.roleSwitchingCode == '12') { if (this.formInlineRoleSwitching.roleSwitchingCode == '11' || this.formInlineRoleSwitching.roleSwitchingCode == '12') {
roleCode = 0 roleCode = 0
} }
let queryParam = JSON.parse(JSON.stringify(this.queryParam))
Object.keys(queryParam).forEach(val => {
if (queryParam[val] instanceof Array) {
queryParam[val] = queryParam[val].join(',')
}
})
let query = { let query = {
...this.queryParamQuery, ...this.queryParamQuery,
...this.queryParam, ...queryParam,
projectLibraryId: this.$route.query.id, projectLibraryId: this.$route.query.id,
roleCode: roleCode roleCode: roleCode
} }
@@ -2257,6 +2266,14 @@
text-justify: inter-ideograph; text-justify: inter-ideograph;
word-break: break-all word-break: break-all
} }
.buttom-box {
width: 100%;
text-align: right;
font-size: 16px;
font-weight: 500;
color: #000F16;
}
</style> </style>
<style> <style>
.box-input .ant-select-selection { .box-input .ant-select-selection {
@@ -0,0 +1,251 @@
<template>
<a-modal
:title="$t('batSetting')"
:width="600"
:visible="visible"
:confirm-loading="confirmLoading"
:maskClosable="false"
@ok="handleOk"
@cancel="handleCancel"
>
<a-form-model :model="formInline" class="formAdd" :rules="rules" ref="ruleForm">
<a-row :gutter="24">
<a-col :span="24">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('CertificationProgress')">{{$t('CertificationProgress')}}</span>
</div>
<a-form-model-item class="itemModel">
<j-dict-select-tag class="box-input" v-model="formInline.certificationProgress"
@input="handleInput('certificationProgress')"
:placeholder="$t('PleaseSelect')+$t('CertificationProgress')"
:type="'select'"
:triggerChange="false" :dictCode="'certification_progress'"/>
</a-form-model-item>
</div>
</a-col>
<a-col :span="24">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('CurrentStatus')">{{$t('CurrentStatus')}}</span>
</div>
<a-form-model-item class="itemModel" prop="conditionAssessment">
<a-select
v-model="formInline.conditionAssessment"
:placeholder="$t('PleaseSelect')+$t('CurrentProjectStatusEvaluation')">
<a-select-option :value="'1'">
<span style="display: inline-block;width: 100%">
{{ $t('red') }}
</span>
</a-select-option>
<a-select-option :value="'2'">
<span style="display: inline-block;width: 100%">
{{ $t('yellow') }}
</span>
</a-select-option>
<a-select-option :value="'3'">
<span style="display: inline-block;width: 100%">
{{ $t('green') }}
</span>
</a-select-option>
<a-select-option :value="'4'" disabled>
<span style="display: inline-block;width: 100%">
{{ $t('blue') }}
</span>
</a-select-option>
</a-select>
</a-form-model-item>
</div>
</a-col>
</a-row>
</a-form-model>
</a-modal>
</template>
<script>
import { getAction, postAction } from '@/api/manage'
import moment from 'moment'
export default {
name: 'taskBatSetting',
props: ['url'],
data() {
return {
visible: false,
confirmLoading: false,
formInline: {},
rules: {},
ids: []
}
},
mounted() {
},
methods: {
edit(data) {
this.visible = true
this.$nextTick(() => {
this.ids = data || []
this.formInline = {}
})
},
handleOk() {
if (this.formInline.dutyTerritory) {
this.handleOkTwo()
} else {
this.handleOkOne()
}
},
handleOkOne() {
let ids = JSON.parse(JSON.stringify(this.ids))
let query = {
ids: ids.join(','),
...this.formInline
}
this.confirmLoading = true
postAction(this.url.setBatch, query).then((res) => {
if (res.success) {
this.$message.success(this.$t('OperationSuccessful'))
this.visible = false
this.confirmLoading = false
this.$emit('batSettingList')
} else {
this.$message.warning(this.$t('operationFailed'))
this.confirmLoading = false
}
})
},
handleOkTwo() {
let _this = this
this.$confirm({
content: _this.$t('areResponsibilityAreaInformationBatch'),
onOk() {
let ids = JSON.parse(JSON.stringify(_this.ids))
let query = {
ids: ids.join(','),
..._this.formInline
}
_this.confirmLoading = true
postAction(_this.url.setBatch, query).then((res) => {
if (res.success) {
_this.$message.success(_this.$t('OperationSuccessful'))
_this.visible = false
_this.confirmLoading = false
_this.$emit('batSettingList')
} else {
_this.$message.warning(_this.$t('operationFailed'))
_this.confirmLoading = false
}
})
}
})
},
handleCancel() {
this.formInline = {}
this.visible = false
},
handleInput(value) {
this.$nextTick(() => {
this.formInline = { ...this.formInline }
this.$refs.ruleForm.validateField([value])
})
},
}
}
</script>
<style>
.formAdd .ant-form-item-label {
width: 130px;
}
.formAdd .ant-form-item-control-wrapper {
display: inline-block;
width: 100%;
}
/*.formAdd .ant-form-item {*/
/* margin-bottom: 20px;*/
/*}*/
.itemModel .ant-form-item-control-wrapper {
width: 100%;
}
.box-input .ant-select-selection--single {
height: 38px;
}
.box-input .ant-select-selection--multiple {
height: 38px;
}
.box-input .ant-select-selection__rendered {
line-height: 38px;
height: 38px;
}
.box-input .ant-select-selection--multiple .ant-select-selection__rendered > ul > li {
margin-top: 6px;
}
.box-input .ant-calendar-picker {
line-height: 38px;
height: 38px;
}
.box-input .ant-calendar-picker-input {
height: 38px;
}
.box-input .ant-input-number-input-wrap {
line-height: 38px;
height: 38px;
}
.box-input .ant-calendar-picker-input {
padding: 4px 30px 4px 11px;
}
</style>
<style scoped>
.box-title-text {
line-height: 1.4;
display: flex;
}
.title-text {
width: 84px;
text-align: right;
display: inline-block;
font-weight: 500;
font-size: 14px;
margin-right: 16px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
height: 42px;
line-height: 42px;
}
.box-input {
display: inline-block;
height: 38px;
width: 100%;
}
.itemModel {
width: calc(100% - 130px);
display: inline-block;
margin-top: 2px;
}
.title-text-text {
margin-top: 9px;
}
.formAdd {
margin-bottom: 40px;
}
</style>
@@ -35,6 +35,39 @@
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }" :row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
:columns="columns" :columns="columns"
> >
<span slot="vehicleInProductionDate" slot-scope="text,result">
<span v-if="result.xin1_che1_xing2_shi2_shi1_ri4_qi1 == 'yellow'">
{{text}}
</span>
<span v-else-if="result.xin1_che1_xing2_shi2_shi1_ri4_qi1 == 'red'">
{{text}}
</span>
<span v-else>
{{text}}
</span>
</span>
<span slot="ImplementationDate" slot-scope="text,result">
<span v-if="result.new_colour == 'yellow'" style="color: #fdd835">
{{text}}
</span>
<span v-else-if="result.new_colour == 'red'" style="color: red">
{{text}}
</span>
<span v-else>
{{text}}
</span>
</span>
<span slot="vehicleInProductionDate" slot-scope="text,result">
<span v-if="result.implement_colour == 'yellow'" style="color: #fdd835">
{{text}}
</span>
<span v-else-if="result.implement_colour == 'red'" style="color: red">
{{text}}
</span>
<span v-else>
{{text}}
</span>
</span>
</a-table> </a-table>
<div class="page" v-if="dataSource && dataSource.length > 0"> <div class="page" v-if="dataSource && dataSource.length > 0">
<a-pagination <a-pagination
@@ -138,14 +171,16 @@
align: 'center', align: 'center',
ellipsis: true, ellipsis: true,
width: 210, width: 210,
dataIndex: 'implement_time' dataIndex: 'implement_time',
scopedSlots: { customRender: 'vehicleInProductionDate' }
}, },
{ {
title: this.$t('ImplementationDate'), title: this.$t('ImplementationDate'),
align: 'center', align: 'center',
ellipsis: true, ellipsis: true,
width: 210, width: 210,
dataIndex: 'xin1_che1_xing2_shi2_shi1_ri4_qi1' dataIndex: 'xin1_che1_xing2_shi2_shi1_ri4_qi1',
scopedSlots: { customRender: 'ImplementationDate' }
} }
] ]
} }