feat: 阿里采购送货单的业务对接

dev_unify
chenhc 7 months ago
parent f9f7efc08f
commit 191b896606

@ -547,3 +547,12 @@ export function copyOrder(params) {
}); });
} }
export function addAliBizProduct(params) {
return axios({
url: "/udiwms/inout/order/addAliBizProduct",
method: "post",
data: params
});
}

@ -0,0 +1,18 @@
import axios from "@/utils/request";
export function aliYljgSearchbillPage(query) {
return axios({
url: "/spms/alihealth/aliYljgSearchbillPage",
method: "post",
data: query
});
}
export function aliYljgBillDetail(query) {
return axios({
url: "/spms/alihealth/aliYljgBillDetail",
method: "post",
data: query
});
}

@ -248,7 +248,9 @@
:close-on-click-modal="false" :close-on-click-modal="false"
:close-on-press-escape="false" :close-on-press-escape="false"
v-if="selectOrderVisible"> v-if="selectOrderVisible">
<selectMsfxOrderDialog> <selectMsfxOrderDialog
:orderFormData = this.orderFormData
>
</selectMsfxOrderDialog> </selectMsfxOrderDialog>
</el-dialog> </el-dialog>
@ -869,6 +871,7 @@ export default {
//msfx //msfx
selectOrder(){ selectOrder(){
this.selectOrderVisible = true this.selectOrderVisible = true
}, },

@ -29,103 +29,53 @@
@current-change="handleChange" @current-change="handleChange"
ref="multipleTable" ref="multipleTable"
> >
<!--<el-table-column label width="45">-->
<!-- <template slot-scope="scope">-->
<!-- <el-radio :label="scope.row.id" v-model="radioCheck"><span></span></el-radio>-->
<!-- </template>-->
<!--</el-table-column>-->
<el-table-column label="序号" type="index"></el-table-column> <el-table-column label="序号" type="index"></el-table-column>
<el-table-column <el-table-column
label="追溯码" label="监管码"
prop="nameCode" prop="code"
width="140" width="140"
show-overflow-tooltip show-overflow-tooltip
></el-table-column> ></el-table-column>
<el-table-column <el-table-column
label="级别" label="监管码级别"
prop="cpmctymc" prop="codeLevel"
show-overflow-tooltip show-overflow-tooltip
></el-table-column> ></el-table-column>
<el-table-column <el-table-column
label="药品信息" label="最小包装数量"
prop="packUnit" prop="pkgAmount"
show-overflow-tooltip show-overflow-tooltip
></el-table-column> ></el-table-column>
<el-table-column <el-table-column
width="100" width="100"
label="批次号" label="最小制剂数量"
prop="bzgg" prop="prepnAmount"
show-overflow-tooltip show-overflow-tooltip
></el-table-column> ></el-table-column>
<el-table-column <el-table-column
label="包装规格" label="制剂规格"
prop="zczbhhzbapzbh"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="生产日期"
prop="price"
show-overflow-tooltip
></el-table-column>
<!--<el-table-column-->
<!-- label="器械类别"-->
<!-- prop="qxlb"-->
<!-- show-overflow-tooltip-->
<!--&gt;</el-table-column>-->
<el-table-column
label="有效期至"
prop="companyName"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="生产企业"
prop="prepnSpec" prop="prepnSpec"
show-overflow-tooltip show-overflow-tooltip
></el-table-column> ></el-table-column>
<!--<el-table-column label="操作" width="160" fixed="right">-->
<!-- <template slot-scope="scope">-->
<!-- <el-button-->
<!-- type="text"-->
<!-- size="small"-->
<!-- @click.native.stop="handleDetailClick(scope.row)"-->
<!-- >详情-->
<!-- </el-button>-->
<!-- <el-button-->
<!-- type="text"-->
<!-- size="small"-->
<!-- @click.native.stop="handleDetailClick(scope.row)"-->
<!-- >追溯码明细-->
<!-- </el-button>-->
<!-- </template>-->
<!--</el-table-column>-->
</el-table> </el-table>
<pagination
v-show="pageTotal>0"
:total="pageTotal"
:page.sync="orderQuery.page"
:limit.sync="orderQuery.limit"
/>
<!--@pagination="getList"-->
</el-card> </el-card>
<!--<el-dialog-->
<!-- title="药品字典详情"-->
<!-- :visible.sync="udiRlDetailVisible"-->
<!-- width="85%"-->
<!-- :close-on-click-modal="false"-->
<!-- :close-on-press-escape="false"-->
<!-- append-to-body-->
<!-- v-if="udiRlDetailVisible"-->
<!--&gt;-->
<!-- <drugDetail :editQuery="currentRow"></drugDetail>-->
<!--</el-dialog>-->
</div> </div>
</template> </template>
<script> <script>
export default { export default {
props: {
dataList: {
type: Array,
required: true,
}
},
data() { data() {
return { return {
orderQuery:{ orderQuery:{
@ -133,17 +83,6 @@ export default {
limit: 10, limit: 10,
}, },
pageTotal:10, pageTotal:10,
dataList:[
{
nameCode:'83569990243678280449',
cpmctymc:'1',
packUnit: '注射用A型肉毒毒素 注射剂 100U/瓶',
bzgg: '20230958-2',
prepnSpec:"兰州生物技术开发有限公司",
prepnUnit: '厦门湖里妇幼保健院',
zczbhhzbapzbh: '盒1瓶',
}
],
showSearch: true showSearch: true
} }
}, },

@ -2,47 +2,47 @@
<div> <div>
<el-card class="el-card"> <el-card class="el-card">
<el-form :model="orderQuery" size="mini" label-width="100px" v-show="showSearch"> <el-form :model="orderQuery" size="mini" label-width="100px" v-show="showSearch">
<el-row> <!-- <el-row>-->
<el-col :span="6"> <!-- <el-col :span="6">-->
<el-form-item class="query-form-item" label="单据编号:"> <!-- <el-form-item class="query-form-item" label="单据编号:">-->
<el-input v-model="orderQuery.bill_code" placeholder="单据编号" <!-- <el-input v-model="orderQuery.bill_code" placeholder="单据编号"-->
style="width: 90%" <!-- style="width: 90%"-->
clearable="true" <!-- clearable="true"-->
></el-input> <!-- ></el-input>-->
</el-form-item> <!-- </el-form-item>-->
</el-col> <!-- </el-col>-->
<el-col :span="6"> <!-- <el-col :span="6">-->
<el-form-item label="单据类型:" class="query-form-item"> <!-- <el-form-item label="单据类型:" class="query-form-item">-->
<el-select v-model="orderQuery.bill_type" style="width: 90%" placeholder="选择单据" clearable> <!-- <el-select v-model="orderQuery.bill_type" style="width: 90%" placeholder="选择单据" clearable>-->
<el-option label="所有" :value="'A'"></el-option> <!-- <el-option label="所有" :value="'A'"></el-option>-->
<el-option label="入库" :value="'AI'"></el-option> <!-- <el-option label="入库" :value="'AI'"></el-option>-->
<el-option label="出库" :value="'AO'"></el-option> <!-- <el-option label="出库" :value="'AO'"></el-option>-->
</el-select> <!-- </el-select>-->
</el-form-item> <!-- </el-form-item>-->
</el-col> <!-- </el-col>-->
<!--<el-col :span="6">--> <!-- &lt;!&ndash;<el-col :span="6">&ndash;&gt;-->
<!-- <el-form-item class="query-form-item" label="药品信息:">--> <!-- &lt;!&ndash; <el-form-item class="query-form-item" label="药品信息:">&ndash;&gt;-->
<!-- <el-input v-model="orderQuery.cpmctymc" placeholder="药品信息" clearable="true"--> <!-- &lt;!&ndash; <el-input v-model="orderQuery.cpmctymc" placeholder="药品信息" clearable="true"&ndash;&gt;-->
<!-- style="width: 90%"--> <!-- &lt;!&ndash; style="width: 90%"&ndash;&gt;-->
<!-- ></el-input>--> <!-- &lt;!&ndash; ></el-input>&ndash;&gt;-->
<!-- </el-form-item>--> <!-- &lt;!&ndash; </el-form-item>&ndash;&gt;-->
<!--</el-col>--> <!-- &lt;!&ndash;</el-col>&ndash;&gt;-->
<el-col :span="6"> <!-- <el-col :span="6">-->
<el-form-item class="query-form-item" label="发货单位:"> <!-- <el-form-item class="query-form-item" label="发货单位:">-->
<el-input v-model="orderQuery.bzgg" placeholder="发货单位" clearable="true" <!-- <el-input v-model="orderQuery.bzgg" placeholder="发货单位" clearable="true"-->
style="width: 90%" <!-- style="width: 90%"-->
></el-input> <!-- ></el-input>-->
</el-form-item> <!-- </el-form-item>-->
</el-col> <!-- </el-col>-->
<el-col :span="6"> <!-- <el-col :span="6">-->
<el-form-item class="query-form-item" label="收货单位:"> <!-- <el-form-item class="query-form-item" label="收货单位:">-->
<el-input v-model="orderQuery.ylqxzcrbarmc" placeholder="收货单位" <!-- <el-input v-model="orderQuery.ylqxzcrbarmc" placeholder="收货单位"-->
style="width: 90%" <!-- style="width: 90%"-->
clearable="true" <!-- clearable="true"-->
></el-input> <!-- ></el-input>-->
</el-form-item> <!-- </el-form-item>-->
</el-col> <!-- </el-col>-->
</el-row> <!-- </el-row>-->
<el-row> <el-row>
<el-col :span="6"> <el-col :span="6">
@ -86,87 +86,20 @@
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="序号" type="index"></el-table-column> <el-table-column label="序号" type="index"></el-table-column>
<el-table-column <el-table-column label="订单编号" prop="billCode" width="140" show-overflow-tooltip ></el-table-column>
label="订单编号" <el-table-column width="120" label="单据时间" prop="billTimeFormat" show-overflow-tooltip ></el-table-column>
prop="billCode" <el-table-column label="单据类型" prop="billType" show-overflow-tooltip ></el-table-column>
width="140" <el-table-column label="药品信息" prop="physicInfo" show-overflow-tooltip ></el-table-column>
show-overflow-tooltip <el-table-column label="药品名称" prop="physicName" show-overflow-tooltip ></el-table-column>
></el-table-column> <el-table-column label="制剂数量" prop="prepnCount" show-overflow-tooltip ></el-table-column>
<el-table-column <el-table-column width="100" label="生产批号" prop="produceBatchNo" show-overflow-tooltip ></el-table-column>
label="单据类型" <el-table-column label="发货企业" prop="toUserName" show-overflow-tooltip ></el-table-column>
prop="billTypeName" <el-table-column label="收货企业" prop="fromUserName" show-overflow-tooltip ></el-table-column>
show-overflow-tooltip <el-table-column label="生产日期" prop="produceDate" show-overflow-tooltip ></el-table-column>
></el-table-column> <el-table-column label="有效期至" prop="exprieDate" show-overflow-tooltip ></el-table-column>
<el-table-column width="120" label="最小包装数量" prop="codeCount" show-overflow-tooltip ></el-table-column>
<el-table-column width="120" label="厂商" prop="produceEntName" show-overflow-tooltip ></el-table-column>
<el-table-column
label="药品信息"
prop="packUnit"
show-overflow-tooltip
></el-table-column>
<el-table-column
width="100"
label="批次号"
prop="bzgg"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="发货单位"
prop="fromUserName"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="收货单位"
prop="toUserName"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="包装规格"
prop="zczbhhzbapzbh"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="生产日期"
prop="price"
show-overflow-tooltip
></el-table-column>
<!--<el-table-column-->
<!-- label="器械类别"-->
<!-- prop="qxlb"-->
<!-- show-overflow-tooltip-->
<!--&gt;</el-table-column>-->
<el-table-column
label="有效期至"
prop="companyName"
show-overflow-tooltip
></el-table-column>
<el-table-column
width="120"
label="最小包装数量"
prop="companyName"
show-overflow-tooltip
></el-table-column>
<el-table-column
width="120"
label="单据时间"
prop="billTime"
show-overflow-tooltip
></el-table-column>
<el-table-column label="操作" width="160" fixed="right">
<template slot-scope="scope">
<el-button
type="text"
size="small"
@click.native.stop="handleDetailClick(scope.row)"
>详情
</el-button>
<el-button
type="text"
size="small"
@click.native.stop="handleCodeDetailClick(scope.row)"
>追溯码明细
</el-button>
</template>
</el-table-column>
</el-table> </el-table>
<pagination <pagination
v-show="pageTotal>0" v-show="pageTotal>0"
@ -176,17 +109,57 @@
/> />
<!--@pagination="getList"--> <!--@pagination="getList"-->
</el-card> </el-card>
<!-- <el-card>-->
<el-tabs type="border-card" style="margin: 15px">
<el-tab-pane label="单据明细">
<el-table
:data="aliYljgBillDetailDrugList"
style="width: 100%"
highlight-current-row="false"
v-loading="loading"
border
ref="multipleTable"
>
<el-table-column label="药品通用名" prop="prodName" width="140" show-overflow-tooltip ></el-table-column>
<el-table-column width="140" label="药品商品名" prop="prodName" show-overflow-tooltip ></el-table-column>
<el-table-column label="生产企业名称" prop="productEntName" show-overflow-tooltip ></el-table-column>
<el-table-column label="药品信息" prop="physicInfo" show-overflow-tooltip ></el-table-column>
<el-table-column label="药品名称" prop="physicName" show-overflow-tooltip ></el-table-column>
<el-table-column label="制剂数量" prop="prepnCount" show-overflow-tooltip ></el-table-column>
<el-table-column width="100" label="生产批号" prop="produceBatchNo" show-overflow-tooltip ></el-table-column>
<el-table-column label="包装单位描述" prop="pkgUnitDesc" show-overflow-tooltip ></el-table-column>
<el-table-column label="制剂规格描述" prop="SC73399619155911" show-overflow-tooltip ></el-table-column>
<el-table-column label="生产日期" prop="produceDate" show-overflow-tooltip ></el-table-column>
<el-table-column label="有效期至" prop="exprieDate" show-overflow-tooltip ></el-table-column>
<el-table-column label="操作" width="160" fixed="right">
<template slot-scope="scope">
<el-button
type="text"
size="small"
@click.native.stop="handleCodeDetailClick(scope.row)"
>追溯码明细
</el-button>
</template>
</el-table-column>
</el-table>
</el-tab-pane>
</el-tabs>
<!-- </el-card>-->
<el-dialog <el-dialog
title="追溯码明细" title="追溯码明细"
:visible.sync="codeDetailVisible" :visible.sync="codeDetailVisible"
append-to-body width="60%" append-to-body width="65%"
:close-on-click-modal="false" :close-on-click-modal="false"
:close-on-press-escape="false" :close-on-press-escape="false"
v-if="codeDetailVisible" v-if="codeDetailVisible"
> >
<retraceCodeDetailDialog> <retraceCodeDetailDialog
:dataList="this.codes">
</retraceCodeDetailDialog> </retraceCodeDetailDialog>
</el-dialog> </el-dialog>
@ -195,10 +168,17 @@
<script> <script>
import retraceCodeDetailDialog from './retraceCodeDetailDialog' import retraceCodeDetailDialog from './retraceCodeDetailDialog'
// import { getCodeList } from '@/api/inout/order' import { aliYljgSearchbillPage,aliYljgBillDetail } from '@/api/thrsys/alihealthBus.js'
import { addAliBizProduct } from '@/api/inout/order.js'
export default { export default {
components: { retraceCodeDetailDialog }, components: { retraceCodeDetailDialog },
props: {
orderFormData: {
type: Object,
required: true,
}
},
data() { data() {
return { return {
orderQuery: { orderQuery: {
@ -206,28 +186,13 @@ export default {
bill_type: 'A', bill_type: 'A',
begin_date:'', begin_date:'',
ens_date:'', ens_date:'',
cur_page: 1, page: 1,
page_size: 10 limit: 10
}, },
pageTotal: 10, pageTotal: 10,
dataList: [ dataList: [],
{ aliYljgBillDetailDrugList: [],
billCode: '1000110', codes: [],
billTypeName: '使用出库',
packUnit: '注射用A型肉毒毒素 注射剂 100U/瓶',
bzgg: '20230958-2',
// prepnSpec:"",
fromUserName: '厦门湖里妇幼保健院'
},
{
billCode: '1000111',
billTypeName: '采购入库',
packUnit: '注射用A型肉毒毒素 注射剂 100U/瓶',
bzgg: '20230958-2',
prepnSpec: '厦门湖里妇幼保健院',
fromUserName: '国药控股福建有限公司'
}
],
pickerOptions: { pickerOptions: {
shortcuts: [ shortcuts: [
{ {
@ -253,25 +218,43 @@ export default {
actDateRange: [], actDateRange: [],
showSearch: true, showSearch: true,
codeDetailVisible: false, codeDetailVisible: false,
radioCheck: null radioCheck: null,
currentRow: null
} }
}, },
methods: { methods: {
confirmSelect() {
if (this.currentRow == null) {
this.$message.error('请选择要选入的单据!')
return
}
this.orderFormData.aliData = this.currentRow
addAliBizProduct(this.orderFormData).then((res) => {
if (res.code === 20000) {
this.codeDetailVisible = false
this.$message.success('选入成功')
} else {
this.$message.error(res.message)
}
}).catch((error) => {
this.$message.error('选入失败')
})
},
hideSearch() { hideSearch() {
this.showSearch = !this.showSearch this.showSearch = !this.showSearch
}, },
search() {
this.getList()
},
handleCodeDetailClick(row) { handleCodeDetailClick(row) {
this.codes = row.aliYljgBillDetailDrugCodeList
this.codeDetailVisible = true this.codeDetailVisible = true
const parts = row.packUnit.split(' ')
let drugName = parts[0] //
let dosageForm = parts[1] //
let packUnitDetail = parts.slice(2).join(' ')
console.log('1', drugName)
console.log('2', dosageForm)
console.log('3', packUnitDetail)
}, },
handleChange(currentRow) { handleChange(currentRow) {
this.radioCheck = currentRow.billCode this.radioCheck = currentRow.billCode
this.currentRow = currentRow
this.getBillDetail(currentRow)
}, },
createDateTime() { createDateTime() {
const end = new Date(); // const end = new Date(); //
@ -285,21 +268,27 @@ export default {
}; };
this.actDateRange = [formatDate(start), formatDate(end)]; this.actDateRange = [formatDate(start), formatDate(end)];
}, },
// getList() { getList() {
// if (this.actDateRange !== null) { if (this.actDateRange !== null) {
// this.orderQuery.begin_date = this.actDateRange[0] this.orderQuery.begin_date = this.actDateRange[0]
// this.orderQuery.ens_date = this.actDateRange[1] this.orderQuery.ens_date = this.actDateRange[1]
// } }
// getCodeList().then(res => { aliYljgSearchbillPage(this.orderQuery).then(res => {
// if (res.code == 20000) { if (res.code == 20000) {
// this.dataList = res.data this.dataList = res.data.list || []
// } }
// }) })
// } },
getBillDetail(currentRow) {
aliYljgBillDetail(currentRow).then(res => {
if (res.code == 20000) {
this.aliYljgBillDetailDrugList = res.data.aliYljgBillDetailDrugList || []
}
})
}
}, },
created() { created() {
// this.getList()
this.createDateTime() this.createDateTime()
} }
} }

Loading…
Cancel
Save