Compare commits

..

2 Commits

Author SHA1 Message Date
LiJianZhao fa22f2934b dev 2025-05-07 16:05:09 +08:00
LiJianZhao f303c58767 dev 2025-05-07 16:03:44 +08:00
5 changed files with 95 additions and 87 deletions

View File

@ -1,23 +1,23 @@
<template> <template>
<el-input
ref="inputRef"
style="width: 100%;height: 100%"
v-model="keyword"
:prefix-icon="Plus"
:placeholder="props.placeholder"
clearable
@input="changeInput"
class="no-border-input"
:disabled="disabled"
@focus="focus"
@click="changeInput"
>
> <el-popover placement="bottom-start" :visible="isVisible" width="40%" ref="popoverRef"
</el-input>
<el-popover placement="bottom-start" trigger="click" :width="props.width" ref="popoverRef" :virtual-ref="inputRef"
:trigger-keys="[]"> :trigger-keys="[]">
<template #reference>
<el-input
ref="inputRef"
v-model="keyword"
:prefix-icon="Plus"
:placeholder="props.placeholder"
style="width: 100%"
clearable
@input="changeInput"
class="no-border-input"
:disabled="disabled"
@focus="focus"
@blur="handlerBlur"
@click="changeInput"
/>
</template>
<div class="container"> <div class="container">
<el-table <el-table
:data="searchList" style="width: 100%" :data="searchList" style="width: 100%"
@ -34,9 +34,11 @@
</el-table> </el-table>
</div> </div>
</el-popover> </el-popover>
</template> </template>
<script setup lang="ts">import {ref, unref} from "vue"; <script setup lang="ts">
import {ref, unref} from "vue";
import {post} from "@/utils/request.ts"; import {post} from "@/utils/request.ts";
import {Plus} from "@element-plus/icons-vue"; import {Plus} from "@element-plus/icons-vue";
@ -102,10 +104,15 @@ const beforeShow = () => {
popoverRef.value.hide(); popoverRef.value.hide();
} }
}; };
const isVisible =ref(false)
const focus=()=>{ const focus=()=>{
isVisible.value=true
console.log( "focus输入框")
emit('focus',true) emit('focus',true)
} }
const handlerBlur = () => {
isVisible.value = false
}
</script> </script>
<style scoped lang="scss"> <style scoped lang="scss">

View File

@ -19,7 +19,7 @@ const editItem= () => {
<Panel :showTools="false" :showHeader="false"> <Panel :showTools="false" :showHeader="false">
<div class="footer"> <div class="footer">
<div>总金额<span class="text icon"></span><span class="text">{{ totalAmount || '0' }}</span></div> <div>总金额<span class="text icon"></span><span class="text">{{ totalAmount || '0' }}</span></div>
<div class="btn-group"> <div class="btn-group" v-if="status == 0">
<el-button type="primary" disabled>追溯码</el-button> <el-button type="primary" disabled>追溯码</el-button>
<el-button type="primary" @click="editItem">收费</el-button> <el-button type="primary" @click="editItem">收费</el-button>
</div> </div>

View File

@ -60,7 +60,8 @@ const changeInput = (inputStr: string) => {
if (!props.requestApi || props.requestApi === "") { if (!props.requestApi || props.requestApi === "") {
return return
} }
let tempList = inputStr.split(","); debugger
let tempList = keyword.value.split(",");
let searchKeyword = tempList[tempList.length - 1]; let searchKeyword = tempList[tempList.length - 1];
nameList.value = [] nameList.value = []
selectList.value = selectList.value ? selectList.value.slice(0, tempList.length) : [] selectList.value = selectList.value ? selectList.value.slice(0, tempList.length) : []

View File

@ -1,72 +1,72 @@
<template> <template>
<Panel :title="'药品耗材'"> <Panel :title="'药品耗材'">
<div class="content"> <div class="content">
<!-- <div class="list">--> <div class="list">
<!-- <ul>--> <ul>
<!-- <li class="item" v-for="(item, index) in list" :key="index">--> <li class="item" v-for="(item, index) in list" :key="index">
<!-- <div class="index">{{ index + 1 }}</div>--> <div class="index">{{ index + 1 }}</div>
<!-- <div class="name">--> <div class="name">
<!-- <el-popover--> <el-popover
<!-- placement="top-start"--> placement="top-start"
<!-- trigger="hover"--> trigger="hover"
<!-- width="500"--> width="500"
<!-- @show="getHilistInfo(item)"--> @show="getHilistInfo(item)"
<!-- @hide="colosInfo"--> @hide="colosInfo"
<!-- >--> >
<!-- <template #reference>--> <template #reference>
<!-- {{ item.name }}--> {{ item.name }}
<!-- </template>--> </template>
<!-- <div class="detail">--> <div class="detail">
<!-- <div style="display: flex;justify-content: space-between">--> <div style="display: flex;justify-content: space-between">
<!-- <div style="font-size: 18px;font-weight: 500;color: #000">{{ hilistInfo.name }}[{{ hilistInfo.json?.category||'-' }}]</div>--> <div style="font-size: 18px;font-weight: 500;color: #000">{{ hilistInfo.name }}[{{ hilistInfo.json?.category||'-' }}]</div>
<!-- <div>{{ item.selectedPrice }}/{{ item.selectedUnit }}</div>--> <div>{{ item.selectedPrice }}/{{ item.selectedUnit }}</div>
<!-- </div>--> </div>
<!-- <div style="display: flex;justify-content: space-between">--> <div style="display: flex;justify-content: space-between">
<!-- <div>规格:{{hilistInfo.json?.dosage_specifications||'-'}}</div>--> <div>规格:{{hilistInfo.json?.dosage_specifications||'-'}}</div>
<!-- <div>生产厂商:{{hilistInfo.json?.producer||'-'}}</div>--> <div>生产厂商:{{hilistInfo.json?.producer||'-'}}</div>
<!-- <div>限价:{{hilistInfo.json?.stock||'0'}}</div>--> <div>限价:{{hilistInfo.json?.stock||'0'}}</div>
<!-- </div>--> </div>
<!-- <div style="display: flex;justify-content: space-between">--> <div style="display: flex;justify-content: space-between">
<!-- <div>批准文号:{{hilistInfo.json?.approval_number||'-'}}</div>--> <div>批准文号:{{hilistInfo.json?.approval_number||'-'}}</div>
<!-- <div>本位码:{{hilistInfo.json?.standard_code ||'-'}}</div>--> <div>本位码:{{hilistInfo.json?.standard_code ||'-'}}</div>
<!-- </div>--> </div>
<!-- <div style="display: flex;justify-content: space-between">--> <div style="display: flex;justify-content: space-between">
<!-- <div>限价:{{ hilistInfo.hilistPricUplmtAmt ? hilistInfo.hilistPricUplmtAmt : '无' }}</div>--> <div>限价:{{ hilistInfo.hilistPricUplmtAmt ? hilistInfo.hilistPricUplmtAmt : '无' }}</div>
<!-- <div>限价类型:{{ hilistInfo.hilistLmtpricType ? hilistInfo.hilistLmtpricType : '无' }}</div>--> <div>限价类型:{{ hilistInfo.hilistLmtpricType ? hilistInfo.hilistLmtpricType : '无' }}</div>
<!-- </div>--> </div>
<!-- </div>--> </div>
<!-- </el-popover>--> </el-popover>
<!-- </div>--> </div>
<!-- <div class="price">{{ item.selectedPrice || '0' }}</div>--> <div class="price">{{ item.selectedPrice || '0' }}</div>
<!-- <div class="unit">--> <div class="unit">
<!-- <div class="unit-content">--> <div class="unit-content">
<!-- <el-input-number v-model="item.selectedNum" min="1" size="small"></el-input-number>--> <el-input-number v-model="item.selectedNum" min="1" size="small"></el-input-number>
<!-- <el-dropdown>--> <el-dropdown>
<!-- <span style="line-height: 30px;margin-left: 10px">{{ item.selectedUnit }}</span>--> <span style="line-height: 30px;margin-left: 10px">{{ item.selectedUnit }}</span>
<!-- <template #dropdown>--> <template #dropdown>
<!-- <el-dropdown-menu v-if="item.trdnFlag == 1">--> <el-dropdown-menu v-if="item.trdnFlag == 1">
<!-- <el-dropdown-item @click="selectUnit(item,item.packagingUnit)">{{ item.packagingUnit }}--> <el-dropdown-item @click="selectUnit(item,item.packagingUnit)">{{ item.packagingUnit }}
<!-- </el-dropdown-item>--> </el-dropdown-item>
<!-- <el-dropdown-item @click="selectUnit(item,item.minPackagingUnit)">{{ item.minPackagingUnit }}--> <el-dropdown-item @click="selectUnit(item,item.minPackagingUnit)">{{ item.minPackagingUnit }}
<!-- </el-dropdown-item>--> </el-dropdown-item>
<!-- </el-dropdown-menu>--> </el-dropdown-menu>
<!-- </template>--> </template>
<!-- </el-dropdown>--> </el-dropdown>
<!-- </div>--> </div>
<!-- </div>--> </div>
<!-- <div class="sub-price">{{ item.unitPrice * item.selectedNum }}</div>--> <div class="sub-price">{{ item.unitPrice * item.selectedNum }}</div>
<!-- <div class="delete">--> <div class="delete">
<!-- <div @click="deleteItem(item.id)" class="delete-btn">--> <div @click="deleteItem(item.id)" class="delete-btn">
<!-- <el-icon>--> <el-icon>
<!-- <Close/>--> <Close/>
<!-- </el-icon>--> </el-icon>
<!-- </div>--> </div>
<!-- </div>--> </div>
<!-- </li>--> </li>
<!-- </ul>--> </ul>
<!-- </div>--> </div>
<div class="search"> <div class="search">
<div class="search-input"> <div class="search-input">
<SearchInput <SearchInput

View File

@ -51,8 +51,8 @@
<GoodsDetail v-model="formData" @totalPriceChange="getOrderTotalPrice"></GoodsDetail> <GoodsDetail v-model="formData" @totalPriceChange="getOrderTotalPrice"></GoodsDetail>
</Panel> </Panel>
</div> </div>
<div class="bottom" v-if="formData.status == 0"> <div class="bottom" >
<TotalPrice v-model="formData.totalPrice" @edit="saveAndCharge" ></TotalPrice> <TotalPrice v-model="formData.totalPrice" @edit="saveAndCharge" :status="formData.status" ></TotalPrice>
</div> </div>
</el-scrollbar> </el-scrollbar>
</div> </div>