Browse Source

检修和维修工单bug

master
zhang_li 8 months ago
parent
commit
1088c8b5a1
  1. 12
      src/utils/validator.ts
  2. 43
      src/views/eam/device/deviceinspectionjob/deviceInspectionMain.data.ts
  3. 4
      src/views/eam/device/devicemaintainjob/deviceMaintainOrderMain.data.ts
  4. 4
      src/views/eam/device/devicemaintainjob/index.vue
  5. 1
      src/views/eam/device/devicemaintenancejob/deviceMaintenanceMain.data.ts
  6. 4
      src/views/eam/device/devicemaintenancejob/index.vue
  7. 7
      src/views/eam/mold/moldinspectionjob/moldInspectionMain.data.ts
  8. 3
      src/views/eam/mold/moldmaintainjob/moldMaintainOrderMain.data.ts

12
src/utils/validator.ts

@ -208,6 +208,17 @@ export function validateNum(rule, value, callback) {
callback()
}
}
export function validateNum100(rule, value, callback) {
if (value) {
if (value<=100) {
callback()
} else {
callback(new Error('预估人数不得超出100'))
}
} else {
callback()
}
}
//数字和小数点
export function validateNumDot(rule, value, callback) {
@ -749,6 +760,7 @@ export default {
validateChinese,
validatePostCode,
validateNum,
validateNum100,
validateNumDot,
validateZYS,
validateOrganization,

43
src/views/eam/device/deviceinspectionjob/deviceInspectionMain.data.ts

@ -6,7 +6,7 @@ import * as DeviceMaintenanceMainApi from '@/api/eam/device/deviceMaintenanceMai
import { dateFormatter } from '@/utils/formatTime'
import { ItemSearchTable } from '../../basic/item/item.data'
import * as ItemApi from '@/api/eam/basic/item'
import { validateHanset, validateInteger, validateNum } from '@/utils/validator'
import { validateHanset, validateNum, validateNum100 } from '@/utils/validator'
import * as UserApi from '@/api/system/user'
import { useUserStore } from '@/store/modules/user'
const userStore = useUserStore()
@ -33,7 +33,7 @@ export const DeviceInspectionMainRules = reactive({
{ max: 200, message: '不得超过200个字符', trigger: 'blur' },
],
maintenancePhone: [
{ validator:validateHanset, message: '输入电话格式不正确', trigger: 'blur'}
{ validator: validateHanset, message: '输入电话格式不正确', trigger: 'blur' }
],
status: [required],
@ -306,27 +306,32 @@ export const DeviceInspectionMain = useCrudSchemas(reactive<CrudSchema[]>([
width: 150,
fixed: 'right'
},
isDetail:false
isDetail: false
}
]))
// 表单校验
export const DeviceInspectionDetailRules = reactive({
chargePeoples:[
chargePeoples: [
required,
],
estimatedMinutes:[
peoples: [
required,
{ validator:validateNum, message: '请输入正整数', trigger: 'blur'},
{ validator: validateNum, message: '请输入正整数', trigger: 'blur' },
{ validator: validateNum100, message: '预估人数不得超出100', trigger: 'blur' },
],
estimatedMinutes: [
required,
{ validator: validateNum, message: '请输入正整数', trigger: 'blur' },
],
number: [required],
actualMinutes: [
{ validator:validateNum, message: '请输入正整数', trigger: 'blur'},
{ validator: validateNum, message: '请输入正整数', trigger: 'blur' },
],
maintenance: [required],
uncompleted :[
{ required:true, message: '该项为必填项', trigger: 'blur'}
uncompleted: [
{ required: true, message: '该项为必填项', trigger: 'blur' }
],
})
@ -352,9 +357,9 @@ export const DeviceInspectionDetail = useCrudSchemas(reactive<CrudSchema[]>([
tableForm: {
type: 'Select',
initOptions: userList,
multiple:true,
collapseTags:true,
collapseTagsTooltip:true,
multiple: true,
collapseTags: true,
collapseTagsTooltip: true,
optionsAlias: {
labelField: 'name',
valueField: 'id'
@ -395,7 +400,7 @@ export const DeviceInspectionDetail = useCrudSchemas(reactive<CrudSchema[]>([
},
},
{
label: '人数',
label: '预估人数',
field: 'peoples',
sort: 'custom',
table: {
@ -502,12 +507,12 @@ export const DeviceInspectionDetail = useCrudSchemas(reactive<CrudSchema[]>([
sort: 'custom',
table: {
},
tableForm:{
tableForm: {
isInpuFocusShow: true, // 开启查询弹窗
searchListPlaceholder: '请选择备件',
searchField: 'itemNumbers1',
searchTitle: '备件',
multiple:true,
multiple: true,
searchAllSchemas: ItemSearchTable.allSchemas,
searchPage: ItemApi.getItemList,
tableSelectionChange: (value) => {
@ -528,7 +533,7 @@ export const DeviceInspectionDetail = useCrudSchemas(reactive<CrudSchema[]>([
searchListPlaceholder: '请选择备件', // 输入框占位文本
searchField: 'itemNumbers1', // 查询弹窗赋值字段
searchTitle: '备件', // 查询弹窗标题
multiple:true,
multiple: true,
searchAllSchemas: ItemSearchTable.allSchemas, // 查询弹窗所需类
searchPage: ItemApi.getItemList, // 查询弹窗所需分页方法
searchCondition: [{
@ -547,9 +552,9 @@ export const DeviceInspectionDetail = useCrudSchemas(reactive<CrudSchema[]>([
sort: 'custom',
table: {
},
isForm:false,
isDetail:false,
isTable:false,
isForm: false,
isDetail: false,
isTable: false,
isSearch: false,
isTableForm: false,
},

4
src/views/eam/device/devicemaintainjob/deviceMaintainOrderMain.data.ts

@ -4,7 +4,7 @@ import { selecUserByType } from '@/api/system/dept'
import { dateFormatter } from '@/utils/formatTime'
import { ItemSearchTable } from '../../basic/item/item.data'
import * as ItemApi from '@/api/eam/basic/item'
import { validateHanset, validateInteger, validateNum } from '@/utils/validator'
import { validateNum100, validateNum } from '@/utils/validator'
const factoryList = await selectAllFactoryArea()
const userList = await selecUserByType({ classType: 'DEVICE', factoryAreaNumber: '', flag: 1 })
const dutyUserList = await selecUserByType({ classType: 'DEVICE', factoryAreaNumber: '', flag: null })
@ -226,6 +226,8 @@ export const DeviceMaintainOrderDetailRules = reactive({
required,
{ validator:validateNum, message: '请输入正整数', trigger: 'blur'},
{ validator:validateNum100, message: '预估人数不得超出100', trigger: 'blur'},
],
estimatedMinutes: [

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

@ -507,14 +507,10 @@ function buttonControllFunction(row, val) {
return true
}
} else if(val == 'add') {
if (row.status == 'COMPLETED' || row.status == 'VERIFIED' || row.status == 'REJECTED' || !isReceiver(row.maintenance)) {
return false
} else {
return true
}
} else {
return true
}
}
function isReceiver(orderPerson) {

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

@ -182,6 +182,7 @@ export const DeviceMaintenanceMain = useCrudSchemas(reactive<CrudSchema[]>([
formatter: (_: Recordable, __: TableColumn, cellValue: number) => {
return deviceMoldTypeList.find((account) => account.value == cellValue)?.label
},
dictType: DICT_TYPE.APP_DEVICE_MOLD_TYPE,
isSearch: true,
search: {
component: 'Select',

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

@ -479,6 +479,10 @@ const openFormSec = async (type: string, row?: any) => {
/** 详情操作 */
const detailRef = ref()
const openDetail = (row: any, titleName: any, titleValue: any) => {
const deviceMoldType = getStrDictOptions(DICT_TYPE.APP_DEVICE_MOLD_TYPE)
row.typeName = deviceMoldType.find((account) => account.value == row.type)?.label
console.log(row)
operatRecord.value = row;
detailRef.value.openDetail(row, titleName, titleValue,'DeviceMaintenanceMain')
}

7
src/views/eam/mold/moldinspectionjob/moldInspectionMain.data.ts

@ -8,7 +8,7 @@ import { dateFormatter } from '@/utils/formatTime'
import { ItemSearchTable } from '../../basic/item/item.data'
import * as ItemApi from '@/api/eam/basic/item'
import * as UserApi from '@/api/system/user'
import { validateHanset, validateNumDot, validateNum, validateEmail } from '@/utils/validator'
import { validateHanset, validateNum, validateNum100 } from '@/utils/validator'
const userStore = useUserStore()
const userListAll = await UserApi.getSimpleUserList()
const factoryList = await selectAllFactoryArea()
@ -311,6 +311,11 @@ export const MoldInspectionDetailRules = reactive({
chargePeoples:[
required,
],
peoples: [
required,
{ validator: validateNum, message: '请输入正整数', trigger: 'blur' },
{ validator: validateNum100, message: '预估人数不得超出100', trigger: 'blur' },
],
estimatedMinutes:[
required,
{ validator:validateNum, message: '请输入正整数', trigger: 'blur'}

3
src/views/eam/mold/moldmaintainjob/moldMaintainOrderMain.data.ts

@ -4,7 +4,7 @@ import { selecUserByType } from '@/api/system/dept'
import { dateFormatter } from '@/utils/formatTime'
import { ItemSearchTable } from '../../basic/item/item.data'
import * as ItemApi from '@/api/eam/basic/item'
import { validateNum } from '@/utils/validator'
import { validateNum,validateNum100 } from '@/utils/validator'
const factoryList = await selectAllFactoryArea()
const userList = await selecUserByType({ classType: 'MOLD', factoryAreaNumber: '', flag: 1 })
const dutyUserList = await selecUserByType({ classType: 'MOLD', factoryAreaNumber: '', flag: undefined })
@ -286,6 +286,7 @@ export const MoldMaintainOrderDetailRules = reactive({
peoples: [
required,
{ validator: validateNum, message: '请输入正整数', trigger: 'blur' },
{ validator: validateNum100, message: '预估人数不得超出100', trigger: 'blur' },
],
estimatedMinutes: [
required,

Loading…
Cancel
Save