diff --git a/src/api/collect/collectOrder.js b/src/api/collect/collectOrder.js index eac140ca..8753dcc5 100644 --- a/src/api/collect/collectOrder.js +++ b/src/api/collect/collectOrder.js @@ -42,6 +42,7 @@ export function orderDetail(query) { }); } + export function allDetail(query) { return axios({ url: "/udiwms/basic/collect/order/allDetail", @@ -328,6 +329,16 @@ export function returnOrderSubmit(query) { } +export function splitOrderCode(query) { + return axios({ + url: "/udiwms/ioSplit/collect/order/splitOrderCode", + method: "post", + data: query + }); +} + + + export function finishReturnOrder(query) { return axios({ @@ -336,3 +347,33 @@ export function finishReturnOrder(query) { data: query }); } + +export function returnOrderDetail(query) { + return axios({ + url: "/udiwms/basic/collect/ReturnOrder/detail", + method: "get", + params: query + }); +} + + +export function splitReturnOrderCode(query) { + return axios({ + url: "/udiwms/ioSplit/collect/order/splitReturnOrderCode", + method: "post", + data: query + }); +} + +/** + * 退货删除或减扫码明细 + * @param query + * @returns {AxiosPromise} + */ +export function codeReturnRemove(query) { + return axios({ + url: "/udiwms/ioSplit/collect/code/codeReturnRemove", + method: "post", + data: query + }); +} diff --git a/src/views/collect/IoReturnOrderBiz.vue b/src/views/collect/IoReturnOrderBiz.vue index 1ace3f3a..aceafdbc 100644 --- a/src/views/collect/IoReturnOrderBiz.vue +++ b/src/views/collect/IoReturnOrderBiz.vue @@ -24,7 +24,7 @@
{{ scope.row.count }}
- + @@ -105,8 +166,13 @@ import { convertDate } from '@/utils/date' import { detail } from '@/api/basic/sicker/prescribeApi' import { executeFuc, getHead } from '@/utils/customConfig' -import { orderDetail, codeRemove } from '@/api/collect/collectOrder' -import PanelOrderManuTagCode from '@/views/collect/PanelOrderManuTagCode' +import { + returnOrderDetail, + codeRemove, + splitReturnOrderCode, + manualCodeDetail, + autoCodeResult, codeReturnRemove +} from '@/api/collect/collectOrder' /** * 处方退药码明细 @@ -147,39 +213,57 @@ export default { countVisible: false, scanDetailVisible: false, bizId: null, - codingStatus: '已赋码' + codingStatus: '已赋码', + //赋码明细界面 + fifoSplit:3, + codeQuery: { + fifoSplit: null, + bizIdFk: null, + relId:null, + page: 1, + limit: 10, + }, + codeRetureQuery: { + fifoSplit: null, + bizIdFk: null, + page: 1, + limit: 10, + }, + codeDetailList: [], + codeReturnDetailList: [], + codeTotal: 0, } }, methods: { - deleteMan(_this, row) { - _this.$confirm('是否确定删除该条扫码?', '提示', { + deleteMan(row) { + this.$confirm('是否确定删除该条扫码?', '提示', { confirmButtonText: '确定', cancelButtonText: '取消', type: 'warning' }).then(() => { - _this.loading = true - _this.codeRemoveMan(row.id, 2) + this.codeRemoveMan(row.id, 2) }) }, - deleteCode(_this, row) { - _this.$confirm('是否确定移除一个条码?', '提示', { + deleteCode(row) { + this.$confirm('是否确定移除一个条码?', '提示', { confirmButtonText: '确定', cancelButtonText: '取消', type: 'warning' }).then(() => { - _this.loading = true - _this.codeRemoveMan(row.id, 1) + this.codeRemoveMan(row.id, 1) }) }, codeRemoveMan(codeManId, delType) { let post = { codeManId: codeManId, - delType: delType + delType: delType, + orderId:this.prescribeData.billNo } - codeRemove(post).then((response) => { + codeReturnRemove(post).then((response) => { if (response.code === 20000) { this.$message.success('操作成功!') - this.getList(this) + this.getReturnCodeDetailList() + this.getPrescribeDetail(this) } else { this.$message.error(response.message) } @@ -223,7 +307,7 @@ export default { _this.preQuery.orderIdFk = this.prescribeData.billNo } _this.preLoading = true - orderDetail(_this.preQuery).then(res => { + returnOrderDetail(_this.preQuery).then(res => { _this.preLoading = false if (res.code != 20000) { _this.$message.error(res.message) @@ -239,8 +323,26 @@ export default { scanDetail(row) { this.bizId = row.id + this.getCodeDetailList(row) + this.getReturnCodeDetailList() this.scanDetailVisible = true }, + //拆零退货 + splitReturnOrder(row){ + let query = { + billNo :row.orderIdFk, + workPlaceCode: this.$route.query.workplaceId, + relId:row.relId + } + splitReturnOrderCode(query).then(res => { + if (res.code == 20000){ + this.getPrescribeDetail(this) + return this.$message.success("拆零成功") + }else { + return this.$message.error(res.message) + } + }) + }, closeScanDialog() { this.getPrescribeDetail(this) @@ -261,12 +363,47 @@ export default { if (row.shouldCount === 0) return 'error' return row.scanCount < row.shouldCount ? 'error' : 'success' }, - + getCodeDetailList(row) { + this.fifoSplit = 3 + if (this.prescribeData == null) + return + if (this.prescribeData != null) { + this.codeQuery.orderIdFk = this.prescribeData.remark + this.codeQuery.relId = row.relId + } + manualCodeDetail(this.codeQuery).then(res => { + this.codeLoading = false + if (res.code != 20000) { + this.$message.error(res.message) + return + } + this.codeDetailList = res.data.list + }).catch(() => { + this.$message.error("数据加载失败") + }) + }, + getReturnCodeDetailList() { + this.fifoSplit = 3 + if (this.prescribeData == null) + return + if (this.prescribeData != null) { + this.codeRetureQuery.orderIdFk = this.prescribeData.billNo + this.codeRetureQuery.bizIdFk = this.bizId + } + manualCodeDetail(this.codeRetureQuery).then(res => { + if (res.code != 20000) { + this.$message.error(res.message) + return + } + this.codeReturnDetailList = res.data.list + }).catch(() => { + this.$message.error("数据加载失败") + }) + }, }, components: { - PanelOrderManuTagCode }, created() { this.getPrescribeDetail(this) @@ -308,4 +445,22 @@ export default { color: #56a717; } + +.double-table-container { + display: flex; + justify-content: space-between; + gap: 20px; +} + +.table-wrapper { + flex: 1; + overflow: hidden; +} +h3 { + margin-bottom: 10px; + font-weight: bold; +} +/*.table-scroll {*/ +/* overflow-x: auto;*/ +/*}*/ diff --git a/src/views/collect/IoReturncllectOrder.vue b/src/views/collect/IoReturncllectOrder.vue index e7194306..7c13f720 100644 --- a/src/views/collect/IoReturncllectOrder.vue +++ b/src/views/collect/IoReturncllectOrder.vue @@ -116,7 +116,8 @@ type="tel" :placeholder="this.placeholder" v-model="scanCode" - size="50" + size="80" + > @@ -145,7 +146,19 @@ type="primary" :disabled="!formData.billNo" @click.native="confirmFinishOrder()" - >退货完成 + >完成 + + + + + + + + 整单拆零退货 @@ -314,7 +327,7 @@ import { findByBill, findFromCorp, orderDetail, - removeByScanCode, finishReturnOrder + removeByScanCode, finishReturnOrder, returnOrderSubmit, splitReturnOrderCode, splitOrderCode } from '@/api/collect/collectOrder' import PanelOrderAllDetail from '@/views/collect/PanelOrderAllDetail' import { getWorkBindBusTypes, removeBusTypeById } from '@/api/basic/workPlace/sysWorkplaceDocuments' @@ -438,7 +451,8 @@ export default { }, labelName: 1, scanStatus: null, // 1:扫码剔除; null 处理单据 - collectSet: {} + collectSet: {}, + disabledSplitReturnOrder: false, } }, @@ -651,7 +665,7 @@ export default { _this.$nextTick(() => { _this.panelALive = true }) - // _this.getBizDetailList(); + _this.getBizDetailList(); _this.vailOrderFinish() }, refreshCodesPanelP() { @@ -928,6 +942,7 @@ export default { this.formData.tagStatus = 2 this.formData.insert = false this.formData = res.data + this.formData.confirmFinish = false this.curRow = this.formData this.$refs.inputRef.focus() this.refreshCodesPanel(this) @@ -993,6 +1008,71 @@ export default { }).catch(() => { }) }, + fullFinishOrder(){ + this.$confirm('是否确定整单处方退货?', '提示', { + confirmButtonText: '确定', + cancelButtonText: '取消', + type: 'warning' + }).then(() => { + let query = { + billNo: this.formData.billNo, + busType:this.formData.busType + } + returnOrderSubmit(query).then(res => { + if (res.code == 20000){ + // const audio = new Audio(require('@/assets/audioFiles/order.mp3')) + // audio.play() + this.resetSplit() + return this.$message.success("退货成功") + }else { + return this.$message.error(res.message) + } + }) + }).catch(() => { + }) + }, + resetSplit() { + this.formData = { + billNo: null, + tagStatus: -1, + workPlaceCode: this.formData.workPlaceCode, + busType: this.formData.busType, + shipper: null, + fromCorp: null + } + this.selectSysParam() + this.curRow = null + this.formData.confirmFinish = false + this.clearCode() + this.$refs.inputRef.focus() + this.$refs.inputRef.select() + }, + splitReturnOrder(){ + this.$confirm('是否确定整单拆零退货?', '提示', { + confirmButtonText: '确定', + cancelButtonText: '取消', + type: 'warning' + }).then(() => { + let query = { + billNo: this.formData.billNo, + busType:this.formData.busType, + workPlaceCode:this.workplaceId + } + splitOrderCode(query).then(res => { + if (res.code == 20000){ + // const audio = new Audio(require('@/assets/audioFiles/order.mp3')) + // audio.play() + this.disabledSplitReturnOrder = true + this.refreshCodesPanel(this) + return this.$message.success("退货成功") + }else { + return this.$message.error(res.message) + } + }) + }).catch(() => { + }) + + }, finishOrder() { finishReturnOrder(this.formData).then(res => { @@ -1000,7 +1080,7 @@ export default { if (res.code == 20000) { const audio = new Audio(require('@/assets/audioFiles/order.mp3')) audio.play() - this.reset() + this.resetSplit() return this.$message.success("退货成功") if (this.formDataVisible.scanType != 1) { this.findCurOrder() @@ -1084,6 +1164,7 @@ export default { } else if (temp.tagStatus === 2 || temp.tagStatus === 1) { this.formData = temp + this.formData.confirmFinish = false // this.generateBarcode() this.panelALive = true this.startDeal() @@ -1754,4 +1835,8 @@ export default { margin-left: 20px; margin-right: 10px; } + +/*.el-input__inner {*/ +/* width: 10% !important;*/ +/*}*/