优化页面样式,首页跳转bug等问题

This commit is contained in:
BianLzhaoMin 2024-06-12 16:16:08 +08:00
parent f4ac334d17
commit c4c2e6953d
16 changed files with 552 additions and 446 deletions

View File

@ -11,7 +11,6 @@
> >
<!-- 外层弹框内容 --> <!-- 外层弹框内容 -->
<slot name="outerContent"></slot> <slot name="outerContent"></slot>
<!-- 内层对话框 --> <!-- 内层对话框 -->
<el-dialog <el-dialog
:title="dialogConfig.innerTitle" :title="dialogConfig.innerTitle"
@ -29,27 +28,31 @@
</template> </template>
<script> <script>
export default { export default {
props: { props: {
/* 配置项 */ /* 配置项 */
dialogConfig: { dialogConfig: {
type: Object, type: Object,
default: () => { default: () => {
return {} return {}
},
}, },
}, },
methods: { height: {
/* 右上角关闭外层 */ type: String,
handleCloseOuter() { default: '500px',
/* 通知父组件更改弹框显示值 */
this.$emit('closeDialogOuter', false)
},
/* 右上角关闭内层 */
handleCloseInner() {
/* 通知父组件更改弹框显示值 */
this.$emit('closeDialogInner', false)
},
}, },
} },
methods: {
/* 右上角关闭外层 */
handleCloseOuter() {
/* 通知父组件更改弹框显示值 */
this.$emit('closeDialogOuter', false)
},
/* 右上角关闭内层 */
handleCloseInner() {
/* 通知父组件更改弹框显示值 */
this.$emit('closeDialogInner', false)
},
},
}
</script> </script>

View File

@ -1,114 +1,113 @@
<template> <template>
<div :class="{'hidden':hidden}" class="pagination-container"> <div :class="{ hidden: hidden }" class="pagination-container">
<el-pagination <el-pagination
:background="background" :background="background"
:current-page.sync="currentPage" :current-page.sync="currentPage"
:page-size.sync="pageSize" :page-size.sync="pageSize"
:layout="layout" :layout="layout"
:page-sizes="pageSizes" :page-sizes="pageSizes"
:pager-count="pagerCount" :pager-count="pagerCount"
:total="total" :total="total"
v-bind="$attrs" v-bind="$attrs"
@size-change="handleSizeChange" @size-change="handleSizeChange"
@current-change="handleCurrentChange" @current-change="handleCurrentChange"
/> />
</div> </div>
</template> </template>
<script> <script>
import { scrollTo } from '@/utils/scroll-to' import { scrollTo } from '@/utils/scroll-to'
export default { export default {
name: 'Pagination', name: 'Pagination',
props: { props: {
total: { total: {
required: true, required: true,
type: Number type: Number,
},
page: {
type: Number,
default: 1,
},
limit: {
type: Number,
default: 20,
},
pageSizes: {
type: Array,
default() {
return [10, 20, 30, 50]
},
},
// 5
pagerCount: {
type: Number,
default: document.body.clientWidth < 992 ? 5 : 7,
},
layout: {
type: String,
default: 'total, sizes, prev, pager, next, jumper',
},
background: {
type: Boolean,
default: true,
},
autoScroll: {
type: Boolean,
default: true,
},
hidden: {
type: Boolean,
default: false,
},
}, },
page: { data() {
type: Number, return {}
default: 1
}, },
limit: { computed: {
type: Number, currentPage: {
default: 20 get() {
return this.page
},
set(val) {
this.$emit('update:page', val)
},
},
pageSize: {
get() {
return this.limit
},
set(val) {
this.$emit('update:limit', val)
},
},
}, },
pageSizes: { methods: {
type: Array, handleSizeChange(val) {
default() { if (this.currentPage * val > this.total) {
return [10, 20, 30, 50] this.currentPage = 1
} }
this.$emit('pagination', { page: this.currentPage, limit: val })
if (this.autoScroll) {
scrollTo(0, 800)
}
},
handleCurrentChange(val) {
this.$emit('pagination', { page: val, limit: this.pageSize })
if (this.autoScroll) {
scrollTo(0, 800)
}
},
}, },
// 5
pagerCount: {
type: Number,
default: document.body.clientWidth < 992 ? 5 : 7
},
layout: {
type: String,
default: 'total, sizes, prev, pager, next, jumper'
},
background: {
type: Boolean,
default: true
},
autoScroll: {
type: Boolean,
default: true
},
hidden: {
type: Boolean,
default: false
}
},
data() {
return {
};
},
computed: {
currentPage: {
get() {
return this.page
},
set(val) {
this.$emit('update:page', val)
}
},
pageSize: {
get() {
return this.limit
},
set(val) {
this.$emit('update:limit', val)
}
}
},
methods: {
handleSizeChange(val) {
if (this.currentPage * val > this.total) {
this.currentPage = 1
}
this.$emit('pagination', { page: this.currentPage, limit: val })
if (this.autoScroll) {
scrollTo(0, 800)
}
},
handleCurrentChange(val) {
this.$emit('pagination', { page: val, limit: this.pageSize })
if (this.autoScroll) {
scrollTo(0, 800)
}
}
}
} }
</script> </script>
<style scoped> <style scoped>
.pagination-container { .pagination-container {
background: #fff; background: #fff;
padding: 32px 16px; padding: 32px 16px;
} }
.pagination-container.hidden { .pagination-container.hidden {
display: none; display: none;
} }
</style> </style>

View File

@ -102,7 +102,7 @@
</el-table-column> </el-table-column>
</el-table> </el-table>
<pagination <pagination
v-if="config.pageShow" v-show="config.pageShow"
:total="total" :total="total"
:page.sync="pageParams.pageNum" :page.sync="pageParams.pageNum"
:limit.sync="pageParams.pageSize" :limit.sync="pageParams.pageSize"

View File

@ -126,6 +126,7 @@
v-loading="loading" v-loading="loading"
:data="leaseAuditList" :data="leaseAuditList"
@selection-change="handleSelectionChange" @selection-change="handleSelectionChange"
border
> >
<!-- <el-table-column type="selection" width="55" align="center" /> --> <!-- <el-table-column type="selection" width="55" align="center" /> -->
<el-table-column <el-table-column
@ -202,9 +203,10 @@
}}</span> }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="操作" width="250" align="center"> <el-table-column label="操作" width="160" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
type="text"
size="mini" size="mini"
@click="handleView(scope.row)" @click="handleView(scope.row)"
v-hasPermi="['picking:auditing:view']" v-hasPermi="['picking:auditing:view']"
@ -212,7 +214,7 @@
> >
<el-button <el-button
size="mini" size="mini"
type="primary" type="text"
@click="handleExamine(scope.row)" @click="handleExamine(scope.row)"
v-hasPermi="['picking:auditing:fgs']" v-hasPermi="['picking:auditing:fgs']"
v-if=" v-if="
@ -223,7 +225,7 @@
> >
<el-button <el-button
size="mini" size="mini"
type="primary" type="text"
@click="handleExamine(scope.row)" @click="handleExamine(scope.row)"
v-hasPermi="['picking:auditing:sgb']" v-hasPermi="['picking:auditing:sgb']"
v-if=" v-if="
@ -235,9 +237,9 @@
" "
>审批</el-button >审批</el-button
> >
<el-button <!-- <el-button
size="mini" size="mini"
type="primary" type="text"
@click="handleExamine(scope.row)" @click="handleExamine(scope.row)"
v-hasPermi="['receive:examine:ajb']" v-hasPermi="['receive:examine:ajb']"
v-if=" v-if="
@ -247,11 +249,11 @@
scope.row.leaseApplyInfoList[0].status == '6' || scope.row.leaseApplyInfoList[0].status == '6' ||
scope.row.leaseApplyInfoList[0].status == '8') scope.row.leaseApplyInfoList[0].status == '8')
" "
>审批</el-button >安监部审批</el-button
> > -->
<el-button <el-button
size="mini" size="mini"
type="primary" type="text"
@click="handleExamine(scope.row, 'jjfgs')" @click="handleExamine(scope.row, 'jjfgs')"
v-hasPermi="['picking:auditing:jjnb']" v-hasPermi="['picking:auditing:jjnb']"
v-if=" v-if="
@ -266,7 +268,7 @@
> >
<el-button <el-button
size="mini" size="mini"
type="primary" type="text"
@click="handleExamine(scope.row, 'sbfgs')" @click="handleExamine(scope.row, 'sbfgs')"
v-hasPermi="['picking:auditing:tsnb']" v-hasPermi="['picking:auditing:tsnb']"
v-if=" v-if="
@ -282,7 +284,7 @@
> >
<el-button <el-button
size="mini" size="mini"
type="info" type="text"
@click="openLld(scope.row)" @click="openLld(scope.row)"
v-hasPermi="['picking:auditing:list']" v-hasPermi="['picking:auditing:list']"
>领料单</el-button >领料单</el-button

View File

@ -99,7 +99,7 @@
></right-toolbar> ></right-toolbar>
</el-row> </el-row>
<el-table v-loading="loading" :data="leaseList"> <el-table v-loading="loading" :data="leaseList" border>
<!-- <el-table-column type="selection" width="55" align="center" /> --> <!-- <el-table-column type="selection" width="55" align="center" /> -->
<el-table-column <el-table-column
align="center" align="center"
@ -152,13 +152,10 @@
:show-overflow-tooltip="true" :show-overflow-tooltip="true"
></el-table-column> ></el-table-column>
<el-table-column <el-table-column label="操作" align="center">
label="操作"
align="center"
class-name="small-padding fixed-width"
>
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
type="text"
size="mini" size="mini"
@click="handleView(scope.row)" @click="handleView(scope.row)"
v-hasPermi="['picking:outbound:view']" v-hasPermi="['picking:outbound:view']"
@ -166,7 +163,7 @@
> >
<el-button <el-button
size="mini" size="mini"
type="primary" type="text"
v-if="scope.row.taskStatus != 35" v-if="scope.row.taskStatus != 35"
@click="handleOut(scope.row)" @click="handleOut(scope.row)"
v-hasPermi="['picking:outbound:out']" v-hasPermi="['picking:outbound:out']"

View File

@ -132,6 +132,7 @@
v-loading="loading" v-loading="loading"
:data="agreementList" :data="agreementList"
@selection-change="handleSelectionChange" @selection-change="handleSelectionChange"
border
> >
<el-table-column type="selection" width="55" align="center" /> <el-table-column type="selection" width="55" align="center" />
<el-table-column <el-table-column
@ -229,16 +230,11 @@
prop="remark" prop="remark"
:show-overflow-tooltip="true" :show-overflow-tooltip="true"
/> />
<el-table-column <el-table-column label="操作" align="center" width="120">
label="操作"
align="center"
width="200"
class-name="small-padding fixed-width"
>
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
size="mini" size="mini"
type="primary" type="text"
icon="el-icon-edit" icon="el-icon-edit"
@click="handleUpdate(scope.row)" @click="handleUpdate(scope.row)"
v-hasPermi="['picking:protocol:edit']" v-hasPermi="['picking:protocol:edit']"
@ -246,7 +242,7 @@
> >
<el-button <el-button
size="mini" size="mini"
type="danger" type="text"
icon="el-icon-delete" icon="el-icon-delete"
@click="handleDelete(scope.row)" @click="handleDelete(scope.row)"
v-hasPermi="['picking:protocol:del']" v-hasPermi="['picking:protocol:del']"

View File

@ -561,7 +561,7 @@ export default {
} }
</script> </script>
<style rel="stylesheet/scss" lang="scss"> <style rel="stylesheet/scss" lang="scss" scoped>
.login { .login {
//display: flex; //display: flex;
//justify-content: center; //justify-content: center;

View File

@ -1020,7 +1020,43 @@ export default {
console.log(this.checkResultOne) console.log(this.checkResultOne)
}, },
handleDialogSelectionChange(selection) { handleDialogSelectionChange(selection) {
this.dialogIds = selection.map((item) => item) // console.log(selection, '--')
// let params = {
// repairId: this.repairId,
// pageNum: 1,
// pageSize: 10,
// }
// getRepairRecord(params)
// .then((res) => {
// this.repairRecordList = res.rows
// this.repairRecordTotal = res.total
// this.openRepairRecord = true
// this.title = ''
// })
// .catch(() => {})
this.dialogIds = selection.map((item) => {
console.log(item.repairId, 'repairId------')
getRepairRecord({
repairId: item.repairId,
pageNum: 1,
pageSize: 10,
}).then((res) => {
const scrapDetails = res.rows
scrapDetails.forEach((e) => {
if (e.scrapNum >= 1) {
item.fileIds = e.fileIds
item.scrapReason = e.scrapReason
item.scrapType = e.scrapType
}
})
})
return item
})
console.log(this.dialogIds, '处理后的数据--')
this.dialogSingle = selection.length != 1 this.dialogSingle = selection.length != 1
this.dialogMultiple = !selection.length this.dialogMultiple = !selection.length
console.log(this.checkResultOne) console.log(this.checkResultOne)

View File

@ -0,0 +1,62 @@
<template>
<div>
<!-- <a
href="https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg"
target="_blank"
v-for="(item, index) in scrapImgList"
:key="index"
>查看</a
> -->
<ImagePreview
v-for="(item, index) in scrapImgList"
:key="index"
src="https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg"
:width="`20px`"
:height="`20px`"
class="img-box"
/>
</div>
</template>
<script>
export default {
props: {
scrapImg: {
type: String,
default: () => null,
},
},
data() {
return {
scrapImgList: [
{ imgUrl: '123' },
{ imgUrl: '123' },
{ imgUrl: '123' },
],
}
},
created() {
if (this.scrapImg) {
this.scrapImgList = this.scrapImg.split(',')
}
},
}
</script>
<style scoped>
a {
margin-right: 8px;
font-size: 13px;
color: #1890ff;
}
a:last-child {
margin: 0;
}
.img-box {
margin-right: 8px;
}
.img-box:last-child {
margin: 0;
}
</style>

View File

@ -81,7 +81,8 @@ export const dialogConfig = {
{ t_width: '', t_props: 'scrapNum', t_label: '设备数量' }, { t_width: '', t_props: 'scrapNum', t_label: '设备数量' },
{ t_width: '', t_props: 'status', t_label: '审批状态', t_slot: 't_type' }, { t_width: '', t_props: 'status', t_label: '审批状态', t_slot: 't_type' },
{ t_width: '', t_props: '', t_label: '报废原因' }, { t_width: '', t_props: '', t_label: '报废原因' },
{ t_width: '', t_props: '', t_label: '报废图片' }, { t_width: '', t_props: '', t_label: '损坏原因', t_slot: 't_damage' },
{ t_width: '', t_props: '', t_label: '报废图片', t_slot: 't_img' },
{ t_width: '', t_props: 'remark', t_label: '备注' }, { t_width: '', t_props: 'remark', t_label: '备注' },
], ],

View File

@ -8,7 +8,7 @@
@getTableSelectionChange="getTableSelectionList" @getTableSelectionChange="getTableSelectionList"
> >
<template slot="export" slot-scope="{ pageParams }"> <template slot="export" slot-scope="{ pageParams }">
<el-row :gutter="10" class="mb8"> <el-row class="mb8">
<el-button <el-button
type="success" type="success"
plain plain
@ -111,6 +111,15 @@
>驳回</el-tag >驳回</el-tag
> >
</template> </template>
<!-- 损坏原因 -->
<template slot-scope="{ data }" slot="t_damage">
{{ data.scrapType == 1 ? '人为' : '自然' }}
</template>
<!-- 报废图片 -->
<template slot-scope="{ data }" slot="t_img">
<ScrapImg />
</template>
</TableModel> </TableModel>
<el-row <el-row
class="dialog-common-btn" class="dialog-common-btn"
@ -163,6 +172,7 @@
import TableModel from '@/components/TableModel' import TableModel from '@/components/TableModel'
import DialogModel from '@/components/DialogModel' import DialogModel from '@/components/DialogModel'
import ScrapSource from '../../component/scrapSource.vue' import ScrapSource from '../../component/scrapSource.vue'
import ScrapImg from '../../component/scrapImg.vue'
import { import {
getForecastWasteListApi, getForecastWasteListApi,
getDialogListApi, getDialogListApi,
@ -175,6 +185,7 @@ export default {
TableModel, TableModel,
DialogModel, DialogModel,
ScrapSource, ScrapSource,
ScrapImg,
}, },
data() { data() {
return { return {

View File

@ -14,7 +14,7 @@
" "
> >
<template slot="export" slot-scope="{ pageParams }"> <template slot="export" slot-scope="{ pageParams }">
<el-row :gutter="10" class="mb8"> <el-row class="mb8">
<el-button <el-button
type="primary" type="primary"
plain plain
@ -145,141 +145,141 @@
</template> </template>
<script> <script>
import TableModel from '@/components/TableModel' import TableModel from '@/components/TableModel'
import DialogModel from '@/components/DialogModel' import DialogModel from '@/components/DialogModel'
import SelDepart from '../../component/selDepart.vue' import SelDepart from '../../component/selDepart.vue'
import ScrapSource from '../../component/scrapSource.vue' import ScrapSource from '../../component/scrapSource.vue'
import AuditingReturn from '../auditingReturn/index.vue' // 退 import AuditingReturn from '../auditingReturn/index.vue' // 退
import AuditingDetails from '../../component/auditingDetails.vue' import AuditingDetails from '../../component/auditingDetails.vue'
import { import {
getPreScrapListApi, getPreScrapListApi,
getDialogListApi, getDialogListApi,
submitScrapApi, submitScrapApi,
} from '@/api/scrap/forecastWaste.js' } from '@/api/scrap/forecastWaste.js'
import { config, dialogConfig, getSelList, getTypeListSel } from './config' import { config, dialogConfig, getSelList, getTypeListSel } from './config'
export default { export default {
name: 'scrapListing', name: 'scrapListing',
components: { components: {
TableModel, TableModel,
DialogModel, DialogModel,
SelDepart, SelDepart,
ScrapSource, ScrapSource,
AuditingReturn, AuditingReturn,
AuditingDetails, AuditingDetails,
}, },
data() { data() {
return { return {
config, config,
dialogConfig, dialogConfig,
getPreScrapListApi, getPreScrapListApi,
getDialogListApi, getDialogListApi,
tableSelList: [], tableSelList: [],
sendParams: {}, // sendParams: {}, //
temp: false, temp: false,
getSelList, getSelList,
getTypeListSel, getTypeListSel,
imgCommonUrl: process.env.VUE_APP_BASE_API + '/system', imgCommonUrl: process.env.VUE_APP_BASE_API + '/system',
/* 提交报废申请参数 */ /* 提交报废申请参数 */
submitScrapParams: { submitScrapParams: {
taskIdList: [], taskIdList: [],
deptIds: [], deptIds: [],
},
auditingList: [],
sendParamsAuditing: {},
}
},
created() {
/* 获取表单下拉选数据 */
this.getSelList()
this.getTypeListSel()
},
methods: {
/* 列表按钮操作 */
handlePreview(row) {
this.sendParams.taskId = row.taskId
this.dialogConfig.outerTitle = '查看'
this.dialogConfig.outerWidth = '70%'
this.dialogConfig.outerVisible = true
}, },
handleSubmitScrap(row) { auditingList: [],
this.submitScrapParams.taskIdList = [] sendParamsAuditing: {},
this.submitScrapParams.taskIdList.push(row.taskId) }
},
created() {
/* 获取表单下拉选数据 */
this.getSelList()
this.getTypeListSel()
},
methods: {
/* 列表按钮操作 */
handlePreview(row) {
this.sendParams.taskId = row.taskId
this.dialogConfig.outerTitle = '查看'
this.dialogConfig.outerWidth = '70%'
this.dialogConfig.outerVisible = true
},
handleSubmitScrap(row) {
this.submitScrapParams.taskIdList = []
this.submitScrapParams.taskIdList.push(row.taskId)
this.dialogConfig.outerTitle = '选择审批部门'
this.dialogConfig.outerWidth = '50%'
this.dialogConfig.outerVisible = true
},
handleAuditing(row) {
this.auditingList = row.scrapAuditorSetList
this.dialogConfig.outerTitle = '审批详情'
this.dialogConfig.outerWidth = '50%'
this.dialogConfig.outerVisible = true
},
handleReject(row) {
this.sendParamsAuditing.taskId = row.taskId
this.temp = !this.temp
},
/* 关闭选择审批部门弹框 */
async closeDepartSel(val, list) {
if (list.length < 1) {
this.$message.error('请选择审批部门')
return
}
list.map((e) => {
this.submitScrapParams.deptIds.push(e.id)
})
const res = await submitScrapApi(this.submitScrapParams)
if (res.code == 200) {
this.$message.success('已提交成功')
this.dialogConfig.outerVisible = val
this.$refs.listingTbRef.getList()
}
this.submitScrapParams.deptIds = this.submitScrapParams.taskIdList =
[]
},
/* 批量提交报废按钮 */
handelSubmitScrap() {
if (this.tableSelList.length < 1) {
this.$message.error('请勾选列表数据!')
} else {
this.dialogConfig.outerTitle = '选择审批部门' this.dialogConfig.outerTitle = '选择审批部门'
this.dialogConfig.outerWidth = '50%' this.dialogConfig.outerWidth = '50%'
this.dialogConfig.outerVisible = true this.dialogConfig.outerVisible = true
}, }
handleAuditing(row) {
this.auditingList = row.scrapAuditorSetList
this.dialogConfig.outerTitle = '审批详情'
this.dialogConfig.outerWidth = '50%'
this.dialogConfig.outerVisible = true
},
handleReject(row) {
this.sendParamsAuditing.taskId = row.taskId
this.temp = !this.temp
},
/* 关闭选择审批部门弹框 */
async closeDepartSel(val, list) {
if (list.length < 1) {
this.$message.error('请选择审批部门')
return
}
list.map((e) => {
this.submitScrapParams.deptIds.push(e.id)
})
const res = await submitScrapApi(this.submitScrapParams)
if (res.code == 200) {
this.$message.success('已提交成功')
this.dialogConfig.outerVisible = val
this.$refs.listingTbRef.getList()
}
this.submitScrapParams.deptIds =
this.submitScrapParams.taskIdList = []
},
/* 批量提交报废按钮 */
handelSubmitScrap() {
if (this.tableSelList.length < 1) {
this.$message.error('请勾选列表数据!')
} else {
this.dialogConfig.outerTitle = '选择审批部门'
this.dialogConfig.outerWidth = '50%'
this.dialogConfig.outerVisible = true
}
},
/* 表格复选框选中的数据 */
getTableSelectionChange(val) {
this.tableSelList = this.submitScrapParams.taskIdList = []
this.tableSelList = val
this.tableSelList.map((e) => {
this.submitScrapParams.taskIdList.push(e.taskId)
})
},
handleBack() {
this.temp = !this.temp
this.dialogVisible = false
},
/* 外层弹框关闭 */
closeDialogOuter() {
this.dialogConfig.outerVisible = false
},
/* 内层弹框关闭 */
closeDialogInner() {
this.dialogConfig.innerVisible = false
},
/* 导出数据 */
handelExportData(data) {
console.log(this.tableSelList, ' this.tableSelList')
this.download(
'material/scrap/export',
{
...data,
},
`报废列表_${new Date().getTime()}.xlsx`,
)
console.log('数据导出', data)
},
}, },
} /* 表格复选框选中的数据 */
getTableSelectionChange(val) {
this.tableSelList = this.submitScrapParams.taskIdList = []
this.tableSelList = val
this.tableSelList.map((e) => {
this.submitScrapParams.taskIdList.push(e.taskId)
})
},
handleBack() {
this.temp = !this.temp
this.dialogVisible = false
},
/* 外层弹框关闭 */
closeDialogOuter() {
this.dialogConfig.outerVisible = false
},
/* 内层弹框关闭 */
closeDialogInner() {
this.dialogConfig.innerVisible = false
},
/* 导出数据 */
handelExportData(data) {
console.log(this.tableSelList, ' this.tableSelList')
this.download(
'material/scrap/export',
{
...data,
},
`报废列表_${new Date().getTime()}.xlsx`,
)
console.log('数据导出', data)
},
},
}
</script> </script>

View File

@ -13,7 +13,7 @@
ref="tbRef" ref="tbRef"
> >
<template slot="export" slot-scope="{ pageParams }"> <template slot="export" slot-scope="{ pageParams }">
<el-row :gutter="10" class="mb8"> <el-row class="mb8">
<el-button <el-button
plain plain
size="mini" size="mini"
@ -148,176 +148,175 @@
</template> </template>
<script> <script>
import { import {
getDispositionListApi, getDispositionListApi,
submitDispositionApi, submitDispositionApi,
getDialogListApi, getDialogListApi,
} from '@/api/scrap/forecastWaste.js' } from '@/api/scrap/forecastWaste.js'
import TableModel from '@/components/TableModel' import TableModel from '@/components/TableModel'
import DialogModel from '@/components/DialogModel' import DialogModel from '@/components/DialogModel'
import ScrapSource from '../../component/scrapSource.vue' import ScrapSource from '../../component/scrapSource.vue'
import { config, dialogConfig, getSelList } from './config.js' import { config, dialogConfig, getSelList } from './config.js'
export default { export default {
components: { components: {
TableModel, TableModel,
DialogModel, DialogModel,
ScrapSource ScrapSource,
}, },
data() { data() {
return { return {
config, config,
dialogConfig, dialogConfig,
getDispositionListApi, getDispositionListApi,
getDialogListApi, getDialogListApi,
/* 选中的列表数据 */ /* 选中的列表数据 */
selectionList: [], selectionList: [],
/* 驳回原因 */ /* 驳回原因 */
rejectReason: '', rejectReason: '',
fileType: ['png', 'jpg', 'jpeg', 'pdf', 'doc', 'xls', 'docx'], fileType: ['png', 'jpg', 'jpeg', 'pdf', 'doc', 'xls', 'docx'],
uploadFileList: [], uploadFileList: [],
sendParams: {}, sendParams: {},
fileList: [], fileList: [],
tbSelectList: [], tbSelectList: [],
/* 处置提交参数 */ /* 处置提交参数 */
dispositionParams: [], dispositionParams: [],
// dispositionParams: { // dispositionParams: {
// taskId: '', // taskId: '',
// fileUrl: '', // url // fileUrl: '', // url
// fileName: '', // // fileName: '', //
// disposition: 1, // 0 1 // disposition: 1, // 0 1
// }, // },
/* 附件预览地址 */ /* 附件预览地址 */
filePreviewUrl: process.env.VUE_APP_BASE_API + '/system', filePreviewUrl: process.env.VUE_APP_BASE_API + '/system',
getSelList, getSelList,
}
},
created() {
this.getSelList()
},
methods: {
/* 按钮操作 */
handlePreview(row) {
this.dispositionParams.taskId = this.sendParams.taskId = row.taskId
this.dialogConfig.outerTitle = '查看'
this.dialogConfig.outerWidth = '70%'
this.dialogConfig.outerVisible = true
},
handleDisposition() {
this.dialogConfig.outerTitle = '处置'
this.dialogConfig.outerWidth = '60%'
this.dialogConfig.outerVisible = true
},
/* 查看附件 */
handlePreviewFile(data) {
this.fileList = []
data.dispositionFileName.split(',').map((e) => {
let fileObj = {
fileName: e,
fileUrl: '',
}
this.fileList.push(fileObj)
})
data.dispositionFileUrl.split(',').map((e, index) => {
this.fileList[index].fileUrl = e
})
this.dialogConfig.outerTitle = '附件信息'
this.dialogConfig.outerWidth = '40%'
this.dialogConfig.outerVisible = true
},
/* 关闭外层弹框 */
closeDialogOuter(val) {
this.dialogConfig.outerVisible = val
},
/* 取消 */
handleCancelInner() {
this.dialogConfig.outerVisible = false
},
/* 确定 */
async handleSubmitInner() {
if (this.uploadFileList.length < 1) {
this.$message.error('请先上传图片')
return
}
let fileUrl = ''
let fileName = ''
this.uploadFileList.map((e) => {
fileUrl += e.fileUrl + ','
fileName += e.fileName + ','
})
this.dispositionParams.fileUrl = fileUrl.substring(
fileUrl.length - 1,
',',
)
this.dispositionParams.fileName = fileName.substring(
fileName.length - 1,
',',
)
this.dispositionParams.map((e) => {
e.fileUrl = fileUrl.substring(fileUrl.length - 1, ',')
e.fileName = fileName.substring(fileUrl.length - 1, ',')
})
const res = await submitDispositionApi(this.dispositionParams)
if (res.code == 200) {
this.$message.success('处置成功!')
this.dialogConfig.outerVisible = false
this.$refs.tbRef()
} }
}, },
created() { /* 获取上传后的图片信息 */
this.getSelList() getFileList(val) {
this.uploadFileList = val
}, },
methods: {
/* 按钮操作 */
handlePreview(row) {
this.dispositionParams.taskId = this.sendParams.taskId =
row.taskId
this.dialogConfig.outerTitle = '查看'
this.dialogConfig.outerWidth = '70%'
this.dialogConfig.outerVisible = true
},
handleDisposition() {
this.dialogConfig.outerTitle = '处置'
this.dialogConfig.outerWidth = '60%'
this.dialogConfig.outerVisible = true
},
/* 查看附件 */ /* 批量处置 */
handlePreviewFile(data) { handleBatchDisposition() {
this.fileList = [] this.dispositionParams = []
data.dispositionFileName.split(',').map((e) => { if (this.tbSelectList.length < 1) {
let fileObj = { this.$message.error('请选择需处置的数据')
fileName: e, return
fileUrl: '', }
} this.tbSelectList.map((e) => {
let prams = {
this.fileList.push(fileObj) taskId: e.taskId,
}) fileUrl: '', // url
fileName: '', //
data.dispositionFileUrl.split(',').map((e, index) => { disposition: 1, // 0 1
this.fileList[index].fileUrl = e
})
this.dialogConfig.outerTitle = '附件信息'
this.dialogConfig.outerWidth = '40%'
this.dialogConfig.outerVisible = true
},
/* 关闭外层弹框 */
closeDialogOuter(val) {
this.dialogConfig.outerVisible = val
},
/* 取消 */
handleCancelInner() {
this.dialogConfig.outerVisible = false
},
/* 确定 */
async handleSubmitInner() {
if (this.uploadFileList.length < 1) {
this.$message.error('请先上传图片')
return
} }
let fileUrl = '' this.dispositionParams.push(prams)
let fileName = '' })
this.uploadFileList.map((e) => {
fileUrl += e.fileUrl + ','
fileName += e.fileName + ','
})
this.dispositionParams.fileUrl = fileUrl.substring(
fileUrl.length - 1,
',',
)
this.dispositionParams.fileName = fileName.substring(
fileName.length - 1,
',',
)
this.dispositionParams.map((e) => { this.dialogConfig.outerTitle = '处置'
e.fileUrl = fileUrl.substring(fileUrl.length - 1, ',') this.dialogConfig.outerWidth = '60%'
e.fileName = fileName.substring(fileUrl.length - 1, ',') this.dialogConfig.outerVisible = true
})
const res = await submitDispositionApi(this.dispositionParams)
if (res.code == 200) {
this.$message.success('处置成功!')
this.dialogConfig.outerVisible = false
this.$refs.tbRef()
}
},
/* 获取上传后的图片信息 */
getFileList(val) {
this.uploadFileList = val
},
/* 批量处置 */
handleBatchDisposition() {
this.dispositionParams = []
if (this.tbSelectList.length < 1) {
this.$message.error('请选择需处置的数据')
return
}
this.tbSelectList.map((e) => {
let prams = {
taskId: e.taskId,
fileUrl: '', // url
fileName: '', //
disposition: 1, // 0 1
}
this.dispositionParams.push(prams)
})
this.dialogConfig.outerTitle = '处置'
this.dialogConfig.outerWidth = '60%'
this.dialogConfig.outerVisible = true
},
/* 获取列表下拉勾选数据 */
getSelectionList(selList) {
console.log(selList, '选择的数据')
this.tbSelectList = selList
},
/* 导出数据 */
handelExportData(data) {
console.log(this.tableSelList, ' this.tableSelList')
this.download(
'material/scrap/exportObtainDisposalList',
{
...data,
},
`报废处置列表_${new Date().getTime()}.xlsx`,
)
console.log('数据导出', data)
},
}, },
}
/* 获取列表下拉勾选数据 */
getSelectionList(selList) {
console.log(selList, '选择的数据')
this.tbSelectList = selList
},
/* 导出数据 */
handelExportData(data) {
console.log(this.tableSelList, ' this.tableSelList')
this.download(
'material/scrap/exportObtainDisposalList',
{
...data,
},
`报废处置列表_${new Date().getTime()}.xlsx`,
)
console.log('数据导出', data)
},
},
}
</script> </script>

View File

@ -3,7 +3,7 @@
<!-- 报废审核 --> <!-- 报废审核 -->
<TableModel :config="config" :sendApi="getScrapListApi" ref="tbRef"> <TableModel :config="config" :sendApi="getScrapListApi" ref="tbRef">
<template slot="export" slot-scope="{ pageParams }"> <template slot="export" slot-scope="{ pageParams }">
<el-row :gutter="10" class="mb8"> <el-row class="mb8">
<el-button <el-button
type="success" type="success"
plain plain

View File

@ -1,5 +1,5 @@
<template> <template>
<div class="app-container" id="devicesWarehousing"> <div class="app-container">
<el-form <el-form
:model="queryParams" :model="queryParams"
ref="queryForm" ref="queryForm"
@ -1483,7 +1483,7 @@ export default {
* ----------------------------------------------------------------------------------------------------------------------------- * -----------------------------------------------------------------------------------------------------------------------------
*/ */
/* 查看详情 */ /* 查看详情 */
async queryDetails(row) { queryDetails(row) {
this.sendParams.kindName = row.kindName this.sendParams.kindName = row.kindName
this.dialogConfig.outerVisible = true this.dialogConfig.outerVisible = true
}, },

View File

@ -43,11 +43,11 @@ module.exports = {
// target: `https://test-cc.zhgkxt.com`,//线上环境-南网 // target: `https://test-cc.zhgkxt.com`,//线上环境-南网
// target: `https://z.csgmall.com.cn`, // target: `https://z.csgmall.com.cn`,
target: `http://10.40.92.50:28080`, //超 // target: `http://10.40.92.50:28080`, //超
// target: `http://10.40.92.81:8080`, //韩/ // target: `http://10.40.92.81:8080`, //韩/
// target: `http://10.40.92.74:8080`,//旭/ // target: `http://10.40.92.74:8080`,//旭/
// target: `http://10.40.92.148:28080`, //帅 // target: `http://10.40.92.148:28080`, //帅
// target: `http://10.40.92.5:28080`, //福 target: `http://10.40.92.253:28080`, //福
//******** 注意事项 ********* */ //******** 注意事项 ********* */
//1.全局替换qrUrl二维码扫码提供的网址-发布服务器的地址target; //1.全局替换qrUrl二维码扫码提供的网址-发布服务器的地址target;