dev
This commit is contained in:
parent
38d8aa9090
commit
2a6e0dcdcd
|
|
@ -6,9 +6,18 @@ let _width = ref(0);
|
||||||
let _height = ref(0);
|
let _height = ref(0);
|
||||||
let _isShow = ref(false);
|
let _isShow = ref(false);
|
||||||
let _close = ref(true);
|
let _close = ref(true);
|
||||||
const {width, height, isShow, title, close} = defineProps(['width', 'height', 'isShow', 'title', 'close']);
|
let _showFooter = ref(false);
|
||||||
|
const {
|
||||||
|
width,
|
||||||
|
height,
|
||||||
|
isShow,
|
||||||
|
title,
|
||||||
|
close,
|
||||||
|
showFooter
|
||||||
|
} = defineProps(['width', 'height', 'isShow', 'title', 'close', 'showFooter']);
|
||||||
|
|
||||||
_isShow.value = isShow == null ? false : isShow;
|
_isShow.value = isShow == null ? false : isShow;
|
||||||
|
_showFooter.value = showFooter == null ? false : showFooter;
|
||||||
_width.value = width == null ? 1200 : width;
|
_width.value = width == null ? 1200 : width;
|
||||||
_height.value = height == null ? 800 : height;
|
_height.value = height == null ? 800 : height;
|
||||||
_close.value = close == null ? true : close;
|
_close.value = close == null ? true : close;
|
||||||
|
|
@ -29,17 +38,22 @@ const closeBtn = () => {
|
||||||
<transition name="el-fade-in">
|
<transition name="el-fade-in">
|
||||||
<div class="mask" v-if="_isShow">
|
<div class="mask" v-if="_isShow">
|
||||||
<div class="mask-wrapper" :style="{ width: _width + 'px', height: _height + 'px' }" v-if="_isShow">
|
<div class="mask-wrapper" :style="{ width: _width + 'px', height: _height + 'px' }" v-if="_isShow">
|
||||||
<el-scrollbar height="100%">
|
<div class="header">
|
||||||
<div class="header">
|
<div class="title">{{ title }}</div>
|
||||||
<div class="title">{{ title }}</div>
|
<div class="close" @click="closeBtn" v-if="_close">
|
||||||
<div class="close" @click="closeBtn" v-if="_close">
|
<el-icon class="close-icon">
|
||||||
<el-icon>
|
<CloseBold/>
|
||||||
<CloseBold/>
|
</el-icon>
|
||||||
</el-icon>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
<slot></slot>
|
</div>
|
||||||
</el-scrollbar>
|
<div class="content" >
|
||||||
|
<el-scrollbar style="height:100%;margin-top: 0">
|
||||||
|
<slot></slot>
|
||||||
|
</el-scrollbar>
|
||||||
|
</div>
|
||||||
|
<div class="footer" v-if="_showFooter">
|
||||||
|
<slot name="footer"></slot>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</transition>
|
</transition>
|
||||||
|
|
@ -61,44 +75,59 @@ const closeBtn = () => {
|
||||||
align-items: center;
|
align-items: center;
|
||||||
|
|
||||||
.mask-wrapper {
|
.mask-wrapper {
|
||||||
position: relative;
|
|
||||||
background-color: #FFF;
|
background-color: #FFF;
|
||||||
border-radius: 6px;
|
border-radius: 6px;
|
||||||
padding: 0 20px 20px 20px;
|
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
max-height: 90vh;
|
max-height: 90vh;
|
||||||
z-index: 1999;
|
z-index: 1999;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
|
||||||
.header {
|
.header {
|
||||||
position: relative;
|
|
||||||
height: 72px;
|
height: 72px;
|
||||||
padding: 0 4px;
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
padding: 0 24px;
|
||||||
border-bottom: 1px solid #EAEAEC;
|
border-bottom: 1px solid #EAEAEC;
|
||||||
|
align-items: center;
|
||||||
|
|
||||||
.title {
|
.title {
|
||||||
position: absolute;
|
|
||||||
top: 50%;
|
|
||||||
left: 0;
|
|
||||||
font-weight: 800;
|
font-weight: 800;
|
||||||
font-size: 20px;
|
font-size: 20px;
|
||||||
color: #333333;
|
color: #333333;
|
||||||
font-style: normal;
|
font-style: normal;
|
||||||
transform: translateY(-50%);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.close {
|
.close {
|
||||||
position: absolute;
|
width: 32px;
|
||||||
top: 50%;
|
height: 32px;
|
||||||
right: 0;
|
background: #EBECED;
|
||||||
color: #6e6e6e;
|
border-radius: 16px;
|
||||||
font-size: 32px;
|
line-height: 32px;
|
||||||
transform: translateY(-50%);
|
text-align: center;
|
||||||
|
|
||||||
|
.close-icon {
|
||||||
|
color: #6e6e6e;
|
||||||
|
font-size: 12px;
|
||||||
|
}
|
||||||
|
|
||||||
&:hover {
|
&:hover {
|
||||||
color: #409eff;
|
color: #409eff;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.content {
|
||||||
|
flex: 1;
|
||||||
|
min-height: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.footer {
|
||||||
|
height: 86px;
|
||||||
|
background: #FFFFFF;
|
||||||
|
border-top: 1px solid #EAEAEC;
|
||||||
|
border-radius: 0 0 8px 8px;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|
|
||||||
|
|
@ -1,158 +1,162 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="edit-panel" v-loading="isLoading" element-loading-text="正在保存......">
|
<Mask :width="1200" :top="100" :is-show="isShow" @close="exit"
|
||||||
<div class="top">
|
title="新增" :height="760" :show-footer="true">
|
||||||
<el-form :model="inventory_order_data" label-position="top" :rules="formRules" ref="orderForm">
|
<div class="add-panel" v-loading="isLoading" element-loading-text="正在保存......">
|
||||||
<el-row>
|
<div class="top">
|
||||||
<el-col :span="6">
|
<el-form :model="inventory_order_data" label-position="top" :rules="formRules" ref="orderForm">
|
||||||
<el-form-item label="订单编号">
|
<el-row>
|
||||||
<div style="width: 234px;">
|
<el-col :span="6">
|
||||||
{{ inventory_order_data.code != null ? inventory_order_data.code : "创建后自动生成" }}
|
<el-form-item label="订单编号">
|
||||||
</div>
|
<div style="width: 234px;">
|
||||||
</el-form-item>
|
{{ inventory_order_data.code != null ? inventory_order_data.code : "创建后自动生成" }}
|
||||||
</el-col>
|
</div>
|
||||||
<el-col :span="6">
|
</el-form-item>
|
||||||
<el-form-item label="采购人">
|
</el-col>
|
||||||
<el-input style="width: 234px;" disabled v-model="userInfo.name"></el-input>
|
<el-col :span="6">
|
||||||
</el-form-item>
|
<el-form-item label="采购人">
|
||||||
</el-col>
|
<el-input style="width: 234px;" disabled v-model="userInfo.name"></el-input>
|
||||||
<el-col :span="6">
|
</el-form-item>
|
||||||
<el-form-item prop="purchaseDate" label="采购日期" :rules="formRules.purchaseDate">
|
</el-col>
|
||||||
<el-date-picker
|
<el-col :span="6">
|
||||||
v-model="inventory_order_data.purchaseDate"
|
<el-form-item prop="purchaseDate" label="采购日期" :rules="formRules.purchaseDate">
|
||||||
type="date"
|
<el-date-picker
|
||||||
placeholder="选择一个创建日期"
|
v-model="inventory_order_data.purchaseDate"
|
||||||
size="default"
|
type="date"
|
||||||
style="width: 234px;"
|
placeholder="选择一个创建日期"
|
||||||
/>
|
size="default"
|
||||||
</el-form-item>
|
style="width: 234px;"
|
||||||
</el-col>
|
|
||||||
<el-col :span="6">
|
|
||||||
<el-form-item prop="shippingCode" label="货单号" :rules="formRules.shippingCode">
|
|
||||||
<el-input v-model="inventory_order_data.shippingCode"></el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
</el-row>
|
|
||||||
<el-row>
|
|
||||||
<el-col :span="6">
|
|
||||||
<el-form-item prop="invoiceCode" label="发票号">
|
|
||||||
<el-input style="width: 234px;" v-model="inventory_order_data.invoiceCode"></el-input>
|
|
||||||
</el-form-item>
|
|
||||||
</el-col>
|
|
||||||
<el-col :span="6">
|
|
||||||
<el-form-item prop="supplierId" label="供应商" :rules="formRules.supplierId">
|
|
||||||
<el-select style="width: 234px;" v-model="inventory_order_data.supplierId" placeholder="请选择供应商">
|
|
||||||
<el-option
|
|
||||||
v-for="item in supplier_list"
|
|
||||||
:key="item.id"
|
|
||||||
:label="item.name"
|
|
||||||
:value="item.id"
|
|
||||||
/>
|
/>
|
||||||
</el-select>
|
</el-form-item>
|
||||||
</el-form-item>
|
</el-col>
|
||||||
</el-col>
|
<el-col :span="6">
|
||||||
<el-col :span="12">
|
<el-form-item prop="shippingCode" label="货单号" :rules="formRules.shippingCode">
|
||||||
<el-form-item label="备注" :rules="formRules.purchaseDate">
|
<el-input v-model="inventory_order_data.shippingCode"></el-input>
|
||||||
<el-input v-model="inventory_order_data.remark"/>
|
</el-form-item>
|
||||||
</el-form-item>
|
</el-col>
|
||||||
</el-col>
|
</el-row>
|
||||||
</el-row>
|
<el-row>
|
||||||
</el-form>
|
<el-col :span="6">
|
||||||
|
<el-form-item prop="invoiceCode" label="发票号">
|
||||||
|
<el-input style="width: 234px;" v-model="inventory_order_data.invoiceCode"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="6">
|
||||||
|
<el-form-item prop="supplierId" label="供应商" :rules="formRules.supplierId">
|
||||||
|
<el-select style="width: 234px;" v-model="inventory_order_data.supplierId" placeholder="请选择供应商">
|
||||||
|
<el-option
|
||||||
|
v-for="item in supplier_list"
|
||||||
|
:key="item.id"
|
||||||
|
:label="item.name"
|
||||||
|
:value="item.id"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="12">
|
||||||
|
<el-form-item label="备注" :rules="formRules.purchaseDate">
|
||||||
|
<el-input v-model="inventory_order_data.remark"/>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
</el-form>
|
||||||
|
</div>
|
||||||
|
<div class="table_content">
|
||||||
|
<div class="add_goods">
|
||||||
|
<span>添加商品</span>
|
||||||
|
<div class="search">
|
||||||
|
<GoodsSearch @selectCallBack="goodsSelectCallBack"></GoodsSearch>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<el-table :data="table_list" style="width: 100%;flex: 1">
|
||||||
|
<el-table-column prop="name" label="药品名称" width="180" show-overflow-tooltip/>
|
||||||
|
<el-table-column label="售价" prop="unitPrice" width="80">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="单位" prop="packagingUnit" width="80">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="数量" width="110">
|
||||||
|
<template #default="scope">
|
||||||
|
<el-input-number
|
||||||
|
v-model="scope.row.wholeNumber"
|
||||||
|
:min="1"
|
||||||
|
size="small"
|
||||||
|
controls-position="right"
|
||||||
|
style="width: 80px"
|
||||||
|
@change="getTotalPrice"
|
||||||
|
/>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="进价" width="110">
|
||||||
|
<template #default="scope">
|
||||||
|
<el-input-number
|
||||||
|
v-model="scope.row.purchaseUnitPrice"
|
||||||
|
:min="1"
|
||||||
|
size="small"
|
||||||
|
controls-position="right"
|
||||||
|
style="width: 80px"
|
||||||
|
@change="getTotalPrice"
|
||||||
|
/>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="生产批号" width="150">
|
||||||
|
<template #default="scope">
|
||||||
|
<el-input
|
||||||
|
v-model="scope.row.productionBatchCode"
|
||||||
|
placeholder="生产批号"
|
||||||
|
style="width: 100px"
|
||||||
|
size="small"/>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="生产日期" width="140">
|
||||||
|
<template #default="scope">
|
||||||
|
<el-date-picker
|
||||||
|
:editable="false"
|
||||||
|
v-model="scope.row.productionDate"
|
||||||
|
type="date"
|
||||||
|
value-format="YYYY-MM-DD"
|
||||||
|
placeholder="生产日期"
|
||||||
|
size="small"
|
||||||
|
@change="checkProductionDate(scope.row)"
|
||||||
|
style="width: 100px;"/>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="有效日期" width="140">
|
||||||
|
<template #default="scope">
|
||||||
|
<el-date-picker
|
||||||
|
:editable="false"
|
||||||
|
v-model="scope.row.expiryDate"
|
||||||
|
type="date"
|
||||||
|
value-format="YYYY-MM-DD"
|
||||||
|
placeholder="有效日期"
|
||||||
|
size="small" style="width: 100px;"/>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="操作" width="100">
|
||||||
|
<template #default="scope">
|
||||||
|
<el-button size="small" @click="removeTableRow(scope.row)" type="danger" plain>移除</el-button>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
</el-table>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="table_content">
|
<template #footer>
|
||||||
<div class="add_goods">
|
<div class="bottom">
|
||||||
<span>添加商品</span>
|
<div class="totalPrice">
|
||||||
<div class="search">
|
订单总金额:<span style="color: #FF282E;font-size: 12px">¥</span><span
|
||||||
<GoodsSearch @selectCallBack="goodsSelectCallBack"></GoodsSearch>
|
style="color: #FF282E">{{ inventory_order_data.totalPrice.toFixed(2) }}</span>
|
||||||
|
</div>
|
||||||
|
<div class="btn">
|
||||||
|
<el-button type="primary" @click="confirm">确认</el-button>
|
||||||
|
<el-button type="primary" @click="exit">关闭</el-button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<el-table :data="table_list" style="width: 100%" height="300" max-height="550">
|
</template>
|
||||||
<el-table-column prop="name" label="药品名称" width="180" show-overflow-tooltip/>
|
|
||||||
<el-table-column label="售价" prop="unitPrice" width="80">
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="单位" prop="packagingUnit" width="80">
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="数量" width="110">
|
|
||||||
<template #default="scope">
|
|
||||||
<el-input-number
|
|
||||||
v-model="scope.row.wholeNumber"
|
|
||||||
:min="1"
|
|
||||||
size="small"
|
|
||||||
controls-position="right"
|
|
||||||
style="width: 80px"
|
|
||||||
@change="getTotalPrice"
|
|
||||||
/>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="进价" width="110">
|
|
||||||
<template #default="scope">
|
|
||||||
<el-input-number
|
|
||||||
v-model="scope.row.purchaseUnitPrice"
|
|
||||||
:min="1"
|
|
||||||
size="small"
|
|
||||||
controls-position="right"
|
|
||||||
style="width: 80px"
|
|
||||||
@change="getTotalPrice"
|
|
||||||
/>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="生产批号" width="150">
|
|
||||||
<template #default="scope">
|
|
||||||
<el-input
|
|
||||||
v-model="scope.row.productionBatchCode"
|
|
||||||
placeholder="生产批号"
|
|
||||||
style="width: 100px"
|
|
||||||
size="small"/>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="生产日期" width="140">
|
|
||||||
<template #default="scope">
|
|
||||||
<el-date-picker
|
|
||||||
:editable="false"
|
|
||||||
v-model="scope.row.productionDate"
|
|
||||||
type="date"
|
|
||||||
value-format="YYYY-MM-DD"
|
|
||||||
placeholder="生产日期"
|
|
||||||
size="small"
|
|
||||||
@change="checkProductionDate(scope.row)"
|
|
||||||
style="width: 100px;"/>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="有效日期" width="140">
|
|
||||||
<template #default="scope">
|
|
||||||
<el-date-picker
|
|
||||||
:editable="false"
|
|
||||||
v-model="scope.row.expiryDate"
|
|
||||||
type="date"
|
|
||||||
value-format="YYYY-MM-DD"
|
|
||||||
placeholder="有效日期"
|
|
||||||
size="small" style="width: 100px;"/>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column label="操作" width="100">
|
|
||||||
<template #default="scope">
|
|
||||||
<el-button size="small" @click="removeTableRow(scope.row)" type="danger" plain>移除</el-button>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
|
|
||||||
</el-table>
|
|
||||||
</div>
|
|
||||||
<div class="bottom">
|
|
||||||
<div class="totalPrice">
|
|
||||||
订单总金额:<span style="color: #FF282E;font-size: 12px">¥</span><span style="color: #FF282E">{{ inventory_order_data.totalPrice.toFixed(2) }}</span>
|
|
||||||
</div>
|
|
||||||
<div class="btn">
|
|
||||||
<el-button type="primary" @click="confirm">确认</el-button>
|
|
||||||
<el-button type="primary" @click="exit">关闭</el-button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<Mask :is-show="is_add" :top="100">
|
|
||||||
<Edit ref="editRef" @close="is_add = false;"/>
|
|
||||||
</Mask>
|
</Mask>
|
||||||
|
<!-- <Mask :is-show="is_add" :top="100">-->
|
||||||
|
<!-- <Edit ref="editRef" @close="is_add = false;"/>-->
|
||||||
|
<!-- </Mask>-->
|
||||||
|
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
|
@ -230,6 +234,21 @@ const getTotalPrice = () => {
|
||||||
}
|
}
|
||||||
const emit = defineEmits(['close'])
|
const emit = defineEmits(['close'])
|
||||||
let exit = () => {
|
let exit = () => {
|
||||||
|
isShow.value = false
|
||||||
|
inventory_order_data.value = {
|
||||||
|
code: null,
|
||||||
|
purchaseDate: getFormattedDate(),
|
||||||
|
userId: null,
|
||||||
|
supplierId: null,
|
||||||
|
remark: null,
|
||||||
|
managerUserId: null,
|
||||||
|
kindConut: 0,
|
||||||
|
totalPrice: 0,
|
||||||
|
shippingCode: null,
|
||||||
|
invoiceCode: null,
|
||||||
|
inventoryOrderGoodsList: []
|
||||||
|
}
|
||||||
|
table_list.value = []
|
||||||
emit('close')
|
emit('close')
|
||||||
}
|
}
|
||||||
const table_list: any = ref([])
|
const table_list: any = ref([])
|
||||||
|
|
@ -272,10 +291,10 @@ let confirm = async () => {
|
||||||
inventoryOrder: JSON.parse(JSON.stringify(inventory_order_data.value)),
|
inventoryOrder: JSON.parse(JSON.stringify(inventory_order_data.value)),
|
||||||
inventoryOrderGoodsList: JSON.parse(JSON.stringify(table_list.value))
|
inventoryOrderGoodsList: JSON.parse(JSON.stringify(table_list.value))
|
||||||
}
|
}
|
||||||
|
isLoading.value = true
|
||||||
post("inventory/order/create", data).then((res: any) => {
|
post("inventory/order/create", data).then((res: any) => {
|
||||||
|
isLoading.value = false
|
||||||
exit()
|
exit()
|
||||||
isLoading.value = true
|
|
||||||
})
|
})
|
||||||
|
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
|
|
@ -304,7 +323,7 @@ const removeItem = (row: any) => {
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
const is_add = ref(false)
|
const isShow = ref(false)
|
||||||
const editRef = ref<InstanceType<typeof Edit>>();
|
const editRef = ref<InstanceType<typeof Edit>>();
|
||||||
const supplier_list: any = ref([])
|
const supplier_list: any = ref([])
|
||||||
const getSupplierList = () => {
|
const getSupplierList = () => {
|
||||||
|
|
@ -313,14 +332,9 @@ const getSupplierList = () => {
|
||||||
}
|
}
|
||||||
post("inventory/supplier/list", {query: query}).then((res: any) => {
|
post("inventory/supplier/list", {query: query}).then((res: any) => {
|
||||||
supplier_list.value = res.list
|
supplier_list.value = res.list
|
||||||
supplier_list.value = res.list
|
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
const userInfo = ref({
|
const userInfo = ref<any>({})
|
||||||
id: null,
|
|
||||||
name: null,
|
|
||||||
username: null,
|
|
||||||
})
|
|
||||||
const getUserInfo = () => {
|
const getUserInfo = () => {
|
||||||
post("manager/user/verify", null).then((res: any) => {
|
post("manager/user/verify", null).then((res: any) => {
|
||||||
userInfo.value = res
|
userInfo.value = res
|
||||||
|
|
@ -333,10 +347,12 @@ const removeTableRow = (row: any) => {
|
||||||
table_list.value.splice(index, 1);
|
table_list.value.splice(index, 1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
onMounted(() => {
|
const init = () => {
|
||||||
|
isShow.value = true
|
||||||
getSupplierList()
|
getSupplierList()
|
||||||
getUserInfo()
|
getUserInfo()
|
||||||
})
|
}
|
||||||
|
defineExpose({init})
|
||||||
</script>
|
</script>
|
||||||
<style scoped lang="scss">
|
<style scoped lang="scss">
|
||||||
.link {
|
.link {
|
||||||
|
|
@ -378,8 +394,42 @@ onMounted(() => {
|
||||||
background-color: red;
|
background-color: red;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.add-panel {
|
||||||
|
height: 602px;
|
||||||
|
padding: 24px 24px 0;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
|
||||||
|
.top {
|
||||||
|
height: 180px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.table_content {
|
||||||
|
flex: 1;
|
||||||
|
margin-top: 24px;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
|
||||||
|
.add_goods {
|
||||||
|
height: 90px;
|
||||||
|
display: flex;
|
||||||
|
justify-content: space-between;
|
||||||
|
align-items: center;
|
||||||
|
font-weight: 800;
|
||||||
|
font-size: 18px;
|
||||||
|
color: #333333;
|
||||||
|
font-style: normal;
|
||||||
|
|
||||||
|
.search {
|
||||||
|
width: 50%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
.bottom {
|
.bottom {
|
||||||
height: 86px;
|
padding: 0 24px;
|
||||||
|
height: 100%;
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
|
|
@ -387,30 +437,10 @@ onMounted(() => {
|
||||||
font-size: 22px;
|
font-size: 22px;
|
||||||
color: #333333;
|
color: #333333;
|
||||||
font-style: normal;
|
font-style: normal;
|
||||||
background: #fff;
|
|
||||||
box-shadow: 0px -2 4px 0px rgba(0,0,0,0.1);
|
|
||||||
border-radius: 0 0 8px 8px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.error {
|
.error {
|
||||||
background-color: #F00;
|
background-color: #F00;
|
||||||
}
|
}
|
||||||
.edit-panel{
|
|
||||||
margin-top: 24px;
|
|
||||||
}
|
|
||||||
.table_content{
|
|
||||||
margin-top: 24px;
|
|
||||||
.add_goods{
|
|
||||||
display: flex;
|
|
||||||
justify-content: space-between;
|
|
||||||
align-items: center;
|
|
||||||
font-weight: 800;
|
|
||||||
font-size: 18px;
|
|
||||||
color: #333333;
|
|
||||||
font-style: normal;
|
|
||||||
.search{
|
|
||||||
width: 50%;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</style>
|
</style>
|
||||||
|
|
@ -205,7 +205,7 @@ import CloseBtn from "@/components/CloseBtn.vue";
|
||||||
let props = defineProps({
|
let props = defineProps({
|
||||||
code: {
|
code: {
|
||||||
type: String,
|
type: String,
|
||||||
default: null
|
default: ""
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
const isLoading = ref(false)
|
const isLoading = ref(false)
|
||||||
|
|
|
||||||
|
|
@ -34,6 +34,18 @@
|
||||||
>
|
>
|
||||||
{{ formatDate(decryptedText.expiryDate) }}
|
{{ formatDate(decryptedText.expiryDate) }}
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
|
<el-descriptions-item
|
||||||
|
align="center"
|
||||||
|
label="权限"
|
||||||
|
>
|
||||||
|
{{ decryptedText.rule == 1 ? "禁用医保" : decryptedText.rule == 2 ? "全部开放" : "" }}
|
||||||
|
</el-descriptions-item>
|
||||||
|
<el-descriptions-item
|
||||||
|
align="center"
|
||||||
|
label="定点机构编码"
|
||||||
|
>
|
||||||
|
{{ decryptedText.fixmedinsCode}}
|
||||||
|
</el-descriptions-item>
|
||||||
</el-descriptions>
|
</el-descriptions>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
@ -65,7 +77,8 @@ onMounted(async () => {
|
||||||
</script>
|
</script>
|
||||||
<style scoped lang="scss">
|
<style scoped lang="scss">
|
||||||
.auth {
|
.auth {
|
||||||
margin: 0 auto;
|
margin: 24px auto;
|
||||||
|
padding: 0 24px;
|
||||||
|
|
||||||
.btn {
|
.btn {
|
||||||
margin: 24px 0;
|
margin: 24px 0;
|
||||||
|
|
|
||||||
|
|
@ -132,7 +132,7 @@ const showAuth = () => {
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<Mask :is-show="isShowAuth" @close="isShowAuth=false" :width="600" :height="450" title="授权">
|
<Mask :is-show="isShowAuth" @close="isShowAuth=false" :width="600" :height="500" title="授权">
|
||||||
<Auth></Auth>
|
<Auth></Auth>
|
||||||
</Mask>
|
</Mask>
|
||||||
</template>
|
</template>
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@
|
||||||
<div class="container-wrapper">
|
<div class="container-wrapper">
|
||||||
<div class="top">
|
<div class="top">
|
||||||
<el-dropdown>
|
<el-dropdown>
|
||||||
<el-button type="primary" :icon="Plus" @click="is_add = true">新增采购</el-button>
|
<el-button type="primary" :icon="Plus" @click="openAdd">新增采购</el-button>
|
||||||
</el-dropdown>
|
</el-dropdown>
|
||||||
</div>
|
</div>
|
||||||
<div class="content_list">
|
<div class="content_list">
|
||||||
|
|
@ -46,11 +46,8 @@
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<Mask v-if="!open_code" :width="1200" :top="100" :is-show="is_add" @close="closeAddOrder"
|
<AddOrder ref="addOrderRef" @close="closeAddOrder"/>
|
||||||
title="新增" :height="760">
|
<Mask :width="1200" :top="100" :is-show="is_edit" @close="closeEditOrder"
|
||||||
<AddOrder @close="closeAddOrder"/>
|
|
||||||
</Mask>
|
|
||||||
<Mask v-else :width="1200" :top="100" :is-show="is_edit" @close="closeEditOrder"
|
|
||||||
title="编辑" :height="720">
|
title="编辑" :height="720">
|
||||||
<EditOrder :code="open_code" @close="closeEditOrder" @updateOrderDetail="init"/>
|
<EditOrder :code="open_code" @close="closeEditOrder" @updateOrderDetail="init"/>
|
||||||
</Mask>
|
</Mask>
|
||||||
|
|
@ -58,7 +55,7 @@
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
import {onMounted, ref, watch} from "vue";
|
import {nextTick, onMounted, ref, watch} from "vue";
|
||||||
import {post} from "@/utils/request.ts";
|
import {post} from "@/utils/request.ts";
|
||||||
import {useRoute} from "vue-router";
|
import {useRoute} from "vue-router";
|
||||||
import AddOrder from "@/components/inventory/purchase/AddOrder.vue";
|
import AddOrder from "@/components/inventory/purchase/AddOrder.vue";
|
||||||
|
|
@ -67,13 +64,18 @@ import EditOrder from "@/components/inventory/purchase/EditOrder.vue";
|
||||||
import {Plus} from "@element-plus/icons-vue";
|
import {Plus} from "@element-plus/icons-vue";
|
||||||
|
|
||||||
let tableData = ref([])
|
let tableData = ref([])
|
||||||
let is_add = ref(false)
|
|
||||||
let is_edit = ref(false)
|
let is_edit = ref(false)
|
||||||
const route = useRoute()
|
const route = useRoute()
|
||||||
let open_code = ref(null)
|
let open_code = ref(null)
|
||||||
onMounted(() => {
|
onMounted(() => {
|
||||||
init()
|
init()
|
||||||
})
|
})
|
||||||
|
const addOrderRef = ref<any>('')
|
||||||
|
const openAdd = () => {
|
||||||
|
nextTick(() => {
|
||||||
|
addOrderRef.value.init()
|
||||||
|
})
|
||||||
|
}
|
||||||
let open_edit = (row: any) => {
|
let open_edit = (row: any) => {
|
||||||
is_edit.value = true
|
is_edit.value = true
|
||||||
open_code.value = row.code
|
open_code.value = row.code
|
||||||
|
|
@ -91,7 +93,6 @@ let init = () => {
|
||||||
|
|
||||||
}
|
}
|
||||||
const closeAddOrder = () => {
|
const closeAddOrder = () => {
|
||||||
is_add.value = false
|
|
||||||
init()
|
init()
|
||||||
}
|
}
|
||||||
const closeEditOrder = () => {
|
const closeEditOrder = () => {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue