问题处理

20240912_adapter_z
yewj 11 months ago
parent 91945f4e09
commit c8780b0f19

@ -146,9 +146,9 @@
<!--</el-row>--> <!--</el-row>-->
<el-row :gutter="24" class="el-row"> <el-row :gutter="24" class="el-row">
<el-col :span="12" class="el-col"> <el-col :span="12" class="el-col">
<el-form-item label="单据来源:" prop="name" class="query-form-item"> <el-form-item label="来源系统:" prop="name" class="query-form-item">
<el-input <el-input
placeholder="请输入单据来源" placeholder="请输入来源系统"
v-model="formData.fromType" style="width: 80%" v-model="formData.fromType" style="width: 80%"
auto-complete="off" auto-complete="off"
></el-input> ></el-input>

@ -14,12 +14,12 @@
</el-button> </el-button>
</div> </div>
<el-table <el-table
v-loading="loading" v-loading="loading"
:data="detailList" :data="detailList"
style="width: 100%;" style="width: 100%;"
border border
key="3" key="3"
@current-change="handleDetail" @current-change="handleDetail"
> >
<el-table-column label="序号" type="index"></el-table-column> <el-table-column label="序号" type="index"></el-table-column>
<el-table-column label="层级标识" prop="nameCode" show-overflow-tooltip width="160"> <el-table-column label="层级标识" prop="nameCode" show-overflow-tooltip width="160">
@ -73,19 +73,19 @@
@click.native="levelSave(scope.row)">保存 @click.native="levelSave(scope.row)">保存
</el-button> </el-button>
<el-button <el-button
type="text" type="text"
size="small" size="small"
v-if="scope.$index != selectedIndex " v-if="scope.$index != selectedIndex "
@click.stop="true" @click.stop="true"
@click.native="rowChange(scope.$index,scope.row)" @click.native="rowChange(scope.$index,scope.row)"
>编辑 >编辑
</el-button> </el-button>
<el-button <el-button
type="text" type="text"
size="small" size="small"
@click.stop="true" @click.stop="true"
:disabled="scope.$index == selectedIndex || scope.row.id == null" :disabled="scope.$index == selectedIndex || scope.row.id == null"
@click.native="deleteLevel(scope.$index, scope.row)" @click.native="deleteLevel(scope.$index, scope.row)"
>删除 >删除
</el-button> </el-button>
</template> </template>
@ -221,25 +221,25 @@
<el-col :span="11" class="el-col"> <el-col :span="11" class="el-col">
<el-form-item label="药品价格:" prop="price"> <el-form-item label="药品价格:" prop="price">
<el-input <el-input
style="width: 90%" style="width: 90%"
size="small" size="small"
placeholder="请输入药品价格" placeholder="请输入药品价格"
type="number" type="number"
:precision="2" :precision="2"
:min="0" :min="0"
v-model.number="newProductData.price" v-model.number="newProductData.price"
></el-input> ></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="11" class="el-col"> <el-col :span="11" class="el-col">
<el-form-item label="有效期:" prop="indate"> <el-form-item label="有效期:" prop="indate">
<el-date-picker <el-date-picker
style="width: 90%" style="width: 90%"
v-model="newProductData.indate" v-model="newProductData.indate"
type="datetime" type="datetime"
format="yyyy 年 MM 月 dd 日 HH 点 mm 分 ss 秒" format="yyyy 年 MM 月 dd 日 HH 点 mm 分 ss 秒"
value-format="yyyy-MM-dd HH:mm:ss" value-format="yyyy-MM-dd HH:mm:ss"
placeholder="选择有效期" placeholder="选择有效期"
> >
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
@ -282,12 +282,12 @@
<el-col :span="11"> <el-col :span="11">
<el-form-item label="收费项目编码:"> <el-form-item label="收费项目编码:">
<el-input <el-input
style="width: 65%" style="width: 65%"
size="small" size="small"
placeholder="选择项目收费编码" placeholder="选择项目收费编码"
v-model="newProductData.payFeeCode" v-model="newProductData.payFeeCode"
></el-input> ></el-input>
<el-button type="primary" size="mini" style="margin-left: 10px" @click="selectPayFeecode"></el-button> <el-button type="primary" size="mini" style="margin-left: 10px" @click="selectPayFeecode"></el-button>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="11"> <el-col :span="11">
@ -313,7 +313,7 @@
<el-collapse-item name="3"> <el-collapse-item name="3">
<template slot="title"> <template slot="title">
<p class="form-title">参数设置</p> <p class="form-title">流通使用参数设置</p>
</template> </template>
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="11" class="el-col"> <el-col :span="11" class="el-col">
@ -323,10 +323,10 @@
clearable clearable
placeholder="请选择流通计量层级标识"> placeholder="请选择流通计量层级标识">
<el-option <el-option
v-for="item in detailList" v-for="item in detailList"
:key="item.nameCode" :key="item.nameCode"
:value="item.nameCode" :value="item.nameCode"
:label="item.nameCode"> :label="item.nameCode">
<span style="float: left">{{ item.nameCode }}</span> <span style="float: left">{{ item.nameCode }}</span>
<span style="float: right; color: #8492a6; font-size: 13px">{{ item.packLevel }}</span> <span style="float: right; color: #8492a6; font-size: 13px">{{ item.packLevel }}</span>
</el-option> </el-option>
@ -340,10 +340,10 @@
clearable clearable
placeholder="请选择流通计量层级标识"> placeholder="请选择流通计量层级标识">
<el-option <el-option
v-for="item in detailList" v-for="item in detailList"
:key="item.nameCode" :key="item.nameCode"
:value="item.nameCode" :value="item.nameCode"
:label="item.nameCode"> :label="item.nameCode">
<span style="float: left">{{ item.nameCode }}</span> <span style="float: left">{{ item.nameCode }}</span>
<span style="float: right; color: #8492a6; font-size: 13px">{{ item.packLevel }}</span> <span style="float: right; color: #8492a6; font-size: 13px">{{ item.packLevel }}</span>
</el-option> </el-option>
@ -407,9 +407,9 @@
<el-divider direction="vertical"></el-divider> <el-divider direction="vertical"></el-divider>
<el-col :span="11" class="el-col"> <el-col :span="11" class="el-col">
<el-switch <el-switch
v-model="status" v-model="status"
active-color="#13ce66" active-color="#13ce66"
inactive-color="#ff4949" inactive-color="#ff4949"
> >
</el-switch> </el-switch>
</el-col> </el-col>
@ -423,23 +423,23 @@
</el-form> </el-form>
<div style="text-align: center; margin-top: 20px;"> <div style="text-align: center; margin-top: 20px;">
<el-button type="primary" @click="saveNewProduct" :loading="saveLoading">提交</el-button> <el-button type="primary" @click="saveNewProduct" :loading="saveLoading">提交</el-button>
<el-button @click="closeAddDialog"></el-button> <el-button @click="closeAddDialog"></el-button>
</div> </div>
<el-dialog <el-dialog
title="收费项目选入" title="收费项目选入"
:visible.sync="tollProjectDialogVisible" :visible.sync="tollProjectDialogVisible"
:close-on-click-modal="false" :close-on-click-modal="false"
:close-on-press-escape="false" :close-on-press-escape="false"
width="70%" width="70%"
v-if="tollProjectDialogVisible" v-if="tollProjectDialogVisible"
append-to-body append-to-body
> >
<!--<product-single-edit--> <!--<product-single-edit-->
<!-- :editQuery="editSingleFormat"--> <!-- :editQuery="editSingleFormat"-->
<!--&gt;</product-single-edit>--> <!--&gt;</product-single-edit>-->
<selectChargesProjectDialog <selectChargesProjectDialog
:getData="getData" :getData="getData"
> >
</selectChargesProjectDialog> </selectChargesProjectDialog>
<!--<div style="text-align: center;margin-top: 12px">--> <!--<div style="text-align: center;margin-top: 12px">-->
@ -511,7 +511,8 @@ export default {
useLeverCount: null, useLeverCount: null,
distributeLevelCount: null, distributeLevelCount: null,
useLevelUnit: null, useLevelUnit: null,
distributeLevel: null,
useLevel: null,
}, },
thirdSys: [], thirdSys: [],
classifyList: [], classifyList: [],
@ -575,14 +576,14 @@ export default {
key: key key: key
} }
filterClassify(query) filterClassify(query)
.then(response => { .then(response => {
this.loading = false this.loading = false
this.classifyList = response.data.list || [] this.classifyList = response.data.list || []
}) })
.catch(() => { .catch(() => {
this.loading = false this.loading = false
this.classifyList = [] this.classifyList = []
}) })
}, },
getYbHcData() { getYbHcData() {
let query = { let query = {
@ -633,8 +634,8 @@ export default {
for (let i = 0; i < this.detailList.length; i++) { for (let i = 0; i < this.detailList.length; i++) {
const item = this.detailList[i]; const item = this.detailList[i];
if (!validateItem(item, 'nameCode', '药品层级标识不能为空!') || if (!validateItem(item, 'nameCode', '药品层级标识不能为空!') ||
!validateItem(item, 'packLevel', '包装级别不能为空') || !validateItem(item, 'packLevel', '包装级别不能为空') ||
!validateItem(item, 'packUnit', '层级单位不能为空')) { !validateItem(item, 'packUnit', '层级单位不能为空')) {
return; return;
} }
} }
@ -769,14 +770,14 @@ export default {
id: this.newProductData.id id: this.newProductData.id
} }
filterByUuid(query) filterByUuid(query)
.then((response) => { .then((response) => {
this.loading = false; this.loading = false;
this.detailList = response.data || []; this.detailList = response.data || [];
}) })
.catch(() => { .catch(() => {
this.loading = false; this.loading = false;
this.detailList = []; this.detailList = [];
}); });
} }
}, },
@ -784,6 +785,7 @@ export default {
const matchingItem = this.detailList.find(item => item.nameCode == val); const matchingItem = this.detailList.find(item => item.nameCode == val);
if (matchingItem) { if (matchingItem) {
this.newProductData.distributeLevelUnit = matchingItem.packUnit; this.newProductData.distributeLevelUnit = matchingItem.packUnit;
this.newProductData.distributeLevel = matchingItem.packLevel
} }
calculateDistCount(matchingItem).then((res) => { calculateDistCount(matchingItem).then((res) => {
this.newProductData = { this.newProductData = {
@ -798,6 +800,7 @@ export default {
const matchingItem = this.detailList.find(item => item.nameCode == val); const matchingItem = this.detailList.find(item => item.nameCode == val);
if (matchingItem) { if (matchingItem) {
this.newProductData.useLevelUnit = matchingItem.packUnit; this.newProductData.useLevelUnit = matchingItem.packUnit;
this.newProductData.useLevel = matchingItem.packLevel;
} }
calculateUseCount(matchingItem).then((res) => { calculateUseCount(matchingItem).then((res) => {
this.newProductData = { this.newProductData = {
@ -809,11 +812,11 @@ export default {
/** /**
* 选择收费项目 * 选择收费项目
*/ */
selectPayFeecode(){ selectPayFeecode() {
this.tollProjectDialogVisible = true this.tollProjectDialogVisible = true
}, },
getData(data){ getData(data) {
this.tollProjectDialogVisible = false this.tollProjectDialogVisible = false
this.newProductData.payFeeCode = data.medCatalogCode this.newProductData.payFeeCode = data.medCatalogCode
} }

@ -104,27 +104,28 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6" > <el-col :span="6">
<el-form-item prop="busType" class="query-form-item" label="单据类型:"> <el-form-item prop="busType" class="query-form-item" label="业务类型:">
<el-select v-model="formData.busType" <el-select v-model="formData.busType"
filterable filterable
remote remote
@change="busTypeChange"
reserve-keyword reserve-keyword
placeholder="请选择单据类型" clearable style="width: 90%"> placeholder="请选择业务类型" clearable style="width: 90%">
<el-option <el-option
v-for="item in busTypeList" v-for="item in busTypeList"
:key="item.code" :key="item.documentTypeCode"
:label="item.name" :label="item.busName"
:value="item.code" :value="item.documentTypeCode"
> >
<span style="float: left">{{ item.name }}</span> <span style="float: left">{{ item.busName }}</span>
<span style="float: right; color: #8492a6; font-size: 13px">{{ item.code }}</span> <span style="float: right; color: #8492a6; font-size: 13px">{{ item.documentTypeCode }}</span>
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6" v-if="this.formDataVisible != null && this.formDataVisible.operationType == 1"> <el-col :span="6" v-if="this.formDataVisible != null && this.formDataVisible.scanType == 1">
<el-form-item class="query-form-item" :label="this.formDataVisible.unitTittle + ':'"> <el-form-item class="query-form-item" :label="this.formDataVisible.unitTittle + ':'">
<el-select v-model="formData.fromCorp" <el-select v-model="formData.fromCorp"
filterable filterable
@ -258,8 +259,6 @@
</el-dialog> </el-dialog>
<el-dialog <el-dialog
title="选择作业单据类型" title="选择作业单据类型"
:visible.sync="selectBusTypeDisabled" :visible.sync="selectBusTypeDisabled"
@ -270,17 +269,20 @@
width="65%" width="65%"
append-to-body append-to-body
> >
<el-row > <el-row>
<!-- <el-button v-for="(item, index) in busTypeList" :key="index" type="primary" plain @click="selectBusType(item.code)">{{ item.name }}</el-button>--> <!-- <el-button v-for="(item, index) in busTypeList" :key="index" type="primary" plain @click="selectBusType(item.code)">{{ item.name }}</el-button>-->
<el-col v-for="(info, index) in busTypeList" :key="index" :xs="12" :sm="8" :md="8" :lg="6"> <el-col v-for="(info, index) in busTypeList" :key="index" :xs="12" :sm="8" :md="8" :lg="6">
<el-card :body-style="{margin:'20px'}" <el-card :body-style="{margin:'20px'}"
style="margin:20px 20px 20px 20px;height: 200px;background-color: #e1f3fb;border-radius: 12px; position: relative;" style="margin:20px 20px 20px 20px;height: 200px;background-color: #e1f3fb;border-radius: 12px; position: relative;"
> >
<div style="display: flex; justify-content: space-between; align-items: center; height: 66px; /* 约为 200px 的 1/3 */" @click="selectBusType(info.code)" > <div
<p style="font-size: 20px;background-color: #e1f3fb;font-weight: bold;">{{ info.name }}</p> <!-- 假设你的信息对象中包含一个title属性 --> style="display: flex; justify-content: space-between; align-items: center; height: 66px; /* 约为 200px 的 1/3 */"
@click="selectBusType(info.code)">
<p style="font-size: 20px;background-color: #e1f3fb;font-weight: bold;">{{ info.name }}</p>
<!-- 假设你的信息对象中包含一个title属性 -->
<!-- <div style="width: 60px; height: 60px; display: flex; justify-content: center; align-items: center;">--> <!-- <div style="width: 60px; height: 60px; display: flex; justify-content: center; align-items: center;">-->
<!-- &lt;!&ndash; 二维码占位这里用灰色方块代替 &ndash;&gt;--> <!-- &lt;!&ndash; 二维码占位这里用灰色方块代替 &ndash;&gt;-->
<!--&lt;!&ndash; <span>QR</span>&ndash;&gt;--> <!--&lt;!&ndash; <span>QR</span>&ndash;&gt;-->
@ -288,22 +290,23 @@
<!-- </div>--> <!-- </div>-->
</div> </div>
<div style="flex: 1; display: flex; flex-direction: column; justify-content: flex-end; padding-top: 10px;" @click="selectBusType(info.code)"> <div style="flex: 1; display: flex; flex-direction: column; justify-content: flex-end; padding-top: 10px;"
@click="selectBusType(info.code)">
<!-- 假设这里有一些信息内容 --> <!-- 假设这里有一些信息内容 -->
<p style="font-size: 14px;background-color: #e1f3fb">{{ info.code }}</p> <p style="font-size: 14px;background-color: #e1f3fb">{{ info.code }}</p>
<el-button type="primary" style="position: absolute; bottom: 20px; right: 20px;" icon="el-icon-thumb" @click="selectBusType(info.code)"></el-button> <el-button type="primary" style="position: absolute; bottom: 20px; right: 20px;" icon="el-icon-thumb"
@click="selectBusType(info.code)">开始作业
</el-button>
</div> </div>
</el-card> </el-card>
</el-col> </el-col>
</el-row> </el-row>
</el-dialog> </el-dialog>
</el-form> </el-form>
</div> </div>
</template> </template>
@ -325,7 +328,7 @@ import {selectCorpList} from "@/api/basic/basicUnitMaintain";
import {delDrugLevel} from "@/api/basic/product/drugUdiinfos"; import {delDrugLevel} from "@/api/basic/product/drugUdiinfos";
import {getCurOrder, getNextOrder} from "@/api/collect/collectOrder"; import {getCurOrder, getNextOrder} from "@/api/collect/collectOrder";
import PanelOrderAllDetail from "@/views/collect/PanelOrderAllDetail"; import PanelOrderAllDetail from "@/views/collect/PanelOrderAllDetail";
import { getWorkBindBusTypes,removeBusTypeById } from '@/api/basic/workPlace/sysWorkplaceDocuments' import {getWorkBindBusTypes, removeBusTypeById} from '@/api/basic/workPlace/sysWorkplaceDocuments'
export default { export default {
/** /**
@ -355,7 +358,7 @@ export default {
total: 0, total: 0,
defaultSort: {prop: 'createTime', order: 'desc'}, defaultSort: {prop: 'createTime', order: 'desc'},
formDataVisible: { formDataVisible: {
operationType: null, scanType: null,
unitTittle: "往来单位", unitTittle: "往来单位",
corpType: 1, corpType: 1,
}, },
@ -413,8 +416,7 @@ export default {
PanelOrderAllDetail PanelOrderAllDetail
}, },
methods: { methods: {
selectBusType(val){ selectBusType(val) {
this.formData.busType = val this.formData.busType = val
this.selectBusTypeDisabled = false this.selectBusTypeDisabled = false
if (this.formData.workPlaceCode != null) { if (this.formData.workPlaceCode != null) {
@ -428,8 +430,14 @@ export default {
this.busTypeList = res.data.list this.busTypeList = res.data.list
this.busTypeTotal = res.data.total this.busTypeTotal = res.data.total
if (this.busTypeList.length == 1) { if (this.busTypeList.length == 1) {
this.formData.busType = this.busTypeList[0].code
let busType = this.busTypeList[0]
this.formData.busType = this.busTypeList[0].documentTypeCode
this.selectBusTypeDisabled = false this.selectBusTypeDisabled = false
this.formDataVisible = busType
if (this.formDataVisible.scanType == 1) {
this.findFromInvList("");
}
this.findCurOrder(); this.findCurOrder();
} else { } else {
this.formData.busType = null this.formData.busType = null
@ -450,17 +458,21 @@ export default {
}); });
}, },
workPlaceCodeChange(value) { workPlaceCodeChange(value) {
this.curWorkPlaces.forEach(item => {
if (item.workplaceId == value) {
this.formDataVisible = item
}
})
this.getWorkBindBusTypes(value) this.getWorkBindBusTypes(value)
if (this.formDataVisible.operationType == 1) { return
},
busTypeChange(value) {
let busType = this.busTypeList.find(item => item.documentTypeCode === value);
this.formData.busType = busType.documentTypeCode
this.selectBusTypeDisabled = false
this.formDataVisible = busType
if (this.formDataVisible.scanType == 1) {
this.findFromInvList(""); this.findFromInvList("");
} }
return this.findCurOrder();
}, },
handleClick(blankName) { handleClick(blankName) {
// let url = window.location.origin+`#/tagCodeBlank?workplaceId=`+ this.stationList[index].workplaceId // let url = window.location.origin+`#/tagCodeBlank?workplaceId=`+ this.stationList[index].workplaceId
let url = window.location.origin + `#/` + blankName + `?workplaceId=` + this.workplaceId let url = window.location.origin + `#/` + blankName + `?workplaceId=` + this.workplaceId
@ -606,7 +618,8 @@ export default {
fromCorp: this.formData.fromCorp, fromCorp: this.formData.fromCorp,
billNo: this.formData.billNo, billNo: this.formData.billNo,
code: this.filterQuery.code.trim(), code: this.filterQuery.code.trim(),
insert: this.formData.insert insert: this.formData.insert,
busType: this.formData.busType,
}; };
tagCode(tagQuery).then(res => { tagCode(tagQuery).then(res => {
this.loading = false this.loading = false

Loading…
Cancel
Save