领料出库新增出库单

This commit is contained in:
BianLzhaoMin 2024-07-02 17:16:13 +08:00
parent 5afda4151a
commit a308207b26
9 changed files with 333 additions and 142 deletions

View File

@ -309,6 +309,15 @@ export function outboundCompleted(params){
}) })
} }
// 查看测试单
export const outboundOrderApi = (params) => {
return request({
url: '/base/leaseOutDetails/getOutboundOrder',
method: 'get',
params
})
}

View File

@ -7,6 +7,7 @@
:visible.sync="dialogConfig.outerVisible" :visible.sync="dialogConfig.outerVisible"
v-if="dialogConfig.outerVisible" v-if="dialogConfig.outerVisible"
:before-close="handleCloseOuter" :before-close="handleCloseOuter"
:center="dialogConfig.center || false"
append-to-body append-to-body
> >
<!-- 外层弹框内容 --> <!-- 外层弹框内容 -->

View File

@ -93,21 +93,21 @@
prop="status" prop="status"
width="200" width="200"
> >
<template slot-scope="scope"> <template slot-scope="{ row }">
<el-switch <el-switch
v-model="scope.row.status" v-model="scope.row.status"
active-value="0" active-value="0"
inactive-value="1" inactive-value="1"
@change="changeStatus(scope.row)" @change="changeStatus(row)"
></el-switch> />
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="操作" align="center" width="200"> <el-table-column label="操作" align="center" width="200">
<template slot-scope="scope"> <template slot-scope="{ row }">
<el-button <el-button
type="text" type="text"
icon="el-icon-edit" icon="el-icon-edit"
@click="handleUpdate(scope.row)" @click="handleUpdate(row)"
v-hasPermi="['base:unit:edit']" v-hasPermi="['base:unit:edit']"
>修改</el-button >修改</el-button
> >
@ -115,7 +115,7 @@
type="text" type="text"
icon="el-icon-delete" icon="el-icon-delete"
style="color: #f56c6c" style="color: #f56c6c"
@click="handleDelete(scope.row)" @click="handleDelete(row)"
v-hasPermi="['base:unit:del']" v-hasPermi="['base:unit:del']"
>删除</el-button >删除</el-button
> >

View File

@ -174,19 +174,26 @@
@selection-change="handleSelectionChange" @selection-change="handleSelectionChange"
> >
<!-- <el-table-column type="selection" width="55" align="center" /> --> <!-- <el-table-column type="selection" width="55" align="center" /> -->
<el-table-column label="序号" type="index" width="80" /> <el-table-column
label="序号"
type="index"
width="80"
align="center"
/>
<el-table-column <el-table-column
label="类型名称" label="类型名称"
prop="typeCn" prop="typeCn"
:show-overflow-tooltip="true" :show-overflow-tooltip="true"
align="center"
/> />
<el-table-column <el-table-column
label="规格型号" label="规格型号"
prop="guigeCn" prop="guigeCn"
:show-overflow-tooltip="true" :show-overflow-tooltip="true"
align="center"
/> />
<el-table-column label="计量单位" prop="unitCn" /> <el-table-column label="计量单位" prop="unitCn" align="center" />
<el-table-column label="库存数量" prop="num" /> <el-table-column label="库存数量" prop="num" align="center" />
<el-table-column label="预领数量" align="center"> <el-table-column label="预领数量" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<el-input <el-input
@ -213,13 +220,7 @@
/> />
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column label="操作" align="center" v-if="isAdd || isEdit">
label="操作"
align="center"
fixed="right"
class-name="small-padding fixed-width"
v-if="isAdd || isEdit"
>
<template slot-scope="scope"> <template slot-scope="scope">
<!-- <el-button--> <!-- <el-button-->
<!-- size="mini"--> <!-- size="mini"-->
@ -905,8 +906,6 @@ export default {
pageNum: 1, pageNum: 1,
pageSize: 9999, pageSize: 9999,
}) })
console.log(res, '成套设备---')
this.completeSetList = res.rows this.completeSetList = res.rows
}, },

View File

@ -162,62 +162,62 @@
label="领料单号" label="领料单号"
align="center" align="center"
prop="code" prop="code"
:show-overflow-tooltip="true" show-overflow-tooltip
width="150" width="150"
/> />
<el-table-column <el-table-column
label="领料单位" label="领料单位"
align="center" align="center"
prop="unitName" prop="unitName"
:show-overflow-tooltip="true" show-overflow-tooltip
/> />
<el-table-column <el-table-column
label="领料工程" label="领料工程"
align="center" align="center"
prop="proName" prop="proName"
:show-overflow-tooltip="true" show-overflow-tooltip
/> />
<el-table-column <el-table-column
label="协议号" label="协议号"
align="center" align="center"
prop="agreementCode" prop="agreementCode"
:show-overflow-tooltip="true" show-overflow-tooltip
/> />
<el-table-column <el-table-column
label="现场领料人" label="现场领料人"
align="center" align="center"
prop="leasePerson" prop="leasePerson"
:show-overflow-tooltip="true" show-overflow-tooltip
/> />
<el-table-column <el-table-column
label="联系电话" label="联系电话"
align="center" align="center"
prop="leasePhone" prop="leasePhone"
:show-overflow-tooltip="true" show-overflow-tooltip
/> />
<el-table-column <el-table-column
label="领料申请人" label="领料申请人"
align="center" align="center"
prop="nickName" prop="nickName"
:show-overflow-tooltip="true" show-overflow-tooltip
/> />
<el-table-column <el-table-column
label="申请时间" label="申请时间"
align="center" align="center"
prop="createTimes" prop="createTimes"
:show-overflow-tooltip="true" show-overflow-tooltip
/> />
<el-table-column <el-table-column
label="任务状态" label="任务状态"
align="center" align="center"
prop="taskName" prop="taskName"
:show-overflow-tooltip="true" show-overflow-tooltip
width="120px" width="120px"
/> />
<el-table-column <el-table-column
label="审批意见 " label="审批意见 "
align="center" align="center"
:show-overflow-tooltip="true" show-overflow-tooltip
> >
<template slot-scope="scope"> <template slot-scope="scope">
<span v-if="scope.row.taskStatus < 31"></span> <span v-if="scope.row.taskStatus < 31"></span>
@ -267,15 +267,9 @@
<!-- <span v-else>{{ scope.row.leaseApplyInfoList[0].directAuditRemark }}</span> --> <!-- <span v-else>{{ scope.row.leaseApplyInfoList[0].directAuditRemark }}</span> -->
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column label="备注" align="center" show-overflow-tooltip>
label="备注"
align="center"
:show-overflow-tooltip="true"
>
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ {{ scope.row.leaseApplyInfoList[0].remark || '' }}
scope.row.leaseApplyInfoList[0].remark || ''
}}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="操作" align="center" width="180"> <el-table-column label="操作" align="center" width="180">

View File

@ -115,51 +115,51 @@
label="领料单号" label="领料单号"
align="center" align="center"
prop="code" prop="code"
:show-overflow-tooltip="true" show-overflow-tooltip
/> />
<el-table-column <el-table-column
label="领料申请单位" label="领料申请单位"
align="center" align="center"
prop="unitName" prop="unitName"
:show-overflow-tooltip="true" show-overflow-tooltip
/> />
<el-table-column <el-table-column
label="领料申请工程" label="领料申请工程"
align="center" align="center"
prop="proName" prop="proName"
:show-overflow-tooltip="true" show-overflow-tooltip
/> />
<el-table-column <el-table-column
label="申请数量" label="申请数量"
align="center" align="center"
prop="preCountNum" prop="preCountNum"
:show-overflow-tooltip="true" show-overflow-tooltip
></el-table-column> />
<el-table-column <el-table-column
label="申请时间" label="申请时间"
align="center" align="center"
prop="createTimes" prop="createTimes"
:show-overflow-tooltip="true" show-overflow-tooltip
></el-table-column> />
<el-table-column <el-table-column
label="已出库数量" label="已出库数量"
align="center" align="center"
prop="alNum" prop="alNum"
:show-overflow-tooltip="true" show-overflow-tooltip
></el-table-column> />
<el-table-column <el-table-column
label="出库状态" label="出库状态"
align="center" align="center"
prop="taskName" prop="taskName"
:show-overflow-tooltip="true" show-overflow-tooltip
></el-table-column> />
<el-table-column label="操作" align="center"> <el-table-column label="操作" align="center" width="200">
<template slot-scope="scope"> <template slot-scope="{ row }">
<el-button <el-button
type="text" type="text"
icon="el-icon-zoom-in" icon="el-icon-zoom-in"
@click="handleView(scope.row)" @click="handleView(row)"
v-hasPermi="['picking:outbound:view']" v-hasPermi="['picking:outbound:view']"
>查看</el-button >查看</el-button
> >
@ -167,13 +167,20 @@
icon="el-icon-shopping-cart-2" icon="el-icon-shopping-cart-2"
style="color: #e6a23c" style="color: #e6a23c"
type="text" type="text"
v-if="scope.row.taskStatus != 35" v-if="row.taskStatus != 35"
@click="handleOut(scope.row)" @click="handleOut(row)"
v-hasPermi="['picking:outbound:out']" v-hasPermi="['picking:outbound:out']"
> >
出库 出库
</el-button> </el-button>
<!-- <el-button type="text"> 出库单 </el-button> --> <el-button
type="text"
style="color: #67c23a"
icon="el-icon-tickets"
@click="handleOutboundOrder(row)"
>
出库单
</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
@ -530,6 +537,106 @@
</el-table-column> </el-table-column>
</el-table> </el-table>
</el-dialog> </el-dialog>
<!-- 出库单 -->
<DialogModel
:dialogConfig="dialogConfig"
@closeDialogOuter="closeDialogOuter"
>
<template slot="outerContent">
<VueEasyPrint tableShow ref="remarksPrintRef">
<!-- <el-row :gutter="20">
<el-col span="6">申请人</el-col>
<el-col span="6">领料工程</el-col>
<el-col span="6">领料单位</el-col>
<el-col span="6">领料单号</el-col>
</el-row> -->
<h2 class="outbound-title">出库单</h2>
<ul class="apply-info">
<li>
领料申请人<span>{{ applyFor }}</span>
</li>
<li>
领料单位<span>{{ unitName }}</span>
</li>
<li>
领料工程<span>{{ proName }}</span>
</li>
<li>
领料单号<span>{{ code }}</span>
</li>
</ul>
<el-table style="margin: 15px 0" :data="outboundOrderList">
<el-table-column
align="center"
label="序号"
type="index"
/>
<el-table-column
align="center"
label="设备类型"
prop="typeName"
/>
<el-table-column
align="center"
label="规格型号"
prop="typeModelName"
/>
<el-table-column
align="center"
label="设备编码"
prop="maCode"
/>
<el-table-column
align="center"
label="申请数量"
prop="preNum"
/>
<el-table-column
align="center"
label="出库数量"
prop="outNum"
/>
<el-table-column
align="center"
label="领料人"
prop="leasePerson"
/>
<el-table-column
align="center"
label="出库人"
prop="outPerson"
/>
<el-table-column align="center" label="出库日期">
<template slot-scope="{ row }">
{{ parseTime(row.createTime) }}
</template>
</el-table-column>
<el-table-column
align="center"
label="车牌号"
prop="carCode"
/>
</el-table>
</VueEasyPrint>
<pagination
:total="outboundOrderTotal"
:page.sync="outboundParams.pageNum"
:limit.sync="outboundParams.pageSize"
@pagination="queryOutBoundList"
/>
<el-row class="print-btn">
<el-button
size="mini"
type="primary"
@click="handlePrinting()"
> </el-button
>
</el-row>
</template>
</DialogModel>
</div> </div>
</template> </template>
@ -543,15 +650,18 @@ import {
submitOut, submitOut,
submitNumOut, submitNumOut,
outboundCompleted, outboundCompleted,
outboundOrderApi,
} from '@/api/claimAndRefund/receive.js' } from '@/api/claimAndRefund/receive.js'
import { getTypeList } from '@/api/store/warehousing' import { getTypeList } from '@/api/store/warehousing'
import { equipmentTypeTree } from '@/api/store/tools' import { equipmentTypeTree } from '@/api/store/tools'
import Treeselect from '@riophae/vue-treeselect' import Treeselect from '@riophae/vue-treeselect'
import '@riophae/vue-treeselect/dist/vue-treeselect.css' import '@riophae/vue-treeselect/dist/vue-treeselect.css'
import store from '@/store' import store from '@/store'
import DialogModel from '@/components/DialogModel'
import VueEasyPrint from 'vue-easy-print'
export default { export default {
name: 'receiveOut', name: 'receiveOut',
components: { Treeselect }, components: { Treeselect, DialogModel, VueEasyPrint },
data() { data() {
return { return {
// //
@ -626,7 +736,25 @@ export default {
outCodeList: [], // outCodeList: [], //
outNumList: [], // outNumList: [], //
userId: sessionStorage.getItem('userId'), // userId userId: sessionStorage.getItem('userId'), // userId
isMonitor: false, isMonitor: false, //
outboundOrderList: [], //
applyFor: '', //
code: '', //
proName: '', //
unitName: '', //
outboundOrderTotal: 0, //
//
outboundParams: {
parentId: '',
pageNum: 1,
pageSize: 10,
},
//
dialogConfig: {
outerWidth: '80%',
outerVisible: false,
center: true,
},
} }
}, },
@ -773,6 +901,7 @@ export default {
this.$set(obj, 'outNum', row.outNum) // this.$set(obj, 'outNum', row.outNum) //
this.$set(obj, 'inputNum', 1) // this.$set(obj, 'inputNum', 1) //
this.$set(obj, 'num', row.num) // this.$set(obj, 'num', row.num) //
this.$set(obj, 'createBy', sessionStorage.getItem('userId')) // Id
this.outNumList = [obj] this.outNumList = [obj]
}, },
// //
@ -787,6 +916,7 @@ export default {
outboundCompleted({ outboundCompleted({
id: this.dialogQuery.id, id: this.dialogQuery.id,
typeId: row.typeId, typeId: row.typeId,
createBy: sessionStorage.getItem('userId'),
}).then((res) => { }).then((res) => {
this.$modal.msgSuccess('已完成') this.$modal.msgSuccess('已完成')
this.handleDialogQuery() this.handleDialogQuery()
@ -841,6 +971,7 @@ export default {
parentId: this.outObj.parentId, parentId: this.outObj.parentId,
outNum: 1, outNum: 1,
taskId: this.outObj.taskId, taskId: this.outObj.taskId,
createBy: sessionStorage.getItem('userId'),
} }
return obj return obj
}) })
@ -902,6 +1033,33 @@ export default {
} }
} }
}, },
//
handleOutboundOrder(row) {
const { applyFor, code, proName, unitName } = row
this.applyFor = applyFor
this.code = code
this.proName = proName
this.unitName = unitName
this.outboundParams.parentId = row.id
this.queryOutBoundList()
this.dialogConfig.outerVisible = true
},
//
async queryOutBoundList() {
const { data: res } = await outboundOrderApi(this.outboundParams)
this.outboundOrderList = res.rows
this.outboundOrderTotal = res.total
},
//
closeDialogOuter() {
this.outboundParams.pageNum = 1
this.outboundParams.pageSize = 10
this.dialogConfig.outerVisible = false
},
//
handlePrinting() {
this.$refs.remarksPrintRef.print()
},
}, },
} }
</script> </script>
@ -914,4 +1072,34 @@ export default {
color: #02a7f0; color: #02a7f0;
cursor: pointer; cursor: pointer;
} }
//
.outbound-title {
font-size: 20px;
font-weight: bold;
letter-spacing: 3px;
text-align: center;
}
.apply-info {
margin-top: 30px;
display: flex;
justify-content: space-between;
list-style: none;
padding: 0;
font-size: 16px;
font-weight: bold;
span {
font-weight: 400;
letter-spacing: 2px;
}
}
.print-btn {
margin-top: 30px;
.el-button {
padding: 10px 20px;
}
}
</style> </style>

View File

@ -191,7 +191,6 @@ import {
auditingPreScrapApi, auditingPreScrapApi,
} from '@/api/scrap/forecastWaste.js' } from '@/api/scrap/forecastWaste.js'
import { config, getSelList, getTypeListSel, dialogConfig } from './config' import { config, getSelList, getTypeListSel, dialogConfig } from './config'
import { registerLayout } from 'echarts'
export default { export default {
name: 'Inventory', name: 'Inventory',
components: { components: {

View File

@ -7,7 +7,7 @@
@getTableSelectionChange="getTableSelectionChange" @getTableSelectionChange="getTableSelectionChange"
> >
<template slot="export"> <template slot="export">
<el-row :gutter="10" class="mb8"> <el-row class="mb8">
<el-button type="warning" plain size="mini" <el-button type="warning" plain size="mini"
>完成退料</el-button >完成退料</el-button
> >

View File

@ -151,10 +151,7 @@
</template> </template>
<template v-if="temp"> <template v-if="temp">
<el-row type="flex" justify="space-between" class="back-text"> <PageHeader :pageContent="pageContent" @goBack="goBack" />
<span>驳回退料</span>
<el-button type="text" @click="handleBack">返回</el-button>
</el-row>
<AuditingReturn :sendParams="sendParamsAuditing" /> <AuditingReturn :sendParams="sendParamsAuditing" />
</template> </template>
</div> </div>
@ -163,6 +160,7 @@
<script> <script>
import TableModel from '@/components/TableModel' import TableModel from '@/components/TableModel'
import DialogModel from '@/components/DialogModel' import DialogModel from '@/components/DialogModel'
import PageHeader from '@/components/pageHeader'
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' // 退
@ -179,6 +177,7 @@ export default {
components: { components: {
TableModel, TableModel,
DialogModel, DialogModel,
PageHeader,
SelDepart, SelDepart,
ScrapSource, ScrapSource,
AuditingReturn, AuditingReturn,
@ -205,6 +204,7 @@ export default {
}, },
auditingList: [], auditingList: [],
sendParamsAuditing: {}, sendParamsAuditing: {},
pageContent: '驳回退料',
} }
}, },
created() { created() {
@ -282,10 +282,6 @@ export default {
this.submitScrapParams.taskIdList.push(e.taskId) this.submitScrapParams.taskIdList.push(e.taskId)
}) })
}, },
handleBack() {
this.temp = !this.temp
this.dialogVisible = false
},
/* 外层弹框关闭 */ /* 外层弹框关闭 */
closeDialogOuter() { closeDialogOuter() {
this.dialogConfig.outerVisible = false this.dialogConfig.outerVisible = false
@ -306,6 +302,11 @@ export default {
) )
console.log('数据导出', data) console.log('数据导出', data)
}, },
//
goBack() {
this.temp = !this.temp
},
}, },
} }
</script> </script>