123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173 |
- <template>
- <view class="page">
- <uni-section title='单据信息' type='line' :strong="true" class="bg-white"/>
- <list-input title="入库单编号" :highlight="false" :subTitle="SWH" class="bg-white my-2"/>
- <table-list :list='list' btrClassName="bg-white-muted" ref='table'>
- <template v-slot:difamount="{name,index,record}">
- <view>{{record.difAmount}}</view>
- </template>
- </table-list>
- <btn-save @save='onSave' :disabledOk="disabledSubmit" cancelText="返回" :back="true"></btn-save>
- </view>
- </template>
- <script>
- import uniSection from "@/components/uni-ui/uni-section/uni-section.vue"
- import listInput from "@/components/common/list-input.vue"
- import tableList from "@/components/common/table-list.vue"
- import btnSave from "@/components/common/btn-save.vue"
- import {mergeArray} from "@/common/utils/common.js"
- import {DELAY_CLOSE_SUBMIT} from "@/common/utils/tipMessage.js"
- import {mapGetters} from "vuex"
- import {queryDirectDetailInventoryorder,queryExamineDetailInventoryorder,saveDirectInventoryorder,saveExamineInventoryorder} from "@/api/api.js"
- const headData=[
- {key:'WPH',dataIndex:"WPH",title:"物品号",},
- {key:"CHSL",dataIndex:"CHSL",title:"应入数量",},
- {key:"itemnum",dataIndex:"itemnum",title:"实际数量",},
- {key:"difAmount",dataIndex:"difAmount",title:"差异数量",scope:"difamount"},
- ]
-
- export default {
- // mixins:[inventoryEditMixin],
- components:{
- uniSection,
- listInput,
- tableList,
- btnSave
- },
- data () {
- return {
- list:{
- head:headData,
- body:[]
- }, // 计算之后的数据
- scanList:[], // 扫描录入的数据
- realList:[], // 后台获取的数据
- typekey:null , // 类型关键字
- SWH:null,
- }
- },
- computed:{
- ...mapGetters(['disabledSubmit']),
- },
- async onLoad (e) {
- /*
- typekey:直接入库,检验入库
- SWH:事务号
- list:扫码得到的物品列表
- */
- // console.log(e)
- this.SWH=e.SWH
- this.typekey=e.typekey
- this.scanList=JSON.parse(e.list)
- switch (this.typekey) {
- case "直接入库" :
- await this._queryDirectDetailInventoryorder()
- break;
- case "检验入库" :
- await this._queryExamineDetailInventoryorder()
- break;
- }
- },
- onUnload () {
- },
- onPageScroll(res) {
- uni.$emit('onPageScroll',res);
- },
- methods:{
- // 检验入库存储
- async _saveExamineInventoryorder () {
- let items=[]
- this.list.body.forEach(item=>{
- items.push({
- "WPH":item.WPH,
- "SL":isNaN(item.itemnum) ? 0 : item.itemnum
- })
- })
- const reqdata={
- "SWH":this.SWH, //事务号
- items:items,
- }
- await saveExamineInventoryorder(reqdata).then(resdata=>{
- })
- return true
- },
- // 直接入库存储
- async _saveDirectInventoryorder () {
- let items=[]
- this.list.body.forEach(item=>{
- items.push({
- "WPH":item.WPH,
- "SL":isNaN(item.itemnum) ? 0 : item.itemnum
- })
- })
- const reqdata={
- "SWH":this.SWH, //事务号
- items:items
- }
- console.log(reqdata)
- await saveDirectInventoryorder(reqdata).then(resdata=>{
- })
- return true
- },
- // 获取格式化后的数组
- _formatList () {
- let arr=mergeArray(this.realList,'CHSL',this.scanList,'itemnum','WPH')
- this.list.body=arr
- },
- // 直接入库明细获取
- _queryDirectDetailInventoryorder () {
- const reqdata={
- SWH:this.SWH
- }
- queryDirectDetailInventoryorder(reqdata).then(resdata=>{
- this.realList=resdata
- this._formatList()
- })
- },
- // 检验入库明细获取
- _queryExamineDetailInventoryorder () {
- const reqdata={
- SWH:this.SWH
- }
- queryExamineDetailInventoryorder(reqdata).then(resdata=>{
- this.realList=resdata
- this._formatList()
- })
- },
- // 保存
- onSave () {
- uni.showModal({
- title:"确认保存吗",
- success:async (res)=>{
- if (res.confirm) {
- switch (this.typekey) {
- case "直接入库" :
- await this._saveDirectInventoryorder()
- break;
- case "检验入库" :
- await this._saveExamineInventoryorder()
- break;
- }
- uni.showToast({
- title:'保存成功'
- })
- // 通知扫描页面,清空数据
- uni.$emit('onSubmitIventory',{status:200})
- uni.reLaunch({
- url:"/pages/index/index"
- })
- }
- }
- })
- }
-
- }
- }
-
- </script>
- <style>
- </style>
|