Merge remote-tracking branch 'origin/20240912_adapter' into 20240912_adapter

20240912_adapter
yewj 10 months ago
commit 5c8beeaebf

@ -37,6 +37,15 @@ export function finishOrder(query) {
});
}
export function finishCheckOrder(query) {
return axios({
url: "/udiwms/basic/collect/order/finishCheckOrder",
method: "post",
data: query
});
}
export function vailOrderFinish(query) {
return axios({
url: "/udiwms/basic/collect/order/vailFinish",
@ -81,4 +90,26 @@ export function checkCollectOrderManCode(query) {
});
}
export function scanCheckCodeOrder(query) {
return axios({
url: "/udiwms/basic/collect/IoCollectCodeBackup/scanCheckCode",
method: "post",
data: query
});
}
export function scanCheckCodeReplace(query) {
return axios({
url: "/udiwms/basic/collect/IoCollectCodeBackup/scanCheckCodeReplace",
method: "post",
data: query
});
}
export function commitCheckCodeOrder(query) {
return axios({
url: "/udiwms/basic/collect/IoCollectCodeBackup/commitCheckCodeOrder",
method: "post",
data: query
});
}

@ -79,6 +79,13 @@
></el-input>
</template>
</el-table-column>
<el-table-column label="包装比例" prop="packRatio" show-overflow-tooltip width="120">
<template slot-scope="scope">
<el-input size="small" v-model="scope.row.packRatio" style="width: 100%"
:disabled="scope.$index !== selectedIndex"
></el-input>
</template>
</el-table-column>
<el-table-column label="层级单位" prop="packUnit" show-overflow-tooltip width="120">
<template slot-scope="scope">
<el-input size="small" v-model="scope.row.packUnit" style="width: 100%"
@ -262,7 +269,7 @@
<el-option label="中药注射剂" :value="7"></el-option>
<el-option label="疫苗" :value="8"></el-option>
<el-option label="血液制品" :value="9"></el-option>
<el-option label="国家基本药品目录入网药品" :value="10"></el-option>
<el-option label="国家基本药品目录入网药品" :value="10" v-if="!isSpecial"></el-option>
<el-option label="非基本药物" :value="11"></el-option>
<el-option label="各省增补基本药物" :value="12"></el-option>
<el-option label="特殊药品复方制剂" :value="13"></el-option>
@ -830,6 +837,7 @@ export default {
productId: null,
nameCode: '',
packLevel: null,
packRatio: null,
bhxjsl: null,
isDisabled: false,
isUpDisabled: true,
@ -849,7 +857,8 @@ export default {
levelUnitList: [],
maxLevel: 1,
editRowSwitch: false //
editRowSwitch: false, //
isSpecial:false
}
},
@ -1061,7 +1070,8 @@ export default {
uuid: this.newProductData.uuid,
productId: row.productId,
diType: row.diType,
xjdw: row.xjdw
xjdw: row.xjdw,
packRatio: row.packRatio
}
updateLevelDrug(editQuery).then(res => {
this.saveLoading = false
@ -1150,6 +1160,7 @@ export default {
.then((response) => {
this.loading = false
this.detailList = response.data || []
this.checkIsSpecial()
})
.catch(() => {
this.loading = false
@ -1157,7 +1168,15 @@ export default {
})
}
},
checkIsSpecial(){
if (this.detailList.length > 0){
this.detailList.forEach(item => {
if (item.nameCode.startsWith('89')) {
this.isSpecial = true
}
})
}
},
distributeLevelDiChange(val) {
const matchingItem = this.detailList.find(item => item.nameCode == val)
if (matchingItem) {

@ -353,13 +353,12 @@ export default {
3: '用户所属仓库',
},
consignees: {
1: '原始单据的收货方',
2: '原始单据的发货方',
3: '供应商',
4: '客户',
5: '特殊往来',
6: '内部科室',
7: '填写',
1: '客户',
2: '供应商',
3: '内部科室',
4: '特殊往来',
5: '原始单据的收货方',
6: '原始单据的发货方',
},
userList: [],
userLoading: false,

@ -912,13 +912,12 @@ export default {
'true' : '是',
},
consignees: {
1: '原始单据的收货方',
2: '原始单据的发货方',
3: '供应商',
4: '客户',
5: '特殊往来',
6: '内部科室',
7: '填写',
1: '客户',
2: '供应商',
3: '内部科室',
4: '特殊往来',
5: '原始单据的收货方',
6: '原始单据的发货方',
},
userList: [],
userLoading: false,

@ -274,15 +274,14 @@ export default {
///------------end
preHandleCurrentChange(val) {
this.filterQuery.page = val.page;
this.getPrescribeDetail(this, null);
this.preQuery.page = val.page;
this.getPrescribeDetail(this);
},
getPrescribeDetail(_this) {
if (_this.prescribeData == null)
return
if (_this.prescribeData != null) {
_this.preQuery.page = 1
// _this.preQuery.page = 1
_this.preQuery.orderIdFk = this.prescribeData.billNo
}
_this.preLoading = true;
@ -293,6 +292,7 @@ export default {
return
}
_this.preDetailList = res.data.list
_this.preTotal = res.data.total
_this.preLoading = false
}).catch(() => {
_this.preLoading = false

@ -57,7 +57,7 @@
<!-- <i class="el-icon-s-order"></i>-->
<!-- <span>单据管理</span>-->
<!-- </template>-->
<el-menu-item :index=0 @click="clickMenuItem(0)" v-if="workPlaceClass == 1">
<el-menu-item :index=0 @click="clickMenuItem(0)" v-if="workPlaceClass == 1" >
<!-- <i class="el-icon-edit-outline"></i>-->
<span slot="title">处理单据</span>
</el-menu-item>
@ -444,6 +444,7 @@ export default {
tabIndex: 0,
menuActive: 0,
autoTag: 0,
inAndOutType: 0,
workPlaceClass: 1,
resetKeys: {}
}
@ -642,9 +643,11 @@ export default {
let busType = this.busTypeList.find(item => item.documentTypeCode == this.formData.busType)
this.formData.busName = busType.busName;
this.autoTag = busType.autoTag;
this.inAndOutType = busType.inAndOutType;
} else if (this.busTypeList.length == 1) {
this.formData.busType = this.busTypeList[0].documentTypeCode
this.autoTag = this.busTypeList[0].autoTag;
this.inAndOutType = this.busTypeList[0].inAndOutType;
this.$router.push({query: {...this.$route.query, busType: this.formData.busType}, path: this.$route.path})
this.selectBusTypeDisabled = false
this.formData.busName = this.busTypeList.find(item => item.documentTypeCode == this.formData.busType).busName;
@ -653,6 +656,21 @@ export default {
this.formData.busType = null
}
if(this.inAndOutType == 1){
this.closeAllTabs()
this.editableTabsValue = 'IocCollectOrderCheckCode';
this.menuActive= 10,
this.editableTabs = [{
number: 10,
title: '单据审核',
name: 'IocCollectOrderCheckCode',
component: IocCollectOrderCheckCode,
//
componentProps: {}
}
];
}
}
return
})

@ -1425,7 +1425,9 @@ export default {
this.formData = {
tagStatus: -1,
workPlaceCode: this.formData.workPlaceCode,
busType: this.formData.busType
busType: this.formData.busType,
shipper : null,
fromCorp : null,
};
this.curRow = null
this.formData.confirmFinish = false;

@ -1,10 +1,17 @@
<template>
<div>
<el-card>
<el-button-group style="display: flex; justify-content: flex-end;" v-if="type == 1">
<el-button
type="primary"
@click.native="confirmCheckOrder()"
>校验完成
</el-button>
</el-button-group>
<el-form :model="orderData" class="demo-form-inline" style="margin-top: 30px" @submit.native.prevent>
<!--<div style="border: 1px solid #ebeef5;border-radius: 2px;margin-top: 15px;padding: 15px">-->
<el-row :gutter="0" style="margin-top: 5px">
<el-row :gutter="0" style="margin-top: 5px" v-if="type == 1">
<el-col :span="20">
<el-form-item prop="code" label="扫码校验" label-width="80px">
<el-input
@ -33,7 +40,7 @@
</el-col>
</el-row>
<el-alert
v-if="successVisible"
v-if="successVisible && type == 1"
:title="scanTitle"
:type="scanResultType"
:closable="false"
@ -50,7 +57,7 @@
<!-- :description="warnResult">-->
<!--</el-alert>-->
<el-alert
v-if="errVisible"
v-if="errVisible && type == 1"
title="错误信息:"
type="error"
:closable="false"
@ -76,7 +83,7 @@
<!--单据业务详情-->
<el-tab-pane>
<span slot="label">单据 {{ orderData.billNo }}-追溯码详情</span>
<el-table :data="detailList" style="width: 100%;" highlight-current-row="true" border ref="multipleTable">
<el-table :data="detailList" style="width: 100%;" highlight-current-row="true" border ref="multipleTable" :row-style="rowStyle">
<el-table-column label="序号" type="index"></el-table-column>
<el-table-column label="追溯码" prop="code" width="160"></el-table-column>
<el-table-column label="药品编码" prop="nameCode"></el-table-column>
@ -86,10 +93,36 @@
<el-table-column label="生产日期" prop="productDate"></el-table-column>
<el-table-column label="失效日期" prop="expireDate"></el-table-column>
<el-table-column label="序列号" prop="serialNo"></el-table-column>
<el-table-column label="扫码数量" prop="scanActCount"></el-table-column>
<!--<el-table-column label="扫码数量" prop="scanActCount"></el-table-column>-->
<el-table-column label="批准文号" prop="zczbhhzbapzbh"></el-table-column>
</el-table>
<el-row style="text-align: right;font-size: 12px;margin-top: 10px">
<el-col span="24">
<div style="float: right">
<!--<td>-->
<!-- <div style="background-color: #F56C6C;width: 10px;height: 10px;"></div>-->
<!--</td>-->
<!--<td><span style="color: #6d6d6d;"><pre>未赋码 </pre></span></td>-->
<td>
<div style="background-color: #E6A23C;width: 10px;height: 10px;"></div>
</td>
<td>
<span style="color: #6d6d6d;"><pre>替换码 </pre></span>
</td>
<td>
<div style="background-color: #67C23A;width: 10px;height: 10px;"></div>
</td>
<td>
<span style="color: #6d6d6d;"><pre>已校验</pre></span>
</td>
</div>
</el-col>
</el-row>
<pagination
v-show="resultTotal>0"
:total="resultTotal"
@ -97,6 +130,8 @@
:page.sync="codeQuery.page"
@pagination="getResultDetailList"
></pagination>
<!-- 在表格下方添加说明 -->
</el-tab-pane>
</el-tabs>
</div>
@ -104,7 +139,8 @@
<script>
import { isBlank } from '@/utils/strUtil'
import { getCodeEndList,checkCode } from '@/api/collect/IoCollectCodeSelect'
import { getCodeEndList } from '@/api/collect/IoCollectCodeSelect'
import { commitCheckCodeOrder, scanCheckCodeOrder, scanCheckCodeReplace } from '@/api/collect/splitCreateOrder'
export default {
name: 'DialogCheckCode',
@ -113,7 +149,16 @@ export default {
type: Object,
default: null,
required: true
}
},
closeCodeCheckDialog: {
type: Function,
required: true
},
type: {
type: Object,
default: null,
required: true
},
},
data() {
return {
@ -131,6 +176,7 @@ export default {
codeQuery: {
billNo:null,
code: null,
selectType:2,
page: 1,
limit: 10
},
@ -138,7 +184,9 @@ export default {
code: '',
billNo: null,
codeList: [],
}
},
checkCodeList:[],
checkCodeEndList:[],
}
},
methods: {
@ -168,24 +216,99 @@ export default {
// this.getInputFocus()
},
verifyCode(query) {
checkCode(query).then(res => {
scanCheckCodeOrder(query).then(res => {
if (res.code == 20000) {
if (Array.isArray(res.data)) {
this.printCodeResultList(res.data)
this.codeQuery.selectType = 1
this.getResultDetailList()
let codeList = res.data
let filterCodeList = codeList.filter(item => item.status === 5).map(item => item.code);;
if (filterCodeList.length > 0){
query.codeList = filterCodeList
this.replaceCode(query,1)
}
} else {
this.verifyFinish(1, res.data, res.message)
this.checkCodeEndList.push(query.code)
this.codeQuery.selectType = 1
this.getResultDetailList()
//
this.$message.success('校验成功')
}
} else {
}else if (res.code == 503){
this.replaceCode(query,2)
} else if (res.code == 504){
//
this.$confirm('追溯码校验超出是否继续添加', '提示', {
confirmButtonText: '添加',
cancelButtonText: '取消',
type: 'warning',
center: true,
closeOnPressEscape: false,// ESC
closeOnClickModal: false,//
distinguishCancelAndClose: true,//
}).then(() => {
scanCheckCodeReplace(query).then(res => {
if (res.code == 20000){
this.scanCode = ''
this.orderData.checkCodeConfirm = res.data.checkCodeConfirm
this.codeQuery.selectType = 1
this.getResultDetailList()
this.getInputFocus()
this.$message.success("添加成功")
}else {
this.$message.error("添加失败")
}
})
})
}else {
if (Array.isArray(res.data)) {
} else {
this.verifyFinish(2, res.data, res.message)
this.scanCode = ''
this.getInputFocus()
// this.verifyFinish(2, res.data, res.message)
this.$message.error(res.message)
}
}
})
},
replaceCode(query,type){
let title = ''
if (type == 1){
const codeStr = query.codeList.join('\n');
title = `${codeStr}该追溯码不存在是否继续添加`;
}else {
title = '该追溯码不存在是否继续添加'
}
//
this.$confirm(title, '提示', {
confirmButtonText: '添加',
cancelButtonText: '取消',
type: 'warning',
center: true,
closeOnPressEscape: false,// ESC
closeOnClickModal: false,//
distinguishCancelAndClose: true,//
}).then(() => {
scanCheckCodeReplace(query).then(res => {
if (res.code == 20000){
this.scanCode = ''
this.orderData.checkCodeConfirm = res.data.checkCodeConfirm
this.codeQuery.selectType = 1
this.getResultDetailList()
this.getInputFocus()
this.$message.success("添加成功")
}else {
this.$message.error("添加失败")
}
})
}).catch(() => {
this.scanCode = ''
this.getInputFocus()
})
},
verifyFinish(val, data, message) {
if (val == 1) {
this.errVisible = false
@ -259,9 +382,13 @@ export default {
for (let i = 0; i < vailCodeResultResponses.length; i++) {
let data = vailCodeResultResponses[i]
if (data.status == 1) {
this.scanResultType = "success"
this.result = this.result + (isBlank(this.result) ? '' : ';') + vailCodeResultResponses[i].code + ':' + vailCodeResultResponses[i].sucMsg
} else if (data.status == 2) {
this.errResult = this.errResult + '\n' + vailCodeResultResponses[i].code + ':' + vailCodeResultResponses[i].errMsg
}else if (data.status == 5) {
this.scanResultType = "warning"
this.result = this.result + (isBlank(this.result) ? '' : ';') + vailCodeResultResponses[i].code + ':' + vailCodeResultResponses[i].errMsg
}
}
if (!isBlank(this.result)) {
@ -305,7 +432,9 @@ export default {
getCodeEndList(this.codeQuery).then((res) => {
if (res.code === 20000) {
this.detailList = res.data.list || []
this.checkCodeList = this.detailList.map(item => item.code)
this.resultTotal = res.data.total || 0;
this.codeQuery.selectType = 2
} else {
this.$message.error(res.message)
this.detailList = []
@ -328,18 +457,80 @@ export default {
// }
// })
},
confirmCheckOrder(){
if (this.orderData.checkCodeConfirm == 1){
//
this.$confirm('当前单据存在可替换追溯码是否替换完成校验', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning',
center: true,
closeOnPressEscape: false,// ESC
closeOnClickModal: false,//
distinguishCancelAndClose: true,//
}).then(() => {
this.commit()
}).catch(() => {
})
}else {
this.commit()
}
// // 绿
// let allGreen = this.detailList.every(row => {
// return this.checkCodeEndList.includes(row.code);
// });
//
// if (allGreen) {
// // 绿
// // this.doSubmit();
// this.$message.success('绿');
// } else {
// // 绿
// this.$message.error('绿');
// }
},
commit(){
commitCheckCodeOrder(this.filterQuery).then(res => {
if (res.code == 20000){
this.closeCodeCheckDialog()
this.$message.success("校验完成")
}else {
if (this.orderData.checkCodeConfirm == 1){
this.closeCodeCheckDialog()
}
this.$message.error(res.message)
}
}).catch(() => {
})
},
init() {
this.codeQuery = {
billNo: null,
code: null,
selectType:2,
page: 1,
limit: 10
}
this.errVisible = false
this.successVisible = true
}
},
rowStyle({row, rowIndex}) {
let rowBackground = {}
if (row.scanCodeCheckStatus == 1) {
rowBackground.color = '#56a717'
}
if (row.scanCodeCheckStatus == 3) {
rowBackground.color = '#E6A23C';
}
rowBackground.height = "38px"
return rowBackground;
},
},
created() {
this.filterQuery.billNo = this.orderData.billNo
this.getResultDetailList()
this.init()
},

@ -3,30 +3,31 @@
<el-table v-loading="loading" :data="codeArray" style="width: 100%;" max-height="350" height="350"
:row-style="rowStyle"
border
ref="multipleTable">
<!-- <el-table-column-->
<!-- type="selection"-->
<!-- width="55">-->
<!-- </el-table-column>-->
ref="multipleTable"
>
<!-- <el-table-column-->
<!-- type="selection"-->
<!-- width="55">-->
<!-- </el-table-column>-->
<el-table-column label="序号" type="index" width="55"></el-table-column>
<el-table-column
label="追溯码"
prop="udiCode"
prop="code"
width="280"
show-overflow-tooltip
></el-table-column>
<!-- <el-table-column-->
<!-- label="产品通用名"-->
<!-- prop="productName"-->
<!-- width="160"-->
<!-- show-overflow-tooltip-->
<!-- ></el-table-column>-->
<!-- <el-table-column-->
<!-- label="规格型号"-->
<!-- prop="ggxh"-->
<!-- width="160"-->
<!-- show-overflow-tooltip-->
<!-- ></el-table-column>-->
<!-- <el-table-column-->
<!-- label="产品通用名"-->
<!-- prop="productName"-->
<!-- width="160"-->
<!-- show-overflow-tooltip-->
<!-- ></el-table-column>-->
<!-- <el-table-column-->
<!-- label="规格型号"-->
<!-- prop="ggxh"-->
<!-- width="160"-->
<!-- show-overflow-tooltip-->
<!-- ></el-table-column>-->
<el-table-column
label="批次号"
prop="batchNo"
@ -39,18 +40,18 @@
<!-- width="120"-->
<!-- show-overflow-tooltip-->
<!-- ></el-table-column>-->
<el-table-column
label="扫码数量"
prop="scanCount"
width="80"
show-overflow-tooltip
></el-table-column>
<!-- <el-table-column-->
<!-- label="实际数量"-->
<!-- prop="reCount"-->
<!-- width="80"-->
<!-- show-overflow-tooltip-->
<!-- ></el-table-column>-->
<!--<el-table-column-->
<!-- label="扫码数量"-->
<!-- prop="scanCount"-->
<!-- width="80"-->
<!-- show-overflow-tooltip-->
<!--&gt;</el-table-column>-->
<!-- <el-table-column-->
<!-- label="实际数量"-->
<!-- prop="reCount"-->
<!-- width="80"-->
<!-- show-overflow-tooltip-->
<!-- ></el-table-column>-->
<el-table-column
label="生产日期"
prop="productDate"
@ -77,88 +78,89 @@
<!-- show-overflow-tooltip-->
<!-- ></el-table-column>-->
<!-- <el-table-column label="操作" width="140" fixed="right">-->
<!-- <template slot-scope="scope">-->
<!-- <el-button-->
<!-- type="text"-->
<!-- size="small"-->
<!-- @click.native.stop="deleteCode(scope.$index, scope.row)"-->
<!-- >减一-->
<!-- </el-button-->
<!-- >-->
<!-- &lt;!&ndash; <el-button&ndash;&gt;-->
<!-- &lt;!&ndash; type="text"&ndash;&gt;-->
<!-- &lt;!&ndash; size="small"&ndash;&gt;-->
<!-- &lt;!&ndash; :disabled="scope.row.relId!=null"&ndash;&gt;-->
<!-- &lt;!&ndash; @click.native.stop="bindRl(scope.row)"&ndash;&gt;-->
<!-- &lt;!&ndash; >绑定产品&ndash;&gt;-->
<!-- &lt;!&ndash; </el-button&ndash;&gt;-->
<!-- &lt;!&ndash; >&ndash;&gt;-->
<!-- &lt;!&ndash; <el-button&ndash;&gt;-->
<!-- &lt;!&ndash; type="text"&ndash;&gt;-->
<!-- &lt;!&ndash; size="small"&ndash;&gt;-->
<!-- &lt;!&ndash; :disabled="scope.row.supId!=null"&ndash;&gt;-->
<!-- &lt;!&ndash; @click.native.stop="handleUnitClick(scope.row)"&ndash;&gt;-->
<!-- &lt;!&ndash; >绑定供应商&ndash;&gt;-->
<!-- &lt;!&ndash; </el-button&ndash;&gt;-->
<!-- &lt;!&ndash; >&ndash;&gt;-->
<!-- <el-button-->
<!-- type="text"-->
<!-- size="small"-->
<!-- @click.native.stop="editCode(scope.row)"-->
<!-- >编辑-->
<!-- </el-button-->
<!-- >-->
<!-- </template>-->
<!-- </el-table-column>-->
<!-- <el-table-column label="操作" width="140" fixed="right">-->
<!-- <template slot-scope="scope">-->
<!-- <el-button-->
<!-- type="text"-->
<!-- size="small"-->
<!-- @click.native.stop="deleteCode(scope.$index, scope.row)"-->
<!-- >减一-->
<!-- </el-button-->
<!-- >-->
<!-- &lt;!&ndash; <el-button&ndash;&gt;-->
<!-- &lt;!&ndash; type="text"&ndash;&gt;-->
<!-- &lt;!&ndash; size="small"&ndash;&gt;-->
<!-- &lt;!&ndash; :disabled="scope.row.relId!=null"&ndash;&gt;-->
<!-- &lt;!&ndash; @click.native.stop="bindRl(scope.row)"&ndash;&gt;-->
<!-- &lt;!&ndash; >绑定产品&ndash;&gt;-->
<!-- &lt;!&ndash; </el-button&ndash;&gt;-->
<!-- &lt;!&ndash; >&ndash;&gt;-->
<!-- &lt;!&ndash; <el-button&ndash;&gt;-->
<!-- &lt;!&ndash; type="text"&ndash;&gt;-->
<!-- &lt;!&ndash; size="small"&ndash;&gt;-->
<!-- &lt;!&ndash; :disabled="scope.row.supId!=null"&ndash;&gt;-->
<!-- &lt;!&ndash; @click.native.stop="handleUnitClick(scope.row)"&ndash;&gt;-->
<!-- &lt;!&ndash; >绑定供应商&ndash;&gt;-->
<!-- &lt;!&ndash; </el-button&ndash;&gt;-->
<!-- &lt;!&ndash; >&ndash;&gt;-->
<!-- <el-button-->
<!-- type="text"-->
<!-- size="small"-->
<!-- @click.native.stop="editCode(scope.row)"-->
<!-- >编辑-->
<!-- </el-button-->
<!-- >-->
<!-- </template>-->
<!-- </el-table-column>-->
</el-table>
<!--<pagination-->
<!-- v-show="total>0"-->
<!-- :total="total"-->
<!-- :limit.sync="filterQuery.limit"-->
<!-- :page.sync="filterQuery.page"-->
<!-- @pagination="handleCurrentChange"-->
<!--&gt;</pagination>-->
<!-- <el-row v-if="viewType==7">-->
<!-- <el-col span="10">-->
<!-- <div style="float: left">-->
<!-- <td>-->
<!-- <div style="background-color: #FC4A45;width: 10px;height: 10px"></div>-->
<!-- </td>-->
<!-- <td><span>红色:多余条码</span></td>-->
<!-- <td>-->
<!-- <div style="background-color: #F4BD25;width: 10px;height: 10px;margin-left: 15px"></div>-->
<!-- </td>-->
<!-- <td>-->
<!-- <span>黄色:包含多余条码</span>-->
<!-- </td>-->
<pagination
v-show="codeTotal>0"
:total="codeTotal"
:limit.sync="codeQuery.limit"
:page.sync="codeQuery.page"
@pagination="getCodeList"
></pagination>
<!-- <el-row v-if="viewType==7">-->
<!-- <el-col span="10">-->
<!-- <div style="float: left">-->
<!-- <td>-->
<!-- <div style="background-color: #FC4A45;width: 10px;height: 10px"></div>-->
<!-- </td>-->
<!-- <td><span>红色:多余条码</span></td>-->
<!-- <td>-->
<!-- <div style="background-color: #F4BD25;width: 10px;height: 10px;margin-left: 15px"></div>-->
<!-- </td>-->
<!-- <td>-->
<!-- <span>黄色:包含多余条码</span>-->
<!-- </td>-->
<!-- </div>-->
<!-- </el-col>-->
<!-- </div>-->
<!-- </el-col>-->
<!-- </el-row>-->
<!-- </el-row>-->
</div>
</template>
<script>
import {deleteCodesTempById, errorCodeList, updateCodeBindSup} from "@/api/inout/order";
import { deleteCodesTempById, errorCodeList, updateCodeBindSup } from '@/api/inout/order'
import { getCodeDetail } from '@/api/collect/collectOrder'
import {parseTime} from "@/utils/coTools";
import {getCheckDetailCodes} from "@/api/inout/orderDetailCode";
import { parseTime } from '@/utils/coTools'
import { getCheckDetailCodes } from '@/api/inout/orderDetailCode'
import { getCodeEndList } from '@/api/collect/IoCollectCodeSelect'
export default {
name: "PanelDestroyCodeDetail",
name: 'PanelDestroyCodeDetail',
props: {
prescribeData: {
type: Object,
required: true,
required: true
},
refreshPanel: {
type: Function,
required: true,
required: true
},
// selectRlTitle: {
// type: Object,
@ -174,7 +176,7 @@ export default {
// },
viewType: {
type: Object,
required: true,
required: true
}
},
@ -182,8 +184,8 @@ export default {
return {
loading: false,
query: {
code: "",
corpOrderId: "",
code: '',
corpOrderId: ''
},
codeDetail: null,
codeArray: [],
@ -194,66 +196,87 @@ export default {
editCodeVisible: false,
editOriginCodeVisible: false,
fromCorp: null,
codeQuery: {
code: '',
billNo: '',
page: 1,
limit: 20,
selectType: 1,
relId: ''
},
codeTotal:0
}
},
methods: {
getCodeList() {
this.loading = true;
getCodeDetail({ id:this.prescribeData.id }) //
.then((response) => {
this.codeArray = response.data || [];
this.loading = false;
})
.catch(() => {
this.loading = false;
this.list = [];
});
this.loading = true
//
// getCodeDetail({ id:this.prescribeData.id }) //
// .then((response) => {
// this.codeArray = response.data || [];
// this.loading = false;
// })
// .catch(() => {
// this.loading = false;
// this.list = [];
// });
this.codeQuery.billNo = this.prescribeData.orderIdFk
this.codeQuery.relId = this.prescribeData.relId
getCodeEndList(this.codeQuery).then(res => {
if (res.code == 20000) {
this.codeArray = res.data.list || []
this.codeTotal= res.data.total || 0
this.loading = false
} else {
this.loading = false
this.codeTotal = 0
this.codeArray = []
}
})
},
deleteCode(index, row) {
this.$confirm("是否确定移除一个条码?", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
this.$confirm('是否确定移除一个条码?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.loading = true;
this.loading = true
let tQuery = {
id: row.id
}
deleteCodesTempById(tQuery)
.then((response) => {
if (response.code === 20000) {
this.refreshPanel();
this.refreshPanel()
} else {
this.$message.error(response.message);
this.$message.error(response.message)
}
this.loading = false;
});
this.loading = false
})
}).catch(() => {
});
})
},
bindRl(val) {
this.curRow = val;
this.fromCorp = this.idQuery.fromCorp;
this.selectRlVisible = true;
this.curRow = val
this.fromCorp = this.idQuery.fromCorp
this.selectRlVisible = true
},
handleUnitClick(row) {
this.curRow = row;
this.dialogTableVisible = true;
this.curRow = row
this.dialogTableVisible = true
},
editCode(row) {
this.editTitle = "编辑条码";
this.codeDetail = row;
this.editCodeVisible = true;
this.editTitle = '编辑条码'
this.codeDetail = row
this.editCodeVisible = true
},
rowStyle({row, rowIndex}) {
rowStyle({ row, rowIndex }) {
// let rowBackground = {};
// if (!this.$isNotBlank(row.supId) || !this.$isNotBlank(row.relId)) {
// rowBackground.color = '#f60303';
@ -270,77 +293,78 @@ export default {
let query = {
id: this.curRow.id,
relId: row.id,
mySupId: row.unitFk,
};
mySupId: row.unitFk
}
updateCodeBindSup(query).then((response) => {
if (response.code == 20000) {
this.$message.success("绑定成功");
this.orderFormData.id = this.curRow.orderId;
this.closeBindDialog();
this.getCodeList();
this.$message.success('绑定成功')
this.orderFormData.id = this.curRow.orderId
this.closeBindDialog()
this.getCodeList()
} else {
if (response.code == 503) {
this.curRow = response.data;
this.orderFormData.id = this.curRow.orderId;
this.getCodeList();
this.selectUnitTitle = response.message;
this.handleUnitClick(response.data);
} else
this.$message.error(response.message);
this.curRow = response.data
this.orderFormData.id = this.curRow.orderId
this.getCodeList()
this.selectUnitTitle = response.message
this.handleUnitClick(response.data)
} else {
this.$message.error(response.message)
}
}
}).catch(() => {
});
})
},
selectSupUnit(row) {
let query = {
id: this.curRow.id,
supId: row.erpId,
};
supId: row.erpId
}
updateCodeBindSup(query).then((response) => {
if (response.code == 20000) {
this.$message.success("绑定成功");
this.idQuery.id = this.curRow.orderId;
this.getCodeList();
this.refreshPanel();
this.$message.success('绑定成功')
this.idQuery.id = this.curRow.orderId
this.getCodeList()
this.refreshPanel()
} else {
this.$message.error(response.message);
this.$message.error(response.message)
}
}).catch(() => {
});
})
},
closeBindDialog() {
this.selectRlVisible = false;
this.dialogTableVisible = false;
this.refreshPanel();
this.selectRlVisible = false
this.dialogTableVisible = false
this.refreshPanel()
},
closeCodeDialog() {
this.editCodeVisible = false;
this.editOriginCodeVisible = false;
this.refreshPanel();
this.editCodeVisible = false
this.editOriginCodeVisible = false
this.refreshPanel()
},
repeatAddCode(editData) {
let tQuery = editData;
tQuery.orderId = this.orderFormData.id;
tQuery.actDate = parseTime(this.orderFormData.actDate, '{y}-{m}-{d} {h}:{i}:{s}');
tQuery.action = this.orderFormData.action;
this.closeCodeDialog();
let tQuery = editData
tQuery.orderId = this.orderFormData.id
tQuery.actDate = parseTime(this.orderFormData.actDate, '{y}-{m}-{d} {h}:{i}:{s}')
tQuery.action = this.orderFormData.action
this.closeCodeDialog()
},
}
},
created() {
if (this.prescribeData.id != null)
this.getCodeList();
console.log('hahhahahah', this.prescribeData)
if (this.prescribeData.id != null) {
this.getCodeList()
}
},
components: {
},
components: {}
}
</script>

@ -45,7 +45,7 @@
</el-row>
<div style="border: 1px solid #ebeef5;border-radius: 2px;margin-top: 15px;padding: 15px">
<div style="border: 1px solid #ebeef5;border-radius: 2px;margin-top: 15px;padding: 15px" v-loading="this.loading">
<el-row :gutter="0" style="margin-top: 5px">
<el-col :span="20">
<el-form-item prop="code" :label="scanTip" label-width="80px">
@ -130,7 +130,7 @@
<el-tabs type="border-card" style="margin: 15px">
<!--单据业务详情-->
<el-tab-pane>
<span slot="label">单据 {{ filterQuery.billNo }}-追溯码详情</span>
<span slot="label">单据 {{ orderData.billNo }}-追溯码详情</span>
<el-table :data="detailList" style="width: 100%;" highlight-current-row="true" border ref="multipleTable"
:row-style="rowStyle"
>
@ -154,6 +154,31 @@
@pagination="getCodeList"
></pagination>
</el-tab-pane>
<el-tab-pane>
<span slot="label">单据 {{ orderData.billNo }}-业务详情</span>
<el-table :data="busDataList" style="width: 100%;" highlight-current-row="true" border ref="multipleTable"
>
<el-table-column label="序号" type="index"></el-table-column>
<el-table-column label="药品编码" prop="nameCode"></el-table-column>
<el-table-column label="产品通用名称" prop="cpmctymc" width="120"></el-table-column>
<el-table-column label="批准文号" prop="zczbhhzbapzbh"></el-table-column>
<el-table-column label="包装规格" prop="spec" width="80"></el-table-column>
<el-table-column label="单据数量" prop="count" width="80"></el-table-column>
<el-table-column label="批次号" prop="batchNo"></el-table-column>
<el-table-column label="生产日期" prop="productDate"></el-table-column>
<el-table-column label="失效日期" prop="expireDate"></el-table-column>
<el-table-column label="医保编码" prop="ybbm"></el-table-column>
<el-table-column label="生产厂家" prop="manufactory"></el-table-column>
<!--<el-table-column label="扫码数量" prop="scanActCount"></el-table-column>-->
</el-table>
<pagination
v-show="busDataTotal>0"
:total="busDataTotal"
:limit.sync="busQuery.limit"
:page.sync="busQuery.page"
@pagination="getBizDetailList"
></pagination>
</el-tab-pane>
</el-tabs>
@ -166,7 +191,7 @@ import { isBlank } from '@/utils/strUtil'
import { getCodeEndList } from '@/api/collect/IoCollectCodeSelect'
import { enterCodeBillNo } from '@/api/inout/order'
import { autoCodeResult, findByBill, manualCodeDetail, orderDetail } from '@/api/collect/collectOrder'
import { cancelOrder, checkCollectOrderManCode } from '@/api/collect/splitCreateOrder'
import { checkCollectOrderManCode, finishCheckOrder } from '@/api/collect/splitCreateOrder'
export default {
name: 'IocCollectOrderCheckCode',
@ -186,6 +211,7 @@ export default {
scanResultType: 'success',
result: '\n',
errVisible: false,
loading: false,
successVisible: true,
errResult: '',
scanCode: '',
@ -197,6 +223,13 @@ export default {
page: 1,
limit: 10
},
busQuery: {
billNo: null,
orderIdFk: null,
code: null,
page: 1,
limit: 10
},
filterQuery: {
code: '',
billNo: null,
@ -215,7 +248,9 @@ export default {
curRow: null,
codeList: [],
checkCodeList: []
checkCodeList: [],
busDataList:[],
busDataTotal:0
}
},
@ -252,7 +287,7 @@ export default {
},
enterBillNoKey(billNo) {
// this.checkSuccess = true;
this.loading = true;
this.filterQuery.code = this.scanCode
let tQuery = {
viewType: 'tagCode',
@ -267,11 +302,12 @@ export default {
if (response.code == 601) {
this.placeholder = '已选入单据,请扫描追溯码进行审核'
this.orderData.billNo = response.data.billNo
this.getBillNo(this.filterQuery.billNo)
this.getBillNo(this.orderData.billNo)
this.$refs.inputRef.focus()
this.$refs.inputRef.select()
this.scanCode = ''
this.getCodeList()
this.getBizDetailList()
}else {
this.$refs.inputRef.focus()
this.$refs.inputRef.select()
@ -302,21 +338,19 @@ export default {
})
},
getBizDetailList() {
let preQuery = {}
if (this.filterQuery == null) {
return
}
if (this.filterQuery != null) {
preQuery = {
orderIdFk: this.filterQuery.billNo
}
if (this.orderData != null) {
// this.codeQuery.page = 1
this.busQuery.orderIdFk = this.orderData.billNo
// this.codeQuery.bizIdFk = this.bizId
}
orderDetail(preQuery).then(res => {
orderDetail(this.busQuery).then(res => {
if (res.code != 20000) {
this.$message.error(res.message)
return
}
this.busDataList = res.data.list
this.busDataTotal = res.data.total
}).catch(() => {
this.$message.error('数据加载失败')
})
@ -414,6 +448,7 @@ export default {
async printCodeResultList(vailCodeResultResponses) {
this.errResult = ''
this.result = ''
this.scanCode = ''
this.successVisible = false
this.errVisible = false
this.scanTitle = '扫码结果:'
@ -503,6 +538,7 @@ export default {
}
},
batchVailCode(params) {
// batchVailCode(params).then((res) => {
// if (res.code === 20000) {
@ -526,9 +562,20 @@ export default {
})
},
commitCheckOrder() {
this.finishOrder()
this.init()
this.$message.success('单据审核完成')
},
finishOrder() {
finishCheckOrder(this.orderData).then(res => {
if (res.code == 20000) {
}else {
this.$message.error(res.message)
}
}).catch(() => {
})
},
cancelOrder() {
this.$confirm('此操作将取消当前正在审核单据,是否继续?', '提示', {
confirmButtonText: '确定',
@ -536,6 +583,7 @@ export default {
type: 'warning'
}).then(() => {
this.init()
this.$message.success("放弃成功")
}).catch(() => {
});
},

@ -273,16 +273,19 @@
</el-tabs>
<el-dialog
title="扫码校验"
:title="scanTitleMap[scanTitle]"
:visible.sync="codeCheckVisible"
:close-on-click-modal="false"
:close-on-press-escape="false"
v-if="codeCheckVisible"
width="60%"
append-to-body
@close="closeCodeCheckDialog"
>
<DialogCheckCode
:orderData="curRow"
:closeCodeCheckDialog="closeCodeCheckDialog"
:type="scanTitle"
>
</DialogCheckCode>
@ -412,6 +415,11 @@ export default {
//
scanTitle: 1,
scanTitleMap: {
1 : '扫码校验',
2 : '校验详情'
}
}
},
@ -560,9 +568,20 @@ export default {
//
codeCheckClick(_this,row){
_this.scanTitle = 1
_this.curRow = row
_this.codeCheckVisible = true
},
//
codeCheckDetail(_this,row){
_this.scanTitle = 2
_this.curRow = row
_this.codeCheckVisible = true
},
closeCodeCheckDialog(){
this.codeCheckVisible = false
this.getList()
}
},
created() {

@ -504,7 +504,7 @@ export default {
this.inputQuery.list = this.invoiceRow;
let mount = 0;
for (var i = 0; i < this.invoiceRow.length; i++) {
mount += this.invoiceRow[i].amount
mount += this.invoiceRow[i].price
}
if (mount != this.inputQuery.price) {
this.$confirm("价格不匹配,是否确定提交?", "提示", {

@ -155,100 +155,6 @@
</el-card>
</el-form>
<el-tabs type="border-card" style="margin: 15px">
<!--单据业务详情-->
<el-tab-pane>
<span slot="label">单据 {{ input.billNo }}-单据详情</span>
<el-table
v-loading="bizDetailLoading"
:data="codeDetailList"
style="width: 100%"
border
@current-change="BizDetailInv"
@selection-change="handleSelectionUdiChange"
row-key="id"
highlight-current-row
>
<el-table-column type="selection" width="55"></el-table-column>
<el-table-column label="序号" type="index"></el-table-column>
<el-table-column
label="发票代码"
prop="invoiceCodes"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="药品名称"
prop="coName"
width="150"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="包装规格"
width="150"
prop="spec"
></el-table-column>
<el-table-column
label="批次号"
width="100"
prop="batchNo"
></el-table-column>
<el-table-column
label="数量"
prop="count"
width="100"
></el-table-column>
<el-table-column
label="扫码数量"
prop="reCount"
width="100"
></el-table-column>
<el-table-column
label="价格"
prop="price"
width="100"
></el-table-column>
<el-table-column
label="金额"
prop="amount"
width="100"
></el-table-column>
<el-table-column
label="生产日期"
prop="productDate"
width="100"
></el-table-column>
<el-table-column
label="失效日期"
prop="expireDate"
width="100"
></el-table-column>
<el-table-column width="100" label="计量单位" prop="measname">
</el-table-column>
<el-table-column
label="生产企业"
prop="manufacturer"
width="160"
show-overflow-tooltip
></el-table-column>
<el-table-column
label="批准文号"
width="160"
prop="certCode"
show-overflow-tooltip
></el-table-column>
</el-table>
<pagination
v-show="codeTotal > 0"
:total="codeTotal"
:page.sync="codeQuery.page"
:limit.sync="codeQuery.limit"
@pagination="getCodeDetailLists"
/>
</el-tab-pane>
</el-tabs>
<el-image-viewer
v-if="imgViewerVisible"
@ -308,7 +214,7 @@ export default {
return {
check: false,
idList: [],
invoiceRow: [],
// invoiceRow: [],
statusCode: null,
choiceFile: "选取文件",
fileList: [],
@ -485,10 +391,10 @@ export default {
components: {AcceptOrder, DialogInvoice, InvoiceRegister, ElImageViewer},
methods: {
onSubmit() {
if (this.invoiceRow == null || this.invoiceRow.length == 0) {
this.$message.error("请选择要登记的物资! ");
return false;
}
// if (this.invoiceRow == null || this.invoiceRow.length == 0) {
// this.$message.error("! ");
// return false;
// }
if (this.$isBlank(this.inputQuery.invoiceEncode)) {
this.$message.error("发票编码不能为空!");
return;
@ -504,7 +410,7 @@ export default {
this.inputQuery.list = this.invoiceRow;
let mount = 0;
for (var i = 0; i < this.invoiceRow.length; i++) {
mount += this.invoiceRow[i].amount
mount += this.invoiceRow[i].price
}
if (mount != this.inputQuery.price) {
this.$confirm("价格不匹配,是否确定提交?", "提示", {

@ -437,11 +437,13 @@
:close-on-click-modal="false"
:close-on-press-escape="false"
v-if="checkInvoice"
@close="closecheckInvoice"
>
<checkInvoice
:closeDialog="closecheckInvoice"
:input="inputInv"
:getOrderDetails="getOrderDetails"
:invoiceRow="detaillist"
></checkInvoice>
</el-dialog>
@ -708,6 +710,7 @@ export default {
acceptQuery: null,
acceptOrderVisible: false,
subRow: null,
detaillist:[],
};
},
components: {AcceptOrder, DialogInvoice, InvoiceRegister, ElImageViewer, InvoiceRegistrationDetermine, checkInvoice},
@ -737,11 +740,13 @@ export default {
this.getList();
},
InvoiceRegister1(_this,row) {
_this.savebillno = row.billNo
_this.savebillno = _this.currentRow.billNo
_this.inputInv = row;
_this.detaillist.push(row)
_this.checkInvoice = true;
},
closecheckInvoice() {
this.detaillist = []
this.checkInvoice = false;
this.getList();
this.currentRow.billNo = this.savebillno;

Loading…
Cancel
Save