合并分支 'master' 到 'dev_third_stage'

Master

查看合并请求 laws-nio/laws-weilai!151
This commit is contained in:
李雪涛
2022-08-19 20:31:05 +08:00
10 changed files with 717 additions and 49 deletions
@@ -236,11 +236,11 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
List<Map<String,String>> infoDiffListEn = new ArrayList<>();
infoDiffListEn.add(infoDiffEn);
if(infoDiff.size()>1) {
contentLog = dummyInventoryBaseEOService.setInfoDiffListContent(null, infoDiffList, contentLog);
enContentLog = dummyInventoryBaseEOService.setInfoDiffListContent(enContentLog, infoDiffListEn, null);
// contentLog = dummyInventoryBaseEOService.setInfoDiffListContent(null, infoDiffList, contentLog);
// enContentLog = dummyInventoryBaseEOService.setInfoDiffListContent(enContentLog, infoDiffListEn, null);
dummyLogEOService.updateLog(contentLog, dummyInventoryInfoEO.getDummyInventoryBaseId(),CutEnum.CN.getValue());
dummyLogEOService.updateLog(enContentLog, dummyInventoryInfoEO.getDummyInventoryBaseId(),CutEnum.EN.getValue());
// dummyLogEOService.updateLog(contentLog, dummyInventoryInfoEO.getDummyInventoryBaseId(),CutEnum.CN.getValue());
// dummyLogEOService.updateLog(enContentLog, dummyInventoryInfoEO.getDummyInventoryBaseId(),CutEnum.EN.getValue());
}
}else{
if(CutEnum.CN.getValue().equals(dummyInventoryInfoEO.getCut())){
@@ -362,14 +362,14 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
this.saveBatch(dummyInventoryInfoEOList);
//更新log
LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
String username = sysUser.getUsername();
String projectId = dummyInventoryInfoEOList.get(0).getDummyInventoryBaseId();
String serialNumber = dummyInventoryInfoEOList.stream().map(e->e.getSerialNumber()).collect(Collectors.joining(","));
String contentLog = username+"复制了“"+serialNumber+"";
String enContentLog = username+" copied “"+serialNumber+"”.";
dummyLogEOService.updateLog(contentLog, projectId,CutEnum.CN.getValue());
dummyLogEOService.updateLog(enContentLog, projectId,CutEnum.EN.getValue());
// LoginUser sysUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
// String username = sysUser.getUsername();
// String projectId = dummyInventoryInfoEOList.get(0).getDummyInventoryBaseId();
// String serialNumber = dummyInventoryInfoEOList.stream().map(e->e.getSerialNumber()).collect(Collectors.joining(","));
// String contentLog = username+"复制了“"+serialNumber+"”";
// String enContentLog = username+" copied “"+serialNumber+"”.";
// dummyLogEOService.updateLog(contentLog, projectId,CutEnum.CN.getValue());
// dummyLogEOService.updateLog(enContentLog, projectId,CutEnum.EN.getValue());
}
}else{
if(CutEnum.CN.getValue().equals(cut)){
@@ -600,12 +600,12 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
if(StringUtils.isNotBlank(content)){
contentLog = contentLog.substring(0, contentLog.length() - 5) + "";
dummyLogEOService.updateLog(contentLog, projectId,CutEnum.CN.getValue());
// dummyLogEOService.updateLog(contentLog, projectId,CutEnum.CN.getValue());
}
if(StringUtils.isNotBlank(enContent)){
enContentLog = enContentLog.substring(0, enContentLog.length() - 5) + "";
dummyLogEOService.updateLog(enContentLog, projectId,CutEnum.EN.getValue());
// dummyLogEOService.updateLog(enContentLog, projectId,CutEnum.EN.getValue());
}
}
}else{
@@ -98,6 +98,12 @@ public class ConditionAssessmentEOServiceImpl extends ServiceImpl<ConditionAsses
QueryWrapper<ConditionAssessmentEO> queryWrapper = new QueryWrapper<>();
queryWrapper.lambda().eq(ConditionAssessmentEO::getProjectLawsInventoryId,projectLawsInventoryId);
List<ConditionAssessmentEO> conditionAssessmentEOS = super.baseMapper.selectList(queryWrapper);
if(CollectionUtils.isNotEmpty(conditionAssessmentEOS)){
//根据角色编码去重。
conditionAssessmentEOS = conditionAssessmentEOS.stream().collect(Collectors.collectingAndThen(Collectors.toCollection(() ->
new TreeSet<>(Comparator.comparing(o -> o.getRoleCode()))),
ArrayList::new));
}
return conditionAssessmentEOS;
}
@@ -150,9 +156,9 @@ public class ConditionAssessmentEOServiceImpl extends ServiceImpl<ConditionAsses
QueryWrapper<ConditionAssessmentEO> queryWrapper = new QueryWrapper<>();
queryWrapper.lambda().eq(ConditionAssessmentEO::getProjectLawsInventoryId,projectLawsInventoryId);
if(StringUtils.isNotEmpty(projectTaskInventory.getProjectStatusAssess())){
/*if(StringUtils.isNotEmpty(projectTaskInventory.getProjectStatusAssess())){
queryWrapper.lambda().eq(ConditionAssessmentEO::getConditionAssessment,projectTaskInventory.getProjectStatusAssess());
}
}*/
if(StringUtils.equals(roleCode,ProjectRoleEnum.REGULATI_ENGINEER.getValue()) || StringUtils.equals(roleCode,ProjectRoleEnum.HOMOLOGATION_ENGINEER.getValue())){
queryWrapper.lambda().eq(ConditionAssessmentEO::getCreateBy,currentUser.getUsername());
@@ -629,17 +629,40 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
*/
@Override
public List<ProjectLawsInventoryEO> queryList(ProjectLawsInventoryEO projectLawsInventoryEO, HttpServletRequest req) {
String dutyTerritoryStr = "";
if (StringUtils.isNotEmpty(projectLawsInventoryEO.getDutyTerritory())) {
dutyTerritoryStr = projectLawsInventoryEO.getDutyTerritory();
projectLawsInventoryEO.setDutyTerritory(null);
}
QueryWrapper<ProjectLawsInventoryEO> projectLawsInventoryEOQueryWrapper = QueryGenerator.initQueryWrapper(projectLawsInventoryEO,req.getParameterMap());
projectLawsInventoryEOQueryWrapper.orderByDesc("create_time","serial_number");
String projectLibraryId = projectLawsInventoryEO.getProjectLibraryId();
if (StringUtils.isNotEmpty(dutyTerritoryStr)) {
String finalDutyTerritoryStr = dutyTerritoryStr.replaceAll("\\*","");
projectLawsInventoryEOQueryWrapper.and(query -> {
query.lambda().like(ProjectLawsInventoryEO::getDutyTerritory, finalDutyTerritoryStr);
if(StringUtils.contains(finalDutyTerritoryStr,",")){
String[] dutyTerritoryArr = finalDutyTerritoryStr.split(",");
for (String duty : dutyTerritoryArr) {
query.or(q -> {
q.like("duty_territory",duty);
});
}
}
});
}
if(StringUtils.isEmpty(projectLibraryId)){
throw new JeroBootException("项目库id不能为空!");
}
LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
projectLawsInventoryEOQueryWrapper.lambda().eq(ProjectLawsInventoryEO::getProjectLibraryId,projectLibraryId);
//projectLawsInventoryEOQueryWrapper.lambda().eq(ProjectLawsInventoryEO::getProjectLibraryId,projectLibraryId);
//验证当前用户在该项目中是什么角色
//int isProjectRole = checkUserRole(projectLibraryId, currentUser.getId(), "");
@@ -2435,8 +2458,29 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
LambdaQueryWrapper<ProjectLawsInventoryEO> wrapper = new LambdaQueryWrapper<>();
wrapper.in(ProjectLawsInventoryEO::getId,Arrays.asList(ids.split(",")));
List<ProjectLawsInventoryEO> projectLawsInventoryEOList = this.list(wrapper);
List<ProjectTaskInventoryEO> projectTaskInventoryEOList = new ArrayList<>();
for (ProjectLawsInventoryEO projectLawsInventoryEO : projectLawsInventoryEOList) {
projectLawsInventoryEO.setId(UUID.randomUUID().toString().replace("-", ""));
String projectLawsInventoryId = UUID.randomUUID().toString().replace("-", "");
projectLawsInventoryEO.setId(projectLawsInventoryId);
projectLawsInventoryEO.setTaskAffirmStatus(TaskAffirmStatusEnum.NOT_STARTED.getValue());
projectLawsInventoryEO.setInventoryAffirmStatus(InventoryAffirmStatusEnum.NOT_STARTED.getValue());
projectLawsInventoryEO.setRegulationOwnerSubmitStatus(null);
projectLawsInventoryEO.setHomologationEngineerSubmitStatus(null);
projectLawsInventoryEO.setSendMsgFlag(null);
projectLawsInventoryEO.setSendMsgCurrentFlag(null);
projectLawsInventoryEO.setDesignDueDate(null);
projectLawsInventoryEO.setPrehomoDueDate(null);
projectLawsInventoryEO.setVerifyDueDate(null);
projectLawsInventoryEO.setInventoryAffirmDueDate(null);
projectLawsInventoryEO.setTaskAffirmDueDate(null);
ProjectTaskInventoryEO projectTaskInventoryEO = new ProjectTaskInventoryEO();
String projectTaskInventoryId = UUID.randomUUID().toString().replace("-", "");
projectTaskInventoryEO.setId(projectTaskInventoryId);
projectTaskInventoryEO.setProjectLawsInventoryId(projectLawsInventoryId);
projectTaskInventoryEO.setStandId(projectLawsInventoryEO.getStandId());
projectTaskInventoryEOList.add(projectTaskInventoryEO);
}
this.saveBatch(projectLawsInventoryEOList);
@@ -2449,6 +2493,7 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
String enContentLog = username+" copied “"+serialNumber+"";
projectLawsInventoryLogEOService.updateLog(contentLog, projectLibraryId,CutEnum.CN.getValue());
projectLawsInventoryLogEOService.updateLog(enContentLog, projectLibraryId,CutEnum.EN.getValue());
this.projectTaskInventoryEOService.saveBatch(projectTaskInventoryEOList);
}
}
@@ -169,12 +169,34 @@ public class ProjectTaskInventoryEOServiceImpl extends ServiceImpl<ProjectTaskIn
LoginUser currentUser = (LoginUser) SecurityUtils.getSubject().getPrincipal();
ProjectLawsInventoryEO projectLawsInventoryEO = new ProjectLawsInventoryEO();
projectLawsInventoryEO.setSerialNumber(projectTaskInventoryEO.getSerialNumber());
projectLawsInventoryEO.setDutyTerritory(projectTaskInventoryEO.getDutyTerritory());
//projectLawsInventoryEO.setDutyTerritory(projectTaskInventoryEO.getDutyTerritory());
QueryWrapper<ProjectLawsInventoryEO> lawsInventoryEOQueryWrapper = QueryGenerator.initQueryWrapper(projectLawsInventoryEO,req.getParameterMap());
//QueryWrapper<ProjectLawsInventoryEO> lawsInventoryEOQueryWrapper = new QueryWrapper<>();
lawsInventoryEOQueryWrapper.lambda().eq(ProjectLawsInventoryEO::getProjectLibraryId,projectLibraryId);
lawsInventoryEOQueryWrapper.lambda().eq(ProjectLawsInventoryEO::getInventoryAffirmStatus, InventoryAffirmStatusEnum.ACCEPTED.getValue());
lawsInventoryEOQueryWrapper.lambda().eq(ProjectLawsInventoryEO::getTaskAffirmStatus, TaskAffirmStatusEnum.ACCEPTED.getValue());
String dutyTerritoryStr = "";
if (StringUtils.isNotEmpty(projectTaskInventoryEO.getDutyTerritory())) {
dutyTerritoryStr = projectTaskInventoryEO.getDutyTerritory();
projectTaskInventoryEO.setDutyTerritory(null);
}
if (StringUtils.isNotEmpty(dutyTerritoryStr)) {
String finalDutyTerritoryStr = dutyTerritoryStr.replaceAll("\\*","");
lawsInventoryEOQueryWrapper.and(query -> {
query.lambda().like(ProjectLawsInventoryEO::getDutyTerritory, finalDutyTerritoryStr);
if(StringUtils.contains(finalDutyTerritoryStr,",")){
String[] dutyTerritoryArr = finalDutyTerritoryStr.split(",");
for (String duty : dutyTerritoryArr) {
query.or(q -> {
q.like("duty_territory",duty);
});
}
}
});
}
List<ProjectLawsInventoryEO> projectLawsInventoryEOList = projectLawsInventoryEOMapper.selectList(lawsInventoryEOQueryWrapper);
if(CollectionUtils.isNotEmpty(projectLawsInventoryEOList)){
+1
View File
@@ -1261,6 +1261,7 @@ module.exports = {
currentlyTheFirstOneThatCannotMovedUp:'Currently the first one that cannot be moved up',
currentlyTheLastOneCannotmovedDown:'Currently the last one cannot be moved down',
weilaiRegulationMonthlyReport:'Weilai Regulation Monthly Report',
onlyTheDataWhoseStatusNotInitiatedAcceptedChanged:'Only the data whose list confirmation status is accepted and the task list status is not initiated or the task list status is accepted can be changed',
thereTitleWhichCannotBeDeleted:'There are new contents under this title, which cannot be deleted',
industryInformationDynamicTemplate:'Industry information dynamic template',
relatedFields:'Related fields',
+11 -10
View File
@@ -1353,16 +1353,17 @@ module.exports = {
textInput: '文本输入',
Paraname: '参数名称',
Parabatch: '参数批次',
freeze: '请选择冻结配置',
deleteNode: '若有文件信息将同步删除确认删除该条数据',
HaveReleased: '已发布',
forward: '转发',
areResponsibilityAreaInformationBatch: '确实是否批量修改责任领域信息',
issuedBy: '发布人',
pleaseDecompositionStandardOrder: '请导入或带入至少一条分解标准单',
currentlyTheFirstOneThatCannotMovedUp: '当前已是第一个无法进行上移',
currentlyTheLastOneCannotmovedDown: '当前已是最后一个无法进行下移',
weilaiRegulationMonthlyReport: '蔚来法规月报',
freeze:'请选择冻结配置',
deleteNode:'若有文件信息将同步删除确认删除该条数据',
HaveReleased:'已发布',
forward:'转发',
areResponsibilityAreaInformationBatch:'确实是否批量修改责任领域信息',
issuedBy:'发布人',
pleaseDecompositionStandardOrder:'请导入或带入至少一条分解标准单',
currentlyTheFirstOneThatCannotMovedUp:'当前已是第一个无法进行上移',
currentlyTheLastOneCannotmovedDown:'当前已是最后一个无法进行下移',
weilaiRegulationMonthlyReport:'蔚来法规月报',
onlyTheDataWhoseStatusNotInitiatedAcceptedChanged:'只能变更清单确认状态为接受并且任务清单状态为未发起或任务清单状态为接受的数据',
thereTitleWhichCannotBeDeleted: '该标题下存在新增内容,不能删除',
industryInformationDynamicTemplate: '行业资讯动态模板',
relatedFields: '相关领域',
@@ -143,7 +143,7 @@
class="ant-table tableList"
:loading="loading"
:pagination="false"
:scroll="{x: '100%',y:'calc(100vh - 186px)'}"
:scroll="{x: '100%',y:'calc(100vh - 356px)'}"
rowKey="id"
:data-source="dataSource"
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
@@ -169,7 +169,8 @@
</a>
</span>
<span slot="designDeliverableTemplateName" slot-scope="text,record">
<span>{{record.designDeliverableTypeName}}</span><br v-if="record.designDeliverableTypeName">
<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)">
@@ -180,7 +181,8 @@
<span v-else>--</span>
</span>
<span slot="prehomoDeliverableTemplateName" slot-scope="text,record">
<span>{{record.prehomoDeliverableTypeName}}</span><br v-if="record.prehomoDeliverableTypeName">
<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)">
@@ -191,7 +193,8 @@
<span v-else>--</span>
</span>
<span slot="verifyDeliverableTemplateName" slot-scope="text,record">
<span>{{record.verifyDeliverableTypeName}}</span><br v-if="record.verifyDeliverableTypeName">
<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)">
@@ -1015,6 +1018,10 @@
font-weight: 500;
color: #000F16;
}
::v-deep .ant-card-body {
padding: 14px 32px 0 32px;
}
::v-deep .ant-table-row:first-child {
background: #fff!important;
}
@@ -1032,10 +1039,6 @@
line-height: 38px;
}
.card .ant-card-body {
padding: 14px 32px 32px 32px;
}
.ant-table-placeholder {
padding: 0;
border-top: none;
@@ -76,10 +76,10 @@
</a-form>
</div>
<div class="table-operator">
<!-- <div class="operator-text" @click="batSettingClick">-->
<!-- <a-icon type="setting"/>-->
<!-- {{ $t('batSetting') }}-->
<!-- </div>-->
<!-- <div class="operator-text" @click="batSettingClick">-->
<!-- <a-icon type="setting"/>-->
<!-- {{ $t('batSetting') }}-->
<!-- </div>-->
<div @click="CertificationDirectory" class="operator-text">
<a-icon type="bulb"/>
{{$t('CertificationDirectory')}}
@@ -457,6 +457,9 @@
queryParam[val] = queryParam[val].join(',')
}
})
if (queryParam.dutyTerritory) {
queryParam.dutyTerritory = '*' + queryParam.dutyTerritory + '*'
}
let query = {
projectLibraryId: this.$route.query.id,
...queryParam
@@ -200,7 +200,7 @@
class="tableList"
:loading="loading"
:pagination="false"
:scroll="{x: '100%',y:'calc(100vh - 186px)'}"
:scroll="{x: '100%',y:'calc(100vh - 356px)'}"
rowKey="id"
:data-source="dataSource"
:row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }"
@@ -225,6 +225,10 @@
@click="resultReportedClick(record)">
{{$t('resultReported')}}
</a>
<a class="text-operation"
@click="viewClick(record)">
{{$t('view')}}
</a>
</span>
<span slot="titleName" slot-scope="text,record" :title="text">
<span class="textName">
@@ -238,7 +242,8 @@
</a>
</span>
<span slot="designDeliverableTemplateName" slot-scope="text,record">
<span>{{ record.designDeliverableTypeName }}</span><br v-if="record.designDeliverableTypeName">
<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)">
@@ -250,7 +255,8 @@
</span>
<span slot="prehomoDeliverableTemplateName" slot-scope="text,record">
<span>{{ record.prehomoDeliverableTypeName }}</span><br v-if="record.prehomoDeliverableTypeName">
<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)">
@@ -262,7 +268,8 @@
</span>
<span slot="verifyDeliverableTemplateName" slot-scope="text,record">
<span>{{ record.verifyDeliverableTypeName }}</span><br v-if="record.verifyDeliverableTypeName">
<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)">
@@ -424,6 +431,7 @@
</a-modal>
<JLoading :loading="JLoading">{{$t('dataLoading')}}</JLoading>
<resultReportedUpload @resultReportedUploadForm="addModelList" ref="resultReportedUploadRef"/>
<listOfRegulationsView ref="listOfRegulationsViewRef"/>
</a-card>
</template>
@@ -435,6 +443,7 @@
import transferList from './transferList'
import fixedPlate from './fixedPlateForm'
import resultReportedUpload from './resultReportedUpload'
import listOfRegulationsView from './listOfRegulationsView'
import globalAdvancedQuery from '@/components/globalAdvancedQuery/index'
import { getAction, postAction, downloadFile, deleteAction } from '@/api/manage'
import moment from 'moment'
@@ -452,7 +461,8 @@
transferList,
globalAdvancedQuery,
fixedPlate,
resultReportedUpload
resultReportedUpload,
listOfRegulationsView
},
data() {
return {
@@ -726,7 +736,7 @@
title: this.$t('operation'),
align: 'center',
fixed: 'right',
width: 210,
width: 240,
scopedSlots: { customRender: 'operation' }
}
],
@@ -1008,6 +1018,19 @@
},
methods: {
...mapGetters(['userInfo']),
viewClick(row) {
let roleCodeIndex
if (this.isDisplay) {
roleCodeIndex = 0
} else {
roleCodeIndex = 4
}
if (this.formInlineRoleSwitching.roleSwitchingCode == '11' || this.formInlineRoleSwitching.roleSwitchingCode == '12') {
roleCodeIndex = 0
}
row.roleCodeIndex = roleCodeIndex
this.$refs.listOfRegulationsViewRef.editModel(JSON.parse(JSON.stringify(row)))
},
handleModule() {
downloadFile(this.url.exportTemplate, this.$t('listOfRegulations') + this.$t('importTemplate') + '.xls', {})
},
@@ -1190,11 +1213,13 @@
for (let i = 0; i < this.dataSource.length; i++) {
for (let j = 0; j < selectedRowKeys.length; j++) {
if (this.dataSource[i].id == selectedRowKeys[j]) {
if (this.dataSource[i].taskAffirmStatus == 'Accepted') {
if (this.dataSource[i].taskAffirmStatus == 'Accepted' ||
(this.dataSource[i].inventoryAffirmStatus == 'Accepted' && this.dataSource[i].taskAffirmStatus == 'Accepted') ||
(this.dataSource[i].inventoryAffirmStatus == 'Accepted' && this.dataSource[i].taskAffirmStatus == 'Not started')) {
isTrue = true
} else {
isTrue = false
this.$message.warning(this.$t('onlyDataChanged'))
this.$message.warning(this.$t('onlyTheDataWhoseStatusNotInitiatedAcceptedChanged'))
return
}
}
@@ -1395,6 +1420,9 @@
queryParam[val] = queryParam[val].join(',')
}
})
if (queryParam.dutyTerritory) {
queryParam.dutyTerritory = '*' + queryParam.dutyTerritory + '*'
}
let query = {
...this.queryParamQuery,
...queryParam,
@@ -2274,6 +2302,10 @@
font-weight: 500;
color: #000F16;
}
::v-deep .ant-card-body {
padding: 24px 24px 0 24px;
}
::v-deep .ant-table-row:first-child {
background: #fff!important;
}
@@ -0,0 +1,555 @@
<template>
<div>
<a-drawer
:title="$t('view')"
:maskClosable="false"
:width="900"
placement="right"
:closable="true"
@close="handleCancel"
:visible="visible"
style="height: 100%;overflow: auto;padding-bottom: 53px;">
<a-spin :spinning="confirmLoading">
<a-form-model :model="formInline" class="formAdd" :rules="rules" ref="ruleForm">
<a-row :gutter="24">
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text" :title="$t('standard')">{{$t('standard')}}</span>
</div>
<div class="itemModel">
{{formInline.serialNumber ? formInline.serialNumber : '--'}}
</div>
</div>
</a-col>
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text" :title="$t('title')">{{$t('title')}}</span>
</div>
<div class="itemModel">
{{formInline.title ? formInline.title : '--'}}
</div>
</div>
</a-col>
</a-row>
<a-row :gutter="24">
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text" :title="$t('subtitle')">{{$t('subtitle')}}</span>
</div>
<div class="itemModel">
{{formInline.subtitle? formInline.subtitle : '--'}}
</div>
</div>
</a-col>
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('applicableSupplement')">{{$t('applicableSupplement')}}</span>
</div>
<div class="itemModel">
{{formInline.applicableSupplement ? formInline.applicableSupplement : '--'}}
</div>
</div>
</a-col>
</a-row>
<a-row :gutter="24">
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('certificationType')">{{$t('certificationType')}}</span>
</div>
<div class="itemModel">
{{formInline.attestationType_dictText ? formInline.attestationType_dictText : '--'}}
</div>
</div>
</a-col>
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('certificationLevel')">{{$t('certificationLevel')}}</span>
</div>
<div class="itemModel">
{{formInline.attestationRank_dictText ? formInline.attestationRank_dictText : '--'}}
</div>
</div>
</a-col>
</a-row>
<a-row :gutter="24">
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('areaOfResponsibility')">{{$t('areaOfResponsibility')}}</span>
</div>
<div class="itemModel">
{{formInline.dutyTerritory_dictText ? formInline.dutyTerritory_dictText : '--'}}
</div>
</div>
</a-col>
<a-col :span="12" v-if="formInline.roleCodeIndex == 0">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text" :title="$t('regulatoryEngineer')">{{$t('regulatoryEngineer')}}</span>
</div>
<div class="itemModel">
{{formInline.regulationOwnerName ? formInline.regulationOwnerName : '--'}}
</div>
</div>
</a-col>
</a-row>
<a-row :gutter="24" v-if="formInline.roleCodeIndex == 0">
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text" :title="$t('certifiedEngineer')">{{$t('certifiedEngineer')}}</span>
</div>
<div class="itemModel">
{{formInline.homologationEngineerName ? formInline.homologationEngineerName : '--'}}
</div>
</div>
</a-col>
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text" :title="$t('engineeringInterfacePerson')">{{$t('engineeringInterfacePerson')}}</span>
</div>
<div class="itemModel">
{{formInline.engineeringInterfacePersonName ? formInline.engineeringInterfacePersonName : '--'}}
</div>
</div>
</a-col>
</a-row>
<div class="header-text" v-if="formInline.roleCodeIndex == 0 ||
(formInline.roleCodeIndex == 4 && formInline.designInitiatorId == formInline.homologationEngineerId &&
formInline.homologationEngineerId == userInfoQuery.id) ||
(formInline.roleCodeIndex == 4 && formInline.designInitiatorId == formInline.regulationOwnerId &&
formInline.regulationOwnerId == userInfoQuery.id)">
&nbsp;{{$t('confirmationOfDesignConformity')}}
</div>
<a-row :gutter="24" v-if="formInline.roleCodeIndex == 0 ||
(formInline.roleCodeIndex == 4 && formInline.designInitiatorId == formInline.homologationEngineerId &&
formInline.homologationEngineerId == userInfoQuery.id) ||
(formInline.roleCodeIndex == 4 && formInline.designInitiatorId == formInline.regulationOwnerId &&
formInline.regulationOwnerId == userInfoQuery.id)">
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('Sponsor')">{{$t('Sponsor')}}</span>
</div>
<div class="itemModel">
{{formInline.designInitiatorName ? formInline.designInitiatorName : '--'}}
</div>
</div>
</a-col>
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('personLiable')">{{$t('personLiable')}}</span>
</div>
<div class="itemModel">
{{formInline.designDutyName ? formInline.designDutyName : '--'}}
</div>
</div>
</a-col>
</a-row>
<a-row :gutter="24" v-if="formInline.roleCodeIndex == 0 ||
(formInline.roleCodeIndex == 4 && formInline.designInitiatorId == formInline.homologationEngineerId &&
formInline.homologationEngineerId == userInfoQuery.id) ||
(formInline.roleCodeIndex == 4 && formInline.designInitiatorId == formInline.regulationOwnerId &&
formInline.regulationOwnerId == userInfoQuery.id)">
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('cutoffTime')">{{$t('cutoffTime')}}</span>
</div>
<div class="itemModel">
{{formInline.designDueDate ? formInline.designDueDate : '--'}}
</div>
</div>
</a-col>
</a-row>
<a-row :gutter="24" v-if="formInline.roleCodeIndex == 0 ||
(formInline.roleCodeIndex == 4 && formInline.designInitiatorId == formInline.homologationEngineerId &&
formInline.homologationEngineerId == userInfoQuery.id) ||
(formInline.roleCodeIndex == 4 && formInline.designInitiatorId == formInline.regulationOwnerId &&
formInline.regulationOwnerId == userInfoQuery.id)">
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('typeOfDeliverables')">{{$t('typeOfDeliverables')}}</span>
</div>
<div class="itemModel">
{{formInline.designDeliverableTypeName ? formInline.designDeliverableTypeName : '--'}}
</div>
</div>
</a-col>
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('deliverableTemplate')">{{$t('deliverableTemplate')}}</span>
</div>
<div class="itemModel">
<span v-if="formInline.designDeliverableTemplate === 'null' || formInline.designDeliverableTemplate === '' ||
formInline.designDeliverableTemplate == null">
--
</span>
<a @click="clickButtonToUpload(formInline.designDeliverableTemplate)" v-else>
{{ $t('viewFile') }}
</a>
</div>
</div>
</a-col>
</a-row>
<a-row :gutter="24" v-if="formInline.roleCodeIndex == 0 ||
(formInline.roleCodeIndex == 4 && formInline.designInitiatorId == formInline.homologationEngineerId &&
formInline.homologationEngineerId == userInfoQuery.id) ||
(formInline.roleCodeIndex == 4 && formInline.designInitiatorId == formInline.regulationOwnerId &&
formInline.regulationOwnerId == userInfoQuery.id)">
<a-col :span="24">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('descriptionDeliverables')">{{$t('descriptionDeliverables')}}</span>
</div>
<div class="itemModel" :prop="'designRemark'">
{{formInline.designRemark ? formInline.designRemark : '--'}}
</div>
</div>
</a-col>
</a-row>
<div class="header-text" v-if="formInline.roleCodeIndex == 0 ||
(formInline.roleCodeIndex == 4 && formInline.prehomoInitiatorId == formInline.homologationEngineerId &&
formInline.homologationEngineerId == userInfoQuery.id) ||
(formInline.roleCodeIndex == 4 && formInline.prehomoInitiatorId == formInline.regulationOwnerId &&
formInline.regulationOwnerId == userInfoQuery.id)">
&nbsp;{{$t('PrehomoConfirmation')}}
</div>
<a-row :gutter="24" v-if="formInline.roleCodeIndex == 0 ||
(formInline.roleCodeIndex == 4 && formInline.prehomoInitiatorId == formInline.homologationEngineerId &&
formInline.homologationEngineerId == userInfoQuery.id) ||
(formInline.roleCodeIndex == 4 && formInline.prehomoInitiatorId == formInline.regulationOwnerId &&
formInline.regulationOwnerId == userInfoQuery.id)">
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('Sponsor')">{{$t('Sponsor')}}</span>
</div>
<div class="itemModel">
{{formInline.prehomoInitiatorName ? formInline.prehomoInitiatorName : '--'}}
</div>
</div>
</a-col>
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('personLiable')">{{$t('personLiable')}}</span>
</div>
<div class="itemModel">
{{formInline.prehomoDutyName ? formInline.prehomoDutyName : '--'}}
</div>
</div>
</a-col>
</a-row>
<a-row :gutter="24" v-if="formInline.roleCodeIndex == 0 ||
(formInline.roleCodeIndex == 4 && formInline.prehomoInitiatorId == formInline.homologationEngineerId &&
formInline.homologationEngineerId == userInfoQuery.id) ||
(formInline.roleCodeIndex == 4 && formInline.prehomoInitiatorId == formInline.regulationOwnerId &&
formInline.regulationOwnerId == userInfoQuery.id)">
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('cutoffTime')">{{$t('cutoffTime')}}</span>
</div>
<div class="itemModel">
{{formInline.prehomoDueDate ? formInline.prehomoDueDate : '--'}}
</div>
</div>
</a-col>
</a-row>
<a-row :gutter="24" v-if="formInline.roleCodeIndex == 0 ||
(formInline.roleCodeIndex == 4 && formInline.prehomoInitiatorId == formInline.homologationEngineerId &&
formInline.homologationEngineerId == userInfoQuery.id) ||
(formInline.roleCodeIndex == 4 && formInline.prehomoInitiatorId == formInline.regulationOwnerId &&
formInline.regulationOwnerId == userInfoQuery.id)">
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('typeOfDeliverables')">{{$t('typeOfDeliverables')}}</span>
</div>
<div class="itemModel">
{{formInline.prehomoDeliverableTypeName ? formInline.prehomoDeliverableTypeName : '--'}}
</div>
</div>
</a-col>
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('deliverableTemplate')">{{$t('deliverableTemplate')}}</span>
</div>
<div class="itemModel">
<span v-if="formInline.prehomoDeliverableTemplate === 'null' || formInline.prehomoDeliverableTemplate === '' ||
formInline.prehomoDeliverableTemplate == null">
--
</span>
<a @click="clickButtonToUpload(formInline.prehomoDeliverableTemplate)" v-else>
{{ $t('viewFile') }}
</a>
</div>
</div>
</a-col>
</a-row>
<a-row :gutter="24" v-if="formInline.roleCodeIndex == 0 ||
(formInline.roleCodeIndex == 4 && formInline.prehomoInitiatorId == formInline.homologationEngineerId &&
formInline.homologationEngineerId == userInfoQuery.id) ||
(formInline.roleCodeIndex == 4 && formInline.prehomoInitiatorId == formInline.regulationOwnerId &&
formInline.regulationOwnerId == userInfoQuery.id)">
<a-col :span="24">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('descriptionDeliverables')">{{$t('descriptionDeliverables')}}</span>
</div>
<div class="itemModel">
{{formInline.prehomoRemark ? formInline.prehomoRemark : '--'}}
</div>
</div>
</a-col>
</a-row>
<div class="header-text" v-if="formInline.roleCodeIndex == 0 ||
(formInline.roleCodeIndex == 4 && formInline.verifyInitiatorId == formInline.homologationEngineerId &&
formInline.homologationEngineerId == userInfoQuery.id) ||
(formInline.roleCodeIndex == 4 && formInline.verifyInitiatorId == formInline.regulationOwnerId &&
formInline.regulationOwnerId == userInfoQuery.id)">
&nbsp;{{$t('verificationAndConformityconfirmation')}}
</div>
<a-row :gutter="24" v-if="formInline.roleCodeIndex == 0 ||
(formInline.roleCodeIndex == 4 && formInline.verifyInitiatorId == formInline.homologationEngineerId &&
formInline.homologationEngineerId == userInfoQuery.id) ||
(formInline.roleCodeIndex == 4 && formInline.verifyInitiatorId == formInline.regulationOwnerId &&
formInline.regulationOwnerId == userInfoQuery.id)">
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('Sponsor')">{{$t('Sponsor')}}</span>
</div>
<div class="itemModel">
{{formInline.verifyInitiatorName ? formInline.verifyInitiatorName : '--'}}
</div>
</div>
</a-col>
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('personLiable')">{{$t('personLiable')}}</span>
</div>
<div class="itemModel">
{{formInline.verifyDutyName ? formInline.verifyDutyName : '--'}}
</div>
</div>
</a-col>
</a-row>
<a-row :gutter="24" v-if="formInline.roleCodeIndex == 0 ||
(formInline.roleCodeIndex == 4 && formInline.verifyInitiatorId == formInline.homologationEngineerId &&
formInline.homologationEngineerId == userInfoQuery.id) ||
(formInline.roleCodeIndex == 4 && formInline.verifyInitiatorId == formInline.regulationOwnerId &&
formInline.regulationOwnerId == userInfoQuery.id)">
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('cutoffTime')">{{$t('cutoffTime')}}</span>
</div>
<div class="itemModel">
{{formInline.verifyDueDate ? formInline.verifyDueDate : '--'}}
</div>
</div>
</a-col>
</a-row>
<a-row :gutter="24" v-if="formInline.roleCodeIndex == 0 ||
(formInline.roleCodeIndex == 4 && formInline.verifyInitiatorId == formInline.homologationEngineerId &&
formInline.homologationEngineerId == userInfoQuery.id) ||
(formInline.roleCodeIndex == 4 && formInline.verifyInitiatorId == formInline.regulationOwnerId &&
formInline.regulationOwnerId == userInfoQuery.id)">
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('typeOfDeliverables')">{{$t('typeOfDeliverables')}}</span>
</div>
<div class="itemModel">
{{formInline.verifyDeliverableTypeName ? formInline.verifyDeliverableTypeName : '--'}}
</div>
</div>
</a-col>
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('deliverableTemplate')">{{$t('deliverableTemplate')}}</span>
</div>
<div class="itemModel">
<span v-if="formInline.verifyDeliverableTemplate === 'null' || formInline.verifyDeliverableTemplate === '' ||
formInline.verifyDeliverableTemplate == null">
--
</span>
<a @click="clickButtonToUpload(formInline.verifyDeliverableTemplate)" v-else>
{{ $t('viewFile') }}</a>
</div>
</div>
</a-col>
</a-row>
<a-row :gutter="24" v-if="formInline.roleCodeIndex == 0 ||
(formInline.roleCodeIndex == 4 && formInline.verifyInitiatorId == formInline.homologationEngineerId &&
formInline.homologationEngineerId == userInfoQuery.id) ||
(formInline.roleCodeIndex == 4 && formInline.verifyInitiatorId == formInline.regulationOwnerId &&
formInline.regulationOwnerId == userInfoQuery.id)">
<a-col :span="24">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text"
:title="$t('descriptionDeliverables')">{{$t('descriptionDeliverables')}}</span>
</div>
<div class="itemModel">
{{formInline.verifyRemark ? formInline.verifyRemark : '--'}}
</div>
</div>
</a-col>
</a-row>
</a-form-model>
</a-spin>
<div class="drawer-bootom-button">
<a-button style="margin-right: .8rem" @click="handleCancel">{{$t('cancel')}}</a-button>
</div>
</a-drawer>
<viewFileModel ref="viewFileModelRef"/>
</div>
</template>
<script>
import viewFileModel from '@/components/viewFileModel/index'
import { mapGetters } from 'vuex'
export default {
name: 'listOfRegulationsView',
components: {
viewFileModel
},
props: ['url'],
data() {
return {
visible: false,
confirmLoading: false,
rules: {},
rulesData: {},
formInline: {},
disabled: false,
userInfoQuery: {}
}
},
mounted() {
this.userInfoQuery = this.userInfo()
},
methods: {
...mapGetters(['userInfo']),
editModel(item) {
this.visible = true
this.formInline = item
this.formInline = { ...this.formInline }
},
handleCancel() {
this.visible = false
},
clickButtonToUpload(item) {
this.$refs.viewFileModelRef.clickButtonToUpload(item)
}
}
}
</script>
<style scoped>
.box-title-text {
line-height: 1.4;
display: flex;
margin-bottom: 20px;
/*align-items: center;*/
}
.title-text {
width: 114px;
text-align: right;
display: inline-block;
font-weight: 500;
font-size: 14px;
margin-right: 16px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
line-height: 24px;
}
.itemModel {
width: calc(100% - 130px);
display: inline-block;
font-size: 16px;
word-break: break-word;
color: #040B29;
}
.title-text-text {
margin-top: 9px;
}
.header-text {
font-size: 16px;
font-weight: bold;
margin-left: 15px;
/*border-bottom: 1px #d9d9d9 dashed;*/
height: 30px;
margin-bottom: 30px;
}
.formAdd {
margin-bottom: 40px;
}
.button-text {
height: 38px;
width: calc(100% - 100px);
line-height: 38px;
background: #fff;
border: 1px #00B3BE solid;
color: #00B3BE;
}
.drawer-bootom-button {
position: absolute;
bottom: 0;
width: 100%;
z-index: 100;
border-top: 1px solid #e8e8e8;
padding: 10px 16px;
text-align: right;
left: 0;
background: #fff;
border-radius: 0 0 2px 2px;
}
</style>