Compare commits

...

3 Commits

Author SHA1 Message Date
杜函宇 e98d558676 优化
2 years ago
杜函宇 e764c12f0e 优化
2 years ago
杜函宇 5905dc1d06 化妆品
2 years ago

@ -5,6 +5,7 @@
</template> </template>
<script> <script>
import { Message } from "element-ui";
export default { export default {
name: "App", name: "App",
metaInfo() { metaInfo() {
@ -20,31 +21,29 @@ export default {
}; };
}, },
mounted() { mounted() {
setTimeout(async () => { //
let Authentication = await this.$api.login.frimLogin(); var queryString = window.location.search;
localStorage.setItem( // URLSearchParams
"Authentication", var params = new URLSearchParams(queryString);
Authentication.data.result.userToken // JSON
); var obj = {};
}, 25200000); // JSON
//! -permission request params.forEach(function (value, key) {
/* //
/static/ var decodedValue = decodeURIComponent(value);
/usr/share/nginx/html/ggfw obj[key] = decodedValue;
});
sudo mv ggfw.zip /usr/share/nginx/html/ggfw MSSM-Dev 文件夹下 移动压缩包到 ggfw文件夹下 if (obj.token) {
localStorage.setItem("MSSM-LIAONING__TOKEN", obj.token);
cd /usr/share/nginx/html/ggfw 移动到文件夹下 } else {
this.$alert("暂无token",'提示', {
unzip ggfw.zip -d . 解压 confirmButtonText: "返回",
callback: (action) => {
rm ./ggfw.zip 删除当前目录下的压缩包 弹出确定删除 y 并回车 this.$router.go(-1);
},
*/ });
/* }
this.$store.commit("app/URLChange", obj);
*/
}, },
}; };
</script> </script>
@ -53,6 +52,7 @@ export default {
width: 0 !important; width: 0 !important;
} }
::-webkit-scrollbar { ::-webkit-scrollbar {
width: 0 !important;height: 0; width: 0 !important;
height: 0;
} }
</style> </style>

@ -0,0 +1,45 @@
import request from "@/utils/request";
export default {
//根据备案号查询单条国产化妆品数据
getChina1(e) {
return request({
url: `/pharmaceuticals/gccp/${e}`,
method: "get",
})
},
//通过注册证号查询单条国产特殊化妆品
getChinaSpecial(e) {
return request({
url: `pharmaceuticals/gctshzp/${e}`,
method: "get",
})
},
//根据备案号查询进口化妆品数据
getInlet(e) {
return request({
url: `/pharmaceuticals/jkcp/${e}`,
method: "get",
})
},
//通过注册证号查询单条进口特殊化妆品数据
getInletSpecial(e) {
return request({
url: `/pharmaceuticals/jktshzp/${e}`,
method: "get",
})
},
//通过批准文号查询单条药品批件信息
getYaoPin(e){
return request({
url: `/pharmaceuticals/vRdgYpwhGxwz/${e}`,
method: "get",
})
},
//通过注册证编号查询单条器械品种数据
getQiXie(e){
return request({
url: `/pharmaceuticals/ylqxJnyelcp/${e}`,
method: "get",
})
}
}

@ -1,6 +1,9 @@
// 召回 // 召回
import frimCenter from "./Myapi/frimCenter/index.js"; import frimCenter from "./Myapi/frimCenter/index.js";
import cosmetics from './cosmetics/index.js'
import yaoPin from './yaoPin/index.js'
export default { export default {
frimCenter, frimCenter,
cosmetics,
yaoPin
}; };

@ -0,0 +1,26 @@
import request from "@/utils/request";
export default {
//分页条件查询国家药品抽检数据-抽样信息表
getYPList(query) {
return request({
url: `/pharmaceuticals/gjypcjsjCyxxb`,
method: "get",
params:query
})
},
//通过主键查询单条国家药品抽检数据-抽样信息表
getSingle(id){
return request({
url: `/pharmaceuticals/gjypcjsjCyxxb/${id}`,
method: "get",
})
},
//分页条件查询国家药品抽检数据-检验项目表
jyList(query){
return request({
url: `/pharmaceuticals/gjypcjsjJyxmb`,
method: "get",
params:query
})
}
}

@ -1,113 +1,127 @@
<template> <template>
<div :class="{'hidden':hidden}" class="pagination-container"> <div :class="{ hidden: hidden }" class="paginBox">
<el-pagination <div class="leftBox">
:background="background" 总共{{ this.total }} :显示{{
:current-page.sync="currentPage" this.currentPage == 1 ? "1" : (this.currentPage - 1) * this.pageSize
:page-size.sync="pageSize" }}-{{
:layout="layout" this.total <= this.pageSize
:page-sizes="pageSizes" ? this.total
:pager-count="pagerCount" : this.currentPage * this.pageSize > this.total
:total="total" ? this.total
v-bind="$attrs" : this.currentPage * this.pageSize
@size-change="handleSizeChange" }}
@current-change="handleCurrentChange" </div>
/> <div class="rightBox">
<el-pagination
:background="background"
:current-page.sync="currentPage"
:page-size.sync="pageSize"
:layout="layout"
:page-sizes="pageSizes"
:total="total"
v-bind="$attrs"
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
/>
</div>
</div> </div>
</template> </template>
<script> <script>
import { scrollTo } from '@/utils/scroll-to' import { scrollTo } from "@/utils/scroll-to";
export default { export default {
name: 'Pagination', name: "Pagination",
props: { props: {
total: { total: {
required: true, required: true,
type: Number type: Number,
}, },
page: { page: {
type: Number, type: Number,
default: 1 default: 1,
}, },
limit: { limit: {
type: Number, type: Number,
default: 20 default: 20,
}, },
pageSizes: { pageSizes: {
type: Array, type: Array,
default() { default() {
return [10, 20, 30, 50] return [5,10,20];
} },
}, },
// 5 // 5
pagerCount: { // pagerCount: {
type: Number, // type: Number,
default: document.body.clientWidth < 992 ? 5 : 7 // default: document.body.clientWidth < 992 ? 5 : 7
}, // },
layout: { layout: {
type: String, type: String,
default: 'total, sizes, prev, pager, next, jumper' default: " sizes, prev, pager, next, jumper",
}, },
background: { background: {
type: Boolean, type: Boolean,
default: true default: true,
}, },
autoScroll: { autoScroll: {
type: Boolean, type: Boolean,
default: true default: true,
}, },
hidden: { hidden: {
type: Boolean, type: Boolean,
default: false default: false,
} },
}, },
data() { data() {
return { return {};
};
}, },
computed: { computed: {
currentPage: { currentPage: {
get() { get() {
return this.page return this.page;
}, },
set(val) { set(val) {
this.$emit('update:page', val) this.$emit("update:page", val);
} },
}, },
pageSize: { pageSize: {
get() { get() {
return this.limit return this.limit;
}, },
set(val) { set(val) {
this.$emit('update:limit', val) this.$emit("update:limit", val);
} },
} },
}, },
methods: { methods: {
handleSizeChange(val) { handleSizeChange(val) {
if (this.currentPage * val > this.total) { if (this.currentPage * val > this.total) {
this.currentPage = 1 this.currentPage = 1;
} }
this.$emit('pagination', { page: this.currentPage, limit: val }) this.$emit("pagination", { page: this.currentPage, limit: val });
if (this.autoScroll) { if (this.autoScroll) {
scrollTo(0, 800) scrollTo(0, 800);
} }
}, },
handleCurrentChange(val) { handleCurrentChange(val) {
this.$emit('pagination', { page: val, limit: this.pageSize }) this.$emit("pagination", { page: val, limit: this.pageSize });
if (this.autoScroll) { if (this.autoScroll) {
scrollTo(0, 800) scrollTo(0, 800);
} }
} },
} },
} };
</script> </script>
<style scoped> <style scoped>
.pagination-container { .paginBox {
background: #fff; display: flex;
padding: 32px 16px; justify-content: space-between;
align-items: center;
padding: 15px 20px;
} }
.pagination-container.hidden { .pagination-container.hidden {
display: none; display: none;
} }

@ -13,125 +13,18 @@ NProgress.configure({ showSpinner: false });
const whiteList = ["/login", "/register"]; const whiteList = ["/login", "/register"];
router.beforeEach(async (to, from, next) => { router.beforeEach(async (to, from, next) => {
if (to.name) NProgress.start(); let token = localStorage.getItem('MSSM-LIAONING__TOKEN')
// 这个判断是不行的,暂时先这样 if (token) {
// if(!localStorage.getItem("Authentication")) { next()
// let Authentication = await API.login.frimLogin();
// localStorage.setItem("Authentication", Authentication.data.result.userToken);
// let data = {
// "corpName": "",
// "uniscid": "", // 社会信用代码
// "location": "",
// "enterpriseStatusId": "",
// "licenseCode": "",
// "type": [],
// "startDate": "",
// "endDate": "",
// "pageNum": 5, //5
// "pageSize": 10
// }
// let info = await API.frimCenter.getEnterpriseLicenseByPage(data);
// localStorage.setItem('frimCenterInfo',JSON.stringify(info.result.list[7])) //6
// }
let obj = {
entCode: "91320594MA1YXGLG8L", // 社会信用代码
// entCode: "91211000055695073L",
entName: "苏州极创澜海科技有限公司",
idsextcorpAuth: "1",
idsextcreditID: "+f9KOHgG8vZ3SWg63fqKieE/7WaZUYR1",
idsextcreditType: "",
idsextjbrCreditID: "4xZNBCCEs1hSmqymq7jfZuE/7WaZUYR1",
idsextjbrtel: "/7AvIbKF3hhrYDZYpevYTQ==",
idsextrelNameAuth: "",
mobile: "",
relPerson: "韩斌斌",
score: "2",
token: "sso_username:60800920",
trueName: "吴顺杰",
userId: "60800920",
userName: "suzhoujichuang",
};
localStorage.setItem("loginName", JSON.stringify(obj));
localStorage.setItem("Ls-Token", obj.token);
if (localStorage.getItem("loginName")) {
// TODO 这里是临时的登录
if (
!localStorage.getItem("Authentication") ||
!localStorage.getItem("Ls-Token")
) {
Cookies.set("logTime", Date.now());
// 现在token还没改所以要登录一下那token
//
let Authentication = await API.login.frimLogin();
localStorage.setItem(
"Authentication",
Authentication.data.result.userToken
);
// localStorage.setItem(
// "Authentication",
// localStorage.getItem("MSSM-LIAONING__TOKEN")
// );
let data = {
corpName: "",
uniscid: JSON.parse(localStorage.getItem("loginName")).entCode, // 社会信用代码
location: "",
enterpriseStatusId: "",
licenseCode: "",
type: [],
startDate: "",
endDate: "",
pageNum: 1,
pageSize: 10,
};
let info = await API.frimCenter.getEnterpriseLicenseByPage(data);
localStorage.setItem(
"frimCenterInfo",
JSON.stringify(info.result.list[0])
); //6
// 请求头区分登录--不是正式token
localStorage.setItem(
"Ls-Token",
JSON.parse(localStorage.getItem("loginName")).token
);
}
next();
} else { } else {
localStorage.setItem("Login_index", "0"); this.$alert("暂无token",'提示', {
const queryString = window.location.search; // 获取完整查询字符串,例如 "?name=John&age=30" confirmButtonText: "返回",
if (queryString == "" || queryString == undefined || queryString == null) { callback: (action) => {
// !本地使用 this.$router.go(-1);
// let hrefa = process.env.VUE_APP_DAN_Dian; },
// location.href = "https://dev-mssm-liaoning.imian.org.cn/ggfw-api/pharmaceuticals/singleSignOn/getSessionId";
// !外地使用
location.href = `${location.origin}${process.env.VUE_APP_URL}/pharmaceuticals/singleSignOn/getSessionId`;
}
const url = location.href;
const regex = /sessionId=([^#]+)/;
const matchResult = url.match(regex);
const queryStringtow = matchResult[1];
// router.history.pending.query["sessionId"],
let result = await API.Zhaohui.getUserIfo({
sessionId: queryStringtow,
}); });
if (result.code == 200) {
localStorage.setItem("loginName", JSON.stringify(result.data));
// let text = location.href;
// location.href = text.split("?")[0];
}
} }
})
if (to.path.split("/")[1] == "dw") {
next();
}
if (to.path.split("/")[1] == "no-top") {
next();
}
});
router.afterEach(() => { router.afterEach(() => {
NProgress.done(); NProgress.done();
}); });

@ -7,10 +7,15 @@ const state = {
hide: false hide: false
}, },
device: 'desktop', device: 'desktop',
size: Cookies.get('size') || 'medium' size: Cookies.get('size') || 'medium',
//存储的传递的数据
urlA:'',
} }
const mutations = { const mutations = {
URLChange : (state, B) => {
state.urlA = B
},
TOGGLE_SIDEBAR: state => { TOGGLE_SIDEBAR: state => {
if (state.sidebar.hide) { if (state.sidebar.hide) {
return false; return false;

@ -34,8 +34,7 @@ service.interceptors.request.use(
// 是否需要防止数据重复提交 // 是否需要防止数据重复提交
const isRepeatSubmit = (config.headers || {}).repeatSubmit === false; const isRepeatSubmit = (config.headers || {}).repeatSubmit === false;
if (isToken) { if (isToken) {
config.headers["Authentication"] = localStorage.getItem("Authentication"); config.headers["Authentication"] = localStorage.getItem("MSSM-LIAONING__TOKEN");
config.headers["token"] = localStorage.getItem("Ls-Token"); //企业端
} }
// get请求映射params参数 // get请求映射params参数
if (config.method === "get" && config.params) { if (config.method === "get" && config.params) {
@ -84,7 +83,6 @@ service.interceptors.request.use(
return config; return config;
}, },
(error) => { (error) => {
console.log(error);
Promise.reject(error); Promise.reject(error);
} }
); );
@ -104,7 +102,6 @@ service.interceptors.response.use(
) { ) {
return res.data; return res.data;
} }
console.log("454545", code);
if (code === 401) { if (code === 401) {
if (!isRelogin.show) { if (!isRelogin.show) {
isRelogin.show = true; isRelogin.show = true;

@ -11,7 +11,7 @@
<template slot="label"> <template slot="label">
{{ item.label }} {{ item.label }}
</template> </template>
{{ item.value }} {{ item.value || '-' }}
</el-descriptions-item> </el-descriptions-item>
</el-descriptions> </el-descriptions>
</div> </div>
@ -51,7 +51,11 @@ export default {
}, },
methods:{ methods:{
}, },
created() {
},
} }
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
@import "@/assets/styles/utils.scss"; @import "@/assets/styles/utils.scss";

@ -59,6 +59,9 @@ export default {
<style lang="scss" scoped> <style lang="scss" scoped>
@import "@/assets/styles/utils.scss"; @import "@/assets/styles/utils.scss";
::v-deep .el-dialog__body{
margin-bottom:10px;
}
.dialog-slot { .dialog-slot {
padding: 0; padding: 0;
.closeClick { .closeClick {

@ -0,0 +1,45 @@
<template>
<div>
<el-table :data="list" style="width: 100%" v-loading="loading" border>
<el-table-column type="index" label="序号" width="50">
</el-table-column>
<el-table-column
v-for="(item,index) in labels"
:key="index"
:prop="item.value"
header-align="center"
:width="item.width"
:label="item.header"
>
</el-table-column>
</el-table>
</div>
</template>
<script>
export default {
data() {
return {
};
},
props:{
list:{
type:Array,
default:[]
},
labels:{
type:Array,
default:[]
},
loading:{
type:Boolean,
default:false
}
},
methods: {
},
};
</script>
<style lang="scss" scoped>
</style>

@ -1,5 +1,31 @@
<template> <template>
<div class="pzChouyang"> <div class="pzChouyang">
<div class="drug-input">
<div class="inputs">
<div class="rank">
<div class="input--label">抽样级别</div>
<el-select v-model="value" placeholder="请选择抽样级别">
<el-option
v-for="item in options"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option>
</el-select>
</div>
<div class="number">
<div class="input--label">抽样编号</div>
<div>
<el-input v-model="name" :placeholder="'请输入抽样编号'"></el-input>
</div>
</div>
</div>
<div class="search-btns">
<button class="reset" @click="reset"></button>
<button class="inquire" @click="inquire()"></button>
</div>
</div>
<block-header title="查询结果"> <block-header title="查询结果">
<div class="tables"> <div class="tables">
<el-table <el-table
@ -10,32 +36,27 @@
border border
> >
<el-table-column <el-table-column
prop="id" type="index"
header-align="center" header-align="center"
label="序号" label="序号"
width="80" width="80"
> >
</el-table-column> </el-table-column>
<el-table-column <el-table-column prop="cyrw" header-align="center" label="抽样级别">
prop="rank" <!-- <template slot-scope="scope">
header-align="center" {{ filterLevel(scope.row.cyjb ) }}
label="抽样级别" </template> -->
>
</el-table-column> </el-table-column>
<el-table-column <el-table-column prop="cybh" label="抽样编号" header-align="center">
prop="number"
label="抽样编号"
header-align="center"
>
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="name" prop="yptymc"
label="药品通用名" label="药品通用名"
header-align="center" header-align="center"
> >
</el-table-column> </el-table-column>
<el-table-column <el-table-column
prop="unitName" prop="bcydwmc"
label="被抽样单位名称" label="被抽样单位名称"
header-align="center" header-align="center"
> >
@ -52,17 +73,9 @@
header-align="center" header-align="center"
> >
</el-table-column> </el-table-column>
<el-table-column <el-table-column prop="cyrq" label="抽样日期" header-align="center">
prop="date"
label="抽样日期"
header-align="center"
>
</el-table-column> </el-table-column>
<el-table-column <el-table-column label="操作" header-align="center" width="100">
label="操作"
header-align="center"
width="100"
>
<template slot-scope="scope"> <template slot-scope="scope">
<div class="button"> <div class="button">
<el-button <el-button
@ -70,158 +83,442 @@
class="informant-btn" class="informant-btn"
plain plain
type="primary" type="primary"
@click="handleEdit(scope.$index, scope.row)">详情 @click="handleEdit(scope.$index, scope.row)"
>详情
</el-button> </el-button>
</div> </div>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
</div> </div>
<div class="pagination" :class="transinformation.b == '1' ? 'paginationTwo':''"> <!-- <div
<!-- <span class="custom" class="pagination"
>{{ total }}显示{{ :class="transinformation.b == '1' ? 'paginationTwo' : ''"
total == 0 > -->
? "0" <pagination
: queryCondition.current == 1 v-show="total > 0"
? "1" :total="total"
: queryCondition.size * (queryCondition.current - 1) + 1 :page="form1.current"
}}-{{ numberMap() }}</span :limit="form1.size"
> --> @pagination="getPagination"
<span class="custom"> ></pagination>
共100条显示1-10 <!-- </div> -->
</span>
<el-pagination
background
:small="transinformation.b == '1'"
:page-sizes="[10, 15]"
:total="total"
layout=" prev, pager, next, sizes, jumper"
@current-change="currentChange"
@size-change="sizeChange"
:current-page.sync="currentPage"
:page-size.sync="pageSize"
>
</el-pagination>
</div>
</block-header> </block-header>
<!-- 国抽 --> <!-- 国抽 -->
<dialog-title title="详情" width="90%" ref="xiangqingDialog"> <dialog-title title="详情" width="90%" ref="xiangqingDialog">
<div class="dialog-tabs"> <div class="dialog-tabs">
<div class="tabs"> <div class="tabs">
<div class="tab" @click="actionTab(1)" :class="action == 1 ? 'actionTab':''"> <div
<img :class="action !== 1 ? 'actionImage' : ''" :src="action == 1 ? `${require('@/assets/images/home/icon1-1@2x.png')}`:`${require('@/assets/images/home/icon1-2@2x.png')}`" alt=""> class="tab"
@click="actionTab(1)"
:class="action == 1 ? 'actionTab' : ''"
>
<span>基本信息</span> <span>基本信息</span>
</div> </div>
<div class="tab" @click="actionTab(2)" :class="action == 2 ? 'actionTab':''"> <div
<img :src="action == 2 ? `${require('@/assets/images/home/icon2-1@2x.png')}`:`${require('@/assets/images/home/icon2-2@2x.png')}`" alt=""> class="tab"
<span>品种抽样</span> @click="actionTab(2)"
:class="action == 2 ? 'actionTab' : ''"
>
<span>检验项目</span>
</div> </div>
</div> </div>
</div> </div>
<component :is="currentComponent"></component> <component
:is="currentComponent"
:descriptions="descriptions"
:loading="load1"
></component>
</dialog-title> </dialog-title>
<!-- 省抽 --> <!-- 省抽 -->
<dialog-title title="查看抽样详情" :width="transinformation.b == '1' ? '65%':'90%'" ref="chouyangDialog"> <dialog-title
title="查看抽样详情"
:width="transinformation.b == '1' ? '65%' : '90%'"
ref="chouyangDialog"
>
<chouyang-info></chouyang-info> <chouyang-info></chouyang-info>
</dialog-title> </dialog-title>
<dialog-title title="详情" :width="transinformation.b == '1' ? '75%':'90%'" ref="medicalInfo"> <dialog-title
title="详情"
:width="transinformation.b == '1' ? '75%' : '90%'"
ref="medicalInfo"
>
<medical-info></medical-info> <medical-info></medical-info>
</dialog-title> </dialog-title>
<dialog-title title="详情" :width="transinformation.b == '1' ? '75%':'90%'" ref="drugDetail"> <dialog-title
title="详情"
:width="transinformation.b == '1' ? '75%' : '90%'"
ref="drugDetail"
>
<drug-detail></drug-detail> <drug-detail></drug-detail>
</dialog-title> </dialog-title>
<dialog-title title="详情" :width="transinformation.b == '1' ? '75%':'90%'" ref="drugProvince"> <dialog-title
title="详情"
:width="transinformation.b == '1' ? '75%' : '90%'"
ref="drugProvince"
>
<drug-province></drug-province> <drug-province></drug-province>
</dialog-title> </dialog-title>
<dialog-title title="详情" :width="transinformation.b == '1' ? '75%':'90%'" ref="samplingDetail"> <dialog-title
title="详情"
:width="transinformation.b == '1' ? '75%' : '90%'"
ref="samplingDetail"
>
<sampling-detail></sampling-detail> <sampling-detail></sampling-detail>
</dialog-title> </dialog-title>
</div> </div>
</template> </template>
<script> <script>
import blockHeader from "@/views/firmContent/components/blockHeader/index.vue" import blockHeader from "@/views/firmContent/components/blockHeader/index";
import dialogTitle from "@/views/firmContent/components/dialogTitle/index.vue" import dialogTitle from "@/views/firmContent/components/dialogTitle/index";
import basicInfo from "./basicInfo/basicInfo.vue" import basicInfo from "./basicInfo/basicInfo";
import chouYang from "./chouYang/chouYang.vue" import chouYang from "./chouYang/chouYang";
import chouyangInfo from "./chouyangInfo/index.vue" import chouyangInfo from "./chouyangInfo/index";
import medicalInfo from "./medical.vue" import medicalInfo from "./medical";
import samplingDetail from "./samplingDetail.vue" import samplingDetail from "./samplingDetail";
import drugDetail from "./drugDetail.vue" import drugDetail from "./drugDetail";
import drugProvince from "./drugProvince.vue" import drugProvince from "./drugProvince";
import { mapState } from "vuex";
export default { export default {
data() { data() {
return { return {
tableData:[ value: "",
{ name: "",
id:1, options: [
rank:'国抽', {
number:'YC20230619', value: 0,
name:'布洛芬胶囊', label: "国抽",
unitName:'xxxxxxx制药有限公司', },
unitAreaName:'沈阳', {
productionName:'xxxxxxx制药有限公司', value: 1,
date:'2023-06-19' label: "省抽",
},{ },
id:2,
rank:'省抽',
number:'YC20230619',
name:'布洛芬胶囊',
unitName:'xxxxxxx制药有限公司',
unitAreaName:'沈阳',
productionName:'xxxxxxx制药有限公司',
date:'2023-06-19'
},{
id:3,
rank:'国抽',
number:'YC20230619',
name:'布洛芬胶囊',
unitName:'xxxxxxx制药有限公司',
unitAreaName:'沈阳',
productionName:'xxxxxxx制药有限公司',
date:'2023-06-19'
},{
id:4,
rank:'省抽',
number:'YC20230619',
name:'布洛芬胶囊',
unitName:'xxxxxxx制药有限公司',
unitAreaName:'沈阳',
productionName:'xxxxxxx制药有限公司',
date:'2023-06-19'
},{
id:5,
rank:'国抽',
number:'YC20230619',
name:'布洛芬胶囊',
unitName:'xxxxxxx制药有限公司',
unitAreaName:'沈阳',
productionName:'xxxxxxx制药有限公司',
date:'2023-06-19'
},{
id:6,
rank:'省抽',
number:'YC20230619',
name:'布洛芬胶囊',
unitName:'xxxxxxx制药有限公司',
unitAreaName:'沈阳',
productionName:'xxxxxxx制药有限公司',
date:'2023-06-19'
}
], ],
loading:false, tableData: [],
action:1, loading: false,
currentComponent:'basicInfo', action: 1,
currentComponent: "basicInfo",
// pzChouyangStyle:{ // pzChouyangStyle:{
// height:'' // height:''
// } // }
currentPage:1, total: 0,
pageSize:10, //
total:100, form1: {
} size: 10,
current: 1,
//
cybh: "",
},
//
ids: "",
descriptions: [
{
span: 1,
label: "药品通用名称",
value: "",
data: "yptymc",
},
{
span: 1,
label: "药品商品名称",
value: "",
data: "ypspmc",
},
{
span: 1,
label: "药品批准文号",
value: "",
data: "yppzwh",
},
{
span: 1,
label: "药品类别",
value: "",
data: "yplb",
},
{
span: 1,
label: "药品上市许可持有人",
value: "",
data: "ypssxkcyr",
},
{
span: 1,
label: "药品上市许可持有人统一社会信用代码",
value: "",
data: "ypssxkcyrtyshxxdm",
},
{
span: 1,
label: "药品上市许可持有人地址",
value: "",
data: "ypssxkcyrdz",
},
{
span: 1,
label: "药品上市持有人所在省份",
value: "",
data: "ypssxkcyrszsf",
},
{
span: 1,
label: "剂型",
value: "",
data: "jx",
},
{
span: 1,
label: "制剂规格",
value: "",
data: "zjgg",
},
{
span: 1,
label: "包装规格",
value: "",
data: "bzgg",
},
{
span: 1,
label: "抽样编号",
value: "",
data: "cybh",
},
{
span: 1,
label: "抽样数量",
value: "",
data: "cysl",
},
{
span: 1,
label: "有效期",
value: "",
data: "xq",
},
{
span: 1,
label: "来源",
value: "",
data: "ly",
},
{
span: 1,
label: "抽样环节",
value: "",
data: "cyhj",
},
{
span: 1,
label: "批号",
value: "",
data: "ph",
},
{
span: 1,
label: "有效期截至日期",
value: "",
data: "yxqjzrq",
},
{
span: 1,
label: "被抽样单位统一社会信用代码",
value: "",
data: "bcydwshyxdm",
},
{
span: 1,
label: "被抽样单位名称",
value: "",
data: "bcydwmc",
},
{
span: 1,
label: "被抽样单位地址",
value: "",
data: "bcydwdz",
},
{
span: 1,
label: "抽样地点性质",
value: "",
data: "cyddxz",
},
{
span: 1,
label: "抽样单位名称全称",
value: "",
data: "cydwmc",
},
{
span: 1,
label: "抽样单位所在省份",
value: "",
data: "cydwszsf",
},
{
span: 1,
label: "药品单价",
value: "",
data: "ypdj",
},
{
span: 1,
label: "药品总价",
value: "",
data: "ypzj",
},
{
span: 1,
label: "生产日期",
value: "",
data: "scrq",
},
{
span: 1,
label: "样品存放现场温度",
value: "",
data: "ypcfxcwd",
},
{
span: 1,
label: "样品存放现场湿度",
value: "",
data: "ypcfxcsd",
},
{
span: 1,
label: "抽样日期",
value: "",
data: "cyrq",
},
{
span: 1,
label: "抽样级别",
value: "",
data: "cyjb",
},
{
span: 1,
label: "抽样单位经手人",
value: "",
data: "cydwjsr",
},
{
span: 1,
label: "承检机构",
value: "",
data: "cjjg",
},
{
span: 1,
label: "生产企业是否否认生产",
value: "",
data: "scqysffrsc",
},
{
span: 1,
label: "基本药物 ",
value: "",
data: "jbyw",
},
{
span: 1,
label: "抽样任务",
value: "",
data: "cyrw",
},
{
span: 1,
label: "最终检验结论",
value: "",
data: "zzjyjl",
},
{
span: 1,
label: "检验证书编号",
value: "",
data: "jybgsbh",
},
{
span: 1,
label: "报告签发日期",
value: "",
data: "bgqfrq",
},
{
span: 1,
label: "复检结论",
value: "",
data: "fjjl",
},
{
span: 1,
label: "复检检验依据",
value: "",
data: "fjjyyj",
},
{
span: 1,
label: "复检报告书编号",
value: "",
data: "fjbgsbh",
},
{
span: 1,
label: "复检报告签发日期",
value: "",
data: "fjbgqfrq",
},
{
span: 1,
label: "收样或退样日期",
value: "",
data: "syhtyrq",
},
{
span: 1,
label: "原检结论",
value: "",
data: "yjjl",
},
{
span: 1,
label: "补充检验结果",
value: "",
data: "bcjyjg",
},
{
span: 1,
label: "计划ID",
value: "",
data: "planId",
},
{
span: 1,
label: "计划名称",
value: "",
data: "planName",
},
{
span: 1,
label: "编辑时间",
value: "",
data: "bjsj",
},
{
span: 1,
label: "更新时间",
value: "",
data: "gxsj",
},
],
load1: true,
};
}, },
props:['transinformation'], props: ["transinformation"],
components:{ components: {
blockHeader, blockHeader,
dialogTitle, dialogTitle,
basicInfo, basicInfo,
@ -232,62 +529,154 @@ export default {
drugDetail, drugDetail,
drugProvince, drugProvince,
}, },
methods:{ computed: {
// // ...
...mapState({
urlA: (state) => state.app.urlA,
}),
},
created() {
this.getDAList();
},
methods: {
inquire() {
if (this.urlA.type == "1") {
} else if (this.urlA.type == "2") {
this.form1.cybh = this.name;
this.form1.size = 10;
this.form1.current = 1;
this.listyp()
} else if (this.urlA.type == "3") {
}
},
reset() {
this.name = "";
this.value = "";
},
getPagination(e) {
console.log(e);
this.form1.current = e.page;
this.form1.size = e.limit;
this.chinaCosmetics();
this.listyp();
},
filterLevel(e) {
if (e === "01") {
return "省抽";
} else if (e === "02") {
return "地级市";
} else if (e === "03") {
return "县级";
} else if (e === "04") {
return "乡、镇";
} else if (e === "05") {
return "其他";
}
},
//
async listyp() {
this.loading = true;
let msg1 = await this.$api.yaoPin.getYPList(this.form1);
this.tableData = msg1.data.records;
this.total = msg1.data.total;
this.form1.size = msg1.data.size;
this.form1.current = msg1.data.current;
this.loading = false;
},
//
getDAList() {
let AA = this.$store.state.app.urlA;
if (AA) {
//
if (AA.type == "1") {
} else if (AA.type == "2") {
//
this.listyp();
} else if (AA.type == "3") {
}
}
},
// tabs // tabs
actionTab(id){ actionTab(id) {
this.action = id; this.action = id;
if(id == 1) { if (id == 1) {
this.currentComponent = 'basicInfo' this.currentComponent = "basicInfo";
} else { } else {
this.currentComponent = 'chouYang' this.currentComponent = "chouYang";
}
},
//
async idData() {
this.load1 = true;
let msg1 = await this.$api.yaoPin.getSingle(this.ids);
this.filter(msg1.data, this.descriptions);
this.load1 = false;
},
//
filter(A, B) {
for (let key in A) {
B.forEach((values, index) => {
if (values.data === key) {
B[index].value = A[key];
}
});
} }
}, },
// //
handleEdit(index,row){ handleEdit(index, row) {
if(index == 1) { this.ids = row.id;
this.$refs.chouyangDialog.open(row); console.log(this.ids);
} else if(index == 2){ //
if (this.urlA.type == "1") {
} else if (this.urlA.type == "2") {
//
this.idData();
this.$refs.xiangqingDialog.open(row); this.$refs.xiangqingDialog.open(row);
} else if( index == 3) { } else if (this.urlA.type == "3") {
this.$refs.medicalInfo.open(row)
} else if(index == 0) {
this.$refs.samplingDetail.open(row)
} else if(index == 4) {
this.$refs.drugProvince.open(row)
} else if(index == 5) {
this.$refs.drugDetail.open(row)
} }
// if (index == 1) {
// this.$refs.chouyangDialog.open(row);
// } else if (index == 2) {
// this.$refs.xiangqingDialog.open(row);
// } else if (index == 3) {
// this.$refs.medicalInfo.open(row);
// } else if (index == 0) {
// this.$refs.samplingDetail.open(row);
// } else if (index == 4) {
// this.$refs.drugProvince.open(row);
// } else if (index == 5) {
// this.$refs.drugDetail.open(row);
// }
}, },
// tabs // tabs
columnStyle({ row, column, rowIndex, columnIndex }) { columnStyle({ row, column, rowIndex, columnIndex }) {
if (columnIndex == 7 || columnIndex == 0) { if (columnIndex == 7 || columnIndex == 0) {
return "font-family: DIN;"; return "font-family: DIN;";
} else if (columnIndex == 2 || columnIndex == 1 || columnIndex == 3 || columnIndex == 4) { } else if (
columnIndex == 2 ||
columnIndex == 1 ||
columnIndex == 3 ||
columnIndex == 4
) {
return "font-family: Source Han Sans CN;"; return "font-family: Source Han Sans CN;";
} else if(columnIndex == 5 || columnIndex == 6 || columnIndex == 8) { } else if (columnIndex == 5 || columnIndex == 6 || columnIndex == 8) {
return "font-family: Adobe Heiti Std;font-weight: normal;"; return "font-family: Adobe Heiti Std;font-weight: normal;";
} }
}, },
currentChange(index){ currentChange(index) {},
sizeChange(index) {},
},
sizeChange(index){
},
}, },
mounted(){ mounted() {
// this.$nextTick(()=>{ // this.$nextTick(()=>{
// let dom = document.getElementsByClassName('pzChouyang'); // let dom = document.getElementsByClassName('pzChouyang');
// let height = dom[0].getBoundingClientRect(); // let height = dom[0].getBoundingClientRect();
// let windowWidth = window.innerWidth; // let windowWidth = window.innerWidth;
// let windowHeight = window.innerHeight; // let windowHeight = window.innerHeight;
// let relativeHeight = windowHeight - height.top - (26 / 1920 * windowWidth) // let relativeHeight = windowHeight - height.top - (26 / 1920 * windowWidth)
// this.pzChouyangStyle.height = relativeHeight + 'px' // this.pzChouyangStyle.height = relativeHeight + 'px'
// }) // })
console.log(this.transinformation) },
} };
}
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
@import "@/assets/styles/utils.scss"; @import "@/assets/styles/utils.scss";
@ -322,7 +711,7 @@ export default {
padding: 0; padding: 0;
font-size: vw(14); font-size: vw(14);
font-weight: 400; font-weight: 400;
color: #292F38; color: #292f38;
} }
::v-deep .el-table th { ::v-deep .el-table th {
height: vh(40); height: vh(40);
@ -379,9 +768,9 @@ export default {
.tabs { .tabs {
width: 100%; width: 100%;
display: flex; display: flex;
border-bottom: vw(1) solid #DBE0E8; border-bottom: vw(1) solid #dbe0e8;
.tab { .tab {
border: vw(1) solid #DBE0E8; border: vw(1) solid #dbe0e8;
padding: vh(7) vw(22); padding: vh(7) vw(22);
display: flex; display: flex;
align-items: center; align-items: center;
@ -389,7 +778,7 @@ export default {
margin-right: vw(9); margin-right: vw(9);
cursor: pointer; cursor: pointer;
&:last-child{ &:last-child {
margin-right: 0; margin-right: 0;
} }
@ -410,11 +799,11 @@ export default {
font-size: vw(16); font-size: vw(16);
font-family: Source Han Sans CN; font-family: Source Han Sans CN;
font-weight: 400; font-weight: 400;
color: #2F3742; color: #2f3742;
} }
} }
.actionTab { .actionTab {
background-color: #1E80EB; background-color: #1e80eb;
span { span {
color: #fff; color: #fff;
@ -422,4 +811,74 @@ export default {
} }
} }
} }
.drug-input {
background: #f5f9fc;
padding: vh(40) vw(22);
display: flex;
align-items: center;
.inputs {
display: flex;
align-items: center;
.rank,
.number {
display: flex;
align-items: center;
.input--label {
font-size: vw(16);
font-family: Source Han Sans CN;
font-weight: 400;
color: #6a6c6f;
}
::v-deep .el-input__inner {
width: vw(386);
height: vw(40);
border-radius: vw(2);
}
::v-deep .el-select__caret::before {
line-height: vw(40);
}
}
.number {
margin-left: vw(39);
}
}
.search-btns {
margin-left: vw(40);
display: flex;
align-items: center;
.inquire {
display: flex;
justify-content: center;
align-items: center;
border: none;
width: vw(64);
height: vh(40);
background: #1e80eb;
border-radius: vw(4);
font-size: vw(16);
font-family: Source Han Sans CN;
font-weight: 400;
color: #ffffff;
line-height: vh(50);
margin-left: vw(10);
cursor: pointer;
}
.reset {
display: flex;
justify-content: center;
align-items: center;
width: vw(64);
height: vh(40);
border: vw(1) solid #1e80eb;
border-radius: vw(4);
background-color: #fff;
font-size: vw(16);
font-family: Source Han Sans CN;
font-weight: 400;
color: #1e80eb;
line-height: vh(50);
cursor: pointer;
}
}
}
</style> </style>

@ -1,152 +1,473 @@
<template> <template>
<block-header title="国家药品抽检信息"> <block-header title="国家药品抽检信息">
<my-descriptions :descriptions="descriptions" width></my-descriptions> <my-descriptions
:descriptions="descriptions"
width
v-loading="loading"
></my-descriptions>
</block-header> </block-header>
</template> </template>
<script> <script>
import blockHeader from "@/views/firmContent/components/blockHeader/index.vue" import blockHeader from "@/views/firmContent/components/blockHeader/index.vue";
import myDescriptions from "@/views/firmContent/components/descriptions/index.vue" import myDescriptions from "@/views/firmContent/components/descriptions/index.vue";
export default { export default {
data() { data() {
return { return {
descriptions:[ // descriptions:[
{ // {
id:1, // id:1,
label:'药品通用名称', // label:'',
value:'注射用冷冻干燥用氯化丁基橡胶塞' // value:''
},{ // },{
id:2, // id:2,
label:'药品商品名称', // label:'',
value:'xxxxxxxxxxxxxxx' // value:'xxxxxxxxxxxxxxx'
},{ // },{
id:3, // id:3,
label:'药品批准文号', // label:'',
value:'药包材登记号B20190008023' // value:'B20190008023'
},{ // },{
id:4, // id:4,
label:'药品类别', // label:'',
value:'xxxxxxxxxxxxxxx' // value:'xxxxxxxxxxxxxxx'
},{ // },{
id:5, // id:5,
label:'药品上市许可持有人', // label:'',
value:'重庆市沛玲三海兰陵有限责任公司' // value:''
},{ // },{
id:6, // id:6,
label:'药品上市许可持有人统一社会信用代码', // label:'',
value:'xxxxxxxxxxxxxxx' // value:'xxxxxxxxxxxxxxx'
},{ // },{
id:7, // id:7,
label:'药品上市许可持有人地址', // label:'',
value:'xxxxxxxxxxxxx' // value:'xxxxxxxxxxxxx'
},{ // },{
id:8, // id:8,
label:'药品上市许可持有人所在省份', // label:'',
value:'xxxxxxxxxxxxxxx' // value:'xxxxxxxxxxxxxxx'
},{ // },{
id:9, // id:9,
label:'剂型', // label:'',
value:'xxxxxxxxxxxxxxx' // value:'xxxxxxxxxxxxxxx'
},{ // },{
id:10, // id:10,
label:'制剂规格', // label:'',
value:'xxxxxxxxxxxxxxx' // value:'xxxxxxxxxxxxxxx'
},{ // },{
id:11, // id:11,
label:'包装规格', // label:'',
value:'xxxxxxxxxxxxxxxxx' // value:'xxxxxxxxxxxxxxxxx'
},{ // },{
id:12, // id:12,
label:'抽样编号', // label:'',
value:'xxxxxxxxxxxxxxx' // value:'xxxxxxxxxxxxxxx'
},{ // },{
id:13, // id:13,
label:'抽样数量', // label:'',
value:'xxxxxxxxxxxxxxx' // value:'xxxxxxxxxxxxxxx'
},{ // },{
id:14, // id:14,
label:'效期', // label:'',
value:'xxxxxxxxxxxxxxx' // value:'xxxxxxxxxxxxxxx'
},{ // },{
id:15, // id:15,
label:'来源', // label:'',
value:'xxxxxxxxxxxxxxxxx' // value:'xxxxxxxxxxxxxxxxx'
},{ // },{
id:16, // id:16,
label:'抽样环节', // label:'',
value:'xxxxxxxxxxxxxxx' // value:'xxxxxxxxxxxxxxx'
},{ // },{
id:17, // id:17,
label:'批号', // label:'',
value:'xxxxxxxxxxxxxx' // value:'xxxxxxxxxxxxxx'
},{ // },{
id:18, // id:18,
label:'有效期截止日期', // label:'',
value:'xxxxxxxxxxxxxxx' // value:'xxxxxxxxxxxxxxx'
},{ // },{
id:19, // id:19,
label:'被抽样单位统一社会信用代码', // label:'',
value:'xxxxxxxxxxxxxx' // value:'xxxxxxxxxxxxxx'
},{ // },{
id:20, // id:20,
label:'被抽样单位名称', // label:'',
value:'xxxxxxxxxxxxxxx' // value:'xxxxxxxxxxxxxxx'
},{ // },{
id:21, // id:21,
label:'被抽样单位地址', // label:'',
value:'xxxxxxxxxxxxxxx' // value:'xxxxxxxxxxxxxxx'
},{ // },{
id:22, // id:22,
label:'抽样地点性质', // label:'',
value:'xxxxxxxxxxxxxxx' // value:'xxxxxxxxxxxxxxx'
},{ // },{
id:23, // id:23,
label:'药品单价', // label:'',
value:'xxxxxxxxxxxxxx' // value:'xxxxxxxxxxxxxx'
},{ // },{
id:24, // id:24,
label:'抽样单位所在省份', // label:'',
value:'xxxxxxxxxxxxxxx' // value:'xxxxxxxxxxxxxxx'
},{ // },{
id:25, // id:25,
label:'生产日期', // label:'',
value:'xxxxxxxxxxxxxxxx' // value:'xxxxxxxxxxxxxxxx'
},{ // },{
id:26, // id:26,
label:'药品总价', // label:'',
value:'xxxxxxxxxxxxxxx' // value:'xxxxxxxxxxxxxxx'
},{ // },{
id:27, // id:27,
label:'药品存放现场湿度', // label:'湿',
value:'xxxxxxxx' // value:'xxxxxxxx'
},{ // },{
id:28, // id:28,
label:'样品存放现场温度', // label:'',
value:'xxxxxxxxxxxxxxx' // value:'xxxxxxxxxxxxxxx'
},{ // },{
id:29, // id:29,
label:'抽样级别', // label:'',
value:'xxxxxxx' // value:'xxxxxxx'
},{ // },{
id:30, // id:30,
label:'抽样日期', // label:'',
value:'xxxxxxxxxxxx' // value:'xxxxxxxxxxxx'
},{ // },{
id:31, // id:31,
label:'承检机构', // label:'',
value:'xxxxxxxxx' // value:'xxxxxxxxx'
},{ // },{
id:32, // id:32,
label:'抽样单位经手人', // label:'',
value:'xxxxxxxxxxxxxx' // value:'xxxxxxxxxxxxxx'
}, // },
] // ],
// descriptions: [
// {
// span: 1,
// label: "",
// value: "",
// data: "yptymc",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "ypspmc",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "yppzwh",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "yplb",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "ypssxkcyr",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "ypssxkcyrtyshxxdm",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "ypssxkcyrdz",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "ypssxkcyrszsf",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "jx",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "zjgg",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "bzgg",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "cybh",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "cysl",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "xq",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "ly",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "cyhj",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "ph",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "yxqjzrq",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "bcydwshyxdm",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "bcydwmc",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "bcydwdz",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "cyddxz",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "cydwmc",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "cydwszsf",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "ypdj",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "ypzj",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "scrq",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "ypcfxcwd",
// },
// {
// span: 1,
// label: "湿",
// value: "",
// data: "ypcfxcsd",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "cyrq",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "cyjb",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "cydwjsr",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "cjjg",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "scqysffrsc",
// },
// {
// span: 1,
// label: " ",
// value: "",
// data: "jbyw",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "cyrw",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "zzjyjl",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "jybgsbh",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "bgqfrq",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "fjjl",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "fjjyyj",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "fjbgsbh",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "fjbgqfrq",
// },
// {
// span: 1,
// label: "退",
// value: "",
// data: "syhtyrq",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "yjjl",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "bcjyjg",
// },
// {
// span: 1,
// label: "ID",
// value: "",
// data: "planId",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "planName",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "bjsj",
// },
// {
// span: 1,
// label: "",
// value: "",
// data: "gxsj",
// },
// ],
// loading: true,
};
},
props: {
descriptions:{
type:Array,
default:[]
},
loading:{
type:Boolean,
default:true
} }
}, },
components:{blockHeader,myDescriptions}, components: { blockHeader, myDescriptions },
methods:{ created() {
},
mounted(){
}, },
} methods: {
},
};
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
</style> </style>

@ -1,290 +1,121 @@
<template> <template>
<block-header title="检验项目信息"> <block-header title="检验项目信息">
<div class="tables"> <div class="tables">
<el-table <tables :labels="labels" :list="tableData" :loading="loading"></tables>
:data="tableData"
style="width: 100%"
v-loading="loading"
border
>
<el-table-column
prop="id"
header-align="center"
label="序号"
width="50"
>
</el-table-column>
<el-table-column
prop="dalei"
header-align="center"
width="80"
label="检验大类"
>
</el-table-column>
<el-table-column
prop="project"
width="90"
header-align="center"
label="检验项目"
>
</el-table-column>
<el-table-column
prop="guiding"
header-align="center"
label="标准规定"
>
</el-table-column>
<el-table-column
prop="jieguo"
header-align="center"
width="105"
label="检验结果"
>
</el-table-column>
<el-table-column
prop="jielun"
header-align="center"
width="80"
label="检验结论"
>
</el-table-column>
<el-table-column
prop="yiju"
label="检验依据"
header-align="center"
>
</el-table-column>
<el-table-column
prop="xuhao"
label="检验序号"
width="90"
header-align="center"
>
</el-table-column>
<el-table-column
prop="leibie"
label="报告类别"
width="90"
header-align="center"
>
</el-table-column>
<el-table-column
prop="bianhao"
label="抽样编号"
width="135"
header-align="center"
>
</el-table-column>
<el-table-column
prop="name"
label="药品通用名"
header-align="center"
>
</el-table-column>
<el-table-column
prop="editdate"
label="编辑时间"
width="90"
header-align="center"
>
</el-table-column>
<el-table-column
prop="update"
label="更新时间"
width="90"
header-align="center"
>
</el-table-column>
</el-table>
</div>
<div class="pagination">
<span class="custom"
>{{ tableData.length }}显示{{
0
}}-{{ tableData.length }}</span
>
<el-pagination
background
small
@current-change="currentChange"
@size-change="sizeChange"
:current-page.sync="current"
:page-size.sync="size"
:page-sizes="[10, 15]"
layout=" prev, pager, next, sizes, jumper"
:total="tableData.length"
>
</el-pagination>
</div> </div>
<pagination
v-show="total > 0"
:total="total"
:page="form1.current"
:limit="form1.size"
@pagination="getPagination"
></pagination>
</block-header> </block-header>
</template> </template>
<script> <script>
import blockHeader from "@/views/firmContent/components/blockHeader/index.vue" import tables from "@/views/firmContent/components/table/index.vue";
import blockHeader from "@/views/firmContent/components/blockHeader/index.vue";
export default { export default {
data() { data() {
return { return {
tableData:[ tableData: [],
total: 1,
labels: [
{
header: "检验大类",
value: "jydl",
width: "",
},
{
header: "检验项目",
value: "jyxm",
width: "",
},
{
header: "标准规定",
value: "bzgd",
width: "",
},
{ {
id:1, header: "检验结果",
dalei:'其他', value: "jyjg",
project:'含量测定', width: "",
guiding:'按无水物计算,每 1mg的效应不得少 于610红霉素单位', },
jieguo:'655单位', {
jielun:'符合规定', header: "检验结论",
yiju:'《中国药典》 2015年版二部', value: "jyjl",
xuhao:'14', width: "",
leibie:'1', },
bianhao:'1221030412300001', {
name:'注射用乳糖酸 红霉素', header: "检验依据",
editdate:'2021-04-23', value: "jyyj",
update:'2021-04-23' width: "",
},{ },
id:2, {
dalei:'检查', header: "检验序号",
project:'细菌内毒素', value: "jyxh",
guiding:'应小于1.0EU/mg', width: "",
jieguo:'小于1.0EU/mg', },
jielun:'符合规定', {
yiju:'《中国药典》 2015年版二部', header: "报告类别",
xuhao:'18', value: "bglb",
leibie:'1', width: "",
bianhao:'1221030412300001', },
name:'注射用乳糖酸 红霉素', {
editdate:'2021-04-23', header: "抽样编号",
update:'2021-04-23' value: "cybh",
},{ width: "",
id:3, },
dalei:'检查', {
project:'细菌内毒素', header: "药品通用名字",
guiding:'应小于1.0EU/mg', value: "yptym",
jieguo:'小于1.0EU/mg', width: "",
jielun:'符合规定', },
yiju:'《中国药典》 2015年版二部', {
xuhao:'16', header: "编辑时间",
leibie:'1', value: "bjsj",
bianhao:'1221030412300001', width: "",
name:'注射用乳糖酸 红霉素', },
editdate:'2021-04-23', {
update:'2021-04-23' header: "更新时间",
},{ value: "gxsj",
id:4, width: "",
dalei:'检查',
project:'细菌内毒素',
guiding:'应小于1.0EU/mg',
jieguo:'小于1.0EU/mg',
jielun:'符合规定',
yiju:'《中国药典》 2015年版二部',
xuhao:'25',
leibie:'1',
bianhao:'1221030412300001',
name:'注射用乳糖酸 红霉素',
editdate:'2021-04-23',
update:'2021-04-23'
},{
id:5,
dalei:'检查',
project:'细菌内毒素',
guiding:'应小于1.0EU/mg',
jieguo:'小于1.0EU/mg',
jielun:'符合规定',
yiju:'《中国药典》 2015年版二部',
xuhao:'55',
leibie:'1',
bianhao:'1221030412300001',
name:'注射用乳糖酸 红霉素',
editdate:'2021-04-23',
update:'2021-04-23'
},{
id:6,
dalei:'检查',
project:'细菌内毒素',
guiding:'应小于1.0EU/mg',
jieguo:'小于1.0EU/mg',
jielun:'符合规定',
yiju:'《中国药典》 2015年版二部',
xuhao:'23',
leibie:'1',
bianhao:'1221030412300001',
name:'注射用乳糖酸 红霉素',
editdate:'2021-04-23',
update:'2021-04-23'
},{
id:7,
dalei:'检查',
project:'细菌内毒素',
guiding:'应小于1.0EU/mg',
jieguo:'小于1.0EU/mg',
jielun:'符合规定',
yiju:'《中国药典》 2015年版二部',
xuhao:'11',
leibie:'1',
bianhao:'1221030412300001',
name:'注射用乳糖酸 红霉素',
editdate:'2021-04-23',
update:'2021-04-23'
},{
id:8,
dalei:'检查',
project:'细菌内毒素',
guiding:'应小于1.0EU/mg',
jieguo:'小于1.0EU/mg',
jielun:'符合规定',
yiju:'《中国药典》 2015年版二部',
xuhao:'18',
leibie:'1',
bianhao:'1221030412300001',
name:'注射用乳糖酸 红霉素',
editdate:'2021-04-23',
update:'2021-04-23'
},{
id:9,
dalei:'检查',
project:'细菌内毒素',
guiding:'应小于1.0EU/mg',
jieguo:'小于1.0EU/mg',
jielun:'符合规定',
yiju:'《中国药典》 2015年版二部',
xuhao:'12',
leibie:'1',
bianhao:'1221030412300001',
name:'注射用乳糖酸 红霉素',
editdate:'2021-04-23',
update:'2021-04-23'
},{
id:10,
dalei:'检查',
project:'细菌内毒素',
guiding:'应小于1.0EU/mg',
jieguo:'小于1.0EU/mg',
jielun:'符合规定',
yiju:'《中国药典》 2015年版二部',
xuhao:'15',
leibie:'1',
bianhao:'1221030412300001',
name:'注射用乳糖酸 红霉素',
editdate:'2021-04-23',
update:'2021-04-23'
}, },
], ],
loading:false, loading: false,
current:1, form1: {
size:10 current: 1,
} size: 10,
},
};
}, },
components:{blockHeader}, components: { blockHeader, tables },
methods:{ created() {
currentChange(index){ this.arrData();
},
methods: {
async arrData() {
this.loading = true;
let msg1 = await this.$api.yaoPin.jyList(this.form1);
this.tableData = msg1.data.records;
this.total = msg1.data.total;
this.form1.current = msg1.data.current;
this.form1.size = msg1.data.size;
this.loading = false;
}, },
sizeChange(index){ getPagination(e) {
console.log(e);
this.form1.current = e.page;
this.form1.size = e.limit;
this.arrData();
}, },
}, },
} };
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
@import "@/assets/styles/utils.scss"; @import "@/assets/styles/utils.scss";
.tables { .tables {
min-height: 400px;
.button { .button {
display: flex; display: flex;
justify-content: center; justify-content: center;
@ -313,7 +144,7 @@ export default {
font-size: vw(14); font-size: vw(14);
font-weight: 400; font-weight: 400;
font-family: Source Han Sans CN; font-family: Source Han Sans CN;
color: #292F38; color: #292f38;
} }
::v-deep .el-table th { ::v-deep .el-table th {
height: vh(40); height: vh(40);

@ -3,9 +3,9 @@
<div class="drugInfo-top"> <div class="drugInfo-top">
<div class="top-left"> <div class="top-left">
<div class="drug-name"> <div class="drug-name">
<span>药品通用名称</span> <span>{{ pruduct.key }} </span>
<!-- <span class="Name">{{ 暂无 }}</span> --> <!-- <span class="Name">{{ 暂无 }}</span> -->
<span class="Name">暂无</span> <span class="Name">{{ pruduct.value || '暂无' }}</span>
</div> </div>
<div class="drug-tag"> <div class="drug-tag">
<span v-for="item in tags" :key="item.id">{{ item.name }}</span> <span v-for="item in tags" :key="item.id">{{ item.name }}</span>
@ -33,7 +33,7 @@
</div> </div>
</div> </div>
</div> </div>
<div class="drug-input" v-show="action == 2 || action == 3 "> <!-- <div class="drug-input" v-show="action == 2 || action == 3 ">
<div class="inputs"> <div class="inputs">
<div class="rank" v-show="action == 2"> <div class="rank" v-show="action == 2">
<div class="input--label">抽样级别</div> <div class="input--label">抽样级别</div>
@ -63,18 +63,18 @@
<button class="reset" @click="reset"></button> <button class="reset" @click="reset"></button>
<button class="inquire" @click="inquire(1)"></button> <button class="inquire" @click="inquire(1)"></button>
</div> </div>
</div> </div> -->
<div class="drug-exit" :style="drugExitStyle"> <div class="drug-exit" :style="drugExitStyle">
<!-- <router-view></router-view> --> <!-- <router-view></router-view> -->
<component :is="currentComponent" :transinformation="transinformation"></component> <component :is="currentComponent" :transinformation="transinformation" @getCPName="getCPName"></component>
</div> </div>
</div> </div>
</div> </div>
</template> </template>
<script> <script>
import basicInfo from "./drugBasicInfo/drugBasicInfo.vue" import basicInfo from "./drugBasicInfo/drugBasicInfo"
import PZchouyang from "./PZchouyang/PZchouyang.vue" import PZchouyang from "./PZchouyang/PZchouyang"
import adverseReaction from "./adverseReaction/adverseReaction.vue" import adverseReaction from "./adverseReaction/adverseReaction"
export default { export default {
data() { data() {
return { return {
@ -88,21 +88,7 @@ export default {
name:'疗效显著' name:'疗效显著'
}, },
], ],
options:[
{
value:0,
label:'国抽'
},{
value:1,
label:'省抽'
},
],
value:'',
action:1, action:1,
// action == 3
number:'',
// action == 2/action == 3
name:'',
currentComponent:'basicInfo', currentComponent:'basicInfo',
drugExitStyle:{ drugExitStyle:{
height:'', height:'',
@ -111,6 +97,11 @@ export default {
goback:true, goback:true,
id:null, id:null,
token:null, token:null,
//
pruduct:{
key:'某某产品',
value:'-'
}
} }
}, },
components:{ components:{
@ -119,6 +110,11 @@ export default {
adverseReaction adverseReaction
}, },
methods:{ methods:{
//
getCPName(e){
this.pruduct.key = e.key
this.pruduct.value = e.value
},
goBack(){ goBack(){
this.$router.go(-1) this.$router.go(-1)
}, },
@ -145,12 +141,6 @@ export default {
// this.$router.push({ name:'adverseReaction' }) // this.$router.push({ name:'adverseReaction' })
} }
}, },
inquire(){
// this.isOne = true;
},
reset(){
// this.isOne = false;
},
getHeight(){ getHeight(){
let dom = document.getElementsByClassName('drug-exit'); let dom = document.getElementsByClassName('drug-exit');
let height = dom[0].getBoundingClientRect(); let height = dom[0].getBoundingClientRect();
@ -330,75 +320,7 @@ export default {
} }
} }
} }
.drug-input {
background: #F5F9FC;
padding: vh(40) vw(22);
display: flex;
align-items: center;
.inputs {
display: flex;
align-items: center;
.rank , .number {
display: flex;
align-items: center;
.input--label {
font-size: vw(16);
font-family: Source Han Sans CN;
font-weight: 400;
color: #6A6C6F;
}
::v-deep .el-input__inner {
width: vw(386);
height: vw(40);
border-radius: vw(2);
}
::v-deep .el-select__caret::before {
line-height: vw(40);
}
}
.number {
margin-left: vw(39);
}
}
.search-btns {
margin-left: vw(40);
display: flex;
align-items: center;
.inquire {
display: flex;
justify-content: center;
align-items: center;
border: none;
width: vw(64);
height: vh(40);
background: #1e80eb;
border-radius: vw(4);
font-size: vw(16);
font-family: Source Han Sans CN;
font-weight: 400;
color: #ffffff;
line-height: vh(50);
margin-left: vw(10);
cursor: pointer;
}
.reset {
display: flex;
justify-content: center;
align-items: center;
width: vw(64);
height: vh(40);
border: vw(1) solid #1e80eb;
border-radius: vw(4);
background-color: #fff;
font-size: vw(16);
font-family: Source Han Sans CN;
font-weight: 400;
color: #1e80eb;
line-height: vh(50);
cursor: pointer;
}
}
}
.drug-exit { .drug-exit {
margin-top: vh(25); margin-top: vh(25);
padding-bottom: vw(20); padding-bottom: vw(20);

Loading…
Cancel
Save