Browse Source

修复测试bug

master
ljlong_2630 8 months ago
parent
commit
55c00ae585
  1. 6
      src/api/infra/file/index.ts
  2. 70
      src/components/Detail/src/DetailDeviceLedger.vue
  3. 35
      src/views/eam/device/deviceAccounts/deviceAccounts.data.ts
  4. 17
      src/views/eam/device/deviceAccounts/index.vue
  5. 3
      src/views/eam/device/devicemaintainjob/index.vue
  6. 41
      src/views/eam/device/devicemaintenancejob/deviceMaintenanceMain.data.ts
  7. 16
      src/views/eam/device/devicemaintenancejob/index.vue
  8. 24
      src/views/eam/mold/moldAccounts/index.vue
  9. 34
      src/views/eam/mold/moldAccounts/moldAccounts.data.ts
  10. 11
      src/views/eam/mold/moldmaintenancejob/index.vue
  11. 41
      src/views/eam/mold/moldmaintenancejob/moldMaintenanceMain.data.ts

6
src/api/infra/file/index.ts

@ -15,3 +15,9 @@ export const getFilePage = (params: FilePageReqVO) => {
export const deleteFile = (id: number) => { export const deleteFile = (id: number) => {
return request.delete({ url: '/infra/file/delete?id=' + id }) return request.delete({ url: '/infra/file/delete?id=' + id })
} }
// 删除文件
export const selectList = () => {
return request.get({ url: '/infra/file/selectList' })
}

70
src/components/Detail/src/DetailDeviceLedger.vue

@ -194,8 +194,9 @@
:width="600" :width="600"
:maxHeight="900" :maxHeight="900"
:style="{height:'600px'}" :style="{height:'600px'}"
:key="dialogFormKey"
> >
<el-form ref="fileDialogUploadRef" :model="fileDialogUploadData" :key="dialogFormKey"> <el-form ref="fileDialogUploadRef" :model="fileDialogUploadData" >
<el-form-item label="文件选择"> <el-form-item label="文件选择">
<UploadFile v-model="fileDialogUploadData.filePathList" :limit="20" /> <UploadFile v-model="fileDialogUploadData.filePathList" :limit="20" />
</el-form-item> </el-form-item>
@ -220,6 +221,8 @@ import BasicForm from '@/components/BasicForm/src/BasicForm.vue'
import TableHead from '@/components/TableHead/src/TableHead.vue' import TableHead from '@/components/TableHead/src/TableHead.vue'
import DetailTable from '@/components/DetailTable/src/DetailTable.vue' import DetailTable from '@/components/DetailTable/src/DetailTable.vue'
import { useUserStoreWithOut } from '@/store/modules/user' import { useUserStoreWithOut } from '@/store/modules/user'
import * as fileApi from '@/api/infra/file'
import { el } from 'element-plus/es/locale'
defineOptions({ name: 'Detail' }) defineOptions({ name: 'Detail' })
@ -242,6 +245,7 @@ const dialogUploadNumber = ref()
const dialogUploadBusiCode = ref() const dialogUploadBusiCode = ref()
const dialogFormKey = ref(0) const dialogFormKey = ref(0)
const milestoneUpdateKey = ref(0) const milestoneUpdateKey = ref(0)
const fileDialogUploadRef = ref()
const props = defineProps({ const props = defineProps({
// //
tabs: { tabs: {
@ -472,6 +476,9 @@ const change = (item, index) => {
subIndex.value = 'A' subIndex.value = 'A'
formKey.value += 1 formKey.value += 1
getImage() getImage()
} else if (item.prop == 'Milestone') {
imageParmas.value.funcCode = props.milestoneFuncCode
getImage()
} else { } else {
imageParmas.value.funcCode = '' imageParmas.value.funcCode = ''
imageParmas.value.fileBusiType = '' imageParmas.value.fileBusiType = ''
@ -591,6 +598,7 @@ defineExpose({ openDetail }) // 提供 open 方法,用于打开弹窗
// //
const formKey = ref(0) const formKey = ref(0)
const getImage = () => { const getImage = () => {
fileApi.selectList().then((response) => {
props props
.getImageApi({ .getImageApi({
number: masterParmas.value.number, number: masterParmas.value.number,
@ -603,11 +611,48 @@ const getImage = () => {
imageFormData.value.filePathList = res imageFormData.value.filePathList = res
} else { } else {
console.log(444,res) console.log(444,res)
fileFormData.value.filePathList = res fileFormData.value.filePathList = res.map(item=>{
response.forEach(element=>{
if(item.url == element.url){
item.name = element.name
}
})
return item
})
formKey.value += 1 formKey.value += 1
} }
}) })
}) })
})
}
const getImageDialog = () => {
fileApi.selectList().then((response) => {
props
.getImageApi({
number: masterParmas.value.number,
funcCode: imageParmas.value.funcCode,
fileBusiType: imageParmas.value.fileBusiType
})
.then((res) => {
nextTick(() => {
if (imageParmas.value.funcCode == 'device_mould_picture') {
imageFormData.value.filePathList = res
} else {
console.log(444,res)
fileDialogUploadData.value.filePathList = res.map(item=>{
response.forEach(element=>{
if(item.url == element.url){
item.name = element.name
}
})
return item
})
formKey.value += 1
}
})
})
})
} }
const tableObjectRef = ref() const tableObjectRef = ref()
@ -771,7 +816,6 @@ const uploadImage = async () => {
// if (!elForm) return // if (!elForm) return
// const valid = await elForm.validate() // const valid = await elForm.validate()
// if (!valid) return // if (!valid) return
imageFormData
let data = { let data = {
number: masterParmas.value.number, number: masterParmas.value.number,
filePathList: imageFormData.value.filePathList.map((item) => item.url), filePathList: imageFormData.value.filePathList.map((item) => item.url),
@ -916,7 +960,7 @@ const submitDialogForm = async (type, row) => {
} }
function openDialogUpload(row) { function openDialogUpload(row) {
dialogUploadVisible.value = true // dialogUploadVisible.value = true
getDialogUpload(row) getDialogUpload(row)
} }
@ -929,13 +973,27 @@ const openDialogForm = async (type: string, row?: number) => {
const getDialogUpload = (row) => { const getDialogUpload = (row) => {
dialogUploadNumber.value = row.number dialogUploadNumber.value = row.number
dialogUploadBusiCode.value = row.milestoneStage dialogUploadBusiCode.value = row.milestoneStage
masterParmas.value.number = row.number,
imageParmas.value.fileBusiType = row.milestoneStage
props.getImageApi({ props.getImageApi({
number: row.number, number: row.number,
funcCode: props.milestoneFuncCode funcCode: props.milestoneFuncCode
}) })
.then((res) => { .then((res) => {
fileDialogUploadData.value.filePathList = res fileApi.selectList().then(response=>{
fileDialogUploadData.value.filePathList = res.map(item=>{
response.forEach(element=>{
if(item.url == element.url){
item.name = element.name
}
})
return item
})
dialogUploadVisible.value = true
dialogFormKey.value += 1 dialogFormKey.value += 1
})
}) })
} }
@ -949,7 +1007,7 @@ function dialogUploadFile() {
props.uploadImage(data).then((res) => { props.uploadImage(data).then((res) => {
message.success('修改成功') message.success('修改成功')
getImage() getImage()
dialogUploadVisible.value = false // dialogUploadVisible.value = false
}) })
} }

35
src/views/eam/device/deviceAccounts/deviceAccounts.data.ts

@ -133,6 +133,7 @@ export const DeviceAccounts = useCrudSchemas(reactive<CrudSchema[]>([
field: 'factoryAreaNumber', field: 'factoryAreaNumber',
sort: 'custom', sort: 'custom',
isSearch: false, isSearch: false,
isDetail: false,
table: { table: {
width: '150', width: '150',
}, },
@ -166,6 +167,16 @@ export const DeviceAccounts = useCrudSchemas(reactive<CrudSchema[]>([
}, },
} }
}, },
{
label: '所属厂区',
field: 'factoryAreaNumberDetail',
sort: 'custom',
isDetail: true,
isForm: false,
isSearch: false,
isTable: false,
isTableForm: false,
},
{ {
label: '负责人', label: '负责人',
field: 'principal', field: 'principal',
@ -203,6 +214,16 @@ export const DeviceAccounts = useCrudSchemas(reactive<CrudSchema[]>([
}, },
}, },
}, },
{
label: '负责人',
field: 'principalDetail',
sort: 'custom',
isDetail: true,
isForm: false,
isSearch: false,
isTable: false,
isTableForm: false,
},
{ {
label: '采购时间', label: '采购时间',
field: 'purchaseTime', field: 'purchaseTime',
@ -251,9 +272,13 @@ export const DeviceAccounts = useCrudSchemas(reactive<CrudSchema[]>([
label: '供应商', label: '供应商',
field: 'supplierNumber', field: 'supplierNumber',
sort: 'custom', sort: 'custom',
isDetail: false,
table: { table: {
width: '150', width: '150',
}, },
formatter: (_: Recordable, __: TableColumn, cellValue: number) => {
return supplierList.find((account) => account.number == cellValue)?.name
},
form:{ form:{
component: 'Select', component: 'Select',
componentProps: { componentProps: {
@ -267,6 +292,16 @@ export const DeviceAccounts = useCrudSchemas(reactive<CrudSchema[]>([
} }
} }
}, },
{
label: '供应商',
field: 'supplierNumberDetail',
sort: 'custom',
isDetail: true,
isForm: false,
isSearch: false,
isTable: false,
isTableForm: false,
},
{ {
label: '出厂日期', label: '出厂日期',
field: 'productionDate', field: 'productionDate',

17
src/views/eam/device/deviceAccounts/index.vue

@ -57,9 +57,7 @@
import * as DeviceAccountsApi from '@/api/eam/device/deviceAccounts' import * as DeviceAccountsApi from '@/api/eam/device/deviceAccounts'
import * as defaultButtons from '@/utils/disposition/defaultButtons' import * as defaultButtons from '@/utils/disposition/defaultButtons'
import { DeviceLedgerTabsList } from '@/utils/disposition/tabsList' import { DeviceLedgerTabsList } from '@/utils/disposition/tabsList'
import TableHead from '@/components/TableHead/src/TableHead.vue' import { selectAllFactoryArea,selectAllFactoryAreaDept } from '@/api/system/dept'
import ImportForm from '@/components/ImportForm/src/ImportForm.vue'
import DetailDeviceLedger from '@/components/Detail/src/DetailDeviceLedger.vue'
import { DeviceRepair } from '@/views/eam/device/deviceRepair/deviceRepair.data' import { DeviceRepair } from '@/views/eam/device/deviceRepair/deviceRepair.data'
import { DeviceItem } from '@/views/eam/basic/deviceItem/deviceItem.data' import { DeviceItem } from '@/views/eam/basic/deviceItem/deviceItem.data'
import * as deviceRepairApi from '@/api/eam/device/deviceRepair' import * as deviceRepairApi from '@/api/eam/device/deviceRepair'
@ -69,7 +67,10 @@
import * as DeviceMaintenanceMainApi from '@/api/eam/device/deviceMaintenanceMain' import * as DeviceMaintenanceMainApi from '@/api/eam/device/deviceMaintenanceMain'
import * as deviceMaintenanceDetailApi from '@/api/eam/device/deviceMaintenanceDetail' import * as deviceMaintenanceDetailApi from '@/api/eam/device/deviceMaintenanceDetail'
import { getAccessToken } from '@/utils/auth' import { getAccessToken } from '@/utils/auth'
import { dateFormatter } from '@/utils/formatTime'
import * as SupplierApi from '@/api/eam/basic/supplier'
import * as UserApi from '@/api/system/user'
import { selecUserByType } from '@/api/system/dept'
import { import {
DeviceMaintainOrderMain, DeviceMaintainOrderMain,
DeviceMaintainOrderDetail, DeviceMaintainOrderDetail,
@ -231,7 +232,13 @@
/** 详情操作 */ /** 详情操作 */
const detailRef = ref() const detailRef = ref()
const openDetail = (row : any, titleName : any, titleValue : any) => { const openDetail = async (row : any, titleName : any, titleValue : any) => {
const factoryDeptList = await selectAllFactoryAreaDept()
const userListAll = await UserApi.getSimpleUserList()
const supplierList = await SupplierApi.getSupplierNoPage({})
row.factoryAreaNumberDetail = factoryDeptList.find((account) => account.id == row.factoryAreaNumber)?.name
row.principalDetail = userListAll.find((account) => account.id == row.maintenance)?.nickname
row.supplierNumberDetail = supplierList.find((account) => account.number == row.supplierNumber)?.name
itemCodeRow.value = row.number itemCodeRow.value = row.number
tabsExtend.value = 1 tabsExtend.value = 1
detailRef.value.openDetail(row, titleName, titleValue, 'basicDeviceAccounts') detailRef.value.openDetail(row, titleName, titleValue, 'basicDeviceAccounts')

3
src/views/eam/device/devicemaintainjob/index.vue

@ -280,7 +280,10 @@ const openForm = (type: string, row?: any) => {
/** 详情操作 */ /** 详情操作 */
const detailRef = ref() const detailRef = ref()
const openDetail =async (row: any, titleName: any, titleValue: any) => { const openDetail =async (row: any, titleName: any, titleValue: any) => {
const deviceListAll = await DeviceAccountsApi.getDeviceAccountsAllNoPage({})
const userListAll = await UserApi.getSimpleUserList() const userListAll = await UserApi.getSimpleUserList()
row.factoryAreaNumber1 = factoryList.find((account) => account.id == row.factoryAreaNumber)?.name
row.maintenanceName = userListAll.find((account) => account.id == row.maintenance)?.nickname row.maintenanceName = userListAll.find((account) => account.id == row.maintenance)?.nickname
detailRef.value.openDetail(row, titleName, titleValue,'DeviceMaintainOrderMain') detailRef.value.openDetail(row, titleName, titleValue,'DeviceMaintainOrderMain')
} }

41
src/views/eam/device/devicemaintenancejob/deviceMaintenanceMain.data.ts

@ -61,6 +61,7 @@ export const DeviceMaintenanceMain = useCrudSchemas(reactive<CrudSchema[]>([
table: { table: {
width: '150', width: '150',
}, },
isDetail: false,
api: () => deviceList, api: () => deviceList,
formatter: (_: Recordable, __: TableColumn, cellValue: number) => { formatter: (_: Recordable, __: TableColumn, cellValue: number) => {
return deviceListAll.find((account) => account.number == cellValue)?.name return deviceListAll.find((account) => account.number == cellValue)?.name
@ -89,6 +90,16 @@ export const DeviceMaintenanceMain = useCrudSchemas(reactive<CrudSchema[]>([
}, },
} }
}, },
{
label: '设备',
field: 'deviceNumberDetail',
sort: 'custom',
isDetail: true,
isForm: false,
isSearch: false,
isTable: false,
isTableForm: false,
},
{ {
label: '厂区', label: '厂区',
field: 'factoryAreaNumber', field: 'factoryAreaNumber',
@ -129,12 +140,12 @@ export const DeviceMaintenanceMain = useCrudSchemas(reactive<CrudSchema[]>([
}, },
{ {
label: '厂区', label: '厂区',
field: 'factoryAreaNumber1', field: 'factoryAreaNumberDetail',
sort: 'custom', sort: 'custom',etail: true,
isDetail: true,
isSearch: false,
isForm: false, isForm: false,
isSearch: false,
isTable: false, isTable: false,
isTableForm: false,
table: { table: {
width: 150 width: 150
} }
@ -181,12 +192,13 @@ export const DeviceMaintenanceMain = useCrudSchemas(reactive<CrudSchema[]>([
}, },
{ {
label: '维修人', label: '维修人',
field: 'maintenance1', field: 'maintenanceDetail',
sort: 'custom', sort: 'custom',
isDetail: true, isDetail: true,
isSearch: false,
isForm: false, isForm: false,
isSearch: false,
isTable: false, isTable: false,
isTableForm: false,
table: { table: {
width: 150 width: 150
} }
@ -198,6 +210,7 @@ export const DeviceMaintenanceMain = useCrudSchemas(reactive<CrudSchema[]>([
table: { table: {
width: '150', width: '150',
}, },
isDetail: false,
formatter: (_: Recordable, __: TableColumn, cellValue: number) => { formatter: (_: Recordable, __: TableColumn, cellValue: number) => {
return deviceMoldTypeList.find((account) => account.value == cellValue)?.label return deviceMoldTypeList.find((account) => account.value == cellValue)?.label
}, },
@ -228,6 +241,16 @@ export const DeviceMaintenanceMain = useCrudSchemas(reactive<CrudSchema[]>([
} }
}, },
}, },
{
label: '类型',
field: 'typeDetail',
sort: 'custom',
isDetail: true,
isForm: false,
isSearch: false,
isTable: false,
isTableForm: false,
},
{ {
label: '班次', label: '班次',
field: 'classes', field: 'classes',
@ -235,6 +258,7 @@ export const DeviceMaintenanceMain = useCrudSchemas(reactive<CrudSchema[]>([
table: { table: {
width: '150', width: '150',
}, },
isDetail: false,
isSearch: true, isSearch: true,
dictType: DICT_TYPE.MAINTENANCE_SHIFT, dictType: DICT_TYPE.MAINTENANCE_SHIFT,
dictClass: 'number', dictClass: 'number',
@ -249,6 +273,7 @@ export const DeviceMaintenanceMain = useCrudSchemas(reactive<CrudSchema[]>([
table: { table: {
width: '150', width: '150',
}, },
isDetail: false,
isSearch: false, isSearch: false,
dictType: DICT_TYPE.FAULT_TYPE, dictType: DICT_TYPE.FAULT_TYPE,
dictClass: 'string', dictClass: 'string',
@ -384,7 +409,7 @@ export const DeviceMaintenanceDetail = useCrudSchemas(reactive<CrudSchema[]>([
// .map(item => item.nickname) // .map(item => item.nickname)
// .join(','); // .join(',');
// }, // },
isTable:false, isTable:true,
tableForm: { tableForm: {
type: 'Select', type: 'Select',
initOptions: userListAll, initOptions: userListAll,
@ -418,7 +443,7 @@ export const DeviceMaintenanceDetail = useCrudSchemas(reactive<CrudSchema[]>([
sort: 'custom', sort: 'custom',
isForm:false, isForm:false,
isDetail:true, isDetail:true,
isTable:true, isTable:false,
isTableForm:false isTableForm:false
}, },
{ {

16
src/views/eam/device/devicemaintenancejob/index.vue

@ -164,6 +164,9 @@ import { useUserStore } from '@/store/modules/user'
import { selecUserByType } from '@/api/system/dept' import { selecUserByType } from '@/api/system/dept'
import { DICT_TYPE, getStrDictOptions } from '@/utils/dict' import { DICT_TYPE, getStrDictOptions } from '@/utils/dict'
import * as UserApi from '@/api/system/user' import * as UserApi from '@/api/system/user'
import { selectAllFactoryArea } from '@/api/system/dept'
import { ItemSearchTable } from '../../basic/item/item.data'
import * as ItemApi from '@/api/eam/basic/item'
import { emit } from 'process' import { emit } from 'process'
const deviceMoldTypeList = getStrDictOptions(DICT_TYPE.APP_DEVICE_MOLD_TYPE) const deviceMoldTypeList = getStrDictOptions(DICT_TYPE.APP_DEVICE_MOLD_TYPE)
const deviceTypeList = getStrDictOptions(DICT_TYPE.APP_DEVICE_MOLD_TYPE).filter(item => item.value != 'MOLD') const deviceTypeList = getStrDictOptions(DICT_TYPE.APP_DEVICE_MOLD_TYPE).filter(item => item.value != 'MOLD')
@ -691,10 +694,15 @@ const openFormSec = async (type: string, row?: any) => {
/** 详情操作 */ /** 详情操作 */
const detailRef = ref() const detailRef = ref()
const openDetail = (row: any, titleName: any, titleValue: any) => { const openDetail = async (row: any, titleName: any, titleValue: any) => {
const userListAll = await UserApi.getSimpleUserList()
const deviceMoldType = getStrDictOptions(DICT_TYPE.APP_DEVICE_MOLD_TYPE) const factoryList = await selectAllFactoryArea()
row.typeName = deviceMoldType.find((account) => account.value == row.type)?.label const moldAllList = await MoldAccountsApi.getMoldAccountsAllNoPage({})
const deviceMoldTypeList = getStrDictOptions(DICT_TYPE.APP_DEVICE_MOLD_TYPE)
row.typeDetail = deviceMoldTypeList.find((account) => account.value == row.type)?.label
row.deviceNumberDetail = moldAllList.find((account) => account.number == row.deviceNumber)?.name
row.factoryAreaNumberDetail = factoryList.find((account) => account.id == row.factoryAreaNumber)?.name
row.maintenanceDetail = userListAll.find((account) => account.id == row.maintenance)?.nickname
console.log(row) console.log(row)
operatRecord.value = row; operatRecord.value = row;
detailRef.value.openDetail(row, titleName, titleValue,'DeviceMaintenanceMain') detailRef.value.openDetail(row, titleName, titleValue,'DeviceMaintenanceMain')

24
src/views/eam/mold/moldAccounts/index.vue

@ -105,9 +105,6 @@ import { createDeviceItemBatch, getDeviceItemPage } from '@/api/eam/basic/rel'
import * as MoldAccountsApi from '@/api/eam/mold/moldAccounts' import * as MoldAccountsApi from '@/api/eam/mold/moldAccounts'
import * as defaultButtons from '@/utils/disposition/defaultButtons' import * as defaultButtons from '@/utils/disposition/defaultButtons'
import { MoldLedgerTabsList } from '@/utils/disposition/tabsList' import { MoldLedgerTabsList } from '@/utils/disposition/tabsList'
import TableHead from '@/components/TableHead/src/TableHead.vue'
import ImportForm from '@/components/ImportForm/src/ImportForm.vue'
import DetailDeviceLedger from '@/components/Detail/src/DetailDeviceLedger.vue'
import { MoldRepair } from '@/views/eam/mold/moldRepair/moldRepair.data' import { MoldRepair } from '@/views/eam/mold/moldRepair/moldRepair.data'
import { DeviceItem } from '@/views/eam/basic/deviceItem/deviceItem.data' import { DeviceItem } from '@/views/eam/basic/deviceItem/deviceItem.data'
import * as moldRepairApi from '@/api/eam/mold/moldRepair' import * as moldRepairApi from '@/api/eam/mold/moldRepair'
@ -118,6 +115,9 @@ import * as MoldMaintenanceMainApi from '@/api/eam/mold/moldMaintenanceMain'
import * as moldMaintenanceDetailApi from '@/api/eam/mold/moldMaintenanceDetail' import * as moldMaintenanceDetailApi from '@/api/eam/mold/moldMaintenanceDetail'
import * as MoldMilestoneApi from '@/api/eam/basic/moldMilestone' import * as MoldMilestoneApi from '@/api/eam/basic/moldMilestone'
import { getAccessToken } from '@/utils/auth' import { getAccessToken } from '@/utils/auth'
import { dateFormatter } from '@/utils/formatTime'
import * as SupplierApi from '@/api/eam/basic/supplier'
import { selectAllFactoryArea,selectAllFactoryAreaDept } from '@/api/system/dept'
import { import {
MoldMaintainOrderMain, MoldMaintainOrderMain,
@ -246,17 +246,7 @@ const openForm = (type: string, row?: any) => {
// form // form
const formsSuccess = async (formType, data) => { const formsSuccess = async (formType, data) => {
var isHave = MoldAccounts.allSchemas.formSchema.some(function (item) {
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') { if (formType === 'create') {
const param = { const param = {
number : data.number number : data.number
@ -285,7 +275,11 @@ const formsSuccess = async (formType, data) => {
/** 详情操作 */ /** 详情操作 */
const detailRef = ref() const detailRef = ref()
const openDetail = (row: any, titleName: any, titleValue: any) => { const openDetail = async (row: any, titleName: any, titleValue: any) => {
const factoryDeptList = await selectAllFactoryAreaDept()
const supplierList = await SupplierApi.getSupplierNoPage({})
row.factoryAreaNumberDetail = factoryDeptList.find((account) => account.id == row.factoryAreaNumber)?.name
row.supplierNumberDetail = supplierList.find((account) => account.number == row.supplierNumber)?.name
itemCodeRow.value = row.number itemCodeRow.value = row.number
tabsExtend.value = 1 tabsExtend.value = 1
detailRef.value.openDetail(row, titleName, titleValue, 'basicMoldAccounts') detailRef.value.openDetail(row, titleName, titleValue, 'basicMoldAccounts')

34
src/views/eam/mold/moldAccounts/moldAccounts.data.ts

@ -5,7 +5,7 @@ import * as SupplierApi from '@/api/eam/basic/supplier'
import { validateHanset,validateNumDot, validateEmail,validateNum } from '@/utils/validator' import { validateHanset,validateNumDot, validateEmail,validateNum } from '@/utils/validator'
const factoryList = await selectAllFactoryArea() const factoryList = await selectAllFactoryArea()
const factoryDeptList = await selectAllFactoryAreaDept() const factoryDeptList = await selectAllFactoryAreaDept()
const supplierList = await SupplierApi.getSupplierNoPage() const supplierList = await SupplierApi.getSupplierNoPage({})
// 表单校验 // 表单校验
export const MoldAccountsRules = reactive({ export const MoldAccountsRules = reactive({
number: [ number: [
@ -24,8 +24,8 @@ export const MoldAccountsRules = reactive({
{ max: 60, message: '不得超过60个字符', trigger: 'blur' }, { max: 60, message: '不得超过60个字符', trigger: 'blur' },
], ],
purchasePrice: [ purchasePrice: [
{ validator:validateNumDot, message: '请输入数字格式', trigger: 'blur'},
{ max: 20, message: '不得超过20个字符', trigger:'blur'}, { max: 20, message: '不得超过20个字符', trigger:'blur'},
{ validator:validateNumDot, message: '请输入数字格式', trigger: 'blur'}
], ],
beat:[ beat:[
{ validator:validateNum, message: '请输入数字格式', trigger: 'blur'} { validator:validateNum, message: '请输入数字格式', trigger: 'blur'}
@ -80,6 +80,7 @@ export const MoldAccounts = useCrudSchemas(reactive<CrudSchema[]>([
field: 'factoryAreaNumber', field: 'factoryAreaNumber',
sort: 'custom', sort: 'custom',
isSearch: false, isSearch: false,
isDetail: false,
table: { table: {
width: '150', width: '150',
}, },
@ -113,6 +114,16 @@ export const MoldAccounts = useCrudSchemas(reactive<CrudSchema[]>([
}, },
} }
}, },
{
label: '所属厂区',
field: 'factoryAreaNumberDetail',
sort: 'custom',
isDetail: true,
isForm: false,
isSearch: false,
isTable: false,
isTableForm: false,
},
{ {
label: '采购时间', label: '采购时间',
field: 'purchaseTime', field: 'purchaseTime',
@ -155,6 +166,9 @@ export const MoldAccounts = useCrudSchemas(reactive<CrudSchema[]>([
table:{ table:{
width:150 width:150
}, },
formatter: (_: Recordable, __: TableColumn, cellValue: number) => {
return supplierList.find((account) => account.number == cellValue)?.name
},
form:{ form:{
component: 'Select', component: 'Select',
componentProps: { componentProps: {
@ -168,6 +182,16 @@ export const MoldAccounts = useCrudSchemas(reactive<CrudSchema[]>([
} }
} }
}, },
{
label: '供应商',
field: 'supplierNumberDetail',
sort: 'custom',
isDetail: true,
isForm: false,
isSearch: false,
isTable: false,
isTableForm: false,
},
{ {
label: '出厂日期', label: '出厂日期',
field: 'productionDate', field: 'productionDate',
@ -184,7 +208,11 @@ export const MoldAccounts = useCrudSchemas(reactive<CrudSchema[]>([
{ {
label: '购买价格', label: '购买价格',
field: 'purchasePrice', field: 'purchasePrice',
sort: 'custom' sort: 'custom',
isForm: true,
form: {
component: 'Input',
}
}, },
{ {
label: '是否客户资产', label: '是否客户资产',

11
src/views/eam/mold/moldmaintenancejob/index.vue

@ -165,6 +165,7 @@ import { DICT_TYPE, getStrDictOptions } from '@/utils/dict'
import * as DeviceAccountsApi from '@/api/eam/device/deviceAccounts' import * as DeviceAccountsApi from '@/api/eam/device/deviceAccounts'
import * as MoldAccountsApi from '@/api/eam/mold/moldAccounts' import * as MoldAccountsApi from '@/api/eam/mold/moldAccounts'
import * as UserApi from '@/api/system/user' import * as UserApi from '@/api/system/user'
import { selectAllFactoryArea } from '@/api/system/dept'
const deviceMoldTypeList = getStrDictOptions(DICT_TYPE.APP_DEVICE_MOLD_TYPE) const deviceMoldTypeList = getStrDictOptions(DICT_TYPE.APP_DEVICE_MOLD_TYPE)
const moldTypeList = getStrDictOptions(DICT_TYPE.APP_DEVICE_MOLD_TYPE).filter(item => item.value == 'MOLD') const moldTypeList = getStrDictOptions(DICT_TYPE.APP_DEVICE_MOLD_TYPE).filter(item => item.value == 'MOLD')
defineOptions({ name: 'MoldMaintenanceMain' }) defineOptions({ name: 'MoldMaintenanceMain' })
@ -443,7 +444,15 @@ const openForm = async (type: string, row?: any) => {
/** 详情操作 */ /** 详情操作 */
const detailRef = ref() const detailRef = ref()
const openDetail = (row: any, titleName: any, titleValue: any) => { const openDetail = async (row: any, titleName: any, titleValue: any) => {
const factoryList = await selectAllFactoryArea()
const userListAll = await UserApi.getSimpleUserList()
const moldListAll = await MoldAccountsApi.getMoldAccountsAllNoPage({})
const deviceMoldType = getStrDictOptions(DICT_TYPE.APP_DEVICE_MOLD_TYPE)
row.typeDetail = deviceMoldType.find((account) => account.value == row.type)?.label
row.deviceNumberDetail = moldListAll.find((account) => account.number == row.deviceNumber)?.name
row.factoryAreaNumberDetail = factoryList.find((account) => account.id == row.factoryAreaNumber)?.name
row.maintenanceDetail = userListAll.find((account) => account.id == row.maintenance)?.nickname
operatRecord.value = row; operatRecord.value = row;
detailRef.value.openDetail(row, titleName, titleValue,'MoldMaintenanceMain') detailRef.value.openDetail(row, titleName, titleValue,'MoldMaintenanceMain')
} }

41
src/views/eam/mold/moldmaintenancejob/moldMaintenanceMain.data.ts

@ -61,6 +61,7 @@ export const MoldMaintenanceMain = useCrudSchemas(reactive<CrudSchema[]>([
table: { table: {
width: '150', width: '150',
}, },
isDetail: false,
api: () => factoryList, api: () => factoryList,
formatter: (_: Recordable, __: TableColumn, cellValue: number) => { formatter: (_: Recordable, __: TableColumn, cellValue: number) => {
return factoryList.find((account) => account.id == cellValue)?.name return factoryList.find((account) => account.id == cellValue)?.name
@ -93,15 +94,16 @@ export const MoldMaintenanceMain = useCrudSchemas(reactive<CrudSchema[]>([
}, },
{ {
label: '厂区', label: '厂区',
field: 'factoryAreaNumberMO', field: 'factoryAreaNumberDetail',
sort: 'custom', sort: 'custom',
table: { table: {
width: '150', width: '150',
}, },
isDetail: true, isDetail: true,
isForm: false, isForm: false,
isTable: false,
isSearch: false, isSearch: false,
isTable: false,
isTableForm: false,
}, },
{ {
label: '类型', label: '类型',
@ -110,6 +112,7 @@ export const MoldMaintenanceMain = useCrudSchemas(reactive<CrudSchema[]>([
table: { table: {
width: '150', width: '150',
}, },
isDetail: false,
formatter: (_: Recordable, __: TableColumn, cellValue: number) => { formatter: (_: Recordable, __: TableColumn, cellValue: number) => {
return deviceMoldTypeList.find((account) => account.value == cellValue)?.label return deviceMoldTypeList.find((account) => account.value == cellValue)?.label
}, },
@ -139,6 +142,16 @@ export const MoldMaintenanceMain = useCrudSchemas(reactive<CrudSchema[]>([
} }
}, },
}, },
{
label: '类型',
field: 'typeDetail',
sort: 'custom',
isDetail: true,
isForm: false,
isSearch: false,
isTable: false,
isTableForm: false,
},
{ {
label: '模具', label: '模具',
field: 'deviceNumber', field: 'deviceNumber',
@ -147,6 +160,7 @@ export const MoldMaintenanceMain = useCrudSchemas(reactive<CrudSchema[]>([
width: '150', width: '150',
}, },
isSearch: false, isSearch: false,
isDetail: false,
api: () => moldAllList, api: () => moldAllList,
formatter: (_: Recordable, __: TableColumn, cellValue: number) => { formatter: (_: Recordable, __: TableColumn, cellValue: number) => {
return moldAllList.find((account) => account.number == cellValue)?.name return moldAllList.find((account) => account.number == cellValue)?.name
@ -174,6 +188,16 @@ export const MoldMaintenanceMain = useCrudSchemas(reactive<CrudSchema[]>([
}, },
} }
}, },
{
label: '模具',
field: 'deviceNumberDetail',
sort: 'custom',
isDetail: true,
isForm: false,
isSearch: false,
isTable: false,
isTableForm: false,
},
{ {
label: '维修人', label: '维修人',
field: 'maintenance', field: 'maintenance',
@ -181,6 +205,7 @@ export const MoldMaintenanceMain = useCrudSchemas(reactive<CrudSchema[]>([
table: { table: {
width: '150', width: '150',
}, },
isDetail: false,
api: () => userListAll, api: () => userListAll,
formatter: (_: Recordable, __: TableColumn, cellValue: number) => { formatter: (_: Recordable, __: TableColumn, cellValue: number) => {
return userListAll.find((account) => account.id == cellValue)?.nickname return userListAll.find((account) => account.id == cellValue)?.nickname
@ -213,7 +238,16 @@ export const MoldMaintenanceMain = useCrudSchemas(reactive<CrudSchema[]>([
} }
} }
}, },
{
label: '维修人',
field: 'maintenanceDetail',
sort: 'custom',
isDetail: true,
isForm: false,
isSearch: false,
isTable: false,
isTableForm: false,
},
{ {
label: '班次', label: '班次',
field: 'classes', field: 'classes',
@ -235,6 +269,7 @@ export const MoldMaintenanceMain = useCrudSchemas(reactive<CrudSchema[]>([
table: { table: {
width: '150', width: '150',
}, },
isDetail: false,
isSearch: true, isSearch: true,
dictType: DICT_TYPE.FAULT_TYPE, dictType: DICT_TYPE.FAULT_TYPE,
dictClass: 'string', dictClass: 'string',

Loading…
Cancel
Save