优化领料管理页面列表备注字段报错问题
This commit is contained in:
parent
53d757ce59
commit
d07edc2818
|
|
@ -199,7 +199,9 @@
|
|||
:show-overflow-tooltip="true"
|
||||
>
|
||||
<template slot-scope="scope">
|
||||
<span>{{ scope.row.leaseApplyInfoList[0].remark }}</span>
|
||||
<span>{{
|
||||
scope.row.leaseApplyInfoList[0].remark || ' - '
|
||||
}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="操作" width="250" align="center">
|
||||
|
|
@ -253,7 +255,7 @@
|
|||
(scope.row.leaseApplyInfoList[0].status == '5' ||
|
||||
scope.row.leaseApplyInfoList[0].status == '7' ||
|
||||
scope.row.leaseApplyInfoList[0].status == '4' ||
|
||||
scope.row.leaseApplyInfoList[0].status == '2' )
|
||||
scope.row.leaseApplyInfoList[0].status == '2')
|
||||
"
|
||||
>审批</el-button
|
||||
>
|
||||
|
|
@ -429,345 +431,349 @@
|
|||
</template>
|
||||
|
||||
<script>
|
||||
import {
|
||||
listType,
|
||||
getType,
|
||||
delType,
|
||||
addType,
|
||||
updateType,
|
||||
refreshCache,
|
||||
} from '@/api/system/dict/type'
|
||||
import {
|
||||
getLeaseManageListAll,
|
||||
getUnitData,
|
||||
getProData,
|
||||
getLeaseListAll,
|
||||
} from '@/api/claimAndRefund/receive'
|
||||
import { getInfo } from '@/api/login'
|
||||
import vueEasyPrint from 'vue-easy-print'
|
||||
export default {
|
||||
// name: "ReceiveManage",
|
||||
data() {
|
||||
return {
|
||||
// 遮罩层
|
||||
loading: true,
|
||||
// 选中数组
|
||||
ids: [],
|
||||
// 非单个禁用
|
||||
single: true,
|
||||
// 非多个禁用
|
||||
multiple: true,
|
||||
// 显示搜索条件
|
||||
showSearch: true,
|
||||
// 总条数
|
||||
total: 0,
|
||||
// 字典表格数据
|
||||
typeList: [],
|
||||
// 弹出层标题
|
||||
title: '',
|
||||
// 是否显示弹出层
|
||||
open: false,
|
||||
// 日期范围
|
||||
dateRange: [],
|
||||
// 查询参数
|
||||
queryParams: {
|
||||
time: [],
|
||||
unitId: null,
|
||||
proId: null,
|
||||
keyWord: '',
|
||||
types: 2,
|
||||
import {
|
||||
listType,
|
||||
getType,
|
||||
delType,
|
||||
addType,
|
||||
updateType,
|
||||
refreshCache,
|
||||
} from '@/api/system/dict/type'
|
||||
import {
|
||||
getLeaseManageListAll,
|
||||
getUnitData,
|
||||
getProData,
|
||||
getLeaseListAll,
|
||||
} from '@/api/claimAndRefund/receive'
|
||||
import { getInfo } from '@/api/login'
|
||||
import vueEasyPrint from 'vue-easy-print'
|
||||
export default {
|
||||
// name: "ReceiveManage",
|
||||
data() {
|
||||
return {
|
||||
// 遮罩层
|
||||
loading: true,
|
||||
// 选中数组
|
||||
ids: [],
|
||||
// 非单个禁用
|
||||
single: true,
|
||||
// 非多个禁用
|
||||
multiple: true,
|
||||
// 显示搜索条件
|
||||
showSearch: true,
|
||||
// 总条数
|
||||
total: 0,
|
||||
// 字典表格数据
|
||||
typeList: [],
|
||||
// 弹出层标题
|
||||
title: '',
|
||||
// 是否显示弹出层
|
||||
open: false,
|
||||
// 日期范围
|
||||
dateRange: [],
|
||||
// 查询参数
|
||||
queryParams: {
|
||||
time: [],
|
||||
unitId: null,
|
||||
proId: null,
|
||||
keyWord: '',
|
||||
types: 2,
|
||||
|
||||
pageNum: 1,
|
||||
pageSize: 10,
|
||||
dictName: undefined,
|
||||
dictType: undefined,
|
||||
status: undefined,
|
||||
},
|
||||
user: {},
|
||||
unitList: [],
|
||||
proList: [],
|
||||
leaseAuditList: [],
|
||||
showJJExamineBtn: false, //内部审批-机具分公司
|
||||
showSBExamineBtn: false, //内部审批-调试分公司
|
||||
// 表单参数
|
||||
form: {},
|
||||
// 表单校验
|
||||
rules: {
|
||||
dictName: [
|
||||
{
|
||||
required: true,
|
||||
message: '字典名称不能为空',
|
||||
trigger: 'blur',
|
||||
},
|
||||
],
|
||||
dictType: [
|
||||
{
|
||||
required: true,
|
||||
message: '字典类型不能为空',
|
||||
trigger: 'blur',
|
||||
},
|
||||
],
|
||||
},
|
||||
peopleOpen: false,
|
||||
noticeOpen: false,
|
||||
nform: {
|
||||
notice: '',
|
||||
},
|
||||
nrules: {
|
||||
notice: [
|
||||
{
|
||||
required: true,
|
||||
message: '通知内容不能为空',
|
||||
trigger: 'blur',
|
||||
},
|
||||
],
|
||||
},
|
||||
deptName: undefined,
|
||||
pageNum: 1,
|
||||
pageSize: 10,
|
||||
dictName: undefined,
|
||||
dictType: undefined,
|
||||
status: undefined,
|
||||
},
|
||||
user: {},
|
||||
unitList: [],
|
||||
proList: [],
|
||||
leaseAuditList: [],
|
||||
showJJExamineBtn: false, //内部审批-机具分公司
|
||||
showSBExamineBtn: false, //内部审批-调试分公司
|
||||
// 表单参数
|
||||
form: {},
|
||||
// 表单校验
|
||||
rules: {
|
||||
dictName: [
|
||||
{
|
||||
required: true,
|
||||
message: '字典名称不能为空',
|
||||
trigger: 'blur',
|
||||
},
|
||||
],
|
||||
dictType: [
|
||||
{
|
||||
required: true,
|
||||
message: '字典类型不能为空',
|
||||
trigger: 'blur',
|
||||
},
|
||||
],
|
||||
},
|
||||
peopleOpen: false,
|
||||
noticeOpen: false,
|
||||
nform: {
|
||||
notice: '',
|
||||
},
|
||||
nrules: {
|
||||
notice: [
|
||||
{
|
||||
required: true,
|
||||
message: '通知内容不能为空',
|
||||
trigger: 'blur',
|
||||
},
|
||||
],
|
||||
},
|
||||
deptName: undefined,
|
||||
|
||||
//领料单
|
||||
leaseApplyDetails: [],
|
||||
// 领料任务详情数据
|
||||
leaseApplyData: {},
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.queryParams.keyWord = this.$route.query?.keyWord
|
||||
this.GetUserInfo()
|
||||
// this.getList();
|
||||
|
||||
this.GetUnitData()
|
||||
this.GetProData()
|
||||
},
|
||||
components: { vueEasyPrint },
|
||||
methods: {
|
||||
// 获取用户信息
|
||||
async GetUserInfo() {
|
||||
const res = await getInfo()
|
||||
this.user = res.user
|
||||
// console.log(this.user)
|
||||
this.getList()
|
||||
},
|
||||
/** 查询列表 */
|
||||
async getList() {
|
||||
this.loading = true
|
||||
const params = {
|
||||
unitId: this.queryParams.unitId,
|
||||
projectId: this.queryParams.proId,
|
||||
keyWord: this.queryParams.keyWord,
|
||||
startTime: this.queryParams.time && this.queryParams.time[0],
|
||||
endTime: this.queryParams.time && this.queryParams.time[1],
|
||||
types: this.queryParams.types,
|
||||
souceBy: 0,
|
||||
pageSize: this.queryParams.pageSize,
|
||||
pageNum: this.queryParams.pageNum,
|
||||
//领料单
|
||||
leaseApplyDetails: [],
|
||||
// 领料任务详情数据
|
||||
leaseApplyData: {},
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.queryParams.keyWord = this.$route.query?.keyWord
|
||||
this.GetUserInfo()
|
||||
// this.getList();
|
||||
|
||||
const res = await getLeaseManageListAll(params)
|
||||
this.loading = false
|
||||
console.log('getList ============', res)
|
||||
this.leaseAuditList = res.data.rows
|
||||
// this.leaseAuditList.forEach((item,index)=>{
|
||||
// console.log(item.leaseApplyInfoList)
|
||||
// if(item.leaseApplyInfoList.length>0){
|
||||
// // item.showExamineBtn = true;
|
||||
// if(item.leaseApplyInfoList[0].status=="0"||item.leaseApplyInfoList[0].status=="5"||item.leaseApplyInfoList[0].status=="7"||item.leaseApplyInfoList[0].status=="8"){
|
||||
// item.showExamineBtn = true;
|
||||
// }
|
||||
// }
|
||||
|
||||
// })
|
||||
console.log(this.leaseAuditList)
|
||||
this.total = res.data.total
|
||||
},
|
||||
|
||||
// 获取 来往单位 列表数据
|
||||
async GetUnitData() {
|
||||
const params = {
|
||||
id: this.queryParams.proId,
|
||||
}
|
||||
const res = await getUnitData(params)
|
||||
this.unitList = res.data
|
||||
},
|
||||
// 获取 工程名称 列表数据
|
||||
async GetProData() {
|
||||
const params = {
|
||||
id: this.queryParams.unitId,
|
||||
}
|
||||
const res = await getProData(params)
|
||||
this.proList = res.data
|
||||
},
|
||||
|
||||
// 取消按钮
|
||||
cancel() {
|
||||
this.open = false
|
||||
this.reset()
|
||||
},
|
||||
// 表单重置
|
||||
reset() {
|
||||
this.form = {
|
||||
dictId: undefined,
|
||||
dictName: undefined,
|
||||
dictType: undefined,
|
||||
status: '0',
|
||||
remark: undefined,
|
||||
}
|
||||
this.resetForm('form')
|
||||
},
|
||||
/** 搜索按钮操作 */
|
||||
handleQuery() {
|
||||
this.queryParams.pageNum = 1
|
||||
this.getList()
|
||||
},
|
||||
/** 重置按钮操作 */
|
||||
resetQuery() {
|
||||
this.queryParams.time = []
|
||||
this.resetForm('queryForm')
|
||||
this.queryParams.keyWord = ''
|
||||
this.GetUnitData()
|
||||
this.GetProData()
|
||||
this.handleQuery()
|
||||
},
|
||||
handleNotice() {
|
||||
this.noticeOpen = true
|
||||
},
|
||||
/** 新增按钮操作 */
|
||||
handleAdd() {
|
||||
// this.$tab.closeOpenPage("/claimAndRefund/receive/receiveManageAdd");
|
||||
// this.reset();
|
||||
// this.open = true;
|
||||
// this.title = "添加字典类型";
|
||||
},
|
||||
handleExamine(row, type) {
|
||||
this.$tab.closeOpenPage({
|
||||
path: '/claimAndRefund/receive/receiveExamine',
|
||||
query: {
|
||||
taskId: row.taskId,
|
||||
},
|
||||
})
|
||||
},
|
||||
handleView(row) {
|
||||
this.$tab.closeOpenPage({
|
||||
path: '/claimAndRefund/receive/receiveExamine?isView=true',
|
||||
query: {
|
||||
taskId: row.taskId,
|
||||
},
|
||||
})
|
||||
},
|
||||
//打开领料单
|
||||
async openLld(row) {
|
||||
this.open = true
|
||||
|
||||
const res = await getLeaseListAll({ taskId: row.taskId })
|
||||
|
||||
this.leaseApplyDetails = res.rows[0].leaseApplyDetails
|
||||
this.leaseApplyData = res.rows[0]
|
||||
|
||||
console.log('this.leaseApplyData ============', this.leaseApplyData)
|
||||
},
|
||||
// 领料单 打印
|
||||
print() {
|
||||
this.$refs.remarksPrintRef.print()
|
||||
},
|
||||
|
||||
// 多选框选中数据
|
||||
handleSelectionChange(selection) {
|
||||
this.ids = selection.map((item) => item.dictId)
|
||||
this.single = selection.length != 1
|
||||
this.multiple = !selection.length
|
||||
},
|
||||
/** 修改按钮操作 */
|
||||
handleUpdate(row) {
|
||||
this.reset()
|
||||
const dictId = row.dictId || this.ids
|
||||
getType(dictId).then((response) => {
|
||||
this.form = response.data
|
||||
this.open = true
|
||||
this.title = '验收'
|
||||
})
|
||||
},
|
||||
/** 提交按钮 */
|
||||
submitForm: function () {
|
||||
this.$refs['form'].validate((valid) => {
|
||||
if (valid) {
|
||||
if (this.form.dictId != undefined) {
|
||||
updateType(this.form).then((response) => {
|
||||
this.$modal.msgSuccess('修改成功')
|
||||
this.open = false
|
||||
this.getList()
|
||||
})
|
||||
} else {
|
||||
addType(this.form).then((response) => {
|
||||
this.$modal.msgSuccess('新增成功')
|
||||
this.open = false
|
||||
this.getList()
|
||||
})
|
||||
}
|
||||
components: { vueEasyPrint },
|
||||
methods: {
|
||||
// 获取用户信息
|
||||
async GetUserInfo() {
|
||||
const res = await getInfo()
|
||||
this.user = res.user
|
||||
// console.log(this.user)
|
||||
this.getList()
|
||||
},
|
||||
/** 查询列表 */
|
||||
async getList() {
|
||||
this.loading = true
|
||||
const params = {
|
||||
unitId: this.queryParams.unitId,
|
||||
projectId: this.queryParams.proId,
|
||||
keyWord: this.queryParams.keyWord,
|
||||
startTime:
|
||||
this.queryParams.time && this.queryParams.time[0],
|
||||
endTime: this.queryParams.time && this.queryParams.time[1],
|
||||
types: this.queryParams.types,
|
||||
souceBy: 0,
|
||||
pageSize: this.queryParams.pageSize,
|
||||
pageNum: this.queryParams.pageNum,
|
||||
}
|
||||
})
|
||||
},
|
||||
/** 删除按钮操作 */
|
||||
handleDelete(row) {
|
||||
const dictIds = row.dictId || this.ids
|
||||
this.$modal
|
||||
.confirm('是否确认删除所选择的数据项?')
|
||||
.then(function () {
|
||||
return delType(dictIds)
|
||||
|
||||
const res = await getLeaseManageListAll(params)
|
||||
this.loading = false
|
||||
console.log('getList ============', res)
|
||||
this.leaseAuditList = res.data.rows
|
||||
// this.leaseAuditList.forEach((item,index)=>{
|
||||
// console.log(item.leaseApplyInfoList)
|
||||
// if(item.leaseApplyInfoList.length>0){
|
||||
// // item.showExamineBtn = true;
|
||||
// if(item.leaseApplyInfoList[0].status=="0"||item.leaseApplyInfoList[0].status=="5"||item.leaseApplyInfoList[0].status=="7"||item.leaseApplyInfoList[0].status=="8"){
|
||||
// item.showExamineBtn = true;
|
||||
// }
|
||||
// }
|
||||
|
||||
// })
|
||||
console.log(this.leaseAuditList)
|
||||
this.total = res.data.total
|
||||
},
|
||||
|
||||
// 获取 来往单位 列表数据
|
||||
async GetUnitData() {
|
||||
const params = {
|
||||
id: this.queryParams.proId,
|
||||
}
|
||||
const res = await getUnitData(params)
|
||||
this.unitList = res.data
|
||||
},
|
||||
// 获取 工程名称 列表数据
|
||||
async GetProData() {
|
||||
const params = {
|
||||
id: this.queryParams.unitId,
|
||||
}
|
||||
const res = await getProData(params)
|
||||
this.proList = res.data
|
||||
},
|
||||
|
||||
// 取消按钮
|
||||
cancel() {
|
||||
this.open = false
|
||||
this.reset()
|
||||
},
|
||||
// 表单重置
|
||||
reset() {
|
||||
this.form = {
|
||||
dictId: undefined,
|
||||
dictName: undefined,
|
||||
dictType: undefined,
|
||||
status: '0',
|
||||
remark: undefined,
|
||||
}
|
||||
this.resetForm('form')
|
||||
},
|
||||
/** 搜索按钮操作 */
|
||||
handleQuery() {
|
||||
this.queryParams.pageNum = 1
|
||||
this.getList()
|
||||
},
|
||||
/** 重置按钮操作 */
|
||||
resetQuery() {
|
||||
this.queryParams.time = []
|
||||
this.resetForm('queryForm')
|
||||
this.queryParams.keyWord = ''
|
||||
this.GetUnitData()
|
||||
this.GetProData()
|
||||
this.handleQuery()
|
||||
},
|
||||
handleNotice() {
|
||||
this.noticeOpen = true
|
||||
},
|
||||
/** 新增按钮操作 */
|
||||
handleAdd() {
|
||||
// this.$tab.closeOpenPage("/claimAndRefund/receive/receiveManageAdd");
|
||||
// this.reset();
|
||||
// this.open = true;
|
||||
// this.title = "添加字典类型";
|
||||
},
|
||||
handleExamine(row, type) {
|
||||
this.$tab.closeOpenPage({
|
||||
path: '/claimAndRefund/receive/receiveExamine',
|
||||
query: {
|
||||
taskId: row.taskId,
|
||||
},
|
||||
})
|
||||
.then(() => {
|
||||
this.getList()
|
||||
this.$modal.msgSuccess('删除成功')
|
||||
},
|
||||
handleView(row) {
|
||||
this.$tab.closeOpenPage({
|
||||
path: '/claimAndRefund/receive/receiveExamine?isView=true',
|
||||
query: {
|
||||
taskId: row.taskId,
|
||||
},
|
||||
})
|
||||
.catch(() => {})
|
||||
},
|
||||
//打开领料单
|
||||
async openLld(row) {
|
||||
this.open = true
|
||||
|
||||
const res = await getLeaseListAll({ taskId: row.taskId })
|
||||
|
||||
this.leaseApplyDetails = res.rows[0].leaseApplyDetails
|
||||
this.leaseApplyData = res.rows[0]
|
||||
|
||||
console.log(
|
||||
'this.leaseApplyData ============',
|
||||
this.leaseApplyData,
|
||||
)
|
||||
},
|
||||
// 领料单 打印
|
||||
print() {
|
||||
this.$refs.remarksPrintRef.print()
|
||||
},
|
||||
|
||||
// 多选框选中数据
|
||||
handleSelectionChange(selection) {
|
||||
this.ids = selection.map((item) => item.dictId)
|
||||
this.single = selection.length != 1
|
||||
this.multiple = !selection.length
|
||||
},
|
||||
/** 修改按钮操作 */
|
||||
handleUpdate(row) {
|
||||
this.reset()
|
||||
const dictId = row.dictId || this.ids
|
||||
getType(dictId).then((response) => {
|
||||
this.form = response.data
|
||||
this.open = true
|
||||
this.title = '验收'
|
||||
})
|
||||
},
|
||||
/** 提交按钮 */
|
||||
submitForm: function () {
|
||||
this.$refs['form'].validate((valid) => {
|
||||
if (valid) {
|
||||
if (this.form.dictId != undefined) {
|
||||
updateType(this.form).then((response) => {
|
||||
this.$modal.msgSuccess('修改成功')
|
||||
this.open = false
|
||||
this.getList()
|
||||
})
|
||||
} else {
|
||||
addType(this.form).then((response) => {
|
||||
this.$modal.msgSuccess('新增成功')
|
||||
this.open = false
|
||||
this.getList()
|
||||
})
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
/** 删除按钮操作 */
|
||||
handleDelete(row) {
|
||||
const dictIds = row.dictId || this.ids
|
||||
this.$modal
|
||||
.confirm('是否确认删除所选择的数据项?')
|
||||
.then(function () {
|
||||
return delType(dictIds)
|
||||
})
|
||||
.then(() => {
|
||||
this.getList()
|
||||
this.$modal.msgSuccess('删除成功')
|
||||
})
|
||||
.catch(() => {})
|
||||
},
|
||||
/** 导出按钮操作 */
|
||||
handleExport() {
|
||||
this.download(
|
||||
'base/tm_task/applyExport',
|
||||
{
|
||||
...this.queryParams,
|
||||
},
|
||||
`领料审批单_${new Date().getTime()}.xlsx`,
|
||||
)
|
||||
},
|
||||
/** 刷新缓存按钮操作 */
|
||||
handleRefreshCache() {
|
||||
refreshCache().then(() => {
|
||||
this.$modal.msgSuccess('刷新成功')
|
||||
this.$store.dispatch('dict/cleanDict')
|
||||
})
|
||||
},
|
||||
},
|
||||
/** 导出按钮操作 */
|
||||
handleExport() {
|
||||
this.download(
|
||||
'base/tm_task/applyExport',
|
||||
{
|
||||
...this.queryParams,
|
||||
},
|
||||
`领料审批单_${new Date().getTime()}.xlsx`,
|
||||
)
|
||||
},
|
||||
/** 刷新缓存按钮操作 */
|
||||
handleRefreshCache() {
|
||||
refreshCache().then(() => {
|
||||
this.$modal.msgSuccess('刷新成功')
|
||||
this.$store.dispatch('dict/cleanDict')
|
||||
})
|
||||
},
|
||||
},
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.print {
|
||||
.title {
|
||||
text-align: center;
|
||||
font-weight: 600;
|
||||
font-size: 16px;
|
||||
}
|
||||
.info {
|
||||
margin-top: 10px;
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
.print {
|
||||
.title {
|
||||
text-align: center;
|
||||
font-weight: 600;
|
||||
font-size: 16px;
|
||||
}
|
||||
.info {
|
||||
margin-top: 10px;
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
|
||||
.item {
|
||||
width: 50%;
|
||||
flex-shrink: 0;
|
||||
margin-bottom: 5px;
|
||||
font-size: 14px;
|
||||
.item {
|
||||
width: 50%;
|
||||
flex-shrink: 0;
|
||||
margin-bottom: 5px;
|
||||
font-size: 14px;
|
||||
}
|
||||
}
|
||||
|
||||
.fillIn {
|
||||
margin-top: 15px;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
}
|
||||
}
|
||||
|
||||
.fillIn {
|
||||
margin-top: 15px;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
::v-deep.el-table .fixed-width .el-button--mini {
|
||||
width: 60px !important;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
}
|
||||
::v-deep.el-table .fixed-width .el-button--mini {
|
||||
width: 60px !important;
|
||||
margin-bottom: 10px;
|
||||
}
|
||||
</style>
|
||||
|
|
|
|||
Loading…
Reference in New Issue