Browse Source

BUG修改

master
parent
commit
e7ee5ce90d
  1. 10
      src/views/eam/basic/deviceMaintenance/deviceMaintenance.data.ts
  2. 10
      src/views/eam/basic/inspection/inspection.data.ts
  3. 11
      src/views/eam/basic/item/item.data.ts
  4. 11
      src/views/eam/basic/location/location.data.ts
  5. 10
      src/views/eam/basic/locationArea/locationArea.data.ts
  6. 10
      src/views/eam/basic/moldMaintenance/moldMaintenance.data.ts
  7. 11
      src/views/eam/basic/supplier/supplier.data.ts
  8. 24
      src/views/eam/item/adjustRecord/adjustRecord.data.ts
  9. 64
      src/views/eam/item/applicationRecord/applicationRecordMain.data.ts
  10. 24
      src/views/eam/item/countRecord/countRecord.data.ts
  11. 12
      src/views/eam/item/countadjustWork/countadjustWork.data.ts
  12. 516
      src/views/eam/item/itemAccounts/index.vue
  13. 6
      src/views/eam/item/itemApplyMain/index.vue
  14. 214
      src/views/eam/item/itemApplyMain/itemApplyMain.data.ts

10
src/views/eam/basic/deviceMaintenance/deviceMaintenance.data.ts

@ -174,6 +174,16 @@ export const DeviceMaintenance = useCrudSchemas(reactive<CrudSchema[]>([
} }
} }
}, },
{
label: '创建时间',
field: 'createTime',
sort: 'custom',
formatter: dateFormatter,
isForm: false,
table: {
width: 170
},
},
{ {
label: '操作', label: '操作',
field: 'action', field: 'action',

10
src/views/eam/basic/inspection/inspection.data.ts

@ -144,6 +144,16 @@ export const DeviceMoldItems = useCrudSchemas(reactive<CrudSchema[]>([
} }
} }
}, },
{
label: '创建时间',
field: 'createTime',
sort: 'custom',
formatter: dateFormatter,
isForm: false,
table: {
width: 170
},
},
{ {
label: '操作', label: '操作',
field: 'action', field: 'action',

11
src/views/eam/basic/item/item.data.ts

@ -1,4 +1,5 @@
import type { CrudSchema } from '@/hooks/web/useCrudSchemas' import type { CrudSchema } from '@/hooks/web/useCrudSchemas'
import { dateFormatter } from '@/utils/formatTime'
// 表单校验 // 表单校验
export const ItemRules = reactive({ export const ItemRules = reactive({
@ -243,6 +244,16 @@ export const Item = useCrudSchemas(reactive<CrudSchema[]>([
} }
} }
}, },
{
label: '创建时间',
field: 'createTime',
sort: 'custom',
formatter: dateFormatter,
isForm: false,
table: {
width: 170
},
},
{ {
label: '描述', label: '描述',
field: 'describes', field: 'describes',

11
src/views/eam/basic/location/location.data.ts

@ -1,4 +1,5 @@
import type { CrudSchema } from '@/hooks/web/useCrudSchemas' import type { CrudSchema } from '@/hooks/web/useCrudSchemas'
import { dateFormatter } from '@/utils/formatTime'
import * as LocationAreaApi from '@/api/eam/basic/locationArea' import * as LocationAreaApi from '@/api/eam/basic/locationArea'
import { LocationArea } from '../locationArea/locationArea.data' import { LocationArea } from '../locationArea/locationArea.data'
@ -121,6 +122,16 @@ export const Location = useCrudSchemas(reactive<CrudSchema[]>([
} }
} }
}, },
{
label: '创建时间',
field: 'createTime',
sort: 'custom',
formatter: dateFormatter,
isForm: false,
table: {
width: 170
},
},
{ {
label: '描述', label: '描述',
field: 'description', field: 'description',

10
src/views/eam/basic/locationArea/locationArea.data.ts

@ -68,6 +68,16 @@ export const LocationArea = useCrudSchemas(reactive<CrudSchema[]>([
} }
} }
}, },
{
label: '创建时间',
field: 'createTime',
sort: 'custom',
formatter: dateFormatter,
isForm: false,
table: {
width: 170
},
},
{ {
label: '描述', label: '描述',

10
src/views/eam/basic/moldMaintenance/moldMaintenance.data.ts

@ -147,6 +147,16 @@ export const MoldMaintenance = useCrudSchemas(reactive<CrudSchema[]>([
} }
} }
}, },
{
label: '创建时间',
field: 'createTime',
sort: 'custom',
formatter: dateFormatter,
isForm: false,
table: {
width: 170
},
},
{ {
label: '操作', label: '操作',
field: 'action', field: 'action',

11
src/views/eam/basic/supplier/supplier.data.ts

@ -1,4 +1,5 @@
import type { CrudSchema } from '@/hooks/web/useCrudSchemas' import type { CrudSchema } from '@/hooks/web/useCrudSchemas'
import { dateFormatter } from '@/utils/formatTime'
import {validateHanset,validateFax,validatePostCode,validateYS} from '@/utils/validator' import {validateHanset,validateFax,validatePostCode,validateYS} from '@/utils/validator'
// 表单校验 // 表单校验
@ -77,6 +78,16 @@ export const Supplier = useCrudSchemas(reactive<CrudSchema[]>([
} }
} }
}, },
{
label: '创建时间',
field: 'createTime',
sort: 'custom',
formatter: dateFormatter,
isForm: false,
table: {
width: 170
},
},
{ {
label: '备注', label: '备注',
field: 'remark', field: 'remark',

24
src/views/eam/item/adjustRecord/adjustRecord.data.ts

@ -107,6 +107,18 @@ export const AdjustRecordDetail = useCrudSchemas(reactive<CrudSchema[]>([
table: { table: {
width: 180, width: 180,
}, },
form: {
component: 'InputNumber',
componentProps: {
min: 0,
precision: 2
}
},
tableForm: {
type: 'InputNumber',
min: 0,
precision: 2
}
}, },
{ {
label: '盘点数量', label: '盘点数量',
@ -117,6 +129,18 @@ export const AdjustRecordDetail = useCrudSchemas(reactive<CrudSchema[]>([
table: { table: {
width: 180, width: 180,
}, },
form: {
component: 'InputNumber',
componentProps: {
min: 0,
precision: 2
}
},
tableForm: {
type: 'InputNumber',
min: 0,
precision: 2
}
}, },
{ {
label: '操作', label: '操作',

64
src/views/eam/item/applicationRecord/applicationRecordMain.data.ts

@ -63,16 +63,16 @@ export const ApplicationRecordMain = useCrudSchemas(reactive<CrudSchema[]>([
disabled: true disabled: true
} }
}, },
{ {
label: '操作', label: '操作',
field: 'action', field: 'action',
isDetail: false, isDetail: false,
isForm: false, isForm: false,
table: { table: {
width: 200, width: 200,
fixed: 'right' fixed: 'right'
} }
} }
])) ]))
//表单校验 //表单校验
@ -164,17 +164,17 @@ export const ApplicationRecordDetail = useCrudSchemas(reactive<CrudSchema[]>([
searchListPlaceholder: '请选择单号', searchListPlaceholder: '请选择单号',
searchField: 'number', searchField: 'number',
searchTitle: '单号信息', searchTitle: '单号信息',
searchAllSchemas: DeviceMOLD.allSchemas, // 查询弹窗所需类 searchAllSchemas: DeviceMOLD.allSchemas, // 查询弹窗所需类
searchPage: DeviceMoldItemsApi.getNumber, // 查询弹窗所需分页方法 searchPage: DeviceMoldItemsApi.getNumber, // 查询弹窗所需分页方法
searchCondition: [{ searchCondition: [{
key: 'available', key: 'available',
value: "TRUE", value: "TRUE",
isMainValue: false isMainValue: false
}, { }, {
key: 'type', key: 'type',
value: "type", value: "type",
isMainValue: true isMainValue: true
} }
] ]
}, },
}, },
@ -188,14 +188,14 @@ export const ApplicationRecordDetail = useCrudSchemas(reactive<CrudSchema[]>([
form: { form: {
component: 'InputNumber', component: 'InputNumber',
componentProps: { componentProps: {
min: 1, min: 0,
precision: 6 precision: 2
} }
}, },
tableForm: { tableForm: {
type: 'InputNumber', type: 'InputNumber',
min: 1, min: 0,
precision: 6 precision: 2
} }
}, },
{ {
@ -205,18 +205,18 @@ export const ApplicationRecordDetail = useCrudSchemas(reactive<CrudSchema[]>([
table: { table: {
width: 150 width: 150
}, },
form: { form: {
component: 'InputNumber', component: 'InputNumber',
componentProps: { componentProps: {
min: 1, min: 0,
precision: 6 precision: 2
} }
}, },
tableForm: { tableForm: {
type: 'InputNumber', type: 'InputNumber',
min: 1, min: 0,
precision: 6 precision: 2
} }
}, },

24
src/views/eam/item/countRecord/countRecord.data.ts

@ -147,6 +147,18 @@ export const CountRecordDetail = useCrudSchemas(reactive<CrudSchema[]>([
table: { table: {
width: 180, width: 180,
}, },
form: {
component: 'InputNumber',
componentProps: {
min: 0,
precision: 2
}
},
tableForm: {
type: 'InputNumber',
min: 0,
precision: 2
}
}, },
{ {
label: '盘点数量', label: '盘点数量',
@ -157,6 +169,18 @@ export const CountRecordDetail = useCrudSchemas(reactive<CrudSchema[]>([
table: { table: {
width: 180, width: 180,
}, },
form: {
component: 'InputNumber',
componentProps: {
min: 0,
precision: 2
}
},
tableForm: {
type: 'InputNumber',
min: 0,
precision: 2
}
}, },
{ {
label: '操作', label: '操作',

12
src/views/eam/item/countadjustWork/countadjustWork.data.ts

@ -118,6 +118,18 @@ export const CountJobDetail = useCrudSchemas(reactive<CrudSchema[]>([
table: { table: {
width: 180, width: 180,
}, },
form: {
component: 'InputNumber',
componentProps: {
min: 0,
precision: 2
}
},
tableForm: {
type: 'InputNumber',
min: 0,
precision: 2
}
}, },
{ {
label: '操作', label: '操作',

516
src/views/eam/item/itemAccounts/index.vue

@ -4,29 +4,16 @@
<Search :schema="ItemAccounts.allSchemas.searchSchema" @search="setSearchParams" @reset="setSearchParams" /> <Search :schema="ItemAccounts.allSchemas.searchSchema" @search="setSearchParams" @reset="setSearchParams" />
</ContentWrap> </ContentWrap>
<!-- 列表头部 --> <!-- 列表头部 -->
<TableHead <TableHead :HeadButttondata="HeadButttondata" @button-base-click="buttonBaseClick" :routeName="routeName"
:HeadButttondata="HeadButttondata" @updataTableColumns="updataTableColumns" @searchFormClick="searchFormClick" :allSchemas="ItemAccounts.allSchemas" />
@button-base-click="buttonBaseClick"
:routeName="routeName"
@updataTableColumns="updataTableColumns"
@searchFormClick="searchFormClick"
:allSchemas="ItemAccounts.allSchemas"
/>
<!-- 列表 --> <!-- 列表 -->
<ContentWrap> <ContentWrap>
<Table <Table :columns="tableColumns" :data="tableObject.tableList" :loading="tableObject.loading" :pagination="{
:columns="tableColumns"
:data="tableObject.tableList"
:loading="tableObject.loading"
:pagination="{
total: tableObject.total total: tableObject.total
}" }" v-model:pageSize="tableObject.pageSize" v-model:currentPage="tableObject.currentPage"
v-model:pageSize="tableObject.pageSize" v-model:sort="tableObject.sort">
v-model:currentPage="tableObject.currentPage"
v-model:sort="tableObject.sort"
>
<template #code="{row}"> <template #code="{row}">
<el-button type="primary" link @click="openDetail(row, '代码', row.code)"> <el-button type="primary" link @click="openDetail(row, '代码', row.code)">
<span>{{ row.code }}</span> <span>{{ row.code }}</span>
@ -39,289 +26,282 @@
</ContentWrap> </ContentWrap>
<!-- 表单弹窗添加/修改 --> <!-- 表单弹窗添加/修改 -->
<BasicForm <BasicForm ref="basicFormRef" @success="formsSuccess" :rules="ItemAccountsRules"
ref="basicFormRef" :formAllSchemas="ItemAccounts.allSchemas" :apiUpdate="ItemAccountsApi.updateItemAccounts"
@success="formsSuccess" :apiCreate="ItemAccountsApi.createItemAccounts" @searchTableSuccess="searchTableSuccess" :isBusiness="false" />
:rules="ItemAccountsRules"
:formAllSchemas="ItemAccounts.allSchemas"
:apiUpdate="ItemAccountsApi.updateItemAccounts"
:apiCreate="ItemAccountsApi.createItemAccounts"
@searchTableSuccess="searchTableSuccess"
:isBusiness="false"
/>
<SearchTable ref="searchTableRef" @searchTableSuccess="submitItem" /> <SearchTable ref="searchTableRef" @searchTableSuccess="submitItem" />
<!-- 详情 --> <!-- 详情 -->
<Detail ref="detailRef" :isBasic="true" :allSchemas="ItemAccounts.allSchemas" /> <Detail ref="detailRef" :isBasic="true" :allSchemas="ItemAccounts.allSchemas" />
<!-- 导入 --> <!-- 导入 -->
<ImportForm ref="importFormRef" url="/eam/item-accounts/import" :importTemplateData="importTemplateData" @success="importSuccess" /> <ImportForm ref="importFormRef" url="/eam/item-accounts/import" :importTemplateData="importTemplateData"
@success="importSuccess" />
</template> </template>
<script setup lang="ts"> <script setup lang="ts">
import download from '@/utils/download' import download from '@/utils/download'
import { ItemAccounts,ItemAccountsRules } from './itemAccounts.data' import { ItemAccounts, ItemAccountsRules } from './itemAccounts.data'
import * as ItemAccountsApi from '@/api/eam/item/itemAccounts' import * as ItemAccountsApi from '@/api/eam/item/itemAccounts'
import { Item } from '@/views/eam/basic/item/item.data' import { Item } from '@/views/eam/basic/item/item.data'
import * as ItemApi from '@/api/eam/basic/item' import * as ItemApi from '@/api/eam/basic/item'
import * as defaultButtons from '@/utils/disposition/defaultButtons' import * as defaultButtons from '@/utils/disposition/defaultButtons'
import TableHead from '@/components/TableHead/src/TableHead.vue' import TableHead from '@/components/TableHead/src/TableHead.vue'
import ImportForm from '@/components/ImportForm/src/ImportForm.vue' import ImportForm from '@/components/ImportForm/src/ImportForm.vue'
import Detail from '@/components/Detail/src/Detail.vue' import Detail from '@/components/Detail/src/Detail.vue'
defineOptions({ name: 'ItemAccounts' }) defineOptions({ name: 'ItemAccounts' })
const message = useMessage() //
const { t } = useI18n() //
const route = useRoute() //
const routeName = ref()
const locationNumber = ref()
const wantId1 = ref()
routeName.value = route.name
const tableColumns = ref(ItemAccounts.allSchemas.tableColumns)
//
const searchTableSuccess = (formField, searchField, val, formRef) => {
nextTick(() => {
const setV = {}
setV[formField] = val[0][searchField]
formRef.setValues(setV)
})
}
const message = useMessage() // //
const { t } = useI18n() // const updataTableColumns = (val) => {
const route = useRoute() // tableColumns.value = val
const routeName = ref() }
const locationNumber = ref()
const wantId1 = ref()
routeName.value = route.name
const tableColumns = ref(ItemAccounts.allSchemas.tableColumns)
// const { tableObject, tableMethods } = useTable({
const searchTableSuccess = (formField, searchField, val, formRef) => { getListApi: ItemAccountsApi.getItemAccountsPage //
nextTick(() => {
const setV = {}
setV[formField] = val[0][searchField]
formRef.setValues(setV)
}) })
}
//
const updataTableColumns = (val) => {
tableColumns.value = val
}
const { tableObject, tableMethods } = useTable({ //
getListApi: ItemAccountsApi.getItemAccountsPage // const { getList, setSearchParams } = tableMethods
})
//
// const HeadButttondata = [
const { getList, setSearchParams } = tableMethods defaultButtons.defaultAddBtn({ hasPermi: 'eam:itemAccounts:create' }), //
defaultButtons.defaultImportBtn({ hasPermi: 'eam:itemAccounts:import' }), //
// defaultButtons.defaultExportBtn({ hasPermi: 'eam:itemAccounts:export' }), //
const HeadButttondata = [ defaultButtons.defaultFreshBtn(null), //
defaultButtons.defaultAddBtn({hasPermi:'eam:itemAccounts:create'}), // defaultButtons.defaultFilterBtn(null), //
defaultButtons.defaultImportBtn({hasPermi:'eam:itemAccounts:import'}), // defaultButtons.defaultSetBtn(null), //
defaultButtons.defaultExportBtn({hasPermi:'eam:itemAccounts:export'}), // // {
defaultButtons.defaultFreshBtn(null), // // label: '',
defaultButtons.defaultFilterBtn(null), // // name: 'zdy',
defaultButtons.defaultSetBtn(null), // // hide: false,
// { // type: 'primary',
// label: '', // icon: 'Select',
// name: 'zdy', // color: ''
// hide: false, // },
// type: 'primary', ]
// icon: 'Select',
// color: '' //
// }, const buttonBaseClick = (val, item) => {
] if (val == 'add') { //
openForm('create')
// } else if (val == 'import') { //
const buttonBaseClick = (val, item) => { handleImport()
if (val == 'add') { // } else if (val == 'export') { //
openForm('create') handleExport()
} else if (val == 'import') { // } else if (val == 'refresh') { //
handleImport() getList()
} else if (val == 'export') { // } else if (val == 'filtrate') { //
handleExport() } else { //
} else if (val == 'refresh') { // console.log('其他按钮', item)
getList() }
} else if (val == 'filtrate') { //
} else { //
console.log('其他按钮', item)
} }
}
// -
const butttondata = [
defaultButtons.mainListEditBtn({hasPermi:'eam:itemAccounts:update'}), //
defaultButtons.replaceLocation(null), //
defaultButtons.mainListDeleteBtn({hasPermi:'eam:itemAccounts:delete'}), //
]
// - // -
const buttonTableClick = async (val, row) => { const butttondata = [
if (val == 'edit') { // defaultButtons.mainListEditBtn({ hasPermi: 'eam:itemAccounts:update' }), //
openForm('update', row) defaultButtons.replaceLocation(null), //
} else if (val == 'delete') { // defaultButtons.mainListDeleteBtn({ hasPermi: 'eam:itemAccounts:delete' }), //
handleDelete(row.id) ]
} else if (val == 'replaceLocation') {
openItem(row.locationNumber,row.id) // -
const buttonTableClick = async (val, row) => {
if (val == 'edit') { //
openForm('update', row)
} else if (val == 'delete') { //
handleDelete(row.id)
} else if (val == 'replaceLocation') {
openItem(row.locationNumber, row.id)
}
} }
}
const searchTableRef = ref()
/** 绑定备件操作 */
const openItem = async (number: String,wantId: number) => {
locationNumber.value = number
wantId1.value= wantId
searchTableRef.value.open(
'选择备件',
Item.allSchemas,
getDeviceItemList,
null,
Item.allSchemas.searchSchema,
true,
null,
null,
null,
null
)
}
const submitItem = async (formFieldRef, searchFieldRef, selections, typeRef, rowRef) => { const searchTableRef = ref()
const deviceItemRelList = selections.map((element) => ({ /** 绑定备件操作 */
id: wantId1.value, const openItem = async (number : String, wantId : number) => {
locationNumber: locationNumber.value, locationNumber.value = number
itemNumber: element.number, wantId1.value = wantId
searchTableRef.value.open(
})) '选择备件',
ItemAccountsApi.replaceLocation(deviceItemRelList).then((res) => { Item.allSchemas,
message.success(t('更换成功')) getDeviceItemList,
// null,
getList() Item.allSchemas.searchSchema,
}) true,
} null,
null,
const getItemWithOutBind = async () => { null,
try { null
const res = await ItemApi.getItemPage({ )
...Item.allSchemas.searchSchema, }
available:"TRUE"
const submitItem = async (formFieldRef, searchFieldRef, selections, typeRef, rowRef) => {
const deviceItemRelList = selections.map((element) => ({
id: wantId1.value,
locationNumber: locationNumber.value,
itemNumber: element.number,
}))
ItemAccountsApi.replaceLocation(deviceItemRelList).then((res) => {
message.success(t('更换成功'))
//
getList()
}) })
if (res.list?.length > 0) {
// const response = await getDeviceItemPage(DeviceAccounts.allSchemas.searchSchema);
// const filteredList = res.list.filter(item => {
// return !response.list?.some(element => {
// return item.number === element.itemNumber
// });
// });
// console.log('filteredList',filteredList);
const filteredList = res.list
return filteredList //
}
return [] //
} catch (error) {
console.error(error)
throw error //
} }
}
// getListApi getItemWithOutBind const getItemWithOutBind = async () => {
const getDeviceItemList = async () => { try {
tableObject.loading = true const res = await ItemApi.getItemPage({
try { ...Item.allSchemas.searchSchema,
const res = await getItemWithOutBind() available: "TRUE"
let result = {
list: res, })
total: res.length if (res.list?.length > 0) {
// const response = await getDeviceItemPage(DeviceAccounts.allSchemas.searchSchema);
// const filteredList = res.list.filter(item => {
// return !response.list?.some(element => {
// return item.number === element.itemNumber
// });
// });
// console.log('filteredList',filteredList);
const filteredList = res.list
return filteredList //
}
return [] //
} catch (error) {
console.error(error)
throw error //
} }
return result
} catch (error) {
console.error(error)
} finally {
tableObject.loading = false
} }
}
/** 添加/修改操作 */
const basicFormRef = ref()
const openForm = (type: string, row?: any) => {
basicFormRef.value.open(type, row)
}
// form // getListApi getItemWithOutBind
const formsSuccess = async (formType,data) => { const getDeviceItemList = async () => {
var isHave =ItemAccounts.allSchemas.formSchema.some(function (item) { tableObject.loading = true
return item.field === 'activeTime' || item.field === 'expireTime'; try {
}); const res = await getItemWithOutBind()
if(isHave){ let result = {
if(data.activeTime && data.expireTime && data.activeTime >=data.expireTime){ list: res,
message.error('失效时间要大于生效时间') total: res.length
return; }
return result
} catch (error) {
console.error(error)
} finally {
tableObject.loading = false
} }
} }
if(data.activeTime==0)data.activeTime = null;
if(data.expireTime==0)data.expireTime = null; /** 添加/修改操作 */
if (formType === 'create') { const basicFormRef = ref()
await ItemAccountsApi.createItemAccounts(data) const openForm = (type : string, row ?: any) => {
message.success(t('common.createSuccess')) basicFormRef.value.open(type, row)
} else {
await ItemAccountsApi.updateItemAccounts(data)
message.success(t('common.updateSuccess'))
} }
basicFormRef.value.dialogVisible = false
getList()
}
/** 详情操作 */ // form
const detailRef = ref() const formsSuccess = async (formType, data) => {
const openDetail = (row: any, titleName: any, titleValue: any) => { var isHave = ItemAccounts.allSchemas.formSchema.some(function (item) {
detailRef.value.openDetail(row, titleName, titleValue, 'basicItemAccounts') return item.field === 'activeTime' || item.field === 'expireTime';
} });
if (isHave) {
if (data.activeTime && data.expireTime && data.activeTime >= data.expireTime) {
message.error('失效时间要大于生效时间')
return;
}
}
if (data.activeTime == 0) data.activeTime = null;
if (data.expireTime == 0) data.expireTime = null;
if (formType === 'create') {
await ItemAccountsApi.createItemAccounts(data)
message.success(t('common.createSuccess'))
} else {
await ItemAccountsApi.updateItemAccounts(data)
message.success(t('common.updateSuccess'))
}
basicFormRef.value.dialogVisible = false
getList()
}
/** 删除按钮操作 */ /** 详情操作 */
const handleDelete = async (id: number) => { const detailRef = ref()
try { const openDetail = (row : any, titleName : any, titleValue : any) => {
// detailRef.value.openDetail(row, titleName, titleValue, 'basicItemAccounts')
await message.delConfirm() }
//
await ItemAccountsApi.deleteItemAccounts(id)
message.success(t('common.delSuccess'))
//
await getList()
} catch {}
}
/** 导出按钮操作 */ /** 删除按钮操作 */
const exportLoading = ref(false) // const handleDelete = async (id : number) => {
const handleExport = async () => { try {
try { //
// await message.delConfirm()
await message.exportConfirm() //
// await ItemAccountsApi.deleteItemAccounts(id)
exportLoading.value = true message.success(t('common.delSuccess'))
const data = await ItemAccountsApi.exportItemAccounts(tableObject.params) //
download.excel(data, '备件台账.xlsx') await getList()
} catch { } catch { }
} finally {
exportLoading.value = false
} }
}
/** 导入 */ /** 导出按钮操作 */
const importFormRef = ref() const exportLoading = ref(false) //
const handleImport = () => { const handleExport = async () => {
importFormRef.value.open() try {
} //
// await message.exportConfirm()
const importTemplateData = reactive({ //
templateUrl: '', exportLoading.value = true
templateTitle: '备件台账导入模版.xlsx' const data = await ItemAccountsApi.exportItemAccounts(tableObject.params)
}) download.excel(data, '备件台账.xlsx')
// } catch {
const importSuccess = () => { } finally {
getList() exportLoading.value = false
} }
}
// /** 导入 */
const searchFormClick = (searchData) => { const importFormRef = ref()
tableObject.params = { const handleImport = () => {
isSearch: true, importFormRef.value.open()
filters: searchData.filters }
//
const importTemplateData = reactive({
templateUrl: '',
templateTitle: '备件台账导入模版.xlsx'
})
//
const importSuccess = () => {
getList()
} }
getList() //
}
/** 初始化 **/ //
onMounted(async () => { const searchFormClick = (searchData) => {
getList() tableObject.params = {
importTemplateData.templateUrl = await ItemAccountsApi.importTemplate() isSearch: true,
}) filters: searchData.filters
}
getList() //
}
/** 初始化 **/
onMounted(async () => {
getList()
importTemplateData.templateUrl = await ItemAccountsApi.importTemplate()
})
</script> </script>

6
src/views/eam/item/itemApplyMain/index.vue

@ -261,6 +261,12 @@
const submitForm = async (formType, data) => { const submitForm = async (formType, data) => {
data.subList = tableData.value // data.subList = tableData.value //
try { try {
for (let item of tableData.value) {
if (item.qty > item.currentQty) {
message.error('要货计划数量不得大于订单数量-已计划数量')
return false;
}
}
if (formType === 'create') { if (formType === 'create') {
await ItemApplyMainApi.createItemApplyMain(data) await ItemApplyMainApi.createItemApplyMain(data)
message.success(t('common.createSuccess')) message.success(t('common.createSuccess'))

214
src/views/eam/item/itemApplyMain/itemApplyMain.data.ts

@ -21,7 +21,7 @@ export const ItemApplyMain = useCrudSchemas(reactive<CrudSchema[]>([
fixed: 'left' fixed: 'left'
}, },
}, },
{ {
label: '申领人', label: '申领人',
field: 'applyName', field: 'applyName',
sort: 'custom', sort: 'custom',
@ -111,135 +111,135 @@ export const ItemApplyDetail = useCrudSchemas(reactive<CrudSchema[]>([
isInpuFocusShow: true, isInpuFocusShow: true,
searchListPlaceholder: '请选择备件编号', searchListPlaceholder: '请选择备件编号',
searchField: 'number', searchField: 'number',
searchTitle: '库区信息', searchTitle: '备件信息',
searchAllSchemas: ItemAccounts.allSchemas, // 查询弹窗所需类 searchAllSchemas: ItemAccounts.allSchemas, // 查询弹窗所需类
searchPage: ItemAccountsApi.getItemAccountsPage, // 查询弹窗所需分页方法 searchPage: ItemAccountsApi.getItemAccountsPage, // 查询弹窗所需分页方法
searchCondition: [{ searchCondition: [{
key: 'available', key: 'available',
value: 'TRUE', value: 'TRUE',
isMainValue: false isMainValue: false
} },
] ]
}, },
}, },
{ {
label: '类型', label: '类型',
field: 'type', field: 'type',
sort: 'custom', sort: 'custom',
dictType: DICT_TYPE.DEVICE_MOLD_TYPE, dictType: DICT_TYPE.DEVICE_MOLD_TYPE,
dictClass: 'string', dictClass: 'string',
isSearch: true, isSearch: true,
isTable: true, isTable: true,
table: { table: {
width: 150 width: 150
},
tableForm: {
type: 'Select',
disabled: false
}
}, },
tableForm: {
type: 'Select',
disabled: false
}
},
{ {
label: '设备/模具编号', label: '设备/模具编号',
field: 'deviceNumber', field: 'deviceNumber',
sort: 'custom', sort: 'custom',
isSearch: true, isSearch: true,
tableForm: { tableForm: {
isInpuFocusShow: true, isInpuFocusShow: true,
searchListPlaceholder: '请选择单号', searchListPlaceholder: '请选择单号',
searchField: 'number', searchField: 'number',
searchTitle: '单号信息', searchTitle: '单号信息',
searchAllSchemas: DeviceMOLD.allSchemas, // 查询弹窗所需类 searchAllSchemas: DeviceMOLD.allSchemas, // 查询弹窗所需类
searchPage: DeviceMoldItemsApi.getNumber, // 查询弹窗所需分页方法 searchPage: DeviceMoldItemsApi.getNumber, // 查询弹窗所需分页方法
searchCondition: [{ searchCondition: [{
key: 'available', key: 'available',
value: "TRUE", value: "TRUE",
isMainValue: false isMainValue: false
}, { }, {
key: 'type', key: 'type',
value: "type", value: "type",
isMainValue: true isMainValue: true
} }
] ]
},
}, },
{ },
label: '申领数量', {
field: 'qty', label: '申领数量',
sort: 'custom', field: 'qty',
table: { sort: 'custom',
width: 150 table: {
}, width: 150
form: { },
component: 'InputNumber', form: {
componentProps: { component: 'InputNumber',
min: 1, componentProps: {
precision: 6 min: 0,
} precision: 2
},
tableForm: {
type: 'InputNumber',
min: 1,
precision: 6
} }
}, },
{ tableForm: {
label: '库存数量', type: 'InputNumber',
field: 'currentQty', min: 0,
sort: 'custom', precision: 2
table: { }
width: 150 },
}, {
form: { label: '库存数量',
component: 'InputNumber', field: 'currentQty',
componentProps: { sort: 'custom',
min: 1, table: {
precision: 6 width: 150
} },
}, form: {
tableForm: { component: 'InputNumber',
type: 'InputNumber', componentProps: {
min: 1, min: 0,
precision: 6 precision: 2
} }
}, },
tableForm: {
type: 'InputNumber',
min: 0,
precision: 2
}
},
{ {
label: '是否可用', label: '是否可用',
field: 'available', field: 'available',
sort: 'custom', sort: 'custom',
dictType: DICT_TYPE.TRUE_FALSE, dictType: DICT_TYPE.TRUE_FALSE,
dictClass: 'string', dictClass: 'string',
isSearch: true, isSearch: true,
isTable: true, isTable: true,
table: { table: {
width: 150 width: 150
},
tableForm: {
type: 'Select',
disabled: true
}
}, },
tableForm: {
type: 'Select',
disabled: true
}
},
{ {
label: '是否以旧换新', label: '是否以旧换新',
field: 'isRadeIn', field: 'isRadeIn',
sort: 'custom', sort: 'custom',
dictType: DICT_TYPE.TRUE_FALSE, dictType: DICT_TYPE.TRUE_FALSE,
dictClass: 'string', dictClass: 'string',
isSearch: true, isSearch: true,
isTable: true, isTable: true,
table: { table: {
width: 150 width: 150
},
tableForm: {
type: 'Select',
disabled: true
}
}, },
tableForm: {
type: 'Select',
disabled: true
}
},
{ {
label: '备注', label: '备注',
field: 'remark', field: 'remark',

Loading…
Cancel
Save