package com.e3.library.api;
import com.e3.library.model.library.Model;
import com.e3.library.util.Field;
import com.e3.library.util.FileField;
import com.e3.library.util.ImageField;
import com.e3.library.util.Option;
import com.e3.library.util.menus.Menu;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@RestController
public class AdminApi extends BaseApi{
@RequestMapping(value = "/system.api", method = RequestMethod.GET)
public Result index() {
Map<String, Object> data = new HashMap<>();
List<Menu> menus = new ArrayList<>();
//
Menu adminMenu = new Menu("管理员管理", "el-icon-s-custom", "/", false);
adminMenu.addChildMenu(new Menu("管理员列表", "/admin", "list","admin", false));
// adminMenu.addChildMenu(new Menu("角色列表", "/role", "list","role", false));
// adminMenu.addChildMenu(new Menu("普通用户列表", "/user", "list","user", false));
// adminMenu.addChildMenu(new Menu("用户组列表", "/group", "list","group", false));
menus.add(adminMenu);
Menu userMenu = new Menu("用户管理", "el-icon-s-custom", "/", false);
userMenu.addChildMenu(new Menu("用户列表", "/member", "list","member", false));
menus.add(userMenu);
Menu doctorMenu = new Menu("医生管理", "el-icon-s-custom", "/", false);
doctorMenu.addChildMenu(new Menu("医生列表", "/doctor", "list","doctor", false));
menus.add(doctorMenu);
Menu departMenu = new Menu("科室管理", "el-icon-s-shop", "/", false);
departMenu.addChildMenu(new Menu("科室列表", "/major", "list","depart", false));
menus.add(departMenu);
Menu classMenu = new Menu("挂号管理", "el-icon-s-order", "/", false);
classMenu.addChildMenu(new Menu("挂号列表", "/order", "list","order", false));
menus.add(classMenu);
Menu fileMenu = new Menu("意见管理", "el-icon-s-flag", "/", false);
fileMenu.addChildMenu(new Menu("意见列表", "/feedback", "list","feedback", false));
menus.add(fileMenu);
// Menu resultMenu = new Menu("成绩管理", "el-icon-s-order", "/", false);
// resultMenu.addChildMenu(new Menu("成绩列表", "/exam_result", "list","exam_result", false));
// menus.add(resultMenu);
Menu setMenu = new Menu("系统管理", "el-icon-s-shop", "/", false);
setMenu.addChildMenu(new Menu("系统设置", "/setting", "setting","setting", false));
// menus.add(setMenu);
data.put("menus", menus);
// Login Type
List<Option> loginTypes = new ArrayList<>();
loginTypes.add(new Option("管理员", "admin"));
// loginTypes.add(new Option("用户", "user"));
data.put("loginTypes", loginTypes);
data.put("title", "医院预约挂号系统");
return this.ok(data);
}
@RequestMapping(value = "/login.api", method = RequestMethod.POST)
public Result index(HttpServletRequest request, @RequestBody Map<String, Object> data) {
Map<String, Object> query = new HashMap<>();
query.put("username", data.get("username"));
query.put("password", data.get("password"));
String table = (String) data.get("type");
Map<String,Object> admin = this.getModel(table).findByWhere(query);
if (admin != null) {
request.getSession().setAttribute("admin", admin);
// 以下字段为登录必须的
data.put("id", admin.get("id"));
data.put("username", admin.get("username"));
data.put("resource", table);
data.put("password", admin.get("password")+"xxx");
// 默认1为超级管理员
if (table.equals("admin")) {
data.put("is_super", true);
data.put("auth_id", 0);
data.put("name", admin.get("username") + "(管理员)");
} else {
data.put("name", admin.get("username"));
data.put("is_super", false);
// 认证ID 以这个ID来获取权限
data.put("auth_id", admin.get("group_id"));
}
data.put("avatar", "https://ss1.bdstatic.com/70cFvXSh_Q1YnxGkpoWK1HF6hhy/it/u=2180936608,1480355193&fm=26&gp=0.jpg");
return this.ok(data);
} else {
return this.fail(401, "用户名或密码错误");
}
}
@RequestMapping(value = "/{table}/list.api", method = RequestMethod.GET)
public Result index(@PathVariable String table, HttpServletRequest request) {
int page = 1;
if (request.getParameter("page") != null) {
page = Integer.parseInt(request.getParameter("page"));
}
Model model = this.getModel(table, request);
if (!model.validate(request)) {
return fail(401, "认证未通过");
}
Map<String, Object> queries = new HashMap<>();
if (request.getParameter("name") != null && !request.getParameter("name").equals("")) {
queries.put("name", request.getParameter("name"));
}
Map<String, Object> data = new HashMap<>();
// fields
data.put("fields", model.getFields());
// addFields
data.put("addFields", model.getAddFields());
// editFields
data.put("editFields", model.getEditFields());
// searchFields
data.put("searchFields", model.getSearchFields());
// fullActions
data.put("fullActions", model.getFullActions());
// partActions
data.put("partActions", model.getPartActions());
// 数据
data.put("list", model.getVisitData(model.getByPage(queries, page)));
// 总数
data.put("total", model.countByWhere(queries));
return this.ok(data);
}
@RequestMapping(value = "/{table}/{id}.api", method = RequestMethod.GET)
public Result show(@PathVariable String table,@PathVariable Integer id,HttpServletRequest request) {
Model model = this.getModel(table, request);
if (!model.validate(request)) {
return fail(401, "认证未通过");
}
Map<String, Object> data = new HashMap<>();
data.put("fields", model.getAddFields());
data.put("data", model.find(id));
return this.ok(data);
}
@RequestMapping(value = "/{table}.api", method = RequestMethod.POST)
public Result store(@PathVariable String table, HttpServletRequest request, @RequestBody Map<String, Object> data) {
Model model = this.getModel(table, request);
if (!model.validate(request)) {
return fail(401, "认证未通过");
}
System.out.println(data);
model.create(this.getModel(table).getAddData(data));
return this.ok(data);
}
@RequestMapping(value = "/{table}/{id}.api", method = RequestMethod.POST)
public Result update(@PathVariable String table,@PathVariable Integer id, HttpServletRequest request, @RequestBody Map<String, Object> data) {
Model model = this.getModel(table, request);
if (!model.validate(request)) {
return fail(401, "认证未通过");
}
model.updateById(id, this.getModel(table).getEditData(data));
return this.ok(data);
}
@RequestMapping(value = "/{table}/{id}.api", method = RequestMethod.DELETE)
public Result delete(@PathVariable String table,@PathVariable Integer id, HttpServletRequest request) {
Model model = this.getModel(table, request);
if (!model.validate(request)) {
return fai
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
随着科学技术的不断发展,现在的挂号技术已经结合了计算机应用进行了开发,使得挂号可以通过网络的方式提前进行预约,并且可以提前约1周内、1个月内的就诊号码,为患者提供了加大的便利。让患者能够在网络上就能够看到具体的专家门诊哪天有空余的问诊号码可以进行挂号操作,节约了患者的时间也减轻了医院医生人工挂号的工作强度。 此次是借助于微信小程序来搭建一款医院挂号的小程序,通过小程序的开发能够让患者在手机上实现挂号的功能,能够更加方便用户的使用。 关键词:微信小程序;医院挂号;MySQL
资源推荐
资源详情
资源评论
收起资源包目录
小程序&&&医院预约挂号小程序(java)cx&.zip (1925个子文件)
0014a4b06eee3d0c0d54402a47ab2601b2862b 96KB
006622124dabd7d01f2f4b2b512d33113ece59 49B
007f3af36dcf6a78a086c212e0687e172e7088 970B
00cbd3c8911c420f61b90496763798691fb28d 835B
0181c304696495142c87263686f21d8e348d17 1KB
0199f46e232e2129487f70cd508663df2cb625 117B
021beff3c82c2b34ef9ab44937d1274ef0f575 566B
025dbeb05eebb85ac2120be8edc7cda530c6f2 268B
02add20b581be471b8d17f887b8e8337070546 194B
03114192d5a525ffdc74d1b0728f7bc1c374ab 452B
032fa52d2e46d2d54ae8ee4b8161a9ab04dd8f 196B
036a7003cce0d84da9c8162bc8de4564c35200 134B
03b1227c20f70f30275ce54151b8fff80692d5 261B
0409aaa2e2f4bbc35fe79e602f0e6e5b8edf3d 734B
046640cd85e35a2863b5ebf7942709ac8a9822 4KB
0477b192c0bef44461d01f09b8faa1f1a73dc5 775B
04a7e9b8af15a316ddac67fc8dcb22ec7f1535 326B
04dc5d8fa00437f7d6b23fb58b1bd5a69e1b1d 216B
04dd412ac38058a99cf37ea76830e5f0f27b24 52B
065087d4720326776b26c7b9d2482c9e467bca 2KB
06d201986d4b12be9b337fba28d6bc528b8024 355B
07e2f472e25b38c5c6b217e354c2bcd01c60b9 337B
07f2db6391976b722a7db09a8c8172d4946753 657B
07fdaef8d453290119594e89eeec125d8f3968 2KB
080764f32287cefed77b6cddeda8d8adc323ef 1KB
083d817208d5078a91c61337851eeaff69104b 518B
084e1332207a92374e14301b2e452f96a18560 885B
084e6b7e601de033beae3f7d45ac8155fe3c40 728B
08710e2757cd03a281986c2ba567c452ad122e 2KB
098314460265cc54e9a139e1dd904f3c177ca3 1KB
09ef4c3b5afd69129a0b16ebc3386ec7a50e31 62B
0a089b477170eb2ab1b2a730a0b5729833db9b 137B
0a168fd2df5d17b1264a3c8410a57cb53d6f56 867B
0a37d9916d3bf471c4a7b9ac2c80f9bdb5a5dc 56B
0a4124156a1294404ce7a7328df94d8bd1ca57 134B
0a57307441c609e448d560b84b215a01d92904 129B
0a591def9355cef54255baa416e2d8e36467f2 10KB
0aa1f3b5d584472fcff7d2772681b4083d9dce 591B
0abe77a2b5fc180b8e13213ca61967d56088cb 454B
0ac77388e78b58e1ff948ff3b66cbc3d84feeb 114B
0b36329377e4ae67a4ad2f0ec843d5eec9333a 135B
0b700850553a3d7be8d33cf6622c5a832cb1f0 2KB
0bbc2a0384e5654525e7581017364dd9ceb59c 3KB
0bc3211ba0c05fb6c0331fec8a6595414a07ae 339B
0bd8b0023c25e74fac444bfecd6c5d7a0dc448 2KB
0c59bdd2aa9ec308d40fcf4a8fccd4ec8bdb73 49B
0caf3fb513605e4d46bb395429321ab79bbbdd 259B
0d0338deecbeb6ed1b7739117396b2c9d9a0a6 2KB
0d0987c2b0de093a2644eb22135f255ce9e4d3 5KB
0d1f97816f22a7e670d08ed9e75f1a052ec26e 1KB
0d7a5fab0596b1450515ce7c1522dfa11a982d 298B
0da442e9a796cad2c66a4077c24d0aa7877f78 112B
0dc4da3df110ef54992804ee158dca2e94c65f 314B
0dd10e292cfeca622d7f7f4ba9cee0ec66ba8d 2KB
0e0437647eccae9bbd922ea66f30e7fe71a03b 402B
0e3013928d02e4f8a68536720d7a3e13c97982 629B
0eec8254ad3f7db253fbd230c13750af6364bd 134B
0effc43623f62e370f124fa17eef2fe97318a2 149B
0f89d61125b6e86a4890fd2227f36db13a2328 660B
0fa723f284730b155b8d5b0ec17b964043b5c1 129B
1005f64907298081f51cf27d440fa60067bd43 715B
105bd8c99f27d9b4dce84ff643f914834d61e7 83B
105c778278e9481286f1d39f719fb4fd96033b 374B
10d88e15c0a15f9c1c4308b4651bb86c9c05cc 62KB
111a38c849fa06175a318fa98625c38d717398 2KB
111ece891c5cfbefc11cc68e26a636457d64d0 1KB
11630d7038b2691a0d4629d5b05ca22a9ff64c 129B
119966f58b845b6949141b3af4b694e89d458e 342B
11a43be636929af7e1cfcc139bd7d8db854899 2KB
11cdfa4576ad0ec17b0a7979c3931629239657 209B
12202e8d31e1f68697668202847b5fe05e22b1 747B
1242b121790e8f60f7250f895950998d49f348 1001B
12f0ab1997a353deeb70d4b620f6daa8711835 134B
13246e8d0128e3ad1fe707029928260212a41d 409B
13d1bda306a98f50819886ea8bc1b76c7eea0d 134B
13fc60404b91e398a37200c4a77b645cfd9586 75KB
142fad1413e2969c3fc314b4e024d1d36db164 1KB
14a3c2f4587540cbcaaadcea056518ba2c1631 177B
15447b2c2404f5a50285edd024ab62847de5c3 306B
15496f42e005eeca0b52de96d80ceb62b4b67e 134B
15f89d79ed82cdb1f53aed2378d887915528f3 3KB
161691f65b7045f3f23d05fea96f1cb3e100d3 441B
16b7f97f94c4513267e8b4d91608dbd6ee2abb 191B
17a13c3352391adda9e799e195fdd8ac680cd5 12KB
17b6c497f5738f3a21471e56b6b6c38f5ef8ea 939B
17da8b1aaae2935e19ac97d9015f0fe24e8770 11KB
182909fdb21691a176c70e239b9ff7f35e57c1 338B
182eb12bc439ea1e30cf4aef2a636346e83bc5 73KB
18355cd59a426b51e8ed187022b1801bfd9995 154B
18e9d6c1f36df198864839d75a3398764bdc50 28KB
18f16cdc5e9c6b4b5fe9d988cc349c22abeaeb 74B
19348537e7b85ced6e8076027a4b093f19d270 885B
19450735430d2e0e2f20824751d1a6845f4171 484B
197792c2a1e0c0770edfabc411afd1f5bda61a 541B
1a6d838096ad19c8f348f8202049aa620cbe95 2KB
1ac575155adf99713dc243c64bb1b572a2dec0 49B
1accf3b8775229fdea255ade8bfd25a9f46208 2KB
1b29206e94befebca95789ca81ff0578405977 47B
1b6b96cacb837871d28ed3b1537e845caeabd4 380B
1ba1edcc1413408d1224b03bb871d5fa13e056 5KB
共 1925 条
- 1
- 2
- 3
- 4
- 5
- 6
- 20
资源评论
wzxue1984
- 粉丝: 18
- 资源: 913
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 数据库管理工具:dbeaver-ce-23.1.5-stable.x86-64.rpm
- 以下是一些适用于英语六级作文的万能句型模板,涵盖了引言、正文和结论部分的各类表达方式.docx
- MATLAB中的非线性规划
- 进行C语言面试资格确认是招聘过程中一个重要的步骤,目的是确保候选人具备足够的C语言编程能力和知识.docx
- Java 轻量级的集群负载均衡设计
- 纹身师个人网站模板.jpg
- 在C语言中,连接两个字符串(即将一个字符串附加到另一个字符串的末尾)通常可以使用标准库中的 `strcat` 函数.docx
- 数据库管理工具:dbeaver-ce-23.1.1-stable.x86-64.rpm
- 以下是几个具体竞赛题目的详细解答,包括建模思路、方法和步骤 .docx
- 一份关于全国大学生建模大赛的相关教程!!
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功