Browse Source

feat: 设备出库可编辑 & 增加时间排序

master
betaqi 2 weeks ago
parent
commit
2eba9cad13
  1. 6
      src/components/dashboard/Edfs-table/index.vue
  2. 9
      src/pages/deviceInfo/components/DeliveryInfo.vue
  3. 21
      src/pages/deviceInfo/index.vue
  4. 21
      src/pages/deviceStorage/index.vue

6
src/components/dashboard/Edfs-table/index.vue

@ -17,6 +17,7 @@ @@ -17,6 +17,7 @@
@selection-change="handleSelectionChange"
class="edfs-table"
:span-method="spanMethod"
@sort-change="handleScrollChange"
>
<slot></slot>
</el-table>
@ -59,6 +60,7 @@ const emit = defineEmits<{ @@ -59,6 +60,7 @@ const emit = defineEmits<{
// 'page-size-change': [pageSize: number]
'page-current-change': [currentPage: number]
'selection-change': [selection: any[]]
'on-scroll-change':[data:any[]]
}>()
function onCurrentChange(currentRow: any, oldCurrentRow: any) {
@ -75,6 +77,10 @@ function handleSelectionChange(selection: any[]) { @@ -75,6 +77,10 @@ function handleSelectionChange(selection: any[]) {
emit('selection-change', selection)
}
function handleScrollChange(data:any[]) {
emit('on-scroll-change',data)
}
//
const pageSize = ref()

9
src/pages/deviceInfo/components/DeliveryInfo.vue

@ -9,7 +9,7 @@ @@ -9,7 +9,7 @@
:options="customerList"
placeholder="请选择出库流向"
keyTag="id"
:disabled="action === 'view' || !isShowSaveButton"
:disabled="action === 'view' "
labelTag="name"
valueTag="id"
:isShowLabel="false"
@ -19,7 +19,7 @@ @@ -19,7 +19,7 @@
<div class="label">设备价格:</div>
<number-input
v-model="params.price"
:disabled="action === 'view' || !isShowSaveButton"
:disabled="action === 'view' "
placeholder="请输入设备价格"
/>
</div>
@ -31,7 +31,7 @@ @@ -31,7 +31,7 @@
type="textarea"
v-model="params.description"
placeholder="请输入备注"
:disabled="action === 'view' || !isShowSaveButton"
:disabled="action === 'view' "
:autosize="{ minRows: 3, maxRows: 4 }"
/>
</div>
@ -41,7 +41,7 @@ @@ -41,7 +41,7 @@
type="primary"
class="save-button"
@click="onSave"
v-if="isShowSaveButton"
v-if="action != 'view'"
/>
</div>
</div>
@ -105,6 +105,7 @@ async function onSave() { @@ -105,6 +105,7 @@ async function onSave() {
const res = await storageOutDevice(options)
if (isResError(res)) return
message.success('出口成功')
emit('onSave')
}

21
src/pages/deviceInfo/index.vue

@ -23,6 +23,7 @@ @@ -23,6 +23,7 @@
:page-size="queryParams.pageSize"
row-class-name="row"
@pageCurrentChange="handleJump"
@onScrollChange="onScrollChange"
>
<el-table-column type="index" label="序号" align="center" width="80">
<template #default="scope">
@ -34,6 +35,7 @@ @@ -34,6 +35,7 @@
v-if="col.prop.endsWith('Time')"
:label="col.label"
:min-width="col.minWidth"
sortable="custom"
>
<template #default="scope">
{{ dayjs(scope.row.createTime).format('YYYY-MM-DD HH:mm:ss') }}
@ -72,7 +74,7 @@ @@ -72,7 +74,7 @@
<template #dropdown>
<el-dropdown-menu>
<el-dropdown-item command="info">
<Icon icon="solar:clapperboard-edit-linear" />编辑基础信息
<Icon icon="solar:clapperboard-edit-linear" />编辑信息
</el-dropdown-item>
<el-dropdown-item command="test" v-if="scope.row.status === 1">
<Icon icon="solar:document-add-outline" />测试结果录入
@ -133,7 +135,7 @@ const route = useRoute() @@ -133,7 +135,7 @@ const route = useRoute()
const updateId = ref<number | undefined>(
route.query.updateId !== undefined && route.query.updateId !== null
? Number(route.query.updateId)
: undefined
: undefined,
)
onActivated(async () => {
@ -166,7 +168,10 @@ const getList = async () => { @@ -166,7 +168,10 @@ const getList = async () => {
}
loading.value = true
const options = Object.assign({}, queryParams, filter.value)
const options = Object.assign({}, queryParams, filter.value, {
sortName: 'create_time',
sortAsc: isAscending.value,
})
const res = await getDevicePage(options)
@ -183,6 +188,16 @@ function handleJump(page: number) { @@ -183,6 +188,16 @@ function handleJump(page: number) {
getList()
}
const isAscending = ref(false)
watch(isAscending, () => {
getList()
})
function onScrollChange(data: any) {
isAscending.value = data.order === 'ascending'
}
const filter = ref<any>({})
function onSearch(search: any) {
queryParams.pageNo = 1

21
src/pages/deviceStorage/index.vue

@ -20,6 +20,7 @@ @@ -20,6 +20,7 @@
:page-size="queryParams.pageSize"
row-class-name="row"
@pageCurrentChange="handleJump"
@onScrollChange="onScrollChange"
>
<el-table-column type="index" label="序号" align="center" width="80">
<template #default="scope">
@ -31,6 +32,7 @@ @@ -31,6 +32,7 @@
v-if="col.prop.endsWith('Time')"
:label="storageStatus + col.label"
:min-width="col.minWidth"
sortable="custom"
>
<template #default="scope">
{{ dayjs(scope.row[col.prop]).format('YYYY-MM-DD HH:mm:ss') }}
@ -107,7 +109,12 @@ const getList = async () => { @@ -107,7 +109,12 @@ const getList = async () => {
}
loading.value = true
const res = await getStoragePage(Object.assign({}, queryParams, filter.value))
const res = await getStoragePage(
Object.assign({}, queryParams, filter.value, {
sortName: 'update_time',
sortAsc: isAscending.value,
}),
)
if (!isResError(res)) {
list.value = res.data.list
@ -118,7 +125,7 @@ const getList = async () => { @@ -118,7 +125,7 @@ const getList = async () => {
}
const storageStatus = computed(
() => statusList.find(item => item.value === filter.value.status)?.colName ?? ''
() => statusList.find(item => item.value === filter.value.status)?.colName ?? '',
)
const filter = ref<any>({})
@ -133,6 +140,16 @@ function handleJump(page: number) { @@ -133,6 +140,16 @@ function handleJump(page: number) {
getList()
}
const isAscending = ref(false)
watch(isAscending, () => {
getList()
})
function onScrollChange(data: any) {
isAscending.value = data.order === 'ascending'
}
function addMaintain(row: any) {
router.push({
path: '/device/deviceOperation',

Loading…
Cancel
Save