Files
foton-laws-system-front/src/pages/processCenter/pages/creatProcess/bzrk/step1.vue
T

3339 lines
134 KiB
Vue
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<template>
<div class="bzrkStep1">
<!-- 标准入库流程-->
<ProcessHeader toggle>
<template slot="proName">标准入库流程</template>
<template slot="proNode">发起流程</template>
</ProcessHeader>
<div class="headerTabs">
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
<div class="headerTabsItem" :class="active === '2' ? 'active' : ''" @click="handleTabs('2')">人员信息</div>
</div>
<div class="content">
<el-form
ref="form"
:model="form"
:rules="rules"
class="label-input-form"
label-width="210px"
>
<div style="flex: auto;" v-show="active === '1'">
<ProcessTitle>
<template slot="title">基础信息</template>
</ProcessTitle>
<div class="prc-content-border">
<el-row :gutter="24">
<el-col :span="12">
<el-form-item label="标准来源" prop="standInData" class="add-form-item form-item-disabled">
<el-radio-group v-model="form.standInData" @change="standInChange">
<el-radio label="0">国内标准入库</el-radio>
<el-radio label="1">海外标准入库</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="标准类别" prop="standSort" class="add-form-item form-item-disabled">
<el-select :popper-append-to-body="false" filterable v-model="form.standSort" placeholder="请选择标准类别">
<el-option
v-for="item in standSortOptions"
placeholder="请选择"
:key="item.value"
:value="item.value"
:label="item.label"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="标准编号" prop="standNumber" class="add-form-item form-item-disabled">
<el-input
v-model="form.standNumber"
placeholder="请输入标准编号"
clearable
></el-input>
</el-form-item>
<el-form-item v-if="verifySarStandard" label="标准年份" prop="standYear" class="add-form-item form-item-disabled">
<el-input
v-model="form.standYear"
placeholder="请输入标准标准年份"
clearable
></el-input>
</el-form-item>
<el-form-item label="标准中文名称" prop="standName" class="add-form-item form-item-disabled">
<el-input
v-model="form.standName"
placeholder="请输入标准中文名称"
clearable
></el-input>
</el-form-item>
<el-form-item label="标准英文名称" prop="standEnName" class="add-form-item form-item-disabled">
<el-input
v-model="form.standEnName"
placeholder="请输入标准英文名称"
clearable
></el-input>
</el-form-item>
<el-form-item v-if="verifySarStandard" label="标准发布日期" prop="issueTime" class="add-form-item form-item-disabled">
<el-date-picker
v-model="form.issueTime"
type="date"
placeholder="请选择标准发布日期"
value-format="yyyy-MM-dd">
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item v-show="form.standInData === '1'" label="国家/地区" prop="country" class="add-form-item form-item-disabled">
<el-select :popper-append-to-body="false" v-model="form.country" multiple placeholder="国家/地区">
<el-option
v-for="item in countryOptions"
placeholder="请选择"
:key="item.value"
:value="item.value"
:label="item.label"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="是否需要会签" prop="signFlag" class="add-form-item form-item-disabled">
<el-radio-group v-model="form.signFlag">
<el-radio label="1">是</el-radio>
<el-radio label="2">否</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="标准性质" prop="standNature" class="add-form-item form-item-disabled" v-show="form.standInData === '0'">
<el-select :popper-append-to-body="false" v-model="form.standNature" placeholder="请选择标准性质">
<el-option
v-for="item in standNatureOptions"
placeholder="请选择"
:key="item.value"
:value="item.value"
:label="item.label"
></el-option>
</el-select>
</el-form-item>
<el-form-item class="add-form-item form-item-disabled" style="margin-left: -210px">
<el-button
type="primary"
:loading="loadSarStandard"
@click="handleSearchStandard">
根据类别、编号、中英文名称查询
</el-button>
</el-form-item>
<el-form-item v-if="verifySarStandard" label="是否纳入认证清单" prop="isRelateAccess" class="add-form-item form-item-disabled">
<el-radio-group v-model="form.isRelateAccess">
<el-radio label="1">是</el-radio>
<el-radio label="2">否</el-radio>
</el-radio-group>
<el-button @click="form.isRelateAccess = ''" v-show="form.isRelateAccess !== null>0" size="mini" type="primary" circle icon="el-icon-close" style="margin-left: 10px;margin-bottom: 3px"></el-button>
</el-form-item>
<!--v-if="verifySarStandard && form.standInData === '0' " -->
<el-form-item label="标准体系" prop="standSystem" class="add-form-item form-item-disabled">
<el-input v-model="form.standSystem" clearable placeholder="选择标准体系" @click.native="choiceZRR1('standSystem', '标准体系', form.standSystem)"></el-input>
<tree-select-new
:key="key"
:multiple=false
:lazy=false
:modalShowFlag="modalShowFlag1"
:drawerTitle="drawerTitle"
width="800"
:data="standSystemOptions"
:defaultProps="defaultProps" :checkedKeys="defaultCheckedKeys"
:nodeKey="nodeKey" @popoverHide="popoverHide" @popoverHideCancel="popoverHideCancel"></tree-select-new>
</el-form-item>
<el-form-item v-if="verifySarStandard" label="文本状态" prop="textStatus" class="add-form-item form-item-disabled">
<el-select :popper-append-to-body="false" v-model="form.textStatus" placeholder="请选择文本状态">
<el-option
v-for="item in standStateOptions"
placeholder="请选择"
:key="item.value"
:value="item.value"
:label="item.label"
></el-option>
</el-select>
</el-form-item>
<el-form-item v-if="verifySarStandard && form.standInData === '1'" label="标签" prop="gxhbq" class="add-form-item form-item-disabled">
<el-input
v-model="form.gxhbq"
placeholder="请输入标签"
clearable
></el-input>
</el-form-item>
<!--<el-form-item label="归档位置">
<el-input
style="display: none"
v-model="form.treeListId"
placeholder="请"
readonly
></el-input>
<el-input
v-model="form.treeListName"
placeholder="请输入标准英文名称"
readonly
></el-input>
</el-form-item>-->
</el-col>
</el-row>
</div>
<ProcessTitle v-show="verifySarStandard">
<template slot="title">实施日期</template>
</ProcessTitle>
<div class="prc-content-border content_input" v-show="verifySarStandard">
<el-row :gutter="24">
<el-col :span="12">
<cus-tom-data-picker-group
:config="{attrName:'实施日期(标准文本)',attrField:'ssrq'}"
v-model="form.ssrq"
:disabled="false"
></cus-tom-data-picker-group>
<cus-tom-data-picker-group
:config="{attrName:'在产车实施日期(标准文本)',attrField:'zccssrq'}"
v-model="form.zccssrq"
:disabled="false"
></cus-tom-data-picker-group>
<!--
<el-form-item label="实施日期(标准文本)" prop="ssrq" class="add-form-item form-item-disabled">
<el-date-picker
v-model="form.ssrq"
type="dates"
placeholder="请选择标准实施日期(标准文本)"
value-format="yyyy-MM-dd">
</el-date-picker>
</el-form-item>
<el-form-item label="在产车实施日期(标准文本)" prop="zccssrq" class="add-form-item form-item-disabled">
<el-date-picker
v-model="form.zccssrq"
type="dates"
placeholder="请选择在产车实施日期(标准文本)"
value-format="yyyy-MM-dd hh:mm:ss"
>
</el-date-picker>
</el-form-item>-->
</el-col>
<el-col :span="12">
<cus-tom-data-picker-group
:config="{attrName:'新车型实施日期(标准文本)',attrField:'xcxssrq'}"
v-model="form.xcxssrq"
:disabled="false"
></cus-tom-data-picker-group>
<!-- <el-form-item label="新车型实施日期(标准文本)" prop="xcxssrq" class="add-form-item form-item-disabled">
<el-date-picker
v-model="form.xcxssrq"
type="dates"
placeholder="请选择新车型实施日期(标准文本"
value-format="yyyy-MM-dd hh:mm:ss"
>
</el-date-picker>
</el-form-item>
<el-form-item label="实施日期(国际)" prop="ssrqgj" class="add-form-item form-item-disabled">
<el-date-picker
v-model="form.ssrqgj"
type="date"
placeholder="请选择实施日期(国际)"
value-format="yyyy-MM-dd">
</el-date-picker>
</el-form-item>
<el-form-item label="新车型实施日期(国际)" prop="xcxssrqgj" class="add-form-item form-item-disabled">
<el-date-picker
v-model="form.xcxssrqgj"
type="date"
placeholder="请选择新车型实施日期(国家)"
value-format="yyyy-MM-dd">
</el-date-picker>
</el-form-item>
<el-form-item label="在产车实施日期(国际)" prop="zccssrqgj" class="add-form-item form-item-disabled">
<el-date-picker
v-model="form.zccssrqgj"
type="date"
placeholder="请选择在产车实施日期(国家)"
value-format="yyyy-MM-dd">
</el-date-picker>
</el-form-item>-->
</el-col>
</el-row>
</div>
<ProcessTitle v-show="verifySarStandard">
<template slot="title">文本信息</template>
</ProcessTitle>
<div class="prc-content-border" v-show="verifySarStandard">
<el-row :gutter="24">
<el-col :span="12">
<el-form-item v-show="form.standInData === '0'" label="修改单" prop="xgd" class="add-form-item form-item-disabled">
<el-input
disabled
style="display: none;"
v-model="form.xgdName"
clearable
></el-input>
<div style="display: flex;justify-content: space-between">
<div style="width: 80%;">
<div v-for="(item,index) in xgdFileList" :key="index" @click="filePreview(item)" style="color: #409eff;cursor:pointer" class="fileClass">
{{ item.name }}
</div>
</div>
<div style="width: 20%;">
<el-button
type="primary"
class="common-button-primary"
size="mini"
style="margin-left: 10px; margin-top: 11px; float: right;"
@click="fileUpload('xgd')">
<i class="el-icon-upload el-icon--right"></i>
</el-button>
</div>
</div>
</el-form-item>
<el-form-item label="发布稿" prop="fbgbjbdName" class="add-form-item form-item-disabled">
<el-input
disabled
style="display: none;"
v-model="form.fbgbjbdName"
clearable
></el-input>
<div style="display: flex;justify-content: space-between">
<div style="width: 80%;">
<div v-for="(item,index) in FBGBJBDFileList" :key="index" @click="filePreview(item)" style="color: #409eff;cursor:pointer" class="fileClass">
{{ item.name }}
</div>
</div>
<div style="width: 20%;">
<el-button
type="primary"
class="common-button-primary"
size="mini"
style="margin-left: 10px; margin-top: 11px; float: right;"
@click="fileUpload('fbgbjbd')">
<i class="el-icon-upload el-icon--right"></i>
</el-button>
</div>
</div>
</el-form-item>
<el-form-item v-show="form.standInData === '0'" label="送审稿" prop="ssg" class="add-form-item form-item-disabled">
<el-input
disabled
style="display: none;"
v-model="form.ssgName"
clearable
></el-input>
<div style="display: flex;justify-content: space-between">
<div style="width: 80%;">
<div v-for="(item,index) in ssgFileList" :key="index" @click="filePreview(item)" style="color: #409eff;cursor:pointer" class="fileClass">
{{ item.name }}
</div>
</div>
<div style="width: 20%;">
<el-button
type="primary"
class="common-button-primary"
size="mini"
style="margin-left: 10px; margin-top: 11px; float: right;"
@click="fileUpload('ssg')">
<i class="el-icon-upload el-icon--right"></i>
</el-button>
</div>
</div>
</el-form-item>
<el-form-item label="草案" prop="ca" class="add-form-item form-item-disabled">
<el-input
disabled
style="display: none;"
v-model="form.caName"
clearable
></el-input>
<div style="display: flex;justify-content: space-between">
<div style="width: 80%;">
<div v-for="(item,index) in caFileList" :key="index" @click="filePreview(item)" style="color: #409eff;cursor:pointer" class="fileClass">
{{ item.name }}
</div>
</div>
<div style="width: 20%;">
<el-button
type="primary"
class="common-button-primary"
size="mini"
style="margin-left: 10px; margin-top: 11px; float: right;"
@click="fileUpload('ca')">
<i class="el-icon-upload el-icon--right"></i>
</el-button>
</div>
</div>
</el-form-item>
<el-form-item v-show="form.standInData === '1'" label="增补件" prop="zbjbd" class="add-form-item form-item-disabled">
<el-input
disabled
style="display: none;"
v-model="form.zbjbdName"
clearable
></el-input>
<div style="display: flex;justify-content: space-between">
<div style="width: 80%;">
<div v-for="(item,index) in zbjbdFileList" :key="index" @click="filePreview(item)" style="color: #409eff;cursor:pointer" class="fileClass">
{{ item.name }}
</div>
</div>
<div style="width: 20%;">
<el-button
type="primary"
class="common-button-primary"
size="mini"
style="margin-left: 10px; margin-top: 11px; float: right;"
@click="fileUpload('zbjbd')">
<i class="el-icon-upload el-icon--right"></i>
</el-button>
</div>
</div>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item v-show="form.standInData === '1'" label="修订本" prop="xdb" class="add-form-item form-item-disabled">
<el-input
disabled
style="display: none;"
v-model="form.xdbName"
clearable
></el-input>
<div style="display: flex;justify-content: space-between">
<div style="width: 80%;">
<div v-for="(item,index) in xdbFileList" :key="index" @click="filePreview(item)" style="color: #409eff;cursor:pointer" class="fileClass">
{{ item.name }}
</div>
</div>
<div style="width: 20%;">
<el-button
type="primary"
class="common-button-primary"
size="mini"
style="margin-left: 10px; margin-top: 11px; float: right;"
@click="fileUpload('xdb')">
<i class="el-icon-upload el-icon--right"></i>
</el-button>
</div>
</div>
</el-form-item>
<el-form-item v-show="form.standInData === '1'" label="勘误件" prop="kwj" class="add-form-item form-item-disabled">
<el-input
disabled
style="display: none;"
v-model="form.kwjName"
clearable
></el-input>
<div style="display: flex;justify-content: space-between">
<div style="width: 80%;">
<div v-for="(item,index) in kwjFileList" :key="index" @click="filePreview(item)" style="color: #409eff;cursor:pointer" class="fileClass">
{{ item.name }}
</div>
</div>
<div style="width: 20%;">
<el-button
type="primary"
class="common-button-primary"
size="mini"
style="margin-left: 10px; margin-top: 11px; float: right;"
@click="fileUpload('kwj')">
<i class="el-icon-upload el-icon--right"></i>
</el-button>
</div>
</div>
</el-form-item>
<!-- ************************************* 2021/11/9 把"解读文件"改为"相关文件"*************************************-->
<el-form-item v-show="form.standInData === '0'" label="相关文件" prop="jdwj" class="add-form-item form-item-disabled">
<!-- ************************************** 2021/11/9 把"解读文件"改为"相关文件"*************************************-->
<el-input
disabled
style="display: none;"
v-model="form.jdwjName"
clearable
></el-input>
<div style="display: flex;justify-content: space-between">
<div style="width: 80%;">
<div v-for="(item,index) in jdwjFileList" :key="index" @click="filePreview(item)" style="color: #409eff;cursor:pointer" class="fileClass">
{{ item.name }}
</div>
</div>
<div style="width: 20%;">
<el-button
type="primary"
class="common-button-primary"
size="mini"
style="margin-left: 10px; margin-top: 11px; float: right;"
@click="fileUpload('jdwj')">
<i class="el-icon-upload el-icon--right"></i>
</el-button>
</div>
</div>
</el-form-item>
<el-form-item v-show="form.standInData === '0'" label="报批稿" prop="bpg" class="add-form-item form-item-disabled">
<el-input
disabled
style="display: none;"
v-model="form.bpgName"
clearable
></el-input>
<div style="display: flex;justify-content: space-between">
<div style="width: 80%;">
<div v-for="(item,index) in bpgFileList" :key="index" @click="filePreview(item)" style="color: #409eff;cursor:pointer" class="fileClass">
{{ item.name }}
</div>
</div>
<div style="width: 20%;">
<el-button
type="primary"
class="common-button-primary"
size="mini"
style="margin-left: 10px; margin-top: 11px; float: right;"
@click="fileUpload('bpg')">
<i class="el-icon-upload el-icon--right"></i>
</el-button>
</div>
</div>
</el-form-item>
<el-form-item v-show="form.standInData === '0'" label="征求意见稿" prop="zqyjg" class="add-form-item form-item-disabled">
<el-input
disabled
style="display: none;"
v-model="form.zqyjgName"
clearable
></el-input>
<div style="display: flex;justify-content: space-between">
<div style="width: 80%;">
<div v-for="(item,index) in zqyjgFileList" :key="index" @click="filePreview(item)" style="color: #409eff;cursor:pointer" class="fileClass">
{{ item.name }}
</div>
</div>
<div style="width: 20%;">
<el-button
type="primary"
class="common-button-primary"
size="mini"
style="margin-left: 10px; margin-top: 11px; float: right;"
@click="fileUpload('zqyjg')">
<i class="el-icon-upload el-icon--right"></i>
</el-button>
</div>
</div>
</el-form-item>
</el-col>
</el-row>
</div>
<ProcessTitle v-show="verifySarStandard">
<template slot="title">适用范围</template>
</ProcessTitle>
<div class="prc-content-border" v-show="verifySarStandard">
<el-row :gutter="24">
<el-col :span="12">
<!--责任部门-->
<!-- <template>
<custom-select-array
:key="zrbmOptions.options"
:config="zrbmOptions"
v-model="form['zrbm']"
></custom-select-array>
</template>
<el-form-item label="责任部门" prop="zrbm" class="add-form-item form-item-disabled">
<el-select :popper-append-to-body="false" v-model="form.zrbm" placeholder="请选择责任部门" multiple>
<el-option
v-for="item in zrbmOptions"
placeholder="请选择"
:key="item.value"
:value="item.value"
:label="item.label"
></el-option>
</el-select>
</el-form-item>-->
<!--适用车型-->
<template>
<custom-select-array
style="margin-left: -12px"
:config="applyArcticOptions"
v-model="form['cllx']"
></custom-select-array>
</template>
<!--能源类型-->
<template>
<custom-select-array
style="margin-left: -12px"
:config="categoryOptions"
v-model="form['nylx']"
></custom-select-array>
</template>
<!-- <el-form-item label="适用车型" prop="cllx" class="add-form-item form-item-disabled">-->
<!-- <custom-select-array-->
<!-- :key="applyArcticOptions.value"-->
<!-- :config="applyArcticOptions.label"-->
<!-- v-model="applyArcticOptions"-->
<!-- ></custom-select-array>-->
<!-- <el-select :popper-append-to-body="false" v-model="form.cllx" placeholder="请选择适用车型" multiple>-->
<!-- <el-option-->
<!-- v-for="item in applyArcticOptions"-->
<!-- placeholder="请选择"-->
<!-- :key="item.value"-->
<!-- :value="item.value"-->
<!-- :label="item.label"-->
<!-- ></el-option>-->
<!-- </el-select>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="能源类型" prop="nylx" class="add-form-item form-item-disabled">-->
<!-- <el-select :popper-append-to-body="false" v-model="form.nylx" placeholder="请选择能源类型" multiple>-->
<!-- <el-option-->
<!-- v-for="item in categoryOptions"-->
<!-- placeholder="请选择"-->
<!-- :key="item.value"-->
<!-- :value="item.value"-->
<!-- :label="item.label"-->
<!-- ></el-option>-->
<!-- </el-select>-->
<!-- </el-form-item>-->
<el-form-item label="关联模块--乘用车VPPS编码" prop="cycvppsbm" class="add-form-item form-item-disabled">
<el-input v-model="form.cycvppsbm" placeholder="选择乘用车VPPS编码" @click.native="choiceZRR2('cycvppsbm', '乘用车VPPS', form.cycvppsbm)"></el-input>
<tree-select-new
width="800"
:key="key1"
:lazy=true
:multiple=true
:check-strictly=true
:modalShowFlag="modalShowFlag2"
:drawerTitle="drawerTitle"
:show-checkBox="showCheckBox"
:url="url"
:type="'car'"
:urlChild="urlChild"
:defaultProps="defaultCodeProps" :checkedKeys="defaultCheckedKeys1"
:nodeKey="nodeKeyCode" @popoverHide="popoverHideBusVs" @popoverHideCancel="popoverHideBusVsCancel"></tree-select-new>
</el-form-item>
<el-form-item label="关联模块--卡车VPPS编码" prop="kccvppsbm" class="add-form-item form-item-disabled">
<el-input v-model="form.kccvppsbm" placeholder="选择卡车VPPS编码" @click.native="choiceZRR3('kccvppsbm', '卡车VPPS', form.kccvppsbm)"></el-input>
<tree-select-new
width="800"
:key="key2"
:lazy=true
:multiple=true
:check-strictly=true
:modalShowFlag="modalShowFlag3"
:drawerTitle="drawerTitle"
:show-checkBox="showCheckBox"
:url="url"
:type="'truck'"
:urlChild="urlChild"
:defaultProps="defaultCodeProps" :checkedKeys="defaultCheckedKeys2"
:nodeKey="nodeKeyCode" @popoverHide="popoverHideCarVs" @popoverHideCancel="popoverHideCarVsCancel"></tree-select-new>
</el-form-item>
<el-form-item label="模块结构单元变型号" prop="dybxh" class="add-form-item form-item-disabled">
<el-input v-model="form.dybxh" placeholder="选择模块结构单元变型号" @click.native="choiceZRR4('dybxh', '模块结构单元', form.dybxh)"></el-input>
<tree-select-module
width="800"
:key="key3"
:lazy=true
:multiple=true
:check-strictly=true
:modalShowFlag="modalShowFlag4"
:drawerTitle="drawerTitle"
:url="url"
:show-checkBox="showCheckBox"
:urlChild="urlChild"
:defaultProps="defaultModelProps" :checkedKeys="defaultCheckedKeys3"
:nodeKey="nodeKeyModel" @popoverHide="popoverHideModel" @popoverHideCancel="popoverHideModelCancel"></tree-select-module>
</el-form-item>
<el-form-item v-show="form.standInData === '0'" label="归口管理部门" prop="gkdw" class="add-form-item form-item-disabled">
<el-select :popper-append-to-body="false" filterable v-model="form.gkdw" placeholder="请选择归口管理部门">
<el-option v-for="item in gkglbmOptions" :value="item.value" :key="item.value" :label="item.label"></el-option>
</el-select>
</el-form-item>
<el-form-item v-show="form.standInData === '0'" label="起草单位" prop="qcdw" class="add-form-item form-item-disabled">
<el-select :popper-append-to-body="false" v-model="form.qcdw" placeholder="请选择起草单位" multiple filterable>
<el-option
v-for="item in qcdwOption"
placeholder="请选择"
:key="item.value"
:value="item.value"
:label="item.label"
></el-option>
</el-select>
</el-form-item>
<el-form-item v-show="form.standInData === '0'" label="体系类别" class="add-form-item form-item-disabled">
<el-select :popper-append-to-body="false" v-model="form.txlb" placeholder="请选择体系类别" multiple>
<el-option
v-for="item in txlbOptions"
placeholder="请选择"
:key="item.value"
:value="item.value"
:label="item.label"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<!--适用产品线-->
<template>
<custom-select-array
style="margin-left: -12px"
:config="sycpxOptions"
v-model="form['sycpx']"
></custom-select-array>
</template>
<!-- <el-form-item label="适用产品线" prop="sycpx" class="add-form-item form-item-disabled">
<el-select :popper-append-to-body="false" v-model="form.sycpx" placeholder="请选择适用产品线" multiple>
<el-option
v-for="item in sycpxOptions"
placeholder="请选择"
:key="item.value"
:value="item.value"
:label="item.label"
></el-option>
</el-select>
</el-form-item>-->
<!--适用认证-->
<template>
<custom-select-array
style="margin-left: -12px;"
:config="applyAuthOptions"
v-model="form['syrz']"
></custom-select-array>
</template>
<!-- <el-form-item label="适用认证" prop="syrz" class="add-form-item form-item-disabled">
<el-select :popper-append-to-body="false" v-model="form.syrz" placeholder="请选择适用认证" multiple>
<el-option
v-for="item in applyAuthOptions"
placeholder="请选择"
:key="item.value"
:value="item.value"
:label="item.label"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="责任工程师" prop="zrgcs" class="add-form-item form-item-disabled">
<el-select :popper-append-to-body="false" v-model="form.zrgcs" placeholder="请选择责任工程师" multiple>
<el-option
v-for="item in zrgcsOptions"
placeholder="请选择"
:key="item.value"
:value="item.value"
:label="item.label"
></el-option>
</el-select>
</el-form-item>
责任工程师
<template>
<custom-select-array
:key="zrgcsOptions.options"
:config="zrgcsOptions"
v-model="form['zrgcs']"
></custom-select-array>
</template>-->
<el-form-item label="关联模块--乘用车vpps中文名称" prop="cycvppscn" class="add-form-item form-item-disabled">
<el-input
v-if="form.cycvppsbm === ''"
v-model="form.cycvppscn = ''"
disabled
clearable
></el-input>
<el-input
v-else
v-model="form.cycvppscn"
disabled
clearable
></el-input>
</el-form-item>
<el-form-item label="关联模块--卡车vpps中文名称" prop="kccvppscn" class="add-form-item form-item-disabled">
<el-input
v-if="form.kccvppscn === ''"
v-model="form.kccvppscn = ''"
disabled
clearable
></el-input>
<el-input
v-else
v-model="form.kccvppscn"
disabled
clearable
></el-input>
</el-form-item>
<el-form-item label="模块结构单元名称" prop="dymc" class="add-form-item form-item-disabled">
<el-input
v-if="form.dybxh === ''"
v-model="form.dymc = ''"
disabled
clearable
></el-input>
<el-input
v-else
v-model="form.dymc"
disabled
clearable
></el-input>
</el-form-item>
<el-form-item v-show="form.standInData === '0'" label="我司署名人" prop="wssmr" class="add-form-item form-item-disabled">
<el-input v-model="form.wssmr" placeholder="选择我司署名人" @click.native="choiceWSSMR('wssmr', '选择我司署名人', form.wssmrId)">
</el-input>
<!-- <el-select :popper-append-to-body="false" v-model="form.wssmr" placeholder="请选择我司署名人" multiple>-->
<!-- <el-option-->
<!-- v-for="item in wssmrOptions"-->
<!-- placeholder="请选择"-->
<!-- :key="item.value"-->
<!-- :value="item.value"-->
<!-- :label="item.label"-->
<!-- ></el-option>-->
<!-- </el-select>-->
</el-form-item>
<el-form-item v-show="form.standInData === '0'" label="我司参与深度" prop="cysd" class="add-form-item form-item-disabled">
<el-select :popper-append-to-body="false" v-model="form.cysd" placeholder="请选择我司参与深度">
<el-option
v-for="item in cysdOptions"
placeholder="请选择"
:key="item.value"
:value="item.value"
:label="item.label"
></el-option>
</el-select>
</el-form-item>
<el-form-item v-show="form.standInData === '0'" label="我司参与制标排名" prop="cyzbpm" class="add-form-item form-item-disabled">
<el-select :popper-append-to-body="false" v-model="form.cyzbpm" placeholder="请选择我司参与制标排名" clearable>
<el-option
v-for="item in cyzbpmOptions"
placeholder="请选择"
:key="item.value"
:value="item.value"
:label="item.label"
></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
</div>
<ProcessTitle v-show="verifySarStandard">
<template slot="title">关联信息</template>
</ProcessTitle>
<div class="prc-content-border" v-show="verifySarStandard">
<el-row :gutter="24">
<el-col :span="12">
<el-form-item label="代替标准号" prop="dtbjh" class="add-form-item form-item-disabled">
<el-input
v-model="form.dtbjh"
placeholder="请输入代替标准号"
clearable
></el-input>
<el-button
type="primary"
class="common-button-primary"
size="mini"
style="position:absolute;top: 10px;right: 0;"
@click="selectLaws('dtbjh'),config.attrName = '代替标准号'"
>{{ '手动查找' }}
</el-button>
</el-form-item>
<el-form-item v-show="form.standInData === '0'" label="采标程度" prop="cbcd" class="add-form-item form-item-disabled">
<el-select :popper-append-to-body="false" v-model="form.cbcd" placeholder="请选择采标程度">
<el-option v-for="item in cbcdOptions" :key="item.value" :label="item.label" :value="item.value"></el-option>
</el-select>
</el-form-item>
<!-- <el-form-item label="相关流程" prop="xglc" class="add-form-item form-item-disabled">-->
<!-- <el-input-->
<!-- v-model="form.xglc"-->
<!-- placeholder="请输入相关流程"-->
<!-- clearable-->
<!-- ></el-input>-->
<!-- </el-form-item>-->
<el-form-item label="关联文件" prop="glwj" class="add-form-item form-item-disabled">
<el-input
disabled
style="display: none;"
v-model="form.glwjName"
clearable
></el-input>
<div style="display: flex;justify-content: space-between">
<div style="width: 80%;">
<div v-for="(item,index) in glwjFileList" :key="index" @click="filePreview(item)" style="color: #409eff;cursor:pointer" class="fileClass">
{{ item.name }}
</div>
</div>
<div style="width: 20%;">
<el-button
type="primary"
class="common-button-primary"
size="mini"
style="margin-left: 10px; margin-top: 11px; float: right;"
@click="fileUpload('glwj')">
<i class="el-icon-upload el-icon--right"></i>
</el-button>
</div>
</div>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="部分代替标准号" prop="bfbdtbzh" class="add-form-item form-item-disabled">
<el-input
style="display:none;"
v-model="form.bfdtbzh"
placeholder="请输入部分代替标准号"
></el-input>
<el-input
v-model="form.bfbdtbzh"
placeholder="请输入部分代替标准号"
clearable
></el-input>
<el-button
type="primary"
class="common-button-primary"
size="mini"
style="position:absolute;top: 10px;right: 0;"
@click="selectLaws('bfbdtbzh'),config.attrName = '部分代替标准号'"
>{{ '手动查找' }}
</el-button>
</el-form-item>
<el-form-item v-show="form.standInData === '0'" label="采标编号" prop="cbbh" class="add-form-item form-item-disabled">
<el-input
v-model="form.cbbh"
placeholder="请输入采标编号"
clearable
></el-input>
<el-button
type="primary"
class="common-button-primary"
size="mini"
style="position:absolute;top: 10px;right: 0;"
@click="selectLaws('cbbh'),config.attrName = '采标编号'"
>{{ '手动查找' }}
</el-button>
</el-form-item>
<el-form-item label="引用标准" prop="yybj" class="add-form-item form-item-disabled">
<el-input
v-model="form.yybj"
placeholder="请输入引用标准"
clearable
></el-input>
<el-button
type="primary"
class="common-button-primary"
size="mini"
style="position:absolute;top: 10px;right: 0;"
@click="selectLaws('yybj'),config.attrName = '引用标准'"
>{{ '手动查找' }}
</el-button>
</el-form-item>
<!-- <el-form-item label="被引用标准" prop="byybj" class="add-form-item form-item-disabled">-->
<!-- <el-input-->
<!-- v-model="form.byybj"-->
<!-- placeholder="请输入被引用标准"-->
<!-- clearable-->
<!-- ></el-input>-->
<!-- <el-button-->
<!-- type="primary"-->
<!-- class="common-button-primary"-->
<!-- size="mini"-->
<!-- style="position:absolute;top: 10px;right: 0;"-->
<!-- @click="selectLaws('byybj'),config.attrName = '被引用标准'"-->
<!-- >{{'手动查找'}}</el-button>-->
<!-- </el-form-item>-->
<!-- <el-form-item v-if="form.standInData === '0'" label="参会记录" prop="chjl" class="add-form-item form-item-disabled">-->
<!-- <el-input-->
<!-- v-model="form.chjl"-->
<!-- placeholder="请输入参会记录"-->
<!-- clearable-->
<!-- ></el-input>-->
<!-- </el-form-item>-->
</el-col>
</el-row>
</div>
<el-collapse v-show="verifySarStandard" v-model="activeName" accordion>
<el-collapse-item title="回执说明" name="1">
<div style="margin: 10px 0;">
<el-input
type="textarea"
:rows="3"
resize="none"
placeholder="请输入意见"
v-model="commentText">
</el-input>
</div>
</el-collapse-item>
</el-collapse>
</div>
<div class="block" style="padding-top: 20px;" v-show="active === '2'">
<el-timeline>
<el-form
ref="userForm"
:model="roleForm"
:rules="roleRules"
class="label-input-form">
<el-timeline-item timestamp="发起流程" placement="top" :color="roleForm.prcCreateUserName ? '#66b1ff' : ''">
<el-card>
<el-form-item prop="prcCreateUserName" style="margin-bottom: 0">
<h4>流程发起人</h4>
<div style="margin-top: 10px;width: 300px;">
<el-input disabled v-model="roleForm.prcCreateUserName" placeholder="流程发起人"></el-input>
</div>
</el-form-item>
</el-card>
</el-timeline-item>
<el-timeline-item timestamp="选择会签责任人" v-if="form.signFlag === '1'" prop="zrUserName" placement="top" :color="roleForm.zrUserName ? '#66b1ff' : ''">
<el-card>
<el-form-item prop="zrUserName" style="margin-bottom: 0">
<h4>会签责任人</h4>
<div style="margin-top: 10px;width: 300px;">
<el-input v-model="roleForm.zrUserName" placeholder="选择会签责任人" @click.native="choiceZRRS('zrUserId', '选择责任人', form.zrUserId)">
</el-input>
</div>
</el-form-item>
</el-card>
</el-timeline-item>
<el-timeline-item timestamp="修订申请人" v-if="form.signFlag === '1'" placement="top" :color="roleForm.applyUpdUserName ? '#66b1ff' : ''">
<el-card>
<el-form-item prop="applyUpdUserName" style="margin-bottom: 0">
<h4>修订申请人</h4>
<div style="margin-top: 10px;width: 300px;">
<el-input disabled v-model="roleForm.applyUpdUserName" placeholder="修订申请人"></el-input>
</div>
</el-form-item>
</el-card>
</el-timeline-item>
<el-timeline-item timestamp="选择标准法规业务经理" prop="jlUserName" placement="top" :color="roleForm.jlUserName ? '#66b1ff' : ''">
<el-card>
<el-form-item prop="jlUserName" style="margin-bottom: 0">
<h4>标准法规业务经理</h4>
<div style="margin-top: 10px;width: 300px;">
<el-input v-model="roleForm.jlUserName" placeholder="标准法规业务经理" @click.native="choiceZRR('jlUserId', '选择标准法规业务经理', form.jlUserId)"></el-input>
</div>
</el-form-item>
</el-card>
</el-timeline-item>
</el-form>
</el-timeline>
</div>
</el-form>
</div>
<!-- 保存||提交-->
<ProcessFooter
v-show="verifySarStandard"
show-save
show-submit
:submitLoading="isSubmit"
:saveLoading="saveLoading"
@save="handleSave"
@submit="handleSubmit"
>
</ProcessFooter>
<el-dialog width='400px' :visible.sync="fileMadel" title="上传文件">
<el-upload
multiple
drag
:file-list="fileList"
:action="fileUrl"
ref="importfile"
name="file"
accept=".pdf, .PDF, .ppt, .PPT, .pptx,.PPTX, .doc, .DOC, .docx, .DOCX, .xls, .xlsx"
:before-upload="beginImportFile"
:on-success="importFileSuccess"
:on-remove="removeOneFile"
:show-file-list="true"
>
<div>
<i class="el-icon-upload" style="color: #3399ff"></i>
<p>点击或拖拽上传文件</p>
</div>
</el-upload>
</el-dialog>
<el-dialog
:title="config.attrName"
:visible.sync="replaceLawsNumModel"
width="875px"
:close-on-click-modal="false"
@close="replaceLawsNumModelCancel"
:append-to-body="true"
>
<div class="search-area">
<div class="left">
<el-form :modal="replaceLawsNumForm" :inline="true" class="label-input-form" @keyup.enter.native="getReplaceLawsNumRowFirst">
<el-form-item label="标准来源" class="search-item" v-if="dataSource">
<el-select
:popper-append-to-body="false"
v-model="replaceLawsNumForm.standType"
placeholder="请选择标准来源"
@change="dataSourceChange">
<el-option value="INLAND" label="国内标准库"></el-option>
<el-option value="FOREIGN" label="国外标准库"></el-option>
</el-select>
</el-form-item>
<el-form-item label="标准编号" class="search-item">
<el-input
v-model="replaceLawsNumForm.standNumber"
placeholder="根据标准编号查找"
clearable
:maxlength="100"></el-input>
</el-form-item>
<el-form-item label="标准名称" class="search-item">
<el-input
v-model="replaceLawsNumForm.standName"
placeholder="根据标准名称查找"
clearable
:maxlength="100"></el-input>
</el-form-item>
<el-form-item class="search-item btn-box">
<el-button
size="mini"
type="primary"
class="common-button-primary"
@click="getReplaceLawsNumRowFirst">
查询
</el-button>
</el-form-item>
<el-form-item class="search-item btn-box">
<el-button
class="common-button-default"
size="mini"
type="default"
@click="getResetLawsNumRow">
清空
</el-button>
</el-form-item>
</el-form>
</div>
</div>
<el-table
ref="selections"
:data="replaceLawsNumRow"
tooltip-effect="dark"
style="width: 100%;overflow-y: auto;overflow-x: hidden;"
border
:height="300"
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
fontWeight: 'bold', height: '48px'}"
@selection-change="selectReplaceStandNumRowChange">
<el-table-column
type="selection"
width="55"
align="center">
</el-table-column>
<el-table-column
label="标准编号">
<template slot-scope="scope">
<a v-if="scope.row.standYear" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.standSort }}
{{ scope.row.standNumber }}-{{ scope.row.standYear }}</a>
<a v-else class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.standSort }}
{{ scope.row.standNumber }}</a>
</template>
</el-table-column>
<el-table-column
prop="standName"
label="标准名称">
</el-table-column>
<el-table-column
prop="issueTime"
label="发布日期"
width="130">
<template slot-scope="scope">{{
scope.row.issueTime ? $moment(scope.row.issueTime).format('YYYY-MM-DD') : ''
}}
</template>
</el-table-column>
<el-table-column
prop="textStatus"
label="文本状态"
width="130">
<template slot-scope="scope">
<span>{{ textStatusMap[scope.row.textStatus] }}</span>
</template>
</el-table-column>
</el-table>
<loading :loading="replaceLoading">{{ $t('m.dataAcquisition') }}</loading>
<!--分页-->
<pagination
style="position: relative;"
:page="replacePage"
:total="replaceTotal"
@pageChange="pageChangeReplace"
@pageSizeChange="pageSizeChangeReplace"></pagination>
<div slot="footer" class="demo-drawer-footer">
<el-button class="common-button-default" round icon="el-icon-close" @click="replaceLawsNumModel = false">取消
</el-button>
<el-button type="primary" round class="common-button-primary" icon="el-icon-check" @click="replaceLawsNumModelBt">
提交
</el-button>
</div>
</el-dialog>
<Role-tree
:is-title="drawerTitle"
:is-visible.sync="modalShowRoleFlag"
@checkedRole="checkedRole2"
:nodeList="nodeList2"
></Role-tree>
<Role-tree
:is-title="drawerTitle"
:is-visible.sync="modalShowRoleFlag5"
@checkedRole="checkedRole2"
:nodeList="nodeList3"
></Role-tree>
<Role-tree
check-box
:is-title="drawerTitle"
:is-visible.sync="modalShowFlag"
@checkedRole="checkedRole"
:nodeList="nodeList"
></Role-tree>
<!-- <el-drawer
:title="drawerTitle"
:visible.sync="modalShowFlag"
:wrapperClosable="false"
size="800px">
<el-input
style="width:70%;padding: 10px"
placeholder="请输入姓名"
v-model="filterText">
</el-input>
<el-tree
:filter-node-method="filterNode"
v-if="modalShowFlag"
node-key="id"
style="height: 100%; overflow: auto;"
class="filter-tree"
:data="treeData"
:props="defaultUserProps"
:default-checked-keys="nodeList"
highlight-current
check-strictly
@check="drawerCheck"
default-expand-all
:expand-on-click-node="false"
show-checkbox
ref="tree">
</el-tree>
<div id="roleFormButton" class="demo-drawer-footer">
<el-button class="common-button-primary" size="mini" icon="el-icon-check" type="primary" @click="saveUserInfo">确定</el-button>
<el-button class="common-button-default" size="mini" icon="el-icon-close" @click="cancelUserInfo">取消</el-button>
</div>
</el-drawer>-->
<!-- 选择标准的弹框 -->
<el-drawer
ref="standard"
title="查询结果"
size="800px"
:visible.sync="standardDrawer"
direction="rtl"
:before-close="handleReviseDrawerClose">
<div class="standard-content">
<div class="content">
<div class="standard-table-search">
<el-form :model="standardSearchForm" inline class="label-input-form search-area">
<el-row>
<el-formItem label="标准来源" prop="standType" class="search-item">
<el-select
:popper-append-to-body="false"
v-model="standardSearchForm.standType"
placeholder="请选择标准来源">
<el-option value="INLAND" label="国内标准库"></el-option>
<el-option value="FOREIGN" label="海外标准库"></el-option>
</el-select>
</el-formItem>
<el-form-item label="标准类别" prop="standSort" class="search-item">
<el-select :popper-append-to-body="false" filterable v-model="standardSearchForm.standSort" placeholder="请选择标准类别" filterable clearable>
<el-option
v-for="item in standSortOptions"
:key="item.value"
:value="item.value"
:label="item.label"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="标准编号" prop="standNumber" class="search-item">
<el-input
v-model="standardSearchForm.standNumber"
placeholder="请输入标准编号"
clearable
:maxlength="100"></el-input>
</el-form-item>
</el-row>
<el-form-item label="标准名称" prop="standName" class="search-item">
<el-input v-model="standardSearchForm.standName"
placeholder="请输入标准名称"
clearable
:maxlength="500"></el-input>
</el-form-item>
<!-- <el-form-item label="英文名称" prop="standEnName" class="search-item">-->
<!-- <el-input-->
<!-- v-model="standardSearchForm.standEnName"-->
<!-- maxlength="1000"-->
<!-- placeholder="请输入英文名称"-->
<!-- clearable></el-input>-->
<!-- </el-form-item>-->
<el-form-item>
<el-button
type="primary"
class="common-button-primary"
size="mini"
style="margin-left: 5px"
@click="handleSearchStandard">
查询
</el-button>
<el-button
class="common-button-default"
size="mini"
@click="handleResetSearch">
清空
</el-button>
</el-form-item>
</el-form>
</div>
<div class="standard-table-wrap">
<el-table
ref="reviseDrawerTable"
:data="tableData.standardData"
tooltip-effect="dark"
style="width: 100%;"
height="100%"
border
class="drag-table"
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}"
@selection-change="standSelectChange">
<el-table-column
type="selection"
width="55"
align="center">
</el-table-column>
<el-table-column
type="index"
label="序号"
width="80"
align="center"
></el-table-column>
<el-table-column
label="标准号"
align="center"
min-width="40"
>
<template slot-scope="scope">
<a v-if="scope.row.standYear" @click="handlePreview(scope.row)">
{{ scope.row.standSort }} {{ scope.row.standNumber }}-{{ scope.row.standYear }}</a>
<a v-else @click="handlePreview(scope.row)">{{ scope.row.standSort }} {{ scope.row.standNumber }}</a>
</template>
</el-table-column>
<el-table-column
prop="standName"
label="标准名称"
align="center">
</el-table-column>
<el-table-column
prop="textStatus"
label="文本状态"
align="center"
min-width="30">
<template slot-scope="scope">
<span>{{ textStatusMap[scope.row.textStatus] }}</span>
</template>
</el-table-column>
<!-- <el-table-column label="操作" align="center" width="80">-->
<!-- <template slot-scope="scope">-->
<!-- <el-button-->
<!-- class="opera-btn"-->
<!-- size="mini"-->
<!-- type="primary"-->
<!-- @click="handlePreview(scope.row)">查看-->
<!-- </el-button>-->
<!-- </template>-->
<!-- </el-table-column>-->
</el-table>
</div>
<pagination
:page="standardSearchForm.page"
:total="standardSearchForm.total"
@pageChange="handleStandardPageChange"
@pageSizeChange="handleStandardPageSizeChange"></pagination>
<loading :loading="loadSarStandard">数据获取中</loading>
</div>
</div>
<div class="demo-drawer-footer">
<el-button
round
class="common-button-primary"
icon="el-icon-plus"
type="primary"
@click="handleProcessStandardNext(1)">新增
</el-button>
<el-button
round
class="common-button-primary"
icon="el-icon-check"
type="primary"
@click="handleProcessStandardNext(2)">确认
</el-button>
<el-button
round
class="common-button-default"
icon="el-icon-close"
@click="handleProcessStandardNext(3)">取消
</el-button>
</div>
</el-drawer>
</div>
</template>
<script>
import ProcessHeader from '../../components/ProcessHeader'
import ProcessFooter from '../../components/ProcessFooter'
import ProcessTitle from '../../components/ProcessTitle'
import CustomSelectArray from '@/components/CustomFormComponents/SelectArray'
import {saveTaskFirst, queryTaskFirst, getBusStandFileByAttId, taskDel, processBack} from "api/process";
import TreeSelect from '@/components/treeSelect/treeSelect.vue';
import TreeSelectNew from '@/components/treeSelect/treeSelectNew.vue';
import TreeSelectModule from "@/components/treeSelect/treeSelectModule.vue";
import CustomDatePickGroup from '@/components/CustomFormComponents/DatePickerGroup'
import CusTomDataPickerGroup
from "@/pages/regulatoryRepository/localProductsOrProjectLibrary/components/DatePickerGroup";
export default {
name: "bzrkStep1",
components: {
CusTomDataPickerGroup,
CustomDatePickGroup,
TreeSelectModule,
ProcessHeader,
ProcessFooter,
CustomSelectArray,
ProcessTitle,
TreeSelect,
TreeSelectNew,
},
data() {
const validateQcdw = (rule, value, callback) => {
if (this.form.standInData === '0') {
if (value === null || value.length === 0) {
callback(new Error('请选择起草单位!'))
} else {
callback()
}
}
callback()
};
const validateCysd = (rule, value, callback) => {
if (this.form.standInData === '0') {
if (value === '') {
callback(new Error('请选择我司参与深度!'))
} else {
callback()
}
}
callback()
}
return {
nodeList3: [],
fileList: [],
caFileList: [],
FBGBJBDFileList: [],
xgdFileList: [],
bpgFileList: [],
ssgFileList: [],
zqyjgFileList: [],
jdwjFileList: [],
zbjbdFileList: [],
kwjFileList: [],
xdbFileList: [],
glwjFileList: [],
nodeList5: [],
filterText: '',
textStatusMap: {}, // 文本状态id与name对应
standardDrawer: false,
loadSarStandard: false,
verifySarStandard: false,
standardSearchForm: {
page: 1,
pageSize: this.$store.getters.userInfo.configContent,
total: 0,
standType: 'INLAND',
standSort: '',
standName: '',
standEnName: '',
standNumber: ''
},
tableData: {
// 标准表格数据
standardData: [],
// 任务分解单数据
taskTableData: []
},
tableHeight: {
standardTableHeight: null
},
selectedList: [],
standardCheckedList: [],
activeName: '1',
roleRow: {},
commentText: '', // 意见
title: '', // 新增编辑抽屉标题
config: {
attrName: '',
},
dataSource: false,
replaceLawsNumModel: false,
replaceLawType: '',
sarBussionessLawsEO: {
replaceLawsNum: ''
},
// 代替标准号
replaceLawsNumForm: {
dataSource: '',
standNumber: '', // 标准编号
standName: '', // 标准名称
page: 1,
pageSize: this.$store.getters.userInfo.configContent,
total: 0,
standType: 'INLAND',
quoteIdList: '',
validFlag: '0',
menuId: 'nomenu'
},
replaceLawsNumRow: [], // 代替政策号 数组内容
replaceTotal: 0,
selectedListRep: [],
replaceLoading: true,
replacePage: 1,
ListModel: false, // 新增编辑抽屉开关
active: '1', // 默认显示
isSubmit: false,
saveLoading: false,
defaultProps: {
children: 'children',
label: 'menuName'
},
defaultCodeProps: {
children: 'children',
label: 'code'
},
defaultModelProps: {
children: 'children',
label: 'model'
},
nodeList: [],
nodeList2: [],
type: '',
defaultUserProps: {
children: 'children',
label: 'name'
},
key: 1,
key1: 2,
key2: 3,
key3: 4,
treeData: [], // 人员数据
modalShowFlag: false, // drawer开关
modalShowRoleFlag: false, // drawer开关
modalShowFlag1: false, // drawer开关
modalShowFlag2: false, // drawer开关
modalShowFlag3: false, // drawer开关
modalShowFlag4: false, // drawer开关
modalShowRoleFlag5: false,
url: '',
urlChild: '',
drawerTitle: '', //drawer标题
showCheckBox: true, // 树形控件是否展示多选框
nodeKey: 'id',
defaultCheckedKeys: [],
nodeKeyCode: 'code',
nodeKeyModel: 'model',
defaultCheckedKeys1: [],
defaultCheckedKeys2: [],
defaultCheckedKeys3: [],
fileUrl: 'api/att/attFile/upload',
fileMadel: false,
fileType: '',
countryArr: '',
form: {
// 基础信息
country: '',
textStatus: '', // 文本状态
standYear: '', // 标准年份
standInData: '0', // 标准类型
standSort: '', // 标准类别
standNumber: '', // 标准编号
standNature: '', // 标准性质
standEnName: '', // 英文名称
standName: '', // 中文名称
signFlag: '2', // 是否需要会签
issueTime: '', // 发布时间
isRelateAccess: '', // 是否纳入认证清单
standSystem: '',// 标准体系
standSystemName: '',// 标准体系名称
gxhbq: '', // 标签
// 实施日期
ssrq: '', // 实施日期(标准文本)
xcxssrq: '', // 新车型实施日期(标准文本)
zccssrq: '', // 在产车实施日期(标准文本)
ssrqgj: '', // 实施日期(国际)
xcxssrqgj: '', // 新车型实施日期(国际)
zccssrqgj: '', // 在产车实施日期(国际)
// 文本信息
ca: '', // 草案
FBGBJBD: '', // 发布稿
xgd: '', // 修改单
bpg: '', // 报批稿
ssg: '', // 送审稿
zqyjg: '', // 征求意见稿
jdwj: '', // 解读文件
zbjbd: '', // 增补件
kwj: '', // 勘 误件
caName: '', // 草案
fbgbjbdName: '', // 发布稿
xgdName: '', // 修改单
bpgName: '', // 报批稿
ssgName: '', // 送审稿
zqyjgName: '', // 征求意见稿
jdwjName: '', // 解读文件
zbjbdName: '', // 增补件
kwjName: '', // 勘误件
xdbName: '', // 修订本
glwjName: '', // 关联文件
// 适用范围
txlb: '', // 体系类别
gkdw: '', // 归口管理部门
qcdw: '', // 起草单位
wssmr: '', // 我司署名人
cysd: '', // 我司参与深度
cyzbpm:[],// 我司参与制标排名
cllx: '', // 适用车型
nylx: '',// 能源类型
sycpx: '',// 适用产品线
syrz: '', // 适用认证
zrbm: '', // 责任部门
zrgcs: '', // 责任工程师
cycvppsbm: '', // 关联模块--乘用车VPPS编码
cycvppscn: '', // 关联模块--乘用车vpps中文名称
kccvppsbm: '', // 关联模块--卡车VPPS编码
kccvppscn: '', // 关联模块--卡车vpps中文名称
dybxh: '', // 模块结构单元变型号
dymc: '', // 模块结构单元名称
// 关联信息
dtbjh: '', // 代替标准号
cbbh: '', // 采标编号
cbcd: '', // 采标程度
yybj: '', // 引用标准
bfbdtbzh: '', // 部分代替标准号
bfdtbzh: '',
byybj: '', // 被引用标准
glwj: '', // 关联文件
xglc: '', // 相关流程
chjl: '', // 参会记录
}, // 标准信息
roleForm: {
zrUserId: '',
zrUserName: '',
jlUserId: '',
jlUserName: '',
wssmr: '',
wssmrId: '',
applyUpdUserId: this.$store.getters.userInfo.userId,
applyUpdUserName: this.$store.getters.userInfo.userName,
prcCreateUser: this.$store.getters.userInfo.userId,
prcCreateUserName: this.$store.getters.userInfo.userName,
},
roleRules: {
zrUserName: [
{required: true, message: '请选择会签责任人', trigger: 'blur'},
],
jlUserName: [
{required: true, message: '选择标准法规业务经理', trigger: 'blur'},
],
},
rules: {
standSort: [
{required: true, message: '请选择标准类别', trigger: 'change'}
],
standNumber: [
{required: true, message: '请输入标准编号', trigger: 'blur'},
{min: 1, max: 100, message: '长度在 1 到 100 个字符', trigger: 'blur'}
],
standYear: [
{required: true, message: '请输入标准年份'},
// { type: 'number', message: '年标准年份必须为数字值'}
],
standName: [
{required: true, message: '请输入标准中文名称', trigger: 'blur'},
{min: 1, max: 100, message: '长度在 1 到 100 个字符', trigger: 'blur'}
],
/*standEnName: [
{required: false, message: '请输入标准英文名称', trigger: 'blur'},
{min: 1, max: 500, message: '长度在 1 到 500 个字符', trigger: 'blur'}
],*/
standNature: [
{required: true, message: '请选择标准性质', trigger: 'change'}
],
textStatus: [
{required: true, message: '请选择文本状态', trigger: 'change'}
]
,
issueTime: [
{required: false, message: '请选择标准发布日期', trigger: 'change'}
],
},
zrUserIds: [], // 选择多个会签责任人
userType: '', // 选择用户ID判断
countryOptions: [],//国家地区
standSortOptions: [], // 标准类别
standNatureOptions: [], // 标准性质
standStateOptions: [], // 文本状态
standSystemOptions: [], // 标准体系
busVppsOptions: [], // 车系体系架构
busVppsChildOptions: [], // 车系体系架构子集合
modelOptions: [], // 模块体系架构
modelChildOptions: [], // 模块体系架构子集合
applyArcticOptions: {
attrName: '适用车型',
options: []
}, // 适用车型
gkglbmOptions: [], // 归口管理部门
categoryOptions: {
attrName: '能源类型',
options: []
}, // 能源类型
applyAuthOptions: {
attrName: '适用认证',
options: []
}, // 适用认证
cysdOptions: [], // 我司参与深度
cyzbpmOptions:[], // 我司参与制标排名
cbcdOptions: [], // 采标程度
wssmrOptions: [], // 我司署名人
sycpxOptions: {
attrName: '适用产品线',
options: []
}, // 适用产品线
zrbmOptions: {
attrName: '责任部门',
options: []
}, // 责任部门
zrgcsOptions: {
attrName: '责任工程师',
options: []
}, // 责任工程师
qcdwOption: [], // 起草单位
txlbOptions: [], // 体系类别
data: [], // 标准列表数据
ListForm: {}, // 新增数据
bpnId: ''
}
},
watch: {
'form.country': {
handler(val) {
if (val !== '' && val !== null && typeof (val) !== 'undefined') {
if (val instanceof Array) {
this.countryArr = val.join(",");
} else {
this.countryArr = val
}
} else if (val === '') {
this.countryArr = ''
}
}
},
filterText(val) {
this.$refs.tree.filter(val);
},
'form' : {
handler: function () {
console.log(this.form.standInData)
if(this.form.standInData === '1') {
this.rules.standYear[0].required = false;
this.rules.standName[0].required = false
this.rules.standNature[0].required = false
} else {
this.rules.standYear[0].required = true;
this.rules.standName[0].required = true
this.rules.standNature[0].required = true
}
}
},
/* 'form.signFlag' : {
handler: function () {
if (this.form.signFlag === '1') {
this.roleRules.jlUserName[0].required = true
} else {
this.roleRules.jlUserName[0].required = false
}
}
},*/
/*'form.standInData': {
handler: function (val) {
this.verifySarStandard = false
this.standardSearchForm.standType = this.form.standInData === '0' ? 'INLAND' : 'FOREIGN'
// 国内英文名称不必填 国外必填
if (this.form.standInData === '1') {
this.rules.standEnName[0].required = true;
} else {
this.rules.standEnName[0].required = false;
}
//切换清空表单
this.form = {
// 基础信息
country: '',
textStatus: '', // 文本状态
standYear: '', // 标准年份
standInData: val, // 标准类型
standSort: '', // 标准类别
standNumber: '', // 标准编号
standNature: '', // 标准性质
standEnName: '', // 英文名称
standName: '', // 中文名称
signFlag: '1', // 是否需要会签
issueTime: '', // 发布时间
isRelateAccess: '', // 是否纳入认证清单
standSystem: '',// 标准体系
standSystemName: '',// 标准体系名称
gxhbq: '', // 标签
// 实施日期
ssrq: '', // 实施日期(标准文本)
xcxssrq: '', // 新车型实施日期(标准文本)
zccssrq: '', // 在产车实施日期(标准文本)
ssrqgj: '', // 实施日期(国际)
xcxssrqgj: '', // 新车型实施日期(国际)
zccssrqgj: '', // 在产车实施日期(国际)
// 文本信息
ca: '', // 草案
FBGBJBD: '', // 发布稿
xgd: '', // 修改单
bpg: '', // 报批稿
ssg: '', // 送审稿
zqyjg: '', // 征求意见稿
jdwj: '', // 解读文件
zbjbd: '', // 增补件
kwj: '', // 勘 误件
caName: '', // 草案
fbgbjbdName: '', // 发布稿
xgdName: '', // 修改单
bpgName: '', // 报批稿
ssgName: '', // 送审稿
zqyjgName: '', // 征求意见稿
jdwjName: '', // 解读文件
zbjbdName: '', // 增补件
kwjName: '', // 勘误件
glwjName: '', // 关联文件
// 适用范围
txlb: '', // 体系类别
gkdw: '', // 归口管理部门
qcdw: '', // 起草单位
wssmr: '', // 我司署名人
cysd: '', // 我司参与深度
cllx: '', // 适用车型
nylx: '',// 能源类型
sycpx: '',// 适用产品线
syrz: '', // 适用认证
zrbm: '', // 责任部门
zrgcs: '', // 责任工程师
cycvppsbm: '', // 关联模块--乘用车VPPS编码
cycvppscn: '', // 关联模块--乘用车vpps中文名称
kccvppsbm: '', // 关联模块--卡车VPPS编码
kccvppscn: '', // 关联模块--卡车vpps中文名称
dybxh: '', // 模块结构单元变型号
dymc: '', // 模块结构单元名称
// 关联信息
dtbjh: '', // 代替标准号
cbbh: '', // 采标编号
cbcd: '', // 采标程度
yybj: '', // 引用标准
bfbdtbzh: '', // 部分代替标准号
byybj: '', // 被引用标准
glwj: '', // 关联文件
xglc: '', // 相关流程
chjl: '', // 参会记录
}
},
},
'standardSearchForm.standType': {
handler: function () {
this.form.standInData = this.standardSearchForm.standType === 'INLAND' ? '0' : '1'
},
},*/
'form.standNumber': {
handler: function () {
this.standardSearchForm.standNumber = this.form.standNumber
},
},
'standardSearchForm.standNumber': {
handler: function () {
this.form.standNumber = this.standardSearchForm.standNumber
},
},
'form.standSort': {
handler: function () {
this.standardSearchForm.standSort = this.form.standSort
},
},
'standardSearchForm.standSort': {
handler: function () {
this.form.standSort = this.standardSearchForm.standSort
},
},
'form.standName': {
handler: function () {
this.standardSearchForm.standName = this.form.standName
},
},
'standardSearchForm.standName': {
handler: function () {
this.form.standName = this.standardSearchForm.standName
},
},
'form.standEnName': {
handler: function () {
this.standardSearchForm.standEnName = this.form.standEnName
},
},
'standardSearchForm.standEnName': {
handler: function () {
this.form.standEnName = this.standardSearchForm.standEnName
},
},
},
methods: {
// 标准来源改变事件
standInChange(val) {
this.verifySarStandard = false
/** val === '1' (国外) val === '0'( 国内 )*/
// 国内英文名称不必填 国外必填 ,标准性质国内不体现
if (val === '1') {
this.rules.standName[0].required = false
this.rules.standEnName[0].required = true;
this.rules.standNature[0].required = false
} else {
this.rules.standName[0].required = true
this.rules.standNature[0].required = true
this.rules.standEnName[0].required = false;
}
this.standardSearchForm.standType = val === '0' ? 'INLAND' : 'FOREIGN'
//切换清空表单
this.form = {
// 基础信息
country: '',
textStatus: '', // 文本状态
standYear: '', // 标准年份
standInData: val, // 标准类型
standSort: '', // 标准类别
standNumber: '', // 标准编号
standNature: '', // 标准性质
standEnName: '', // 英文名称
standName: '', // 中文名称
signFlag: '2', // 是否需要会签
issueTime: '', // 发布时间
isRelateAccess: '', // 是否纳入认证清单
standSystem: '',// 标准体系
standSystemName: '',// 标准体系名称
gxhbq: '', // 标签
// 实施日期
ssrq: '', // 实施日期(标准文本)
xcxssrq: '', // 新车型实施日期(标准文本)
zccssrq: '', // 在产车实施日期(标准文本)
ssrqgj: '', // 实施日期(国际)
xcxssrqgj: '', // 新车型实施日期(国际)
zccssrqgj: '', // 在产车实施日期(国际)
// 文本信息
ca: '', // 草案
FBGBJBD: '', // 发布稿
xgd: '', // 修改单
bpg: '', // 报批稿
ssg: '', // 送审稿
zqyjg: '', // 征求意见稿
jdwj: '', // 解读文件
zbjbd: '', // 增补件
kwj: '', // 勘 误件
caName: '', // 草案
fbgbjbdName: '', // 发布稿
xgdName: '', // 修改单
bpgName: '', // 报批稿
ssgName: '', // 送审稿
zqyjgName: '', // 征求意见稿
jdwjName: '', // 解读文件
zbjbdName: '', // 增补件
kwjName: '', // 勘误件
glwjName: '', // 关联文件
// 适用范围
txlb: '', // 体系类别
gkdw: '', // 归口管理部门
qcdw: '', // 起草单位
wssmr: '', // 我司署名人
cysd: '', // 我司参与深度
cllx: '', // 适用车型
nylx: '',// 能源类型
sycpx: '',// 适用产品线
syrz: '', // 适用认证
zrbm: '', // 责任部门
zrgcs: '', // 责任工程师
cycvppsbm: '', // 关联模块--乘用车VPPS编码
cycvppscn: '', // 关联模块--乘用车vpps中文名称
kccvppsbm: '', // 关联模块--卡车VPPS编码
kccvppscn: '', // 关联模块--卡车vpps中文名称
dybxh: '', // 模块结构单元变型号
dymc: '', // 模块结构单元名称
// 关联信息
dtbjh: '', // 代替标准号
cbbh: '', // 采标编号
cbcd: '', // 采标程度
yybj: '', // 引用标准
bfbdtbzh: '', // 部分代替标准号
byybj: '', // 被引用标准
glwj: '', // 关联文件
xglc: '', // 相关流程
chjl: '', // 参会记录
}
},
getBusStandFileByAttId(attId) {
return new Promise((resolve, reject) => {
getBusStandFileByAttId({
attId
}).then(res => {
if (res.ok) {
resolve(res.data)
} else {
reject()
}
}).catch(e => {
reject(e)
})
})
},
// 文件预览
filePreview(item) {
const attId = item.response.data.id
this.$preview(attId)
},
// choiceZRRS () {
// if (this.userType === 'zrUserId') {
// this.roleForm.zrUserId = this.zrUserIds.map(item => item.id).join(",")
// this.roleForm.zrUserName = this.zrUserIds.map(item => item.name).join(",")
// }
// this.modalshowflag2 = true
// },
checkedRole2(data) {
let idList = ''
let nameList = ''
data.forEach(item => {
if (nameList.length > 0) {
nameList += ','
idList += ','
}
idList += item.id
nameList += item.name
})
if (this.drawerTitle === '选择责任人') {
this.roleForm.zrUserId = idList;
this.roleForm.zrUserName = nameList;
}
if (this.drawerTitle === '选择我司署名人') {
this.form.wssmrId = idList;
this.form.wssmr = nameList
this.roleForm.wssmrId = idList;
this.roleForm.wssmr = nameList
}
},
checkedRole(data) {
if (this.userType === 'jlUserId') {
this.roleForm.jlUserId = data[0].id
this.roleForm.jlUserName = data[0].name
}
},
// z责任人会签姓名搜索
filterNode(value, data) {
if (!value) return true;
return data.name.indexOf(value) !== -1;
},
getTaskId() {
queryTaskFirst({
bpnId: this.$route.query.bpnId
}).then(res => {
this.verifySarStandard = this.$route.query.verifySarStandard
let mes = JSON.parse(res.mes)
mes.form.date = new Date(this.$moment(mes.form.date).format('YYYY-MM-DD'))
this.roleForm = mes.roleForm
this.commentText = mes.commentText
//表单文件处理
this.getFormFieldList(mes.form)
})
},
/**
* @description: 动态表单读取
*/
getFormFieldList(item) {
this.$nextTick(() => {
this.form = JSON.parse(JSON.stringify(item))
this.defaultCheckedKeys = [this.form.standSystem]
this.defaultCheckedKeys1 = [this.form.cycvppsbm]
this.defaultCheckedKeys2 = [this.form.kccvppsbm]
this.defaultCheckedKeys3 = [this.form.dybxh]
this.form.standType = this.form.standInData === "0" ? 'INLAND' : 'FOREIGN'
this.form.standYear = this.form.standYear ? parseInt(this.form.standYear) : ''
if (this.form.country !== undefined && this.form.country !== null && this.form.country !== '') {
this.form.country = this.form.country.split(",");
}
this.form.prcNum = this.prcNum
this.form.prcName = this.prcName
this.form['id'] = item.id
// 遍历对象初始化文件信息
for (const p in this.form) {
if (typeof (this.form[p]) != "function") {
this.initializeFileList(p, this.form[p]);
}
}
})
},
// 将文本状态的id与name对应
setMap(data) {
data.forEach(item => {
this.$set(this.textStatusMap, item.value, item.label)
})
},
clearFormData(data) {
this.form = {
// 基础信息
textStatus: '', // 文本状态
standYear: '', // 标准年份
standInData: data.standInData ? data.standInData : '0', // 标准类型
standSort: data.standSort ? data.standSort : '', // 标准类别
standNumber: data.standNumber ? data.standNumber : '', // 标准编号
standNature: data.standNature ? data.standNature : '', // 标准性质
standEnName: data.standEnName ? data.standEnName : '', // 英文名称
standName: data.standName ? data.standName : '', // 中文名称
signFlag: data.signFlag ? data.signFlag : '1', // 是否需要会签
issueTime: '', // 发布时间
isRelateAccess: '', // 是否纳入认证清单
standSystem: '',// 标准体系
standSystemName: '',// 标准体系名称
gxhbq: '', // 标签
// 实施日期
ssrq: '', // 实施日期(标准文本)
xcxssrq: '', // 新车型实施日期(标准文本)
zccssrq: '', // 在产车实施日期(标准文本)
ssrqgj: '', // 实施日期(国际)
xcxssrqgj: '', // 新车型实施日期(国际)
zccssrqgj: '', // 在产车实施日期(国际)
// 文本信息
ca: '', // 草案
fbgbjbd: '', // 发布稿
xgd: '', // 修改单
bpg: '', // 报批稿
ssg: '', // 送审稿
zqyjg: '', // 征求意见稿
jdwj: '', // 解读文件
zbjbd: '', // 增补件
kwj: '', // 勘误件
caName: '', // 草案
fbgbjbdName: '', // 发布稿
xgdName: '', // 修改单
bpgName: '', // 报批稿
ssgName: '', // 送审稿
zqyjgName: '', // 征求意见稿
jdwjName: '', // 解读文件
zbjbdName: '', // 增补件
kwjName: '', // 勘误件
glwjName: '', // 关联文件
// 适用范围
txlb: '', // 体系类别
gkdw: '', // 归口管理部门
qcdw: '', // 起草单位
wssmr: '', // 我司署名人
cysd: '', // 我司参与深度
cllx: '', // 适用车型
nylx: '',// 能源类型
sycpx: '',// 适用产品线
syrz: '', // 适用认证
zrbm: '', // 责任部门
zrgcs: '', // 责任工程师
cycvppsbm: '', // 关联模块--乘用车VPPS编码
cycvppscn: '', // 关联模块--乘用车vpps中文名称
kccvppsbm: '', // 关联模块--卡车VPPS编码
kccvppscn: '', // 关联模块--卡车vpps中文名称
dybxh: '', // 模块结构单元变型号
dymc: '', // 模块结构单元名称
// 关联信息
dtbjh: '', // 代替标准号
cbbh: '', // 采标编号
cbcd: '', // 采标程度
yybj: '', // 引用标准
byybj: '', // 被引用标准
glwj: '', // 关联文件
xglc: '', // 相关流程
chjl: '', // 参会记录
} // 标准信息
},
handleProcessStandardNext(status) {
switch (status) {
// 新增
case 1:
this.selectedList = []
this.standardCheckedList = []
this.standardDrawer = false
this.verifySarStandard = true
this.clearFormData(this.form)
break
// 带入(确认)
case 2:
if (this.standardCheckedList.length === 1) {
this.$http.get('sarStandardsInfo/sar-standards-info/getStandInfoUpdateById', {id: this.standardCheckedList[0].id}, {
_this: this
}, res => {
if (res && res.data) {
const bringData = res.data
bringData.signFlag = this.form.signFlag && this.form.signFlag != '' ? this.form.signFlag : '0'
bringData.standInData = this.form.standInData && this.form.standInData != '' ? this.form.standInData : '0'
const json = Object.assign(bringData, bringData.attrInfoCaseMap);
this.form = JSON.parse(JSON.stringify(json))
console.log(this.form)
this.form.qcdw = JSON.parse(JSON.stringify(json)).qcdw && JSON.parse(JSON.stringify(json)).qcdw !== '[]' ? JSON.parse(JSON.stringify(json)).qcdw : ''
this.form.wssmr = JSON.parse(JSON.stringify(json)).wssmr && JSON.parse(JSON.stringify(json)).wssmr !== '[]' ? JSON.parse(JSON.stringify(json)).wssmr : ''
this.form.zrgcs = JSON.parse(JSON.stringify(json)).zrgcs && JSON.parse(JSON.stringify(json)).zrgcs !== '[]' ? JSON.parse(JSON.stringify(json)).zrgcs : ''
this.form.zrbm = JSON.parse(JSON.stringify(json)).zrbm && JSON.parse(JSON.stringify(json)).zrbm !== '[]' ? JSON.parse(JSON.stringify(json)).zrbm : ''
this.form.syrz = JSON.parse(JSON.stringify(json)).syrz && JSON.parse(JSON.stringify(json)).syrz !== '[]' ? JSON.parse(JSON.stringify(json)).syrz : ''
this.form.sycpx = JSON.parse(JSON.stringify(json)).sycpx && JSON.parse(JSON.stringify(json)).sycpx !== '[]' ? JSON.parse(JSON.stringify(json)).sycpx : ''
this.form.nylx = JSON.parse(JSON.stringify(json)).nylx && JSON.parse(JSON.stringify(json)).nylx !== '[]' ? JSON.parse(JSON.stringify(json)).nylx : ''
this.form.cllx = JSON.parse(JSON.stringify(json)).cllx && JSON.parse(JSON.stringify(json)).cllx !== '[]' ? JSON.parse(JSON.stringify(json)).cllx : ''
this.defaultCheckedKeys = [this.form.standSystem];
this.defaultCheckedKeys1 = [this.form.cycvppsbm];
this.defaultCheckedKeys2 = [this.form.kccvppsbm];
this.defaultCheckedKeys3 = [this.form.dybxh];
this.key++
this.key1++
this.key2++
this.key3++
this.form.standType = this.form.standInData === '0' ? 'INLAND' : 'FOREIGN'
this.form.standYear = bringData.standYear ? parseInt(bringData.standYear) : ''
// this.form.ssrq = this.form.ssrq ? this.$moment(this.form.ssrq).format("YYYY-MM-DD") : null
// this.form.zccssrq = this.form.zccssrq ? this.$moment(this.form.zccssrq).format("YYYY-MM-DD") : null
// this.form.xcxssrq = this.form.xcxssrq ? this.$moment(this.form.xcxssrq).format("YYYY-MM-DD") : null
this.form.prcNum = this.prcNum
this.form.prcName = this.prcName
this.form['id'] = bringData.id
this.standardDrawer = false
this.verifySarStandard = true
this.busVsFunc()
this.modelFunc()
this.$forceUpdate()
}
// 遍历对象初始化文件信息
for (const p in this.form) {
if (typeof (this.form[p]) != "function") {
this.initializeFileList(p, this.form[p]);
}
}
console.log("res", res);
})
} else if (this.standardCheckedList.length > 1) {
this.$message.warning('最多可以带入一条标准信息')
} else {
this.$message.warning('请选择要带入的标准信息')
}
break
// 取消
case 3:
this.selectedList = []
this.standardCheckedList = []
this.standardDrawer = false
break
}
}, initializeFileList(property, value) {
switch (property) {
case 'xgd':
this.getFileList(value, this.xgdFileList);
break;
case 'fbgbjbd':
this.getFileList(value, this.FBGBJBDFileList);
break;
case 'ssg':
this.getFileList(value, this.ssgFileList);
break;
case 'ca':
this.getFileList(value, this.caFileList);
break;
case 'zbjbd':
this.getFileList(value, this.zbjbdFileList);
break;
case 'kwj':
this.getFileList(value, this.kwjFileList);
break;
case 'xdb':
this.getFileList(value, this.xdbFileList);
break;
case 'jdwj':
this.getFileList(value, this.jdwjFileList);
break;
case 'bpg':
this.getFileList(value, this.bpgFileList);
break;
case 'zqyjg':
this.getFileList(value, this.zqyjgFileList);
break;
case 'glwj':
this.getFileList(value, this.glwjFileList);
break;
default:
;
}
}, getFileList(fileIds, defaultFileList) {
// 对象为引用传递
this.$http.get('att/attFile/getMultiFileInfos', {
fileIds: fileIds
}, {
_this: this
}, res => {
let fileList = res.data
if (fileList != null && fileList.length > 0) {
for (let i = 0; i < fileList.length; i++) {
let obj = {name: '', response: {}}
obj.name = fileList[i].oldFileName
obj.response.data = fileList[i]
//根据以‘,’分割的id查询到的文件信息,放入对应的文件list中
defaultFileList.push(obj)
}
}
}, e => {
})
},
handleStandardPageChange(page) {
this.standardSearchForm.page = page
this.handleSearchStandard()
},
handleStandardPageSizeChange(pageSize) {
this.standardSearchForm.pageSize = pageSize
this.handleSearchStandard()
},
standSelectChange(data) {
this.selectedList = []
for (let i = 0; i < data.length; i++) {
this.selectedList.push(data[i].id)
}
this.standardCheckedList = data
},
handleResetSearch() {
this.standardSearchForm.standType = 'INLAND'
this.standardSearchForm.standNumber = ''
this.standardSearchForm.standSort = ''
this.standardSearchForm.standName = ''
this.standardSearchForm.standEnName = ''
setTimeout(() => {
this.handleSearchStandard()
}, 100)
},
/**
* 关闭修订 Drawer 的监听
* @param done
*/
handleReviseDrawerClose(done) {
done()
},
getDomesticStandardTable() {
this.loadSarStandard = true
this.$http.get('sarStandardsInfo/sar-standards-info/getSarStandardsInfoPage', this.standardSearchForm, {}, res => {
this.loadSarStandard = false
if (res.ok) {
this.tableData.standardData = res.data.list
this.standardSearchForm.total = res.data.count
}
}, e => {
this.loadSarStandard = false
})
},
handleSearchStandard() {
if (this.form.standType === '') {
this.$message.warning('请选择标准来源')
} else {
this.standardDrawer = true
this.$nextTick(() => {
// 动态设置表格高度
this.tableHeight.standardTableHeight = $('.standard-table-wrap').height()
window.onresize = () => {
this.tableHeight.standardTableHeight = $('.standard-table-wrap').height()
}
})
this.getDomesticStandardTable()
}
},
saveUserInfo() {
this.filterText = ''
if (this.userType === 'zrUserId') {
this.roleForm.zrUserId = this.zrUserIds.map(item => item.id).join(",")
this.roleForm.zrUserName = this.zrUserIds.map(item => item.name).join(",")
} else if (this.userType === 'jlUserId') {
this.roleForm.jlUserId = this.roleRow.id
this.roleForm.jlUserName = this.roleRow.name
}
this.modalShowFlag = false
},
cancelUserInfo() {
this.filterText = ''
this.modalShowFlag = false
},
drawerCheck(data) {
if (this.userType === 'zrUserId') {
if (this.zrUserIds.length > 0) {
const list = this.zrUserIds.filter(item => item.id === data.id);
if (list.length === 0) {
this.zrUserIds.push(data)
} else {
this.zrUserIds.forEach((item, index) => {
if (item.id === data.id) {
this.zrUserIds.splice(index, 1)
}
})
}
} else {
this.zrUserIds.push(data)
}
} else {
var getlist = this.$refs.tree.getCheckedNodes().concat(this.$refs.tree.getHalfCheckedNodes());
if (getlist.length == 1) {
this.roleRow = getlist[0]
} else {
this.$refs.tree.setCheckedKeys([data.id]);
this.roleRow = this.$refs.tree.getCheckedNodes()[0]
}
}
},
choiceZRR(type, title, id) {
this.nodeList = []
this.nodeList.push(id)
this.userType = type
this.drawerTitle = title
this.modalShowFlag = true
},
choiceZRRS(type, title, id) {
this.nodeList = []
this.nodeList.push(id)
this.userType = type
this.drawerTitle = title
this.modalShowRoleFlag = true
},
choiceWSSMR(type, title, id) {
this.nodeList3 = []
this.nodeList.push(id)
this.userType = type
this.drawerTitle = title
this.modalShowRoleFlag5 = true
},
choiceZRR1(type, title, id) {
this.drawerTitle = title
this.modalShowFlag1 = true
this.key++
},
choiceZRR2(type, title, id) {
this.drawerTitle = title
this.modalShowFlag2 = true
this.url = ''
this.urlChild = ''
this.url = "sarVppsTree/list"
this.urlChild = "sarVppsTree/childByList"
this.key1++
},
choiceZRR3(type, title, id) {
this.drawerTitle = title
this.modalShowFlag3 = true
this.url = ''
this.urlChild = ''
this.url = "sarVppsTree/list"
this.urlChild = "sarVppsTree/childByList"
this.key2++
},
choiceZRR4(type, title, id) {
this.drawerTitle = title
this.modalShowFlag4 = true
this.url = ''
this.urlChild = ''
this.url = "sarModelTree/list"
this.urlChild = "sarModelTree/childByList"
this.key3++
},
getTree() {
this.$http.get('SarInstitution/institution/institutionAndUser', {}, {}, res => {
this.treeData = res.data
})
},
// 代替政策号 请求数据
getReplaceLawsNumRowFirst() {
if (this.sarBussionessLawsEO.replaceLawsNum !== null && this.sarBussionessLawsEO.replaceLawsNum !== '') {
this.replaceLawsNumForm.quoteIdList = this.quoteIdList1.toString() === '' ? '' : this.quoteIdList1
} else {
this.quoteIdList1 = []
this.replaceLawsNumForm.quoteIdList = ''
}
this.replaceLawsNumForm.page = 1
this.replacePage = 1
this.$http.get('sarStandardsInfo/sar-standards-info/getSarStandardsInfoPage', this.replaceLawsNumForm, {
_this: this,
loading: 'replaceLoading'
}, res => {
this.replaceLawsNumRow = res.data.list
this.replaceTotal = res.data.count
if (this.selectedListRep.length !== 0) {
this.selectedListRep.map((list) => {
this.replaceLawsNumRow.map((item) => {
if (list.id === item.id) {
item._checked = true
}
})
})
}
}, e => {
})
},
dataSourceChange(val) {
},
handleChange(event) {
// const value = event.target.value
const value = event
this.$emit('input', value)
if (value.length == 1000) {
return this.$message({
message: '相关标准不能输入超过1000个字符',
type: 'warning'
});
}
},
// 代替政策编号-取消
replaceLawsNumModelCancel() {
// this.replaceLawsNumModel = false
this.$refs.selections.clearSelection()
},
// 代替政策号 table选择事件
selectReplaceStandNumRowChange(row) {
this.selectedListRep = row
},
// 代替政策分页
pageChangeReplace(page) {
this.replacePage = page
this.replaceLawsNumForm.page = page
this.getReplaceLawsNumRow()
},
pageSizeChangeReplace(pageSize) {
// this.replaceRows = pageSize
this.replaceLawsNumForm.pageSize = pageSize
this.getReplaceLawsNumRow()
},
// 代替政策编号确定
replaceLawsNumModelBt() {
let textArr = []
if (typeof this.value === 'string') {
if (this.value) {
textArr = this.value.split(',')
}
}
if (this.selectedListRep.length === 0) {
return this.$message({
message: '请先选择数据',
type: 'warning'
})
}
if (this.selectedListRep.length + textArr.length > 20) {
return this.$message({
message: '标准最多选择20项',
type: 'warning'
})
}
this.selectedListRep.map((item) => {
let texts = ''
if (item.standYear != null && item.standYear !== '') {
texts = item.standSort !== null ? item.standSort + ' ' + item.standNumber + '-' + item.standYear : item.standNumber + '-' + item.standYear
} else {
texts = item.standSort !== null ? item.standSort + ' ' + item.standNumber : item.standNumber
}
textArr.push(texts)
textArr = [...new Set(textArr)]
this.replaceLawsNumModel = false
})
// this.SarLawsInfoEO.replaceLawsNum = textArr.join(',')
// 解决 标准入库流程--圈住的字段,先手动输入,然后再手动查找,点提交就会把手动输入的标准号覆盖
if (this.replaceLawType === 'dtbjh') {
this.form.dtbjh = this.form.dtbjh ? this.form.dtbjh + ',' + textArr.join(',') : textArr.join(',')
} else if (this.replaceLawType === 'yybj') {
this.form.yybj = this.form.yybj ? this.form.yybj + ',' + textArr.join(',') : textArr.join(',')
} else if (this.replaceLawType === 'cbbh') {
this.form.cbbh = this.form.cbbh ? this.form.cbbh + ',' + textArr.join(',') : textArr.join(',')
} else if (this.replaceLawType === 'bfbdtbzh') {
this.form.bfbdtbzh = this.form.bfbdtbzh ? this.form.bfbdtbzh + ',' + textArr.join(',') : textArr.join(',')
this.form.bfdtbzh = this.form.bfdtbzh ? this.form.bfdtbzh + ',' + textArr.join(',') : textArr.join(',')
} else {
this.form.byybj = this.form.byybj ? this.form.byybj + ',' + textArr.join(',') : textArr.join(',')
}
// this.$emit('input', textArr.join(','))
this.$refs.selections.clearSelection()
},
// 点击查看
handlePreview(item) {
let routeUrl = this.$router.resolve({
name: 'OtherStandardDetails',
params: {
id: item.id,
pageType: 'INLAND_STAND'
}
})
window.open(routeUrl.href, '_blank')
},
getResetLawsNumRow() {
this.replaceLawsNumForm = {
standNumber: '', // 标准编号
page: 1,
pageSize: this.$store.getters.userInfo.configContent,
total: 0,
standType: 'INLAND',
quoteIdList: '',
validFlag: '0'
}
this.getReplaceLawsNumRow()
},
selectLaws(type) {
// if (this.standNumFlag === 1) {
// this.$refs.selections.selectAll(false)
// }
// this.sarBussionessLawsEO.replaceLawsNum = ''
this.replaceLawsNumModel = true
this.replaceLawType = ''
this.replaceLawType = type
this.getReplaceLawsNumRow()
},
// 代替政策号 请求数据
getReplaceLawsNumRow() {
if (this.sarBussionessLawsEO.replaceLawsNum !== null && this.sarBussionessLawsEO.replaceLawsNum !== '') {
this.replaceLawsNumForm.quoteIdList = this.quoteIdList1.toString() === '' ? '' : this.quoteIdList1
} else {
this.quoteIdList1 = []
this.replaceLawsNumForm.quoteIdList = ''
}
if(this.replaceLawType === 'cbbh') {
this.replaceLawsNumForm.standType = 'FOREIGN'
} else {
this.replaceLawsNumForm.standType = '' // this.form.standInData === '1' ? 'FOREIGN' : 'INLAND'
}
this.$http.get('sarStandardsInfo/sar-standards-info/getSarStandardsInfoPage', this.replaceLawsNumForm, {
_this: this,
loading: 'replaceLoading'
}, res => {
this.replaceLawsNumRow = res.data.list
this.replaceTotal = res.data.count
if (this.selectedListRep.length !== 0) {
this.selectedListRep.map((list) => {
this.replaceLawsNumRow.map((item) => {
if (list.id === item.id) {
item._checked = true
}
})
})
}
}, e => {
})
},
beginImportFile(file) {
var filename = file.name
var index1 = filename.lastIndexOf('.')
var index2 = filename.length
var fileSuffix = filename.substring(index1, index2)
// const fileSuffix = file.name.split('.')[1] // 后缀名
// 判断上传文件格式
if (fileSuffix === '.pdf' || fileSuffix === '.PDF' || fileSuffix === '.ppt' || fileSuffix === '.PPT' || fileSuffix === '.pptx' || fileSuffix === '.PPTX' || fileSuffix === '.doc' || fileSuffix === '.DOC' || fileSuffix === '.docx' || fileSuffix === '.DOCX' || fileSuffix === '.zip' || fileSuffix === '.xls' || fileSuffix === '.xlsx') {
return true
} else {
this.spinShow = false
this.$message.error('文件' + file.name + '格式不正确,请上传PDF/PPT/PPTX/DOC/DOCX或XLS文件')
return false
}
// 判断文件上传大小
// eslint-disable-next-line no-unreachable
if (file.size / 1024 / 1024 <= 200) {
return true
} else {
this.$message.error('文件' + file.name + '大小不超过200M')
return false
}
return true
},
// 导入标准数据成功后执行
importFileSuccess(response, file, fileList) {
// 上传成功后判断是否是两条数据是的话替换掉旧数据
// if (fileList.length > 1) {
// this.fileList = fileList.splice(0, 1)
// }
if (response.ok) {
// this.fileMadel = false
// this.fileList = []
// if(this.fileType === 'fbgbjbd'){
// this.FBGBJBDFileList=fileList;
//
//
// this.form.fbgbjbd += response.data.id+',';
// if( this.form.fbgbjbdName=== undefined){
// this.form.fbgbjbdName=''
// }
// this.form.fbgbjbdName += response.data.name+',';
// }else if(this.fileType === 'xgd'){
// this.xgdFileList=fileList;
// this.form.xgd += response.data.id+',';
// if( this.form.xgdName=== undefined){
// this.form.xgdName=''
// }
// this.form.xgdName += response.data.name+',';
// }else if(this.fileType === 'bpg'){
// this.bpgFileList=fileList;
// this.form.bpg += response.data.id+',';
// if( this.form.bpgName=== undefined){
// this.form.bpgName=''
// }
// this.form.bpgName += response.data.name+',';
// }else if(this.fileType === 'ssg'){
// this.ssgFileList=fileList;
// this.form.ssg += response.data.id+',';
// if( this.form.ssgName=== undefined){
// this.form.ssgName=''
// }
// this.form.ssgName += response.data.name+',';
// }else if(this.fileType === 'zqyjg'){
// this.zqyjgFileList=fileList;
// this.form.zqyjg += response.data.id+',';
// if( this.form.zqyjgName=== undefined){
// this.form.zqyjgName=''
// }
// this.form.zqyjgName += response.data.name+',';
// }else if(this.fileType === 'jdwj'){
// this.jdwjFileList=fileList;
// this.form.jdwj += response.data.id+',';
// if( this.form.jdwjName=== undefined){
// this.form.jdwjName=''
// }
// this.form.jdwjName += response.data.name+',';
// }else if(this.fileType === 'kwj'){
// this.kwjFileList=fileList;
// this.form.kwj += response.data.id+',';
// if( this.form.kwjName=== undefined){
// this.form.kwjName=''
// }
// this.form.kwjName += response.data.name+',';
// }
// // else if(this.fileType === 'xgd'){
// // this.xgdFileList=fileList;
// // this.form.xgd += response.data.id+',';
// // this.form.xgdName += response.data.name+',';
// // }
// else if(this.fileType === 'glwj'){
// this.qlwjFileList=fileList;
// this.form.glwj += response.data.id+',';
// if( this.form.glwjName=== undefined){
// this.form.glwjName=''
// }
// this.form.glwjName += response.data.name+',';
// }else if(this.fileType === 'ca'){
// this.caFileList=fileList;
// console.log(this.caFieList)
// this.form.ca += response.data.id+',';
// if( this.form.caName=== undefined){
// this.form.caName=''
// }
// this.form.caName += response.data.name+',';
// }else if(this.fileType === 'zbjbd'){
// this.zbjbdFileList=fileList;
// this.form.zbjbd += response.data.id+',';
// if( this.form.zbjbdName=== undefined){
// this.form.zbjbdName=''
// }
// this.form.zbjbdName += response.data.name+',';
// }
switch (this.fileType) {
case 'fbgbjbd':
this.FBGBJBDFileList = fileList;
console.log("FBGJBDFileList", this.FBGBJBDFileList);
break;
case 'xgd' :
this.xgdFileList = fileList;
break;
case 'bpg':
this.bpgFileList = fileList;
break;
case 'ssg':
this.ssgFileList = fileList;
break;
case 'zqyjg':
this.zqyjgFileList = fileList;
break;
case 'jdwj':
this.jdwjFileList = fileList;
break;
case 'kwj':
this.kwjFileList = fileList;
break;
case 'xdb':
this.xdbFileList = fileList;
break;
case 'ca':
this.caFileList = fileList;
break;
case 'zbjbd':
this.zbjbdFileList = fileList
break;
case 'glwj':
this.glwjFileList = fileList
break
default :
;
}
this.$message({
showClose: true,
message: response.message,
type: 'success'
})
}
},
fileUpload(type) {
this.fileType = '';
// this.fileMadel = true;//此句应在最后执行,否则会有先显示没变换的的文件列表,在显示变换了的文件列表
this.fileType = type;
// if (type==='ca'){
// this.fileList=this.caFileList;
// }else if (type==='fbgbjbd'){
// this.fileList=this.FBGBJBDFileList;
// }else if (type==='xgd'){
// this.fileList=this.xgdFileList;
// }else if(type==='bpg'){
// this.fileList=this.bpgFileList;
// }else if (type==='ssg'){
// this.fileList=this.ssgFileList;
// }else if (type==='zqyjg'){
// this.fileList=this.zqyjgFileList;
// }else if (type==='jdwj'){
// this.fileList=this.jdwjFileList;
// }else if (type==='zbjbd'){
// this.fileList=this.zbjbdFileList;
// }else if (type==='kwj'){
// this.fileList=this.kwjFileList;
// }else if (type==='glwj'){
// this.fileList=this.qlwjFileList;
// }
switch (this.fileType) {
case 'fbgbjbd':
this.fileList = this.FBGBJBDFileList
break;
case 'xgd' :
this.fileList = this.xgdFileList
break;
case 'bpg':
this.fileList = this.bpgFileList
break;
case 'ssg':
this.fileList = this.ssgFileList
break;
case 'zqyjg':
this.fileList = this.zqyjgFileList
break;
case 'jdwj':
this.fileList = this.jdwjFileList
break;
case 'kwj':
this.fileList = this.kwjFileList
break;
case 'xdb':
this.fileList = this.xdbFileList
break;
case 'ca':
this.fileList = this.caFileList
break;
case 'zbjbd':
this.fileList = this.zbjbdFileList;
break;
case 'glwj':
this.fileList = this.glwjFileList;
break
default :
;
}
this.fileMadel = true;
},
removeOneFile(file, fileList) {
switch (this.fileType) {
case 'fbgbjbd':
this.FBGBJBDFileList = fileList;
break;
case 'xgd' :
this.xgdFileList = fileList;
break;
case 'bpg':
this.bpgFileList = fileList;
break;
case 'ssg':
this.ssgFileList = fileList;
break;
case 'zqyjg':
this.zqyjgFileList = fileList;
break;
case 'jdwj':
this.jdwjFileList = fileList;
break;
case 'kwj':
this.kwjFileList = fileList;
break;
case 'xdb':
this.xdbFileList = fileList;
break;
case 'ca':
this.caFileList = fileList;
break;
case 'zbjbd':
this.zbjbdFileList = fileList
break;
case 'glwj':
this.glwjFileList = fileList
break
default :
;
}
},
popoverHide(checkedIds, checkedData, isShow, isLoadChild, topId) {
if (checkedData) {
if (checkedData.length > 0 && checkedData.length != 0) {
this.form.standSystem = checkedData.map(item => item.menuName).join(",")
} else {
this.form.standSystem = checkedData.menuName
}
this.modalShowFlag1 = false
}
},
popoverHideCancel() {
this.modalShowFlag1 = false
},
popoverHideBusVs(checkedIds, checkedData, isShow, isLoadChild, topId) {
if (checkedData && checkedData.length != 0) {
if (checkedData.length > 0 && checkedData.length != 0) {
this.form.cycvppsbm = checkedData.map(item => item.code).join(",")
this.form.cycvppscn = checkedData.map(item => item.chineseName).join(",")
} else {
this.form.cycvppsbm = checkedData.code
this.form.cycvppscn = checkedData.chineseName
}
this.modalShowFlag2 = false
}
},
popoverHideBusVsCancel() {
this.modalShowFlag2 = false
},
popoverHideCarVs(checkedIds, checkedData, isShow, isLoadChild, topId) {
if (checkedData && checkedData.length != 0) {
if (checkedData.length > 0) {
this.form.kccvppsbm = checkedData.map(item => item.code).join(",")
this.form.kccvppscn = checkedData.map(item => item.chineseName).join(",")
} else {
this.form.kccvppsbm = checkedData.code
this.form.kccvppscn = checkedData.chineseName
}
this.modalShowFlag3 = false
}
},
popoverHideCarVsCancel() {
this.modalShowFlag3 = false
},
popoverHideModel(checkedIds, checkedData, isShow, isLoadChild, topId) {
if (checkedData && checkedData.length != 0) {
if (checkedData.length > 0) {
this.form.dybxh = checkedData.map(item => item.model).join(",")
this.form.dymc = checkedData.map(item => item.name).join(",")
} else {
this.form.dybxh = checkedData.model
this.form.dymc = checkedData.name
}
this.modalShowFlag4 = false
}
},
popoverHideModelCancel() {
this.modalShowFlag4 = false
},
closeDrawer() {
this.ListModel = false
},
OkDrawer() {
this.ListModel = false
var item = {
remarks: '123'
}
this.data.push(item)
},
addList() {
this.title = '新增标准'
this.ListModel = true
},
handleTabs(name) {
this.active = name
},
//保存
handleSave() {
//文件处理
this.fileInfoHandle();
this.form.country = this.countryArr;
// if(item.country !== undefined && item.country !== null){
// this.sarStandardsInfoEO.country = item.country.split(",");
// }
this.saveLoading = true
let _formData = new FormData()
_formData.append('id', this.bpnId || '')
_formData.append('createUser', this.$store.getters.userInfo.userId)
_formData.append('createUserName', this.$store.getters.userInfo.uName)
_formData.append('prcType', '1')
_formData.append('json', JSON.stringify({
// prcForm: this.prcForm,
// sarAccessInfoList: this.sarAccessInfoList,
// sarAccessInfoListADMIN: this.sarAccessInfoListADMIN,
// bzqdForm: this.bzqdForm,
// listInfo: this.listInfo,
// id: this.id
taskInfo: '申请人发起',
form: this.form,
roleForm: this.roleForm,
commentText: this.commentText
}))
saveTaskFirst(_formData).then(res => {
this.saveLoading = false
this.$message.success('保存成功')
this.bpnId = res.result
}).catch(e => {
this.saveLoading = false
})
},
fileInfoHandle() {
//拼接文件名和id 提交到流程Activity
this.form.fbgbjbd = this.FBGBJBDFileList.map(item => item.response.data.id).join(",")
this.form.fbgbjbdName = this.FBGBJBDFileList.map(item => item.name).join(",")
this.form.xgd = this.xgdFileList.map(item => item.response.data.id).join(",")
this.form.xgdName = this.xgdFileList.map(item => item.name).join(",")
this.form.bpg = this.bpgFileList.map(item => item.response.data.id).join(",")
this.form.bpgName = this.bpgFileList.map(item => item.name).join(",")
this.form.ssg = this.ssgFileList.map(item => item.response.data.id).join(",")
this.form.ssgName = this.ssgFileList.map(item => item.name).join(",")
this.form.zqyjg = this.zqyjgFileList.map(item => item.response.data.id).join(",")
this.form.zqyjgName = this.zqyjgFileList.map(item => item.name).join(",")
this.form.jdwj = this.jdwjFileList.map(item => item.response.data.id).join(",")
this.form.jdwjName = this.jdwjFileList.map(item => item.name).join(",")
this.form.kwj = this.kwjFileList.map(item => item.response.data.id).join(",")
this.form.kwjName = this.kwjFileList.map(item => item.name).join(",")
this.form.xdb = this.xdbFileList.map(item => item.response.data.id).join(",")
this.form.xdbName = this.xdbFileList.map(item => item.name).join(",")
this.form.ca = this.caFileList.map(item => item.response.data.id).join(",")
this.form.caName = this.caFileList.map(item => item.name).join(",")
this.form.zbjbd = this.zbjbdFileList.map(item => item.response.data.id).join(",")
this.form.zbjbdName = this.zbjbdFileList.map(item => item.name).join(",")
this.form.glwj = this.glwjFileList.map(item => item.response.data.id).join(",")
this.form.glwjName = this.glwjFileList.map(item => item.name).join(",")
},
handleSubmit() {
// this.form.country=this.countryArr;
this.$refs['form'].validate((valid) => {
if (valid) {
this.$refs['userForm'].validate((valid) => {
if (valid) {
this.fileInfoHandle()
this.isSubmit = true
this.form.country = this.countryArr;
var json = Object.assign(this.form, this.roleForm)
json.zrUserId = this.form.zrUserId
json.jlUserId = this.form.jlUserId
json.commentText = this.commentText
json.applyUpdUserId = this.form.applyUpdUserId
json.prcCreateUser = this.form.prcCreateUser
json.prcCreateUserName = this.form.prcCreateUserName
this.$http.post('lawss/activiti/startProcessRollBack', {
createUser: this.$store.getters.userInfo.userId,
createUserName: this.$store.getters.userInfo.uName,
json: JSON.stringify({
taskInfo: '申请人发起',
form: this.form,
roleForm: this.roleForm,
commentText: this.commentText
}),
type: '1',
}, {
_this: this
}, res => {
if (res.ok) {
this.$http.post('lawss/activiti/completeTask', {
taskIds: res.data,
userId: this.$store.getters.userInfo.userId,
json: JSON.stringify(json)
}, {
_this: this
}, res => {
if (res.success) {
this.$message.success(res.message)
this.isSubmit = false
if (this.bpnId !== '') {
let taskId = {
id: this.bpnId
}
taskDel(taskId).then(res => {
return res
})
}
// 流程提交之后,应该流转至待办任务页面
this.$router.push({path: '/processCenter?tabsName=ProcessCenter'})
} else {
this.isSubmit = false
}
})
} else {
this.isSubmit = false
}
})
} else {
this.$message.warning('请检查人员信息表单是否填写完整')
}
})
} else {
this.$message.warning('请检查基础信息表单是否填写完整')
}
})
},
busVsFunc() {
this.$http.get('sarVppsTree/list', '', {
_this: this
}, res => {
this.busVppsOptions = []
this.busVppsOptions = res.data
})
},
busVsChildFunc(id) {
this.$http.get('sarVppsTree/childByList', {id: id}, {
_this: this
}, res => {
this.busVppsChildOptions = []
this.busVppsChildOptions = res.data
})
},
modelFunc() {
this.$http.get('sarModelTree/list', '', {
_this: this
}, res => {
this.modelOptions = []
this.modelOptions = res.data
})
},
},
mounted() {
this.bpnId = this.$route.query.bpnId
if (this.bpnId !== undefined) {
this.getTaskId()
}
this.getTree()
this.$http.get('sys/dictype/getDicTypeListCode', '', {
_this: this
}, res => {
this.countryOptions = res.data.COUNTRY//国家地区
this.standSortOptions = res.data.STANDCLASSIFY // 标准类别
this.standNatureOptions = res.data.SARPROPERTY // 标准性质
this.standStateOptions = res.data.WBZTCLASS // 文本状态
this.standSystemOptions = res.data.BZTXCLASS // 标准体系
this.applyArcticOptions.options = res.data.ENERGYTYPES // 适用车型
this.categoryOptions.options = res.data.NYLXCLASS // 能源类型
this.applyAuthOptions.options = res.data.SYRZCLASS // 适用认证
this.cysdOptions = res.data.WSCYSD // 我司参与深度
this.cyzbpmOptions = res.data.CYZBPM // 我司参与制标排名
this.wssmrOptions = res.data.WSSMR // 我司署名人
this.sycpxOptions.options = res.data.SYCPXCLASS // 适用产品线
this.zrbmOptions.options = res.data.ZRBMCLASS // 责任部门
this.zrgcsOptions.options = res.data.ZRGCSCLASS // 责任工程师
this.qcdwOption = res.data.QCDW // 体系类别
this.gkglbmOptions = res.data.GKGLBM // 归口管理部门
this.cbcdOptions = res.data.DEGREESTANDARD // 采标程度
this.txlbOptions = res.data.TXLBCLASS // 体系类别
this.setMap(this.standStateOptions)
})
this.busVsFunc()
this.modelFunc()
}
}
</script>
<style lang="less" scoped>
@import '~@/assets/styles/style';
.bzrkStep1 {
/deep/ .el-button--mini.is-circle {
padding: 2px;
}
/deep/ .prc-content-border .form-item-disabled .el-form-item__content .el-input .el-input__inner {
width: 70%;
}
/deep/ .search-area {
display: contents;
flex-wrap: wrap;
justify-content: space-around;
}
/deep/ .el-upload-dragger {
background-color: #fff;
border: 1px dashed #d9d9d9;
border-radius: 6px;
box-sizing: border-box;
width: 360px;
height: 90px;
text-align: center;
position: relative;
overflow: hidden;
}
.fileClass {
width: 100%;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.prc-content-border {
/deep/ .el-input__inner {
padding-left: 30px;
}
}
/deep/ .el-dialog__body {
padding: 0 20px 10px;
color: #606266;
font-size: 14px;
word-break: break-all;
}
/deep/ .el-upload-list__item-name {
white-space: inherit;
}
/deep/ .el-upload-dragger .el-icon-upload {
margin: 10px 0 0 0;
}
/deep/ .el-drawer__container {
.prc-content-border {
border: none;
padding: 0 20px 0;
/deep/ .el-input__inner {
padding-left: 30px;
}
}
}
position: relative;
height: 100%;
.headerTabs {
height: 52px;
display: flex;
align-items: center;
position: absolute;
top: 0;
right: 10px;
.headerTabsItem {
border: 1px solid #c1c1c1;
padding: 0 5px;
height: 30px;
line-height: 30px;
cursor: pointer;
}
.active {
border: 1px solid #E6A23C;
color: #fff;
background: #E6A23C;
}
}
.content {
display: flex;
flex-direction: column;
justify-content: space-between;
height: calc(~'100% - 103px');
overflow: auto;
.tableTitle {
margin-bottom: 10px;
height: 30px;
line-height: 30px;
position: relative;
font-size: 13px;
font-weight: bold;
.tableButton {
position: absolute;
right: 0;
top: 0;
}
}
}
}
.standard-content {
height: 100%;
padding: 10px 0 0;
.content {
height: 100%;
display: flex;
flex-direction: column;
padding: 0 10px;
.standard-table-wrap {
flex: auto;
overflow-y: auto;
}
.pagination {
position: static;
/deep/ .pagination-slot {
padding: 0;
}
}
}
}
</style>