Browse Source

出药超时后锁住订单

lincl 2 years ago
parent
commit
20d576f7a6

+ 1 - 1
mini-pro-web/src/views/machine/components/DrugTaking.vue

@ -574,7 +574,7 @@ export default {
									var g = _.groupBy(v.drugList, 'drugCode')
									v.ylzMedicalMxDOList = _.map(g, (m, n)=>{
										var drug = m[0]
										drug.hisItemName = drug.drugName
										drug.hisItemName = drug.drugName || drug.hisItemName
										drug.amount = m.length
										drug.chargeUnitName = drug.packUnit
										drug.totalMoney = _.sumBy(m, 'price').toFixed(2)

+ 4 - 1
mini-pro-web/src/views/machine/components/TipsDialog.vue

@ -108,7 +108,10 @@
					<div v-else-if="contentType==12||contentType==15" class="tc ">
						<div><img class="icon" src="../img/i-quyaoshibai.png" alt=""></div>
						<div class="lh30 pt13 pb40">{{contentType==12? '出药失败' : '出药超时'}},请联系工作人员</div>
						<div class="lh30 pt13 pb40"> 
							<span v-if="contentType==12">{{ message }}</span>
							<span v-else>出药超时,请联系工作人员</span>
						</div>
					</div>
					<div v-else-if="contentType==16" class="tc fs-13 pt50">

+ 8 - 10
mini-pro-web/src/views/machine/index.vue

@ -90,9 +90,6 @@
			:cardSn="cardSn" :cardNo="cardNo" :idcard="idcard" :userName="userName"
			@onClose="isShow=true" @onShow="isShow=false"/>
		<TipsDialog ref="TipsDialog" @readcard="readcard" @SetPrintPage="SetPrintPage"/>
		<Dialog ref="Dialog" v-if="showPrintComplete" @back="onPrev"/>
		<Scan @onComplete="onComplete" v-show="step==2" @onBack="step=1"/>
		<Result @showOrderDetail="checkCardNo" @outDrug="sendShipment" @onPrint="SetPrintPage" :rsType.sync="rsType" :orderList="orderList" :orderdetail="orderdetail" v-show="step==3" @onBack="step=2" @onBackIndex="step=1"/>
		<audio id='audioPlay' src='' hidden='true'/>
	</div>
@ -104,9 +101,6 @@ import Instro from './components/Instro.vue';
import Recharge from './components/Recharge.vue';
import DrugTaking from './components/DrugTaking.vue';
import TipsDialog from './components/TipsDialog.vue';
import Dialog from './components/Dialog.vue';
import Scan from './components/Scan.vue';
import Result from './components/Result.vue';
import medicineAbinetApi from '@/api/api-medicineAbinet'
import socketUtils from './utils/socket'
import ybUtils from './utils/ybUtils'
@ -115,9 +109,6 @@ var countDownFunc, timeoutInterval, readCardCountDown, test=0
export default {
	name: "machineIndex",
	components: {
		Scan,
		Result,
		Dialog,
		DrugTaking,
		TipsDialog,
		Recharge,
@ -183,7 +174,7 @@ export default {
		}
	},
	created(){
		window.vm = this
		window.vm2 = this
		this.init()
		window.socketUtils = socketUtils
	},
@ -215,6 +206,13 @@ export default {
			this.readcard()
		},
		startSendShipment: function(item) {
			if(item.status == -99){
				this.showTipsDialog({
					contentType: 3,
					message: "该订单已被锁定,请前往药房取药"
				})
				return
			}
			playAudio(2)
			socketUtils.sendShipment(item, 1)
		},

+ 25 - 3
mini-pro-web/src/views/machine/utils/socket.js

@ -18,6 +18,15 @@ class SocketUtils extends Vue {
        this.$EventBus.$on('shipTimeout', ()=>{
            this.inOut = false
            var item = this.orderdetail[this.currindex]
            this.orderInfo.status = -99
            this.updateOrderOutStatus(item.id, 3, "出药超时")
                .then(res=>{
                    console.log('更新订单状态', res)
                })
                .catch(err=>{
                    console.error('更新订单状态', err)
                })
        })
    }
@ -142,16 +151,28 @@ class SocketUtils extends Vue {
        }
    }
    sendTest(msg){
        setTimeout(()=>{
                this.getMessage({
                    data: JSON.stringify({
                        type: 'medical_recharge',
                        mess: '{\"result\":\"succ\",\"resultName\":\"支付成功交易成功\", "payUrl": "'+ msg +'"}',
                        // mess: '卡号:DD2781527\n姓名:王志南\n身份证号:350524199405230613\n类型:01\n电话:\n发卡机构编号:3502\n性别:1\n生日:19940523\n公司:\n地址:\n卡基本信息警告:\n卡识别码:350200D156000005F314ECAA51F5F34D'
                    })
                })
        }, 2000)
    }
    sendReadCard() {
        // setTimeout(()=>{
        //         this.getMessage({
        //             data: JSON.stringify({
        //                 type: 'CardInfo',
        //                 mess: '未插卡',
        //                 // mess: '卡号:DD2781527\n姓名:王志南\n身份证号:350524199405230613\n类型:01\n电话:\n发卡机构编号:3502\n性别:1\n生日:19940523\n公司:\n地址:\n卡基本信息警告:\n卡识别码:350200D156000005F314ECAA51F5F34D'
        //                 // mess: '未插卡',
        //                 mess: '卡号:DF2792514\n姓名:王志南\n身份证号:350524199405230613\n类型:01\n电话:\n发卡机构编号:3502\n性别:1\n生日:19940523\n公司:\n地址:\n卡基本信息警告:\n卡识别码:350200D156000005F314ECAA51F5F34D'
        //             })
        //         })
        // }, 2000)
        // }, 1950)
        // return
        var obj = {
            type: "ReadCard",
@ -375,6 +396,7 @@ class SocketUtils extends Vue {
        })
        // this.orderList.splice(this.orderList.indexOf(this.orderInfo), 1)
        if(msg){
            this.orderInfo.status == -99
            playAudio(0)
            this.showTipsDialog({
                contentType: 12,