Browse Source

登录界面

master
mch 2 years ago
parent
commit
94fb051c9a
  1. BIN
      src/assets/images/usericon.png
  2. BIN
      src/assets/images/users.png
  3. 286
      src/views/Home.vue
  4. 6
      src/views/basic-dictionary/GuideType.vue
  5. 99
      src/views/login/Login.vue
  6. 68
      src/views/user-list/OrganizationUnits.vue

BIN
src/assets/images/usericon.png

After

Width: 356  |  Height: 394  |  Size: 12 KiB

BIN
src/assets/images/users.png

After

Width: 356  |  Height: 394  |  Size: 14 KiB

286
src/views/Home.vue

@ -1,17 +1,26 @@
<template>
<div>
<div style="background: rgb(202, 243, 209)">
<el-container style="background: ">
<el-header style="background-color: ; line-height: 50px" class="principalheader">
<el-header
style="background-color: ; line-height: 50px"
class="principalheader"
>
<div class="navs">
<!-- <div class="maintitle">神豚医疗信息系统</div> -->
<div style="">
<div class="maintitle">神豚体检管理系统</div>
<div style="margin-left: 5%">
<el-dropdown @command="handleCommand">
<span class="el-dropdown-link">用户权限管理</span>
<span class="el-dropdown-link el-icon-edit">用户权限管理</span>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item command="organization-units">科室设置</el-dropdown-item>
<el-dropdown-item command="organization-units"
>科室设置</el-dropdown-item
>
<el-dropdown-item command="role">角色管理</el-dropdown-item>
<el-dropdown-item command="user-list">用户管理</el-dropdown-item>
<el-dropdown-item command="audit-log">安全日志</el-dropdown-item>
<el-dropdown-item command="user-list"
>用户管理</el-dropdown-item
>
<el-dropdown-item command="audit-log"
>安全日志</el-dropdown-item
>
</el-dropdown-menu>
</el-dropdown>
</div>
@ -20,27 +29,61 @@
<el-dropdown @command="handleCommand">
<span class="el-dropdown-link">基础字典</span>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item command="guide-type">导引类别</el-dropdown-item>
<el-dropdown-item command="medical-report-type">体检报告类别</el-dropdown-item>
<el-dropdown-item command="guide-type"
>导引类别</el-dropdown-item
>
<el-dropdown-item command="medical-report-type"
>体检报告类别</el-dropdown-item
>
<el-dropdown-item command="sex">性别</el-dropdown-item>
<el-dropdown-item command="marital-status">婚姻状况</el-dropdown-item>
<el-dropdown-item command="marital-status"
>婚姻状况</el-dropdown-item
>
<el-dropdown-item command="nation">民族</el-dropdown-item>
<el-dropdown-item command="birth-place">籍贯</el-dropdown-item>
<el-dropdown-item command="result-status">结果状态</el-dropdown-item>
<el-dropdown-item command="medical-type">体检类别</el-dropdown-item>
<el-dropdown-item command="personnel-type">人员类别</el-dropdown-item>
<el-dropdown-item command="device-type">仪器类别</el-dropdown-item>
<el-dropdown-item command="sample-type">标本类型</el-dropdown-item>
<el-dropdown-item command="result-status"
>结果状态</el-dropdown-item
>
<el-dropdown-item command="medical-type"
>体检类别</el-dropdown-item
>
<el-dropdown-item command="personnel-type"
>人员类别</el-dropdown-item
>
<el-dropdown-item command="device-type"
>仪器类别</el-dropdown-item
>
<el-dropdown-item command="sample-type"
>标本类型</el-dropdown-item
>
<el-dropdown-item command="unit">计量单位</el-dropdown-item>
<el-dropdown-item command="diagnosis-postfix">诊断后缀</el-dropdown-item>
<el-dropdown-item command="medical-conclusion-type">体检结论类别</el-dropdown-item>
<el-dropdown-item command="medical-conclusion">体检结论</el-dropdown-item>
<el-dropdown-item command="sample-container">标本容器</el-dropdown-item>
<el-dropdown-item command="common-char-type">常用字符类别</el-dropdown-item>
<el-dropdown-item command="common-char">常用字符</el-dropdown-item>
<el-dropdown-item command="customer-org-type">客户单位类别</el-dropdown-item>
<el-dropdown-item command="item-default-result">项目默认结果</el-dropdown-item>
<el-dropdown-item command="diagnosis-level">诊断级别</el-dropdown-item>
<el-dropdown-item command="diagnosis-postfix"
>诊断后缀</el-dropdown-item
>
<el-dropdown-item command="medical-conclusion-type"
>体检结论类别</el-dropdown-item
>
<el-dropdown-item command="medical-conclusion"
>体检结论</el-dropdown-item
>
<el-dropdown-item command="sample-container"
>标本容器</el-dropdown-item
>
<el-dropdown-item command="common-char-type"
>常用字符类别</el-dropdown-item
>
<el-dropdown-item command="common-char"
>常用字符</el-dropdown-item
>
<el-dropdown-item command="customer-org-type"
>客户单位类别</el-dropdown-item
>
<el-dropdown-item command="item-default-result"
>项目默认结果</el-dropdown-item
>
<el-dropdown-item command="diagnosis-level"
>诊断级别</el-dropdown-item
>
</el-dropdown-menu>
</el-dropdown>
</div>
@ -49,11 +92,19 @@
<el-dropdown @command="handleCommand">
<span class="el-dropdown-link">收费设置</span>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item command="invoice-item-type">发票项目类别</el-dropdown-item>
<el-dropdown-item command="invoice-item-type"
>发票项目类别</el-dropdown-item
>
<el-dropdown-item command="pay-mode">支付方式</el-dropdown-item>
<el-dropdown-item command="cardType">会员卡类别</el-dropdown-item>
<el-dropdown-item command="cardRegister">会员卡管理</el-dropdown-item>
<el-dropdown-item command="cardBill">会员卡记账</el-dropdown-item>
<el-dropdown-item command="cardType"
>会员卡类别</el-dropdown-item
>
<el-dropdown-item command="cardRegister"
>会员卡管理</el-dropdown-item
>
<el-dropdown-item command="cardBill"
>会员卡记账</el-dropdown-item
>
</el-dropdown-menu>
</el-dropdown>
</div>
@ -62,10 +113,14 @@
<el-dropdown @command="handleCommand">
<span class="el-dropdown-link">常用设置</span>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item command="item-type">项目类别</el-dropdown-item>
<el-dropdown-item command="item-type"
>项目类别</el-dropdown-item
>
<el-dropdown-item command="item">项目设置</el-dropdown-item>
<el-dropdown-item command="asbitem">组合项目</el-dropdown-item>
<el-dropdown-item command="sample-group">条码分组</el-dropdown-item>
<el-dropdown-item command="sample-group"
>条码分组</el-dropdown-item
>
<!-- <el-dropdown-item
@click.native="$router.push({ path: '/reference-range' })"
>参考范围</el-dropdown-item
@ -77,12 +132,24 @@
>性激素参考范围</el-dropdown-item
> -->
<el-dropdown-item command="diagnosis">诊断</el-dropdown-item>
<el-dropdown-item command="diagnosis-template">诊断模板</el-dropdown-item>
<el-dropdown-item command="item-result-template">项目结果模板</el-dropdown-item>
<el-dropdown-item command="item-result-match">项目结果匹配</el-dropdown-item>
<el-dropdown-item command="item-template">项目模板</el-dropdown-item>
<el-dropdown-item command="medical-package">套餐</el-dropdown-item>
<el-dropdown-item command="sys-parm-type">系统参数</el-dropdown-item>
<el-dropdown-item command="diagnosis-template"
>诊断模板</el-dropdown-item
>
<el-dropdown-item command="item-result-template"
>项目结果模板</el-dropdown-item
>
<el-dropdown-item command="item-result-match"
>项目结果匹配</el-dropdown-item
>
<el-dropdown-item command="item-template"
>项目模板</el-dropdown-item
>
<el-dropdown-item command="medical-package"
>套餐</el-dropdown-item
>
<el-dropdown-item command="sys-parm-type"
>系统参数</el-dropdown-item
>
</el-dropdown-menu>
</el-dropdown>
</div>
@ -91,13 +158,27 @@
<el-dropdown @command="handleCommand">
<span class="el-dropdown-link">体检登记</span>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item command="customerOrg">体检单位设置</el-dropdown-item>
<el-dropdown-item command="customerOrgGroup">单位分组设置</el-dropdown-item>
<el-dropdown-item command="patientRegister">体检人员登记</el-dropdown-item>
<el-dropdown-item command="personnelBatch">人员批量登记</el-dropdown-item>
<el-dropdown-item command="patientRegisterSign">体检人员签到</el-dropdown-item>
<el-dropdown-item command="patientRegisterRecover">体检表回收</el-dropdown-item>
<el-dropdown-item command="patientRegisterRefuse">弃检登记</el-dropdown-item>
<el-dropdown-item command="customerOrg"
>体检单位设置</el-dropdown-item
>
<el-dropdown-item command="customerOrgGroup"
>单位分组设置</el-dropdown-item
>
<el-dropdown-item command="patientRegister"
>体检人员登记</el-dropdown-item
>
<el-dropdown-item command="personnelBatch"
>人员批量登记</el-dropdown-item
>
<el-dropdown-item command="patientRegisterSign"
>体检人员签到</el-dropdown-item
>
<el-dropdown-item command="patientRegisterRecover"
>体检表回收</el-dropdown-item
>
<el-dropdown-item command="patientRegisterRefuse"
>弃检登记</el-dropdown-item
>
<el-dropdown-item command="charge">体检收费</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
@ -107,8 +188,12 @@
<el-dropdown @command="handleCommand">
<span class="el-dropdown-link">体检</span>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item command="doctorCheck">体检医生诊台</el-dropdown-item>
<el-dropdown-item command="sumDoctorCheck">总检医生诊台</el-dropdown-item>
<el-dropdown-item command="doctorCheck"
>体检医生诊台</el-dropdown-item
>
<el-dropdown-item command="sumDoctorCheck"
>总检医生诊台</el-dropdown-item
>
</el-dropdown-menu>
</el-dropdown>
</div>
@ -118,10 +203,18 @@
<span class="el-dropdown-link">体检查询</span>
<el-dropdown-menu slot="dropdown" style="width: 170px">
<el-dropdown-item command="report">体检报告</el-dropdown-item>
<el-dropdown-item command="checkStatus">组合项目检查状态</el-dropdown-item>
<el-dropdown-item command="chargeAsbitem">人员费用组合项目</el-dropdown-item>
<el-dropdown-item command="unCheckAsbitem">人员未检组合项目</el-dropdown-item>
<el-dropdown-item command="patientRegisterRecover">回收表格查询</el-dropdown-item>
<el-dropdown-item command="checkStatus"
>组合项目检查状态</el-dropdown-item
>
<el-dropdown-item command="chargeAsbitem"
>人员费用组合项目</el-dropdown-item
>
<el-dropdown-item command="unCheckAsbitem"
>人员未检组合项目</el-dropdown-item
>
<el-dropdown-item command="patientRegisterRecover"
>回收表格查询</el-dropdown-item
>
</el-dropdown-menu>
</el-dropdown>
</div>
@ -130,9 +223,15 @@
<el-dropdown @command="handleCommand">
<span class="el-dropdown-link"> 客户报表 </span>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item command="diseaseStatistics">疾病人数统计</el-dropdown-item>
<el-dropdown-item command="positiveresults">阳性结果人员</el-dropdown-item>
<el-dropdown-item command="unitphysicalexamination">单位体检报表</el-dropdown-item>
<el-dropdown-item command="diseaseStatistics"
>疾病人数统计</el-dropdown-item
>
<el-dropdown-item command="positiveresults"
>阳性结果人员</el-dropdown-item
>
<el-dropdown-item command="unitphysicalexamination"
>单位体检报表</el-dropdown-item
>
</el-dropdown-menu>
</el-dropdown>
</div>
@ -162,10 +261,18 @@
<el-dropdown @command="handleCommand">
<span class="el-dropdown-link"> 工作量统计 </span>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item command="registrar">登记员工作量</el-dropdown-item>
<el-dropdown-item command="doctorstaionworkload">医生站工作量</el-dropdown-item>
<el-dropdown-item command="directordoctor">总检工作量</el-dropdown-item>
<el-dropdown-item command="deskwork">科室工作量</el-dropdown-item>
<el-dropdown-item command="registrar"
>登记员工作量</el-dropdown-item
>
<el-dropdown-item command="doctorstaionworkload"
>医生站工作量</el-dropdown-item
>
<el-dropdown-item command="directordoctor"
>总检工作量</el-dropdown-item
>
<el-dropdown-item command="deskwork"
>科室工作量</el-dropdown-item
>
</el-dropdown-menu>
</el-dropdown>
</div>
@ -175,9 +282,15 @@
<el-dropdown @command="handleCommand">
<span class="el-dropdown-link"> 收费 </span>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item command="tollcollector">收费员报表</el-dropdown-item>
<el-dropdown-item command="individualfeedetails">个人收费明细</el-dropdown-item>
<el-dropdown-item command="membershipcard">会员卡分类</el-dropdown-item>
<el-dropdown-item command="tollcollector"
>收费员报表</el-dropdown-item
>
<el-dropdown-item command="individualfeedetails"
>个人收费明细</el-dropdown-item
>
<el-dropdown-item command="membershipcard"
>会员卡分类</el-dropdown-item
>
</el-dropdown-menu>
</el-dropdown>
</div>
@ -190,25 +303,54 @@
操作 <i class="el-icon-arrow-down el-icon--right"></i>
</span>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item @click.native="logout">退出登录</el-dropdown-item>
<el-dropdown-item @click.native="editpassword">修改密码</el-dropdown-item>
<el-dropdown-item @click.native="toggleDevTools">调试工具</el-dropdown-item>
<el-dropdown-item @click.native="logout"
>退出登录</el-dropdown-item
>
<el-dropdown-item @click.native="editpassword"
>修改密码</el-dropdown-item
>
<el-dropdown-item @click.native="toggleDevTools"
>调试工具</el-dropdown-item
>
</el-dropdown-menu>
</el-dropdown>
</div>
</div>
</el-header>
<!-- 修改密码弹框 -->
<el-dialog title="修改密码" :visible.sync="dialogVisible" width="30%" :close-on-click-modal="false">
<el-form :model="form" :rules="rules" ref="ruleForm" label-width="100px">
<el-dialog
title="修改密码"
:visible.sync="dialogVisible"
width="30%"
:close-on-click-modal="false"
>
<el-form
:model="form"
:rules="rules"
ref="ruleForm"
label-width="100px"
>
<el-form-item label="旧密码" prop="oldPassWord">
<el-input v-model="form.oldPassWord" autocomplete="new-password" show-password></el-input>
<el-input
v-model="form.oldPassWord"
autocomplete="new-password"
show-password
></el-input>
</el-form-item>
<el-form-item label="新密码" prop="newPassWord">
<el-input v-model="form.newPassWord" autocomplete="new-password" show-password></el-input>
<el-input
v-model="form.newPassWord"
autocomplete="new-password"
show-password
></el-input>
</el-form-item>
<el-form-item label="确认密码" prop="newPassWord">
<el-input v-model="confirmpassword" type="password" autocomplete="new-password" show-password></el-input>
<el-input
v-model="confirmpassword"
type="password"
autocomplete="new-password"
show-password
></el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
@ -471,7 +613,7 @@ export default {
handleCommand(command) {
if (this.router.path != command) {
this.router.path = command;
this.$router.push({ path: command }).catch(() => { });
this.$router.push({ path: command }).catch(() => {});
}
},
//
@ -519,9 +661,14 @@ export default {
};
</script>
<style scoped>
.el-dropdown-link {
font-size: 16px;
padding: 0 5px;
}
.principalheader {
background-color: #fff;
opacity: 0.8;
opacity: 0.8;
color: #ccc;
border: 1px solid #ccc;
}
@ -579,6 +726,7 @@ export default {
.maintitle {
font-size: 20px;
font-weight: 700;
color: #000;
}
.el-header {

6
src/views/basic-dictionary/GuideType.vue

@ -1,7 +1,7 @@
<template>
<div style="display: flex">
<div style="width: 95%">
<el-card>
<el-card class="cardboder">
<div class="publiccss">导入类别</div>
<el-row style="margin-top: 20px">
<el-col :span="4">
@ -767,7 +767,6 @@ export default {
//
getlists() {
this.loading = true;
basicsetings(this.pages).then((res) => {
this.loading = false;
if (res.code == 1) {
@ -786,6 +785,9 @@ export default {
};
</script>
<style scoped>
.cardboder{
border-radius: 15px;
}
.fixed-height-row {
height: 30px;
}

99
src/views/login/Login.vue

@ -4,16 +4,32 @@
<div class="mainbody">
<div class="title">系统登录</div>
<div class="userform">
<el-form :model="form" :rules="rules" ref="form" class="demo-ruleForm">
<el-form
:model="form"
:rules="rules"
ref="form"
class="demo-ruleForm"
>
<el-form-item label="" prop="Username">
<el-input v-model="form.Username" placeholder="用户名" prefix-icon="el-icon-s-custom"></el-input>
<!-- <img src="@/assets/images/users.png" alt="" style="width:26px;height:26px"> -->
<el-input
class="inputcolor"
v-model="form.Username"
placeholder="用户名"
prefix-icon="el-icon-s-custom"
></el-input>
</el-form-item>
<el-form-item label="" prop="Password">
<el-input v-model="form.Password" placeholder="密码" type="password" prefix-icon="el-icon-unlock"></el-input>
<el-input
v-model="form.Password"
placeholder="密码"
type="password"
prefix-icon="el-icon-unlock"
></el-input>
</el-form-item>
<el-button type="primary" class="btn" @click="onSubmit(form)"
>用户登录</el-button
>
<button type="primary" class="btn" @click="onSubmit(form)">
用户登录
</button>
</el-form>
</div>
</div>
@ -41,7 +57,7 @@ export default {
],
Password: [
{ required: true, message: "请输入密码", trigger: "blur" },
{ min: 3, max: 8, message: "长度在 3 到 5 个字符", trigger: "blur" },
{ min: 3, max: 8, message: "长度在 3 到 8 个字符", trigger: "blur" },
],
},
};
@ -61,25 +77,26 @@ export default {
})
.then((res) => {
msgs = res.data.msg;
if(res.code==1){
writetoken(res.data.expires_in);
window.localStorage.setItem("token", res.data.access_token);
window.localStorage.setItem(
"refresh_token",
res.data.refresh_token
);
window.localStorage.setItem("tokentype", res.data.token_type);
window.localStorage.setItem("user", this.form.Username);
if (res.data.code == 1) {
window.sessionStorage.setItem("peisid", res.data.peisid); //
writetoken(res.data.expires_in);
window.localStorage.setItem("token", res.data.access_token);
window.localStorage.setItem(
"refresh_token",
res.data.refresh_token
);
window.localStorage.setItem("tokentype", res.data.token_type);
window.localStorage.setItem("user", this.form.Username);
this.$router.push({ path: "home" });
this.$store.state.changepassword = this.form.Password;
} else {
this.$message.warning(res.data.msg);
}
this.$message.success(msgs);
console.log(res,'res');
console.log(res, "res");
// if (res.code != -1 && res.data.code == 1) {
// window.sessionStorage.setItem("peisid", res.data.peisid); //
// return this.$axios.post(
// mm.apiurl + "/connect/token",
@ -113,7 +130,7 @@ export default {
// this.$router.push({ path: "home" });
// this.$store.state.changepassword = this.form.Password;
// })
.catch((err) => { });
.catch((err) => {});
// console.log(res);
// if (res.data.code == 1 && res.code == 1) {
@ -265,8 +282,33 @@ export default {
},
};
</script>
<style lang="scss" scoped>
::v-deep .el-input__icon{
color: #2BCA84;
}
::v-deep .el-form-item.is-error .el-input__inner {
color: #000;
background-color: rgb(234, 253, 234);
}
::v-deep .el-input {
color: #000;
}
.el-input--prefix .el-input__inner {
background-color: rgb(234, 253, 234);
color: #ccc;
// opacity: 1;
}
.inputcolor {
border: 1px solid rgb(234, 253, 234) !important;
}
::v-deep .el-input__inner {
background-color: rgb(234, 253, 234);
opacity: 0.3;
color: rgba(186, 251, 185, 1);
}
::v-deep .el-form-item {
// border: 1px solid rgb(0, 183, 92);
}
.bg {
background-color: black;
// background: url("https://img.zcool.cn/community/013c8b5b62d108a801206a35bea1eb.jpg@2o.jpg");1
@ -285,9 +327,10 @@ export default {
height: 300px;
display: flex;
// background: #fff;
// background: rgb(190, 243, 210);
background: rgba(186, 251, 185, 1);
opacity: .5;
// background: rgb(185, 251, 211);
// box-shadow: 0 6px #99907e;
// background: rgba(186, 251, 185, 1);
// opacity: 0.4;
position: absolute;
left: 50%;
top: 50%;
@ -302,7 +345,7 @@ export default {
font-weight: 700;
font-size: 20px;
color: rgba(73, 73, 73, 1);
opacity: .5;
opacity: 0.7;
}
}
@ -310,9 +353,9 @@ export default {
margin-top: 20px;
padding: 20px;
}
.btn :hover {
background-color: rgb(0, 183, 92);
}
// .btn :hover {
// // background-color: rgb(0, 183, 92);
// }
.btn {
background-color: rgb(0, 183, 92);
// background-color: #ccc;

68
src/views/user-list/OrganizationUnits.vue

@ -209,15 +209,35 @@ export default {
organizationtreeaddoredit() {
if (this.title == 1) {
if (this.form.displayName != "") {
postapi("/api/app/organization-units/creatre", {
displayName: this.form.displayName,
isPeis: this.form.isPeis,
}).then((res) => {
this.$message.success("新增成功");
this.dialogVisible = false;
this.form.displayName = "";
this.getonorganization();
});
console.log(this.form.parentId);
if (this.form.parentId == "") {
postapi("/api/app/organization-units/creatre", {
displayName: this.form.displayName,
isPeis: this.form.isPeis,
}).then((res) => {
if (res.code == 0) {
this.$message.success("新增成功");
this.dialogVisible = false;
this.form.displayName = "";
this.getonorganization();
}
});
} else {
postapi("/api/app/organization-units/creatre", {
displayName: this.form.displayName,
isPeis: this.form.isPeis,
parentId: this.form.parentId,
}).then((res) => {
if (res.code == 0) {
this.$message.success("新增成功");
this.dialogVisible = false;
this.form.displayName = "";
this.getonorganization();
}
});
}
} else {
this.$message.warning("请输入名称");
}
} else if (this.title == 2) {
putapi(
@ -230,18 +250,22 @@ export default {
}
});
} else if (this.title == 3) {
postapi("/api/app/organization-units/creatre", {
displayName: this.form.displayName,
isPeis: this.form.isPeis,
parentId: this.form.parentId,
}).then((res) => {
this.$message.success("新增成功");
this.dialogVisible = false;
// this.form = {};
this.form.displayName = "";
this.form.isPeis = "N";
this.getonorganization();
});
if (this.form.displayName == "") {
this.$message.warning("请输入名称");
} else {
postapi("/api/app/organization-units/creatre", {
displayName: this.form.displayName,
isPeis: this.form.isPeis,
parentId: this.form.parentId,
}).then((res) => {
this.$message.success("新增成功");
this.dialogVisible = false;
// this.form = {};
this.form.displayName = "";
this.form.isPeis = "N";
this.getonorganization();
});
}
}
},
check(data) {
@ -269,6 +293,7 @@ export default {
// this.$message.success("");
// });
// });
console.log(data);
getapi("/api/app/organization-units/by-code-all").then((res) => {
this.treedata = res.data;
console.log(res);
@ -276,6 +301,7 @@ export default {
this.selecttable = [];
this.dialogVisible = true;
this.title = 1;
this.form.parentId = "";
console.log(this.form);
this.form.displayName = "";
},

Loading…
Cancel
Save