Commit 92c712e9 authored by 吴志坤's avatar 吴志坤

基础信息,设备申请

parent c36b446a
......@@ -7,10 +7,10 @@ export function listWbApply(query) {
params: query
})
}
// apply_detail分页查询接口
// warehouse表单分页查询接口
export function detailList(query) {
return request({
url: '/wbapplydetail/queryWbApplyDetailByPagination',
url: '/wbwarehouse/queryWbWarehouseByPagination',
method: 'get',
params: query
})
......@@ -22,3 +22,14 @@ export function deleteLogical(id) {
method: 'delete'
})
}
// 处理的接口
export function batchAddition(data) {
return request({
url: '/wbapply/batchAddition',
method: 'post',
data,
headers: {
'Content-Type': 'application/json;charset=UTF-8'
}
})
}
......@@ -14,7 +14,7 @@
</el-form-item>
<el-form-item label="pgx" prop="pgx">
<el-select
v-model="form.pgx"
v-model="queryParams.pgx"
clearable
placeholder="请选择pgx"
:style="{ width: '150px', height: '30px' }"
......@@ -29,7 +29,7 @@
</el-form-item>
<el-form-item label="ptype" prop="ptype">
<el-select
v-model="form.ptype"
v-model="queryParams.ptype"
placeholder="请选择ptype"
clearable
size="small"
......@@ -152,7 +152,7 @@
v-model="form.pgx"
clearable
placeholder="请选择pgx"
:style="{ width: '150px', height: '30px' }"
:style="{ width: '341px', height: '30px' }"
>
<el-option
v-for="(dict,index) in pgxList"
......@@ -168,7 +168,7 @@
placeholder="请选择ptype"
clearable
size="small"
style="width: 150px"
style="width: 341px"
>
<el-option
v-for="dict in ptypeOptions"
......@@ -179,7 +179,7 @@
</el-select>
</el-form-item>
<el-form-item label="prank" prop="prank">
<el-input v-model.trim="form.prank" :maxlength="10" placeholder="请输入prank" />
<el-input v-model.trim="form.prank" :maxlength="5" placeholder="请输入prank" />
</el-form-item>
<el-form-item label="pissb" prop="pissb">
<el-select
......@@ -198,10 +198,10 @@
</el-select>
</el-form-item>
<el-form-item label="psm" prop="psm">
<el-input v-model.trim="form.psm" :maxlength="10" placeholder="请输入psm" />
<el-input v-model.trim="form.psm" :maxlength="5" placeholder="请输入psm" />
</el-form-item>
<el-form-item label="psy" prop="psy">
<el-input v-model.trim="form.psy" :maxlength="10" placeholder="请输入psy" />
<el-input v-model.trim="form.psy" :maxlength="5" placeholder="请输入psy" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
......@@ -288,22 +288,27 @@ export default {
// 表单校验
rules: {
pn: [
{ required: true, message: '请输入pn', trigger: 'blur' },
{ pattern: /^\d{1,5}$/, message: '请输入少于五位数字', trigger: 'blur' }
{ required: true, message: '请输入pn', trigger: 'change' },
{ pattern: /^\d{1,5}$/, message: '请输入数字且少于五位', trigger: 'change' }
],
ptype: [
{ required: true, message: '请输入ptype', trigger: 'blur' }
{ required: true, message: '请选择ptype', trigger: 'change' }
],
pgx: [
{ required: true, pattern: /^[0-9]{1,9}(\.[0-9]{1,3})?$/, message: '仅能输入数字和小数,限制三位小数', trigger: 'change' }
{ required: true, message: '请选择pgx', trigger: 'change' }
],
prank: [{ required: true, pattern: /^[0-9]{1,9}(\.[0-9]{1,3})?$/, message: '仅能输入数字和小数,限制三位小数', trigger: 'change' }],
prank: [
{ required: true, message: '请输入prank', trigger: 'change' },
{ pattern: /^\d{1,5}$/, message: '请输入数字且少于五位', trigger: 'change' }],
pissb: [
{ required: true, message: '请选择pissb', trigger: 'blur' }
],
psm: [{ required: true, pattern: /^[0-9]{1,9}(\.[0-9]{1,3})?$/, message: '仅能输入数字和小数,限制三位小数', trigger: 'change' }],
psm: [
{ required: true, message: '请输入psm', trigger: 'change' },
{ pattern: /^\d{1,5}$/, message: '请输入数字且少于五位', trigger: 'change' }],
psy: [
{ required: true, pattern: /^[0-9]{1,9}(\.[0-9]{1,3})?$/, message: '仅能输入数字和小数,限制三位小数', trigger: 'change' }
{ required: true, message: '请输入psy', trigger: 'change' },
{ pattern: /^\d{1,5}$/, message: '请输入数字且少于五位', trigger: 'change' }
]
},
deptOptions: []
......
......@@ -37,7 +37,7 @@
placeholder="请选择状态"
clearable
size="small"
style="width: 341px"
style="width: 150px"
>
<el-option
v-for="dict in statusOptions"
......@@ -73,13 +73,14 @@
</el-table-column>
<el-table-column label="pgx" prop="pgx">
<template slot-scope="scope">
{{ scope.row.pgx || '-' }}
<span v-if="scope.row.pgx === '001'">压缩</span>
<span v-if="scope.row.pgx === '002'">排水</span>
</template>
</el-table-column>
<el-table-column label="pissb" prop="pissb">
<template slot-scope="scope">
<span v-if="scope.row.pissb === '0'"></span>
<span v-else ></span>
<span v-else></span>
</template>
</el-table-column>
<el-table-column label="状态" prop="pstatus">
......@@ -130,51 +131,8 @@
@pagination="getList"
/>
<!-- 添加或修改设备基本信息配置对话框 -->
<el-dialog title="设备基本信息" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" size="small" label-width="80px">
<el-form-item label="pn" prop="pn">
<el-input v-model.trim="form.pn" show-word-limit :maxlength="30" placeholder="请输入pn" />
</el-form-item>
<el-form-item label="ptype" prop="ptype">
<el-input v-model.trim="form.ptype" show-word-limit :maxlength="30" placeholder="请输入ptype" />
</el-form-item>
<el-form-item label="pgx" prop="pgx">
<el-input-number v-model="form.pgx" style="width: 100%" controls-position="right" :min="0" placeholder="请输入pgx" />
</el-form-item>
<el-form-item label="prank" prop="prank">
<el-input-number v-model="form.prank" style="width: 100%" controls-position="right" :min="0" placeholder="请输入prank" />
</el-form-item>
<el-form-item label="pissb" prop="pissb">
<el-select
v-model="form.pissb"
placeholder="请选择pissb"
clearable
size="small"
style="width: 150px"
>
<el-option
v-for="dict in pissbOptions"
:key="dict.dictValue"
:label="dict.dictLabel"
:value="dict.dictValue"
/>
</el-select>
</el-form-item>
<el-form-item label="psm" prop="psm">
<el-input-number v-model="form.psm" style="width: 100%" controls-position="right" :min="0" placeholder="请输入psm" />
</el-form-item>
<el-form-item label="psy" prop="psy">
<el-input-number v-model="form.psy" style="width: 100%" controls-position="right" :min="0" placeholder="请输入psy" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button @click="cancel">取 消</el-button>
<el-button type="primary" @click="submitForm">确 定</el-button>
</div>
</el-dialog>
<!-- TODO: 单项详情信息表单配置 -->
<el-dialog class="aboutSingleDetails" :title="title" :visible.sync="openDetails" width="700px" append-to-body>
<!-- TODO: 详情 -->
<el-dialog class="aboutSingleDetails" :title="title" :visible.sync="openDetails" width="1200px" append-to-body>
<el-form ref="formDetails" :model="singleDetails" size="small" label-width="90px">
<el-row>
<el-col :span="12">
......@@ -208,7 +166,7 @@
</el-col>
<el-col :span="12">
<el-form-item label="状态:" prop="pstatus">
<template >
<template>
<span v-if="singleDetails.pstatus === '0'" style="color: red">未完成</span>
<span v-else style="color: green">已完成</span>
</template>
......@@ -228,8 +186,62 @@
</el-col>
</el-row>
</el-form>
<el-table v-loading="loadingDetail" border :data="detailApplyList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" />
<el-table-column type="index" label="序号" width="50" />
<el-table-column label="pn" prop="pn">
<template slot-scope="scope">
{{ scope.row.pn || '-' }}
</template>
</el-table-column>
<el-table-column label="lot" prop="lot" :show-overflow-tooltip="true">
<template slot-scope="scope">
{{ scope.row.lot || '-' }}
</template>
</el-table-column>
<el-table-column label="plocation" prop="plocation">
<template slot-scope="scope">
{{ scope.row.plocation || '-' }}
</template>
</el-table-column>
<el-table-column label="prank" prop="prank">
<template slot-scope="scope">
{{ scope.row.prank || '-' }}
</template>
</el-table-column>
<el-table-column label="pzl" prop="pzl">
<template slot-scope="scope">
{{ scope.row.pzl || '-' }}
</template>
</el-table-column>
<el-table-column label="phd" prop="phd">
<template slot-scope="scope">
{{ scope.row.phd || '-' }}
</template>
</el-table-column>
<el-table-column label="psm" prop="psm">
<template slot-scope="scope">
{{ scope.row.psm || '-' }}
</template>
</el-table-column>
<el-table-column label="pissb" prop="pissb">
<template slot-scope="scope">
<span v-if="scope.row.pissb === '0'"></span>
<span v-else></span>
</template>
</el-table-column>
</el-table>
<pagination
v-show="totalDetail>0"
:total="totalDetail"
:page.sync="queryParams.page"
:limit.sync="queryParams.rows"
@pagination="getDeviceList"
/>
</el-dialog>
<!-- TODO: 申请处理表单 -->
<!-- TODO: 处理 -->
<el-dialog :title="title" :visible.sync="openHandle" width="1200px" append-to-body>
<el-form ref="queryForm" style="padding: 0 0 0 10px" :model="queryParams" :inline="true">
<el-form-item label="pn" prop="pn">
......@@ -310,7 +322,7 @@
<el-table-column label="pissb" prop="pissb">
<template slot-scope="scope">
<span v-if="scope.row.pissb === '0'"></span>
<span v-else ></span>
<span v-else></span>
</template>
</el-table-column>
</el-table>
......@@ -321,17 +333,29 @@
:limit.sync="queryParams.rows"
@pagination="getDeviceList"
/>
<div style="float: right;padding:3px 15px;">
<el-button
type="primary"
size="small"
@click="handleCance"
>确定</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { listWbApply, deleteLogical, detailList } from '@/api/equipment/draw'
import { listWbApply, deleteLogical, detailList, batchAddition } from '@/api/equipment/draw'
import { parseTime } from '@/utils'
import { title } from '@/settings'
export default {
name: 'Role',
data() {
return {
canceList: [],
applyId: '',
multipleSelection: [],
detailApplyList: [],
deviceList: [],
// TODO: 表单里的单项详情参数
singleDetails: {
pn: '',
......@@ -424,30 +448,6 @@ export default {
children: 'children',
label: 'label'
},
// 表单校验
rules: {
pn: [
{ required: true, message: '请输入pn', trigger: 'blur' }
],
ptype: [
{ required: true, message: '请输入ptype', trigger: 'blur' }
],
pgx: [
{ required: true, message: '请输入pgx', trigger: 'blur' }
],
prank: [
{ required: true, message: '请输入prank', trigger: 'blur' }
],
pissb: [
{ required: true, message: '请输入pissb', trigger: 'blur' }
],
psm: [
{ required: true, message: '请输入psm', trigger: 'blur' }
],
psy: [
{ required: true, message: '请输入psy', trigger: 'blur' }
]
},
deptOptions: []
}
},
......@@ -473,6 +473,32 @@ export default {
// });
},
methods: {
handleCance() {
console.log('multipleSelection', this.multipleSelection)
if (this.multipleSelection.length === 0) {
this.$message.warning('请至少选择一个要处理的设备')
} else {
this.canceList = []
this.multipleSelection.forEach(item => {
console.log('item', item)
const obj = {
applyId: this.applyId,
pn: item.pn,
pzl: item.pzl,
lot: item.lot,
plocation: item.plocation,
phd: item.phd,
psm: item.psm,
prank: item.prank
}
this.canceList.push(obj)
})
console.log('canceList', this.canceList)
batchAddition(this.canceList).then(res => {
console.log('res',res)
})
}
},
/** 查询apply_detail列表 */
getDeviceList() {
this.loadingDetail = true
......@@ -483,7 +509,9 @@ export default {
this.loadingDetail = false
})
},
handle() {
handle(row) {
this.applyId = row.businessId
this.title = '处理'
this.openHandle = !this.openHandle
this.loadingDetail = true
detailList(this.queryParamsDetail).then(res => {
......@@ -493,10 +521,10 @@ export default {
this.loadingDetail = false
})
},
// : 获取所选行详情信息操作
// 获取所选行详情信息
handleDetail(row) {
this.singleDetails = row
this.title = '详情信息'
this.title = '详情'
this.openDetails = !this.openDetails
},
/** 查询基础信息列表 */
......@@ -557,10 +585,8 @@ export default {
this.handleQuery()
},
// 多选框选中数据
handleSelectionChange(selection) {
this.ids = selection.map(item => item.roleId)
this.single = selection.length !== 1
this.multiple = !selection.length
handleSelectionChange: function(selection) {
this.multipleSelection = selection
},
// 树权限(父子联动)
handleCheckedTreeConnect(value, type) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment