修改bug #404

Merged
juzi merged 1 commits from projects/mes-zhp into projects/mes-test 2024-11-14 08:50:39 +08:00
15 changed files with 525 additions and 3185 deletions
Showing only changes of commit 43d0a2668d - Show all commits

View File

@ -6,7 +6,7 @@
"license": "MIT", "license": "MIT",
"scripts": { "scripts": {
"local": "vue-cli-service serve --mode local", "local": "vue-cli-service serve --mode local",
"dev": "vue-cli-service serve --mode dev", "dev": "set NODE_OPTIONS=--openssl-legacy-provider && vue-cli-service serve --mode dev",
"front": "vue-cli-service serve --mode front", "front": "vue-cli-service serve --mode front",
"build:prod": "vue-cli-service build --mode prod", "build:prod": "vue-cli-service build --mode prod",
"build:stage": "vue-cli-service build --mode stage", "build:stage": "vue-cli-service build --mode stage",

View File

@ -66,3 +66,10 @@ export function getCoreDepartmentList(query) {
params: query params: query
}) })
} }
export function getDepartmentList(query) {
return request({
url: '/system/dept/list',
method: 'get',
params: query
})
}

View File

@ -5,13 +5,6 @@
* @LastEditors: zhp * @LastEditors: zhp
* @Description: * @Description:
*/ */
/*
* @Author: zhp
* @Date: 2024-07-12 15:31:41
* @LastEditTime: 2024-07-22 09:33:20
* @LastEditors: zhp
* @Description:
*/
import request from '@/utils/request' import request from '@/utils/request'
@ -26,7 +19,7 @@ export function getItemPageData(data) {
return request({ return request({
url: '/base/equipment-check-program/page', url: '/base/equipment-check-program/page',
method: 'get', method: 'get',
data params: data
}) })
} }

View File

@ -252,7 +252,7 @@ export default {
computed: {}, computed: {},
created() { created() {
this.fillLineOptions(); this.fillLineOptions();
this.fillProductOptions(); // this.fillProductOptions();
}, },
mounted() { mounted() {
// window.addEventListener('resize', () => { // window.addEventListener('resize', () => {
@ -284,23 +284,23 @@ export default {
); );
}, },
async fillProductOptions() { // async fillProductOptions() {
const { data } = await this.$axios({ // const { data } = await this.$axios({
url: '/base/core-product/listAll', // url: '/base/core-product/listAll',
method: 'get', // method: 'get',
}); // });
const cfg = this.searchBarFormConfig.find( // const cfg = this.searchBarFormConfig.find(
(item) => item.__index == 'product' // (item) => item.__index == 'product'
); // );
this.$set( // this.$set(
cfg, // cfg,
'selectOptions', // 'selectOptions',
data.map((item) => ({ // data.map((item) => ({
id: item.id, // id: item.id,
name: item.name, // name: item.name,
})) // }))
); // );
}, // },
async getList() { async getList() {
const { data } = await this.$axios({ const { data } = await this.$axios({

View File

@ -6,12 +6,7 @@
* @Description: * @Description:
--> -->
<template> <template>
<el-drawer <el-drawer :visible.sync="visible" :show-close="false" :wrapper-closable="true" class="drawer" size="50%">
:visible.sync="visible"
:show-close="false"
:wrapper-closable="true"
class="drawer"
size="50%">
<small-title slot="title" :no-padding="true"> <small-title slot="title" :no-padding="true">
<!-- {{ isdetail ? '详情' : '添加巡检' }} --> <!-- {{ isdetail ? '详情' : '添加巡检' }} -->
{{ '添加内容' }} {{ '添加内容' }}
@ -28,7 +23,7 @@
<div class="lightTip">{{ dataForm.department }}</div> <div class="lightTip">{{ dataForm.department }}</div>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<div class="blodTip">巡检时间</div> <div class="blodTip">计划巡检时间</div>
<div class="lightTip">{{ parseTime(dataForm.planCheckTime) }}</div> <div class="lightTip">{{ parseTime(dataForm.planCheckTime) }}</div>
</el-col> </el-col>
</el-row> </el-row>
@ -37,9 +32,7 @@
<el-divider /> <el-divider />
<div class="attr-list"> <div class="attr-list">
<small-title <small-title style="margin: 16px 0; padding-left: 8px" :no-padding="true">
style="margin: 16px 0; padding-left: 8px"
:no-padding="true">
巡检内容 巡检内容
</small-title> </small-title>
@ -50,26 +43,13 @@
</span> </span>
</template> </template>
</div> </div>
<base-table <base-table :table-props="tableProps" :page="listQuery.pageNo" :limit="listQuery.pageSize"
:table-props="tableProps"
:page="listQuery.pageNo"
:limit="listQuery.pageSize"
:table-data="checkDetList"> :table-data="checkDetList">
<method-btn <method-btn v-if="!isdetail" slot="handleBtn" :width="120" label="操作" :method-list="tableBtn"
v-if="!isdetail"
slot="handleBtn"
:width="120"
label="操作"
:method-list="tableBtn"
@clickBtn="handleClick" /> @clickBtn="handleClick" />
</base-table> </base-table>
<pagination <pagination v-show="listQuery.total > 0" :total="listQuery.total" :page.sync="listQuery.pageNo"
v-show="listQuery.total > 0" :limit.sync="listQuery.pageSize" :page-sizes="[5, 10, 15]" @pagination="getList" />
:total="listQuery.total"
:page.sync="listQuery.pageNo"
:limit.sync="listQuery.pageSize"
:page-sizes="[5, 10, 15]"
@pagination="getList" />
<!-- <div class="drawer-body__footer"> <!-- <div class="drawer-body__footer">
<el-button type="primary" @click="goback()">关闭</el-button> <el-button type="primary" @click="goback()">关闭</el-button>
@ -78,11 +58,7 @@
</div> </div>
<attr-add <attr-add v-if="addOrUpdateVisible" ref="addOrUpdate" :order-id="dataForm.id" @refreshDataList="getList" />
v-if="addOrUpdateVisible"
ref="addOrUpdate"
:order-id="dataForm.id"
@refreshDataList="getList" />
</el-drawer> </el-drawer>
</template> </template>
@ -111,8 +87,13 @@ const tableProps = [
}, },
{ {
prop: 'program', prop: 'program',
label: '检查项目', label: '巡检项目',
} },
{
prop: 'checkResult',
label: '巡检结果',
},
]; ];
export default { export default {

View File

@ -36,7 +36,7 @@ const tableProps = [
align:'center', align:'center',
}, },
{ {
prop: 'maintainResult', prop: 'checkResult',
label: '默认巡检结果', label: '默认巡检结果',
align: 'center', align: 'center',
}, },
@ -102,7 +102,8 @@ export default {
getDataList(id) { getDataList(id) {
this.dataListLoading = true; this.dataListLoading = true;
this.queryParams.equipmentTypeId = id this.queryParams.equipmentTypeId = id
this.urlOptions.getDataListURL(this.listQuery).then(response => { console.log(id);
this.urlOptions.getDataListURL(this.queryParams).then(response => {
this.tableData = response.data.list; this.tableData = response.data.list;
this.listQuery.total = response.data.total; this.listQuery.total = response.data.total;
this.dataListLoading = false this.dataListLoading = false

View File

@ -6,24 +6,13 @@
--> -->
<template> <template>
<el-form <el-form ref="form" :model="form" :size="size" :label-position="labelPosition" v-loading="formLoading">
ref="form"
:model="form"
:size="size"
:label-position="labelPosition"
v-loading="formLoading">
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="12"> <el-col :span="12">
<el-form-item <el-form-item label="设备保养单号" prop="maintainOrderNumber" :rules="[
label="设备保养单号"
prop="maintainOrderNumber"
:rules="[
{ required: true, message: '请输入设备保养单号', trigger: 'blur' }, { required: true, message: '请输入设备保养单号', trigger: 'blur' },
]"> ]">
<el-input <el-input v-model="form.maintainOrderNumber" @change="$emit('update', form)" :placeholder="`请输入保养计划单号`"
v-model="form.maintainOrderNumber"
@change="$emit('update', form)"
:placeholder="`请输入保养计划单号`"
:disabled="disabled" /> :disabled="disabled" />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -35,22 +24,10 @@
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item <el-form-item label="部门" prop="departmentId" :rules="[{ required: true, message: '请选择部门', trigger: 'blur' }]">
label="部门" <el-select v-model="form.departmentId" :placeholder="`请选择部门`" :disabled="disabled" clearable filterable
prop="departmentId"
:rules="[{ required: true, message: '请选择部门', trigger: 'blur' }]">
<el-select
v-model="form.departmentId"
:placeholder="`请选择部门`"
:disabled="disabled"
clearable
filterable
@change="$emit('update', form)"> @change="$emit('update', form)">
<el-option <el-option v-for="opt in departmentOptions" :key="opt.value" :label="opt.label" :value="opt.value" />
v-for="opt in departmentOptions"
:key="opt.value"
:label="opt.label"
:value="opt.value" />
</el-select> </el-select>
</el-form-item> </el-form-item>
@ -75,22 +52,10 @@
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item <el-form-item label="产线" prop="lineId" :rules="[{ required: true, message: '请选择产线', trigger: 'blur' }]">
label="产线" <el-select v-model="form.lineId" :placeholder="`请选择产线`" :disabled="disabled" clearable filterable
prop="lineId"
:rules="[{ required: true, message: '请选择产线', trigger: 'blur' }]">
<el-select
v-model="form.lineId"
:placeholder="`请选择产线`"
:disabled="disabled"
clearable
filterable
@change="$emit('update', form)"> @change="$emit('update', form)">
<el-option <el-option v-for="opt in lineOptions" :key="opt.value" :label="opt.label" :value="opt.value" />
v-for="opt in lineOptions"
:key="opt.value"
:label="opt.label"
:value="opt.value" />
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -114,47 +79,29 @@
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item <el-form-item label="实际开始时间" prop="startTime" :rules="[
label="实际开始时间"
prop="startTime"
:rules="[
{ required: true, message: '请选择实际开始时间', trigger: 'blur' }, { required: true, message: '请选择实际开始时间', trigger: 'blur' },
]"> ]">
<el-date-picker <el-date-picker v-model="form.startTime" type="datetime" :disabled="edit" placeholder="请选择实际开始时间"
v-model="form.startTime" @change="$emit('update', form)" value-format="timestamp"></el-date-picker>
type="datetime"
:disabled="edit"
placeholder="请选择实际开始时间"
@change="$emit('update', form)"
value-format="timestamp"></el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item <el-form-item label="实际结束时间" prop="endTime" :rules="[
label="实际结束时间"
prop="endTime"
:rules="[
{ required: true, message: '请选择实际结束时间', trigger: 'blur' }, { required: true, message: '请选择实际结束时间', trigger: 'blur' },
]"> ]">
<el-date-picker <el-date-picker v-model="form.endTime" type="datetime" :disabled="edit" placeholder="请选择实际结束时间"
v-model="form.endTime" @change="$emit('update', form)" value-format="timestamp"></el-date-picker>
type="datetime"
:disabled="edit"
placeholder="请选择实际结束时间"
@change="$emit('update', form)"
value-format="timestamp"></el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item <el-form-item label="实际保养人员" prop="maintainWorker" :rules="[
label="实际保养人员" { required: false, message: '请输入实际保养人员', trigger: 'blur' },
prop="maintainWorker"
:rules="[
{ required: false, message: '请选择实际保养人员', trigger: 'blur' },
]"> ]">
<el-select <el-input v-model="form.maintainWorker" @change="$emit('update', form)" :placeholder="`请输入实际保养人员`" :disabled="disabled" />
<!-- <el-select
v-model="form.maintainWorker" v-model="form.maintainWorker"
:placeholder="`请选择实际保养人员`" :placeholder="`请选择实际保养人员`"
:disabled="disabled" :disabled="disabled"
@ -167,17 +114,13 @@
:key="opt.value" :key="opt.value"
:label="opt.label" :label="opt.label"
:value="opt.value" /> :value="opt.value" />
</el-select> </el-select> -->
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
<el-form-item label="备注" prop="remark"> <el-form-item label="备注" prop="remark">
<el-input <el-input v-model="form.remark" @change="$emit('update', form)" :placeholder="`请输入备注`" :disabled="disabled" />
v-model="form.remark"
@change="$emit('update', form)"
:placeholder="`请输入备注`"
:disabled="disabled" />
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
@ -321,7 +264,6 @@ export default {
const urls = [ const urls = [
'/base/core-production-line/listAll', '/base/core-production-line/listAll',
'/system/dept/list-all-simple', '/system/dept/list-all-simple',
'/base/core-worker/listAll',
]; ];
let res; let res;
switch (source) { switch (source) {
@ -329,10 +271,6 @@ export default {
res = await this.$axios(urls[1]); res = await this.$axios(urls[1]);
this.departmentList = res.data || []; this.departmentList = res.data || [];
break; break;
case 'maintainer':
res = await this.$axios(urls[2]);
this.maintainerList = res.data || [];
break;
case 'line': case 'line':
res = await this.$axios(urls[0]); res = await this.$axios(urls[0]);
this.lineList = res.data || []; this.lineList = res.data || [];

View File

@ -6,27 +6,15 @@
--> -->
<template> <template>
<el-drawer <el-drawer :visible.sync="visible" :show-close="false" :wrapper-closable="true" class="drawer"
:visible.sync="visible" custom-class="mes-drawer" size="60%" :before-close="beforeClose" @closed="$emit('destroy')">
:show-close="false"
:wrapper-closable="true"
class="drawer"
custom-class="mes-drawer"
size="60%"
:before-close="beforeClose"
@closed="$emit('destroy')">
<SmallTitle slot="title">编辑</SmallTitle> <SmallTitle slot="title">编辑</SmallTitle>
<div class="drawer-body flex"> <div class="drawer-body flex">
<div class="drawer-body__content"> <div class="drawer-body__content">
<div class="form-part" style="margin-bottom: 32px"> <div class="form-part" style="margin-bottom: 32px">
<!-- <el-skeleton v-if="!showForm" animated /> --> <!-- <el-skeleton v-if="!showForm" animated /> -->
<el-form <el-form class="equipment-info-form" ref="form" :model="form" label-width="200px" label-position="top"
class="equipment-info-form"
ref="form"
:model="form"
label-width="200px"
label-position="top"
v-loading="formLoading"> v-loading="formLoading">
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="8"> <el-col :span="8">
@ -38,19 +26,13 @@
trigger: 'blur', trigger: 'blur',
}, },
]" --> ]" -->
<el-input <el-input v-model="form.maintainOrderNumber" disabled :placeholder="`请输入保养计划单号`" />
v-model="form.maintainOrderNumber"
disabled
:placeholder="`请输入保养计划单号`" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="保养计划名称" prop="planName"> <el-form-item label="保养计划名称" prop="planName">
<el-input <el-input v-model="form.planName" placeholder="请输入保养计划名称" disabled />
v-model="form.planName"
placeholder="请输入保养计划名称"
disabled />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -59,16 +41,8 @@
<!-- :rules="[ <!-- :rules="[
{ required: true, message: '请选择部门', trigger: 'blur' }, { required: true, message: '请选择部门', trigger: 'blur' },
]" --> ]" -->
<el-select <el-select v-model="form.departmentId" :placeholder="`请选择部门`" clearable disabled filterable>
v-model="form.departmentId" <el-option v-for="opt in departmentOptions" :key="opt.value" :label="opt.label"
:placeholder="`请选择部门`"
clearable
disabled
filterable>
<el-option
v-for="opt in departmentOptions"
:key="opt.value"
:label="opt.label"
:value="opt.value" /> :value="opt.value" />
</el-select> </el-select>
</el-form-item> </el-form-item>
@ -79,104 +53,69 @@
<!-- :rules="[ <!-- :rules="[
{ required: true, message: '请选择产线', trigger: 'blur' }, { required: true, message: '请选择产线', trigger: 'blur' },
]" --> ]" -->
<el-select <el-select v-model="form.lineId" :placeholder="`请选择产线`" disabled clearable filterable>
v-model="form.lineId" <el-option v-for="opt in lineOptions" :key="opt.value" :label="opt.label" :value="opt.value" />
:placeholder="`请选择产线`"
disabled
clearable
filterable>
<el-option
v-for="opt in lineOptions"
:key="opt.value"
:label="opt.label"
:value="opt.value" />
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="计划保养人员" prop="maintainer"> <el-form-item label="计划保养人员" prop="maintainer">
<el-select <el-select v-model="form.planMaintainWorker" placeholder="请选择计划保养人员" disabled clearable filterable />
v-model="form.planMaintainWorker"
placeholder="请选择计划保养人员"
disabled
clearable
filterable />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="计划开始时间" prop="planStartTime"> <el-form-item label="计划开始时间" prop="planStartTime">
<el-date-picker <el-date-picker v-model="form.planStartTime" type="datetime" disabled placeholder="请选择计划开始时间"
v-model="form.planStartTime"
type="datetime"
disabled
placeholder="请选择计划开始时间"
value-format="timestamp"></el-date-picker> value-format="timestamp"></el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="计划结束时间" prop="planEndTime"> <el-form-item label="计划结束时间" prop="planEndTime">
<el-date-picker <el-date-picker v-model="form.planEndTime" type="datetime" disabled placeholder="请选择计划结束时间"
v-model="form.planEndTime"
type="datetime"
disabled
placeholder="请选择计划结束时间"
value-format="timestamp"></el-date-picker> value-format="timestamp"></el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item <el-form-item label="实际开始时间" prop="startTime" :rules="[
label="实际开始时间"
prop="startTime"
:rules="[
{ {
required: true, required: true,
message: '请选择实际开始时间', message: '请选择实际开始时间',
trigger: 'blur', trigger: 'blur',
}, },
]"> ]">
<el-date-picker <el-date-picker v-model="form.startTime" type="datetime" placeholder="请选择实际开始时间"
v-model="form.startTime"
type="datetime"
placeholder="请选择实际开始时间"
value-format="timestamp"></el-date-picker> value-format="timestamp"></el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item <el-form-item label="实际结束时间" prop="endTime" :rules="[
label="实际结束时间"
prop="endTime"
:rules="[
{ {
required: true, required: true,
message: '请选择实际结束时间', message: '请选择实际结束时间',
trigger: 'blur', trigger: 'blur',
}, },
]"> ]">
<el-date-picker <el-date-picker v-model="form.endTime" type="datetime" placeholder="请选择实际结束时间"
v-model="form.endTime"
type="datetime"
placeholder="请选择实际结束时间"
value-format="timestamp"></el-date-picker> value-format="timestamp"></el-date-picker>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item <el-form-item label="实际保养人员" prop="maintainWorker" :rules="[
label="实际保养人员"
prop="maintainWorker"
:rules="[
{ {
required: false, required: false,
message: '请选择实际保养人员', message: '请输入实际保养人员',
trigger: 'blur', trigger: 'blur',
}, },
]"> ]">
<el-select <el-input v-model="form.maintainWorker" :placeholder="`请输入实际保养人员`" />
<!-- <el-select
v-model="form.maintainWorker" v-model="form.maintainWorker"
:placeholder="`请选择实际保养人员`" :placeholder="`请选择实际保养人员`"
multiple multiple
@ -187,7 +126,7 @@
:key="opt.value" :key="opt.value"
:label="opt.label" :label="opt.label"
:value="opt.value" /> :value="opt.value" />
</el-select> </el-select> -->
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -203,10 +142,7 @@
<SmallTitle>保养内容</SmallTitle> <SmallTitle>保养内容</SmallTitle>
<div style="margin-top: 12px; position: relative"> <div style="margin-top: 12px; position: relative">
<SearchBar <SearchBar :formConfigs="searchBarFormConfig" ref="attr-search-bar" @headBtnClick="handleSearchBarBtnClick" />
:formConfigs="searchBarFormConfig"
ref="attr-search-bar"
@headBtnClick="handleSearchBarBtnClick" />
</div> </div>
<div style="margin-top: 12px; position: relative"> <div style="margin-top: 12px; position: relative">
@ -216,27 +152,14 @@
添加属性 添加属性
</el-button> </el-button>
</div> </div>
<base-table <base-table v-loading="attrListLoading" :table-props="attrTableProps" :page="attrQuery?.params.pageNo || 1"
v-loading="attrListLoading" :limit="attrQuery?.params.pageSize || 10" :table-data="attrList" @emitFun="handleEmitFun">
:table-props="attrTableProps" <method-btn slot="handleBtn" label="操作" :method-list="tableBtn" @clickBtn="handleTableBtnClick" />
:page="attrQuery?.params.pageNo || 1"
:limit="attrQuery?.params.pageSize || 10"
:table-data="attrList"
@emitFun="handleEmitFun">
<method-btn
slot="handleBtn"
label="操作"
:method-list="tableBtn"
@clickBtn="handleTableBtnClick" />
</base-table> </base-table>
<!-- 分页组件 --> <!-- 分页组件 -->
<pagination <pagination v-show="attrTotal > 0" :total="attrTotal" :page.sync="attrQuery.params.pageNo"
v-show="attrTotal > 0" :limit.sync="attrQuery.params.pageSize" @pagination="getAttrList" />
:total="attrTotal"
:page.sync="attrQuery.params.pageNo"
:limit.sync="attrQuery.params.pageSize"
@pagination="getAttrList" />
</div> </div>
</div> </div>
@ -254,20 +177,9 @@
</div> </div>
<!-- 属性对话框 --> <!-- 属性对话框 -->
<base-dialog <base-dialog :dialogTitle="attrTitle" :dialogVisible="attrFormVisible" width="35%" :append-to-body="true"
:dialogTitle="attrTitle" custom-class="baseDialog" @close="closeAttrForm" @cancel="closeAttrForm" @confirm="submitAttrForm">
:dialogVisible="attrFormVisible" <DialogForm v-if="attrFormVisible" ref="attrForm" v-model="attrForm" :rows="attrRows" />
width="35%"
:append-to-body="true"
custom-class="baseDialog"
@close="closeAttrForm"
@cancel="closeAttrForm"
@confirm="submitAttrForm">
<DialogForm
v-if="attrFormVisible"
ref="attrForm"
v-model="attrForm"
:rows="attrRows" />
</base-dialog> </base-dialog>
</el-drawer> </el-drawer>
</template> </template>
@ -541,7 +453,7 @@ export default {
const urls = [ const urls = [
'/base/core-production-line/listAll', '/base/core-production-line/listAll',
'system/dept/list-all-simple', 'system/dept/list-all-simple',
'/base/core-worker/listAll', // '/base/core-worker/listAll',
]; ];
let res; let res;
switch (source) { switch (source) {
@ -549,10 +461,10 @@ export default {
res = await this.$axios(urls[1]); res = await this.$axios(urls[1]);
this.departmentList = res.data || []; this.departmentList = res.data || [];
break; break;
case 'maintainer': // case 'maintainer':
res = await this.$axios(urls[2]); // res = await this.$axios(urls[2]);
this.maintainerList = res.data || []; // this.maintainerList = res.data || [];
break; // break;
case 'line': case 'line':
res = await this.$axios(urls[0]); res = await this.$axios(urls[0]);
this.lineList = res.data || []; this.lineList = res.data || [];

View File

@ -105,14 +105,16 @@
<el-form-item label="实际保养人员" prop="maintainWorker" :rules="[ <el-form-item label="实际保养人员" prop="maintainWorker" :rules="[
{ {
required: false, required: false,
message: '请选择实际保养人员', message: '请输入实际保养人员',
trigger: 'blur', trigger: 'blur',
}, },
]"> ]">
<el-select v-model="form.maintainWorker" :placeholder="`请选择实际保养人员`" multiple clearable filterable> <el-input v-model="form.maintainWorker" :placeholder="`请输入实际保养人员`" />
<!-- <el-select v-model="form.maintainWorker" :placeholder="`请选择实际保养人员`" multiple clearable filterable>
<el-option v-for="opt in maintainerOptions" :key="opt.value" :label="opt.label" <el-option v-for="opt in maintainerOptions" :key="opt.value" :label="opt.label"
:value="opt.value" /> :value="opt.value" />
</el-select> </el-select> -->
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -445,7 +447,7 @@ export default {
method: 'put', method: 'put',
data: { data: {
...this.form, ...this.form,
maintainWorker: this.form.maintainWorker.join(','), maintainWorker: this.form.maintainWorker ? this.form.maintainWorker.join(',') :null,
special: false, special: false,
relatePlan: 2 relatePlan: 2
} }
@ -464,7 +466,7 @@ export default {
method: 'post', method: 'post',
data: { data: {
...this.form, ...this.form,
maintainWorker: this.form.maintainWorker.join(','), maintainWorker: this.form.maintainWorker ? this.form.maintainWorker.join(',') : null,
special: false, special: false,
relatePlan: 2, relatePlan: 2,
confirmed: false, confirmed: false,
@ -536,7 +538,7 @@ export default {
const urls = [ const urls = [
'/base/core-production-line/listAll', '/base/core-production-line/listAll',
'/system/dept/list-all-simple', '/system/dept/list-all-simple',
'/base/core-worker/listAll', // '/base/core-worker/listAll',
]; ];
let res; let res;
switch (source) { switch (source) {
@ -544,10 +546,10 @@ export default {
res = await this.$axios(urls[1]); res = await this.$axios(urls[1]);
this.departmentList = res.data || []; this.departmentList = res.data || [];
break; break;
case 'maintainer': // case 'maintainer':
res = await this.$axios(urls[2]); // res = await this.$axios(urls[2]);
this.maintainerList = res.data || []; // this.maintainerList = res.data || [];
break; // break;
case 'line': case 'line':
res = await this.$axios(urls[0]); res = await this.$axios(urls[0]);
this.lineList = res.data || []; this.lineList = res.data || [];

View File

@ -135,7 +135,7 @@ export default {
maintainDuration: undefined, maintainDuration: undefined,
remark: undefined, remark: undefined,
firstMaintenanceTime: undefined, firstMaintenanceTime: undefined,
maintainer: undefined maintainer: null
}, },
menuOptions: [], menuOptions: [],
proLineList: [], proLineList: [],
@ -175,8 +175,8 @@ export default {
const resline = await getCorePLList(); const resline = await getCorePLList();
this.proLineList = resline.data; this.proLineList = resline.data;
// //
const personres = await getWorkerList() // const personres = await getWorkerList()
this.personList = personres.data || [] // this.personList = personres.data || []
}, },
getList() { getList() {
// //
@ -259,7 +259,8 @@ export default {
if (this.dataForm.id) { if (this.dataForm.id) {
this.urlOptions.updateURL({ this.urlOptions.updateURL({
...this.dataForm, ...this.dataForm,
maintainer: this.dataForm.maintainer.join(',') maintainer: this.dataForm.maintainer ? this.dataForm.maintainer.join(',') : null,
}).then(response => { }).then(response => {
this.$modal.msgSuccess("修改成功"); this.$modal.msgSuccess("修改成功");
this.visible = false; this.visible = false;
@ -270,7 +271,7 @@ export default {
// //
this.urlOptions.createURL({ this.urlOptions.createURL({
...this.dataForm, ...this.dataForm,
maintainer: this.dataForm.maintainer.join(',') maintainer: this.dataForm.maintainer ? this.dataForm.maintainer.join(',') : null,
}).then(response => { }).then(response => {
this.$modal.msgSuccess("新增成功"); this.$modal.msgSuccess("新增成功");
// this.idAttrShow = true // this.idAttrShow = true

View File

@ -17,7 +17,7 @@
<el-row :gutter="24"> <el-row :gutter="24">
<el-col :span="24"> <el-col :span="24">
<el-form-item label="默认保养结果" prop="resultType"> <el-form-item label="默认保养结果" prop="resultType">
<el-select v-model="dataForm.resultType" placeholder="请选择默认保养结果"> <el-select v-model="dataForm.resultType" placeholder="请选择默认保养结果" @change="handleClear">
<el-option v-for="dict in resultList" :key="dict.id" :label="dict.name" :value="dict.id" /> <el-option v-for="dict in resultList" :key="dict.id" :label="dict.name" :value="dict.id" />
</el-select> </el-select>
</el-form-item> </el-form-item>
@ -39,13 +39,16 @@
</el-col> </el-col>
</el-row> </el-row>
<el-row v-else-if="dataForm.resultType === 2" :gutter="24"> <el-row v-else-if="dataForm.resultType === 2" :gutter="24">
<el-col :span="12"> <el-col :span="11">
<el-form-item prop="minValue"> <el-form-item prop="minValue">
<el-input oninput="value=value.replace(/[^\-\d.]/g, '')" v-model="dataForm.minValue" placeholder="请输入最小值" /> <el-input oninput="value=value.replace(/[^\-\d.]/g, '')" v-model="dataForm.minValue" placeholder="请输入最小值" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="4">
<el-form-item prop="maxValue">
</el-col>
<el-col :span="9">
<el-form-item prop="maxValue" label-width="20">
<el-input @change="handleChange" oninput="value=value.replace(/[^\-\d.]/g, '')" v-model="dataForm.maxValue" <el-input @change="handleChange" oninput="value=value.replace(/[^\-\d.]/g, '')" v-model="dataForm.maxValue"
placeholder="请输入最大值" /> placeholder="请输入最大值" />
</el-form-item> </el-form-item>
@ -102,7 +105,9 @@ export default {
dataRule: { dataRule: {
// materialId: [{ required: true, message: "", trigger: "blur" }], // materialId: [{ required: true, message: "", trigger: "blur" }],
program: [{ required: true, message: "保养项目不能为空", trigger: "blur" }], program: [{ required: true, message: "保养项目不能为空", trigger: "blur" }],
maintainResult: [{ required: true, message: "默认保养结果不能为空", trigger: "blur" }], maintainResult: [{ required: true, message: "文本或数值不能为空不能为空", trigger: "blur" }],
resultType: [{ required: true, message: "默认保养结果不能为空", trigger: "blur" }],
minValue: [{ required: true, message: "最小值不能为空", trigger: "blur" }], minValue: [{ required: true, message: "最小值不能为空", trigger: "blur" }],
maxValue: [{ required: true, message: "最大值不能为空", trigger: "blur" }], maxValue: [{ required: true, message: "最大值不能为空", trigger: "blur" }],
@ -115,6 +120,11 @@ export default {
console.log('我看看', this.dataForm) console.log('我看看', this.dataForm)
}, },
methods: { methods: {
handleClear() {
this.dataForm.minValue = undefined
this.dataForm.maxValue = undefined
this.dataForm.maintainResult = undefined
},
async getDict() { async getDict() {
// //
const res = await getList(); const res = await getList();

View File

@ -223,15 +223,13 @@ export default {
}, },
methods: { methods: {
initSearchBar() { initSearchBar() {
this.http('/base/core-equipment/page', 'get', { this.http('/base/core-equipment/listAll', 'get').then(({ data }) => {
special: false, console.log('data', data);
pageNo: 1,
pageSize: 999,
}).then(({ data }) => {
this.$set( this.$set(
this.searchBarFormConfig[0], this.searchBarFormConfig[0],
'selectOptions', 'selectOptions',
(data?.list || []).map((item) => ({ (data || []).map((item) => ({
name: item.name, name: item.name,
id: item.id, id: item.id,
})) }))

View File

@ -184,16 +184,17 @@ export default {
], ],
[ [
{ {
select: true, // TODO: or INPUT instead of SELECT input: true, // TODO: or INPUT instead of SELECT
label: '负责人', label: '负责人',
prop: 'responsible', prop: 'responsible',
url: '/base/core-worker/listAll', // TODO: // url: 'system/user/page', // TODO:
valueKey: 'name', // valueKey: 'id',
bind: { // labelKey:'username',
filterable: true, // bind: {
clearable: true, // filterable: true,
multiple: true // clearable: true,
}, // multiple: true
// },
}, },
], ],
[ [

View File

@ -136,7 +136,8 @@ export default {
select: true, select: true,
label: '备件名称', label: '备件名称',
prop: 'productMaterialId', prop: 'productMaterialId',
options: [], url: '/base/core-product-material/listAll', // TODO:
// options: [],
bind: { bind: {
filterable: true, filterable: true,
clearable: false, clearable: false,

2925
yarn.lock

File diff suppressed because it is too large Load Diff