测试bug优化

This commit is contained in:
BianLzhaoMin 2024-05-06 16:18:05 +08:00
parent 33cce0d866
commit ad4cda739b
2 changed files with 148 additions and 195 deletions

View File

@ -1,13 +1,6 @@
<template>
<div class="app-container" id="receiveOut">
<el-form
:model="queryParams"
ref="queryForm"
size="small"
:inline="true"
v-show="showSearch"
label-width="80px"
>
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="80px">
<el-form-item label="领料单号" prop="code">
<el-input
v-model="queryParams.code"
@ -19,13 +12,7 @@
</el-form-item>
<el-form-item label="单位名称" prop="unitId">
<el-select v-model="queryParams.unitId" placeholder="请选择单位名称" clearable>
<el-option
v-for="item in unitList"
filterable
:key="item.id"
:label="item.name"
:value="item.id"
></el-option>
<el-option v-for="item in unitList" filterable :key="item.id" :label="item.name" :value="item.id"></el-option>
</el-select>
</el-form-item>
<el-form-item label="工程名称" prop="proId">
@ -62,26 +49,33 @@
<!-- <el-table-column type="selection" width="55" align="center" /> -->
<el-table-column label="序号" align="center" width="80" type="index">
<template scope="scope">
<span>{{ (queryParams.pageNum - 1) * 10 + scope.$index + 1 }}</span>
<span>{{ (queryParams.pageNum - 1) * 10 + scope.$index + 1 }}</span>
</template>
</el-table-column>
<el-table-column label="领料单号" align="center" prop="code" :show-overflow-tooltip="true" />
<el-table-column label="领料申请单位" align="center" prop="unitName" :show-overflow-tooltip="true" />
<el-table-column label="领料申请工程" align="center" prop="proName" :show-overflow-tooltip="true" />
<el-table-column label="申请数量" align="center" prop="preCountNum" :show-overflow-tooltip="true"></el-table-column>
<el-table-column label="申请时间" align="center" prop="createTimes" :show-overflow-tooltip="true"></el-table-column>
<el-table-column
label="申请数量"
align="center"
prop="preCountNum"
:show-overflow-tooltip="true"
></el-table-column>
<el-table-column
label="申请时间"
align="center"
prop="createTimes"
:show-overflow-tooltip="true"
></el-table-column>
<el-table-column label="已出库数量" align="center" prop="alNum" :show-overflow-tooltip="true"></el-table-column>
<el-table-column label="出库状态" align="center" prop="taskName" :show-overflow-tooltip="true"></el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button size="mini" @click="handleView(scope.row)">查看</el-button>
<el-button
size="mini"
type="primary"
v-if="scope.row.taskStatus != 35"
@click="handleOut(scope.row)"
>出库</el-button>
<el-button size="mini" type="primary" v-if="scope.row.taskStatus != 35" @click="handleOut(scope.row)">
出库
</el-button>
</template>
</el-table-column>
</el-table>
@ -96,13 +90,7 @@
<!-- 出库弹窗 -->
<el-dialog :title="title" :visible.sync="openLeaseDevices" width="1200px" append-to-body>
<el-form
:model="dialogQuery"
ref="dialogQuery"
size="small"
:inline="true"
label-width="100px"
>
<el-form :model="dialogQuery" ref="dialogQuery" size="small" :inline="true" label-width="100px">
<el-form-item label="设备负责人" prop="userName">
<el-input v-model="dialogQuery.userName" maxlength="20" />
</el-form-item>
@ -128,42 +116,31 @@
<el-table v-loading="loading" :data="dialogList" height="600">
<el-table-column label="序号" align="center" width="80" type="index">
<template scope="scope">
<span>{{ (dialogQuery.pageNum - 1) * 10 + scope.$index + 1 }}</span>
<span>{{ (dialogQuery.pageNum - 1) * 10 + scope.$index + 1 }}</span>
</template>
</el-table-column>
<el-table-column label="类型名称" align="center" prop="typeName" :show-overflow-tooltip="true" />
<el-table-column
label="规格型号"
align="center"
prop="typeModelName"
:show-overflow-tooltip="true"
/>
<el-table-column label="规格型号" align="center" prop="typeModelName" :show-overflow-tooltip="true" />
<el-table-column label="待出库数量" align="center" prop="outNum" :show-overflow-tooltip="true" />
<el-table-column label="已出库数量" align="center" prop="alNum" :show-overflow-tooltip="true" />
<el-table-column
label="设备负责人"
align="center"
prop="userName"
:show-overflow-tooltip="true"
/>
<el-table-column
label="操作"
align="center"
class-name="small-padding fixed-width"
v-if="!isView"
>
<el-table-column label="设备负责人" align="center" prop="userName" :show-overflow-tooltip="true" />
<el-table-column label="操作" align="center" class-name="small-padding fixed-width" v-if="!isView">
<template slot-scope="scope">
<el-button
size="mini"
@click="codeOut(scope.row)"
v-if="scope.row.manageType == 0 && scope.row.outNum != 0"
>编码出库</el-button>
>
编码出库
</el-button>
<el-button
size="mini"
type="primary"
v-if="(scope.row.manageType == 1 ||scope.row.manageType == 2)&& scope.row.outNum != 0"
v-if="(scope.row.manageType == 1 || scope.row.manageType == 2) && scope.row.outNum != 0"
@click="numOut(scope.row)"
>数量出库</el-button>
>
数量出库
</el-button>
</template>
</el-table-column>
</el-table>
@ -179,13 +156,7 @@
<!-- 编码出库 -->
<el-dialog :title="title" :visible.sync="openCode" width="1200px" append-to-body>
<el-form
:model="codeOutForm"
ref="codeOutForm"
size="small"
:inline="true"
label-width="100px"
>
<el-form :model="codeOutForm" ref="codeOutForm" size="small" :inline="true" label-width="100px">
<span style="margin-right: 50px">待出库数量{{ outNum }}</span>
<el-form-item label="请输入车牌号" prop="carCode">
<el-input v-model="codeOutForm.carCode" maxlength="20" />
@ -207,25 +178,15 @@
<el-button type="primary" size="mini" @click="saveCodeOut">出库</el-button>
</el-col>
</el-row>
<el-table
v-loading="loading"
:data="outCodeList"
height="500"
@selection-change="handleSelectionChange"
>
<el-table v-loading="loading" :data="outCodeList" height="500" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" :selectable="selectable" />
<el-table-column label="序号" align="center" width="80" type="index">
<template scope="scope">
<span>{{ (outQuery.pageNum - 1) * 10 + scope.$index + 1 }}</span>
<span>{{ (outQuery.pageNum - 1) * 10 + scope.$index + 1 }}</span>
</template>
</el-table-column>
<el-table-column label="类型名称" align="center" prop="typeName" :show-overflow-tooltip="true" />
<el-table-column
label="规格型号"
align="center"
prop="typeModelName"
:show-overflow-tooltip="true"
/>
<el-table-column label="规格型号" align="center" prop="typeModelName" :show-overflow-tooltip="true" />
<el-table-column label="设备编码" align="center" prop="maCode" :show-overflow-tooltip="true" />
<el-table-column label="设备状态" align="center" prop="maStatus" :show-overflow-tooltip="true" />
</el-table>
@ -258,12 +219,7 @@
<el-table v-loading="loading" :data="outNumList" height="500">
<el-table-column label="序号" align="center" type="index" />
<el-table-column label="设备类型" align="center" prop="typeName" :show-overflow-tooltip="true" />
<el-table-column
label="规格型号"
align="center"
prop="typeModelName"
:show-overflow-tooltip="true"
/>
<el-table-column label="规格型号" align="center" prop="typeModelName" :show-overflow-tooltip="true" />
<el-table-column label="库存数量" align="center" prop="num" :show-overflow-tooltip="true" />
<el-table-column label="待出库数量" align="center" prop="outNum" :show-overflow-tooltip="true" />
<el-table-column label="已出库数量" align="center" prop="alNum" :show-overflow-tooltip="true" />
@ -490,6 +446,7 @@ export default {
},
//
numOut(row) {
console.log(row, '数量出库当前行数据--')
this.title = '数量出库'
this.openNum = true
this.resetForm('numOutForm')
@ -505,6 +462,7 @@ export default {
this.$set(obj, 'alNum', row.alNum) //
this.$set(obj, 'outNum', row.outNum) //
this.$set(obj, 'inputNum', 1) //
this.$set(obj, 'num', row.num) //
this.outNumList = [obj]
},
handleOutQuery() {
@ -580,9 +538,13 @@ export default {
if (row.inputNum <= 1) {
row.inputNum = 1
}
if (row.inputNum > row.outNum) {
if (row.inputNum > row.outNum && row.num >= maxNum) {
row.inputNum = maxNum
}
if (row.inputNum > row.outNum && row.num < maxNum) {
row.inputNum = row.num
}
},
/** 导出按钮操作 */

View File

@ -9,12 +9,7 @@
width="600px"
>
<div class="form_box_one" v-if="!isShow">
<el-form
ref="dynamicValidateForm"
:model="dynamicValidateForm"
class="demo-dynamic"
label-width="90px"
>
<el-form ref="dynamicValidateForm" :model="dynamicValidateForm" class="demo-dynamic" label-width="90px">
<div class="bor_box">
<p class="form_box_title">编码管理设备</p>
<div class="form_box_line"></div>
@ -23,15 +18,13 @@
<el-input
v-model="dynamicValidateForm.scrapReason"
placeholder="请输入"
size="small" maxlength="50"
size="small"
maxlength="50"
style="width: 350px"
></el-input>
</el-form-item>
<el-form-item label="损坏原因:">
<el-radio-group
style="width: 350px"
v-model="dynamicValidateForm.scrapType"
>
<el-radio-group style="width: 350px" v-model="dynamicValidateForm.scrapType">
<el-radio :label="1">人为</el-radio>
<el-radio :label="0">自然</el-radio>
</el-radio-group>
@ -70,12 +63,7 @@
</div>
</div>
<div class="form_box_two" v-if="isShow">
<el-form
ref="dynamicValidateFormTwo"
:model="dynamicValidateFormTwo"
class="demo-dynamic"
label-width="100px"
>
<el-form ref="dynamicValidateFormTwo" :model="dynamicValidateFormTwo" class="demo-dynamic" label-width="100px">
<p class="form_box_title">数量管理设备</p>
<div class="form_box_line"></div>
<div class="form_box_item">
@ -91,7 +79,8 @@
<el-input
v-model="dynamicValidateFormTwo.scrapNum"
placeholder="请输入"
size="small" maxlength="10"
size="small"
maxlength="10"
style="width: 350px"
></el-input>
</el-form-item>
@ -99,20 +88,18 @@
<el-input
v-model="dynamicValidateFormTwo.scrapReason"
placeholder="请输入"
size="small" maxlength="50"
size="small"
maxlength="50"
style="width: 350px"
></el-input>
</el-form-item>
<el-form-item label="损坏原因:">
<el-radio-group
style="width: 350px"
v-model="dynamicValidateFormTwo.scrapType"
>
<el-radio-group style="width: 350px" v-model="dynamicValidateFormTwo.scrapType">
<el-radio :label="1">人为</el-radio>
<el-radio :label="0">自然</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="损坏照片:">
<!-- <uploadImage
style="width: 250px"
@ -148,56 +135,52 @@
</el-dialog>
</template>
<script>
import uploadImage from './uploadImage.vue';
import upload from './upload.vue';
import {
submitRepairApplyApi,
getRepairMaTypeListApi,
} from "@/api/repairTest/repair";
import {
getInfo,
} from "@/api/login";;
import uploadImage from './uploadImage.vue'
import upload from './upload.vue'
import { submitRepairApplyApi, getRepairMaTypeListApi } from '@/api/repairTest/repair'
import { getInfo } from '@/api/login'
export default {
components: {
uploadImage, upload
uploadImage,
upload,
},
props: {
//
isShowFlag: {
type: Boolean,
default: false
default: false,
},
//
priKey: {
type: [String, Number],
default: ""
default: '',
},
//
dialogTitle: {
type: String,
default: ""
default: '',
},
rowObj: {
type: Object,
default: {}
}
default: {},
},
},
watch: {
isShowFlag(val) {
if (val) {
this.init();
this.init()
}
}
},
},
computed: {
dialogShowFlag: {
get() {
return this.isShowFlag;
return this.isShowFlag
},
set(v) {
this.$emit("update:isShowFlag", v);
}
}
this.$emit('update:isShowFlag', v)
},
},
},
data() {
return {
@ -208,18 +191,18 @@ export default {
fileList: [],
limit: 3,
fileSize: 5,
fileType: ["png", "jpg", "jpeg"],
fileType: ['png', 'jpg', 'jpeg'],
isShowTip: true,
fullscreenLoading: false,
dynamicValidateForm: {},
dynamicValidateFormTwo: {},
taskId: '',
companyId: '',
isShow: true
};
isShow: true,
}
},
mounted() {
this.$eventBus.$on('taskId', (taskId) => {
this.$eventBus.$on('taskId', taskId => {
this.taskId = taskId
})
getInfo().then(res => {
@ -229,16 +212,18 @@ export default {
methods: {
handleRemove(file, fileList) {
this.fileList = fileList
console.log('fileListRemove', fileList);
console.log('fileListRemove', fileList)
fileList.map(item => {
this.fileIds = fileList.map(item => item.response.data.id).join(',');
this.fileIds = fileList.map(item => item.response.data.id).join(',')
})
},
handlePreview(file) {
console.log('file');
console.log('file')
},
handleExceed(files, fileList) {
this.$message.warning(`当前限制选择 3 个文件,本次选择了 ${files.length} 个文件,共选择了 ${files.length + fileList.length} 个文件`);
this.$message.warning(
`当前限制选择 3 个文件,本次选择了 ${files.length} 个文件,共选择了 ${files.length + fileList.length} 个文件`
)
},
beforeRemove(file, fileList) {
// return this.$confirm(` ${file.name}`);
@ -246,33 +231,33 @@ export default {
handleSuccess(response, fileList) {
this.fileList = fileList
fileList.map(item => {
this.fileIds = fileList.map(item => item.response.data.id).join(',');
this.fileIds = fileList.map(item => item.response.data.id).join(',')
})
},
//--
numberIntegerValidator(rule, value, callback) {
const reg = /^\+?[1-9][0-9]*$/;
const reg = /^\+?[1-9][0-9]*$/
if (value === '' || reg.test(value)) {
callback();
callback()
} else {
callback(new Error('请输入大于0的正整数'));
callback(new Error('请输入大于0的正整数'))
}
},
getList() {
let params = {
taskId: this.taskId
taskId: this.taskId,
}
this.loading = true;
this.loading = true
getRepairMaTypeListApi(params).then(res => {
if (res.code == 200) {
this.repairList = res.rows;
this.total = res.total;
this.loading = false;
this.repairList = res.rows
this.total = res.total
this.loading = false
}
})
},
submit() {
this.$refs["dynamicValidateForm"].validate(valid => {
this.$refs['dynamicValidateForm'].validate(valid => {
if (valid) {
//
let params = {
@ -284,30 +269,32 @@ export default {
companyId: this.companyId,
scrapReason: this.dynamicValidateForm.scrapReason,
scrapType: this.dynamicValidateForm.scrapType,
fileIds: this.fileIds.length > 0 ? this.fileIds : "",
fileIds: this.fileIds.length > 0 ? this.fileIds : '',
scrapNum: 1,
}
this.fullscreenLoading = true
submitRepairApplyApi(params).then(res => {
if (res.code == 200) {
this.fileList = []
this.fileIds = []
this.getList()
this.$message.success('操作成功!')
submitRepairApplyApi(params)
.then(res => {
if (res.code == 200) {
this.fileList = []
this.fileIds = []
this.getList()
this.$message.success('操作成功!')
this.fullscreenLoading = false
this.dialogShowFlag = false
this.$emit('domainChange', res.code)
}
})
.catch(() => {
this.fullscreenLoading = false
this.dialogShowFlag = false
this.$emit('domainChange', res.code)
}
}).catch(() => {
this.fullscreenLoading = false
})
})
} else {
return false;
return false
}
});
})
},
submitTwo() {
this.$refs["dynamicValidateFormTwo"].validate(valid => {
this.$refs['dynamicValidateFormTwo'].validate(valid => {
if (valid) {
//
let params = {
@ -320,41 +307,45 @@ export default {
companyId: this.companyId,
scrapReason: this.dynamicValidateFormTwo.scrapReason,
scrapType: this.dynamicValidateFormTwo.scrapType,
fileIds: this.fileIds.length > 0 ? this.fileIds : "",
fileIds: this.fileIds.length > 0 ? this.fileIds : '',
scrapNum: this.dynamicValidateFormTwo.scrapNum,
}
this.fullscreenLoading = true
submitRepairApplyApi(params).then(res => {
if (res.code == 200) {
this.fileList = []
this.fileIds = []
this.getList()
this.$message.success('操作成功!')
submitRepairApplyApi(params)
.then(res => {
if (res.code == 200) {
this.$refs.dynamicValidateFormTwo.clearValidate()
this.fileList = []
this.fileIds = []
this.getList()
this.$message.success('操作成功!')
this.fullscreenLoading = false
this.dialogShowFlag = false
this.$emit('domainChange', res.code)
}
})
.catch(() => {
this.$refs.dynamicValidateFormTwo.clearValidate()
this.fullscreenLoading = false
this.dialogShowFlag = false
this.$emit('domainChange', res.code)
}
}).catch(() => {
this.fullscreenLoading = false
})
})
} else {
return false;
return false
}
});
})
},
fileListChange(data) {
data.map(item => {
this.fileIds = data.map(item => item.id).join(',');
this.fileIds = data.map(item => item.id).join(',')
})
},
init() {
if (this.rowObj.code !== null && this.rowObj.code !== '') {
this.dynamicValidateForm = {};
this.dynamicValidateFormTwo = {};
this.dynamicValidateForm = {}
this.dynamicValidateFormTwo = {}
this.isShow = false
} else {
this.dynamicValidateForm = {};
this.dynamicValidateFormTwo = {};
this.dynamicValidateForm = {}
this.dynamicValidateFormTwo = {}
this.isShow = true
}
getInfo().then(res => {
@ -362,45 +353,45 @@ export default {
})
this.fileList = []
this.fileIds = []
},
//
cancel() {
this.dialogShowFlag = false;
this.$refs.dynamicValidateFormTwo.clearValidate()
this.dialogShowFlag = false
this.fileList = []
},
addDomainOne() {
this.dynamicValidateForm.premiumList.push({
selected: "N",
selected: 'N',
premium: undefined,
rate: undefined,
feeRate: undefined,
fee: undefined,
baofei1_unit: "",
shangyoufeiyonge_unit: "",
baofei1_unit: '',
shangyoufeiyonge_unit: '',
downRate: undefined,
downFee: undefined,
xiayoufeiyonge_unit: "",
key: Date.now()
});
xiayoufeiyonge_unit: '',
key: Date.now(),
})
},
addDomainTwo() {
this.dynamicValidateForm.premiumListTwo.push({
selected: "N",
selected: 'N',
premium: undefined,
rate: undefined,
feeRate: undefined,
fee: undefined,
baofei1_unit: "",
shangyoufeiyonge_unit: "",
baofei1_unit: '',
shangyoufeiyonge_unit: '',
downRate: undefined,
downFee: undefined,
xiayoufeiyonge_unit: "",
key: Date.now()
});
xiayoufeiyonge_unit: '',
key: Date.now(),
})
},
}
};
},
}
</script>
<style lang="scss" scoped>
.form_box_one {