|
@@ -1,6 +1,6 @@
|
|
|
<template>
|
|
|
<div class="app-container">
|
|
|
- <card-table :modalData="libraryList" labelWidth="120px" :searchParams="queryParams" @pagination="getListNew" @selection-change="handleSelectionChange" :loading="loading"
|
|
|
+ <card-table :modalData="libraryList" labelWidth="120px" :searchParams="queryParams" @pagination="getListNew" @selection-change="handleSelectionChange" :loading="loading"
|
|
|
:tableSearch="true" @columnSearch="handleQuery" @resetList="resetQuery">
|
|
|
<template #operations="{ selections }">
|
|
|
<el-row :gutter="10" class="mb8">
|
|
@@ -11,34 +11,35 @@
|
|
|
size="mini"
|
|
|
@click="handleAdd"
|
|
|
v-hasPermi="['business:library:add']"
|
|
|
- >{{ $t('common.add') }}</el-button>
|
|
|
+ >{{ $t('common.add') }}
|
|
|
+ </el-button>
|
|
|
</el-col>
|
|
|
-<!-- <el-col :span="1.5">-->
|
|
|
-<!-- <el-button-->
|
|
|
-<!-- type="warning"-->
|
|
|
-<!-- plain-->
|
|
|
-<!-- icon="el-icon-upload2"-->
|
|
|
-<!-- size="mini"-->
|
|
|
-<!-- @click="handleExport"-->
|
|
|
-<!-- v-hasPermi="['business:library:export']"-->
|
|
|
-<!-- >{{ $t('common.export') }}</el-button>-->
|
|
|
-<!-- </el-col>-->
|
|
|
+ <!-- <el-col :span="1.5">-->
|
|
|
+ <!-- <el-button-->
|
|
|
+ <!-- type="warning"-->
|
|
|
+ <!-- plain-->
|
|
|
+ <!-- icon="el-icon-upload2"-->
|
|
|
+ <!-- size="mini"-->
|
|
|
+ <!-- @click="handleExport"-->
|
|
|
+ <!-- v-hasPermi="['business:library:export']"-->
|
|
|
+ <!-- >{{ $t('common.export') }}</el-button>-->
|
|
|
+ <!-- </el-col>-->
|
|
|
<el-col :span="1.5">
|
|
|
-<!-- <el-button
|
|
|
- type="warning"
|
|
|
- plain
|
|
|
- icon="el-icon-import"
|
|
|
- size="mini"
|
|
|
- @click="handleImport"
|
|
|
- v-hasPermi="['business:library:import']"
|
|
|
- >{{ $t('common.import') }}</el-button>-->
|
|
|
+ <!-- <el-button
|
|
|
+ type="warning"
|
|
|
+ plain
|
|
|
+ icon="el-icon-import"
|
|
|
+ size="mini"
|
|
|
+ @click="handleImport"
|
|
|
+ v-hasPermi="['business:library:import']"
|
|
|
+ >{{ $t('common.import') }}</el-button>-->
|
|
|
</el-col>
|
|
|
|
|
|
</el-row>
|
|
|
</template>
|
|
|
|
|
|
<template #default="{ list }">
|
|
|
- <el-table-column label="No" align="center" :min-width="50" fixed="left" >
|
|
|
+ <el-table-column label="No" align="center" :min-width="50" fixed="left">
|
|
|
<template slot-scope="scope">{{ scope.$index + 1 }}</template>
|
|
|
</el-table-column>
|
|
|
<Column :label="$t('elevatorModel.areaName')" :searchDict="areaOps" :showSearch="true" :labelProp="localLabel" :searchParams="queryParams"
|
|
@@ -47,10 +48,10 @@
|
|
|
<span>{{ changeLanguage(row.areaId) }}</span>
|
|
|
</template>
|
|
|
</Column>
|
|
|
- <Column :label="$t('elevatorModel.elevatorTypeName')" align="center" prop="elevatorType" :min-width="200" :searchDict="dict.type.elevator_type"
|
|
|
- :selectMore="true" :searchParams="queryParams" :showSearch="true" searchType="select">
|
|
|
+ <Column :label="$t('elevatorModel.elevatorTypeName')" align="center" prop="elevatorType" :min-width="200" :searchDict="dict.type.elevator_type"
|
|
|
+ :selectMore="true" :searchParams="queryParams" :showSearch="true" searchType="select">
|
|
|
<template #default="{ row }">
|
|
|
- <span>{{ formatDict(row.elevatorType,'elevator_type') }}</span>
|
|
|
+ <span>{{ formatDict(row.elevatorType, 'elevator_type') }}</span>
|
|
|
</template>
|
|
|
</Column>
|
|
|
<Column :label="$t('elevatorModel.elevatorModel')" align="center" prop="elevatorModel" :min-width="150" :searchParams="queryParams" :showSearch="true" searchType="input"/>
|
|
@@ -75,28 +76,31 @@
|
|
|
:close="getList" :defaultParams="{id:row.id}" buttonType="text"/>
|
|
|
|
|
|
<el-button size="mini" type="text" icon="el-icon-upload2"
|
|
|
- @click="handleExportCS(row)"
|
|
|
- >{{ $t('common.export') }}</el-button>
|
|
|
+ @click="handleExportCS(row)"
|
|
|
+ >{{ $t('common.export') }}
|
|
|
+ </el-button>
|
|
|
<el-button size="mini" type="text"
|
|
|
icon="el-icon-edit" @click="handleUpdate(row)"
|
|
|
- v-hasPermi="['business:elevator:edit']">{{ $t('common.edit') }}</el-button>
|
|
|
+ v-hasPermi="['business:elevator:edit']">{{ $t('common.edit') }}
|
|
|
+ </el-button>
|
|
|
<el-button size="mini" type="text"
|
|
|
icon="el-icon-s-unfold" @click="handleParam(row)"
|
|
|
- v-hasPermi="['business:elevator:paramInfo']">{{ $t('elevatorModel.areaParam') }}</el-button>
|
|
|
+ v-hasPermi="['business:elevator:paramInfo']">{{ $t('elevatorModel.areaParam') }}
|
|
|
+ </el-button>
|
|
|
|
|
|
- <el-dropdown size="mini" @command="(command) => handleCommand(command, row)">
|
|
|
+ <el-dropdown size="mini" @command="(command) => handleCommand(command, row)">
|
|
|
<el-button icon="el-icon-d-arrow-right" size="mini" type="text">{{ $t('common.more') }}</el-button>
|
|
|
<el-dropdown-menu slot="dropdown">
|
|
|
- <el-dropdown-item v-hasPermi="['business:elevator:getParamItemInfo']" command="handleSelect"
|
|
|
+ <el-dropdown-item v-hasPermi="['business:elevator:getParamItemInfo']" command="handleSelect"
|
|
|
size="mini" icon="el-icon-s-data">{{ $t('elevatorModel.selectItem') }}
|
|
|
</el-dropdown-item>
|
|
|
|
|
|
- <el-dropdown-item v-hasPermi="['business:elevator:getStantInfo']" command="handleStandard"
|
|
|
- size="mini" icon="el-icon-s-management">{{ $t('elevatorModel.paramStandard') }}
|
|
|
+ <el-dropdown-item v-hasPermi="['business:elevator:getStantInfo']" command="handleStandard"
|
|
|
+ size="mini" icon="el-icon-s-management">{{ $t('elevatorModel.paramStandard') }}
|
|
|
</el-dropdown-item>
|
|
|
|
|
|
- <el-dropdown-item v-hasPermi="['business:library:edit']" command="handleJGB"
|
|
|
- size="mini" icon="el-icon-document">{{ $t('elevatorModel.priceLine') }}
|
|
|
+ <el-dropdown-item v-hasPermi="['business:library:edit']" command="handleJGB"
|
|
|
+ size="mini" icon="el-icon-document">{{ $t('elevatorModel.priceLine') }}
|
|
|
</el-dropdown-item>
|
|
|
|
|
|
<el-dropdown-item v-hasPermi="['business:library:remove']" command="handleDelete"
|
|
@@ -105,18 +109,18 @@
|
|
|
</el-dropdown-menu>
|
|
|
</el-dropdown>
|
|
|
|
|
|
-<!-- <el-button size="mini" type="text"-->
|
|
|
-<!-- icon="el-icon-edit" @click="handleSelect(row)"-->
|
|
|
-<!-- v-hasPermi="['business:elevator:getParamItemInfo']">{{ $t('elevatorModel.selectItem') }}</el-button>-->
|
|
|
-<!-- <el-button size="mini" type="text"-->
|
|
|
-<!-- icon="el-icon-edit" @click="handleStandard(row)"-->
|
|
|
-<!-- v-hasPermi="['business:elevator:getStantInfo']">{{ $t('elevatorModel.paramStandard') }}</el-button>-->
|
|
|
-<!-- <el-button size="mini" type="text"-->
|
|
|
-<!-- icon="el-icon-edit" @click="handleJGB(row)"-->
|
|
|
-<!-- v-hasPermi="['business:library:edit']">{{ $t('elevatorModel.priceLine') }}</el-button>-->
|
|
|
-<!-- <el-button size="mini" type="text"-->
|
|
|
-<!-- icon="el-icon-delete" @click="handleDelete(row)"-->
|
|
|
-<!-- v-hasPermi="['business:library:remove']">{{ $t('common.delete') }}</el-button>-->
|
|
|
+ <!-- <el-button size="mini" type="text"-->
|
|
|
+ <!-- icon="el-icon-edit" @click="handleSelect(row)"-->
|
|
|
+ <!-- v-hasPermi="['business:elevator:getParamItemInfo']">{{ $t('elevatorModel.selectItem') }}</el-button>-->
|
|
|
+ <!-- <el-button size="mini" type="text"-->
|
|
|
+ <!-- icon="el-icon-edit" @click="handleStandard(row)"-->
|
|
|
+ <!-- v-hasPermi="['business:elevator:getStantInfo']">{{ $t('elevatorModel.paramStandard') }}</el-button>-->
|
|
|
+ <!-- <el-button size="mini" type="text"-->
|
|
|
+ <!-- icon="el-icon-edit" @click="handleJGB(row)"-->
|
|
|
+ <!-- v-hasPermi="['business:library:edit']">{{ $t('elevatorModel.priceLine') }}</el-button>-->
|
|
|
+ <!-- <el-button size="mini" type="text"-->
|
|
|
+ <!-- icon="el-icon-delete" @click="handleDelete(row)"-->
|
|
|
+ <!-- v-hasPermi="['business:library:remove']">{{ $t('common.delete') }}</el-button>-->
|
|
|
|
|
|
</template>
|
|
|
</Column>
|
|
@@ -124,13 +128,13 @@
|
|
|
</card-table>
|
|
|
|
|
|
<!-- 添加或修改参数配置对话框 -->
|
|
|
- <el-dialog :title="title" :visible.sync="open" top="5%" width="50%" append-to-body :close-on-click-modal="false">
|
|
|
+ <el-dialog :title="title" :visible.sync="open" top="5%" width="50%" :close-on-click-modal="false">
|
|
|
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
|
|
|
<el-row>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item :label="$t('elevatorModel.areaName')" prop="areaId">
|
|
|
<treeselect v-model="form.areaId" :flat="true" :options="areaTree" :noResultsText="$t('common.noResultsText')"
|
|
|
- :placeholder="$t('user.placeholder_area')" :show-count="true"
|
|
|
+ :placeholder="$t('user.placeholder_area')" :show-count="true" :append-to-body="true" :zIndex="999999"
|
|
|
@select=""/>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
@@ -165,37 +169,38 @@
|
|
|
</div>
|
|
|
</el-dialog>
|
|
|
<!--参数选配-->
|
|
|
- <el-dialog :title="title" :visible.sync="openXP" top="5%" width="70%" append-to-body :close-on-click-modal="false">
|
|
|
+ <el-dialog :title="title" :visible.sync="openXP" top="5%" width="70%" append-to-body :close-on-click-modal="false">
|
|
|
<el-form ref="formXP" :model="formXP" label-width="120px" v-if="openXP">
|
|
|
<el-row>
|
|
|
<el-col :span="8">
|
|
|
<Select :label="$t('elevatorModel.areaName')" prop="areaId" :labelProp="localLabel" valueProp="areaId" :data="areaOps" :placeholder="$t('common.pleaseSelect')" disabled/>
|
|
|
-<!-- <el-form-item :label="$t('elevatorModel.areaName')" prop="areaId">-->
|
|
|
-<!-- </el-form-item>-->
|
|
|
+ <!-- <el-form-item :label="$t('elevatorModel.areaName')" prop="areaId">-->
|
|
|
+ <!-- </el-form-item>-->
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
- <Select :showTip="true" :label="$t('elevatorModel.elevatorTypeName')" prop="elevatorType" :data="dict.type.elevator_type" :placeholder="$t('common.pleaseSelect')" disabled/>
|
|
|
+ <Select :showTip="true" :label="$t('elevatorModel.elevatorTypeName')" prop="elevatorType" :data="dict.type.elevator_type" :placeholder="$t('common.pleaseSelect')" disabled/>
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
<el-form-item :label="$t('elevatorModel.elevatorModel')" prop="elevatorModel">
|
|
|
- <el-input v-model="formXP.elevatorModel" :placeholder="$t('common.pleaseInput')" disabled />
|
|
|
+ <el-input v-model="formXP.elevatorModel" :placeholder="$t('common.pleaseInput')" disabled/>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
- <el-row><el-col :span="24" style="padding-left: 80px">
|
|
|
- <h3>{{ $t('elevatorModel.paramSelect') + ':'}}</h3>
|
|
|
- <el-select v-model="transferQuery" placeholder="请选择" @change="changeQuery" allow-create filterable style="margin-bottom: 5px">
|
|
|
- <el-option
|
|
|
- v-for="item in transferQueryOpt"
|
|
|
- :key="item.value"
|
|
|
- :label="item.label"
|
|
|
- :value="item.value">
|
|
|
- </el-option>
|
|
|
- </el-select>
|
|
|
- <el-transfer class="paraSelect" ref="paraSelect" v-model="paraSelectList"
|
|
|
- :data="paraLibraryListOpt"
|
|
|
- :titles="[$t('elevatorModel.allParam'), $t('elevatorModel.isSelect')]"
|
|
|
- :filterable="true">
|
|
|
+ <el-row>
|
|
|
+ <el-col :span="24" style="padding-left: 80px">
|
|
|
+ <h3>{{ $t('elevatorModel.paramSelect') + ':' }}</h3>
|
|
|
+ <el-select v-model="transferQuery" placeholder="请选择" @change="changeQuery" allow-create filterable style="margin-bottom: 5px">
|
|
|
+ <el-option
|
|
|
+ v-for="item in transferQueryOpt"
|
|
|
+ :key="item.value"
|
|
|
+ :label="item.label"
|
|
|
+ :value="item.value">
|
|
|
+ </el-option>
|
|
|
+ </el-select>
|
|
|
+ <el-transfer class="paraSelect" ref="paraSelect" v-model="paraSelectList"
|
|
|
+ :data="paraLibraryListOpt"
|
|
|
+ :titles="[$t('elevatorModel.allParam'), $t('elevatorModel.isSelect')]"
|
|
|
+ :filterable="true">
|
|
|
<span slot-scope="{ option }">
|
|
|
<el-tooltip
|
|
|
class="item"
|
|
@@ -205,8 +210,8 @@
|
|
|
<span>{{ option.label }}</span>
|
|
|
</el-tooltip>
|
|
|
</span>
|
|
|
- </el-transfer>
|
|
|
- </el-col>
|
|
|
+ </el-transfer>
|
|
|
+ </el-col>
|
|
|
</el-row>
|
|
|
</el-form>
|
|
|
<div slot="footer" class="dialog-footer">
|
|
@@ -228,7 +233,7 @@
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
<el-form-item :label="$t('elevatorModel.elevatorModel')" prop="elevatorModel">
|
|
|
- <el-input v-model="formSelectOpt.elevatorModel" :placeholder="$t('common.pleaseInput')" disabled />
|
|
|
+ <el-input v-model="formSelectOpt.elevatorModel" :placeholder="$t('common.pleaseInput')" disabled/>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
@@ -244,7 +249,7 @@
|
|
|
<el-tabs type="border-card" v-else style="box-shadow: unset">
|
|
|
<el-tab-pane v-for="item in formSelectOpt.tabsList" :label="getParaLabel(item.paraCategory)" style="height: 440px;overflow: auto">
|
|
|
<el-col :span="12" style="padding-left: 80px" v-for="para in item.paraSelect">
|
|
|
- <h3>{{ para[localParaLabel]}}</h3>
|
|
|
+ <h3>{{ para[localParaLabel] }}</h3>
|
|
|
<el-transfer v-model="para.paraAreaSelectList"
|
|
|
:data="para.paraSelectListOpt"
|
|
|
:titles="[$t('elevatorModel.allParam'), $t('elevatorModel.isSelect')]"
|
|
@@ -285,7 +290,7 @@
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
<el-form-item :label="$t('elevatorModel.elevatorModel')" prop="elevatorModel">
|
|
|
- <el-input v-model="formStand.elevatorModel" :placeholder="$t('common.pleaseInput')" disabled />
|
|
|
+ <el-input v-model="formStand.elevatorModel" :placeholder="$t('common.pleaseInput')" disabled/>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
@@ -298,19 +303,19 @@
|
|
|
<el-tabs type="border-card" v-else style="box-shadow: unset">
|
|
|
<el-tab-pane v-for="item in formStand.tabsList" :label="getParaLabel(item.paraCategory)" style="height: 440px;overflow: auto">
|
|
|
<el-col :span="8" style="" v-for="para in item.paraSelect">
|
|
|
-<!-- <h3>{{ para[localParaLabel]}}</h3>-->
|
|
|
- <el-form-item :label="para.inputType == '05' ? ' ':para[localParaLabel]" label-width="150px" class="stand-input">
|
|
|
-<!-- 根据类型,普通输入00 / 数字输入01 /下拉框02 /小数下拉框03 /04可输入下拉框 -->
|
|
|
+ <!-- <h3>{{ para[localParaLabel]}}</h3>-->
|
|
|
+ <el-form-item :label="para.inputType == '05' ? ' ':para[localParaLabel]" label-width="150px" class="stand-input">
|
|
|
+ <!-- 根据类型,普通输入00 / 数字输入01 /下拉框02 /小数下拉框03 /04可输入下拉框 -->
|
|
|
|
|
|
<el-input v-if="para.inputType == '00'" :label="para[localParaLabel]" clearable
|
|
|
v-model.trim="para.paraDefaultValue" :placeholder="$t('common.pleaseInput')" @change="changeEditFlag(para)"/>
|
|
|
|
|
|
<el-input-number v-if="para.inputType == '01'" v-model="para.paraDefaultValue" :placeholder="$t('common.pleaseInput')" clearable
|
|
|
- style="text-align: left"
|
|
|
+ style="text-align: left"
|
|
|
:min="0" :max="99999" :precision="0" :controls="false" @change="changeEditFlag(para)"/>
|
|
|
|
|
|
<el-select v-if="para.inputType == '02'" v-model="para.paraDefaultValue" :placeholder="$t('common.pleaseSelect')"
|
|
|
- @change="value=>setSelectId(value,para)" clearable >
|
|
|
+ @change="value=>setSelectId(value,para)" clearable>
|
|
|
<el-option
|
|
|
v-for="item in para.selectItemList"
|
|
|
:key="item.value"
|
|
@@ -350,7 +355,6 @@
|
|
|
</el-row>
|
|
|
|
|
|
|
|
|
-
|
|
|
</el-form>
|
|
|
<div slot="footer" class="dialog-footer">
|
|
|
<el-button icon="el-icon-circle-check" type="primary" @click="submitStandForm" :disabled="formStand.tabsList && formStand.tabsList.length==0">{{ $t('common.confirm') }}</el-button>
|
|
@@ -370,7 +374,7 @@
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
<el-form-item :label="$t('elevatorModel.elevatorModel')" prop="elevatorModel">
|
|
|
- <el-input v-model="formJGB.elevatorModel" :placeholder="$t('common.pleaseInput')" disabled />
|
|
|
+ <el-input v-model="formJGB.elevatorModel" :placeholder="$t('common.pleaseInput')" disabled/>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
@@ -384,7 +388,7 @@
|
|
|
<el-row>
|
|
|
<el-tabs type="border-card">
|
|
|
<el-tab-pane :label=" $t('elevatorModel.JJManage')" style="height: 540px;overflow: auto">
|
|
|
- <el-col :span="12" style="padding-left: 0px;margin-bottom: 10px" >
|
|
|
+ <el-col :span="12" style="padding-left: 0px;margin-bottom: 10px">
|
|
|
<h3>基础价格</h3>
|
|
|
<el-button @click="cancel">{{ }}新增行</el-button>
|
|
|
<el-button @click="cancel">{{ }}删除行</el-button>
|
|
@@ -401,19 +405,19 @@
|
|
|
max-height="520px"
|
|
|
:border="true"
|
|
|
:header-cell-style="{'background-color':'#F4F6F8','border-right':'1px solid #dfdcdc','color':'#92A2B5'}">
|
|
|
- <el-table-column type="selection" width="55" align="center" />
|
|
|
+ <el-table-column type="selection" width="55" align="center"/>
|
|
|
<el-table-column prop="ratedLoadCapacity" label="额定载重(kg)" width="200px">
|
|
|
<template slot-scope="scope">
|
|
|
<el-input-number v-model="scope.row.ratedLoadCapacity" style="width: 92%;"
|
|
|
:disabled="disabled" :min="0" :max="99999"
|
|
|
- :precision="2" class="custom-number" />
|
|
|
+ :precision="2" class="custom-number"/>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column prop="ratedSpeed" label="额定速度(m/s)" width="200px">
|
|
|
<template slot-scope="scope">
|
|
|
<el-input-number v-model="scope.row.ratedSpeed" style="width: 92%;"
|
|
|
:disabled="disabled" :min="0" :max="99999"
|
|
|
- :precision="2" class="custom-number" />
|
|
|
+ :precision="2" class="custom-number"/>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<InputNumberColumn prop="standardDoorWidth" label="开门宽"/>
|
|
@@ -426,7 +430,7 @@
|
|
|
</el-table>
|
|
|
</el-tab-pane>
|
|
|
<el-tab-pane :label=" $t('elevatorModel.XPManage')" style="height: 540px;overflow: auto">
|
|
|
- <el-col :span="12" style="padding-left: 80px" >
|
|
|
+ <el-col :span="12" style="padding-left: 80px">
|
|
|
<h3>选配项目</h3>
|
|
|
<el-table
|
|
|
ref="table"
|
|
@@ -439,7 +443,7 @@
|
|
|
max-height="520px"
|
|
|
:border="true"
|
|
|
:header-cell-style="{'background-color':'#F4F6F8','border-right':'1px solid #dfdcdc','color':'#92A2B5'}">
|
|
|
- <el-table-column type="selection" width="55" align="center" />
|
|
|
+ <el-table-column type="selection" width="55" align="center"/>
|
|
|
<el-table-column prop="contactName" :label="$t('contact.name')" width="200px">
|
|
|
<template slot-scope="scope">
|
|
|
<el-input v-model.trim="scope.row.contactName" :disabled="type == 'view'"
|
|
@@ -468,12 +472,12 @@
|
|
|
|
|
|
|
|
|
<script>
|
|
|
-import { listModel, getModel, delModel, addModel, updateModel, changeEleStatus,getArea,listModelNew,getModelParam,getModelSelecItem,getModelStandItem,getModelJgbInfo,delModelCheck } from "@/api/business/crm/elevatorModel.js";
|
|
|
-import { updateModelParam } from "@/api/business/crm/areaPara.js";
|
|
|
-import { updateModelSelect } from "@/api/business/crm/areaSelectItem.js";
|
|
|
-import { updateModelStand } from "@/api/business/crm/standard.js";
|
|
|
+import {listModel, getModel, delModel, addModel, updateModel, changeEleStatus, getArea, listModelNew, getModelParam, getModelSelecItem, getModelStandItem, getModelJgbInfo, delModelCheck} from "@/api/business/crm/elevatorModel.js";
|
|
|
+import {updateModelParam} from "@/api/business/crm/areaPara.js";
|
|
|
+import {updateModelSelect} from "@/api/business/crm/areaSelectItem.js";
|
|
|
+import {updateModelStand} from "@/api/business/crm/standard.js";
|
|
|
|
|
|
-import { listLibrary } from "@/api/business/crm/paralibrary/library.js";
|
|
|
+import {listLibrary} from "@/api/business/crm/paralibrary/library.js";
|
|
|
|
|
|
import ImportModal from "../../../components/ImportModal/index";
|
|
|
import Treeselect from "@riophae/vue-treeselect";
|
|
@@ -482,11 +486,12 @@ import {getCountryByAreaId} from "@/api/system/user";
|
|
|
import {getAreaTree} from "@/api/common/common";
|
|
|
import InputColumn from "../../../components/element/table/InputColumn";
|
|
|
import InputNumberColumn from "../../../components/element/table/InputNumberColumn";
|
|
|
-import { downloadTemplate } from '@/api/excel'
|
|
|
+import {downloadTemplate} from '@/api/excel'
|
|
|
+
|
|
|
export default {
|
|
|
name: "ElevatorModel",
|
|
|
- components:{InputNumberColumn, InputColumn, Treeselect, ImportModal},
|
|
|
- dicts: ['input_type','para_category','elevator_type','status_switch'],
|
|
|
+ components: {InputNumberColumn, InputColumn, Treeselect, ImportModal},
|
|
|
+ dicts: ['input_type', 'para_category', 'elevator_type', 'status_switch'],
|
|
|
data() {
|
|
|
return {
|
|
|
// 遮罩层
|
|
@@ -518,7 +523,7 @@ export default {
|
|
|
},
|
|
|
// 表单参数
|
|
|
form: {
|
|
|
- areaId:null,
|
|
|
+ areaId: null,
|
|
|
areaName: null,
|
|
|
elevatorType: null,
|
|
|
elevatorModel: null,
|
|
@@ -526,58 +531,56 @@ export default {
|
|
|
status: null,
|
|
|
},
|
|
|
// 表单校验
|
|
|
- rules:{
|
|
|
- areaId:[
|
|
|
- {required:true, message: this.$t('common.pleaseSelect')+this.$t('elevatorModel.areaName'), trigger:'blur'}
|
|
|
+ rules: {
|
|
|
+ areaId: [
|
|
|
+ {required: true, message: this.$t('common.pleaseSelect') + this.$t('elevatorModel.areaName'), trigger: 'blur'}
|
|
|
],
|
|
|
- elevatorType:[
|
|
|
- {required:true, message: this.$t('common.pleaseSelect')+this.$t('elevatorModel.elevatorTypeName'), trigger:'blur'}
|
|
|
+ elevatorType: [
|
|
|
+ {required: true, message: this.$t('common.pleaseSelect') + this.$t('elevatorModel.elevatorTypeName'), trigger: 'blur'}
|
|
|
],
|
|
|
- elevatorModel:[
|
|
|
- {required:true, message: this.$t('common.pleaseInput')+this.$t('elevatorModel.elevatorModel'), trigger:'blur'}
|
|
|
+ elevatorModel: [
|
|
|
+ {required: true, message: this.$t('common.pleaseInput') + this.$t('elevatorModel.elevatorModel'), trigger: 'blur'}
|
|
|
],
|
|
|
- status:[
|
|
|
- {required:true, message: this.$t('common.pleaseSelect')+this.$t('elevatorModel.status'), trigger:'blur'}
|
|
|
+ status: [
|
|
|
+ {required: true, message: this.$t('common.pleaseSelect') + this.$t('elevatorModel.status'), trigger: 'blur'}
|
|
|
],
|
|
|
- remark:[
|
|
|
- {required:true, message: this.$t('common.pleaseInput')+this.$t('elevatorModel.remark'), trigger:'blur'}
|
|
|
+ remark: [
|
|
|
+ {required: true, message: this.$t('common.pleaseInput') + this.$t('elevatorModel.remark'), trigger: 'blur'}
|
|
|
],
|
|
|
},
|
|
|
- selections:[],
|
|
|
+ selections: [],
|
|
|
// 地区下拉
|
|
|
areaOps: [],
|
|
|
// 地区树
|
|
|
areaTree: [],
|
|
|
- localLabel:"",
|
|
|
- localParaLabel:'',
|
|
|
- localSelectLabel:"",
|
|
|
+ localLabel: "",
|
|
|
+ localParaLabel: '',
|
|
|
+ localSelectLabel: "",
|
|
|
//参数选配
|
|
|
- openXP:false,
|
|
|
+ openXP: false,
|
|
|
//参数下拉选项
|
|
|
- openSelectOpt:false,
|
|
|
- openStand:false,
|
|
|
- openJGB:false,
|
|
|
+ openSelectOpt: false,
|
|
|
+ openStand: false,
|
|
|
+ openJGB: false,
|
|
|
//穿梭框选择集合
|
|
|
- paraLibraryList:[],
|
|
|
+ paraLibraryList: [],
|
|
|
//穿梭框选中集合
|
|
|
- paraAreaSelectList:[],
|
|
|
- paraSelectListOpt:[],
|
|
|
- paraLibraryListOpt:[],
|
|
|
- formXP:{},
|
|
|
- formSelectOpt:{},
|
|
|
- formStand:{},
|
|
|
- formJGB:{},
|
|
|
- tabsList:[{
|
|
|
-
|
|
|
- }],
|
|
|
- paraSelectList:[],
|
|
|
- transferQuery:"",
|
|
|
- transferQueryOpt:[],
|
|
|
- JJData:[],
|
|
|
- JJLoading:false,
|
|
|
- selectionsJGB:[],
|
|
|
- localDictLabel:"",
|
|
|
- exportLoading:true
|
|
|
+ paraAreaSelectList: [],
|
|
|
+ paraSelectListOpt: [],
|
|
|
+ paraLibraryListOpt: [],
|
|
|
+ formXP: {},
|
|
|
+ formSelectOpt: {},
|
|
|
+ formStand: {},
|
|
|
+ formJGB: {},
|
|
|
+ tabsList: [{}],
|
|
|
+ paraSelectList: [],
|
|
|
+ transferQuery: "",
|
|
|
+ transferQueryOpt: [],
|
|
|
+ JJData: [],
|
|
|
+ JJLoading: false,
|
|
|
+ selectionsJGB: [],
|
|
|
+ localDictLabel: "",
|
|
|
+ exportLoading: true
|
|
|
};
|
|
|
},
|
|
|
created() {
|
|
@@ -591,9 +594,9 @@ export default {
|
|
|
/** 导出按钮操作 */
|
|
|
handleExportCS(row) {
|
|
|
this.loading = true
|
|
|
- const fileName = this.changeLanguage(row.areaId)+"_"+row.elevatorModel+'_梯型参数_' + this.parseTime(new Date(), '{y}{m}{d}') + '.xlsx'
|
|
|
- downloadTemplate({ tableType: 7, elevatorModelId: row.id, withData: true, downloadFileName: fileName }).then(response => {
|
|
|
- if(response){
|
|
|
+ const fileName = this.changeLanguage(row.areaId) + "_" + row.elevatorModel + '_梯型参数_' + this.parseTime(new Date(), '{y}{m}{d}') + '.xlsx'
|
|
|
+ downloadTemplate({tableType: 7, elevatorModelId: row.id, withData: true, downloadFileName: fileName}).then(response => {
|
|
|
+ if (response) {
|
|
|
this.$modal.msgError('导出失败');
|
|
|
}
|
|
|
}).finally(() => this.loading = false)
|
|
@@ -621,15 +624,15 @@ export default {
|
|
|
}
|
|
|
},
|
|
|
//设置输入类型下拉框
|
|
|
- setInputType(){
|
|
|
+ setInputType() {
|
|
|
let dicts = JSON.parse(JSON.stringify(this.dict.type.para_category))
|
|
|
- dicts.some(item=>{
|
|
|
+ dicts.some(item => {
|
|
|
item.value = item.label
|
|
|
})
|
|
|
- this.transferQueryOpt = dicts
|
|
|
+ this.transferQueryOpt = dicts
|
|
|
},
|
|
|
- changeQuery(val){
|
|
|
- if(!val||val == ""){
|
|
|
+ changeQuery(val) {
|
|
|
+ if (!val || val == "") {
|
|
|
val = this.transferQueryOpt[0].value
|
|
|
}
|
|
|
this.$refs.paraSelect.$refs.leftPanel.query = val;
|
|
@@ -659,7 +662,7 @@ export default {
|
|
|
this.openXP = false;
|
|
|
this.openSelectOpt = false;
|
|
|
this.openStand = false;
|
|
|
- this.openJGB= false;
|
|
|
+ this.openJGB = false;
|
|
|
this.reset();
|
|
|
this.resetXP()
|
|
|
this.resetSelectOpt()
|
|
@@ -685,20 +688,20 @@ export default {
|
|
|
},
|
|
|
/** 重置按钮操作 */
|
|
|
resetQuery() {
|
|
|
- this.queryParams.pageNum= 1;
|
|
|
- this.queryParams.pageSize= 10;
|
|
|
- this.queryParams.areaName= null;
|
|
|
- this.queryParams.elevatorType= null;
|
|
|
- this.queryParams.remark= null;
|
|
|
- this.queryParams.elevatorModel= null;
|
|
|
- this.queryParams.status= null;
|
|
|
- this.queryParams.areaId= [];
|
|
|
+ this.queryParams.pageNum = 1;
|
|
|
+ this.queryParams.pageSize = 10;
|
|
|
+ this.queryParams.areaName = null;
|
|
|
+ this.queryParams.elevatorType = null;
|
|
|
+ this.queryParams.remark = null;
|
|
|
+ this.queryParams.elevatorModel = null;
|
|
|
+ this.queryParams.status = null;
|
|
|
+ this.queryParams.areaId = [];
|
|
|
this.getList();
|
|
|
},
|
|
|
// 多选框选中数据
|
|
|
handleSelectionChange(selection) {
|
|
|
this.ids = selection.map(item => item.id)
|
|
|
- this.single = selection.length!==1
|
|
|
+ this.single = selection.length !== 1
|
|
|
this.multiple = !selection.length
|
|
|
this.selections = selection
|
|
|
},
|
|
@@ -741,14 +744,15 @@ export default {
|
|
|
/** 删除按钮操作 */
|
|
|
handleDelete(row) {
|
|
|
const ids = row.id || this.ids;
|
|
|
- this.$modal.confirm(this.$t('common.isDelete')).then(function() {
|
|
|
+ this.$modal.confirm(this.$t('common.isDelete')).then(function () {
|
|
|
// return delModel(ids);
|
|
|
debugger
|
|
|
return delModelCheck([row]);
|
|
|
}).then(() => {
|
|
|
this.getList();
|
|
|
this.$modal.msgSuccess(this.$t('common.deleteSuccess'));
|
|
|
- }).catch(() => {});
|
|
|
+ }).catch(() => {
|
|
|
+ });
|
|
|
},
|
|
|
/** 导出按钮操作 */
|
|
|
handleExport() {
|
|
@@ -758,26 +762,27 @@ export default {
|
|
|
}, `library_${new Date().getTime()}.xlsx`)
|
|
|
},
|
|
|
/** 导入按钮操作 */
|
|
|
- handleImport() { },
|
|
|
+ handleImport() {
|
|
|
+ },
|
|
|
|
|
|
// 字典值format
|
|
|
- formatDict(value,dictType){
|
|
|
+ formatDict(value, dictType) {
|
|
|
let labelStr = '';
|
|
|
- for(let i =0;i< this.dict.type[dictType].length;i++){
|
|
|
+ for (let i = 0; i < this.dict.type[dictType].length; i++) {
|
|
|
let item = this.dict.type[dictType][i]
|
|
|
- if(item.value == value){
|
|
|
+ if (item.value == value) {
|
|
|
labelStr = item.label;
|
|
|
break;
|
|
|
}
|
|
|
}
|
|
|
- return labelStr;
|
|
|
+ return labelStr;
|
|
|
},
|
|
|
// 参数状态修改
|
|
|
handleStatusChange(row) {
|
|
|
let text = row.status === "0" ? this.$t('common.enableSuccess') : this.$t('common.deactivatSuccess');
|
|
|
- let conformMsg = row.status === "0" ? this.$t('common.enableConfirmMsg') : this.$t('common.deactivatConfirmMsg');
|
|
|
- this.$modal.confirm(conformMsg + this.$t('elevatorModel.elevatorModel') +'=' + row.elevatorModel).then(function () {
|
|
|
- return changeEleStatus(row.id, row.status,row.updateTime);
|
|
|
+ let conformMsg = row.status === "0" ? this.$t('common.enableConfirmMsg') : this.$t('common.deactivatConfirmMsg');
|
|
|
+ this.$modal.confirm(conformMsg + this.$t('elevatorModel.elevatorModel') + '=' + row.elevatorModel).then(function () {
|
|
|
+ return changeEleStatus(row.id, row.status, row.updateTime);
|
|
|
}).then(() => {
|
|
|
this.$modal.msgSuccess(text);
|
|
|
this.getList();
|
|
@@ -802,35 +807,39 @@ export default {
|
|
|
this.areaOps = response.data;
|
|
|
},
|
|
|
//设置本地语音label
|
|
|
- setLabel(){
|
|
|
+ setLabel() {
|
|
|
let currentLocale = window.VueI18n.locale;
|
|
|
switch (currentLocale) {
|
|
|
- case "chinese": this.localLabel ="areaName"
|
|
|
- this.localParaLabel ="paraName"
|
|
|
- this.localSelectLabel ="label"
|
|
|
- this.localDictLabel ="dict_label"
|
|
|
+ case "chinese":
|
|
|
+ this.localLabel = "areaName"
|
|
|
+ this.localParaLabel = "paraName"
|
|
|
+ this.localSelectLabel = "label"
|
|
|
+ this.localDictLabel = "dict_label"
|
|
|
break
|
|
|
- case "english": this.localLabel ="areaNameUS"
|
|
|
- this.localParaLabel ="paraNameUS"
|
|
|
- this.localSelectLabel ="labelUS"
|
|
|
- this.localDictLabel ="dict_labelUS"
|
|
|
+ case "english":
|
|
|
+ this.localLabel = "areaNameUS"
|
|
|
+ this.localParaLabel = "paraNameUS"
|
|
|
+ this.localSelectLabel = "labelUS"
|
|
|
+ this.localDictLabel = "dict_labelUS"
|
|
|
break
|
|
|
- case "russia": this.localLabel ="areaNameRU"
|
|
|
- this.localParaLabel ="paraNameRU"
|
|
|
- this.localSelectLabel ="labelRU"
|
|
|
- this.localDictLabel ="dict_labelRU"
|
|
|
+ case "russia":
|
|
|
+ this.localLabel = "areaNameRU"
|
|
|
+ this.localParaLabel = "paraNameRU"
|
|
|
+ this.localSelectLabel = "labelRU"
|
|
|
+ this.localDictLabel = "dict_labelRU"
|
|
|
break
|
|
|
- case "spanish": this.localLabel ="areaNameES"
|
|
|
- this.localParaLabel ="paraNameES"
|
|
|
- this.localSelectLabel ="labelES"
|
|
|
- this.localDictLabel ="dict_labelES"
|
|
|
+ case "spanish":
|
|
|
+ this.localLabel = "areaNameES"
|
|
|
+ this.localParaLabel = "paraNameES"
|
|
|
+ this.localSelectLabel = "labelES"
|
|
|
+ this.localDictLabel = "dict_labelES"
|
|
|
break
|
|
|
}
|
|
|
},
|
|
|
//改变语言
|
|
|
- changeLanguage(id){
|
|
|
- let res = this.selectLabelList(this.areaOps,id,this.localLabel,"areaId");
|
|
|
- return res?res:"-"
|
|
|
+ changeLanguage(id) {
|
|
|
+ let res = this.selectLabelList(this.areaOps, id, this.localLabel, "areaId");
|
|
|
+ return res ? res : "-"
|
|
|
},
|
|
|
//跳转
|
|
|
jump() {
|
|
@@ -843,26 +852,26 @@ export default {
|
|
|
async handleParam(row) {
|
|
|
this.setInputType();
|
|
|
//处理数据让他成为穿梭框数据
|
|
|
- this.paraLibraryListOpt = this.changeTransfer(this.paraLibraryList.filter(it=> it.elevatorType === row.elevatorType),this.localParaLabel,"id")
|
|
|
+ this.paraLibraryListOpt = this.changeTransfer(this.paraLibraryList.filter(it => it.elevatorType === row.elevatorType), this.localParaLabel, "id")
|
|
|
|
|
|
this.resetXP();
|
|
|
const id = row.id || this.ids
|
|
|
const response = await getModelParam(id);
|
|
|
- if(response.data){
|
|
|
+ if (response.data) {
|
|
|
//处理数据,赋值为穿梭框选中集合
|
|
|
this.formXP = response.data;
|
|
|
- if(this.formXP.paraSelect){
|
|
|
+ if (this.formXP.paraSelect) {
|
|
|
//已经保存过了
|
|
|
- this.paraSelectList = this.formXP.paraSelect.map(it=>it.paramId)
|
|
|
+ this.paraSelectList = this.formXP.paraSelect.map(it => it.paramId)
|
|
|
}
|
|
|
}
|
|
|
this.openXP = true;
|
|
|
this.title = this.$t('elevatorModel.XPParameter');
|
|
|
|
|
|
- setTimeout(()=>{
|
|
|
+ setTimeout(() => {
|
|
|
this.transferQuery = this.transferQueryOpt[0].value;
|
|
|
- this.$refs.paraSelect.$refs.leftPanel.query = this.transferQuery;
|
|
|
- },200)
|
|
|
+ this.$refs.paraSelect.$refs.leftPanel.query = this.transferQuery;
|
|
|
+ }, 200)
|
|
|
|
|
|
},
|
|
|
//参数选项
|
|
@@ -872,17 +881,17 @@ export default {
|
|
|
const response = await getModelSelecItem(id);
|
|
|
//处理数据,赋值为穿梭框选中集合
|
|
|
this.formSelectOpt = response.data;
|
|
|
- if(!this.formSelectOpt.tabsList){
|
|
|
+ if (!this.formSelectOpt.tabsList) {
|
|
|
//设定不能保存
|
|
|
}
|
|
|
this.openSelectOpt = true;
|
|
|
this.title = this.$t('elevatorModel.optSet');
|
|
|
},
|
|
|
//选配参数一键全选
|
|
|
- selectAll(){
|
|
|
- this.formSelectOpt.tabsList.some(it=>{
|
|
|
- it.paraSelect.some(sel=>{
|
|
|
- sel.paraAreaSelectList = sel.paraSelectListOpt.map(item=>item.key)
|
|
|
+ selectAll() {
|
|
|
+ this.formSelectOpt.tabsList.some(it => {
|
|
|
+ it.paraSelect.some(sel => {
|
|
|
+ sel.paraAreaSelectList = sel.paraSelectListOpt.map(item => item.key)
|
|
|
sel.operationFlag = 2
|
|
|
})
|
|
|
})
|
|
@@ -894,7 +903,7 @@ export default {
|
|
|
elevatorModel: null,
|
|
|
remark: null,
|
|
|
status: null,
|
|
|
- paraSelect:[],
|
|
|
+ paraSelect: [],
|
|
|
}
|
|
|
this.paraSelectList = []
|
|
|
},
|
|
@@ -905,7 +914,7 @@ export default {
|
|
|
elevatorModel: null,
|
|
|
remark: null,
|
|
|
status: null,
|
|
|
- TabsList:[],
|
|
|
+ TabsList: [],
|
|
|
}
|
|
|
},
|
|
|
resetStand() {
|
|
@@ -915,15 +924,15 @@ export default {
|
|
|
elevatorModel: null,
|
|
|
remark: null,
|
|
|
status: null,
|
|
|
- tabsList:[],
|
|
|
+ tabsList: [],
|
|
|
}
|
|
|
},
|
|
|
//获取全部的参数列表
|
|
|
getParamLibraryList() {
|
|
|
let params;
|
|
|
params = {
|
|
|
- pageNum:0,
|
|
|
- pageSize:0,
|
|
|
+ pageNum: 0,
|
|
|
+ pageSize: 0,
|
|
|
status: 0,
|
|
|
};
|
|
|
listLibrary(params).then(response => {
|
|
@@ -946,15 +955,15 @@ export default {
|
|
|
//只有更新
|
|
|
//新增之前处理数据
|
|
|
this.formXP.paraSelect = [];
|
|
|
- this.paraSelectList.some(item=>{
|
|
|
- let paraLibrary = this.paraLibraryList.filter(library=> library.id == item )
|
|
|
+ this.paraSelectList.some(item => {
|
|
|
+ let paraLibrary = this.paraLibraryList.filter(library => library.id == item)
|
|
|
let paraSelect = {
|
|
|
- paraId:item,
|
|
|
- paramId:item,
|
|
|
- paraCode:paraLibrary[0].paraCode,
|
|
|
- elevatorModelId:this.formXP.id,
|
|
|
- paraName:paraLibrary[0].paraName,
|
|
|
- sort:paraLibrary[0].sortNumber
|
|
|
+ paraId: item,
|
|
|
+ paramId: item,
|
|
|
+ paraCode: paraLibrary[0].paraCode,
|
|
|
+ elevatorModelId: this.formXP.id,
|
|
|
+ paraName: paraLibrary[0].paraName,
|
|
|
+ sort: paraLibrary[0].sortNumber
|
|
|
};
|
|
|
this.formXP.paraSelect.push(paraSelect)
|
|
|
});
|
|
@@ -969,18 +978,18 @@ export default {
|
|
|
});
|
|
|
},
|
|
|
/**获取国际化*/
|
|
|
- getParaLabel(value){
|
|
|
+ getParaLabel(value) {
|
|
|
let res = "-";
|
|
|
let dicts = this.dict.type.para_category;
|
|
|
- dicts.some(it=>{
|
|
|
- if(it.value == value){
|
|
|
+ dicts.some(it => {
|
|
|
+ if (it.value == value) {
|
|
|
res = it.label
|
|
|
}
|
|
|
})
|
|
|
return res
|
|
|
},
|
|
|
/**改变编辑状态*/
|
|
|
- changeEditFlag(row){
|
|
|
+ changeEditFlag(row) {
|
|
|
//把状态变为已改变
|
|
|
row.operationFlag = 2
|
|
|
},
|
|
@@ -1019,13 +1028,13 @@ export default {
|
|
|
});
|
|
|
},
|
|
|
/**改变编辑标志并且设置修改的id*/
|
|
|
- setSelectId(value,row){
|
|
|
+ setSelectId(value, row) {
|
|
|
//改变编辑标志
|
|
|
row.operationFlag = 2
|
|
|
//设置Id值
|
|
|
let arrs = row.selectItemList
|
|
|
- arrs.some(item=>{
|
|
|
- if(value == item.value){
|
|
|
+ arrs.some(item => {
|
|
|
+ if (value == item.value) {
|
|
|
row.paraDefaultId = item.paraSelectItemId
|
|
|
}
|
|
|
});
|
|
@@ -1033,7 +1042,7 @@ export default {
|
|
|
|
|
|
/** 行link操作 */
|
|
|
handleJGB(row) {
|
|
|
- this.$router.push({path: "/para/priceForm", query: { id: row.id }});
|
|
|
+ this.$router.push({path: "/para/priceForm", query: {id: row.id}});
|
|
|
},
|
|
|
/**打开价格表编辑页面*/
|
|
|
async handleJGB1(row) {
|
|
@@ -1051,14 +1060,14 @@ export default {
|
|
|
this.selectionsJGB = selection
|
|
|
},
|
|
|
resetJGB() {
|
|
|
- this.formJGB= {
|
|
|
+ this.formJGB = {
|
|
|
areaId: null,
|
|
|
elevatorType: null,
|
|
|
elevatorModel: null,
|
|
|
remark: null,
|
|
|
status: null,
|
|
|
- baseData:[],
|
|
|
- xpData:[]
|
|
|
+ baseData: [],
|
|
|
+ xpData: []
|
|
|
}
|
|
|
},
|
|
|
}
|