Reviewed-on: http://git.picaiba.com/mt-ck-00a/mt-ck-wms-ui/pulls/32pull/36/head
@@ -22,4 +22,4 @@ selenium-debug.log | |||
package-lock.json | |||
yarn.lock | |||
/.env.development | |||
/vue.config.js | |||
vue.config.js |
@@ -1,15 +1,15 @@ | |||
/* | |||
* @Author: zwq | |||
* @Date: 2020-12-29 16:00:14 | |||
* @LastEditors: zwq | |||
* @LastEditTime: 2021-01-28 09:38:31 | |||
* @LastEditors: fzq | |||
* @LastEditTime: 2022-03-03 14:29:17 | |||
* @Description: | |||
*/ | |||
import request from '@/utils/request' | |||
export function locationList(data) { // 获取库位信息列表 | |||
return request({ | |||
url: '/basic/stock/page', | |||
url: '/api/wms/area/locationByShelf', | |||
method: 'post', | |||
data | |||
}) | |||
@@ -17,7 +17,7 @@ export function locationList(data) { // 获取库位信息列表 | |||
export function locationDetail(id) { // 获取库位信息单条数据 | |||
return request({ | |||
url: '/basic/stock/get', | |||
url: '/api/wms/area/locationById', | |||
method: 'post', | |||
data: { id } | |||
}) | |||
@@ -25,7 +25,7 @@ export function locationDetail(id) { // 获取库位信息单条数据 | |||
export function locationUpdate(data) { // 更新库位信息单条数据 | |||
return request({ | |||
url: '/basic/stock/update', | |||
url: '/api/wms/area/updatelocation', | |||
method: 'post', | |||
data | |||
}) | |||
@@ -33,7 +33,7 @@ export function locationUpdate(data) { // 更新库位信息单条数据 | |||
export function locationAdd(data) { // 新增库位信息单条数据 | |||
return request({ | |||
url: '/basic/stock/add', | |||
url: '/api/wms/area/addlocation', | |||
method: 'post', | |||
data | |||
}) | |||
@@ -41,14 +41,14 @@ export function locationAdd(data) { // 新增库位信息单条数据 | |||
export function locationCode() { // 获取库位信息code | |||
return request({ | |||
url: '/basic/stock/get-code', | |||
url: '/api/wms/area/getCode', | |||
method: 'post' | |||
}) | |||
} | |||
export function locationDelete(id) { // 删除库位信息单条数据 | |||
return request({ | |||
url: '/basic/stock/delete', | |||
url: '/api/wms/area/deletelocation', | |||
method: 'post', | |||
data: { id } | |||
}) | |||
@@ -1,8 +1,8 @@ | |||
/* | |||
* @Author: zwq | |||
* @Date: 2020-12-29 16:00:14 | |||
* @LastEditors: zwq | |||
* @LastEditTime: 2021-01-20 12:00:52 | |||
* @LastEditors: fzq | |||
* @LastEditTime: 2022-03-03 20:09:43 | |||
* @Description: | |||
*/ | |||
import request from '@/utils/request' | |||
@@ -27,7 +27,7 @@ export function equipmentInfoAttrDetail(id) { // 获取设备属性单条数据 | |||
export function equipmentInfoAttrUpdate(data) { // 更新设备属性单条数据 | |||
return request({ | |||
url: '/basic/equipment-attr/update', | |||
url: '/api/wms/equipment/updateattr', | |||
method: 'post', | |||
data | |||
}) | |||
@@ -35,7 +35,7 @@ export function equipmentInfoAttrUpdate(data) { // 更新设备属性单条数 | |||
export function equipmentInfoAttrAdd(data) { // 新增设备属性单条数据 | |||
return request({ | |||
url: '/basic/equipment-attr/add', | |||
url: '/api/wms/equipment/addattr', | |||
method: 'post', | |||
data | |||
}) | |||
@@ -43,14 +43,14 @@ export function equipmentInfoAttrAdd(data) { // 新增设备属性单条数据 | |||
export function equipmentInfoAttrCode() { // 获取设备属性code | |||
return request({ | |||
url: '/basic/equipment-attr/get-code', | |||
url: '/api/wms/equipment/getCode', | |||
method: 'post' | |||
}) | |||
} | |||
export function equipmentInfoAttrDelete(id) { // 删除设备属性单条数据 | |||
return request({ | |||
url: '/basic/equipment-attr/delete', | |||
url: '/api/wms/equipment/deleteattr', | |||
method: 'post', | |||
data: { id } | |||
}) | |||
@@ -571,10 +571,18 @@ export default { | |||
zh: '货架信息', | |||
en: 'Shelf Add' | |||
}, | |||
shelfInfo: { | |||
zh: '货位管理', | |||
en: 'Shelf Info' | |||
}, | |||
locationAdd: { | |||
zh: '库位信息', | |||
en: 'Location Add' | |||
}, | |||
location: { | |||
zh: '添加库位', | |||
en: 'Location Management' | |||
}, | |||
storageBox: { | |||
zh: '存储箱', | |||
en: 'Storage Box' | |||
@@ -584,6 +592,18 @@ export default { | |||
en: 'Position Detail Info' | |||
} | |||
}, | |||
process: { | |||
zh: '工序信息', | |||
en: 'Process Info', | |||
processInfo: { | |||
zh: '工序信息', | |||
en: 'Process Info' | |||
}, | |||
processInfoAdd: { | |||
zh: '工序信息管理', | |||
en: 'Process Manage' | |||
} | |||
}, | |||
equipment: { | |||
zh: '设备信息', | |||
en: 'Equipment Info', | |||
@@ -1,8 +1,13 @@ | |||
/* | |||
* @Author: gtz | |||
* @Date: 2021-03-04 16:13:51 | |||
<<<<<<< HEAD | |||
* @LastEditors: fzq | |||
* @LastEditTime: 2022-03-03 19:52:51 | |||
======= | |||
* @LastEditors: zwq | |||
* @LastEditTime: 2022-03-04 10:13:41 | |||
>>>>>>> develop | |||
* @Description: file content | |||
*/ | |||
export default { | |||
@@ -135,6 +140,8 @@ export default { | |||
AreaName: '货架名称', | |||
rowNum: '行数', | |||
columnNum: '列数', | |||
rowMark: '行标', | |||
columnMark: '列标', | |||
Shelf: '货架', | |||
ManageShelves: '管理货架', | |||
ShelfCode: '货架编码', | |||
@@ -145,9 +152,12 @@ export default { | |||
ManageLocation: '管理货位', | |||
LocationCode: '库位编码', | |||
LocationName: '库位名称', | |||
anotherName: '别名', | |||
locationType: '库位类型', | |||
anotherName: '库位别名', | |||
place: '位置', | |||
addCacheArea: '添加货架' | |||
addCacheArea: '添加货架', | |||
addLocation: '添加库位', | |||
status: '状态' | |||
}, | |||
storageBox: { | |||
name: '名称', | |||
@@ -162,6 +172,8 @@ export default { | |||
PositionCodeAlias: '位置编码别名' | |||
}, | |||
equipment: { | |||
shortName: '名称缩写', | |||
enName: '英文名称', | |||
EquipmentName: '设备名称', | |||
EquipmentCode: '设备编码', | |||
EquipmentType: '设备类型', | |||
@@ -98,12 +98,20 @@ export const constantRoutes = [ | |||
name: 'basicData', | |||
meta: { title: routerTitle.basicData?.[language] || routerTitle.basicData.en, icon: 'form', iconPart: 'basicData', affix: true, required: true, requireToken: true }, | |||
children: [ | |||
// 缓存区信息 | |||
{ | |||
path: 'ports', | |||
path: 'cache', | |||
component: () => import('@/views/basicData/Cache/cache'), | |||
name: 'ports', | |||
name: 'cache', | |||
hidden: true, | |||
meta: { title: routerTitle.basicData.ports.ports?.[language] || routerTitle.basicData.ports.ports.en, icon: 'form', affix: true } | |||
}, | |||
{ | |||
path: 'ports', | |||
component: () => import('@/views/basicData/Cache/shelf'), | |||
name: 'ports', | |||
meta: { title: routerTitle.basicData.ports.shelfInfo?.[language] || routerTitle.basicData.ports.shelfInfo.en, icon: 'form', affix: true } | |||
}, | |||
{ | |||
path: 'area', | |||
component: () => import('@/views/basicData/Cache/area'), | |||
@@ -147,6 +155,19 @@ export const constantRoutes = [ | |||
hidden: true, | |||
meta: { title: routerTitle.basicData.ports.PositionDetailInfo?.[language] || routerTitle.basicData.ports.PositionDetailInfo.en, icon: 'form', affix: true } | |||
}, | |||
{ | |||
path: 'processInfo', | |||
component: () => import('@/views/basicData/Process/processInfo'), | |||
name: 'processInfo', | |||
meta: { title: routerTitle.basicData.process.processInfo?.[language] || routerTitle.basicData.process.processInfo.en, icon: 'form', affix: true, required: true, requireToken: true } | |||
}, | |||
{ | |||
path: 'processInfoAdd', | |||
component: () => import('@/views/basicData/Process/components/processInfo-add'), | |||
name: 'processInfoAdd', | |||
hidden: true, | |||
meta: { title: routerTitle.basicData.process.processInfoAdd?.[language] || routerTitle.basicData.process.processInfoAdd.en, icon: 'form', affix: true, required: true, requireToken: true } | |||
}, | |||
{ | |||
path: 'equipmentInfo', | |||
component: () => import('@/views/basicData/Equipment/equipmentInfo'), | |||
@@ -302,6 +323,45 @@ export const constantRoutes = [ | |||
} | |||
] | |||
}, | |||
{ | |||
path: '/form', | |||
component: Layout, | |||
redirect: '/form', | |||
name: 'formManage', | |||
meta: { title: routerTitle.form?.[language] || routerTitle.form.en, icon: 'form', iconPart: 'formManage', affix: true, required: true, requireToken: true, unuse: false }, | |||
children: [{ | |||
path: 'report', | |||
component: () => import('@/views/report-manage/ReportSortChoise'), | |||
name: 'Report', | |||
meta: { title: routerTitle.form.report?.[language] || routerTitle.form.report.en, icon: 'form', affix: true, required: true, requireToken: true } | |||
}, | |||
{ | |||
path: 'report-sort-list', | |||
component: () => import('@/views/report-manage/Report'), | |||
name: 'ReportSortList', | |||
hidden: true, | |||
meta: { title: routerTitle.form.reportSortList?.[language] || routerTitle.form.reportSortList.en, icon: 'form', affix: true, required: true, requireToken: true } | |||
}, | |||
{ | |||
path: 'report-view', | |||
component: () => import('@/views/report-manage/ReportView'), | |||
name: 'ReportDesign', | |||
meta: { title: routerTitle.form.reportView?.[language] || routerTitle.form.reportView.en, icon: 'form', affix: true, required: true, requireToken: true }, | |||
hidden: true | |||
}, | |||
{ | |||
path: 'report-design', | |||
component: () => import('@/views/report-manage/ReportDesign'), | |||
name: 'ReportDesign', | |||
meta: { title: routerTitle.form.reportDesign?.[language] || routerTitle.form.reportDesign.en, icon: 'form', affix: true, required: true, requireToken: true } | |||
}, | |||
{ | |||
path: 'report-sort', | |||
component: () => import('@/views/report-manage/ReportSort/index'), | |||
name: 'ReportSort', | |||
meta: { title: routerTitle.form.reportSort?.[language] || routerTitle.form.reportSort.en, icon: 'form', affix: true, required: true, requireToken: true } | |||
}] | |||
}, | |||
{ | |||
path: '/interface', | |||
component: Layout, | |||
@@ -1,8 +1,8 @@ | |||
<!-- | |||
* @Author: zwq | |||
* @Date: 2020-12-29 15:41:11 | |||
* @LastEditors: zwq | |||
* @LastEditTime: 2022-01-11 15:48:58 | |||
* @LastEditors: fzq | |||
* @LastEditTime: 2022-03-03 16:35:32 | |||
* @Description: | |||
--> | |||
<template> | |||
@@ -158,8 +158,9 @@ export default { | |||
}, | |||
getList(key) { | |||
this.listLoading = true | |||
this.listQuery.name = key | |||
this.listQuery.tareaName = key | |||
this.listQuery.code = key | |||
console.log(this.listQuery) | |||
cacheList(this.listQuery).then(response => { | |||
if (response.data.records) { | |||
this.list = response.data.records | |||
@@ -1,8 +1,8 @@ | |||
<!-- | |||
* @Author: zwq | |||
* @Date: 2020-12-29 16:37:56 | |||
* @LastEditors: zwq | |||
* @LastEditTime: 2022-01-11 16:26:29 | |||
* @LastEditors: fzq | |||
* @LastEditTime: 2022-03-03 14:21:53 | |||
* @enName: | |||
--> | |||
<template> | |||
@@ -104,11 +104,11 @@ | |||
<script>import i18n from '@/lang' | |||
import { cacheDetail, cacheUpdate, cacheAdd, cacheCode } from '@/api/basicData/Cache/cache' | |||
import { areaList, areaDelete } from '@/api/basicData/Cache/area' | |||
import { shelfList, shelfDelete } from '@/api/basicData/Cache/shelf' | |||
import BaseTable from '@/components/BaseTable' | |||
import MethodBtn from '@/components/BaseTable/subcomponents/MethodBtn' | |||
import shelfAttrAdd from './shelfAttr-add.vue' | |||
import shelfBtn from './shelfBtn.vue' | |||
import locationBtn from './locationBtn.vue' | |||
const tableBtn = [ | |||
{ | |||
type: 'edit', | |||
@@ -121,7 +121,7 @@ const tableBtn = [ | |||
] | |||
const tableProps = [ | |||
{ | |||
prop: 'name', | |||
prop: 'shelfName', | |||
label: i18n.t('module.basicData.cache.AreaName'), | |||
align: 'center' | |||
}, | |||
@@ -131,7 +131,7 @@ const tableProps = [ | |||
align: 'center' | |||
}, | |||
{ | |||
prop: 'shelfNum', | |||
prop: 'total', | |||
label: i18n.t('module.basicData.cache.StorageQuantity'), | |||
align: 'center' | |||
}, | |||
@@ -148,7 +148,7 @@ const tableProps = [ | |||
{ | |||
prop: 'shelf', | |||
label: i18n.t('module.basicData.cache.Location'), | |||
subcomponent: shelfBtn, | |||
subcomponent: locationBtn, | |||
align: 'center' | |||
} | |||
] | |||
@@ -219,9 +219,20 @@ export default { | |||
if (this.id) { | |||
cacheDetail(this.id).then(res => { | |||
this.dataForm = res.data | |||
// console.log(this.dataForm) | |||
}) | |||
this.listQuery.id = this.id | |||
areaList(this.listQuery).then(response => { | |||
console.log(this.listQuery.id) | |||
// shelfDetail(this.listQuery).then(response => { | |||
// console.log(response) | |||
// if (response.data.records) { | |||
// this.list = response.data.records | |||
// } else { | |||
// this.list.splice(0, this.list.length) | |||
// } | |||
// }) | |||
shelfList(this.listQuery).then(response => { | |||
console.log(response) | |||
if (response.data.records) { | |||
this.list = response.data.records | |||
} else { | |||
@@ -236,7 +247,7 @@ export default { | |||
}) | |||
}, | |||
getList() { | |||
areaList(this.listQuery).then(response => { | |||
shelfList(this.listQuery).then(response => { | |||
if (response.data.records) { | |||
this.list = response.data.records | |||
} | |||
@@ -249,7 +260,7 @@ export default { | |||
cancelButtonText: this.$t('module.basicData.visual.cancelButtonText'), | |||
type: 'warning' | |||
}).then(() => { | |||
areaDelete(raw.data.id).then(response => { | |||
shelfDelete(raw.data.id).then(response => { | |||
this.$message({ | |||
message: this.$t('module.basicData.visual.success'), | |||
type: 'success', | |||
@@ -1,8 +1,8 @@ | |||
<!-- | |||
* @Author: zwq | |||
* @Date: 2020-12-29 15:41:11 | |||
* @LastEditors: zwq | |||
* @LastEditTime: 2021-03-11 16:44:10 | |||
* @LastEditors: fzq | |||
* @LastEditTime: 2022-03-03 19:37:48 | |||
* @Description: | |||
--> | |||
<template> | |||
@@ -34,7 +34,6 @@ import { locationList, locationDelete } from '@/api/basicData/Cache/location' | |||
import locationAttrAdd from './locationAttr-add.vue' | |||
import BaseTable from '@/components/BaseTable' | |||
import MethodBtn from '@/components/BaseTable/subcomponents/MethodBtn' | |||
import { timeFormatter } from '@/filters' | |||
/** | |||
* 表格表头配置项 TypeScript接口注释 | |||
* tableConfig<ConfigItem> = [] | |||
@@ -62,10 +61,15 @@ const tableBtn = [ | |||
} | |||
] | |||
const tableProps = [ | |||
// { | |||
// prop: 'createTime', | |||
// label: i18n.t('module.basicData.factory.createTime'), | |||
// filter: timeFormatter, | |||
// align: 'center' | |||
// }, | |||
{ | |||
prop: 'createTime', | |||
label: i18n.t('module.basicData.factory.createTime'), | |||
filter: timeFormatter, | |||
prop: 'locationName', | |||
label: i18n.t('module.basicData.cache.LocationName'), | |||
align: 'center' | |||
}, | |||
{ | |||
@@ -74,23 +78,28 @@ const tableProps = [ | |||
align: 'center' | |||
}, | |||
{ | |||
prop: 'name', | |||
label: i18n.t('module.basicData.cache.LocationName'), | |||
prop: 'locationNameAlias', | |||
label: i18n.t('module.basicData.cache.anotherName'), | |||
align: 'center' | |||
}, | |||
{ | |||
prop: 'anotherName', | |||
label: i18n.t('module.basicData.cache.anotherName'), | |||
prop: 'rowNum', | |||
label: i18n.t('module.basicData.cache.rowMark'), | |||
align: 'center' | |||
}, | |||
{ | |||
prop: 'columns', | |||
label: i18n.t('module.basicData.cache.columnMark'), | |||
align: 'center' | |||
}, | |||
{ | |||
prop: 'place', | |||
label: i18n.t('module.basicData.cache.place'), | |||
prop: 'locationType', | |||
label: i18n.t('module.basicData.cache.locationType'), | |||
align: 'center' | |||
}, | |||
{ | |||
prop: 'remark', | |||
label: i18n.t('module.basicData.visual.Remarks'), | |||
prop: 'status', | |||
label: i18n.t('module.basicData.cache.status'), | |||
align: 'center' | |||
} | |||
] | |||
@@ -130,7 +139,8 @@ export default { | |||
methods: { | |||
handleClick(raw) { | |||
if (raw.type === 'delete') { | |||
this.$confirm(`${this.$t('module.basicData.visual.TipsBefore')}[${raw.data.name}]?`, this.$t('module.basicData.visual.Tips'), { | |||
console.log(raw.data) | |||
this.$confirm(`${this.$t('module.basicData.visual.TipsBefore')}[${raw.data.locationName}]?`, this.$t('module.basicData.visual.Tips'), { | |||
confirmButtonText: this.$t('module.basicData.visual.confirmButtonText'), | |||
cancelButtonText: this.$t('module.basicData.visual.cancelButtonText'), | |||
type: 'warning' | |||
@@ -156,6 +166,7 @@ export default { | |||
locationList(this.listQuery).then(response => { | |||
if (response.data.records) { | |||
this.list = response.data.records | |||
console.log(this.list) | |||
} else { | |||
this.list.splice(0, this.list.length) | |||
} | |||
@@ -1,30 +1,33 @@ | |||
<!-- | |||
* @Author: zwq | |||
* @Date: 2020-12-29 16:37:56 | |||
* @LastEditors: zwq | |||
* @LastEditTime: 2021-03-25 16:23:03 | |||
* @LastEditors: fzq | |||
* @LastEditTime: 2022-03-03 19:42:43 | |||
* @Description: | |||
--> | |||
<template> | |||
<el-dialog | |||
:title="!dataForm.shelfId ? 'btn.add' : 'btn.edit' | i18nFilter" | |||
:title="!dataForm.id ? 'btn.add' : 'btn.edit' | i18nFilter" | |||
:visible.sync="visible" | |||
> | |||
<el-form ref="dataForm" :model="dataForm" :rules="dataRule" label-width="130px" @keyup.enter.native="dataFormSubmit()"> | |||
<el-form-item :label="$t('module.basicData.cache.LocationName')" prop="name"> | |||
<el-input v-model="dataForm.name" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.cache.LocationName')])" clearable /> | |||
<el-form-item :label="$t('module.basicData.cache.LocationName')" prop="locationName"> | |||
<el-input v-model="dataForm.locationName" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.cache.LocationName')])" clearable /> | |||
</el-form-item> | |||
<el-form-item :label="$t('module.basicData.cache.LocationCode')" prop="code"> | |||
<el-input v-model="dataForm.code" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.cache.LocationCode')])" clearable /> | |||
</el-form-item> | |||
<el-form-item :label="$t('module.basicData.cache.anotherName')" prop="anotherName"> | |||
<el-input v-model="dataForm.anotherName" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.cache.anotherName')])" clearable /> | |||
<el-form-item :label="$t('module.basicData.cache.anotherName')" prop="locationNameAlias"> | |||
<el-input v-model="dataForm.locationNameAlias" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.cache.anotherName')])" clearable /> | |||
</el-form-item> | |||
<el-form-item :label="$t('module.basicData.cache.place')" prop="place"> | |||
<el-input v-model="dataForm.place" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.cache.place')])" clearable /> | |||
<el-form-item :label="$t('module.basicData.cache.rowMark')" prop="layers"> | |||
<el-input v-model="dataForm.layers" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.cache.rowMark')])" clearable /> | |||
</el-form-item> | |||
<el-form-item :label="$t('module.basicData.visual.Remarks')" prop="remark"> | |||
<el-input v-model="dataForm.remark" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.visual.Remarks')])" clearable /> | |||
<el-form-item :label="$t('module.basicData.cache.columnMark')" prop="columns"> | |||
<el-input v-model="dataForm.columns" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.cache.columnMark')])" clearable /> | |||
</el-form-item> | |||
<el-form-item :label="$t('module.basicData.cache.status')" prop="status"> | |||
<el-input v-model="dataForm.status" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.cache.status')])" clearable /> | |||
</el-form-item> | |||
</el-form> | |||
<span slot="footer" class="dialog-footer"> | |||
@@ -51,11 +54,14 @@ export default { | |||
visible: false, | |||
dataForm: { | |||
id: 0, | |||
name: '', | |||
locationName: '', | |||
code: '', | |||
anotherName: '', | |||
place: '', | |||
remark: '' | |||
locationNameAlias: '', | |||
rowNum: '', | |||
columns: '', | |||
layers: '', | |||
status: '', | |||
locationType: '' | |||
}, | |||
dataRule: { | |||
name: [ | |||
@@ -89,13 +95,15 @@ export default { | |||
this.$refs['dataForm'].validate((valid) => { | |||
if (valid) { | |||
const data = { | |||
'name': this.dataForm.name, | |||
'locationName': this.dataForm.locationName, | |||
'code': this.dataForm.code, | |||
'anotherName': this.dataForm.anotherName, | |||
'place': this.dataForm.place, | |||
'remark': this.dataForm.remark, | |||
'locationNameAlias': this.dataForm.locationNameAlias, | |||
'columns': this.dataForm.columns, | |||
'layers': this.dataForm.layers, | |||
'shelfId': this.shelfId, | |||
'id': this.dataForm.id | |||
'id': this.dataForm.id, | |||
'status': this.dataForm.status, | |||
'locationType': this.dataForm.locationType | |||
} | |||
if (this.dataForm.id) { | |||
locationUpdate(data).then(res => { | |||
@@ -111,6 +119,7 @@ export default { | |||
}) | |||
} else { | |||
locationAdd(data).then(res => { | |||
// console.log(data) | |||
this.$message({ | |||
message: this.$t('module.basicData.visual.success'), | |||
type: 'success', | |||
@@ -1,13 +1,13 @@ | |||
<!-- | |||
* @Date: 2021-01-07 20:09:37 | |||
* @LastEditors: zwq | |||
* @LastEditTime: 2021-03-06 13:12:47 | |||
* @LastEditors: fzq | |||
* @LastEditTime: 2022-03-03 18:39:03 | |||
* @FilePath: \basic-admin\src\components\BaseTable\subcomponents\CheckDetail.vue | |||
* @Description: | |||
--> | |||
<template> | |||
<span> | |||
<el-button type="text" size="small" @click="emitClick">{{ $t('module.basicData.cache.ManageLocation') }}</el-button> | |||
<el-button type="text" size="small" @click="emitClick">{{ $t('module.basicData.cache.addLocation') }}</el-button> | |||
</span> | |||
</template> | |||
@@ -1,13 +1,14 @@ | |||
<!-- | |||
* @Author: zwq | |||
* @Date: 2020-12-29 16:37:56 | |||
* @LastEditors: gtz | |||
* @LastEditTime: 2021-04-16 15:01:45 | |||
* @LastEditors: fzq | |||
* @LastEditTime: 2022-03-03 19:00:08 | |||
* @Description: | |||
--> | |||
<template> | |||
<!-- 新增/编辑识别 :title="!dataForm.areaId ? 'btn.add' : 'btn.edit' | i18nFilter" --> | |||
<el-dialog | |||
:title="!dataForm.areaId ? 'btn.add' : 'btn.edit' | i18nFilter" | |||
:title="!dataForm.id ? 'btn.add' : 'btn.edit' | i18nFilter" | |||
:visible.sync="visible" | |||
> | |||
<el-form ref="dataForm" :model="dataForm" :rules="dataRule" label-width="130px" @keyup.enter.native="dataFormSubmit()"> | |||
@@ -17,6 +18,7 @@ | |||
<el-form-item :label="$t('module.basicData.cache.ShelfCode')" prop="code"> | |||
<el-input v-model="dataForm.code" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.cache.ShelfCode')])" clearable /> | |||
</el-form-item> | |||
<!-- 选择货架code的下拉框 | |||
<el-form-item v-if="isPage" :label="$t('module.basicData.cache.AreaName')" prop="areaId"> | |||
<el-select v-model="dataForm.areaId" filterable :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.cache.AreaName')])" clearable> | |||
<el-option | |||
@@ -26,9 +28,15 @@ | |||
:value="item.id" | |||
/> | |||
</el-select> | |||
</el-form-item> --> | |||
<el-form-item :label="$t('module.basicData.cache.StorageQuantity')" prop="total"> | |||
<el-input-number v-model="dataForm.total" :step="1" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.cache.StorageQuantity')])" clearable /> | |||
</el-form-item> | |||
<el-form-item :label="$t('module.basicData.cache.StorageQuantity')" prop="shelfNumber"> | |||
<el-input-number v-model="dataForm.shelfNumber" :step="1" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.cache.StorageQuantity')])" clearable /> | |||
<el-form-item :label="$t('module.basicData.cache.rowNum')" prop="rowNum"> | |||
<el-input-number v-model="dataForm.rowNum" :step="1" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.cache.rowNum')])" clearable /> | |||
</el-form-item> | |||
<el-form-item :label="$t('module.basicData.cache.columnNum')" prop="columnNum"> | |||
<el-input-number v-model="dataForm.columnNum" :step="1" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.cache.columnNum')])" clearable /> | |||
</el-form-item> | |||
</el-form> | |||
<span slot="footer" class="dialog-footer"> | |||
@@ -39,8 +47,7 @@ | |||
</template> | |||
<script> | |||
import { shelfDetail, shelfUpdate, shelfAdd, shelfCode } from '@/api/basicData/Cache/shelf' | |||
import { areaList } from '@/api/basicData/Cache/area' | |||
import { shelfList, shelfDetail, shelfUpdate, shelfAdd, shelfCode } from '@/api/basicData/Cache/shelf' | |||
export default { | |||
props: { | |||
@@ -90,7 +97,7 @@ export default { | |||
current: 1, | |||
size: 500 | |||
} | |||
areaList(params).then(response => { | |||
shelfList(params).then(response => { | |||
if (response.data.records) { | |||
this.areaArr = response.data.records | |||
} | |||
@@ -114,7 +121,7 @@ export default { | |||
this.$refs['dataForm'].validate((valid) => { | |||
if (valid) { | |||
const data = this.dataForm | |||
console.log(data) | |||
// console.log(data) | |||
if (this.dataForm.id) { | |||
shelfUpdate(data).then(res => { | |||
this.$message({ | |||
@@ -129,6 +136,7 @@ export default { | |||
}) | |||
} else { | |||
shelfAdd(data).then(res => { | |||
console.log(res) | |||
this.$message({ | |||
message: this.$t('module.basicData.visual.success'), | |||
type: 'success', | |||
@@ -1,13 +1,13 @@ | |||
<!-- | |||
* @Date: 2021-01-07 20:09:37 | |||
* @LastEditors: zwq | |||
* @LastEditTime: 2021-03-06 13:03:40 | |||
* @LastEditors: fzq | |||
* @LastEditTime: 2022-03-02 19:00:47 | |||
* @FilePath: \basic-admin\src\components\BaseTable\subcomponents\CheckDetail.vue | |||
* @Description: | |||
--> | |||
<template> | |||
<span> | |||
<el-button type="text" size="small" @click="emitClick">{{ $t('module.basicData.cache.ManageShelves') }}</el-button> | |||
<el-button type="text" size="small" @click="emitClick">{{ $t('module.basicData.cache.addLocation') }}</el-button> | |||
</span> | |||
</template> | |||
@@ -1,8 +1,8 @@ | |||
<!-- | |||
* @Author: zwq | |||
* @Date: 2020-12-29 15:41:11 | |||
* @LastEditors: zwq | |||
* @LastEditTime: 2021-03-25 16:13:19 | |||
* @LastEditors: fzq | |||
* @LastEditTime: 2022-03-03 20:47:18 | |||
* @Description: | |||
--> | |||
<template> | |||
@@ -44,10 +44,8 @@ import BaseTable from '@/components/BaseTable' | |||
import Pagination from '@/components/Pagination' // Secondary package based on el-pagination | |||
import MethodBtn from '@/components/BaseTable/subcomponents/MethodBtn' | |||
import { shelfList, shelfDelete } from '@/api/basicData/Cache/shelf' | |||
import { areaList } from '@/api/basicData/Cache/area' | |||
import shelfAttrAdd from './components/shelfAttr-add.vue' | |||
import locationBtn from './components/locationBtn.vue' | |||
import { timeFormatter } from '@/filters' | |||
/** | |||
* 表格表头配置项 TypeScript接口注释 | |||
* tableConfig<ConfigItem> = [] | |||
@@ -76,34 +74,33 @@ const tableBtn = [ | |||
] | |||
const tableProps = [ | |||
{ | |||
prop: 'createTime', | |||
label: i18n.t('module.basicData.factory.createTime'), | |||
filter: timeFormatter, | |||
prop: 'shelfName', | |||
label: i18n.t('module.basicData.cache.AreaName'), | |||
align: 'center' | |||
}, | |||
{ | |||
prop: 'name', | |||
label: i18n.t('module.basicData.cache.ShelfName'), | |||
prop: 'code', | |||
label: i18n.t('module.basicData.cache.AreaCode'), | |||
align: 'center' | |||
}, | |||
{ | |||
prop: 'code', | |||
label: i18n.t('module.basicData.cache.ShelfCode'), | |||
prop: 'total', | |||
label: i18n.t('module.basicData.cache.StorageQuantity'), | |||
align: 'center' | |||
}, | |||
{ | |||
prop: 'areaName', | |||
label: i18n.t('module.basicData.cache.AreaName'), | |||
prop: 'rowNum', | |||
label: i18n.t('module.basicData.cache.rowNum'), | |||
align: 'center' | |||
}, | |||
{ | |||
prop: 'shelfNumber', | |||
label: i18n.t('module.basicData.cache.StorageQuantity'), | |||
prop: 'columnNum', | |||
label: i18n.t('module.basicData.cache.columnNum'), | |||
align: 'center' | |||
}, | |||
{ | |||
prop: 'location', | |||
label: i18n.t('module.basicData.cache.Location'), | |||
prop: 'shelf', | |||
label: i18n.t('module.basicData.visual.location'), | |||
subcomponent: locationBtn, | |||
align: 'center' | |||
} | |||
@@ -141,21 +138,22 @@ export default { | |||
} | |||
}, | |||
created() { | |||
const params = { | |||
current: 1, | |||
size: 500 | |||
} | |||
areaList(params).then(response => { | |||
if (response.data.records) { | |||
this.areaList = response.data.records | |||
} | |||
this.getList() | |||
}) | |||
// const params = { | |||
// current: 1, | |||
// size: 500 | |||
// } | |||
// shelfList(params).then(response => { | |||
// if (response.data.records) { | |||
// this.areaList = response.data.records | |||
// } | |||
// this.getList() | |||
// }) | |||
this.getList() | |||
}, | |||
methods: { | |||
handleClick(raw) { | |||
if (raw.type === 'delete') { | |||
this.$confirm(`${this.$t('module.basicData.visual.TipsBefore')}[${raw.data.name}]?`, this.$t('module.basicData.visual.Tips'), { | |||
this.$confirm(`${this.$t('module.basicData.visual.TipsBefore')}[${raw.data.shelfName}]?`, this.$t('module.basicData.visual.Tips'), { | |||
confirmButtonText: this.$t('module.basicData.visual.confirmButtonText'), | |||
cancelButtonText: this.$t('module.basicData.visual.cancelButtonText'), | |||
type: 'warning' | |||
@@ -179,9 +177,10 @@ export default { | |||
}, | |||
getList(key) { | |||
this.listLoading = true | |||
this.listQuery.name = key | |||
this.listQuery.shelfName = key | |||
console.log(this.listQuery) | |||
shelfList(this.listQuery).then(response => { | |||
console.log(response) | |||
// console.log(response) | |||
if (response.data.records) { | |||
this.list = response.data.records | |||
this.list.forEach(item => { | |||
@@ -82,9 +82,9 @@ | |||
</el-form-item> | |||
</el-col> | |||
<el-col :span="8"> | |||
<el-form-item :label="$t('module.basicData.visual.productionTime')" prop="productionTime"> | |||
<el-form-item :label="$t('module.basicData.visual.productionTime')" prop="createTime"> | |||
<el-date-picker | |||
v-model="dataForm.productionTime" | |||
v-model="dataForm.createTime" | |||
:disabled="isdetail" | |||
format="yyyy-MM-dd" | |||
value-format="yyyy-MM-dd" | |||
@@ -330,8 +330,7 @@ import { | |||
equipmentInfoUpdate, | |||
equipmentInfoAdd, | |||
equipmentInfoCode, | |||
equipmentInfoFileAdd, | |||
getEquipmentInfoFile | |||
equipmentInfoFileAdd | |||
} from '@/api/basicData/Equipment/equipmentInfo' | |||
import { equipmentGroupList } from '@/api/basicData/Equipment/equipmentGroup' | |||
import { equipmentInfoAttrList, equipmentInfoAttrDelete } from '@/api/basicData/Equipment/equipmentInfoAttr' | |||
@@ -393,7 +392,7 @@ export default { | |||
abbr: '', | |||
equipmentType: '', | |||
spec: '', | |||
productionTime: '', | |||
createTime: '', | |||
enterTime: '', | |||
debugTime: '', | |||
debugPeriod: '', | |||
@@ -467,23 +466,24 @@ export default { | |||
init() { | |||
this.isdetail = false | |||
this.isdetail = Boolean(this.$route.query.isdetail) | |||
if (this.isdetail) { | |||
const data = | |||
{ | |||
'equipmentId': this.listQuery.equipmentId | |||
} | |||
getEquipmentInfoFile(data).then(res => { | |||
this.downloadList = res.data | |||
this.downloadList.forEach(item => { | |||
if (item.typeCode === 'equipmentInfoImage') { | |||
this.imgList.push(item) | |||
} else { | |||
this.fileList.push(item) | |||
} | |||
}) | |||
}) | |||
} | |||
this.list.splice(0, this.list.length) | |||
// 设备信息下载接口,暂时未调用 | |||
// if (this.isdetail) { | |||
// const data = | |||
// { | |||
// 'equipmentId': this.listQuery.equipmentId | |||
// } | |||
// getEquipmentInfoFile(data).then(res => { | |||
// this.downloadList = res.data | |||
// this.downloadList.forEach(item => { | |||
// if (item.typeCode === 'equipmentInfoImage') { | |||
// this.imgList.push(item) | |||
// } else { | |||
// this.fileList.push(item) | |||
// } | |||
// }) | |||
// }) | |||
// } | |||
// this.list.splice(0, this.list.length) | |||
equipmentTypeList(this.listQuery).then(response => { | |||
this.equipmentTypeOption = response.data.records | |||
}) | |||
@@ -525,7 +525,7 @@ export default { | |||
}, | |||
handleClick(raw) { | |||
if (raw.type === 'delete') { | |||
this.$confirm(`${this.$t('module.basicData.visual.TipsBefore')}[${raw.data.attrName}]?`, this.$t('module.basicData.visual.Tips'), { | |||
this.$confirm(`${this.$t('module.basicData.visual.TipsBefore')}[${raw.data.name}]?`, this.$t('module.basicData.visual.Tips'), { | |||
confirmButtonText: this.$t('module.basicData.visual.confirmButtonText'), | |||
cancelButtonText: this.$t('module.basicData.visual.cancelButtonText'), | |||
type: 'warning' | |||
@@ -1,8 +1,8 @@ | |||
<!-- | |||
* @Author: zwq | |||
* @Date: 2020-12-29 15:41:11 | |||
* @LastEditors: zwq | |||
* @LastEditTime: 2021-07-08 09:46:10 | |||
* @LastEditors: fzq | |||
* @LastEditTime: 2022-03-03 20:28:43 | |||
* @Description: | |||
--> | |||
<template> | |||
@@ -43,7 +43,7 @@ import HeadForm from '@/components/basicData/HeadForm' | |||
import BaseTable from '@/components/BaseTable' | |||
import Pagination from '@/components/Pagination' // Secondary package based on el-pagination | |||
import MethodBtn from '@/components/BaseTable/subcomponents/MethodBtn' | |||
// import { timeFormatter } from '@/filters' | |||
import { timeFormatter } from '@/filters' | |||
// import dataDict from '@/filters/DataDict' | |||
/** | |||
* 表格表头配置项 TypeScript接口注释 | |||
@@ -76,20 +76,15 @@ const tableBtn = [ | |||
} | |||
] | |||
const tableProps = [ | |||
// { | |||
// prop: 'createTime', | |||
// label: i18n.t('module.basicData.factory.createTime'), | |||
// filter: timeFormatter, | |||
// align: 'center' | |||
// }, | |||
{ | |||
prop: 'name', | |||
label: i18n.t('module.basicData.equipment.EquipmentName'), | |||
prop: 'createTime', | |||
label: i18n.t('module.basicData.factory.createTime'), | |||
filter: timeFormatter, | |||
align: 'center' | |||
}, | |||
{ | |||
prop: 'equipmentTypeName', | |||
label: i18n.t('module.basicData.equipment.EquipmentType'), | |||
prop: 'name', | |||
label: i18n.t('module.basicData.equipment.EquipmentName'), | |||
align: 'center' | |||
}, | |||
{ | |||
@@ -98,8 +93,8 @@ const tableProps = [ | |||
align: 'center' | |||
}, | |||
{ | |||
prop: 'equipmentGroupName', | |||
label: i18n.t('module.basicData.equipment.EquipmentGrouping'), | |||
prop: 'equipmentType', | |||
label: i18n.t('module.basicData.equipment.EquipmentType'), | |||
align: 'center' | |||
}, | |||
{ | |||
@@ -108,26 +103,11 @@ const tableProps = [ | |||
align: 'center' | |||
}, | |||
{ | |||
prop: 'maintenanceCycle', | |||
label: i18n.t('module.basicData.equipment.maintenanceCycle'), | |||
align: 'center' | |||
}, | |||
{ | |||
prop: 'maintenanceTime', | |||
label: i18n.t('module.basicData.equipment.maintenanceTime'), | |||
align: 'center' | |||
}, | |||
{ | |||
prop: 'description', | |||
label: i18n.t('module.basicData.equipment.FunctionDescription'), | |||
prop: 'abbr', | |||
label: i18n.t('module.basicData.equipment.shortName'), | |||
align: 'center' | |||
} | |||
// { | |||
// prop: 'abbr', | |||
// label: i18n.t('module.basicData.visual.Abbreviation'), | |||
// align: 'center' | |||
// } | |||
// { | |||
// prop: 'estatus', | |||
// label: i18n.t('module.basicData.visual.CurrentState'), | |||
// filter: dataDict('enableState'), | |||
@@ -197,6 +177,7 @@ export default { | |||
this.listQuery.name = key | |||
this.listQuery.code = key | |||
equipmentInfoList(this.listQuery).then(response => { | |||
console.log(response) | |||
if (response.data.records) { | |||
this.list = response.data.records | |||
} else { | |||
@@ -1,8 +1,8 @@ | |||
<!-- | |||
* @Author: zwq | |||
* @Date: 2020-12-29 15:41:11 | |||
* @LastEditors: zwq | |||
* @LastEditTime: 2021-03-11 16:48:22 | |||
* @LastEditors: fzq | |||
* @LastEditTime: 2022-03-03 18:33:17 | |||
* @Description: | |||
--> | |||
<template> | |||
@@ -180,6 +180,7 @@ export default { | |||
this.listLoading = true | |||
this.listQuery.name = key | |||
this.listQuery.code = key | |||
console.log(this.listQuery) | |||
materialList(this.listQuery).then(response => { | |||
if (response.data.records) { | |||
this.list = response.data.records | |||
@@ -0,0 +1,135 @@ | |||
<template> | |||
<el-dialog | |||
:title="!dataForm.id ? 'btn.add' : 'btn.edit' | i18nFilter" | |||
:visible.sync="visible" | |||
> | |||
<el-form ref="dataForm" :model="dataForm" :rules="dataRule" label-width="130px" @keyup.enter.native="dataFormSubmit()"> | |||
<el-form-item :label="$t('module.basicData.storageBox.name')" prop="storageBoxName"> | |||
<el-input v-model="dataForm.storageBoxName" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.storageBox.name')])" clearable /> | |||
</el-form-item> | |||
<el-form-item :label="$t('module.basicData.storageBox.code')" prop="code"> | |||
<el-input v-model="dataForm.code" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.storageBox.code')])" clearable /> | |||
</el-form-item> | |||
<el-form-item :label="$t('module.basicData.visual.EnglishName')" prop="enName"> | |||
<el-input v-model="dataForm.enName" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.visual.EnglishName')])" clearable /> | |||
</el-form-item> | |||
<el-form-item :label="$t('module.basicData.storageBox.status')" prop="status"> | |||
<el-select v-model="dataForm.status" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.storageBox.status')])" clearable> | |||
<el-option | |||
v-for="item in options" | |||
:key="item.value" | |||
:label="item.label" | |||
:value="item.value" | |||
/> | |||
</el-select> | |||
</el-form-item> | |||
<el-form-item :label="$t('module.basicData.visual.Remarks')" prop="note"> | |||
<el-input v-model="dataForm.note" :placeholder="$i18nForm(['placeholder.input', $t('module.basicData.visual.Remarks')])" clearable /> | |||
</el-form-item> | |||
</el-form> | |||
<span slot="footer" class="dialog-footer"> | |||
<el-button @click="visible = false">{{ 'btn.cancel' | i18nFilter }}</el-button> | |||
<el-button type="primary" @click="dataFormSubmit()">{{ 'btn.confirm' | i18nFilter }}</el-button> | |||
</span> | |||
</el-dialog> | |||
</template> | |||
<script> | |||
import { storageBoxDetail, storageBoxUpdate, storageBoxAdd, storageBoxCode } from '@/api/basicData/Cache/storageBox' | |||
export default { | |||
data() { | |||
return { | |||
visible: false, | |||
dataForm: { | |||
id: 0, | |||
storageBoxName: '', | |||
code: '', | |||
status: 0, | |||
enName: '', | |||
note: '' | |||
}, | |||
options: [ | |||
{ | |||
value: 0, | |||
label: '正常' | |||
}, | |||
{ | |||
value: 1, | |||
label: '维修中' | |||
}, | |||
{ | |||
value: 2, | |||
label: '报废' | |||
} | |||
], | |||
dataRule: { | |||
storageBoxName: [ | |||
{ | |||
required: true, | |||
message: this.$i18nForm(['placeholder.input', this.$t('module.basicData.storageBox.name')]), | |||
trigger: 'blur' } | |||
], | |||
code: [ | |||
{ | |||
required: true, | |||
message: this.$i18nForm(['placeholder.input', this.$t('module.basicData.storageBox.code')]), | |||
trigger: 'blur' } | |||
] | |||
} | |||
} | |||
}, | |||
methods: { | |||
init(id) { | |||
this.dataForm.id = id || '' | |||
this.visible = true | |||
this.$nextTick(() => { | |||
this.$refs['dataForm'].resetFields() | |||
if (this.dataForm.id) { | |||
storageBoxDetail(this.dataForm.id).then(res => { | |||
this.dataForm = res.data | |||
}) | |||
} else { | |||
storageBoxCode().then(res => { | |||
this.dataForm.code = res.data | |||
}) | |||
} | |||
}) | |||
}, | |||
// 表单提交 | |||
dataFormSubmit() { | |||
this.$refs['dataForm'].validate((valid) => { | |||
if (valid) { | |||
const data = this.dataForm | |||
data.id = this.dataForm.id | |||
if (this.dataForm.id) { | |||
storageBoxUpdate(data).then(res => { | |||
this.$message({ | |||
message: this.$t('module.basicData.visual.success'), | |||
type: 'success', | |||
duration: 1500, | |||
onClose: () => { | |||
this.visible = false | |||
this.$emit('refreshDataList') | |||
} | |||
}) | |||
}) | |||
} else { | |||
storageBoxAdd(data).then(res => { | |||
this.$message({ | |||
message: this.$t('module.basicData.visual.success'), | |||
type: 'success', | |||
duration: 1500, | |||
onClose: () => { | |||
this.visible = false | |||
this.$emit('refreshDataList') | |||
} | |||
}) | |||
}) | |||
} | |||
} | |||
}) | |||
} | |||
} | |||
} | |||
</script> |
@@ -0,0 +1,204 @@ | |||
<!-- | |||
* @Descripttion: | |||
* @version: | |||
* @Author: fzq | |||
* @Date: 2022-03-03 09:51:25 | |||
* @LastEditors: fzq | |||
* @LastEditTime: 2022-03-03 10:06:26 | |||
--> | |||
<template> | |||
<div class="app-container"> | |||
<head-form | |||
:placeholder-name="placeholderName" | |||
:key-name="keyName" | |||
@getDataList="getList" | |||
@add="addNew" | |||
/> | |||
<base-table | |||
:page="listQuery.current" | |||
:limit="listQuery.size" | |||
:table-config="tableProps" | |||
:table-data="list" | |||
:is-loading="listLoading" | |||
> | |||
<method-btn | |||
slot="handleBtn" | |||
:width="trueWidth" | |||
:method-list="tableBtn" | |||
@clickBtn="handleClick" | |||
/> | |||
</base-table> | |||
<pagination | |||
v-show="total > 0" | |||
:total="total" | |||
:page.sync="listQuery.current" | |||
:limit.sync="listQuery.size" | |||
@pagination="getList()" | |||
/> | |||
<processInfo-add v-if="addOrUpdateVisible" ref="addOrUpdate" :cache-id="listQuery.cacheId" @refreshDataList="getList" /> | |||
</div> | |||
</template> | |||
<script>import i18n from '@/lang' | |||
import HeadForm from '@/components/basicData/HeadForm' | |||
import BaseTable from '@/components/BaseTable' | |||
import processInfoAdd from './components/processInfo-add' | |||
import Pagination from '@/components/Pagination' // Secondary package based on el-pagination | |||
import MethodBtn from '@/components/BaseTable/subcomponents/MethodBtn' | |||
import { storageBoxList, storageBoxDelete } from '@/api/basicData/Cache/storageBox' | |||
import { timeFormatter } from '@/filters' | |||
import basicData from '@/filters/basicData' | |||
/** | |||
* 表格表头配置项 TypeScript接口注释 | |||
* tableConfig<ConfigItem> = [] | |||
* | |||
* Interface ConfigItem = { | |||
* prop: string, | |||
* label: string, | |||
* width: string, | |||
* align: string, | |||
* subcomponent: function, | |||
* filter: function | |||
* } | |||
* | |||
* | |||
*/ | |||
const tableBtn = [ | |||
{ | |||
type: 'edit', | |||
btnName: 'btn.edit' | |||
}, | |||
{ | |||
type: 'delete', | |||
btnName: 'btn.delete' | |||
} | |||
] | |||
const tableProps = [ | |||
{ | |||
prop: 'createTime', | |||
label: i18n.t('module.basicData.factory.createTime'), | |||
filter: timeFormatter, | |||
align: 'center' | |||
}, | |||
{ | |||
prop: 'storageBoxName', | |||
label: i18n.t('module.basicData.storageBox.name'), | |||
align: 'center' | |||
}, | |||
{ | |||
prop: 'code', | |||
label: i18n.t('module.basicData.storageBox.code'), | |||
align: 'center' | |||
}, | |||
{ | |||
prop: 'enName', | |||
label: i18n.t('module.basicData.visual.EnglishName'), | |||
align: 'center' | |||
}, | |||
{ | |||
prop: 'status', | |||
label: i18n.t('module.basicData.storageBox.status'), | |||
filter: basicData('storage'), | |||
align: 'center' | |||
}, | |||
{ | |||
prop: 'note', | |||
label: i18n.t('module.basicData.storageBox.remark'), | |||
align: 'center' | |||
} | |||
] | |||
export default { | |||
name: 'Area', | |||
components: { Pagination, BaseTable, MethodBtn, HeadForm, processInfoAdd }, | |||
filters: { | |||
statusFilter(status) { | |||
const statusMap = { | |||
published: 'success', | |||
draft: 'info', | |||
deleted: 'danger' | |||
} | |||
return statusMap[status] | |||
} | |||
}, | |||
data() { | |||
return { | |||
addOrUpdateVisible: false, | |||
keyName: i18n.t('module.basicData.visual.keyword'), | |||
placeholderName: this.$t('module.basicData.storageBox.name') + this.$t('module.basicData.visual.Or') + this.$t('module.basicData.storageBox.code'), | |||
tableBtn, | |||
trueWidth: 200, | |||
tableProps, | |||
list: [], | |||
areaList: [], | |||
total: 0, | |||
listLoading: true, | |||
listQuery: { | |||
current: 1, | |||
size: 10 | |||
} | |||
} | |||
}, | |||
created() { | |||
this.getList() | |||
}, | |||
methods: { | |||
handleClick(raw) { | |||
if (raw.type === 'delete') { | |||
this.$confirm(`${this.$t('module.basicData.visual.TipsBefore')}[${raw.data.storageBoxName}]?`, this.$t('module.basicData.visual.Tips'), { | |||
confirmButtonText: this.$t('module.basicData.visual.confirmButtonText'), | |||
cancelButtonText: this.$t('module.basicData.visual.cancelButtonText'), | |||
type: 'warning' | |||
}).then(() => { | |||
storageBoxDelete(raw.data.id).then(response => { | |||
this.$message({ | |||
message: this.$t('module.basicData.visual.success'), | |||
type: 'success', | |||
duration: 1500, | |||
onClose: () => { | |||
this.getList() | |||
} | |||
}) | |||
}) | |||
}).catch(() => {}) | |||
} else if (raw.type === 'edit') { | |||
this.addNew(raw.data.id) | |||
} else { | |||
this.addNew(raw.data.id, true) | |||
} | |||
}, | |||
getList(key) { | |||
this.listLoading = true | |||
this.listQuery.storageBoxName = key | |||
storageBoxList(this.listQuery).then(response => { | |||
if (response.data.records) { | |||
this.list = response.data.records | |||
} else { | |||
this.list.splice(0, this.list.length) | |||
} | |||
this.total = response.data.total | |||
this.listLoading = false | |||
}) | |||
}, | |||
// 新增 / 修改 | |||
addNew(id) { | |||
this.addOrUpdateVisible = true | |||
this.$nextTick(() => { | |||
this.$refs.addOrUpdate.init(id, true) | |||
}) | |||
} | |||
} | |||
} | |||
</script> | |||
<style scoped> | |||
.edit-input { | |||
padding-right: 100px; | |||
} | |||
.cancel-btn { | |||
position: absolute; | |||
right: 15px; | |||
top: 10px; | |||
} | |||
</style> |
@@ -55,7 +55,7 @@ module.exports = { | |||
// target: 'http://127.0.0.1:8080', | |||
// target: 'http://192.168.0.70:8080', | |||
// target: 'http://192.168.0.199:8080', | |||
ws: true, | |||
changeOrigin: true, | |||
pathRewrite: { | |||
@@ -188,4 +188,4 @@ module.exports = { | |||
} | |||
) | |||
} | |||
} | |||
} |