Merge branch 'dev_2nd_LCYH' of http://git.hzwlsoft.com/laws-nio/laws-weilai into dev_2nd_LCYH

This commit is contained in:
yuekuo
2023-03-31 16:40:56 +08:00
9 changed files with 319 additions and 193 deletions
@@ -436,4 +436,16 @@ ALTER TABLE `project_task_planning`
-- 项目库-认证清单-认证目录 说明字段长度修改 2023-3-30 未同步生产环境
ALTER TABLE `project_certification_directory`
MODIFY COLUMN `explain_info` varchar(2000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '说明' AFTER `detection_report_location`;
MODIFY COLUMN `explain_info` varchar(2000) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '说明' AFTER `detection_report_location`;
-- 项目库-法规清单-定版表增加字段 2023-3-30 未同步生产环境
ALTER TABLE `project_version_info`
MODIFY COLUMN `inventory_affirm_status` varchar(100) CHARACTER SET utf32 NULL DEFAULT NULL COMMENT '清单确认状态' AFTER `task_affirm_status`,
ADD COLUMN `design_flow_status` varchar(255) NULL COMMENT '设计符合性确认-流程状态' AFTER `inventory_affirm_status`,
ADD COLUMN `verify_flow_status` varchar(255) NULL COMMENT '验证符合性确认-流程状态' AFTER `design_flow_status`;
-- 项目库-法规清单-定版表增加字段 2023-3-30 未同步生产环境
ALTER TABLE `project_version_info`
ADD COLUMN `project_laws_inventory_id` varchar(255) NULL COMMENT '法规清单数据id' AFTER `verify_flow_status`;
ALTER TABLE `project_version_info`
ADD COLUMN `applicable_supplement` varchar(255) NULL COMMENT '适用增补件' AFTER `project_laws_inventory_id`;
@@ -444,9 +444,9 @@ public class AuthDummyInventoryInfoEOServiceImpl extends ServiceImpl<AuthDummyIn
//文件
String excelName = "";
if(CutEnum.CN.getValue().equals(authDummyInventoryInfoEO.getCut())){
excelName = baseList.get(0).getName() + " 虚拟认证清单.xlsx";
excelName = baseList.get(0).getName() + " 市场认证清单.xlsx";
}else{
excelName = baseList.get(0).getName() + " Virtual Authentication list.xlsx";
excelName = baseList.get(0).getName() + " Market Certification List.xlsx";
}
//excel
OutputStream excelOS = new FileOutputStream(path + File.separator + excelName);
@@ -271,7 +271,7 @@ public class ProjectVersionInfoEO implements Serializable {
/**设计符合性确认-责任人名称*/
@TableField(exist = false)
private String designDutyName;
private String designDutyIdName;
/**prehomo确认-发起人名称*/
@@ -288,7 +288,7 @@ public class ProjectVersionInfoEO implements Serializable {
/**验证符合性确认-责任人名称*/
@TableField(exist = false)
private String verifyDutyName;
private String verifyDutyIdName;
@@ -329,4 +329,32 @@ public class ProjectVersionInfoEO implements Serializable {
private String verifyDeliverableTemplateName;
/**设计符合性确认-流程状态*/
@ApiModelProperty(value = "设计符合性确认-流程状态")
private String designFlowStatus;
@TableField(exist = false)
@Excel(name = "流程状态", width = 20,groupName = "设计符合性确认")
private String designFlowStatusName;
/**验证符合性确认-流程状态*/
@ApiModelProperty(value = "验证符合性确认-流程状态")
private String verifyFlowStatus;
@TableField(exist = false)
@Excel(name = "流程状态", width = 20,groupName = "验证符合性确认")
private String verifyFlowStatusName;
/**验证符合性确认-流程实例id*/
@TableField(exist = false)
private String verifyPId;
/**设计符合性确认-流程实例id*/
@TableField(exist = false)
private String designPId;
@ApiModelProperty(value = "法规清单数据id")
private String projectLawsInventoryId;
/**适用增补件*/
@ApiModelProperty(value = "适用增补件")
private java.lang.String applicableSupplement;
}
@@ -183,6 +183,7 @@ public class ProjectCertificationInventoryEOServiceImpl extends ServiceImpl<Proj
public void editById(ProjectCertificationInventoryEO projectCertificationInventoryEO) {
List<String> flowStatusList = new ArrayList<>();
flowStatusList.add(CertificationInventoryFlowStatusEnum.TASK_TO_BE_CONFIRMED.getValue());
flowStatusList.add(CertificationInventoryFlowStatusEnum.RESULTS_TO_BE_SUBMITTED.getValue());
QueryWrapper<ProjectCertificationInventoryEO> certificationQueryWrap = new QueryWrapper<>();
certificationQueryWrap.lambda().eq(ProjectCertificationInventoryEO::getId,projectCertificationInventoryEO.getId());
@@ -205,6 +206,8 @@ public class ProjectCertificationInventoryEOServiceImpl extends ServiceImpl<Proj
List<String> userIdList = Arrays.asList(projectLibraryBase.getCertificationEngineer().split(","));
List<SysUser> userInfoList = this.sysUserService.querySysUserListByIdList(userIdList);
editEndTimeCertificationInventoryEOS.get(0).setEndTime(projectCertificationInventoryEO.getEndTime());
this.sendMessageByTemplateId(
editEndTimeCertificationInventoryEOS,
TemplateInfoEnum2.CERTIFICATION_MESSAGE14.getValue(),
@@ -56,6 +56,7 @@ public class ProjectHistoryVersionsEOServiceImpl extends ServiceImpl<ProjectHist
BeanUtils.copyProperties(projectLawsInventoryEO, projectVersionInfoEO);
projectVersionInfoEO.setId(UUID.randomUUID().toString().replace("-", ""));
projectVersionInfoEO.setHistoryVersionsId(projectHistoryVersionsEO.getId());
projectVersionInfoEO.setProjectLawsInventoryId(projectLawsInventoryEO.getId());
projectVersionInfoEOS.add(projectVersionInfoEO);
}
}
@@ -7,6 +7,7 @@ import com.jero.common.system.query.QueryGenerator;
import com.jero.modules.oss.entity.OSSFile;
import com.jero.modules.oss.service.IOSSFileService;
import com.jero.modules.project.entity.ProjectVersionInfoEO;
import com.jero.modules.project.enums.ComplianceFlowStatusEnum;
import com.jero.modules.project.enums.InventoryAffirmStatusEnum;
import com.jero.modules.project.mapper.ProjectVersionInfoEOMapper;
import com.jero.modules.project.service.IProjectVersionInfoEOService;
@@ -14,6 +15,9 @@ import com.jero.modules.system.entity.SysCategory;
import com.jero.modules.system.entity.SysUser;
import com.jero.modules.system.mapper.SysUserMapper;
import com.jero.modules.system.service.impl.SysCategoryServiceImpl;
import com.jero.modules.todoCenter.entity.ProcessInfoDetailEO;
import com.jero.modules.todoCenter.service.IProcessInfoDetailEOService;
import com.jero.modules.wkflow.enums.FlowTypeEnum;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
@@ -39,6 +43,9 @@ public class ProjectVersionInfoEOServiceImpl extends ServiceImpl<ProjectVersionI
private SysCategoryServiceImpl sysCategoryService;
@Autowired
private SysUserMapper sysUserMapper;
@Autowired
private IProcessInfoDetailEOService processInfoDetailEOService;
/**
* 保存
*
@@ -208,6 +215,37 @@ public class ProjectVersionInfoEOServiceImpl extends ServiceImpl<ProjectVersionI
deliverableList.addAll(Arrays.asList(projectVersionInfoEO.getVerifyDeliverableTemplate().split(",")));
}
// 处理符合性流程状态
if(StringUtils.isNotEmpty(projectVersionInfoEO.getDesignFlowStatus())){
String designFlowStatusName = ComplianceFlowStatusEnum.getTextByValue(projectVersionInfoEO.getDesignFlowStatus(), cut);
projectVersionInfoEO.setDesignFlowStatusName(designFlowStatusName);
}
if(StringUtils.isNotEmpty(projectVersionInfoEO.getVerifyFlowStatus())){
String verifyFlowStatusName = ComplianceFlowStatusEnum.getTextByValue(projectVersionInfoEO.getVerifyFlowStatus(), cut);
projectVersionInfoEO.setVerifyFlowStatusName(verifyFlowStatusName);
}
// 返回符合性流程的流程实例id
if(!StringUtils.equals(projectVersionInfoEO.getVerifyFlowStatus(),ComplianceFlowStatusEnum.LIST_TO_BE_RELEASED.getValue())
||!StringUtils.equals(projectVersionInfoEO.getVerifyFlowStatus(),ComplianceFlowStatusEnum.LIST_TO_BE_CHECKED.getValue())){
QueryWrapper<ProcessInfoDetailEO> processInfoDetailEOQueryWrapper = new QueryWrapper<>();
processInfoDetailEOQueryWrapper.lambda().eq(ProcessInfoDetailEO::getProjectLawsInventoryId,projectVersionInfoEO.getProjectLawsInventoryId());
processInfoDetailEOQueryWrapper.lambda().eq(ProcessInfoDetailEO::getFlowType, FlowTypeEnum.YZFHXSCLC.getValue());
List<ProcessInfoDetailEO> processInfoDetailEOS = this.processInfoDetailEOService.list(processInfoDetailEOQueryWrapper);
if(CollectionUtils.isNotEmpty(processInfoDetailEOS)){
projectVersionInfoEO.setVerifyPId(processInfoDetailEOS.get(0).getActiProcInstId());
}
}
if(!StringUtils.equals(projectVersionInfoEO.getDesignFlowStatus(),ComplianceFlowStatusEnum.LIST_TO_BE_RELEASED.getValue())
||!StringUtils.equals(projectVersionInfoEO.getDesignFlowStatus(),ComplianceFlowStatusEnum.LIST_TO_BE_CHECKED.getValue())){
QueryWrapper<ProcessInfoDetailEO> processInfoDetailEOQueryWrapper = new QueryWrapper<>();
processInfoDetailEOQueryWrapper.lambda().eq(ProcessInfoDetailEO::getProjectLawsInventoryId,projectVersionInfoEO.getProjectLawsInventoryId());
processInfoDetailEOQueryWrapper.lambda().eq(ProcessInfoDetailEO::getFlowType,FlowTypeEnum.SJFHXSHLC.getValue());
List<ProcessInfoDetailEO> processInfoDetailEOS = this.processInfoDetailEOService.list(processInfoDetailEOQueryWrapper);
if(CollectionUtils.isNotEmpty(processInfoDetailEOS)){
projectVersionInfoEO.setDesignPId(processInfoDetailEOS.get(0).getActiProcInstId());
}
}
}
List<SysUser> sysUsers = new ArrayList<>();
@@ -259,7 +297,7 @@ public class ProjectVersionInfoEOServiceImpl extends ServiceImpl<ProjectVersionI
if(StringUtils.isNotEmpty(designDutyId)){
String designDutyName = sysUsers.stream().filter(e -> designDutyId.equals(e.getId())).
map(SysUser::getUsername).collect(Collectors.joining(","));
projectVersionInfoEO.setDesignDutyName(designDutyName);
projectVersionInfoEO.setDesignDutyIdName(designDutyName);
}
//prehomo确认
@@ -291,7 +329,7 @@ public class ProjectVersionInfoEOServiceImpl extends ServiceImpl<ProjectVersionI
if(StringUtils.isNotEmpty(verifyDutyId)){
String verifyDutyName = sysUsers.stream().filter(e -> verifyDutyId.equals(e.getId())).
map(SysUser::getUsername).collect(Collectors.joining(","));
projectVersionInfoEO.setVerifyDutyName(verifyDutyName);
projectVersionInfoEO.setVerifyDutyIdName(verifyDutyName);
}
}
@@ -691,7 +691,7 @@
Action(url, query).then((res) => {
if (res.success) {
this.confirmLoading = false
if (res.result && res.result.length > 0) {
if (res.result && res.result.length > 0 && res.result instanceof Array) {
let detailedWarningList = []
res.result.forEach(val => {
detailedWarningList.push(
@@ -1055,22 +1055,22 @@
isResultReported: false,
// fieldList | array || 需要查询的列集合示例如下type类型有:date/datetime/string/int/number
fieldList: [
{
type: 'string',
value: 'correspondingStandard',
text: this.$t('correspondingStandard')
},
// {
// type: 'string',
// value: 'correspondingStandard',
// text: this.$t('correspondingStandard')
// },
{
type: 'string',
value: 'subtitle',
text: this.$t('subtitle')
},
{
type: '',
value: 'implementType',
text: this.$t('implementationCategory'),
dictCode: 'implement_type'//只要 dictCode 有值无论 type 是什么都显示为字典下拉框
},
// {
// type: '',
// value: 'implementType',
// text: this.$t('implementationCategory'),
// dictCode: 'implement_type'//只要 dictCode 有值无论 type 是什么都显示为字典下拉框
// },
{
type: 'date',
value: 'xin1Che1Xing2Shi2Shi1Ri4Qi1',
@@ -1104,24 +1104,12 @@
text: this.$t('areaOfResponsibility'),
dictCode: 'duty_territory'//只要 dictCode 有值无论 type 是什么都显示为字典下拉框
},
{
type: '',
value: 'region',
text: this.$t('zoneOfApplication'),
dictCode: 'region'//只要 dictCode 有值无论 type 是什么都显示为字典下拉框
},
{
type: 'Personnel',
value: 'regulationOwnerId',
valueName: 'regulationOwnerIdName',
text: this.$t('regulatoryEngineer')
},
{
type: 'Personnel',
value: 'homologationEngineerId',
valueName: 'homologationEngineerIdName',
text: this.$t('certifiedEngineer')
},
{
type: 'Personnel',
value: 'engineeringInterfacePerson',
@@ -35,12 +35,14 @@
</a-col>
<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"
:fieldList="fieldList"/>
<a-button class="box-button" type="primary" @click="searchQuery">{{ $t('query') }}</a-button>
<a-button class="box-button" style="margin-left: 8px"
<a-button class="box-button" type="primary"
style="margin-right: 8px"
@click="searchQuery">{{ $t('query') }}</a-button>
<a-button class="box-button"
@click="searchReset">{{ $t('reset') }}</a-button>
<globalAdvancedQuery ref="globalAdvancedQueryRef"
@handleSuperQuery="handleSuperQuery"
:fieldList="fieldList"/>
</a-col>
</span>
</a-row>
@@ -58,37 +60,50 @@
:columns="columns"
>
<span slot="titleName" slot-scope="text,record" :title="text">
{{ text && text.length > 20 ? text.slice(0, 19) + '...' : text }}
<span class="textName">
{{ text }}
</span>
</span>
<span slot="designDeliverableTemplateName" slot-scope="text,record">
<span>{{ record.designDeliverableTypeName }}</span><br v-if="record.designDeliverableTypeName">
<a v-if="record.designDeliverableTemplate && record.designDeliverableTemplate.split(',').length == 1"
@click="pdfPreviewClick(record.designDeliverableTemplateName,record.designDeliverableTemplate)">
{{ 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 slot="standard" slot-scope="text,record" :title="text">
<a class="textName" @click="standardClick(record)">
{{ text }}
</a>
</span>
<span slot="prehomoDeliverableTemplateName" slot-scope="text,record">
<span>{{ record.prehomoDeliverableTypeName }}</span><br v-if="record.prehomoDeliverableTypeName">
<a v-if="record.prehomoDeliverableTemplate && record.prehomoDeliverableTemplate.split(',').length == 1"
@click="pdfPreviewClick(record.prehomoDeliverableTemplateName,record.prehomoDeliverableTemplate)">
{{ 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 slot="verifyDeliverableTemplateName" slot-scope="text,result">
<span class="viewFile"
@click="viewFileClick(result.verifyDeliverableTemplate)"
v-if="result.verifyDeliverableTemplate">
{{$t('viewFile')}}
</span>
<span v-else>--</span>
</span>
<span slot="verifyDeliverableTemplateName" slot-scope="text,record">
<span>{{ record.verifyDeliverableTypeName }}</span><br v-if="record.verifyDeliverableTypeName">
<a v-if="record.verifyDeliverableTemplate && record.verifyDeliverableTemplate.split(',').length == 1"
@click="pdfPreviewClick(record.verifyDeliverableTemplateName,record.verifyDeliverableTemplate)">
{{ 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 slot="designDeliverableTemplate" slot-scope="text,result">
<span class="viewFile"
@click="viewFileClick(result.designDeliverableTemplate)"
v-if="result.designDeliverableTemplate">
{{$t('viewFile')}}
</span>
<span v-else>--</span>
</span>
<span slot="designFlowStatusName" slot-scope="text,result">
<span v-if="result.designFlowStatus == 'List to be released' ||
result.designFlowStatus == 'List to be checked'"
:title="text">
{{text}}
</span>
<a v-else @click="designFlowStatusClick(result,$t('designComplianceReview'))"
:title="text">{{text}}</a>
</span>
<span slot="verifyFlowStatusName" slot-scope="text,result">
<span v-if="result.verifyFlowStatus == 'List to be released' ||
result.verifyFlowStatus == 'List to be checked'"
:title="text">
{{text}}
</span>
<a v-else @click="designFlowStatusClick(result,$t('verificationComplianceReview'))"
:title="text">{{text}}</a>
</span>
</a-table>
</div>
@@ -125,12 +140,16 @@
</span>
</a-table>
</a-modal>
<viewFileModel ref="viewFileModelRef"/>
<designCompliance ref="designComplianceRef"/>
</a-card>
</template>
<script>
import ImportFile from '@/components/ImportFile/index'
import globalAdvancedQuery from '@/components/globalAdvancedQuery/index'
import viewFileModel from '@/components/viewFileModel/index'
import designCompliance from '../../toDoCenter/projectRegulationTasks/components/designCompliance'
import { getAction, postAction, downloadFile, deleteAction } from '@/api/manage'
import { mapGetters } from 'vuex'
import { Base64 } from 'js-base64'
@@ -139,22 +158,25 @@
name: 'index',
components: {
globalAdvancedQuery,
ImportFile
ImportFile,
viewFileModel,
designCompliance
},
data() {
return {
columns: [
{
title: this.$t('standard'),
align: 'center',
align: 'left',
dataIndex: 'serialNumber',
width: 180,
fixed: 'left',
scopedSlots: { customRender: 'titleName' }
sorter: true,
scopedSlots: { customRender: 'standard' }
},
{
title: this.$t('title'),
align: 'center',
align: 'left',
dataIndex: 'title',
width: 180,
fixed: 'left',
@@ -162,180 +184,140 @@
},
{
title: this.$t('subtitle'),
align: 'center',
align: 'left',
dataIndex: 'subtitle',
width: 180,
fixed: 'left',
scopedSlots: { customRender: 'titleName' }
},
{
title: this.$t('listConfirmationStatus'),
align: 'center',
ellipsis: true,
dataIndex: 'inventoryAffirmStatusName'
width: 180
},
{
title: this.$t('taskAffirmStatus'),
align: 'center',
title: this.$t('applicableSupplement'),
align: 'left',
ellipsis: true,
dataIndex: 'taskAffirmStatusName'
},
// {
// title: this.$t('taskReleaseStatus'),
// align: 'center',
// dataIndex: 'taskReleaseStatus'
// },
{
title: this.$t('correspondingStandard'),
align: 'center',
ellipsis: true,
dataIndex: 'correspondingStandard'
},
{
title: this.$t('implementationCategory'),
align: 'center',
ellipsis: true,
dataIndex: 'implementType_dictText'
},
{
title: this.$t('ImplementationDate'),
align: 'center',
ellipsis: true,
dataIndex: 'xin1Che1Xing2Shi2Shi1Ri4Qi1'
},
{
title: this.$t('vehicleInProductionDate'),
align: 'center',
ellipsis: true,
dataIndex: 'implementTime'
},
{
title: 'WVTA ID',
align: 'center',
dataIndex: 'wvtaId',
ellipsis: true
dataIndex: 'applicableSupplement',
width: 200
},
{
title: this.$t('certificationType'),
align: 'center',
align: 'left',
ellipsis: true,
dataIndex: 'attestationType_dictText'
dataIndex: 'attestationType_dictText',
width: 180
},
{
title: this.$t('certificationLevel'),
align: 'center',
align: 'left',
ellipsis: true,
dataIndex: 'attestationRank_dictText'
dataIndex: 'attestationRank_dictText',
width: 180
},
//
{
title: this.$t('areaOfResponsibility'),
align: 'center',
align: 'left',
ellipsis: true,
dataIndex: 'dutyTerritory_dictText'
sorter: true,
dataIndex: 'dutyTerritory_dictText',
width: 180
},
{
title: this.$t('regulatoryEngineer'),
align: 'center',
align: 'left',
ellipsis: true,
dataIndex: 'regulationOwnerName'
},
{
title: this.$t('certifiedEngineer'),
align: 'center',
ellipsis: true,
dataIndex: 'homologationEngineerName'
sorter: true,
dataIndex: 'regulationOwnerName',
width: 180
},
{
title: this.$t('engineeringInterfacePerson'),
align: 'center',
align: 'left',
ellipsis: true,
dataIndex: 'engineeringInterfacePersonName'
sorter: true,
dataIndex: 'engineeringInterfacePersonName',
width: 180
},
{
title: this.$t('remarks'),
align: 'center',
ellipsis: true,
dataIndex: 'remark'
align: 'left',
dataIndex: 'remark',
width: 180,
ellipsis: true
},
{
title: this.$t('confirmationOfDesignConformity'),
children: [
{
title: this.$t('Deliverables'),
dataIndex: 'designDeliverableTemplateName',
align: 'center',
scopedSlots: { customRender: 'designDeliverableTemplateName' }
},
{
title: this.$t('Sponsor'),
dataIndex: 'designInitiatorName',
align: 'center'
},
{
title: this.$t('personLiable'),
dataIndex: 'designDutyName',
align: 'center'
dataIndex: 'designDutyIdName',
align: 'left',
width: 180,
ellipsis: true
},
{
title: this.$t('TaskCutOffTime'),
dataIndex: 'designDueDate',
align: 'center'
}
]
},
{
title: this.$t('PrehomoConfirmation'),
children: [
{
title: this.$t('Deliverables'),
dataIndex: 'prehomoDeliverableTemplateName',
align: 'center',
scopedSlots: { customRender: 'prehomoDeliverableTemplateName' }
align: 'left',
ellipsis: true,
width: 140
},
{
title: this.$t('Sponsor'),
dataIndex: 'prehomoInitiatorName',
align: 'center'
title: this.$t('ProcessStatus'),
dataIndex: 'designFlowStatusName',
align: 'left',
ellipsis: true,
width: 140,
scopedSlots: { customRender: 'designFlowStatusName' }
},
{
title: this.$t('personLiable'),
dataIndex: 'prehomoDutyName',
align: 'center'
},
{
title: this.$t('TaskCutOffTime'),
dataIndex: 'prehomoDueDate',
align: 'center'
title: this.$t('deliverableTemplate'),
dataIndex: 'designDeliverableTemplate',
align: 'left',
width: 180,
ellipsis: true,
scopedSlots: { customRender: 'designDeliverableTemplate' }
}
]
},
{
title: this.$t('verificationAndConformityconfirmation'),
children: [
{
title: this.$t('Deliverables'),
dataIndex: 'verifyDeliverableTemplateName',
align: 'center',
scopedSlots: { customRender: 'verifyDeliverableTemplateName' }
},
{
title: this.$t('Sponsor'),
dataIndex: 'verifyInitiatorName',
align: 'center'
},
{
title: this.$t('personLiable'),
dataIndex: 'verifyDutyName',
align: 'center'
dataIndex: 'verifyDutyIdName',
align: 'left',
width: 180,
ellipsis: true
},
{
title: this.$t('TaskCutOffTime'),
dataIndex: 'verifyDueDate',
align: 'center'
align: 'left',
ellipsis: true,
width: 140
},
{
title: this.$t('ProcessStatus'),
dataIndex: 'verifyFlowStatusName',
align: 'left',
ellipsis: true,
width: 180,
scopedSlots: { customRender: 'verifyFlowStatusName' }
},
{
title: this.$t('deliverableTemplate'),
dataIndex: 'verifyDeliverableTemplate',
align: 'left',
width: 180,
ellipsis: true,
scopedSlots: { customRender: 'verifyDeliverableTemplateName' }
}
]
}
// {
// title: this.$t('operation'),
// align: 'left',
// fixed: 'right',
// width: 260,
// scopedSlots: { customRender: 'operation' }
// }
],
columnsFile: [
{
@@ -345,12 +327,6 @@
width: 260,
ellipsis: true
},
{
title: this.$t('operation'),
align: 'center',
width: 130,
scopedSlots: { customRender: 'fileOperation' }
}
],
visibleFile: false,
dataSourceFile: [],
@@ -421,6 +397,73 @@
},
methods: {
...mapGetters(['userInfo']),
//流程状态点击事件
designFlowStatusClick(row, name) {
let query = {}
let TaskKey = ''
if (name == this.$t('designComplianceReview')) {
if (row.designFlowStatus == 'Task to be confirmed') {
TaskKey = 'zrrqr'
} else if (row.designFlowStatus == 'Results to be submitted') {
TaskKey = 'zrrtjjfw'
} else if (row.designFlowStatus == 'Results to be reviewed' ||
row.designFlowStatus == 'Compliance' ||
row.designFlowStatus == 'Non-Compliance' ||
row.designFlowStatus == 'To be tracked' ||
row.designFlowStatus == 'NA') {
TaskKey = 'fggcssh'
}
query = {
actiProcInstId: row.designPId,
projectTaskInventoryId: row.id,
projectLibraryId: row.projectLibraryId,
TaskKey: TaskKey,
isDisplay: false,
flowType: 2,
Sponsor: 'regulationOwnerName',
personLiable: 'designDutyIdName',
typeOfDeliverables: 'designDeliverableTypeName',
deliverableTemplate: 'designDeliverableTemplate',
DueDate: 'designDueDate',
remarks: 'designRemark',
projectName: row.projectName,
targetMarket: row.targetMarket,
projectNameId: row.projectNameId,
primaryKeyId: row.primaryKeyId
}
} else {
if (row.verifyFlowStatus == 'Task to be confirmed') {
TaskKey = 'zrrqr'
} else if (row.verifyFlowStatus == 'Results to be submitted') {
TaskKey = 'zrrtjjfw'
} else if (row.verifyFlowStatus == 'Results to be reviewed' ||
row.verifyFlowStatus == 'Compliance' ||
row.verifyFlowStatus == 'Non-Compliance' ||
row.verifyFlowStatus == 'To be tracked' ||
row.verifyFlowStatus == 'NA') {
TaskKey = 'fggcssh'
}
query = {
actiProcInstId: row.verifyPId,
projectTaskInventoryId: row.id,
projectLibraryId: row.projectLibraryId,
TaskKey: TaskKey,
flowType: 4,
isDisplay: false,
Sponsor: 'regulationOwnerName',
personLiable: 'verifyDutyIdName',
typeOfDeliverables: 'verifyDeliverableTypeName',
deliverableTemplate: 'verifyDeliverableTemplate',
DueDate: 'verifyDueDate',
remarks: 'verifyRemark',
projectName: row.projectName,
targetMarket: row.targetMarket,
projectNameId: row.projectNameId,
primaryKeyId: row.primaryKeyId
}
}
this.$refs.designComplianceRef.getList(JSON.parse(JSON.stringify(query)), name)
},
searchQuery() {
this.getList()
},
@@ -502,6 +545,19 @@
download(item) {
downloadFile('/sys/common/downLoadFile', item.fileName, { id: item.id ,userName:this.userInfo().username})
},
standardClick(row) {
let newUrl = this.$router.resolve({
path: '/docManage/library/detail',
query: {
id: row.standId
}
})
window.open(newUrl.href, '_blank')
},
viewFileClick(item) {
this.$refs.viewFileModelRef.clickButtonToUpload(item)
},
clickButtonToUpload(item) {
this.loading = true
this.visibleFile = true
@@ -521,8 +577,8 @@
this.loading = false
}
})
}
}
},
},
}
</script>