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

This commit is contained in:
wangzhijiang
2022-12-30 17:47:26 +08:00
135 changed files with 1479 additions and 789 deletions
+13 -13
View File
@@ -33,7 +33,7 @@ ALTER TABLE `laws_weilai`.`params_manifest`
ALTER TABLE `laws_weilai`.`params_manifest_history`
ADD COLUMN `project_version_id` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '项目相关版本对应的项目id' AFTER `explanation`;
-- 项目库添加字段(技术领域补充(中文),技术领域补充(英文))--------2022-12-05 同步生产环境
-- 项目库添加字段(技术领域补充(中文),技术领域补充(英文))--------2022-12-05 同步生产环境
ALTER TABLE `laws_weilai`.`laws_monthly_report_write`
ADD COLUMN `technology_territory_cn` varchar(500) NULL COMMENT '技术领域补充(中文)' AFTER `memories_chapter_one`,
ADD COLUMN `technology_territory_en` varchar(500) NULL COMMENT '技术领域补充(英文)' AFTER `technology_territory_cn`;
@@ -85,7 +85,7 @@ ALTER TABLE `laws_weilai`.`params_info_publish`
-- 上报库历史表,增加备注字段 2022-12-12 已同步生产环境
ALTER TABLE `laws_weilai`.`params_report_detail_log`
ADD COLUMN `remarks` varchar(4000) NULL COMMENT '备注' AFTER `params_report_detail_id`;
-- 创建用户项目权限表
-- 创建用户项目权限表 已同步生产环境
CREATE TABLE `project_user_permission` (
`id` varchar(36) NOT NULL COMMENT '主键',
`create_by` varchar(50) DEFAULT NULL COMMENT '创建人',
@@ -99,7 +99,7 @@ CREATE TABLE `project_user_permission` (
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
-- 创建用户品牌表
-- 创建用户品牌表 已同步生产环境
CREATE TABLE `project_user_brand` (
`id` varchar(36) NOT NULL,
`user_id` varchar(255) DEFAULT NULL COMMENT '用户id',
@@ -107,7 +107,7 @@ CREATE TABLE `project_user_brand` (
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
-- 创建用户责任领域表
-- 创建用户责任领域表 已同步生产环境
CREATE TABLE `project_user_duty_territory` (
`id` varchar(36) NOT NULL,
`user_id` varchar(255) DEFAULT NULL COMMENT '用户id',
@@ -115,23 +115,23 @@ CREATE TABLE `project_user_duty_territory` (
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
-- 项目库基础表添加字段
-- 项目库基础表添加字段 已同步生产环境
ALTER TABLE `project_library_base`
ADD COLUMN `brand` varchar(255) NULL COMMENT '品牌' AFTER `flag`;
-- 法规技术评估表添加字段
-- 法规技术评估表添加字段 已同步生产环境
ALTER TABLE `laws_technology_evaluation`
ADD COLUMN `brand` varchar(255) NULL COMMENT '品牌' AFTER `prc_num`;
-- 法规意见收集表添加字段
-- 法规意见收集表添加字段 已同步生产环境
ALTER TABLE `laws_opinion_gather`
ADD COLUMN `brand` varchar(255) NULL COMMENT '品牌' AFTER `evaluator_ids`;
-- 参数导出模板管理添加字段 2022-12-19(同步生产)
-- 参数导出模板管理添加字段 2022-12-19(同步生产环境)
ALTER TABLE `params_export_template`
ADD COLUMN `region` varchar(1000) NULL COMMENT '适用地区' AFTER `file_connect_id`;
-- 参数收集清单-操作记录(历史日志) 2022-12-26 同步生产环境
-- 参数收集清单-操作记录(历史日志) 2022-12-26 同步生产环境
CREATE TABLE `laws_weilai`.`params_collect_manifest_log` (
`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 '创建人',
@@ -147,15 +147,15 @@ CREATE TABLE `laws_weilai`.`params_collect_manifest_log` (
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '参数收集清单-操作记录(历史日志)' ROW_FORMAT = Dynamic;
-- 参数清单-增加参考列配置id 2022-12-29 同步生产环境
-- 参数清单-增加参考列配置id 2022-12-29 同步生产环境
ALTER TABLE `laws_weilai`.`params_manifest`
ADD COLUMN `references_col_id` varchar(255) NULL COMMENT '参数项清单的参考列配置id(对应上报库参数配置表中的id)' AFTER `references_col_name`;
-- 参数清单历史-增加参考列配置id 2022-12-29 同步生产环境
-- 参数清单历史-增加参考列配置id 2022-12-29 同步生产环境
ALTER TABLE `laws_weilai`.`params_manifest_history`
ADD COLUMN `references_col_id` varchar(255) NULL COMMENT '参数项清单的参考列配置id(对应上报库参数配置表中的id)' AFTER `references_col_name`;
-- 上报库备注列字段长度修改 2022-12-29 同步生产环境
-- 上报库备注列字段长度修改 2022-12-29 同步生产环境
ALTER TABLE `laws_weilai`.`params_report_detail`
MODIFY COLUMN `remarks` varchar(4000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '备注' AFTER `title_default_value`;
-- 更新拆分详情列 展示顺序不在列表头展示sql 2022-12-30 同步生产环境
-- 更新拆分详情列 展示顺序不在列表头展示sql 2022-12-30 同步生产环境
UPDATE `laws_weilai`.`onl_cgform_field` SET `is_show_list` = 0 WHERE `id` = '1529373706885799937'
@@ -1592,7 +1592,7 @@ public class ParamsCollectManifestEOServiceImpl extends ServiceImpl<ParamsCollec
}
map.put("value", CollectManifestUserTypeEnum.GUEST.getValue());
userTypeList.add(map);
return userTypeList;
//return userTypeList;
}
if (homoList.contains(loginUserName)) {
@@ -48,7 +48,9 @@ public class ProjectUserPermissionController extends JeroController<ProjectUserP
@ApiOperation(value="权限同步接口", notes="权限同步接口")
@PostMapping(value = "/sync")
public void sync(){
log.info("=================== 权限同步开始 ======================");
projectUserPermissionService.sync();
log.info("=================== 权限同步完毕 ======================");
}
@@ -142,7 +142,7 @@ public class NcrTrackServiceImpl extends ServiceImpl<NcrTrackMapper, NcrTrackVO>
for (NcrTrackVO trackVO : infoList) {
String projectName = trackVO.getProjectName();
String yearName = trackVO.getYearName();
String market = getMarket(targetMarketList, trackVO);
String market = getMarket(targetMarketList, trackVO,ncrTrackVO.getCut());
String projectVersion = trackVO.getProjectVersion();
if(StringUtils.isNotBlank(projectVersion)){
trackVO.setProjectName(projectName+"-"+yearName+"-"+market+"-"+projectVersion);
@@ -296,7 +296,7 @@ public class NcrTrackServiceImpl extends ServiceImpl<NcrTrackMapper, NcrTrackVO>
}
}
private String getMarket(List<DictModel> targetMarketList, NcrTrackVO trackVO) {
private String getMarket(List<DictModel> targetMarketList, NcrTrackVO trackVO,String cut) {
//目标市场
List<DictModel> dictModelList = new ArrayList<>();
for (String s : trackVO.getTargetMarket().split(",")) {
@@ -308,7 +308,7 @@ public class NcrTrackServiceImpl extends ServiceImpl<NcrTrackMapper, NcrTrackVO>
if(dictModelList.size() != 0){
StringBuilder sb = new StringBuilder();
for (DictModel dictModel : dictModelList) {
if(CutEnum.CN.getValue().equals(trackVO.getCut())){
if(CutEnum.CN.getValue().equals(cut)){
sb.append(dictModel.getText()+",");
}else{
sb.append(dictModel.getTextEn()+",");
@@ -4,23 +4,25 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.jero.common.constant.enums.CutEnum;
import com.jero.common.system.query.QueryGenerator;
import com.jero.common.system.vo.LoginUser;
import com.jero.modules.project.entity.ConditionAssessmentEO;
import com.jero.modules.project.entity.ProjectLawsInventoryEO;
import com.jero.modules.project.entity.ProjectLibraryBase;
import com.jero.modules.project.entity.ProjectTaskInventoryEO;
import com.jero.modules.project.enums.CertificationProgressEnum;
import com.jero.modules.project.enums.CurrentProjectStatusEnum;
import com.jero.modules.project.enums.InventoryAffirmStatusEnum;
import com.jero.modules.project.enums.ReviewResultEnum;
import com.jero.modules.project.enums.TaskAffirmStatusEnum;
import com.jero.modules.project.enums.*;
import com.jero.modules.project.mapper.ProjectUserPermissionMapper;
import com.jero.modules.project.service.IConditionAssessmentEOService;
import com.jero.modules.project.service.IProjectStatusBoardService;
import com.jero.modules.project.vo.TimeNodeVO;
import com.jero.modules.system.entity.SysDictItem;
import com.jero.modules.system.mapper.SysRoleMapper;
import com.jero.modules.system.service.IProjectUserBrandService;
import com.jero.modules.system.service.ISysUserService;
import com.jero.modules.system.service.impl.SysDictItemServiceImpl;
import lombok.SneakyThrows;
import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.shiro.SecurityUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -49,6 +51,14 @@ public class ProjectStatusBoardServiceImpl implements IProjectStatusBoardService
private ProjectTaskInventoryEOServiceImpl projectTaskInventoryEOService;
@Autowired
private SysDictItemServiceImpl sysDictItemServiceImpl;
@Autowired
private SysRoleMapper sysRoleMapper;
@Autowired
private ProjectUserPermissionMapper projectUserPermissionMapper;
@Autowired
private IProjectUserBrandService projectUserBrandService;
@Autowired
private ISysUserService sysUserService;
/**
@@ -153,6 +163,26 @@ public class ProjectStatusBoardServiceImpl implements IProjectStatusBoardService
*/
@Override
public List<Map<String,Object>> scheduleInfoList(ProjectLibraryBase projectLibraryBase, HttpServletRequest req) {
LoginUser loginUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
Integer isViewer = sysRoleMapper.queryUserRoleByCode(ProjectRoleEnum.VIEWER.getName(), loginUser.getId());
Set<String> projectIds = new HashSet<>();
//根据项目用户权限表筛选有权访问的项目
Set<String> permissionProjectIds = projectUserPermissionMapper.queryProjectIdsByUserId(loginUser.getId());
if (ObjectUtils.isNotEmpty(permissionProjectIds)) {
projectIds.addAll(permissionProjectIds);
}
if (isViewer > 0) {
//如果是Viewer,根据配置的品牌筛选可访问的项目
List<String> brandTypes = projectUserBrandService.queryBrandByUserId(loginUser.getId());
if (ObjectUtils.isNotEmpty(brandTypes)) {
QueryWrapper<ProjectLibraryBase> queryWrapper = new QueryWrapper<>();
queryWrapper.in("brand",brandTypes);
if (ObjectUtils.isNotEmpty(projectLibraryBaseService.list(queryWrapper))) {
projectIds.addAll(projectLibraryBaseService.list(queryWrapper).stream().map(ProjectLibraryBase::getId).collect(Collectors.toSet()));
}
}
}
if(StringUtils.isNotBlank(projectLibraryBase.getProjectName())){
projectLibraryBase.setProjectName(projectLibraryBase.getProjectName().replace("*",""));
}
@@ -163,6 +193,9 @@ public class ProjectStatusBoardServiceImpl implements IProjectStatusBoardService
// //项目库信息
// List<ProjectLibraryBase> projectLibraryBaseList = projectLibraryBaseService.list(queryWrapper);
List<ProjectLibraryBase> projectLibraryBaseList = projectLibraryBaseService.getList(projectLibraryBase);
if (!sysUserService.isAdministrator()) {
projectLibraryBaseList = projectLibraryBaseList.stream().filter(project -> projectIds.contains(project.getId())).collect(Collectors.toList());
}
List<Map<String,Object>> result = new ArrayList<>();
if(projectLibraryBaseList.size() != 0){
@@ -34,6 +34,7 @@ import java.util.Date;
import java.util.Set;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.transaction.annotation.Transactional;
/**
* @Description: 项目权限表
@@ -42,6 +43,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
* @Version: V1.0
*/
@Service
@Transactional
public class ProjectUserPermissionServiceImpl extends ServiceImpl<ProjectUserPermissionMapper, ProjectUserPermission> implements IProjectUserPermissionService {
@Autowired
+1
View File
@@ -27,6 +27,7 @@
"js-base64": "^3.7.2",
"js-cookie": "^2.2.0",
"jsencrypt": "^3.0.0-rc.1",
"lodash": "^4.17.21",
"lodash.get": "^4.4.2",
"lodash.pick": "^4.4.0",
"mammoth": "^1.4.21",
+8
View File
@@ -178,4 +178,12 @@
line-height: 38px !important;
height: 38px !important;
}
.ant-table-column-title{
font-weight: bold!important;
}
.ant-table-thead > tr > th {
background: #f3f6f6!important;
}
</style>
+36 -1
View File
@@ -99,6 +99,41 @@
line-height: 38px;
}
.ant-table-fixed-left table, .ant-table-fixed-right table .ant-table-fixed{
.ant-table-fixed-left table, .ant-table-fixed-right table .ant-table-fixed {
width: min-content;
}
.nio-header-th {
position: relative;
isolation: isolate;
}
.nio-drag-handler {
position: absolute;
right: 0;
top: 0;
height: 100%;
width: 1px;
z-index: 1;
border-left: 1px #e8e8e8 solid;
}
.nio-drag-handler:hover,
.nio-drag-handler:focus{
cursor: col-resize!important;
border: 1px solid #0bd9d9!important;
}
.ant-table-column-title{
font-weight: bold!important;
}
.ant-table-thead > tr > th {
background: #f3f6f6!important;
}
.ant-tooltip-inner {
color: #333;
background-color: #fff!important;
}
.ant-tooltip-arrow::before {
background-color: #fff;
}
+10 -7
View File
@@ -99,6 +99,7 @@ module.exports = {
RoleCode: 'Role Code',
createTime: 'Creation Time',
userName: 'User Name',
userManual:'User Manual',
selectOneRule: 'Please select a role!',
setAttribute: 'Please set the url.list2 attribute!',
setDelAttribute: 'Please set the url.delete2 attribute!',
@@ -426,6 +427,7 @@ module.exports = {
MessageType: 'Message Type',
NotificationTime: 'Notification Time',
MessageNotification: 'Message Notification',
MessageCenter:'Message Center',
SeeMore: 'See More',
OperationSuccessful: 'Operation Successful',
Intheexport: 'In The Export...',
@@ -607,11 +609,11 @@ module.exports = {
certificationType: 'Certification Type',
certificationLevel: 'Certification Level',
areaOfResponsibility: 'Responsible Field',
confirmationOfDesignConformity: 'Design Compliance Check',
confirmationOfDesignConformity: 'Design Compliance Check ',
Deliverables: 'Deliverables',
personLiable: 'Assignee',
PrehomoConfirmation: 'Pre-Homo Confirmation',
verificationAndConformityconfirmation: 'Validation Compliance Check',
verificationAndConformityconfirmation: 'Validation Compliance Check ',
StandardImplementationDate: 'New Type Execution Date',
regulatoryEngineer: 'Regulation Engineer',
certifiedEngineer: 'Homo Engineer',
@@ -722,11 +724,11 @@ module.exports = {
time: 'Time',
uploadMaximumATime: 'Upload a Maximum of 20 Images at a time',
confirmationOfRegulationsList: 'Regulation List Confirmation',
regulatoryTaskConfirmation: 'Regulation Task Confirmation',
certificationStart: 'Homo Completion',
preHomoCompletion: 'Pre-Homo Confirmation',
certificationEnd: 'Homo KO',
confirmationOfRegulationsList: 'Regulation List Confirmation ',
regulatoryTaskConfirmation: 'Regulation Task Confirmation ',
certificationStart: 'Homo Completion ',
preHomoCompletion: 'Pre-Homo Confirmation ',
certificationEnd: 'Homo KO ',
directoryName: 'Catalogue Name',
batch: 'Batch',
uploadTime: 'Upload Time',
@@ -1173,6 +1175,7 @@ module.exports = {
RemarkInfo: 'Remarks Info',
initiateDocumentComparison: 'Initiate Document Comparison',
comparativeComments: 'Comparative Comments',
Comparisonofarticles:'Comparison Of Articles',
viewTheComparisonResults: 'View Results',
addFullTextComment: 'Full Text Comment',
turnOffAutomaticMatching: 'Turn Off Auto Match',
+6 -3
View File
@@ -101,6 +101,7 @@ module.exports = {
RoleCode: '角色编码',
createTime: '创建时间',
userName: '用户名称',
userManual:'用户手册',
selectOneRule: '请选择一个角色',
setAttribute: '请设置url.list2属性!',
setDelAttribute: '请设置url.delete2 属性!',
@@ -431,6 +432,7 @@ module.exports = {
MessageType: '消息类型',
NotificationTime: '通知时间',
MessageNotification: '消息通知',
MessageCenter:'消息中心',
SeeMore: '查看更多',
OperationSuccessful: '操作成功',
Intheexport: '导出中...',
@@ -1004,9 +1006,9 @@ module.exports = {
taskConfirmationResponsiblePerson: '责任人任务确认',
or: '或',
warningTime: '预警时间',
RegulationMonthlyManagement: '法规月报管理',
RegulationMonthlyFill: '法规月报填写',
RegulationMonthlyName: '法规月报名称',
RegulationMonthlyManagement: '月报管理',
RegulationMonthlyFill: '月报填写',
RegulationMonthlyName: '月报名称',
monthlyLanguage: '月报语种',
releaseStatus: '发布状态',
uploadedBy: '上传人',
@@ -1178,6 +1180,7 @@ module.exports = {
RemarkInfo: '备注信息',
initiateDocumentComparison: '发起文档对比',
comparativeComments: '对比评论',
Comparisonofarticles:'条款对比评论',
viewTheComparisonResults: '查看对比结果',
addFullTextComment: '添加全文评论',
turnOffAutomaticMatching: '关闭自动匹配',
@@ -162,7 +162,7 @@
this.columns.push({
title: res.db_field_txt,
dataIndex: res.db_field_name,
align: 'center',
align: 'left',
ellipsis: true,
sorter: res.sort
})
@@ -190,7 +190,7 @@
if (this.showAction) {
this.columns.push({
title: this.$t('operation'),
align: 'center',
align: 'left',
fixed: 'right',
width: width,
scopedSlots: { customRender: 'operation' }
+8 -4
View File
@@ -13,7 +13,7 @@
@change="tableOnChange"
>
<span slot="operation" slot-scope="record">
<a class="text" v-for="(ol,index) in OperationList"
<a v-for="(ol,index) in OperationList"
@click="OperationClick(ol,record)">
<span v-if="ol.text==$t('SyncLibrary')" v-has="'ocr:ocrRecord:syncToDocument'">
{{record.resultContent=='转换成功'&&record.syncState=='未同步'&&record.fileSource=='1'?ol.text:''}}
@@ -22,7 +22,7 @@
<!-- {{record.resultContent=='转换成功'&&record.syncState=='未同步'?ol.text:''}}-->
<!-- </span>-->
<span v-if="ol.text==$t('download') && (record.createBy == userData.username || administrators)"
v-has="'ocr:ocrRestful:downFile'">
v-has="'ocr:ocrRestful:downFile'" :class="{'text':record.resultContent=='转换成功'}">
{{record.resultContent=='转换成功'?ol.text:''}}
</span>
<span v-if="ol.text==$t('delete') && (record.createBy == userData.username || administrators)" v-has="'ocr:ocrRecord:delete'">
@@ -166,7 +166,7 @@
this.columns.push({
title: res.db_field_txt,
dataIndex: res.db_field_name,
align: 'center',
align: 'left',
ellipsis: true,
width: 170,
sorter: res.sort
@@ -195,7 +195,7 @@
if (this.showAction) {
this.columns.push({
title: this.$t('operation'),
align: 'center',
align: 'left',
fixed: 'right',
width: width,
scopedSlots: { customRender: 'operation' }
@@ -290,4 +290,8 @@
text-justify: inter-ideograph;
word-break: break-all
}
/*/deep/.table .ant-table-tbody > tr > td {*/
/* color: #040B29 ;*/
/*}*/
</style>
@@ -171,7 +171,7 @@
this.columns.push({
title: res.db_field_txt,
dataIndex: res.db_field_name,
align: 'center',
align: 'left',
ellipsis: true,
sorter: res.sort
})
@@ -201,7 +201,7 @@
if (this.showAction) {
this.columns.push({
title: this.$t('operation'),
align: 'center',
align: 'left',
fixed: 'right',
width: width,
scopedSlots: { customRender: 'operation' }
@@ -1,8 +1,8 @@
<template>
<a-form layout="inline" @keyup.enter.native="searchQuery">
<a-row :gutter="24">
<a-col :md="6" :sm="8" v-for="(item,index) in searchList" :key="index" style="line-height: 48px">
<template v-if="index < 3">
<a-col :md="8" :sm="8" v-for="(item,index) in searchList" :key="index" style="line-height: 48px">
<template v-if="index < 2">
<div class="box-title-text" v-if="item.field_show_type == '0'">
<div class="title-text" :title="item.db_field_txt">
<span>{{item.db_field_txt}}</span>
@@ -69,7 +69,7 @@
</div>
</template >
<template v-if="index >= 3 && toggleSearchStatus">
<template v-if="index >= 2 && toggleSearchStatus">
<div class="box-title-text" v-if="item.field_show_type == '0'">
<div class="title-text" :title="item.db_field_txt">
<span>{{item.db_field_txt}}</span>
@@ -158,7 +158,7 @@
this.columns.push({
title: res.db_field_txt,
dataIndex: res.db_field_name,
align: 'center',
align: 'left',
ellipsis: true,
sorter: res.sort,
width: 170
@@ -187,7 +187,7 @@
if (this.showAction) {
this.columns.push({
title: this.$t('operation'),
align: 'center',
align: 'left',
fixed: 'right',
width: width,
scopedSlots: { customRender: 'operation' }
+6 -2
View File
@@ -189,7 +189,7 @@
this.columns.push({
title: res.db_field_txt,
dataIndex: res.db_field_name,
align: 'center',
align: 'left',
ellipsis: true,
sorter: res.sort,
width: 170
@@ -218,7 +218,7 @@
if (this.showAction) {
this.columns.push({
title: this.$t('operation'),
align: 'center',
align: 'left',
fixed: 'right',
width: width,
scopedSlots: { customRender: 'operation' }
@@ -318,4 +318,8 @@
text-justify: inter-ideograph;
word-break: break-all
}
/*/deep/.table .ant-table-tbody > tr > td {*/
/* color: #040B29 ;*/
/*}*/
</style>
@@ -88,18 +88,18 @@
title: this.$t('standard'),
dataIndex: 'serial_number',
ellipsis: true,
align: 'center'
align: 'left'
},
{
title: this.$t('title'),
dataIndex: 'title',
ellipsis: true,
align: 'center'
align: 'left'
},
{
title: this.$t('TextStatus'),
dataIndex: 'state',
align: 'center'
align: 'left'
}
],
dataList: [],
@@ -263,6 +263,14 @@
text-align: right;
margin-top: 20px;
}
/deep/.ant-table-thead > tr > th {
font-weight: bolder;
}
/*/deep/.ant-table-tbody > tr > td {*/
/* color: #040B29 ;*/
/*}*/
</style>
<style>
/*.ant-input-disabled{*/
+10 -3
View File
@@ -21,7 +21,7 @@
:loading="loading"
>
<span slot="content" slot-scope="text,record">
<a-tooltip placement="topLeft">
<a-tooltip placement="topLeft" overlayClassName="tooltipColor">
<template slot="title">
<span v-html="text"></span>
</template>
@@ -63,14 +63,14 @@
{
title: this.$t('OperationDetails'),
dataIndex: 'logContent',
align: 'center',
align: 'left',
ellipsis: true,
scopedSlots: { customRender: 'content' }
},
{
title: this.$t('OperationTime'),
dataIndex: 'createTime',
align: 'center',
align: 'left',
ellipsis: true,
width: 180
},
@@ -121,4 +121,11 @@
text-align: right;
margin-top: 20px;
}
/deep/.tooltipColor .ant-tooltip-inner {
color: #333;
background-color: #fff !important;
}
/deep/.tooltipColor .ant-tooltip-arrow::before {
background-color: #fff;
}
</style>
@@ -100,19 +100,19 @@ export default {
// },
{
title: this.$t('Exporttype'),
align: 'center',
align: 'left',
dataIndex: 'exportType',
ellipsis: true
},
{
title: this.$t('Exporttime'),
align: 'center',
align: 'left',
dataIndex: 'exportTime',
ellipsis: true
},
{
title: this.$t('file'),
align: 'center',
align: 'left',
dataIndex: 'exportFileName',
scopedSlots: { customRender: 'file' },
ellipsis: true
@@ -11,17 +11,18 @@
<a @click="handleReset">{{$t('empty')}}</a>
</template>
<a-button-group>
<a-button type="primary" @click="handleOpen" style="margin-right: 8px;height: 38px">
<a-icon type="appstore" theme="twoTone" spin/>
<a-button type="primary" @click="handleOpen" style="height: 38px":style='`marginRight:${MarginRight?MarginRight:"8px"}`'>
<!-- <a-icon type="appstore" theme="twoTone" spin/>-->
<a-icon type="filter" theme="filled"/>
<span>{{$t('advancedQuery')}}</span>
</a-button>
<a-button style="margin-right: 8px;height: 38px" v-if="izMobile" type="primary" icon="delete" @click="handleReset"/>
</a-button-group>
</a-tooltip>
<a-button v-else style="margin-right: 8px;height: 38px" type="primary" icon="filter" @click="handleOpen">{{$t('advancedQuery')}}</a-button>
<a-button v-else style="height: 38px" type="primary" icon="filter" @click="handleOpen" :style='`marginRight:${MarginRight?MarginRight:"8px"}`'>{{$t('advancedQuery')}}</a-button>
</slot>
<j-modal
:title="$t('advancedQuery')+$t('constructor')"
:title="$t('advancedQuery')"
:width="1000"
:maskClosable="false"
:visible="visible"
@@ -263,6 +264,10 @@
mixins: [mixinDevice],
components: { JAreaLinkage, JMultiSelectTag, JDate, JSelectDepart, JSelectMultiUser ,PersonnelSelection},
props: {
MarginRight:{
type:String,
required:false
},
/*
fieldList: [{
value:'',
@@ -687,6 +692,7 @@
height: 80px;
line-height: 80px;
margin-bottom: 0;
margin-top: 10px;
}
/deep/ img {
@@ -1,3 +1,7 @@
.box-input{
height: 38px!important;
}
.group-query-strig[data-v-16acf936] {
width: 30px;
text-align: center;
@@ -45401,31 +45401,31 @@
reportUrlText: "",
columns: [{
title: "报表名称",
align: "center",
align: "left",
dataIndex: "name"
}, {
title: "编码",
align: "center",
align: "left",
dataIndex: "code"
}, {
title: "查询SQL",
align: "center",
align: "left",
dataIndex: "cgrSql",
scopedSlots: {
customRender: "cgrSql"
}
}, {
title: "数据源",
align: "center",
align: "left",
dataIndex: "dbSource_dictText"
}, {
title: "创建时间",
align: "center",
align: "left",
dataIndex: "createTime"
}, {
title: "操作",
dataIndex: "action",
align: "center",
align: "left",
scopedSlots: {
customRender: "action"
}
@@ -72384,6 +72384,7 @@
label: "表名"
}
}, [n("a-input", {
staticClass: "box-input",
attrs: {
placeholder: "请输入表名"
},
@@ -72429,8 +72430,9 @@
label: "表描述"
}
}, [n("a-input", {
staticClass: "box-input",
attrs: {
placeholder: "请输入表描述"
placeholder: "请输入表描述",
},
model: {
value: e.queryParam.tableTxt,
@@ -72913,13 +72915,13 @@
dataIndex: "",
key: "rowIndex",
width: 60,
align: "center",
align: "left",
customRender: function(e, t, n) {
return parseInt(n) + 1
}
}, {
title: "表类型",
align: "center",
align: "left",
sorter: !0,
dataIndex: "tableType",
customRender: function(t, n) {
@@ -72930,19 +72932,19 @@
}, {
title: "表名",
sorter: !0,
align: "center",
align: "left",
dataIndex: "tableName"
}, {
title: "表描述",
align: "center",
align: "left",
dataIndex: "tableTxt"
}, {
title: "版本",
align: "center",
align: "left",
dataIndex: "tableVersion"
}, {
title: "同步状态",
align: "center",
align: "left",
sorter: !0,
dataIndex: "isDbSynch",
scopedSlots: {
@@ -72950,13 +72952,13 @@
}
}, {
title: "创建时间",
align: "center",
align: "left",
sorter: !0,
dataIndex: "createTime"
}, {
title: "操作",
dataIndex: "action",
align: "center",
align: "left",
scopedSlots: {
customRender: "action"
}
+1 -1
View File
@@ -373,7 +373,7 @@
}
.title-text {
width: 100px;
width: 110px;
color: #000F16;
display: inline-block;
font-weight: 500;
@@ -773,7 +773,7 @@
console.log('配置')
this.columns.push({
dataIndex: res.db_field_name,
align: 'center',
align: 'left',
ellipsis: true,
sorter: res.sort,
width: 500
@@ -789,7 +789,7 @@
this.columns.push({
title: res.db_field_txt,
dataIndex: res.db_field_name,
align: 'center',
align: 'left',
// ellipsis: true,
fixed: res.click5 ? 'left' : '',
sorter: res.sort,
@@ -1041,6 +1041,7 @@
}
</style>
<style scoped lang="less">
@import'~@assets/less/common.less';
.box {
width: 100%;
height: calc(100% - 100px);
@@ -572,7 +572,7 @@
if (res.type) {
this.columns.push({
dataIndex: res.db_field_name,
align: 'center',
align: 'left',
ellipsis: true,
sorter: res.sort,
width: 500
@@ -588,7 +588,7 @@
this.columns.push({
title: res.db_field_txt,
dataIndex: res.db_field_name,
align: 'center',
align: 'left',
// ellipsis: true,
fixed: res.fixedLeft ? 'left' : '',
sorter: res.sort,
+6 -2
View File
@@ -158,7 +158,7 @@
this.columns.push({
title: res.db_field_txt,
dataIndex: res.db_field_name,
align: 'center',
align: 'left',
ellipsis: true,
sorter: res.sort,
width: 170
@@ -187,7 +187,7 @@
if (this.showAction) {
this.columns.push({
title: this.$t('operation'),
align: 'center',
align: 'left',
fixed: 'right',
width: width,
scopedSlots: { customRender: 'operation' }
@@ -257,6 +257,10 @@
font-weight: bold;
}
/*.table .ant-table-tbody > tr > td {*/
/* color: #040B29 ;*/
/*}*/
.rowClassNameBack {
background: #f5f5f5;
}
@@ -31,9 +31,11 @@
</a-spin>
</template>
<span @click="fetchNotice" class="header-notice">
<a-tooltip placement="bottomRight" :title="$t('MessageCenter')" overlayClassName="tooltipColor">
<a-badge :count="msgTotal">
<a-icon style="font-size: 16px; padding: 4px" type="bell"/>
</a-badge>
</a-tooltip>
</span>
<dynamic-notice ref="showDynamNotice" :path="openPath" :formData="formData"/>
</a-popover>
@@ -260,6 +262,14 @@
.tabs .ant-tabs-nav .ant-tabs-tab-active {
color: #000F16 !important;
}
.tooltipColor .ant-tooltip-inner {
color: #333;
background-color: #fff !important;
}
.tooltipColor .ant-tooltip-arrow::before {
background-color: #fff;
}
</style>
<style lang="less" scoped>
.header-notice {
@@ -33,7 +33,9 @@
<!-- </span>-->
<div class="action" @click="Jumpflybook">
<span class="header-notice">
<a-tooltip placement="bottomRight" :title="$t('userManual')" overlayClassName="tooltipColor">
<a-icon style="font-size: 16px; padding: 4px; color: #000000A6" type="question-circle"/>
</a-tooltip>
</span>
</div>
<header-notice class="action"/>
@@ -54,13 +54,13 @@
{
title: this.$t('fileName'),
dataIndex: 'fileName',
align: 'center',
align: 'left',
width: 260,
ellipsis: true
},
{
title: this.$t('operation'),
align: 'center',
align: 'left',
width: 130,
scopedSlots: { customRender: 'fileOperation' }
}
+229
View File
@@ -0,0 +1,229 @@
import _ from 'lodash'
const events = {
start: 'mousedown',
move: 'mousemove',
stop: 'mouseup'
}
var columnsAll = []
var columnsKey = ''
const DragHandler = {
name: 'nio-drag-handler',
//获取混入的方法(重新设置表头宽度)
inject: ['onResizeColumn'],
props: {
column: { type: Object, required: true },
minWidth: { type: Number, required: true }
},
data() {
return {
dragging: false,
thWidth: 0,// 列头的宽度,用于计算
startX: 0,
moveEvent: {
remove: function() {
}
},
stopEvent: {
remove: function() {
}
}
}
},
//销毁监听
beforeDestroy() {
this.removeEvents()
},
methods: {
//鼠标开始拖拽
handleMouseDown(e) {
e.stopPropagation()
e.preventDefault()
this.handleStart(e)
},
handleStart(e) {
console.log(e)
this.dragging = true
this.removeEvents()
this.thWidth = this.$el.parentNode.getBoundingClientRect().width
if (e instanceof MouseEvent && e.which !== 1) {
return
}
if (e.stopPropagation) e.stopPropagation()
this.startX = e.pageX
this.moveEvent = addEventListenerWrap(document.documentElement, events.move, this.handleMove)
this.stopEvent = addEventListenerWrap(document.documentElement, events.stop, this.handleStop)
},
handleMove(e) {
this.updateWidth(e)
},
handleStop(e) {
this.dragging = false
this.updateWidth(e)
this.removeEvents()
},
updateWidth(e) {
let pageX = e.pageX
const tmpDeltaX = this.startX - pageX
let w = Math.max(this.thWidth - tmpDeltaX, this.minWidth)
w = Math.min(w, Infinity)
this.onResizeColumn(w, this.column)
},
removeEvents() {
this.moveEvent.remove()
this.stopEvent.remove()
}
},
//渲染div 绑定拖拽
render(h) {
const line = h('div', { class: 'nio-drag-handler-line' }, [])
return h('div', { class: 'nio-drag-handler', on: { mousedown: this.handleMouseDown } }, [line])
}
}
const ResizeHeaderOne = function(val, name) {
columnsAll = val
columnsKey = name
return (h, props, children) => {
const { key, column, ...restProps } = props
let col = {}
// 处理多级表头
col = getRenderCoL(key, val)
let content = [].concat(children)
if (col) {
const handlerVNode = h(DragHandler, {
props: {
width: col.width,
minWidth: Math.min(col.width, 100),
column: col
}
}, [])
content = content.concat(
handlerVNode
)
}
return h('th', {
key,
props: { col },
...Object.assign({}, restProps, { class: (restProps.class || '') + ' nio-header-th' })
}, content)
}
}
export const ResizeHeader = {
methods: {
drag(columns, name) {
return {
header: {
cell: ResizeHeaderOne(columns, name)
}
}
}
}
}
const getRenderCoL = (key, tbCols) => {
let result = ''
_.forEach(tbCols, (item) => {
if (item.children) {
result = getRenderCoL(key, item.children)
return !result
} else {
const k = item.dataIndex || item.key
if (k === key) {
result = item
return false
}
}
})
return result
}
//拖拽的节流方法
const throttle2 = (fn, delay) => {
let valid = true
return (...args) => {
if (!valid) {
return
}
valid = false
setTimeout(() => {
fn(...args)
valid = true
}, delay)
}
}
//对table组件进行重构的核心方法组件
//监听鼠标移动的方法
function addEventListenerWrap(target, eventType, cb) {
if (target && target.addEventListener) {
target.addEventListener(eventType, cb)
}
return {
remove: () => {
if (target && target.removeEventListener) {
target.removeEventListener(eventType, cb)
}
}
}
}
//在table组件中混入的一个方法 provide => onResizeColumn
//目的是在table重写中(DragHandler方法)
//可以用到构造的onResizeColumn方法(重新设置表头的宽度)
export const ResizeColumnProvide = {
name: 'ResizeColumnProvideMixin',
provide() {
return {
onResizeColumn: this.onResizeColumn
}
},
data() {
const onResizeColumn = throttle2(this._resizeColumn, 30)
return {
moving: false, //这个属性是为了在拖拽时 阻止表头触发排序的功能
onResizeColumn
}
},
methods: {
_resizeColumn(w, column) {
this.moving = true
let time = setTimeout(() => {
this.moving = false
clearTimeout(time)
}, 2000)
//在拖拽时找到对应表头 重新设置表头的宽度
let num = -1
let numOne = -1
for (let i = 0; i < columnsAll.length; i++) {
if (columnsAll[i].dataIndex === column.dataIndex) {
num = i
break
}
if (columnsAll[i].children && columnsAll[i].children.length > 0) {
for (let j = 0; j < columnsAll[i].children.length; j++) {
if (columnsAll[i].children[j].dataIndex === column.dataIndex) {
num = i
numOne = j
break
}
}
}
}
// const matchedIndex = columns.findIndex(item => item.dataIndex === column.dataIndex)
// console.log(matchedIndex)
// columns[matchedIndex].width = w
if (numOne > -1) {
columnsAll[num].children[numOne].width = w
} else {
columnsAll[num].width = w
}
this[columnsKey] = columnsAll
}
}
}
@@ -57,12 +57,14 @@
<span class="text">{{$t('filingExternalOpinions')}}:</span>
<div @click="clickButtonToUpload('opinionArchiveId')" style="color: #21c9cc"
v-if="formInline.createBy == this.userInfoQuery.username" class="operator-text">
<a-icon type="cloud-upload"/>
<a-button type="primary"style="margin-right: 8px;height: 32px">
{{$t('clickUpload')}}
</a-button>
</div>
<div @click="seeFileClick(formInline.opinionArchiveId)" style="color: #21c9cc" class="operator-text">
<a-icon type="eye"/>
<a-button type="primary"style="margin-right: 8px;height: 32px">
{{$t('viewFile')}}
</a-button>
</div>
</div>
</div>
@@ -100,35 +102,35 @@
columns: [
{
title: this.$t('relevantSections'),
align: 'center',
align: 'left',
dataIndex: 'relatedSection',
ellipsis: true,
width: 180
},
{
title: this.$t('questionsSuggestions'),
align: 'center',
align: 'left',
width: 180,
ellipsis: true,
dataIndex: 'issueOrSuggest'
},
{
title: this.$t('reason'),
align: 'center',
align: 'left',
width: 180,
ellipsis: true,
dataIndex: 'reason'
},
{
title: this.$t('clauseContent'),
align: 'center',
align: 'left',
width: 180,
ellipsis: true,
dataIndex: 'clauseContent'
},
{
title: this.$t('enclosure'),
align: 'center',
align: 'left',
width: 180,
ellipsis: true,
dataIndex: 'accessoryFile',
@@ -136,14 +138,14 @@
},
{
title: this.$t('Assessor'),
align: 'center',
align: 'left',
width: 100,
ellipsis: true,
dataIndex: 'createBy'
},
{
title: this.$t('proposedTime'),
align: 'center',
align: 'left',
width: 150,
ellipsis: true,
dataIndex: 'submitTime'
@@ -198,7 +198,7 @@
columns: [
{
title: this.$t('standard'),
align: 'center',
align: 'left',
dataIndex: 'serial_number',
width: 170,
ellipsis: true,
@@ -206,7 +206,7 @@
},
{
title: this.$t('title'),
align: 'center',
align: 'left',
dataIndex: 'title',
ellipsis: true,
width: 170,
@@ -214,28 +214,28 @@
},
{
title: this.$t('status'),
align: 'center',
align: 'left',
width: 140,
ellipsis: true,
dataIndex: 'state'
},
{
title: this.$t('zoneOfApplication'),
align: 'center',
align: 'left',
width: 170,
ellipsis: true,
dataIndex: 'region'
},
{
title: this.$t('technicalField'),
align: 'center',
align: 'left',
ellipsis: true,
width: 170,
dataIndex: 'technology_territory'
},
{
title: this.$t('correspondingStandard'),
align: 'center',
align: 'left',
ellipsis: true,
width: 170,
dataIndex: 'corresponding_standard'
@@ -424,6 +424,7 @@
</script>
<style scoped>
@import '~@assets/less/common.less';
/deep/.propbox .ant-form-explain{
margin-top: -17px !important;
}
@@ -86,7 +86,7 @@
</div>
<div class="table-operator">
<div @click="initiatingProcessClick" v-has="'regulatoryComments:initiationProcess'" class="operator-text">
<a-icon type="apartment"/>
<a-icon type="solution"/>
{{$t('initiatingProcess')}}
</div>
<div @click="BatchDelete"
@@ -177,7 +177,7 @@
columns: [
{
title: this.$t('standard'),
align: 'center',
align: 'left',
dataIndex: 'serialNumber',
ellipsis: true,
width: 170,
@@ -185,28 +185,28 @@
},
{
title: this.$t('title'),
align: 'center',
align: 'left',
dataIndex: 'title',
ellipsis: true,
width: 280
},
{
title: this.$t('technicalField'),
align: 'center',
align: 'left',
width: 170,
ellipsis: true,
dataIndex: 'technologyTerritoryName'
},
{
title: this.$t('ProcessStatus'),
align: 'center',
align: 'left',
width: 140,
ellipsis: true,
dataIndex: 'gatherResultShow'
},
{
title: this.$t('Sponsor'),
align: 'center',
align: 'left',
width: 140,
ellipsis: true,
dataIndex: 'createBy'
@@ -220,21 +220,21 @@
},
{
title: this.$t('dateOfInitiation'),
align: 'center',
align: 'left',
ellipsis: true,
width: 140,
dataIndex: 'startTime'
},
{
title: this.$t('closingDate'),
align: 'center',
align: 'left',
ellipsis: true,
width: 140,
dataIndex: 'endTime'
},
{
title: this.$t('operation'),
align: 'center',
align: 'left',
fixed: 'right',
width: 210,
scopedSlots: { customRender: 'operation' }
@@ -76,7 +76,7 @@
columns: [
{
title: this.$t('number'),
align: 'center',
align: 'left',
width: 70,
customRender: function(t, r, index) {
return parseInt(index) + 1
@@ -85,20 +85,20 @@
{
title: this.$t('problemLabel'),
dataIndex: 'problemLabel',
align: 'center',
align: 'left',
width: 240,
ellipsis: true
},
{
title: this.$t('personCharge'),
dataIndex: 'chargePersonIdName',
align: 'center',
align: 'left',
width: 240,
ellipsis: true
},
{
title: this.$t('operation'),
align: 'center',
align: 'left',
fixed: 'right',
width: 180,
scopedSlots: { customRender: 'operation' }
@@ -21,6 +21,7 @@
v-model="queryParam.serial_number"></a-input>
</div>
</a-col>
<template v-if="toggleSearchStatus">
<a-col :md="12" :sm="8">
<div class="box-title-text">
<div class="title-text" :title="$t('title')">
@@ -41,6 +42,7 @@
:triggerChange="false" :dictCode="'state'"/>
</div>
</a-col>
</template>
<span style="float: right;overflow: hidden;" class="table-page-search-submitButtons">
<a-col :md="12" :sm="24">
<globalAdvancedQuery ref="globalAdvancedQueryRef"
@@ -48,6 +50,10 @@
:fieldList="fieldList"/>
<a-button class="box-button" type="primary" @click="searchQuery">{{$t('query')}}</a-button>
<a-button class="box-button" style="margin-left: 8px" @click="searchReset">{{$t('reset')}}</a-button>
<a @click="handleToggleSearch" style="margin-left: 8px">
{{ !toggleSearchStatus ? $t('open') : $t('away') }}
<a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>
</a>
</a-col>
</span>
</a-row>
@@ -96,6 +102,7 @@
props: ['url'],
data() {
return {
toggleSearchStatus: false,
visible: false,
queryParam: {},
confirmLoading: false,
@@ -105,31 +112,31 @@
{
title: this.$t('standard'),
dataIndex: 'serial_number',
align: 'center',
align: 'left',
ellipsis: true
},
{
title: this.$t('title'),
dataIndex: 'title',
align: 'center',
align: 'left',
ellipsis: true
},
{
title: this.$t('zoneOfApplication'),
dataIndex: 'region',
align: 'center',
align: 'left',
ellipsis: true
},
{
title: this.$t('ImplementationDate'),
dataIndex: 'xin1_che1_xing2_shi2_shi1_ri4_qi1',
align: 'center',
align: 'left',
ellipsis: true
},
{
title: this.$t('vehicleInProductionDate'),
dataIndex: 'implement_time',
align: 'center',
align: 'left',
ellipsis: true
}
],
@@ -148,6 +155,9 @@
},
methods: {
handleToggleSearch() {
this.toggleSearchStatus = !this.toggleSearchStatus
},
addModel(value) {
this.pageNo = 1
this.visible = true
@@ -290,7 +300,7 @@
}
.title-text {
width: 33px;
width: 110px;
color: #000F16;
display: inline-block;
font-weight: 500;
@@ -312,4 +322,7 @@
.box-button {
height: 38px;
}
/deep/.ant-table-column-title{
font-weight: bold!important;
}
</style>
@@ -114,8 +114,8 @@
{{$t('contactTheFounder')}}
</div>
<div class="content-box-button-text" @click="forwardClick(item)">
<a-icon type="logout"/>
{{$t('forward')}}
<a-icon type="share-alt"/>
{{$t('share')}}
</div>
<div class="content-box-button-text">
<a-icon type="eye"/>
@@ -178,7 +178,7 @@
<JLoading :loading="loading">{{$t('dataLoading')}}</JLoading>
<classificationMaintenanceModel @classificationMaintenanceModelForm="classificationMaintenanceModelForm"
ref="classificationMaintenanceModelRef"/>
<SelectedBy ref="SelectedByRef" :title="$t('forward')" @SelectedByForm="SelectedByForm"></SelectedBy>
<SelectedBy ref="SelectedByRef" :title="$t('share')" @SelectedByForm="SelectedByForm"></SelectedBy>
</div>
</template>
@@ -58,8 +58,8 @@
{{$t('contactTheFounder')}}
</div>
<div class="content-box-button-text" @click="forwardClick(queryForm)">
<a-icon type="logout"/>
{{$t('forward')}}
<a-icon type="share-alt"/>
{{$t('share')}}
</div>
<div class="content-box-button-text">
<a-icon type="eye"/>
@@ -144,7 +144,7 @@
</div>
</div>
</div>
<SelectedBy ref="SelectedByRef" :title="$t('forward')" @SelectedByForm="SelectedByForm"></SelectedBy>
<SelectedBy ref="SelectedByRef" :title="$t('share')" @SelectedByForm="SelectedByForm"></SelectedBy>
</div>
<a-modal
:title="$t('replyToComments')"
@@ -252,7 +252,7 @@
</script>
<style scoped lang="less">
@import '~@assets/less/common.less';
@import'~@assets/less/common.less';
.doc-detail {
background: #fff;
@@ -47,13 +47,13 @@
<div @click="monthlyTitleTemplateClick"
v-has="'monthlyReportFilling:titleTemplate'"
class="operator-text">
<a-icon type="apartment"/>
<a-icon type="calendar"/>
{{$t('monthlyTitleTemplate')}}
</div>
<div @click="monthlyIntegrationAndExportClick"
v-has="'monthlyReportFilling:integratedExport'"
class="operator-text">
<a-icon type="import"/>
<a-icon type="export" :rotate="-90"/>
{{$t('monthlyIntegrationAndExport')}}
</div>
<div @click="addContentClick"
@@ -165,56 +165,56 @@
columns: [
{
title: this.$t('firstLevelDirectory'),
align: 'center',
align: 'left',
dataIndex: 'memoriesChapterOneName',
ellipsis: true,
width: 170
},
{
title: this.$t('secondaryDirectory'),
align: 'center',
align: 'left',
dataIndex: 'memoriesChapterName',
ellipsis: true,
width: 170
},
{
title: this.$t('chineseTitle'),
align: 'center',
align: 'left',
dataIndex: 'titleCn',
ellipsis: true,
width: 170
},
{
title: this.$t('englishTitle'),
align: 'center',
align: 'left',
width: 170,
ellipsis: true,
dataIndex: 'titleEn'
},
{
title: this.$t('regulatoryContact'),
align: 'center',
align: 'left',
width: 170,
ellipsis: true,
dataIndex: 'lawsContactName'
},
{
title: this.$t('completedBy'),
align: 'center',
align: 'left',
ellipsis: true,
width: 170,
dataIndex: 'createBy'
},
{
title: this.$t('exportStatus'),
align: 'center',
align: 'left',
ellipsis: true,
width: 170,
dataIndex: 'exportStateName'
},
{
title: this.$t('operation'),
align: 'center',
align: 'left',
fixed: 'right',
width: 190,
scopedSlots: { customRender: 'operation' }
@@ -116,7 +116,7 @@
columns: [
{
title: this.$t('RegulationMonthlyName'),
align: 'center',
align: 'left',
dataIndex: 'name',
width: 190,
ellipsis: true,
@@ -124,7 +124,7 @@
},
{
title: this.$t('monthlyLanguage'),
align: 'center',
align: 'left',
dataIndex: 'language',
width: 170,
ellipsis: true,
@@ -132,28 +132,28 @@
},
{
title: this.$t('releaseStatus'),
align: 'center',
align: 'left',
width: 140,
ellipsis: true,
dataIndex: 'issueStatus_dictText'
},
{
title: this.$t('uploadTime'),
align: 'center',
align: 'left',
width: 170,
ellipsis: true,
dataIndex: 'createTime'
},
{
title: this.$t('uploadedBy'),
align: 'center',
align: 'left',
ellipsis: true,
width: 170,
dataIndex: 'createBy'
},
{
title: this.$t('operation'),
align: 'center',
align: 'left',
fixed: 'right',
width: 240,
scopedSlots: { customRender: 'operation' }
@@ -21,6 +21,7 @@
v-model="queryParam.serial_number"></a-input>
</div>
</a-col>
<template v-if="toggleSearchStatus">
<a-col :md="12" :sm="8">
<div class="box-title-text">
<div class="title-text" :title="$t('title')">
@@ -41,6 +42,7 @@
:triggerChange="false" :dictCode="'state'"/>
</div>
</a-col>
</template>
<span style="float: right;overflow: hidden;" class="table-page-search-submitButtons">
<a-col :md="12" :sm="24">
<globalAdvancedQuery ref="globalAdvancedQueryRef"
@@ -48,6 +50,10 @@
:fieldList="fieldList"/>
<a-button class="box-button" type="primary" @click="searchQuery">{{$t('query')}}</a-button>
<a-button class="box-button" style="margin-left: 8px" @click="searchReset">{{$t('reset')}}</a-button>
<a @click="handleToggleSearch" style="margin-left: 8px">
{{ !toggleSearchStatus ? $t('open') : $t('away') }}
<a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>
</a>
</a-col>
</span>
</a-row>
@@ -100,6 +106,7 @@
},
data() {
return {
toggleSearchStatus: false,
visible: false,
confirmLoading: false,
selectedRowKeys: [],
@@ -108,19 +115,19 @@
{
title: this.$t('standard'),
dataIndex: 'serial_number',
align: 'center',
align: 'left',
ellipsis: true
},
{
title: this.$t('title'),
dataIndex: 'title',
align: 'center',
align: 'left',
ellipsis: true
},
{
title: this.$t('zoneOfApplication'),
dataIndex: 'region',
align: 'center',
align: 'left',
ellipsis: true
},
// {
@@ -138,13 +145,13 @@
{
title: this.$t('ImplementationDate'),
dataIndex: 'xin1_che1_xing2_shi2_shi1_ri4_qi1',
align: 'center',
align: 'left',
ellipsis: true
},
{
title: this.$t('vehicleInProductionDate'),
dataIndex: 'implement_time',
align: 'center',
align: 'left',
ellipsis: true
}
// {
@@ -170,6 +177,9 @@
},
methods: {
handleToggleSearch() {
this.toggleSearchStatus = !this.toggleSearchStatus
},
addModel() {
this.visible = true
this.queryParam = {}
@@ -295,7 +305,7 @@
}
.title-text {
width: 69px;
width: 110px;
color: #000F16;
display: inline-block;
font-weight: 500;
@@ -48,7 +48,7 @@
<span class="title-text-text"
:title="$t('technicalField')">{{$t('technicalField')}}</span>
</div>
<a-form-model-item class="itemModel" prop="technologyTerritory">
<a-form-model-item class="itemModel" prop="technologyTerritory" style="height: 40px">
<a-tree-select
tree-node-filter-prop="title"
v-model="formInline.technologyTerritory"
@@ -133,7 +133,7 @@
<span class="title-text-text"
:title="$t('scopeOfApplication')">{{$t('scopeOfApplication')}}</span>
</div>
<a-form-model-item class="itemModel-multi itemModel-multi-one">
<a-form-model-item class="itemModel-multi itemModel-multi-one" style="border: none">
<j-multi-select-tag class="box-input" v-model="formInline.applyScope"
:placeholder="$t('PleaseSelect')+$t('scopeOfApplication')"
:type="'checkbox'"
@@ -150,7 +150,7 @@
<span class="title-text-text"
:title="$t('status')">{{$t('status')}}</span>
</div>
<a-form-model-item class="itemModel-multi itemModel-multi-one">
<a-form-model-item class="itemModel-multi itemModel-multi-one" style="border: none">
<j-dict-select-tag class="box-input" v-model="formInline.state"
:disabled="disabled"
:placeholder="$t('PleaseSelect')+$t('status')"
@@ -167,7 +167,7 @@
<span class="title-text-text"
:title="$t('usage')">{{$t('usage')}}</span>
</div>
<a-form-model-item class="itemModel-multi itemModel-multi-one">
<a-form-model-item class="itemModel-multi itemModel-multi-one" style="border: none">
<j-dict-select-tag class="box-input" v-model="formInline.useMethod"
:placeholder="$t('PleaseSelect')+$t('usage')"
:type="'radio'"
@@ -615,7 +615,7 @@
.itemModel-multi-one {
border: 1px solid #d9d9d9;
border-radius: 4px;
padding: 0 8px;
padding: 0 0px;
box-sizing: border-box;
}
</style>
@@ -74,7 +74,7 @@
columns: [
{
title: this.$t('number'),
align: 'center',
align: 'left',
width: 70,
customRender: function(t, r, index) {
return parseInt(index) + 1
@@ -82,21 +82,21 @@
},
{
title: this.$t('chineseTitle'),
align: 'center',
align: 'left',
dataIndex: 'titleCn',
ellipsis: true,
width: 320
},
{
title: this.$t('englishTitle'),
align: 'center',
align: 'left',
width: 320,
ellipsis: true,
dataIndex: 'titleEn'
},
{
title: this.$t('operation'),
align: 'center',
align: 'left',
fixed: 'right',
width: 280,
scopedSlots: { customRender: 'operation' }
@@ -92,7 +92,7 @@
:pagination="false"
:loading="loading">
<div slot="clauseContent" slot-scope="text,result">
<a-tooltip placement="topLeft">
<a-tooltip overlayClassName="tooltipColor" placement="topLeft" overlayStyle>
<template slot="title">
<span v-html="text"></span>
</template>
@@ -150,37 +150,37 @@
{
title: this.$t('clauseNo'),
dataIndex: 'itemNum',
align: 'center',
align: 'left',
ellipsis: true,
width: 120
},
{
title: this.$t('clauseName'),
dataIndex: 'itemName',
align: 'center',
align: 'left',
ellipsis: true
},
{
title: this.$t('clauseContent'),
dataIndex: 'itemContent',
align: 'center',
align: 'left',
scopedSlots: { customRender: 'clauseContent' }
},
{
title: this.$t('evaluationMethod'),
dataIndex: 'evaluationMethods',
align: 'center',
align: 'left',
scopedSlots: { customRender: 'evaluationMethod' }
},
{
title: this.$t('Assessor'),
dataIndex: 'Assessor',
align: 'center',
align: 'left',
scopedSlots: { customRender: 'Assessor' }
},
{
title: this.$t('operation'),
align: 'center',
align: 'left',
width: 120,
scopedSlots: { customRender: 'operation' }
}
@@ -322,6 +322,16 @@
}
</script>
<style>
.tooltipColor .ant-tooltip-inner {
color: #333;
background-color: #fff !important;
}
.tooltipColor .ant-tooltip-arrow::before {
background-color: #fff !important;
}
</style>
<style scoped>
.box-input {
display: inline-block;
@@ -10,7 +10,7 @@
</div>
<div class="doc-detail-right" v-if='flag'>
<div @click="CurrentStandard" class="operator-text-text" :title="$t('initiateSupplementaryProcess')">
<a-icon type="profile"/>
<a-icon type="solution"/>
{{$t('initiateSupplementaryProcess')}}
</div>
<div @click="endProcessClick"
@@ -110,7 +110,7 @@
{
title: this.$t('engineer'),
dataIndex: 'createBy',
align: 'center',
align: 'left',
width: 160,
ellipsis: true,
customRender: (value, row, index) => {
@@ -129,7 +129,7 @@
{
title: this.$t('complianceResults'),
dataIndex: 'complianceResultName',
align: 'center',
align: 'left',
width: 160,
ellipsis: true,
customRender: (value, row, index) => {
@@ -148,20 +148,20 @@
{
title: this.$t('relevantSections'),
dataIndex: 'relatedSection',
align: 'center',
align: 'left',
width: 160,
ellipsis: true
},
{
title: this.$t('problemDescription'),
dataIndex: 'issueOrSuggest',
align: 'center',
align: 'left',
ellipsis: true
},
{
title: this.$t('enclosure'),
dataIndex: 'accessoryFile',
align: 'center',
align: 'left',
width: 160,
ellipsis: true,
scopedSlots: { customRender: 'accessoryFile' }
@@ -429,6 +429,10 @@
.operator-text-feed {
margin-top: 27px;
}
/deep/.ant-table-column-title{
font-weight: bold!important;
}
</style>
<style>
.box-clause .ant-card-body {
@@ -129,7 +129,7 @@
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('uploadRelevantMaterials')">{{$t('uploadRelevantMaterials')}}</span>
:title="$t('RelevantMaterials')">{{$t('RelevantMaterials')}}</span>
</div>
<a-form-model-item class="itemModel" prop="accessory_id">
<a-button type="primary" class="button-text"
@@ -327,7 +327,7 @@
columns: [
{
title: this.$t('standard'),
align: 'center',
align: 'left',
dataIndex: 'serial_number',
width: 170,
ellipsis: true,
@@ -335,7 +335,7 @@
},
{
title: this.$t('title'),
align: 'center',
align: 'left',
dataIndex: 'title',
ellipsis: true,
width: 170,
@@ -343,34 +343,34 @@
},
{
title: this.$t('status'),
align: 'center',
align: 'left',
width: 140,
ellipsis: true,
dataIndex: 'state'
},
{
title: this.$t('zoneOfApplication'),
align: 'center',
align: 'left',
width: 170,
ellipsis: true,
dataIndex: 'region'
},
{
title: this.$t('technicalField'),
align: 'center',
align: 'left',
ellipsis: true,
width: 170,
dataIndex: 'technology_territory'
},
{
title: this.$t('correspondingStandard'),
align: 'center',
align: 'left',
ellipsis: true,
width: 170,
dataIndex: 'corresponding_standard'
},
{
align: 'center',
align: 'left',
ellipsis: true,
width: 170,
scopedSlots: {
@@ -144,34 +144,34 @@
{
title: this.$t('clauseNo'),
dataIndex: 'items_num',
align: 'center',
align: 'left',
width: 180,
ellipsis: true
},
{
title: this.$t('clauseName'),
dataIndex: 'items_name',
align: 'center',
align: 'left',
width: 180,
ellipsis: true
},
{
title: this.$t('clauseContent'),
dataIndex: 'iterms_conditions',
align: 'center',
align: 'left',
scopedSlots: { customRender: 'clauseContent' }
},
{
title: this.$t('technicalField'),
dataIndex: 'technology_territory',
align: 'center',
align: 'left',
width: 180,
ellipsis: true
},
{
title: this.$t('informationCategory'),
dataIndex: 'information_category',
align: 'center',
align: 'left',
width: 180,
ellipsis: true
}
@@ -89,7 +89,7 @@
<div @click="initiatingProcessClick"
v-has="'regulatoryAndTechnicalAssessment:initiationProcess'"
class="operator-text">
<a-icon type="apartment"/>
<a-icon type="solution"/>
{{$t('initiatingProcess')}}
</div>
<div @click="BatchDelete"
@@ -240,42 +240,42 @@
columns: [
{
title: this.$t('standard'),
align: 'center',
align: 'left',
dataIndex: 'serialNumber',
ellipsis: true,
width: 170
},
{
title: this.$t('title'),
align: 'center',
align: 'left',
dataIndex: 'title',
ellipsis: true,
width: 170
},
{
title: this.$t('technicalField'),
align: 'center',
align: 'left',
width: 170,
ellipsis: true,
dataIndex: 'technologyTerritoryName'
},
{
title: this.$t('evaluationMethod'),
align: 'center',
align: 'left',
width: 170,
ellipsis: true,
dataIndex: 'evaluationMethodsName'
},
{
title: this.$t('ProcessStatus'),
align: 'center',
align: 'left',
width: 170,
ellipsis: true,
dataIndex: 'flowStatusName'
},
{
title: this.$t('Sponsor'),
align: 'center',
align: 'left',
width: 140,
ellipsis: true,
dataIndex: 'createBy'
@@ -289,28 +289,28 @@
},
{
title: this.$t('dateOfInitiation'),
align: 'center',
align: 'left',
ellipsis: true,
width: 170,
dataIndex: 'startTime'
},
{
title: this.$t('closingDate'),
align: 'center',
align: 'left',
ellipsis: true,
width: 170,
dataIndex: 'endTime'
},
{
title: this.$t('remarks'),
align: 'center',
align: 'left',
ellipsis: true,
width: 170,
dataIndex: 'remark'
},
{
title: this.$t('operation'),
align: 'center',
align: 'left',
fixed: 'right',
width: 220,
scopedSlots: { customRender: 'operation' }
@@ -66,14 +66,14 @@
columns: [
{
title: this.$t('MessageContent'),
align: 'center',
align: 'left',
dataIndex: 'msgContent',
ellipsis: true,
scopedSlots: { customRender: 'msgContent' }
},
{
title: this.$t('NotificationTime'),
align: 'center',
align: 'left',
width: 200,
dataIndex: 'createTime'
}
@@ -161,7 +161,7 @@
}
.title-text {
width: 66px;
width: 110px;
color: #000F16;
display: inline-block;
font-weight: 500;
@@ -125,14 +125,14 @@
dataIndex: 'serialNumber',
key: 'serialNumber',
scopedSlots: { customRender: 'serialNumber' },
align: 'center',
align: 'left',
sorter:true,
ellipsis: true,
width: 180
},
{
title: this.$t('title'),
align: 'center',
align: 'left',
scopedSlots: { customRender: 'serialtitle' },
width: 180,
ellipsis: true,
@@ -140,7 +140,7 @@
},
{
title: this.$t('status'),
align: 'center',
align: 'left',
width: 180,
ellipsis: true,
sorter:true,
@@ -148,7 +148,7 @@
},
{
title: this.$t('collectionTime'),
align: 'center',
align: 'left',
width: 180,
ellipsis: true,
sorter:true,
@@ -158,7 +158,7 @@
title: this.$t('operation'),
dataIndex: 'action',
scopedSlots: { customRender: 'action' },
align: 'center',
align: 'left',
fixed: 'right',
width: 170
}
@@ -345,7 +345,7 @@
}
.title-text {
width: 43px;
width: 110px;
color: #000F16;
display: inline-block;
font-weight: 500;
@@ -184,7 +184,7 @@
:loading="loading"
>
<span slot="content" slot-scope="text,record">
<a-tooltip placement="topLeft">
<a-tooltip placement="topLeft" overlayClassName="tooltipColor">
<template slot="title">
<span v-html="text"></span>
</template>
@@ -293,7 +293,7 @@
{
title: this.$t('standardName'),
dataIndex: 'title',
align: 'center',
align: 'left',
ellipsis: true,
scopedSlots: { customRender: 'operation' }
}
@@ -302,13 +302,13 @@
{
title: this.$t('fileName'),
dataIndex: 'fileName',
align: 'center',
align: 'left',
width: 260,
ellipsis: true
},
{
title: this.$t('operation'),
align: 'center',
align: 'left',
width: 130,
scopedSlots: { customRender: 'fileOperation' }
}
@@ -331,21 +331,21 @@
{
title: this.$t('ModificationContent'),
dataIndex: 'content',
align: 'center',
align: 'left',
ellipsis: true,
scopedSlots: { customRender: 'content' }
},
{
title: this.$t('ModificationTime'),
dataIndex: 'createTime',
align: 'center',
align: 'left',
ellipsis: true,
width: 180
},
{
title: this.$t('personnel'),
dataIndex: 'createBy',
align: 'center',
align: 'left',
ellipsis: true,
width: 180
}
@@ -575,9 +575,17 @@
.uploadFile .ant-upload {
display: none !important;
}
.tooltipColor .ant-tooltip-inner {
color: #333;
background-color: #fff !important;
}
.tooltipColor .ant-tooltip-arrow::before {
background-color: #fff;
}
</style>
<style lang="less" scoped>
@import '~@assets/less/common.less';
@import'~@assets/less/common.less';
.doc-detail {
background: #fff;
@@ -810,4 +818,14 @@
color: #00B3BE !important;
cursor: pointer;
}
///deep/.table .ant-table-thead > tr > th {
// font-weight: bolder;
//}
///deep/.ant-table-thead > tr > th {
// background: #f3f6f6;
//}
///deep/.table .ant-table-tbody > tr > td {
// color: #040B29 ;
//}
</style>
@@ -17,7 +17,7 @@
{{$t('exportWithFile')}}
</div>
<div @click="handleCompare" class="operator-text" v-has="'document:pullMessage'">
<a-icon type="rocket" :rotate="45"/>
<a-icon type="share-alt"/>
{{$t('share')}}
</div>
<div @click="handleModule" class="operator-text" v-has="'document:exportTemplate'">
@@ -7,11 +7,11 @@
</div>
<div class="table-operator">
<div class="operator-text" @click="handleUpload" v-has="'ocr:ocrRestful:addOcrRecord'">
<a-icon type="plus" />
<a-icon type="cloud-upload" />
{{ $t('upload1') }}
</div>
<div class="operator-text" @click="handleFileExport" v-has="'document:ocrPageInfo'">
<a-icon type="export" />
<a-icon type="database" />
{{ $t('RetrieveFiles') }}
</div>
<div class="operator-text" @click="handleDel" v-has="'ocr:ocrRecord:deleteBatch'">
@@ -10,7 +10,7 @@
{{ $t('SplitText') }}
</div>
<div class="operator-text" @click="handleExport" v-has="'split:sarFileSplitInfo:splitResult'">
<a-icon type="export"/>
<a-icon type="import" :rotate="-90"/>
{{ $t('ImportResults') }}
</div>
<div class="operator-text" @click="handleDel" v-has="'split:sarFileSplitInfo:deleteBatch'">
@@ -1280,8 +1280,12 @@
justify-content: space-around;
.title-flex {
width: 75px;
height: 35px;
text-align: center;
border-radius: 5px;
border: 1px solid #d9d9d9;
padding: 10px 40px;
padding: 7px;
cursor: pointer;
}
@@ -56,10 +56,10 @@
<a-menu-item key="3" @click="orgDelete" v-if="deleteNode"
v-has="'split:sarFileSplitMenu:delete'">{{ $t('deleteNode') }}
</a-menu-item>
<a-menu-item key="4" @click="orgMoveUp" v-if="deleteNode"
<a-menu-item key="4" @click="orgMoveUp" v-if="deleteNode && moveUpFlag"
v-has="'split:sarFileSplitMenu:moveUp'">{{ $t('moveUp') }}
</a-menu-item>
<a-menu-item key="5" @click="orgmoveDown" v-if="deleteNode"
<a-menu-item key="5" @click="orgmoveDown" v-if="deleteNode && moveDownFlag"
v-has="'split:sarFileSplitMenu:moveDown'">{{ $t('moveDown') }}
</a-menu-item>
</a-menu>
@@ -1258,7 +1258,7 @@ export default {
.split-detail-left {
/*height: 100%;*/
width: 300px;
width: 230px;
float: left;
padding-right: 20px;
/*border-right: 1px solid #E6E7EC;*/
@@ -1287,7 +1287,7 @@ export default {
.split-detail-right {
padding-left: 20px;
width: calc(100% - 300px);
width: calc(100% - 230px);
float: right;
border-left: 1px solid #E6E7EC;
/*flex: 1;*/
@@ -123,7 +123,7 @@
title: this.$t('standard'),
dataIndex: 'serialNumber',
key: 'serialNumber',
align: 'center',
align: 'left',
width: 180,
scopedSlots: { customRender: 'serialNumber' },
sorter:true,
@@ -131,7 +131,7 @@
},
{
title: this.$t('title'),
align: 'center',
align: 'left',
width: 180,
dataIndex: 'title',
scopedSlots: { customRender: 'serialtitle' },
@@ -139,7 +139,7 @@
},
{
title: this.$t('status'),
align: 'center',
align: 'left',
width: 180,
dataIndex: 'state',
sorter:true,
@@ -147,7 +147,7 @@
},
{
title: this.$t('subscriptionTime'),
align: 'center',
align: 'left',
width: 180,
dataIndex: 'createTime',
sorter:true,
@@ -158,7 +158,7 @@
dataIndex: 'action',
fixed: 'right',
scopedSlots: { customRender: 'action' },
align: 'center',
align: 'left',
width: 170
}
],
@@ -357,7 +357,7 @@
}
.title-text {
width: 33px;
width: 110px;
color: #000F16;
display: inline-block;
font-weight: 500;
@@ -117,27 +117,27 @@
title: this.$t('DisplayArea'),
dataIndex: 'showArea',
key: 'showArea',
align: "center",
align: "left",
width: 100,
ellipsis: true,
},
{
title: this.$t('enName'),
align: "center",
align: "left",
width: 100,
dataIndex: 'enName',
ellipsis: true,
},
{
title: this.$t('Module'),
align: "center",
align: "left",
width: 100,
dataIndex: 'isModelName',
ellipsis: true,
},
{
title: this.$t('SortNumber'),
align: "center",
align: "left",
width: 40,
dataIndex: 'sort',
},
@@ -145,7 +145,7 @@
title: this.$t('operation'),
dataIndex: 'action',
scopedSlots: {customRender: 'action'},
align: "center",
align: "left",
width: 60
}
],
@@ -48,20 +48,20 @@
title: this.$t('name'),
dataIndex: 'itemText',
key: 'itemText',
align: "center",
align: "left",
ellipsis: true,
width: 100,
},
{
title: this.$t('enName'),
align: "center",
align: "left",
width: 100,
ellipsis: true,
dataIndex: 'enName',
},
{
title: this.$t('describe'),
align: "center",
align: "left",
width: 100,
ellipsis: true,
dataIndex: 'description',
@@ -70,7 +70,7 @@
title: this.$t('operation'),
dataIndex: 'action',
scopedSlots: {customRender: 'action'},
align: "center",
align: "left",
width: 170
}
],
@@ -140,19 +140,19 @@
title: this.$t('LabelName'),
dataIndex: 'dictName',
key: 'dictName',
align: 'center',
align: 'left',
ellipsis: true,
width: 100
},
{
title: this.$t('LabelType'),
align: 'center',
align: 'left',
width: 100,
dataIndex: 'attributeTypeName'
},
{
title: this.$t('describe'),
align: 'center',
align: 'left',
dataIndex: 'description',
scopedSlots: { customRender: 'describe' },
ellipsis: true,
@@ -160,7 +160,7 @@
},
{
title: this.$t('DisplayOrder'),
align: 'center',
align: 'left',
width: 100,
dataIndex: 'orderNum'
},
@@ -168,7 +168,7 @@
title: this.$t('operation'),
dataIndex: 'action',
scopedSlots: { customRender: 'action' },
align: 'center',
align: 'left',
width: 170
}
],
@@ -508,7 +508,7 @@
}
.title-text {
width: 60px;
width: 110px;
color: #000F16;
display: inline-block;
font-weight: 500;
@@ -46,7 +46,7 @@
{{$t('newlyAdded')}}
</div>
<div class="operator-text" @click="handleShow" v-if="key=='1'">
<a-icon type="rocket" :rotate="45"/>
<a-icon type="unordered-list"/>
{{$t('ExhibitionAreaManagement')}}
</div>
<div class="operator-text" @click="batDelete" v-has="'tag:logicDeleteBatch'">
@@ -133,37 +133,37 @@
taglabColumns: [
{
title: this.$t('ChineseName'),
align: 'center',
align: 'left',
width: 100,
dataIndex: 'dbFieldTxt'
},
{
title: this.$t('enName'),
align: 'center',
align: 'left',
width: 100,
dataIndex: 'dbFieldEnName'
},
{
title: this.$t('AttributeType'),
align: 'center',
align: 'left',
width: 100,
dataIndex: 'fieldShowTypeName'
},
{
title: this.$t('FieldLength'),
align: 'center',
align: 'left',
width: 80,
dataIndex: 'dbLength'
},
{
title: this.$t('DisplayOrder'),
align: 'center',
align: 'left',
width: 80,
dataIndex: 'orderNum'
},
{
title: this.$t('DisplayArea'),
align: 'center',
align: 'left',
width: 80,
dataIndex: 'showAreaName'
},
@@ -171,38 +171,38 @@
title: this.$t('operation'),
dataIndex: 'action',
scopedSlots: { customRender: 'action' },
align: 'center',
align: 'left',
width: 170
}
],
taglabColumns1: [
{
title: this.$t('ChineseName'),
align: 'center',
align: 'left',
width: 100,
dataIndex: 'dbFieldTxt'
},
{
title: this.$t('enName'),
align: 'center',
align: 'left',
width: 100,
dataIndex: 'dbFieldEnName'
},
{
title: this.$t('AttributeType'),
align: 'center',
align: 'left',
width: 100,
dataIndex: 'fieldShowTypeName'
},
{
title: this.$t('FieldLength'),
align: 'center',
align: 'left',
width: 80,
dataIndex: 'dbLength'
},
{
title: this.$t('DisplayOrder'),
align: 'center',
align: 'left',
width: 80,
dataIndex: 'orderNum'
},
@@ -210,7 +210,7 @@
title: this.$t('operation'),
dataIndex: 'action',
scopedSlots: { customRender: 'action' },
align: 'center',
align: 'left',
width: 170
}
],
@@ -572,7 +572,7 @@
}
.title-text {
width: 60px;
width: 110px;
color: #000F16;
display: inline-block;
font-weight: 500;
@@ -30,7 +30,7 @@
</div>
<div @click="exportComparisonReportClick" class="operator-text-text"
:title="$t('exportComparisonReport')">
<a-icon type="export"/>
<a-icon type="export" :rotate="-90"/>
{{$t('exportComparisonReport')}}
</div>
<div @click="commentClick" class="operator-text-text"
@@ -95,11 +95,11 @@
class="formAdd" :rules="rules"
ref="ruleForm">
<div class="box-title-text-Remarks">
<div class="title-text-Remarks" :title="$t('comparativeComments')">
<span>{{$t('comparativeComments')}}</span>
<div class="title-text-Remarks" :title="$t('Comparisonofarticles')" style="width: 84px">
<span>{{$t('Comparisonofarticles')}}</span>
</div>
<a-form-model-item class="itemModel" prop="comment">
<a-textarea :placeholder="$t('pleaseEnter')+$t('comparativeComments')"
<a-textarea :placeholder="$t('pleaseEnter')+$t('Comparisonofarticles')"
v-model="formInline.comment"
:rows="3"/>
</a-form-model-item>
@@ -209,7 +209,7 @@
columns: [
{
title: this.$t('number'),
align: 'center',
align: 'left',
width: 70,
customRender: function(t, r, index) {
return parseInt(index) + 1
@@ -217,25 +217,25 @@
},
{
title: this.$t('standard'),
align: 'center',
align: 'left',
ellipsis: true,
dataIndex: 'serialNumber'
},
{
title: this.$t('title'),
align: 'center',
align: 'left',
ellipsis: true,
dataIndex: 'title'
},
{
title: this.$t('TextStatus'),
align: 'center',
align: 'left',
ellipsis: true,
dataIndex: 'fileType'
},
{
title: this.$t('fileName'),
align: 'center',
align: 'left',
ellipsis: true,
dataIndex: 'fileName'
}
@@ -43,7 +43,7 @@
</div>
<div class="table-operator">
<div @click="initiatingProcessClick" v-has="'documentComparison:Initiate'" class="operator-text">
<a-icon type="apartment"/>
<a-icon type="block"/>
{{$t('initiateComparison')}}
</div>
<div @click="BatchDelete" v-has="'documentComparison:batchDelete'" class="operator-text">
@@ -137,7 +137,7 @@
columns: [
{
title: this.$t('standard') + ' 1',
align: 'center',
align: 'left',
dataIndex: 'serialNumberLeft',
width: 170,
ellipsis: true,
@@ -145,7 +145,7 @@
},
{
title: this.$t('title') + ' 1',
align: 'center',
align: 'left',
dataIndex: 'titleLeft',
width: 170,
ellipsis: true,
@@ -153,7 +153,7 @@
},
{
title: this.$t('TextStatus') + ' 1',
align: 'center',
align: 'left',
width: 200,
ellipsis: true,
dataIndex: 'fileTypeLeft'
@@ -168,7 +168,7 @@
// },
{
title: this.$t('standard') + ' 2',
align: 'center',
align: 'left',
dataIndex: 'serialNumberRight',
ellipsis: true,
scopedSlots: { customRender: 'serialNumberRight' },
@@ -176,7 +176,7 @@
},
{
title: this.$t('title') + ' 2',
align: 'center',
align: 'left',
dataIndex: 'titleRight',
scopedSlots: { customRender: 'serialNumberRight' },
ellipsis: true,
@@ -184,7 +184,7 @@
},
{
title: this.$t('TextStatus') + ' 2',
align: 'center',
align: 'left',
width: 200,
ellipsis: true,
dataIndex: 'fileTypeRight'
@@ -199,28 +199,28 @@
// },
{
title: this.$t('releaseSituation'),
align: 'center',
align: 'left',
width: 170,
ellipsis: true,
dataIndex: 'releaseStateTitle'
},
{
title: this.$t('creater'),
align: 'center',
align: 'left',
width: 170,
ellipsis: true,
dataIndex: 'createBy'
},
{
title: this.$t('remarks'),
align: 'center',
align: 'left',
ellipsis: true,
width: 270,
dataIndex: 'remark'
},
{
title: this.$t('operation'),
align: 'center',
align: 'left',
fixed: 'right',
width: 310,
scopedSlots: { customRender: 'operation' }
@@ -21,6 +21,7 @@
v-model="queryParam.serial_number"></a-input>
</div>
</a-col>
<template v-if="toggleSearchStatus">
<a-col :md="12" :sm="8">
<div class="box-title-text">
<div class="title-text" :title="$t('title')">
@@ -30,10 +31,15 @@
v-model="queryParam.title"></a-input>
</div>
</a-col>
</template>
<span style="float: right;overflow: hidden;" class="table-page-search-submitButtons">
<a-col :md="12" :sm="24">
<a-button class="box-button" type="primary" @click="searchQuery">{{$t('query')}}</a-button>
<a-button class="box-button" style="margin-left: 8px" @click="searchReset">{{$t('reset')}}</a-button>
<a @click="handleToggleSearch" style="margin-left: 8px">
{{ !toggleSearchStatus ? $t('open') : $t('away') }}
<a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>
</a>
</a-col>
</span>
</a-row>
@@ -105,6 +111,7 @@
components: {},
data() {
return {
toggleSearchStatus: false,
visible: false,
queryParam: {},
confirmLoading: false,
@@ -130,7 +137,7 @@
columns: [
{
title: this.$t('number'),
align: 'center',
align: 'left',
width: 70,
customRender: function(t, r, index) {
return parseInt(index) + 1
@@ -139,31 +146,31 @@
{
title: this.$t('standard'),
dataIndex: 'serial_number',
align: 'center',
align: 'left',
ellipsis: true
},
{
title: this.$t('title'),
dataIndex: 'title',
align: 'center',
align: 'left',
ellipsis: true
},
{
title: this.$t('TextStatus'),
dataIndex: 'state',
align: 'center',
align: 'left',
ellipsis: true
},
{
title: this.$t('fileName'),
dataIndex: 'file_name',
align: 'center',
align: 'left',
ellipsis: true
},
{
title: this.$t('textInformation'),
dataIndex: 'text_info',
align: 'center',
align: 'left',
ellipsis: true
}
],
@@ -180,6 +187,9 @@
},
methods: {
handleToggleSearch() {
this.toggleSearchStatus = !this.toggleSearchStatus
},
handleInput(value) {
this.$nextTick(() => {
this.formInline = { ...this.formInline }
@@ -310,7 +320,7 @@
}
.title-text {
width: 33px;
width: 110px;
color: #000F16;
display: inline-block;
font-weight: 500;
@@ -166,7 +166,7 @@
columns: [
{
title: this.$t('standard'),
align: 'center',
align: 'left',
dataIndex: 'serialNumber',
width: 170,
ellipsis: true,
@@ -174,7 +174,7 @@
},
{
title: this.$t('title'),
align: 'center',
align: 'left',
dataIndex: 'title',
width: 170,
ellipsis: true,
@@ -182,48 +182,48 @@
},
{
title: this.$t('TextStatus'),
align: 'center',
align: 'left',
width: 170,
ellipsis: true,
dataIndex: 'textStatus_dictText'
},
{
title: this.$t('fileName'),
align: 'center',
align: 'left',
width: 170,
ellipsis: true,
dataIndex: 'fileName'
},
{
title: this.$t('translationLanguage'),
align: 'center',
align: 'left',
dataIndex: 'targetLanguage_dictText',
width: 240,
scopedSlots: { customRender: 'translationLanguage' }
},
{
title: this.$t('translationResults'),
align: 'center',
align: 'left',
dataIndex: 'translationResult_dictText',
width: 170
},
{
title: this.$t('conversionTime'),
align: 'center',
align: 'left',
width: 170,
ellipsis: true,
dataIndex: 'translationTime'
},
{
title: this.$t('releaseSituation'),
align: 'center',
align: 'left',
width: 170,
ellipsis: true,
dataIndex: 'releaseCondition_dictText'
},
{
title: this.$t('operation'),
align: 'center',
align: 'left',
fixed: 'right',
width: 260,
scopedSlots: { customRender: 'operation' }
@@ -116,7 +116,7 @@
</span>
<span slot="file_name" slot-scope="text,record">
<a style="color:#21c9cc" @click="fileNameClick(record)">
{{record.file_name && record.file_name.length > 0 ? $t('viewFile') : '--'}}
{{record.file_name && record.file_name.length > 0 ? $t('view') : '--'}}
</a>
</span>
<!-- 字符串超长截取省略号显示-->
@@ -261,21 +261,21 @@
columns: [
{
title: this.$t('standard'),
align: 'center',
align: 'left',
dataIndex: 'serial_number',
width: 170,
scopedSlots: { customRender: 'serial_number' }
},
{
title: this.$t('title'),
align: 'center',
align: 'left',
dataIndex: 'title',
width: 170,
scopedSlots: { customRender: 'titleName' }
},
{
title: this.$t('fileName'),
align: 'center',
align: 'left',
dataIndex: 'file_name',
ellipsis: true,
width: 170,
@@ -283,7 +283,7 @@
},
{
title: this.$t('status'),
align: 'center',
align: 'left',
width: 140,
sorter: true,
ellipsis: true,
@@ -291,7 +291,7 @@
},
{
title: this.$t('zoneOfApplication'),
align: 'center',
align: 'left',
width: 170,
sorter: true,
ellipsis: true,
@@ -304,14 +304,14 @@
// },
{
title: this.$t('technicalField'),
align: 'center',
align: 'left',
ellipsis: true,
width: 170,
dataIndex: 'technology_territory'
},
{
title: this.$t('releaseDate'),
align: 'center',
align: 'left',
ellipsis: true,
width: 170,
sorter: true,
@@ -319,7 +319,7 @@
},
{
title: this.$t('vehicleInProductionDate'),
align: 'center',
align: 'left',
ellipsis: true,
width: 210,
sorter: true,
@@ -327,7 +327,7 @@
},
{
title: this.$t('ImplementationDate'),
align: 'center',
align: 'left',
ellipsis: true,
sorter: true,
width: 210,
@@ -335,7 +335,7 @@
},
{
title: this.$t('operation'),
align: 'center',
align: 'left',
fixed: 'right',
width: 200,
scopedSlots: { customRender: 'operation' }
@@ -955,4 +955,12 @@
/*::v-deep .ant-select {*/
/* max-width: calc(100% - 126px) !important;*/
/*}*/
/deep/.ant-table-thead > tr > th {
font-weight: bolder;
}
///deep/.ant-table-tbody > tr > td {
// color: #040B29 ;
//}
</style>
@@ -16,18 +16,24 @@
<span v-html="item.module_type"></span>
</template>
<span class="text-header-text" style="cursor: pointer" v-html="item.module_type"></span>
<template slot="title">
</a-tooltip>
<a-tooltip placement="topLeft" overlayClassName="tooltip-index" :mouseEnterDelay="0.5">
<template slot="title">
<span v-html="item.serial_number"></span>
</template>
<span style="cursor: pointer"
class="text-header-text"
v-if="item.serial_number && item.module_type_flag == 'WDK'"
v-html="item.serial_number"></span>
<template slot="title">
</a-tooltip>
<a-tooltip placement="topLeft" overlayClassName="tooltip-index" :mouseEnterDelay="0.5">
<template slot="title">
<span v-html="item.title"></span>
</template>
<span class="text-header-text" v-if="item.title" style="cursor: pointer" v-html="item.title"></span>
<template slot="title">
</a-tooltip>
<a-tooltip placement="topLeft" overlayClassName="tooltip-index" :mouseEnterDelay="0.5">
<template slot="title">
<span v-html="item.file_name"></span>
</template>
<span class="text-header-text" v-if="item.file_name && item.module_type_flag == 'WDK'" style="cursor: pointer"
@@ -277,16 +283,24 @@
}
}
</script>
<style>
<style lang="less">
.highlight-class {
color: #21c9cc;
}
.tooltip-index {
max-width: calc(100% - 300px) !important;
.ant-tooltip-inner {
color: #333;
background-color: #fff !important;
}
.ant-tooltip-arrow::before {
background-color: #fff;
}
}
</style>
<style scoped lang="less">
.box {
padding: 0 0 0 18px;
box-sizing: border-box;
@@ -21,6 +21,7 @@
v-model="queryParam.serial_number"></a-input>
</div>
</a-col>
<template v-if="toggleSearchStatus">
<a-col :md="12" :sm="8">
<div class="box-title-text">
<div class="title-text" :title="$t('title')">
@@ -41,6 +42,7 @@
:triggerChange="false" :dictCode="'state'"/>
</div>
</a-col>
</template>
<span style="float: right;overflow: hidden;" class="table-page-search-submitButtons">
<a-col :md="12" :sm="24">
<globalAdvancedQuery ref="globalAdvancedQueryRef"
@@ -48,6 +50,10 @@
:fieldList="fieldList"/>
<a-button class="box-button" type="primary" @click="searchQuery">{{$t('query')}}</a-button>
<a-button class="box-button" style="margin-left: 8px" @click="searchReset">{{$t('reset')}}</a-button>
<a @click="handleToggleSearch" style="margin-left: 8px">
{{ !toggleSearchStatus ? $t('open') : $t('away') }}
<a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>
</a>
</a-col>
</span>
</a-row>
@@ -104,6 +110,7 @@
},
data() {
return {
toggleSearchStatus: false,
visible: false,
confirmLoading: false,
selectedRowKeys: [],
@@ -112,19 +119,19 @@
{
title: this.$t('standard'),
dataIndex: 'serial_number',
align: 'center',
align: 'left',
ellipsis: true
},
{
title: this.$t('title'),
dataIndex: 'title',
align: 'center',
align: 'left',
ellipsis: true
},
{
title: this.$t('zoneOfApplication'),
dataIndex: 'region',
align: 'center',
align: 'left',
ellipsis: true
},
// {
@@ -142,13 +149,13 @@
{
title: this.$t('ImplementationDate'),
dataIndex: 'xin1_che1_xing2_shi2_shi1_ri4_qi1',
align: 'center',
align: 'left',
ellipsis: true
},
{
title: this.$t('vehicleInProductionDate'),
dataIndex: 'implement_time',
align: 'center',
align: 'left',
ellipsis: true
}
// {
@@ -173,6 +180,9 @@
},
methods: {
handleToggleSearch() {
this.toggleSearchStatus = !this.toggleSearchStatus
},
addModel() {
this.visible = true
this.queryParam = {}
@@ -310,7 +320,7 @@
}
.title-text {
width: 33px;
width: 110px;
color: #000F16;
display: inline-block;
font-weight: 500;
@@ -65,7 +65,7 @@
</a-col>
<a-col :md="6" :sm="8">
<div class="box-title-text">
<div class="title-text" style="width: 60px" :title="$t('subtitle')">
<div class="title-text" :title="$t('subtitle')">
<span>{{$t('subtitle')}}</span>
</div>
<j-input class="box-input" :placeholder="$t('PleaseEnter')+$t('subtitle')"
@@ -186,37 +186,37 @@
<span slot="designDeliverableTemplateName" slot-scope="text,record">
<span :title="record.designDeliverableTypeName">{{record.designDeliverableTypeName}}</span><br
v-if="record.designDeliverableTypeName">
<a v-if="record.designDeliverableTemplate && record.designDeliverableTemplate.split(',').length == 1"
:title="record.designDeliverableTemplateName"
@click="pdfPreviewClick(record.designDeliverableTemplateName,record.designDeliverableTemplate)">
{{ record.designDeliverableTemplateName.length > 10 ? record.designDeliverableTemplateName.slice(0, 9) + '...' :record.designDeliverableTemplateName}}
</a>
<a v-else-if="record.designDeliverableTemplate && record.designDeliverableTemplate.split(',').length > 1"
@click="clickButtonToUpload(record.designDeliverableTemplate)">{{$t('viewFile')}}</a>
<!-- <a v-if="record.designDeliverableTemplate && record.designDeliverableTemplate.split(',').length == 1"-->
<!-- :title="record.designDeliverableTemplateName"-->
<!-- @click="pdfPreviewClick(record.designDeliverableTemplateName,record.designDeliverableTemplate)">-->
<!-- {{ record.designDeliverableTemplateName.length > 10 ? record.designDeliverableTemplateName.slice(0, 9) + '...' :record.designDeliverableTemplateName}}-->
<!-- </a>-->
<!-- <a v-else-if="record.designDeliverableTemplate && record.designDeliverableTemplate.split(',').length > 1"-->
<!-- @click="clickButtonToUpload(record.designDeliverableTemplate)">{{$t('viewFile')}}</a>-->
<span v-else>--</span>
</span>
<span slot="prehomoDeliverableTemplateName" slot-scope="text,record">
<span :title="record.prehomoDeliverableTypeName">{{record.prehomoDeliverableTypeName}}</span><br
v-if="record.prehomoDeliverableTypeName">
<a v-if="record.prehomoDeliverableTemplate && record.prehomoDeliverableTemplate.split(',').length == 1"
:title="record.prehomoDeliverableTemplateName"
@click="pdfPreviewClick(record.prehomoDeliverableTemplateName,record.prehomoDeliverableTemplate)">
{{ record.prehomoDeliverableTemplateName.length > 10 ? record.prehomoDeliverableTemplateName.slice(0, 9) + '...' :record.prehomoDeliverableTemplateName}}
</a>
<a v-else-if="record.prehomoDeliverableTemplate && record.prehomoDeliverableTemplate.split(',').length > 1"
@click="clickButtonToUpload(record.prehomoDeliverableTemplate)">{{$t('viewFile')}}</a>
<!-- <a v-if="record.prehomoDeliverableTemplate && record.prehomoDeliverableTemplate.split(',').length == 1"-->
<!-- :title="record.prehomoDeliverableTemplateName"-->
<!-- @click="pdfPreviewClick(record.prehomoDeliverableTemplateName,record.prehomoDeliverableTemplate)">-->
<!-- {{ record.prehomoDeliverableTemplateName.length > 10 ? record.prehomoDeliverableTemplateName.slice(0, 9) + '...' :record.prehomoDeliverableTemplateName}}-->
<!-- </a>-->
<!-- <a v-else-if="record.prehomoDeliverableTemplate && record.prehomoDeliverableTemplate.split(',').length > 1"-->
<!-- @click="clickButtonToUpload(record.prehomoDeliverableTemplate)">{{$t('viewFile')}}</a>-->
<span v-else>--</span>
</span>
<span slot="verifyDeliverableTemplateName" slot-scope="text,record">
<span :title="record.verifyDeliverableTypeName">{{record.verifyDeliverableTypeName}}</span><br
v-if="record.verifyDeliverableTypeName">
<a v-if="record.verifyDeliverableTemplate && record.verifyDeliverableTemplate.split(',').length == 1"
:title="record.verifyDeliverableTemplateName"
@click="pdfPreviewClick(record.verifyDeliverableTemplateName,record.verifyDeliverableTemplate)">
{{ record.verifyDeliverableTemplateName.length > 10 ? record.verifyDeliverableTemplateName.slice(0, 9) + '...' :record.verifyDeliverableTemplateName}}
</a>
<a v-else-if="record.verifyDeliverableTemplate && record.verifyDeliverableTemplate.split(',').length > 1"
@click="clickButtonToUpload(record.verifyDeliverableTemplate)">{{$t('viewFile')}}</a>
<!-- <a v-if="record.verifyDeliverableTemplate && record.verifyDeliverableTemplate.split(',').length == 1"-->
<!-- :title="record.verifyDeliverableTemplateName"-->
<!-- @click="pdfPreviewClick(record.verifyDeliverableTemplateName,record.verifyDeliverableTemplate)">-->
<!-- {{ record.verifyDeliverableTemplateName.length > 10 ? record.verifyDeliverableTemplateName.slice(0, 9) + '...' :record.verifyDeliverableTemplateName}}-->
<!-- </a>-->
<!-- <a v-else-if="record.verifyDeliverableTemplate && record.verifyDeliverableTemplate.split(',').length > 1"-->
<!-- @click="clickButtonToUpload(record.verifyDeliverableTemplate)">{{$t('viewFile')}}</a>-->
<span v-else>--</span>
</span>
</a-table>
@@ -309,13 +309,13 @@
{
title: this.$t('deliverableTemplate'),
dataIndex: 'fileName',
align: 'center',
align: 'left',
width: 260,
ellipsis: true
},
{
title: this.$t('operation'),
align: 'center',
align: 'left',
width: 130,
scopedSlots: { customRender: 'fileOperation' }
}
@@ -340,7 +340,7 @@
columnsAll: [
{
title: this.$t('standard'),
align: 'center',
align: 'left',
dataIndex: 'serialNumber',
width: 180,
sorter:true,
@@ -349,7 +349,7 @@
},
{
title: this.$t('title'),
align: 'center',
align: 'left',
dataIndex: 'title',
width: 180,
fixed: 'left',
@@ -357,21 +357,21 @@
},
{
title: this.$t('subtitle'),
align: 'center',
align: 'left',
dataIndex: 'subtitle',
width: 180,
ellipsis: true
},
{
title: this.$t('zoneOfApplication'),
align: 'center',
align: 'left',
width: 150,
ellipsis: true,
dataIndex: 'region_dictText'
},
{
title: this.$t('scopeOfApplication'),
align: 'center',
align: 'left',
width: 180,
ellipsis: true,
sorter:true,
@@ -379,7 +379,7 @@
},
{
title: this.$t('status'),
align: 'center',
align: 'left',
width: 100,
ellipsis: true,
sorter:true,
@@ -387,21 +387,21 @@
},
{
title: this.$t('correspondingStandard'),
align: 'center',
align: 'left',
width: 140,
ellipsis: true,
dataIndex: 'correspondingStandard'
},
{
title: this.$t('implementationCategory'),
align: 'center',
align: 'left',
width: 140,
ellipsis: true,
dataIndex: 'implementType_dictText'
},
{
title: this.$t('ImplementationDate'),
align: 'center',
align: 'left',
width: 200,
ellipsis: true,
sorter:true,
@@ -409,7 +409,7 @@
},
{
title: this.$t('vehicleInProductionDate'),
align: 'center',
align: 'left',
width: 210,
ellipsis: true,
sorter:true,
@@ -417,7 +417,7 @@
},
{
title: 'WVTA ID',
align: 'center',
align: 'left',
dataIndex: 'wvtaId',
width: 180,
sorter:true,
@@ -425,14 +425,14 @@
},
{
title: this.$t('certificationType'),
align: 'center',
align: 'left',
width: 180,
ellipsis: true,
dataIndex: 'attestationType_dictText'
},
{
title: this.$t('certificationLevel'),
align: 'center',
align: 'left',
width: 200,
ellipsis: true,
sorter:true,
@@ -440,21 +440,21 @@
},
{
title: this.$t('applicableSupplement'),
align: 'center',
align: 'left',
width: 200,
ellipsis: true,
dataIndex: 'applicableSupplement'
},
{
title: this.$t('technicalField'),
align: 'center',
align: 'left',
width: 180,
ellipsis: true,
dataIndex: 'technologyTerritoryName'
},
{
title: this.$t('areaOfResponsibility'),
align: 'center',
align: 'left',
width: 180,
ellipsis: true,
sorter:true,
@@ -462,7 +462,7 @@
},
{
title: this.$t('remarks'),
align: 'center',
align: 'left',
dataIndex: 'remark',
width: 180,
ellipsis: true
@@ -476,7 +476,7 @@
title: this.$t('Deliverables'),
dataIndex: 'designDeliverableTemplateName',
ellipsis: true,
align: 'center',
align: 'left',
width: 180,
scopedSlots: { customRender: 'designDeliverableTemplateName' }
},
@@ -485,19 +485,19 @@
dataIndex: 'designInitiator_dictText',
width: 180,
ellipsis: true,
align: 'center'
align: 'left'
},
{
title: this.$t('personLiable'),
dataIndex: 'designDuty_dictText',
width: 180,
ellipsis: true,
align: 'center'
align: 'left'
},
{
title: this.$t('descriptionDeliverables'),
dataIndex: 'designRemark',
align: 'center',
align: 'left',
width: 220,
ellipsis: true
}
@@ -510,7 +510,7 @@
title: this.$t('Deliverables'),
dataIndex: 'prehomoDeliverableTemplateName',
ellipsis: true,
align: 'center',
align: 'left',
width: 180,
scopedSlots: { customRender: 'prehomoDeliverableTemplateName' }
},
@@ -519,19 +519,19 @@
dataIndex: 'prehomoInitiator_dictText',
width: 180,
ellipsis: true,
align: 'center'
align: 'left'
},
{
title: this.$t('personLiable'),
dataIndex: 'prehomoDuty_dictText',
width: 180,
ellipsis: true,
align: 'center'
align: 'left'
},
{
title: this.$t('descriptionDeliverables'),
dataIndex: 'prehomoRemark',
align: 'center',
align: 'left',
width: 220,
ellipsis: true
}
@@ -544,7 +544,7 @@
title: this.$t('Deliverables'),
dataIndex: 'verifyDeliverableTemplateName',
ellipsis: true,
align: 'center',
align: 'left',
width: 180,
scopedSlots: { customRender: 'verifyDeliverableTemplateName' }
},
@@ -552,20 +552,20 @@
title: this.$t('Sponsor'),
dataIndex: 'verifyInitiator_dictText',
width: 180,
align: 'center',
align: 'left',
ellipsis: true
},
{
title: this.$t('personLiable'),
dataIndex: 'verifyDuty_dictText',
width: 180,
align: 'center',
align: 'left',
ellipsis: true
},
{
title: this.$t('descriptionDeliverables'),
dataIndex: 'verifyRemark',
align: 'center',
align: 'left',
width: 220,
ellipsis: true
}
@@ -573,7 +573,7 @@
},
{
title: this.$t('operation'),
align: 'center',
align: 'left',
fixed: 'right',
width: 140,
scopedSlots: { customRender: 'operation' }
@@ -1027,14 +1027,14 @@
}
.title-text {
width: 36px;
width: 110px;
color: #000F16;
display: inline-block;
font-weight: 500;
font-size: 14px;
margin-right: 16px;
margin-top: 3px;
text-align: left;
text-align: right;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
@@ -1156,6 +1156,9 @@
padding-bottom: 0!important;
overflow: scroll!important;
}
/deep/.ant-table-column-title{
font-weight: bold!important;
}
</style>
<style>
.box-input .ant-select-selection {
@@ -1172,6 +1175,6 @@
}
.tableList .ant-table-thead > tr > th {
padding: 7px 16px !important;
padding: 0px 16px !important;
}
</style>
@@ -217,7 +217,7 @@
columns: [
{
title: this.$t('VirtualListName'),
align: 'center',
align: 'left',
dataIndex: 'name',
width: '25%',
ellipsis: true,
@@ -225,21 +225,21 @@
},
{
title: this.$t('listStatus'),
align: 'center',
align: 'left',
width: '25%',
ellipsis: true,
dataIndex: 'state_dictText'
},
{
title: this.$t('creater'),
align: 'center',
align: 'left',
width: '25%',
ellipsis: true,
dataIndex: 'createBy'
},
{
title: this.$t('operation'),
align: 'center',
align: 'left',
fixed: 'right',
width: 400,
scopedSlots: { customRender: 'operation' }
+37 -13
View File
@@ -59,7 +59,7 @@
<div class="split-detail-search-header">
<a-form layout="inline" @keyup.enter.native="searchQuery">
<a-row :gutter="24">
<a-col :md="6" :sm="8">
<a-col :md="8" :sm="8">
<div class="box-title-text">
<div class="title-text" :title="$t('fileName')">
<span>{{ $t('fileName') }}</span>
@@ -68,7 +68,7 @@
v-model="queryParams.fileName"></a-input>
</div>
</a-col>
<a-col :md="6" :sm="8">
<a-col :md="8" :sm="8">
<div class="box-title-text">
<div class="title-text" :title="$t('uploadedBy')">
<span>{{$t('uploadedBy')}}</span>
@@ -77,7 +77,8 @@
v-model="queryParams.createBy"></a-input>
</div>
</a-col>
<a-col :md="6" :sm="8">
<template v-if="toggleSearchStatus">
<a-col :md="8" :sm="8">
<div class="box-title-text">
<div class="title-text" :title="$t('uploadTime')">
<span>{{ $t('uploadTime') }}</span>
@@ -91,6 +92,7 @@
:disabled="false"/>
</div>
</a-col>
</template>
<span style="float: right;overflow: hidden;margin-right: 11px"
class="table-page-search-submitButtons">
<a-col :md="6" :sm="24">
@@ -100,6 +102,10 @@
<a-button class="box-button" type="primary" @click="searchQuery">{{ $t('query') }}</a-button>
<a-button class="box-button" style="margin-left: 8px"
@click="searchReset">{{ $t('reset') }}</a-button>
<a @click="handleToggleSearch" style="margin-left: 8px">
<span class="icon-open">{{ !toggleSearchStatus ? $t('open') : $t('away') }}</span>
<a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>
</a>
</a-col>
</span>
</a-row>
@@ -110,7 +116,7 @@
<div class="operator-text"
v-has="'externalReport:upload'"
@click="handleuploadFile()" v-if='authmanage'>
<a-icon type="import"/>
<a-icon type="cloud-upload"/>
{{ $t('UploadFile') }}
</div>
<div class="operator-text"
@@ -302,6 +308,7 @@
},
data() {
return {
toggleSearchStatus: false,
labelCol: { span: 6 },
userData: {},
wrapperCol: { span: 16 },
@@ -371,21 +378,21 @@
columns: [
{
title: this.$t('fileName'),
align: 'center',
align: 'left',
dataIndex: 'fileName',
scopedSlots: { customRender: 'fileName' },
width: 200
},
{
title: this.$t('fileDeclaration'),
align: 'center',
align: 'left',
dataIndex: 'fileDescription',
scopedSlots: { customRender: 'projectName' },
width: 300
},
{
title: this.$t('uploadedBy'),
align: 'center',
align: 'left',
dataIndex: 'createBy',
width: 150
},
@@ -396,13 +403,13 @@
// },
{
title: this.$t('uploadTime'),
align: 'center',
align: 'left',
dataIndex: 'createTime',
width: 250
},
{
title: this.$t('operation'),
align: 'center',
align: 'left',
fixed: 'right',
width: 250,
scopedSlots: { customRender: 'operation' }
@@ -449,6 +456,9 @@
},
methods: {
...mapGetters(['userInfo']),
handleToggleSearch() {
this.toggleSearchStatus = !this.toggleSearchStatus
},
//显示条款内容弹框
showContent(val) {
this.contentVisible = true
@@ -1124,7 +1134,8 @@
.box-title-text {
line-height: 1.4;
display: flex;
/*align-items: center;*/
align-items: center;
margin-bottom: 10px;
}
/deep/ .ant-table td {
@@ -1136,7 +1147,7 @@
}
.title-text {
width: 114px;
width: 110px;
text-align: right;
display: inline-block;
font-weight: 400;
@@ -1220,7 +1231,7 @@
.split-detail-left {
/*height: 100%;*/
width: 300px;
width: 230px;
float: left;
padding-right: 20px;
/*border-right: 1px solid #E6E7EC;*/
@@ -1249,7 +1260,7 @@
.split-detail-right {
padding-left: 20px;
width: calc(100% - 300px);
width: calc(100% - 230px);
float: right;
border-left: 1px solid #E6E7EC;
/*flex: 1;*/
@@ -1302,6 +1313,7 @@
///deep/ .ant-table-body {
// overflow: hidden !important; ?????
//}
</style>
<style lang="less">
@@ -1322,9 +1334,21 @@
.split-detail-right-wraper {
.table-page-search-submitButtons {
a{
display: flex;
justify-content: start;
line-height: 38px;
}
.ant-col-md-6 {
display: flex;
}
.icon-open{
display: inline-block;
min-width: 30px;
}
i{
line-height: 38px;
}
}
.split-detail-search-header {
@@ -159,7 +159,7 @@ export default {
columns: [
{
title: this.$t('zoneOfApplication'),
align: 'center',
align: 'left',
width: 160,
ellipsis: true,
sorter:true,
@@ -167,7 +167,7 @@ export default {
},
{
title: this.$t('parameterTemplate'),
align: 'center',
align: 'left',
width: 180,
ellipsis: true,
sorter:true,
@@ -176,7 +176,7 @@ export default {
},
{
title: this.$t('contentDescription'),
align: 'center',
align: 'left',
ellipsis: true,
dataIndex: 'description',
// scopedSlots: { customRender: 'titleName' }
@@ -197,7 +197,7 @@ export default {
},
{
title: this.$t('created'),
align: 'center',
align: 'left',
dataIndex: 'createTime',
width: 160,
sorter:true,
@@ -205,7 +205,7 @@ export default {
},
{
title: this.$t('updated'),
align: 'center',
align: 'left',
width: 160,
ellipsis: true,
sorter:true,
@@ -213,7 +213,7 @@ export default {
},
{
title: this.$t('operation'),
align: 'center',
align: 'left',
fixed: 'right',
width: 200,
scopedSlots: { customRender: 'operation' }
@@ -156,7 +156,7 @@
columns: [
{
title: this.$t('entryName'),
align: 'center',
align: 'left',
width: '17%',
dataIndex: 'projectName',
sorter:true,
@@ -164,17 +164,17 @@
},
{
title: this.$t('ListTitle'),
align: 'center',
align: 'left',
dataIndex: 'title'
},
{
title: this.$t('Version'),
align: 'center',
align: 'left',
dataIndex: 'version'
},
{
title: this.$t('operation'),
align: 'center',
align: 'left',
fixed: 'right',
width: 200,
scopedSlots: { customRender: 'operation' }
@@ -362,7 +362,7 @@
color: #000F16;
display: inline-block;
font-weight: 500;
font-size: 16px;
font-size: 14px;
margin-right: 16px;
margin-top: 3px;
text-align: right;
@@ -42,6 +42,7 @@
v-model="formInline.paramsName"></a-input>
</div>
</a-col>
<template v-if="toggleSearchStatus">
<a-col :md="6" :sm="8">
<div class="box-title-text">
<div class="title-text" :title="$t('dre')">
@@ -70,10 +71,15 @@
v-model="formInline.sdtName"/>
</div>
</a-col>
</template>
<span style="float: right;overflow: hidden;margin-right: 11px" class="table-page-search-submitButtons">
<a-col :md="6" :sm="24">
<a-button class="box-button" type="primary" @click="searchQuery">{{$t('query')}}</a-button>
<a-button class="box-button" style="margin-left: 8px" @click="searchReset">{{$t('reset')}}</a-button>
<a @click="handleToggleSearch" style="margin-left: 8px">
{{ !toggleSearchStatus ? $t('open') : $t('away') }}
<a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>
</a>
</a-col>
</span>
</a-row>
@@ -87,11 +93,11 @@
{{$t('preservation')}}
</div>
<div @click="ConventionalExport" class="operator-text" v-has="'report:detail:export:normal'">
<a-icon type="download"/>
<a-icon type="export" :rotate="-90"/>
{{$t('ConventionalExport')}}
</div>
<div @click="CustomExport" class="operator-text" v-has="'report:detail:export:custom'">
<a-icon type="download"/>
<a-icon type="export" :rotate="-90"/>
{{$t('CustomExport')}}
</div>
</div>
@@ -163,6 +169,7 @@
},
data() {
return {
toggleSearchStatus: false,
columns: [],
selectedRowKeys: [],
formInline: {},
@@ -236,6 +243,9 @@
document.title = this.$t('ParameterViewPage')
},
methods: {
handleToggleSearch() {
this.toggleSearchStatus = !this.toggleSearchStatus
},
Getlist() {
getAction(this.url.tableHeader, { paramsManifestId: this.$route.query.id, flag: 8 }).then((res) => {
if (res.success) {
@@ -475,7 +485,7 @@
.Virtual-detail-content {
margin-top: 68px;
padding: 0 38px 0 38px;
padding: 0 0 0 38px;
box-sizing: border-box;
font-size: 16px;
@@ -162,7 +162,7 @@ export default {
// },
{
title: this.$t('templateName'),
align: 'center',
align: 'left',
dataIndex: 'templateName',
sorter:true,
ellipsis: true,
@@ -171,7 +171,7 @@ export default {
},
{
title: this.$t('contentDescription'),
align: 'center',
align: 'left',
dataIndex: 'description',
ellipsis: true,
width: 300,
@@ -187,21 +187,21 @@ export default {
},
{
title: this.$t('status'),
align: 'center',
align: 'left',
width: 120,
ellipsis: true,
dataIndex: 'state_dictText'
},
{
title: this.$t('creater'),
align: 'center',
align: 'left',
width: 120,
ellipsis: true,
dataIndex: 'createBy'
},
{
title: this.$t('Latestupdatetime'),
align: 'center',
align: 'left',
width: 180,
ellipsis: true,
sorter:true,
@@ -209,7 +209,7 @@ export default {
},
{
title: this.$t('operation'),
align: 'center',
align: 'left',
fixed: 'right',
width: 200,
scopedSlots: { customRender: 'operation' }
@@ -156,7 +156,7 @@ export default {
columns: [
{
title: this.$t('NiONumber'),
align: 'center',
align: 'left',
width: 130,
dataIndex: 'nioNumber',
sorter: true,
@@ -164,35 +164,35 @@ export default {
},
{
title: this.$t('ParameterName'),
align: 'center',
align: 'left',
dataIndex: 'paramsName',
width: 160,
ellipsis: true,
},
{
title: this.$t('ParameterDescription'),
align: 'center',
align: 'left',
dataIndex: 'description',
ellipsis: true,
// scopedSlots: { customRender: 'titleName' }
},
{
title: this.$t('areaOfResponsibility'),
align: 'center',
align: 'left',
dataIndex: 'dutyTerritory_dictText',
width: 150,
ellipsis: true,
},
{
title: this.$t('created'),
align: 'center',
align: 'left',
dataIndex: 'createTime',
width: 180,
ellipsis: true,
},
{
title: this.$t('operation'),
align: 'center',
align: 'left',
fixed: 'right',
width: 120,
scopedSlots: { customRender: 'operation' }
@@ -43,32 +43,32 @@
{
title: this.$t('OperationNode'),
dataIndex: 'name',
align: 'center',
align: 'left',
width:'20%',
},
{
title: this.$t('Operator'),
dataIndex: 'assignee',
align: 'center',
align: 'left',
width:'20%',
},
{
title: this.$t('result'),
dataIndex: 'approvalResult',
align: 'center',
align: 'left',
width:'20%',
scopedSlots: { customRender: 'approvalResult' }
},
{
title: this.$t('opinion'),
dataIndex: 'approvalOpinion',
align: 'center',
align: 'left',
width:'20%',
},
{
title: this.$t('OperationTime'),
dataIndex: 'createTime',
align: 'center',
align: 'left',
width:'20%',
customRender: function(t, r, index) {
return moment(t).format('YYYY-MM-DD HH:mm:ss')
@@ -95,6 +95,8 @@
</script>
<style scoped lang="less">
@import'~@assets/less/common.less';
.box {
padding: 0 24px 24px 24px;
box-sizing: border-box;
@@ -822,6 +822,7 @@
</script>
<style scoped lang="less">
@import '~@assets/less/common.less';
.box {
padding: 0 24px 24px 24px;
box-sizing: border-box;
@@ -910,7 +911,7 @@
.button-text {
height: 38px;
width: calc(100% - 100px);
width: 100%;
line-height: 38px;
background: #fff;
border: 1px #00B3BE solid;
@@ -9,11 +9,14 @@
<a-row :gutter="24" v-if="isFlag">
<a-col :span="24">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text" :title="$t('feedbackResults')">{{$t('feedbackResults')}}</span>
</div>
<!-- <div class="title-text">-->
<!-- <span class="Required">*</span>-->
<!-- <span class="title-text-text" :title="$t('reviewResults')">{{$t('reviewResults')}}</span>-->
<!-- </div>-->
<a-form-model-item style="margin-left: 36px" class="itemModel" prop="flag">
<a-form-model-item class="itemModel" prop="flag">
<a-radio-group style="margin-top: 2px" @change="flagChange" class="box-input" v-model="formInline.flag">
<a-radio value="0">
{{$t('accept')}}
@@ -40,35 +40,35 @@
{
title: this.$t('OperationContent'),
dataIndex: 'taskDefinitionKeyName',
align: 'center',
align: 'left',
width: '20%',
ellipsis: true
},
{
title: this.$t('opinion'),
dataIndex: 'approvalOpinion',
align: 'center',
align: 'left',
width: '20%',
ellipsis: true
},
{
title: this.$t('Operator'),
dataIndex: 'createBy',
align: 'center',
align: 'left',
width: '20%',
ellipsis: true
},
{
title: this.$t('role'),
dataIndex: 'operatorRoleName',
align: 'center',
align: 'left',
width: '20%',
ellipsis: true
},
{
title: this.$t('OperationTime'),
dataIndex: 'createTime',
align: 'center',
align: 'left',
width: '20%',
ellipsis: true,
customRender: function(t, r, index) {
@@ -115,6 +115,7 @@
</script>
<style scoped lang="less">
@import'~@assets/less/common.less';
.box {
padding: 0 24px 24px 24px;
box-sizing: border-box;
@@ -76,44 +76,44 @@
{
title: this.$t('ProcessType'),
dataIndex: 'ProcessType',
align: 'center',
align: 'left',
width:200,
},
{
title: this.$t('Sponsor'),
dataIndex: 'InitiatorName',
align: 'center',
align: 'left',
width:160,
},
{
title: this.$t('personLiable'),
dataIndex: 'DutyName',
align: 'center',
align: 'left',
width:160,
},
{
title: this.$t('TaskCutOffTime'),
dataIndex: 'DueDate',
align: 'center',
align: 'left',
width:160,
},
{
title: this.$t('typeOfDeliverables'),
dataIndex: 'DeliverableType',
align: 'center',
align: 'left',
width:160,
},
{
title: this.$t('deliverableTemplate'),
dataIndex: 'DeliverableTemplateName',
align: 'center',
align: 'left',
width:260,
scopedSlots: { customRender: 'designDeliverableTemplateName' }
},
{
title: this.$t('descriptionDeliverables'),
dataIndex: 'remark',
align: 'center',
align: 'left',
width:300,
}
],
@@ -124,13 +124,13 @@
{
title: this.$t('deliverableTemplate'),
dataIndex: 'fileName',
align: 'center',
align: 'left',
width: 260,
ellipsis: true
},
{
title: this.$t('operation'),
align: 'center',
align: 'left',
width: 130,
scopedSlots: { customRender: 'fileOperation' }
}
@@ -246,5 +246,11 @@
</script>
<style scoped>
@import '~@assets/less/common.less';
/*/deep/.ant-table-column-title{*/
/* font-weight: bold!important;*/
/*}*/
/*/deep/.ant-table-thead > tr > th {*/
/* background: #f3f6f6;*/
/*}*/
</style>
@@ -98,6 +98,7 @@
</script>
<style scoped lang="less">
@import '~@assets/less/common.less';
.box {
padding: 0 24px 24px 24px;
box-sizing: border-box;
@@ -115,4 +116,13 @@
color: #000F16;
}
}
//
///deep/.ant-table-column-title{
// font-weight: bold!important;
// background: #f3f6f6;
//}
//
///deep/.ant-table-thead > tr > th {
// background: #f3f6f6;
//}
</style>
@@ -2,9 +2,9 @@
<div style="padding: 24px">
<div style="height: 100%;">
<div class="content">
<div class="table-operator">
<div class="table-operator" style='text-align: right'>
<div @click="handleAdd" class="operator-text">
<a-icon type="delete"/>
<a-icon type="plus"/>
{{$t('add')}}
</div>
</div>
@@ -118,7 +118,7 @@
{
title: this.$t('serialNumber'),
dataIndex: 'index',
align: 'center',
align: 'left',
width: 100,
customRender: function(t, r, index) {
return parseInt(index) + 1
@@ -127,21 +127,21 @@
{
title: this.$t('ProcessName'),
dataIndex: 'name',
align: 'center',
align: 'left',
ellipsis: true,
width: 240
},
{
title: this.$t('ProcessType'),
dataIndex: 'categoryName',
align: 'center',
align: 'left',
ellipsis: true,
width: 240
},
{
title: this.$t('createTime'),
dataIndex: 'createTime',
align: 'center',
align: 'left',
ellipsis: true,
width: 240,
customRender: function(t, r, index) {
@@ -151,7 +151,7 @@
{
title: this.$t('operation'),
width: 210,
align: 'center',
align: 'left',
fixed: 'right',
scopedSlots: { customRender: 'operation' }
}
@@ -298,7 +298,7 @@
</script>
<style lang="less" scoped>
@import '~@assets/less/common.less';
@import'~@assets/less/common.less';
.content {
padding: 0 10px;
@@ -348,6 +348,7 @@
</script>
<style scoped>
@import '~@assets/less/common.less';
.detail-box {
padding: 67px 0 0 0;
background: #ffffff;
@@ -79,6 +79,8 @@
<style lang="less" scoped>
//@import '~styles/mixins';
@import'~@assets/less/common.less';
#processDetails {
height: 100%;
@@ -219,6 +219,7 @@
</script>
<style scoped>
@import '~@assets/less/common.less';
.detail-box {
padding: 67px 0 0 0;
background: #ffffff;
@@ -2,7 +2,7 @@
<div class="doc-detail">
<div class="Virtual-detail-header" style="position: fixed;top: 0">
<div class="Virtual-detail-title">
<span style="line-height: 74px;display: inline-block;float: left">
<span style="line-height: 64px;display: inline-block;float: left">
<a-icon @click="backClick" type="left-circle" theme="filled"
style="margin-right: 8px;font-size: 30px;color: #21c9cc;"/>
</span>
@@ -25,7 +25,7 @@
</div>
</div>
</div>
<div style="padding: 67px 0 0 0;background: #ffffff;height:100%">
<div style="padding: 52px 0 0 0;background: #ffffff;height:100%">
<div class="detail-content" style="height: 100%">
<div v-if="isDisplay" class="Virtual-detail-left">
<div class="Virtual-detail-left-text" :title="$t('projectDetails')"
@@ -340,8 +340,8 @@
.Virtual-detail-header {
width: 100%;
height: 68px;
line-height: 68px;
height: 56px;
line-height: 56px;
padding: 0 32px 0 32px;
box-sizing: border-box;
display: flex;
@@ -357,7 +357,7 @@
font-size: 20px;
font-weight: 400;
color: #040B29;
line-height: 68px;
line-height: 55px;
}
.doc-detail-right {
@@ -44,6 +44,7 @@
<!-- :triggerChange="false" :dictCode="'cert_category'"/>-->
<!-- </div>-->
<!-- </a-col>-->
<template v-if="toggleSearchStatus">
<a-col :md="6" :sm="8">
<div class="box-title-text">
<div class="title-text" :title="$t('NareaOfResponsibility')">
@@ -73,6 +74,7 @@
v-model="formInline.sdt"></a-input>
</div>
</a-col>
</template>
<!-- <a-col :md="6" :sm="8">-->
<!-- <div class="box-title-text">-->
<!-- <div class="title-text" :title="$t('status')">-->
@@ -103,6 +105,10 @@
:fieldList="fieldList"/>
<a-button class="box-button" type="primary" @click="searchQuery">{{$t('query')}}</a-button>
<a-button class="box-button" style="margin-left: 8px" @click="searchReset">{{$t('reset')}}</a-button>
<a @click="handleToggleSearch" style="margin-left: 8px">
{{ !toggleSearchStatus ? $t('open') : $t('away') }}
<a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>
</a>
</a-col>
</span>
</a-row>
@@ -131,7 +137,7 @@
<!-- </div>-->
<!-- 导出-->
<div @click="handleExport" class="operator-text-title" v-if='currentPersonRole == "homo"'>
<a-icon type="export"/>
<a-icon type="export" :rotate="-90"/>
{{$t('dataExport')}}
</div>
<!-- 一键下发收集 -->
@@ -141,7 +147,7 @@
</div>
<!-- 冻结配置-->
<div @click="freezeConfiguration" class="operator-text-title" v-if='currentPersonRole == "homo"'>
<a-icon type="solution"/>
<a-icon type="lock"/>
{{$t('FreezeConfiguration')}}
</div>
<!-- 引用参数列-->
@@ -156,7 +162,7 @@
</div>
<!-- 同步上报库 -->
<div @click="handleSynchronousReportLibraryJurisdiction" class="operator-text-title" v-if='currentPersonRole == "homo"'>
<a-icon type="setting"/>
<a-icon type="sync"/>
{{$t('SynchronousReportLibrary')}}
</div>
<!-- 截止时间-->
@@ -170,11 +176,11 @@
{{$t('BatchDelete')}}
</div>
<div @click="bringInTheProjectInterfaceClick" class="operator-text-title" v-if='currentPersonRole == "homo"'>
<a-icon type="profile"/>
<a-icon type="user"/>
{{$t('bringInTheProjectInterface')}}
</div>
<div @click="AdjustareasofresponsibilityClick" class="operator-text-title" v-if='currentPersonRole == "homo"'>
<a-icon type="solution"/>
<a-icon type="setting"/>
{{$t('Adjustareasofresponsibility')}}
</div>
<!-- 认证工程师分配填写人-->
@@ -222,7 +228,7 @@
<!-- 退回-->
<div @click="returnDataJurisdiction" class="operator-text"
v-if='currentPersonRole == "sdt" || currentPersonRole == "homo" || currentPersonRole == "dre"'>
<a-icon type="delete"/>
<a-icon type="rollback"/>
{{$t('sendBack')}}
</div>
<!-- 导入-->
@@ -238,7 +244,7 @@
<!-- 强制撤回-->
<div @click="compulsoryWithdrawaljurisdiction" class="operator-text"
v-if='currentPersonRole == "homo" || currentPersonRole == "sdt"'>
<a-icon type="delete"/>
<a-icon type="undo":rotate="90"/>
{{$t('CompulsoryWithdrawal')}}
</div>
@@ -436,7 +442,7 @@
</div>
</div>
<!-- 认证工程师-提示-->
<div style='font-size: 16px;color: red;text-align: center' v-if='NoEngineer === 1'>
<div style='font-size: 18px;text-align: center' v-if='NoEngineer === 1'>
{{ currentPersonRole =='homo'? $t('certifiedEngineer'): (currentPersonRole =='sdt'?
$t('engineeringInterfacePerson'): $t('completedBy')) }}{{jurisdiction === "homoQZTH"? $t('Datastateexcept') : $t('Datastatusis')}}
<!-- 下发收集时-->
@@ -464,23 +470,29 @@
'{{$t('completed')}}'{{$t('or')}}'{{$t('ReturnedEngineer')}}'
</span>
<!-- 退回-->
<span v-else-if='jurisdiction === "homoTH"' class="text-wraning">
<span v-else-if='jurisdiction === "homoTH"' class="text-wraning" style='color: red'>
{{$t('Submitted')}}
</span>
<span v-else-if='jurisdiction === "sdtTH"' class="text-wraning">
'{{$t('handledInterface')}}'{{$t('or')}}'{{$t('Filledreturn')}}'
<p style='display: inline; color: red'>'{{$t('handledInterface')}}'</p>
{{$t('or')}}
<p style='display: inline; color: red'>'{{$t('Filledreturn')}}'</p>
</span>
<span v-else-if='jurisdiction === "dreTH"' class="text-wraning">
'{{$t('completed')}}'{{$t('or')}}'{{$t('ReturnedEngineer')}}'
<p style='display: inline; color: red'>'{{$t('completed')}}'</p>
{{$t('or')}}
<p style='display: inline; color: red'>'{{$t('ReturnedEngineer')}}'</p>
</span>
<!-- 强制撤回-->
<span v-else-if='jurisdiction === "homoQZTH"' class="text-wraning">
'{{$t('SynchronizedLibrary')}}'{{$t('or')}}'{{$t('CollectionInitiated')}}'
<span v-else-if='jurisdiction === "homoQZTH"' class="text-wraning" >
<p style='display: inline; color: red'>'{{$t('SynchronizedLibrary')}}'</p>
{{$t('or')}}
<p style='display: inline; color: red'>'{{$t('CollectionInitiated')}}'</p>
</span>
<span v-else-if='jurisdiction === "sdtQZTH"' class="text-wraning">
<span v-else-if='jurisdiction === "sdtQZTH"' class="text-wraning" style='color: red'>
{{$t('completed')}}
</span>
<span v-else-if='jurisdiction === "dreQZTH"' class="text-wraning">
<span v-else-if='jurisdiction === "dreQZTH"' class="text-wraning" style='color: red'>
{{$t('Submitted')}}
</span>
{{$t('timeoperation')}}
@@ -589,6 +601,7 @@
// R&H Manager manager
// 系统管理员 admin
// 游客 guest
toggleSearchStatus: false,
columns: [
{
title: this.$t('title'),
@@ -770,6 +783,9 @@
},
methods: {
...mapGetters(['userInfo']),
handleToggleSearch() {
this.toggleSearchStatus = !this.toggleSearchStatus
},
handleCancelRoleSwitching() {
this.visibleRoleSwitching = false
},
@@ -34,6 +34,7 @@
:triggerChange="false" :dictCode="'certification_progress'"/>
</div>
</a-col>
<template v-if="toggleSearchStatus">
<a-col :md="6" :sm="8">
<div class="box-title-text">
<div class="title-text" :title="$t('CurrentStatus')">
@@ -66,10 +67,15 @@
</a-select>
</div>
</a-col>
</template>
<span style="float: right;overflow: hidden;" class="table-page-search-submitButtons">
<a-col :md="6" :sm="24">
<a-button class="box-button" type="primary" @click="searchQuery">{{$t('query')}}</a-button>
<a-button class="box-button" style="margin-left: 8px" @click="searchReset">{{$t('reset')}}</a-button>
<a @click="handleToggleSearch" style="margin-left: 8px">
{{ !toggleSearchStatus ? $t('open') : $t('away') }}
<a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>
</a>
</a-col>
</span>
</a-row>
@@ -242,10 +248,11 @@
props: ['isDisplayNum', 'areaOfResponsibility'],
data() {
return {
toggleSearchStatus: false,
columns: [
{
title: this.$t('number'),
align: 'center',
align: 'left',
width: 70,
customRender: function(t, r, index) {
return parseInt(index) + 1
@@ -253,7 +260,7 @@
},
{
title: this.$t('standardInformation'),
align: 'center',
align: 'left',
dataIndex: 'standard',
width: 202,
sorter:true,
@@ -261,7 +268,7 @@
},
{
title: this.$t('areaOfResponsibility'),
align: 'center',
align: 'left',
width: 180,
sorter:true,
dataIndex: 'areaOfResponsibility',
@@ -269,7 +276,7 @@
},
{
title: this.$t('confirmationOfDesignConformity'),
align: 'center',
align: 'left',
width: 240,
sorter:true,
dataIndex: 'confirmationOfDesignConformity',
@@ -277,7 +284,7 @@
},
{
title: this.$t('PrehomoConfirmation'),
align: 'center',
align: 'left',
width: 240,
sorter:true,
dataIndex: 'PrehomoConfirmation',
@@ -285,7 +292,7 @@
},
{
title: this.$t('verificationAndConformityconfirmation'),
align: 'center',
align: 'left',
width: 240,
sorter:true,
dataIndex: 'verificationAndConformityconfirmation',
@@ -293,7 +300,7 @@
},
{
title: this.$t('CertificationProgress'),
align: 'center',
align: 'left',
width: 150,
sorter:true,
dataIndex: 'CertificationProgress',
@@ -301,7 +308,7 @@
},
{
title: this.$t('CurrentStatus'),
align: 'center',
align: 'left',
width: 150,
sorter:true,
dataIndex: 'CurrentProjectStatusEvaluation',
@@ -396,6 +403,9 @@
},
methods: {
...mapGetters(['userInfo']),
handleToggleSearch() {
this.toggleSearchStatus = !this.toggleSearchStatus
},
searchQuery() {
this.getList()
},
@@ -723,7 +733,7 @@
}
.title-text {
width: 64px;
width: 110px;
color: #000F16;
display: inline-block;
font-weight: 500;
@@ -913,6 +923,10 @@
text-justify: inter-ideograph;
word-break: break-all
}
///deep/.taskTable .ant-table-thead > tr > th {
// font-weight: bolder;
//}
</style>
<style>
.box-input .ant-select-selection {
@@ -27,7 +27,7 @@
{{$t('addDetailList')}}
</div>
<div @click="handleModule" class="operator-text" v-has="'params:manifest:change'">
<a-icon type="bulb"/>
<a-icon type="file-sync"/>
{{$t('changeExtension')}}
</div>
<div @click="handleCody" class="operator-text" v-has="'params:manifest:copy'">
@@ -153,14 +153,14 @@
columns: [
{
title: this.$t('title'),
align: 'center',
align: 'left',
dataIndex: 'title',
width: 240,
scopedSlots: { customRender: 'paramsManifestClick' }
},
{
title: this.$t('status'),
align: 'center',
align: 'left',
width: 80,
ellipsis: true,
sorter:true,
@@ -168,14 +168,14 @@
},
{
title: this.$t('parameterTemplateName'),
align: 'center',
align: 'left',
width: 180,
ellipsis: true,
dataIndex: 'paramsTemplateName'
},
{
title: this.$t('relatedProjectVersion'),
align: 'center',
align: 'left',
width: 120,
ellipsis: true,
sorter:true,
@@ -183,7 +183,7 @@
},
{
title: this.$t('collectionCompletionTime'),
align: 'center',
align: 'left',
dataIndex: 'finishTime',
width: 180,
ellipsis: true,
@@ -192,7 +192,7 @@
},
{
title: this.$t('Version'),
align: 'center',
align: 'left',
width: 80,
ellipsis: true,
sorter:true,
@@ -200,14 +200,14 @@
},
{
title: this.$t('creator'),
align: 'center',
align: 'left',
width: 110,
ellipsis: true,
dataIndex: 'createBy'
},
{
title: this.$t('created'),
align: 'center',
align: 'left',
width: 160,
ellipsis: true,
sorter:true,
@@ -215,7 +215,7 @@
},
{
title: this.$t('operation'),
align: 'center',
align: 'left',
fixed: 'right',
width: 210,
scopedSlots: { customRender: 'operation' }
@@ -597,9 +597,9 @@
border-radius: 4px;
}
/deep/ .add-padding {
margin-left: -89px !important;
}
///deep/ .add-padding {
// margin-left: -89px !important;
//}
.textName {
width: 100%;
@@ -622,6 +622,14 @@
::v-deep .ant-table-body {
background: transparent !important;
}
///deep/.ant-table-thead > tr > th {
// font-weight: bolder;
//}
///deep/.ant-table-tbody > tr > td {
// color: #040B29 ;
//}
</style>
<style>
.box-input .ant-select-selection {
@@ -85,50 +85,50 @@
{
title: this.$t('directoryName'),
dataIndex: 'directoryName',
align: 'center',
align: 'left',
ellipsis: true
},
{
title: this.$t('batch'),
dataIndex: 'lot',
align: 'center',
align: 'left',
ellipsis: true
},
{
title: this.$t('catalogFile'),
dataIndex: 'directoryFile',
align: 'center',
align: 'left',
ellipsis: true,
scopedSlots: { customRender: 'operationFile' }
},
{
title: this.$t('testScheme'),
dataIndex: 'experimentFile',
align: 'center',
align: 'left',
ellipsis: true,
scopedSlots: { customRender: 'operationFile' }
},
{
title: this.$t('testReportLocation'),
dataIndex: 'detectionReportLocation',
align: 'center',
align: 'left',
ellipsis: true
},
{
title: this.$t('explain'),
dataIndex: 'explainInfo',
align: 'center',
align: 'left',
ellipsis: true
},
{
title: this.$t('uploadTime'),
dataIndex: 'uploadTime',
align: 'center',
align: 'left',
ellipsis: true
},
{
title: this.$t('operation'),
align: 'center',
align: 'left',
width: 130,
scopedSlots: { customRender: 'operation' }
}
@@ -45,18 +45,18 @@
{
title: this.$t('versionName'),
dataIndex: 'versionsName',
align: 'center',
align: 'left',
ellipsis: true
},
{
title: this.$t('finalizationTime'),
dataIndex: 'createTime',
align: 'center',
align: 'left',
ellipsis: true
},
{
title: this.$t('operation'),
align: 'center',
align: 'left',
width: 120,
scopedSlots: { customRender: 'operation' }
}
@@ -104,19 +104,19 @@
{
title: this.$t('standard'),
dataIndex: 'serial_number',
align: 'center',
align: 'left',
ellipsis: true
},
{
title: this.$t('title'),
dataIndex: 'title',
align: 'center',
align: 'left',
ellipsis: true
},
{
title: this.$t('zoneOfApplication'),
dataIndex: 'region',
align: 'center',
align: 'left',
ellipsis: true
},
// {
@@ -134,13 +134,13 @@
{
title: this.$t('ImplementationDate'),
dataIndex: 'xin1_che1_xing2_shi2_shi1_ri4_qi1',
align: 'center',
align: 'left',
ellipsis: true
},
{
title: this.$t('vehicleInProductionDate'),
dataIndex: 'implement_time',
align: 'center',
align: 'left',
ellipsis: true
},
// {
@@ -24,6 +24,7 @@
v-model="queryParam.title"></j-input>
</div>
</a-col>
<template v-if="toggleSearchStatus">
<a-col :md="6" :sm="8">
<div class="box-title-text">
<div class="title-text" :title="$t('areaOfResponsibility')">
@@ -75,7 +76,8 @@
</a-select>
</div>
</a-col>
<span style="float: right;overflow: hidden;margin-right: 11px" class="table-page-search-submitButtons">
</template>
<span style="float: right;overflow: hidden;margin-right: 11px; " class="table-page-search-submitButtons">
<a-col :md="6" :sm="24">
<globalAdvancedQuery ref="globalAdvancedQueryRef"
@handleSuperQuery="handleSuperQuery"
@@ -83,6 +85,10 @@
<a-button class="box-button" type="primary" @click="searchQuery">{{ $t('query') }}</a-button>
<a-button class="box-button" style="margin-left: 8px"
@click="searchReset">{{ $t('reset') }}</a-button>
<a @click="handleToggleSearch" style="margin-left: 8px">
{{ !toggleSearchStatus ? $t('open') : $t('away') }}
<a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>
</a>
</a-col>
</span>
</a-row>
@@ -100,18 +106,11 @@
<a-icon type="file-protect"/>
{{ $t('initiateTaskConfirmation') }}
</div>
<div class="operator-text" @click="alterationClick">
<a-icon type="file-search"/>
{{ $t('alteration') }}
</div>
<div class="operator-text" @click="fixedPlateClick">
<a-icon type="bulb"/>
{{ $t('fixedPlate') }}
</div>
</div>
<div style="float: right;margin-top: 1px;" v-if="isDisplay">
<a-popconfirm overlayClassName='popconfirm' placement="bottomRight">
<template slot="title" id="popconfirm">
<div style="height:320px;overflow:scroll;overflow-x: auto;">
<div class="operator-text-title">
<ImportFile :url="url" :projectLibraryId=$route.query.id :isTrue="true" :accept="'.zip'"
@getList="getPersonnelList"/>
@@ -128,8 +127,8 @@
<a-icon type="delete"/>
{{ $t('BatchDelete') }}
</div>
<div class="operator-text-title" @click="ExportReportClick">
<a-icon type="export"/>
<div class="operator-text-title" @click="ExportReportClick">
<a-icon type="export" :rotate="-90"/>
{{ $t('ExportReport') }}
</div>
<div class="operator-text-title" @click="batSettingClick">
@@ -141,9 +140,22 @@
{{ $t('batchSettingPersonnel') }}
</div>
<div class="operator-text-title" @click="questionClick">
<a-icon type="apartment"/>
<a-icon type="sound"/>
{{ $t('question') }}
</div>
<div class="operator-text-title" @click="alterationClick">
<a-icon type="file-search"/>
{{ $t('alteration') }}
</div>
<div class="operator-text-title" @click="fixedPlateClick">
<a-icon type="pushpin"/>
{{ $t('fixedPlate') }}
</div>
<div @click="copyClick" class="operator-text-title">
<a-icon type="copy"/>
{{ $t('copy') }}
</div>
</div>
</template>
<div class="operator-text" style="position: relative">
<span style="position: absolute;left: -13px;top: -4px">...</span>{{ $t('more') }}
@@ -157,10 +169,6 @@
<a-icon type="profile"/>
{{ $t('Transfer') }}
</div>
<div @click="copyClick" class="operator-text">
<a-icon type="copy"/>
{{ $t('copy') }}
</div>
<div @click="handleAdd" class="operator-text">
<a-icon type="plus"/>
{{ $t('add') }}
@@ -202,6 +210,7 @@
<div style="width: 100%">
<a-table
ref="table"
:components="drag(columns,'columnsAll')"
class="tableList"
:loading="loading"
:pagination="false"
@@ -258,39 +267,39 @@
<span slot="designDeliverableTemplateName" slot-scope="text,record">
<span :title="record.designDeliverableTypeName">{{ record.designDeliverableTypeName }}</span><br
v-if="record.designDeliverableTypeName">
<a v-if="record.designDeliverableTemplate && record.designDeliverableTemplate.split(',').length == 1"
:title="record.designDeliverableTemplateName"
@click="pdfPreviewClick(record.designDeliverableTemplateName,record.designDeliverableTemplate)">
{{ record.designDeliverableTemplateName.length > 10 ? record.designDeliverableTemplateName.slice(0, 9) + '...' :record.designDeliverableTemplateName}}
</a>
<a v-else-if="record.designDeliverableTemplate && record.designDeliverableTemplate.split(',').length > 1"
@click="clickButtonToUpload(record.designDeliverableTemplate)">{{ $t('viewFile') }}</a>
<!-- <a v-if="record.designDeliverableTemplate && record.designDeliverableTemplate.split(',').length == 1"-->
<!-- :title="record.designDeliverableTemplateName"-->
<!-- @click="pdfPreviewClick(record.designDeliverableTemplateName,record.designDeliverableTemplate)">-->
<!-- {{ record.designDeliverableTemplateName.length > 10 ? record.designDeliverableTemplateName.slice(0, 9) + '...' :record.designDeliverableTemplateName}}-->
<!-- </a>-->
<!-- <a v-else-if="record.designDeliverableTemplate && record.designDeliverableTemplate.split(',').length > 1"-->
<!-- @click="clickButtonToUpload(record.designDeliverableTemplate)">{{ $t('viewFile') }}</a>-->
<span v-else>--</span>
</span>
<span slot="prehomoDeliverableTemplateName" slot-scope="text,record">
<span :title="record.prehomoDeliverableTypeName">{{ record.prehomoDeliverableTypeName }}</span><br
v-if="record.prehomoDeliverableTypeName">
<a v-if="record.prehomoDeliverableTemplate && record.prehomoDeliverableTemplate.split(',').length == 1"
:title="record.prehomoDeliverableTemplateName"
@click="pdfPreviewClick(record.prehomoDeliverableTemplateName,record.prehomoDeliverableTemplate)">
{{ record.prehomoDeliverableTemplateName.length > 10 ? record.prehomoDeliverableTemplateName.slice(0, 9) + '...' :record.prehomoDeliverableTemplateName}}
</a>
<a v-else-if="record.prehomoDeliverableTemplate && record.prehomoDeliverableTemplate.split(',').length > 1"
@click="clickButtonToUpload(record.prehomoDeliverableTemplate)">{{ $t('viewFile') }}</a>
<!-- <a v-if="record.prehomoDeliverableTemplate && record.prehomoDeliverableTemplate.split(',').length == 1"-->
<!-- :title="record.prehomoDeliverableTemplateName"-->
<!-- @click="pdfPreviewClick(record.prehomoDeliverableTemplateName,record.prehomoDeliverableTemplate)">-->
<!-- {{ record.prehomoDeliverableTemplateName.length > 10 ? record.prehomoDeliverableTemplateName.slice(0, 9) + '...' :record.prehomoDeliverableTemplateName}}-->
<!-- </a>-->
<!-- <a v-else-if="record.prehomoDeliverableTemplate && record.prehomoDeliverableTemplate.split(',').length > 1"-->
<!-- @click="clickButtonToUpload(record.prehomoDeliverableTemplate)">{{ $t('viewFile') }}</a>-->
<span v-else>--</span>
</span>
<span slot="verifyDeliverableTemplateName" slot-scope="text,record">
<span :title="record.verifyDeliverableTypeName">{{ record.verifyDeliverableTypeName }}</span><br
v-if="record.verifyDeliverableTypeName">
<a v-if="record.verifyDeliverableTemplate && record.verifyDeliverableTemplate.split(',').length == 1"
:title="record.verifyDeliverableTemplateName"
@click="pdfPreviewClick(record.verifyDeliverableTemplateName,record.verifyDeliverableTemplate)">
{{ record.verifyDeliverableTemplateName.length > 10 ? record.verifyDeliverableTemplateName.slice(0, 9) + '...' :record.verifyDeliverableTemplateName}}
</a>
<a v-else-if="record.verifyDeliverableTemplate && record.verifyDeliverableTemplate.split(',').length > 1"
@click="clickButtonToUpload(record.verifyDeliverableTemplate)">{{ $t('viewFile') }}</a>
<!-- <a v-if="record.verifyDeliverableTemplate && record.verifyDeliverableTemplate.split(',').length == 1"-->
<!-- :title="record.verifyDeliverableTemplateName"-->
<!-- @click="pdfPreviewClick(record.verifyDeliverableTemplateName,record.verifyDeliverableTemplate)">-->
<!-- {{ record.verifyDeliverableTemplateName.length > 10 ? record.verifyDeliverableTemplateName.slice(0, 9) + '...' :record.verifyDeliverableTemplateName}}-->
<!-- </a>-->
<!-- <a v-else-if="record.verifyDeliverableTemplate && record.verifyDeliverableTemplate.split(',').length > 1"-->
<!-- @click="clickButtonToUpload(record.verifyDeliverableTemplate)">{{ $t('viewFile') }}</a>-->
<span v-else>--</span>
</span>
</a-table>
@@ -465,6 +474,7 @@
import globalAdvancedQuery from '@/components/globalAdvancedQuery/index'
import batchSettingPersonnel from './batchSettingPersonnel'
import { getAction, postAction, downloadFile, deleteAction } from '@/api/manage'
import {ResizeHeader, ResizeColumnProvide } from '@/mixins/header'
import moment from 'moment'
import { mapGetters } from 'vuex'
import { Base64 } from 'js-base64'
@@ -485,8 +495,10 @@
batchSettingPersonnel,
listOfRegulationsView
},
mixins: [ResizeColumnProvide,ResizeHeader],
data() {
return {
toggleSearchStatus: false,
roleSwitchingList: [],
listTitle: '',
orderBy: '1',
@@ -494,7 +506,7 @@
columnsAll: [
{
title: this.$t('standard'),
align: 'center',
align: 'left',
dataIndex: 'serialNumber',
width: 180,
fixed: 'left',
@@ -503,7 +515,7 @@
},
{
title: this.$t('title'),
align: 'center',
align: 'left',
dataIndex: 'title',
width: 180,
fixed: 'left',
@@ -511,14 +523,14 @@
},
{
title: this.$t('subtitle'),
align: 'center',
align: 'left',
dataIndex: 'subtitle',
ellipsis: true,
width: 180
},
{
title: this.$t('listConfirmationStatus'),
align: 'center',
align: 'left',
dataIndex: 'inventoryAffirmStatusName',
width: 240,
sorter:true,
@@ -526,7 +538,7 @@
},
{
title: this.$t('taskAffirmStatus'),
align: 'center',
align: 'left',
sorter:true,
dataIndex: 'taskAffirmStatusName',
width: 240,
@@ -539,49 +551,49 @@
// },
{
title: this.$t('zoneOfApplication'),
align: 'center',
align: 'left',
dataIndex: 'region_dictText',
width: 180,
ellipsis: true
},
{
title: this.$t('correspondingStandard'),
align: 'center',
align: 'left',
dataIndex: 'correspondingStandard',
width: 180,
ellipsis: true
},
{
title: this.$t('implementationCategory'),
align: 'center',
align: 'left',
dataIndex: 'implementType_dictText',
width: 180,
ellipsis: true
},
{
title: this.$t('ImplementationDate'),
align: 'center',
align: 'left',
width: 200,
dataIndex: 'xin1Che1Xing2Shi2Shi1Ri4Qi1',
ellipsis: true
},
{
title: this.$t('vehicleInProductionDate'),
align: 'center',
align: 'left',
width: 220,
dataIndex: 'implementTime',
ellipsis: true
},
{
title: this.$t('certificationType'),
align: 'center',
align: 'left',
dataIndex: 'attestationType_dictText',
width: 180,
ellipsis: true
},
{
title: this.$t('certificationLevel'),
align: 'center',
align: 'left',
dataIndex: 'attestationRank_dictText',
width: 180,
sorter:true,
@@ -589,14 +601,14 @@
},
{
title: this.$t('applicableSupplement'),
align: 'center',
align: 'left',
width: 220,
dataIndex: 'applicableSupplement',
ellipsis: true
},
{
title: 'WVTA ID',
align: 'center',
align: 'left',
dataIndex: 'wvtaId',
width: 180,
sorter:true,
@@ -604,7 +616,7 @@
},
{
title: this.$t('areaOfResponsibility'),
align: 'center',
align: 'left',
ellipsis: true,
sorter:true,
dataIndex: 'dutyTerritory_dictText',
@@ -612,7 +624,7 @@
},
{
title: this.$t('regulatoryEngineer'),
align: 'center',
align: 'left',
ellipsis: true,
sorter:true,
dataIndex: 'regulationOwnerName',
@@ -620,7 +632,7 @@
},
{
title: this.$t('certifiedEngineer'),
align: 'center',
align: 'left',
ellipsis: true,
sorter:true,
dataIndex: 'homologationEngineerName',
@@ -628,7 +640,7 @@
},
{
title: this.$t('engineeringInterfacePerson'),
align: 'center',
align: 'left',
ellipsis: true,
sorter:true,
dataIndex: 'engineeringInterfacePersonName',
@@ -636,7 +648,7 @@
},
{
title: this.$t('remarks'),
align: 'center',
align: 'left',
dataIndex: 'remark',
width: 180,
ellipsis: true
@@ -647,7 +659,7 @@
{
title: this.$t('Deliverables'),
dataIndex: 'designDeliverableTemplateName',
align: 'center',
align: 'left',
width: 180,
ellipsis: true,
scopedSlots: { customRender: 'designDeliverableTemplateName' }
@@ -655,28 +667,28 @@
{
title: this.$t('Sponsor'),
dataIndex: 'designInitiatorName',
align: 'center',
align: 'left',
width: 180,
ellipsis: true
},
{
title: this.$t('personLiable'),
dataIndex: 'designDutyName',
align: 'center',
align: 'left',
width: 180,
ellipsis: true
},
{
title: this.$t('TaskCutOffTime'),
dataIndex: 'designDueDate',
align: 'center',
align: 'left',
ellipsis: true,
width: 140
},
{
title: this.$t('descriptionDeliverables'),
dataIndex: 'designRemark',
align: 'center',
align: 'left',
width: 220,
ellipsis: true
}
@@ -688,7 +700,7 @@
{
title: this.$t('Deliverables'),
dataIndex: 'prehomoDeliverableTemplateName',
align: 'center',
align: 'left',
width: 180,
ellipsis: true,
scopedSlots: { customRender: 'prehomoDeliverableTemplateName' }
@@ -696,28 +708,28 @@
{
title: this.$t('Sponsor'),
dataIndex: 'prehomoInitiatorName',
align: 'center',
align: 'left',
width: 180,
ellipsis: true
},
{
title: this.$t('personLiable'),
dataIndex: 'prehomoDutyName',
align: 'center',
align: 'left',
width: 180,
ellipsis: true
},
{
title: this.$t('TaskCutOffTime'),
dataIndex: 'prehomoDueDate',
align: 'center',
align: 'left',
width: 140,
ellipsis: true
},
{
title: this.$t('descriptionDeliverables'),
dataIndex: 'prehomoRemark',
align: 'center',
align: 'left',
width: 220,
ellipsis: true
}
@@ -729,7 +741,7 @@
{
title: this.$t('Deliverables'),
dataIndex: 'verifyDeliverableTemplateName',
align: 'center',
align: 'left',
width: 180,
ellipsis: true,
scopedSlots: { customRender: 'verifyDeliverableTemplateName' }
@@ -737,28 +749,28 @@
{
title: this.$t('Sponsor'),
dataIndex: 'verifyInitiatorName',
align: 'center',
align: 'left',
width: 180,
ellipsis: true
},
{
title: this.$t('personLiable'),
dataIndex: 'verifyDutyName',
align: 'center',
align: 'left',
width: 180,
ellipsis: true
},
{
title: this.$t('TaskCutOffTime'),
dataIndex: 'verifyDueDate',
align: 'center',
align: 'left',
ellipsis: true,
width: 140
},
{
title: this.$t('descriptionDeliverables'),
dataIndex: 'verifyRemark',
align: 'center',
align: 'left',
width: 220,
ellipsis: true
}
@@ -766,14 +778,14 @@
},
{
title: this.$t('operation'),
align: 'center',
align: 'left',
fixed: 'right',
width: 240,
scopedSlots: { customRender: 'operation' }
},
{
title: this.$t('operation'),
align: 'center',
align: 'left',
fixed: 'right',
width: 140,
scopedSlots: { customRender: 'operationOne' }
@@ -783,20 +795,20 @@
{
title: this.$t('deliverableTemplate'),
dataIndex: 'fileName',
align: 'center',
align: 'left',
width: 260,
ellipsis: true
},
{
title: this.$t('resultReported'),
dataIndex: 'fileName',
align: 'center',
align: 'left',
width: 260,
ellipsis: true
},
{
title: this.$t('operation'),
align: 'center',
align: 'left',
width: 130,
scopedSlots: { customRender: 'fileOperation' }
}
@@ -1019,7 +1031,7 @@
})
if (this.areaOfResponsibilityList && this.areaOfResponsibilityList.dutyTerritory) {
this.queryParam.dutyTerritory = this.areaOfResponsibilityList.dutyTerritory
this.queryParam = {...this.queryParam}
this.queryParam = { ...this.queryParam }
}
// } else {
// this.isDisplay = false
@@ -1068,6 +1080,9 @@
},
methods: {
...mapGetters(['userInfo']),
handleToggleSearch() {
this.toggleSearchStatus = !this.toggleSearchStatus
},
viewClick(row) {
let roleCodeIndex
if (this.isDisplay) {
@@ -2372,7 +2387,7 @@
}
.title-text {
width: 92px;
width: 110px;
color: #000F16;
display: inline-block;
font-weight: 500;
@@ -2553,7 +2568,7 @@
overflow: scroll !important;
}
</style>
<style>
<style lang="less">
.box-input .ant-select-selection {
height: 38px !important;
}
@@ -2574,6 +2589,14 @@
display: none !important;
}
//.popconfirm .ant-popover-inner-content{
// padding: 0px 16px;
//}
//
//.popconfirm .ant-popover-message{
// padding: 23px 0 1px;
//}
.ant-table-placeholder {
padding: 0;
border-top: none;
@@ -2584,6 +2607,36 @@
}
.tableList .ant-table-thead > tr > th {
padding: 7px 16px !important;
padding: 0px 16px !important;
//font-weight: bold;
//background: #f3f6f6;
}
//.tableList .ant-table-tbody > tr > td{
// color: #040B29 ;
//}
//.tableList .ant-table-thead > tr{
// padding: 2px 16px !important;
//}
//.tableList .ant-table-thead >tr{
// height: 56px !important;
//}
</style>
<style lang="less">
/* vue-draggable-resizable@2.1.0 begin */
.resize-table-th {
position: relative;
overflow: hidden;
}
.resize-table-th .table-draggable-handle {
height: 100% !important;
bottom: 0;
left: auto !important;
right: -5px;
cursor: col-resize;
touch-action: none;
}
/* 插件 end */
</style>
@@ -20,6 +20,7 @@
:triggerChange="false" :dictCode="'duty_territory'"/>
</div>
</a-col>
<template v-if="toggleSearchStatus">
<a-col :md="12" :sm="8">
<div class="box-title-text-search">
<div class="title-text-search" :title="$t('engineeringInterfacePerson')">
@@ -64,11 +65,16 @@
</a-select>
</div>
</a-col>
</template>
<span style="float: right;overflow: hidden;margin-right: 11px;margin-bottom: 20px"
class="table-page-search-submitButtons">
<a-button class="box-button-search" type="primary" @click="searchQuery">{{$t('query')}}</a-button>
<a-button class="box-button-search" style="margin-left: 8px"
@click="searchReset">{{$t('reset')}}</a-button>
<a @click="handleToggleSearch" style="margin-left: 8px">
{{ !toggleSearchStatus ? $t('open') : $t('away') }}
<a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>
</a>
</span>
</a-row>
</a-form>
@@ -274,42 +280,43 @@
},
data() {
return {
toggleSearchStatus: false,
visible: false,
queryParam: {},
columnsAll: [
{
title: this.$t('areaOfResponsibility'),
align: 'center',
align: 'left',
dataIndex: 'dutyTerritory_dictText',
ellipsis: true
},
{
align: 'center',
align: 'left',
dataIndex: 'lawEngineerName',
slots: { title: 'regulatoryEngineer' },
ellipsis: true
},
{
align: 'center',
align: 'left',
slots: { title: 'engineeringInterfacePerson' },
dataIndex: 'engineeringInterfacePersonName',
ellipsis: true
},
{
align: 'center',
align: 'left',
slots: { title: 'certifiedEngineer' },
dataIndex: 'certificationEngineerName',
ellipsis: true
},
{
title: this.$t('remarks'),
align: 'center',
align: 'left',
dataIndex: 'remark',
ellipsis: true
},
{
title: this.$t('operation'),
align: 'center',
align: 'left',
width: 110,
fixed: 'right',
scopedSlots: { customRender: 'operation' }
@@ -409,6 +416,9 @@
},
methods: {
...mapGetters(['userInfo']),
handleToggleSearch() {
this.toggleSearchStatus = !this.toggleSearchStatus
},
queryCertificationEngineer() {
getAction(this.url.queryCertificationEngineer, { projectId: this.$route.query.id }).then((res) => {
if (res.success) {
@@ -634,7 +644,7 @@
}
.title-text-search {
width: 90px;
width: 110px;
color: #000F16;
display: inline-block;
font-weight: 500;
@@ -671,4 +681,12 @@
background: #fff;
border-radius: 0 0 2px 2px;
}
/*/deep/.table .ant-table-thead > tr > th {*/
/* font-weight: bolder;*/
/*}*/
/*/deep/.table .ant-table-tbody > tr > td {*/
/* color: #040B29 ;*/
/*}*/
</style>
@@ -99,7 +99,7 @@
columns: [
{
title: this.$t('standard'),
align: 'center',
align: 'left',
dataIndex: 'serialNumber',
scopedSlots: { customRender: 'standard' },
ellipsis: true,
@@ -108,7 +108,7 @@
},
{
title: this.$t('title'),
align: 'center',
align: 'left',
dataIndex: 'title',
ellipsis: true,
width: 180,
@@ -116,7 +116,7 @@
},
{
title: this.$t('ProcessType'),
align: 'center',
align: 'left',
dataIndex: 'flowType',
ellipsis: true,
sorter:true,
@@ -124,7 +124,7 @@
},
{
title: this.$t('areaOfResponsibility'),
align: 'center',
align: 'left',
dataIndex: 'dutyTerritory',
ellipsis: true,
sorter:true,
@@ -132,7 +132,7 @@
},
{
title: this.$t('problemType'),
align: 'center',
align: 'left',
dataIndex: 'problemType',
ellipsis: true,
sorter:true,
@@ -140,7 +140,7 @@
},
{
title: this.$t('Sponsor'),
align: 'center',
align: 'left',
dataIndex: 'initiator',
ellipsis: true,
sorter:true,
@@ -148,7 +148,7 @@
},
{
title: this.$t('personLiable'),
align: 'center',
align: 'left',
dataIndex: 'duty',
ellipsis: true,
sorter:true,
@@ -316,7 +316,7 @@
}
.title-text {
width: 32px;
width: 110px;
color: #000F16;
display: inline-block;
font-weight: 500;
@@ -357,4 +357,12 @@
text-justify: inter-ideograph;
word-break: break-all
}
/deep/.ant-table-thead > tr > th {
font-weight: bolder;
}
/*/deep/.ant-table-tbody > tr > td {*/
/* color: #040B29 ;*/
/*}*/
</style>
@@ -19,7 +19,7 @@
</div>
<a-form-model-item class="itemModel" prop="listConfirmation">
<a-date-picker class="box-input"
:placeholder="$t('PleaseSelect')+$t('confirmationOfRegulationsList')"
:placeholder="$t('PleaseSelect')+$t('confirmationOfRegulationsList')+$t('time')"
@change="dateChange({db_field_name:'listConfirmation'})"
format="YYYY-MM-DD"
:getCalendarContainer="(trigger) => trigger.parentNode"
@@ -38,7 +38,7 @@
</div>
<a-form-model-item class="itemModel" prop="legalTaskConfirmation">
<a-date-picker class="box-input"
:placeholder="$t('PleaseSelect')+$t('regulatoryTaskConfirmation')"
:placeholder="$t('PleaseSelect')+$t('regulatoryTaskConfirmation')+$t('time')"
@change="dateChange({db_field_name:'legalTaskConfirmation'})"
format="YYYY-MM-DD"
:getCalendarContainer="(trigger) => trigger.parentNode"
@@ -57,7 +57,7 @@
</div>
<a-form-model-item class="itemModel" prop="designDeadline">
<a-date-picker class="box-input"
:placeholder="$t('PleaseSelect')+$t('confirmationOfDesignConformity')"
:placeholder="$t('PleaseSelect')+$t('confirmationOfDesignConformity')+$t('time')"
@change="dateChange({db_field_name:'designDeadline'})"
format="YYYY-MM-DD"
:getCalendarContainer="(trigger) => trigger.parentNode"
@@ -76,7 +76,7 @@
</div>
<a-form-model-item class="itemModel" prop="prehomoDeadline">
<a-date-picker class="box-input"
:placeholder="$t('PleaseSelect')+$t('preHomoCompletion')"
:placeholder="$t('PleaseSelect')+$t('preHomoCompletion')+$t('time')"
@change="dateChange({db_field_name:'prehomoDeadline'})"
format="YYYY-MM-DD"
:getCalendarContainer="(trigger) => trigger.parentNode"
@@ -96,7 +96,7 @@
<a-form-model-item class="itemModel" prop="attestationStartTime">
<a-date-picker class="box-input"
:disabledDate='this.disabledRegistrationStartDate'
:placeholder="$t('PleaseSelect')+$t('certificationStart')"
:placeholder="$t('PleaseSelect')+$t('certificationStart')+$t('time')"
@change="dateChange({db_field_name:'attestationStartTime'})"
format="YYYY-MM-DD"
:getCalendarContainer="(trigger) => trigger.parentNode"
@@ -116,7 +116,7 @@
<a-form-model-item class="itemModel" prop="attestationEndTime">
<a-date-picker class="box-input"
:disabledDate='this.disabledRegistrationEndDate'
:placeholder="$t('PleaseSelect')+$t('certificationEnd')"
:placeholder="$t('PleaseSelect')+$t('certificationEnd')+$t('time')"
@change="dateChange({db_field_name:'attestationEndTime'})"
format="YYYY-MM-DD"
:getCalendarContainer="(trigger) => trigger.parentNode"
@@ -135,7 +135,7 @@
</div>
<a-form-model-item class="itemModel" prop="verifyDeadline">
<a-date-picker class="box-input"
:placeholder="$t('PleaseSelect')+$t('verificationAndConformityconfirmation')"
:placeholder="$t('PleaseSelect')+$t('verificationAndConformityconfirmation')+$t('time')"
@change="dateChange({db_field_name:'verifyDeadline'})"
format="YYYY-MM-DD"
:getCalendarContainer="(trigger) => trigger.parentNode"

Some files were not shown because too many files have changed in this diff Show More