|
|
@@ -3,10 +3,10 @@
|
|
|
<Container :query-form="queryForm" class="three-model-container">
|
|
|
<!-- 查询表单 -->
|
|
|
<template #query-form>
|
|
|
- <el-form-item label="装备类型名称">
|
|
|
+ <el-form-item label="装备型号名称">
|
|
|
<el-input
|
|
|
- v-model="queryForm.zbTypeName"
|
|
|
- placeholder="输入装备名称"
|
|
|
+ v-model="queryForm.zbModelName"
|
|
|
+ placeholder="输入装备型号名称"
|
|
|
clearable
|
|
|
@keyup.enter.native="handleQuery"
|
|
|
/>
|
|
|
@@ -34,9 +34,13 @@
|
|
|
<el-table-column type="selection" width="55"/>
|
|
|
<el-table-column type="index" label="序号" width="60"/>
|
|
|
<el-table-column prop="zbTypeName" label="所属装备类型" width="120" align="center"/>
|
|
|
- <el-table-column prop="zbModelName" label="装备型号名称" align="center" />
|
|
|
- <el-table-column prop="zbTypeRemark" label="装备型号备注" align="center" />
|
|
|
- <el-table-column prop="zbModelIcon" label="美军标图标" align="center" />
|
|
|
+ <el-table-column prop="zbModelName" label="装备型号名称" align="center"/>
|
|
|
+ <el-table-column prop="zbModelRemark" label="装备型号备注" align="center"/>
|
|
|
+ <el-table-column prop="zbModelIcon" label="美军标图标" align="center">
|
|
|
+ <template slot-scope="{row}">
|
|
|
+ <vab-icon :icon="['fas', row.zbModelIcon]" />
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
<el-table-column prop="userName" label="创建人" width="120" align="center" sortable/>
|
|
|
<el-table-column prop="createTime" label="创建时间" width="180" align="center" sortable/>
|
|
|
<el-table-column label="操作" fixed="right" align="center" width="100">
|
|
|
@@ -78,7 +82,8 @@
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="所属装备类型" prop="zbTypeName">
|
|
|
<el-select v-model="addForm.zbTypeId" placeholder="请选择所属装备类型">
|
|
|
- <el-option v-for="(item, index) in zbTypeList" :key="index" :label="item.zbTypeName" :value="item.id"></el-option>
|
|
|
+ <el-option v-for="(item, index) in zbTypeList" :key="index" :label="item.zbTypeName"
|
|
|
+ :value="item.id"></el-option>
|
|
|
</el-select>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
@@ -89,18 +94,75 @@
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
<el-form-item label="美军标图标" prop="zbModelIcon">
|
|
|
- <el-select v-model="addForm.zbModelIcon" placeholder="请输入装备型号名称">
|
|
|
- <el-option label="图标1" :value="1"></el-option>
|
|
|
- </el-select>
|
|
|
+ <!--<el-select v-model="addForm.zbModelIcon" placeholder="请输入装备型号名称">-->
|
|
|
+ <!-- <el-option label="图标1" :value="1"></el-option>-->
|
|
|
+ <!--</el-select>-->
|
|
|
+ <el-input
|
|
|
+ v-model="addForm.zbModelIcon"
|
|
|
+ autocomplete="off"></el-input>
|
|
|
+ <el-button type="primary" icon="el-icon-search"
|
|
|
+ class="input-btn-choose" @click="showIcon"></el-button>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
- <el-col :span="12">
|
|
|
- <el-form-item label="装备类型可编辑参数" prop="zbModelIcon">
|
|
|
- <el-input v-model="addForm.zbModelJson" placeholder="请输入装备类型可编辑参数" />
|
|
|
+ <el-col :span="24">
|
|
|
+ <el-form-item label="装备类型可编辑参数" prop="zbModelJson">
|
|
|
+ <el-table :data="addForm.zbModelJson" border>
|
|
|
+ <el-table-column prop="sourceName" label="业务名称">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <el-input
|
|
|
+ v-if="scope.row.isEditing"
|
|
|
+ v-model="scope.row.sourceName"
|
|
|
+ ></el-input>
|
|
|
+ <span v-else>{{ scope.row.sourceName }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="sourceCode" label="英文名称">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <el-input
|
|
|
+ v-if="scope.row.isEditing"
|
|
|
+ v-model="scope.row.sourceCode"
|
|
|
+ ></el-input>
|
|
|
+ <span v-else>{{ scope.row.sourceCode }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="sourceType" label="类型">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <el-select v-if="scope.row.isEditing" v-model="scope.row.sourceType">
|
|
|
+ <el-option v-for="(item, index) in $getDictList('zb_filed_type')" :key="index"
|
|
|
+ :label="item.dictName" :value="item.dictValue"></el-option>
|
|
|
+ </el-select>
|
|
|
+ <span v-else>{{ scope.row.sourceType }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="操作" width="160">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <el-button
|
|
|
+ size="mini"
|
|
|
+ @click="dialogEdit(scope.row)"
|
|
|
+ v-if="!scope.row.isEditing"
|
|
|
+ >编辑
|
|
|
+ </el-button>
|
|
|
+ <el-button
|
|
|
+ size="mini"
|
|
|
+ type="success"
|
|
|
+ @click="dialogSave(scope.row)"
|
|
|
+ v-if="scope.row.isEditing"
|
|
|
+ >确定
|
|
|
+ </el-button>
|
|
|
+ <el-button
|
|
|
+ size="mini"
|
|
|
+ type="danger"
|
|
|
+ @click="dialogCancle(scope.row)"
|
|
|
+ v-if="scope.row.isEditing"
|
|
|
+ >取消
|
|
|
+ </el-button>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ </el-table>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="24">
|
|
|
- <el-form-item label="装备型号备注" prop="zbModeName">
|
|
|
+ <el-form-item label="装备型号备注" prop="zbModelRemark">
|
|
|
<el-input v-model="addForm.zbModelRemark" type="textarea" :rows="4" placeholder="请输入装备型号备注"/>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
@@ -112,6 +174,12 @@
|
|
|
<el-button type="primary" @click="handleAddSubmit">确 定</el-button>
|
|
|
</div>
|
|
|
</el-dialog>
|
|
|
+
|
|
|
+ <icon
|
|
|
+ v-on:icon="closeIcon"
|
|
|
+ ref="icon"
|
|
|
+ ></icon>
|
|
|
+
|
|
|
</Container>
|
|
|
</template>
|
|
|
|
|
|
@@ -124,14 +192,16 @@ import {
|
|
|
getEquModelDetails,
|
|
|
getAllEquTypes
|
|
|
} from '@/api/equipment'
|
|
|
+import Icon from "@/components/opsli/icon/icon";
|
|
|
|
|
|
export default {
|
|
|
name: 'equipmentModel',
|
|
|
+ components: {Icon},
|
|
|
data() {
|
|
|
return {
|
|
|
addOrUpdateTitle: '新建',
|
|
|
// 查询
|
|
|
- queryForm: {zbTypeName: ''},
|
|
|
+ queryForm: {zbModelName: ''},
|
|
|
|
|
|
// 列表&分页
|
|
|
tableData: [],
|
|
|
@@ -147,7 +217,14 @@ export default {
|
|
|
zbModelName: '',
|
|
|
zbModelRemark: '',
|
|
|
zbModelIcon: '',
|
|
|
- zbModelJson: '',
|
|
|
+ zbModelJson: [
|
|
|
+ {
|
|
|
+ sourceName: "",
|
|
|
+ sourceCode: "",
|
|
|
+ sourceType: "",
|
|
|
+ isEditing: false
|
|
|
+ }
|
|
|
+ ],
|
|
|
},
|
|
|
addRules: {},
|
|
|
zbTypeList: [], // 所有装备类型
|
|
|
@@ -158,10 +235,29 @@ export default {
|
|
|
this.getTypes()
|
|
|
},
|
|
|
methods: {
|
|
|
+ showIcon() {
|
|
|
+ this.$refs["icon"].showIcon();
|
|
|
+ },
|
|
|
+ // 选择完 icon 监听事件
|
|
|
+ closeIcon(icon){
|
|
|
+ this.addForm.zbModelIcon = icon;
|
|
|
+ },
|
|
|
+ dialogEdit(row) {
|
|
|
+ row.isEditing = true
|
|
|
+ },
|
|
|
+ dialogSave(row) {
|
|
|
+ row.isEditing = false
|
|
|
+ },
|
|
|
+ dialogCancle(row) {
|
|
|
+ row.sourceName = ''
|
|
|
+ row.sourceCode = ''
|
|
|
+ row.sourceType = ''
|
|
|
+ row.isEditing = false
|
|
|
+ },
|
|
|
// 获取所有装备类型
|
|
|
getTypes() {
|
|
|
getAllEquTypes().then(res => {
|
|
|
- if (res.code !==0) {
|
|
|
+ if (res.code !== 0) {
|
|
|
return
|
|
|
}
|
|
|
this.zbTypeList = res.data
|
|
|
@@ -172,7 +268,7 @@ export default {
|
|
|
let param = {
|
|
|
pageNo: this.pagination.currentPage,
|
|
|
pageSize: this.pagination.pageSize,
|
|
|
- // ...this.queryForm
|
|
|
+ ...this.queryForm
|
|
|
}
|
|
|
equModelList(param).then(res => {
|
|
|
if (res.code !== 0) {
|
|
|
@@ -185,7 +281,7 @@ export default {
|
|
|
})
|
|
|
},
|
|
|
resetQuery() {
|
|
|
- this.queryForm = {zbTypeName: ''}
|
|
|
+ this.queryForm = {zbModelName: ''}
|
|
|
this.pagination.currentPage = 1
|
|
|
this.handleQuery()
|
|
|
},
|
|
|
@@ -205,6 +301,9 @@ export default {
|
|
|
},
|
|
|
handleEdit(row) {
|
|
|
this.addForm = {...row}
|
|
|
+ if (typeof row.zbModelJson != 'string') {
|
|
|
+ this.addForm.zbModelJson = JSON.parse(row.zbModelJson)
|
|
|
+ }
|
|
|
// getEquDetails(row.id).then(res => {
|
|
|
// console.log(res)
|
|
|
// })
|
|
|
@@ -231,7 +330,14 @@ export default {
|
|
|
zbModelName: '',
|
|
|
zbModelRemark: '',
|
|
|
zbModelIcon: '',
|
|
|
- zbModelJson: '',
|
|
|
+ zbModelJson: [
|
|
|
+ {
|
|
|
+ sourceName: "",
|
|
|
+ sourceCode: "",
|
|
|
+ sourceType: "",
|
|
|
+ isEditing: false
|
|
|
+ }
|
|
|
+ ],
|
|
|
}
|
|
|
this.addOrUpdateTitle = '新建'
|
|
|
this.addVisible = true
|
|
|
@@ -246,7 +352,11 @@ export default {
|
|
|
handleAddSubmit() {
|
|
|
this.$refs.addFormRef.validate(valid => {
|
|
|
if (!valid) return
|
|
|
- (this.addOrUpdateTitle === '编辑' ? equModelUpdate : equModelAdd)(this.addForm).then(res => {
|
|
|
+ let data = this.addForm
|
|
|
+ if (typeof data.zbModelJson != 'string') {
|
|
|
+ data.zbModelJson = JSON.stringify(this.addForm.zbModelJson)
|
|
|
+ }
|
|
|
+ (this.addOrUpdateTitle === '编辑' ? equModelUpdate : equModelAdd)(data).then(res => {
|
|
|
if (res.code !== 0) {
|
|
|
return
|
|
|
}
|