Commit 088ecc7d authored by 李德才's avatar 李德才

Merge branch 'SZDAS_V2.0' of http://gitlab.archser.com/common/aserver into SZDAS_V2.0

parents 8d221b77 558f4bb7
package com.archser.aserver.controller;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import com.archser.aserver.interceptor.JwtInterceptor;
import com.archser.aserver.model.Menu;
......@@ -18,160 +21,195 @@ import com.jfinal.plugin.activerecord.Db;
/**
* 应用菜单相关操作
*
* @author dgq
*
* @author dgq
*/
public class MenuController extends Controller {
@Inject
private LogService logService;
@Inject
private MenuService menuService;
/**
获取权限菜单
*/
public void index() {
String username = this.getAttrForStr("username");
Integer userId = Db.queryInt(Db.getSql("getUserId"), username);
List<System> systems = System.dao.template("getSystems").find();
Kv kvSystems = CollectionUtil.toIntMap(systems, "ID");
List<Menu> menus = null;
if ("admin".equals(username)) {
menus = Menu.dao.template("getMenus").find();
} else {
menus = Menu.dao.template("getMenusByUser", Kv.by("userId", userId)).find();
}
List<MenuStar> stars = MenuStar.dao.template("getMenuStar", userId).find();
for (Menu menu : menus) {
System system = (System) kvSystems.get(menu.getSystemId());
if (system != null) {
menu.put("system", system.getName());
menu.put("url", system.getUrl());
menu.put("star", exist(menu.getId(), stars));
List<Menu> abilities = system.get("menus", new ArrayList<Menu>());
abilities.add(menu);
system.put("menus", abilities);
}
}
this.renderJson(Ret.ok("apps", systems));
@Inject
private LogService logService;
@Inject
private MenuService menuService;
/**
* 获取权限菜单
*/
public void index() {
String username = this.getAttrForStr("username");
Integer userId = Db.queryInt(Db.getSql("getUserId"), username);
List<System> systems = System.dao.template("getSystems").find();
Kv kvSystems = CollectionUtil.toIntMap(systems, "ID");
List<Menu> menus = null;
if ("admin".equals(username)) {
menus = Menu.dao.template("getMenus").find();
} else {
menus = Menu.dao.template("getMenusByUser", Kv.by("userId", userId)).find();
}
List<MenuStar> stars = MenuStar.dao.template("getMenuStar", userId).find();
for (Menu menu : menus) {
System system = (System) kvSystems.get(menu.getSystemId());
if (system != null) {
menu.put("system", system.getName());
menu.put("url", system.getUrl());
menu.put("star", exist(menu.getId(), stars));
List<Menu> abilities = system.get("menus", new ArrayList<Menu>());
abilities.add(menu);
system.put("menus", abilities);
}
}
this.renderJson(Ret.ok("apps", systems));
}
/**
* 获取菜单列表
*/
public void getMenuList() {
try {
Integer sysId = getParaToInt("sysId");
String condStr = getPara("condStr");
renderJson(Ret.ok("data", menuService.getMenuListBySysId(sysId, condStr)));
} catch (Exception e) {
e.printStackTrace();
renderJson(Ret.fail("msg", "获取菜单列表出错,请刷新后重试!"));
}
}
/**
* 保存菜单数据
*/
public void saveMenuData() {
try {
Menu menu = getBean(Menu.class, "menu");
boolean state = menuService.saveMenuData(menu);
renderJson(Ret.ok("msg", state ? "保存菜单数据成功!" : "保存菜单数据出错,请刷新后重试!"));
} catch (Exception e) {
e.printStackTrace();
renderJson(Ret.fail("msg", "保存菜单数据出错,请刷新后重试!"));
}
}
/**
* 删除菜单数据
*/
public void deleteMenu() {
try {
String[] ids = getPara("ids").split(",");
boolean state = menuService.deleteMenu(ids);
renderJson(Ret.ok("msg", state ? "删除菜单数据成功!" : "删除菜单数据出错!"));
} catch (Exception e) {
e.printStackTrace();
renderJson(Ret.fail("msg", "删除菜单数据出错,请刷新后重试!"));
}
}
/**
* 菜单加星
*
* @param menuId
*/
public void star(int menuId) {
String username = this.getAttrForStr("username");
Integer userId = Db.queryInt(Db.getSql("getUserId"), username);
MenuStar star = new MenuStar();
star.setMenuId(menuId);
star.setUserId(userId);
star.set("ID", "SEQ_MENU_STAR.nextval");
Menu MeunStr = Menu.dao.findById(menuId);
System systemStr = System.dao.findById(MeunStr.getSystemId());
if (star.save()) {
this.renderJson(Ret.ok("star", star.getId()));
logService.saveAsLog("operate", username, JwtInterceptor.getIpAddr(getRequest()),
MeunStr.getTitle() + "-菜单加星成功", systemStr.getName());
} else {
this.renderJson(Ret.fail("msg", "菜单加星操作失败"));
logService.saveAsLog("operate", username, JwtInterceptor.getIpAddr(getRequest()),
MeunStr.getTitle() + "-菜单加星失败", systemStr.getName());
}
}
/**
* 取消菜单加星
*
* @param menuId
*/
@SuppressWarnings("unused")
public void cancelStar(int menuId) {
String username = this.getAttrForStr("username");
String app = this.getPara("app");
Integer userId = Db.queryInt(Db.getSql("getUserId"), username);
Menu MeunStr = Menu.dao.findById(menuId);
System systemStr = System.dao.findById(MeunStr.getSystemId());
Db.update(Db.getSqlPara("deleteMenuStar", Kv.by("userId", userId).set("menuId", menuId)));
this.renderJson(Ret.ok("star", 0));
logService.saveAsLog("operate", username, JwtInterceptor.getIpAddr(getRequest()),
MeunStr.getTitle() + "-菜单取消加星成功", systemStr.getName());
}
/**
* 菜单是否加星
*
* @param menuId
* @param stars
* @return
*/
private Integer exist(Integer menuId, List<MenuStar> stars) {
for (MenuStar star : stars) {
if (menuId.intValue() == star.getMenuId().intValue()) {
return star.getId();
}
}
return 0;
}
public void accessLog() {
String routName = getPara("routname");
String app = getPara("app");
String title = Db.queryStr(Db.getSql("findSystemTitleByType"), app);
String username = getAttr("username");
String ip = JwtInterceptor.getIpAddr(getRequest());
String content = title + "-功能访问-" + routName;
logService.saveAsLog("access", username, ip, content, app);
renderJson(Ret.ok());
}
public void getMenuGroup() {
Integer userId = Db.queryInt(Db.getSql("getUserId"), this.getAttrForStr("username"));
// 所有菜单
List<Menu> allMenuList = new Menu().dao().template("getMenuGroup", Kv.by("userId", userId)).find();
List<System> systems = System.dao.template("getSystems").find();
Map<Integer, System> systemMap = systems.stream().collect(Collectors.toMap(System::getId, System -> System));
List<MenuStar> stars = MenuStar.dao.template("getMenuStar", userId).find();
/**
* 获取菜单列表
*/
public void getMenuList() {
try {
Integer sysId = getParaToInt("sysId");
String condStr = getPara("condStr");
renderJson(Ret.ok("data", menuService.getMenuListBySysId(sysId, condStr)));
} catch (Exception e) {
e.printStackTrace();
renderJson(Ret.fail("msg", "获取菜单列表出错,请刷新后重试!"));
}
}
/**
* 保存菜单数据
*/
public void saveMenuData() {
try {
Menu menu = getBean(Menu.class, "menu");
boolean state = menuService.saveMenuData(menu);
renderJson(Ret.ok("msg", state?"保存菜单数据成功!":"保存菜单数据出错,请刷新后重试!"));
} catch (Exception e) {
e.printStackTrace();
renderJson(Ret.fail("msg", "保存菜单数据出错,请刷新后重试!"));
}
}
/**
* 删除菜单数据
*/
public void deleteMenu() {
try {
String[] ids = getPara("ids").split(",");
boolean state = menuService.deleteMenu(ids);
renderJson(Ret.ok("msg", state?"删除菜单数据成功!":"删除菜单数据出错!"));
} catch (Exception e) {
e.printStackTrace();
renderJson(Ret.fail("msg", "删除菜单数据出错,请刷新后重试!"));
}
}
/**
* 菜单加星
*
* @param menuId
*/
public void star(int menuId) {
String username = this.getAttrForStr("username");
Integer userId = Db.queryInt(Db.getSql("getUserId"), username);
MenuStar star = new MenuStar();
star.setMenuId(menuId);
star.setUserId(userId);
star.set("ID", "SEQ_MENU_STAR.nextval");
Menu MeunStr = Menu.dao.findById(menuId);
System systemStr = System.dao.findById(MeunStr.getSystemId());
if (star.save()) {
this.renderJson(Ret.ok("star", star.getId()));
logService.saveAsLog("operate", username, JwtInterceptor.getIpAddr(getRequest()),
MeunStr.getTitle() + "-菜单加星成功", systemStr.getName());
} else {
this.renderJson(Ret.fail("msg", "菜单加星操作失败"));
logService.saveAsLog("operate", username, JwtInterceptor.getIpAddr(getRequest()),
MeunStr.getTitle() + "-菜单加星失败", systemStr.getName());
}
}
/**
* 取消菜单加星
*
* @param menuId
*/
@SuppressWarnings("unused")
public void cancelStar(int menuId) {
String username = this.getAttrForStr("username");
String app = this.getPara("app");
Integer userId = Db.queryInt(Db.getSql("getUserId"), username);
Menu MeunStr = Menu.dao.findById(menuId);
System systemStr = System.dao.findById(MeunStr.getSystemId());
Db.update(Db.getSqlPara("deleteMenuStar", Kv.by("userId", userId).set("menuId", menuId)));
this.renderJson(Ret.ok("star", 0));
logService.saveAsLog("operate", username, JwtInterceptor.getIpAddr(getRequest()),
MeunStr.getTitle() + "-菜单取消加星成功", systemStr.getName());
}
/**
* 菜单是否加星
*
* @param menuId
* @param stars
* @return
*/
private Integer exist(Integer menuId, List<MenuStar> stars) {
for (MenuStar star : stars) {
if (menuId.intValue() == star.getMenuId().intValue()) {
return star.getId();
}
}
return 0;
}
public void accessLog() {
String routName = getPara("routname");
String app = getPara("app");
String title = Db.queryStr(Db.getSql("findSystemTitleByType"), app);
String username = getAttr("username");
String ip = JwtInterceptor.getIpAddr(getRequest());
String content = title + "-功能访问-" + routName;
logService.saveAsLog("access", username, ip, content, app);
renderJson(Ret.ok());
}
// 系统中的菜单,用于系统正常跳转
Map<String, Map<String, List<Menu>>> menuGroup = new HashMap<>();
// 页面中显示的菜单,过滤隐藏的菜单
Map<String, Map<String, List<Menu>>> viewApps = new HashMap<>();
allMenuList.forEach(menu -> {
// 处理菜单属性
System system = systemMap.get(menu.getSystemId());
menu.put("system", system.getName());
menu.put("url", system.getUrl());
// 过滤不需要显示的菜单
if (menu.getHidden() == null || menu.getHidden() != 1) {
menu.put("star", exist(menu.getId(), stars));
// 一级菜单组
viewApps.putIfAbsent(menu.getFirstLevelName(), new HashMap<String, List<Menu>>());
// 二级菜单组
viewApps.get(menu.getFirstLevelName()).putIfAbsent(menu.getSecondLevelName(), new ArrayList<Menu>());
// 最终菜单
viewApps.get(menu.getFirstLevelName()).get(menu.getSecondLevelName()).add(menu);
}
// 一级菜单组
menuGroup.putIfAbsent(menu.getFirstLevelName(), new HashMap<String, List<Menu>>());
// 二级菜单组
menuGroup.get(menu.getFirstLevelName()).putIfAbsent(menu.getSecondLevelName(), new ArrayList<Menu>());
// 最终菜单
menuGroup.get(menu.getFirstLevelName()).get(menu.getSecondLevelName()).add(menu);
});
renderJson(Ret.ok("apps", menuGroup).set("viewApps", viewApps).set("allMenu", allMenuList));
}
}
......@@ -20,7 +20,7 @@ public class MyGenerator extends Generator {
}
public static void main(String[] args) {
Prop p = new Prop("config.properties");
Prop p = new Prop("config-pro.properties");
String url = p.get("jdbcUrl");
String user = p.get("user");
......
......@@ -34,8 +34,8 @@ public class MyMetaBuilder extends MetaBuilder {
@Override
protected ResultSet getTablesResultSet() throws SQLException {
String schemaPattern = dialect instanceof OracleDialect ? dbMeta.getUserName() : null;
return dbMeta.getTables(conn.getCatalog(), schemaPattern, "%", new String[] {"TABLE"});
// String schemaPattern = dialect instanceof OracleDialect ? dbMeta.getUserName() : null;
return dbMeta.getTables(conn.getCatalog(), null, "%", new String[] {"TABLE"});
}
}
......@@ -6,39 +6,69 @@ Table: AS_CONFIG
NAME | VARCHAR2(255) | YES | | |
VAL | VARCHAR2(255) | YES | | |
DESCRIPTION | VARCHAR2(255) | YES | | |
ID | NUMBER(9) | NO | PRI | |
NAME | VARCHAR2(255) | YES | | |
VAL | VARCHAR2(255) | YES | | |
DESCRIPTION | VARCHAR2(255) | YES | | |
-------------+---------------+------+-----+---------+---------
Table: AS_LOG
-------------+--------------------+------+-----+---------+---------
Field | Type | Null | Key | Default | Remarks
-------------+--------------------+------+-----+---------+---------
ID | NUMBER(9) | NO | PRI | |
TYPE | VARCHAR2(150) | YES | | |
USER_ID | NUMBER(9) | YES | | |
CONTENT | VARCHAR2(1000) | YES | | |
CREATE_TIME | TIMESTAMP(6)(11,6) | YES | | |
EXTENDING | VARCHAR2(200) | YES | | |
SYSTEM_TYPE | VARCHAR2(50) | YES | | |
IP | VARCHAR2(50) | YES | | |
CODE | VARCHAR2(255) | YES | | |
TOKEN | VARCHAR2(255) | YES | | |
URL | VARCHAR2(255) | YES | | |
-------------+--------------------+------+-----+---------+---------
-------------+-----------------+------+-----+---------+---------
Field | Type | Null | Key | Default | Remarks
-------------+-----------------+------+-----+---------+---------
ID | NUMBER(9) | NO | PRI | | Log主键
TYPE | VARCHAR2(150) | YES | | | 日志类型,login、access、error、operate之一
USER_ID | NUMBER(9) | YES | | | 用户名,关联AS_USER表的USERNAME
CONTENT | VARCHAR2(3000) | YES | | | 日志内容
CREATE_TIME | TIMESTAMP(36,6) | YES | | | 日志产生时间
EXTENDING | VARCHAR2(200) | YES | | |
扩展文件,日志内容过长时保存到文件的路径
SYSTEM_TYPE | VARCHAR2(50) | YES | | | 系统类型名称
IP | VARCHAR2(50) | YES | | |
CODE | VARCHAR2(255) | YES | | |
TOKEN | VARCHAR2(255) | YES | | |
URL | VARCHAR2(1000) | YES | | |
ID | NUMBER(9) | NO | PRI | | Log主键
TYPE | VARCHAR2(150) | YES | | | 日志类型,login、access、error、operate之一
USER_ID | NUMBER(9) | YES | | | 用户名,关联AS_USER表的USERNAME
CONTENT | VARCHAR2(3000) | YES | | | 日志内容
CREATE_TIME | TIMESTAMP(36,6) | YES | | | 日志产生时间
EXTENDING | VARCHAR2(200) | YES | | |
扩展文件,日志内容过长时保存到文件的路径
SYSTEM_TYPE | VARCHAR2(50) | YES | | | 系统类型名称
IP | VARCHAR2(50) | YES | | |
CODE | VARCHAR2(255) | YES | | |
TOKEN | VARCHAR2(255) | YES | | |
URL | VARCHAR2(1000) | YES | | |
-------------+-----------------+------+-----+---------+---------
Table: AS_MENU
-------------+---------------+------+-----+---------+---------
Field | Type | Null | Key | Default | Remarks
-------------+---------------+------+-----+---------+---------
ID | NUMBER(9) | NO | PRI | |
NAME | VARCHAR2(50) | YES | | |
TITLE | VARCHAR2(50) | YES | | |
ICON | VARCHAR2(50) | YES | | |
DESCRIPTION | VARCHAR2(255) | YES | | |
PATH | VARCHAR2(255) | YES | | |
TARGET | VARCHAR2(30) | YES | | |
SYSTEM_ID | NUMBER(9) | YES | | |
HIDDEN | NUMBER(9) | YES | | |
-------------+---------------+------+-----+---------+---------
-------------------+---------------+------+-----+---------+---------
Field | Type | Null | Key | Default | Remarks
-------------------+---------------+------+-----+---------+---------
ID | NUMBER(9) | NO | PRI | |
NAME | VARCHAR2(50) | YES | | |
TITLE | VARCHAR2(50) | YES | | |
ICON | VARCHAR2(50) | YES | | |
DESCRIPTION | VARCHAR2(255) | YES | | |
PATH | VARCHAR2(255) | YES | | |
TARGET | VARCHAR2(30) | YES | | |
SYSTEM_ID | NUMBER(9) | YES | | |
HIDDEN | NUMBER(9) | YES | | |
FIRST_LEVEL_NAME | VARCHAR2(255) | YES | | |
SECOND_LEVEL_NAME | VARCHAR2(255) | YES | | |
GROUP_ORDER | INTEGER(10) | YES | | |
TITLE | VARCHAR2(50) | YES | | |
ICON | VARCHAR2(50) | YES | | |
DESCRIPTION | VARCHAR2(255) | YES | | |
PATH | VARCHAR2(255) | YES | | |
TARGET | VARCHAR2(30) | YES | | |
SYSTEM_ID | NUMBER(9) | YES | | |
HIDDEN | NUMBER(9) | YES | | |
GROUPNAME | VARCHAR2(50) | YES | | |
GROUPORDER | NUMBER(9) | YES | | 0 |
ID | NUMBER(9) | YES | PRI | |
-------------------+---------------+------+-----+---------+---------
Table: AS_MENU_STAR
---------+-----------+------+-----+---------+---------
......@@ -47,40 +77,67 @@ Table: AS_MENU_STAR
ID | NUMBER(9) | NO | PRI | |
MENU_ID | NUMBER(9) | YES | | |
USER_ID | NUMBER(9) | YES | | |
ID | NUMBER(9) | NO | PRI | |
MENU_ID | NUMBER(9) | YES | | |
USER_ID | NUMBER(9) | YES | | |
---------+-----------+------+-----+---------+---------
Table: AS_MESSAGE
------------+--------------------+------+-----+---------+---------
Field | Type | Null | Key | Default | Remarks
------------+--------------------+------+-----+---------+---------
ID | NUMBER(9) | NO | PRI | |
SENDER_ID | NUMBER(9) | YES | | |
SEND_TO_ID | NUMBER(9) | YES | | |
TITLE | VARCHAR2(200) | YES | | |
CONTENT | VARCHAR2(1000) | YES | | |
SYSTEM_ID | NUMBER(9) | YES | | |
PATH | VARCHAR2(255) | YES | | |
PARAMS | VARCHAR2(400) | YES | | |
OPERATE | VARCHAR2(40) | YES | | |
READ | VARCHAR2(1) | YES | | |
SEND_TIME | TIMESTAMP(6)(11,6) | YES | | |
------------+--------------------+------+-----+---------+---------
------------+-----------------+------+-----+---------+---------
Field | Type | Null | Key | Default | Remarks
------------+-----------------+------+-----+---------+---------
ID | NUMBER(9) | NO | PRI | |
SENDER_ID | NUMBER(9) | YES | | |
SEND_TO_ID | NUMBER(9) | YES | | |
TITLE | VARCHAR2(200) | YES | | |
CONTENT | VARCHAR2(1000) | YES | | |
SYSTEM_ID | NUMBER(9) | YES | | |
PATH | VARCHAR2(255) | YES | | |
PARAMS | VARCHAR2(1000) | YES | | |
OPERATE | VARCHAR2(40) | YES | | |
READ | VARCHAR2(1) | YES | | |
SEND_TIME | TIMESTAMP(36,6) | YES | | |
ID | NUMBER(9) | NO | PRI | |
SENDER_ID | NUMBER(9) | YES | | |
SEND_TO_ID | NUMBER(9) | YES | | |
TITLE | VARCHAR2(200) | YES | | |
CONTENT | VARCHAR2(1000) | YES | | |
SYSTEM_ID | NUMBER(9) | YES | | |
PATH | VARCHAR2(255) | YES | | |
PARAMS | VARCHAR2(1000) | YES | | |
OPERATE | VARCHAR2(40) | YES | | |
READ | VARCHAR2(1) | YES | | |
SEND_TIME | TIMESTAMP(36,6) | YES | | |
------------+-----------------+------+-----+---------+---------
Table: AS_ORGAN
--------+---------------+------+-----+---------+---------
Field | Type | Null | Key | Default | Remarks
--------+---------------+------+-----+---------+---------
ID | NUMBER(9) | NO | PRI | |
NAME | VARCHAR2(50) | YES | | |
PID | NUMBER(9) | YES | | |
ISUNIT | VARCHAR2(1) | YES | | 'N'
|
IDSEQ | VARCHAR2(500) | YES | | ''
|
UUID | VARCHAR2(500) | YES | | |
PUUID | VARCHAR2(500) | YES | | |
LOCKED | VARCHAR2(1) | YES | | |
--------+---------------+------+-----+---------+---------
------------------+----------------+------+-----+---------+---------
Field | Type | Null | Key | Default | Remarks
------------------+----------------+------+-----+---------+---------
ID | NUMBER(9) | NO | PRI | |
NAME | VARCHAR2(50) | YES | | |
PID | NUMBER(9) | YES | | |
ISUNIT | VARCHAR2(1) | YES | | 'N' |
IDSEQ | VARCHAR2(500) | YES | | '' | 机构立档单位路径
IDPATH | VARCHAR2(1000) | YES | | |
RANKING | NUMBER(4) | YES | | |
ID | NUMBER(9) | NO | PRI | |
NAME | VARCHAR2(50) | YES | | |
PID | NUMBER(9) | YES | | |
ISUNIT | VARCHAR2(1) | YES | | 'N' |
IDSEQ | VARCHAR2(500) | YES | | '' |
DC_ORGUUID | VARCHAR2(500) | YES | | | 用于接收kafka机构的ID
DC_PARENTORGUUID | VARCHAR2(500) | YES | | | 用于接收kafka机构的父ID
DC_DELFLAG | VARCHAR2(50) | YES | | | 机构的锁定
DC_ORGLEVEL | VARCHAR2(255) | YES | | | 部门级别
DC_SERIALINDEX | VARCHAR2(255) | YES | | | 排序
DC_ORGCODE | VARCHAR2(255) | YES | | NULL |
DC_ENNAME | VARCHAR2(255) | YES | | NULL |
DC_ORGTYPE | VARCHAR2(255) | YES | | NULL |
DC_ORGSORT | VARCHAR2(255) | YES | | NULL |
DC_ORGLEVELCODE | VARCHAR2(255) | YES | | NULL |
DC_STATUS | VARCHAR2(255) | YES | | NULL |
------------------+----------------+------+-----+---------+---------
Table: AS_ROLE
-------------+---------------+------+-----+---------+---------
......@@ -90,9 +147,15 @@ Table: AS_ROLE
NAME | VARCHAR2(50) | YES | | |
DESCRIPTION | VARCHAR2(255) | YES | | |
LOCKED | VARCHAR2(1) | YES | | |
CREATETIME | DATE(7) | YES | | |
IDSEQ | VARCHAR2(500) | YES | | ''
|
CREATETIME | TIMESTAMP(29) | YES | | |
IDSEQ | VARCHAR2(500) | YES | | '' |
ISINCLUDE | VARCHAR2(5) | YES | | |
ID | NUMBER(9) | NO | PRI | |
NAME | VARCHAR2(50) | YES | | |
DESCRIPTION | VARCHAR2(255) | YES | | |
LOCKED | VARCHAR2(1) | YES | | |
CREATETIME | TIMESTAMP(29) | YES | | |
IDSEQ | VARCHAR2(500) | YES | | '' |
-------------+---------------+------+-----+---------+---------
Table: AS_ROLE_MENU
......@@ -102,6 +165,9 @@ Table: AS_ROLE_MENU
ID | NUMBER(9) | NO | PRI | |
ROLE_ID | NUMBER(9) | YES | | |
MENU_ID | NUMBER(9) | YES | | |
ID | NUMBER(9) | NO | PRI | |
ROLE_ID | NUMBER(9) | YES | | |
MENU_ID | NUMBER(9) | YES | | |
---------+-----------+------+-----+---------+---------
Table: AS_ROLE_USER
......@@ -111,6 +177,9 @@ Table: AS_ROLE_USER
ID | NUMBER(9) | NO | PRI | |
USER_ID | NUMBER(9) | YES | | |
ROLE_ID | NUMBER(9) | YES | | |
ID | NUMBER(9) | NO | PRI | |
USER_ID | NUMBER(9) | YES | | |
ROLE_ID | NUMBER(9) | YES | | |
---------+-----------+------+-----+---------+---------
Table: AS_SYSTEM
......@@ -127,28 +196,62 @@ Table: AS_SYSTEM
PRIVATEKEY | VARCHAR2(2000) | YES | | |
PUBLICKEY | VARCHAR2(500) | YES | | |
DESCRIPTION | VARCHAR2(255) | YES | | |
ID | NUMBER(9) | NO | PRI | |
NAME | VARCHAR2(50) | YES | | |
TITLE | VARCHAR2(50) | YES | | |
TYPE | VARCHAR2(50) | YES | | |
URL | VARCHAR2(255) | YES | | |
SERVICE | VARCHAR2(255) | YES | | |
KEYID | VARCHAR2(50) | YES | | |
PRIVATEKEY | VARCHAR2(2000) | YES | | |
PUBLICKEY | VARCHAR2(500) | YES | | |
DESCRIPTION | VARCHAR2(255) | YES | | |
-------------+----------------+------+-----+---------+---------
Table: AS_USER
-----------------+---------------+------+-----+---------+---------
Field | Type | Null | Key | Default | Remarks
-----------------+---------------+------+-----+---------+---------
ID | NUMBER(9) | NO | PRI | |
USERNAME | VARCHAR2(40) | YES | | |
PASSWORD | VARCHAR2(64) | YES | | |
LOCKED | VARCHAR2(1) | YES | | |
NAME | VARCHAR2(40) | YES | | |
EMAIL | VARCHAR2(50) | YES | | |
ORGAN_ID | NUMBER(9) | YES | | |
OFFICE_PHONE | VARCHAR2(20) | YES | | |
MOBILE_PHONE | VARCHAR2(20) | YES | | |
HOME_PHONE | VARCHAR2(20) | YES | | |
ADDRESS | VARCHAR2(500) | YES | | |
POSTCODE | VARCHAR2(10) | YES | | |
DESCRIPTION | VARCHAR2(500) | YES | | |
IMAGE | BLOB(4000) | YES | | |
UUID | VARCHAR2(500) | YES | | |
ERRORCOUNT | NUMBER(9) | YES | | |
LAST_LOGIN_TIME | DATE(7) | YES | | |
-----------------+---------------+------+-----+---------+---------
---------------------+------------------+------+-----+---------+---------
Field | Type | Null | Key | Default | Remarks
---------------------+------------------+------+-----+---------+---------
ID | NUMBER(9) | NO | PRI | |
USERNAME | VARCHAR2(40) | YES | | |
PASSWORD | VARCHAR2(64) | YES | | |
LOCKED | VARCHAR2(1) | YES | | |
NAME | VARCHAR2(40) | YES | | |
EMAIL | VARCHAR2(50) | YES | | |
ORGAN_ID | NUMBER(9) | YES | | |
OFFICE_PHONE | VARCHAR2(20) | YES | | |
MOBILE_PHONE | VARCHAR2(20) | YES | | |
HOME_PHONE | VARCHAR2(20) | YES | | |
ADDRESS | VARCHAR2(500) | YES | | |
POSTCODE | VARCHAR2(10) | YES | | |
DESCRIPTION | VARCHAR2(500) | YES | | |
IMAGE | BLOB(2147483647) | YES | | |
ERRORCOUNT | NUMBER(9) | YES | | |
LAST_LOGIN_TIME | TIMESTAMP(29) | YES | | |
LAST_CHOICE_LIBRARY | VARCHAR2(1000) | YES | | | 该用户最后一次选择的档案门类
ID | NUMBER(9) | NO | PRI | |
USERNAME | VARCHAR2(40) | YES | | |
PASSWORD | VARCHAR2(64) | YES | | |
LOCKED | VARCHAR2(1) | YES | | |
NAME | VARCHAR2(40) | YES | | |
EMAIL | VARCHAR2(50) | YES | | |
ORGAN_ID | NUMBER(9) | YES | | |
OFFICE_PHONE | VARCHAR2(20) | YES | | |
MOBILE_PHONE | VARCHAR2(20) | YES | | |
HOME_PHONE | VARCHAR2(20) | YES | | |
ADDRESS | VARCHAR2(500) | YES | | |
POSTCODE | VARCHAR2(10) | YES | | |
DESCRIPTION | VARCHAR2(500) | YES | | |
IMAGE | BLOB(2147483647) | YES | | |
UUID | VARCHAR2(500) | YES | | | kafka中用户ID
ERRORCOUNT | NUMBER(9) | YES | | |
LAST_LOGIN_TIME | TIMESTAMP(29) | YES | | |
DC_PERSONCODE | VARCHAR2(500) | YES | | |
DC_USERID | VARCHAR2(255) | YES | | NULL |
DC_IDNUM | VARCHAR2(50) | YES | | NULL |
DC_CARDTYPE | VARCHAR2(50) | YES | | NULL |
DC_LAWCARD | VARCHAR2(64) | YES | | NULL |
DC_SEQUENCENO | VARCHAR2(11) | YES | | NULL |
DC_DELFLAG | VARCHAR2(255) | YES | | NULL |
---------------------+------------------+------+-----+---------+---------
......@@ -9,65 +9,109 @@ import com.jfinal.plugin.activerecord.IBean;
@SuppressWarnings({"serial", "unchecked"})
public abstract class BaseLog<M extends BaseLog<M>> extends Model<M> implements IBean {
/**
* Log主键
*/
public M setId(java.lang.Integer id) {
set("ID", id);
return (M)this;
}
/**
* Log主键
*/
public java.lang.Integer getId() {
return getInt("ID");
}
/**
* 日志类型,login、access、error、operate之一
*/
public M setType(java.lang.String type) {
set("TYPE", type);
return (M)this;
}
/**
* 日志类型,login、access、error、operate之一
*/
public java.lang.String getType() {
return getStr("TYPE");
}
/**
* 用户名,关联AS_USER表的USERNAME
*/
public M setUserId(java.lang.Integer userId) {
set("USER_ID", userId);
return (M)this;
}
/**
* 用户名,关联AS_USER表的USERNAME
*/
public java.lang.Integer getUserId() {
return getInt("USER_ID");
}
/**
* 日志内容
*/
public M setContent(java.lang.String content) {
set("CONTENT", content);
return (M)this;
}
/**
* 日志内容
*/
public java.lang.String getContent() {
return getStr("CONTENT");
}
/**
* 日志产生时间
*/
public M setCreateTime(java.util.Date createTime) {
set("CREATE_TIME", createTime);
return (M)this;
}
/**
* 日志产生时间
*/
public java.util.Date getCreateTime() {
return get("CREATE_TIME");
}
/**
*
扩展文件,日志内容过长时保存到文件的路径
*/
public M setExtending(java.lang.String extending) {
set("EXTENDING", extending);
return (M)this;
}
/**
*
扩展文件,日志内容过长时保存到文件的路径
*/
public java.lang.String getExtending() {
return getStr("EXTENDING");
}
/**
* 系统类型名称
*/
public M setSystemType(java.lang.String systemType) {
set("SYSTEM_TYPE", systemType);
return (M)this;
}
/**
* 系统类型名称
*/
public java.lang.String getSystemType() {
return getStr("SYSTEM_TYPE");
}
......
......@@ -90,4 +90,31 @@ public abstract class BaseMenu<M extends BaseMenu<M>> extends Model<M> implement
return getInt("HIDDEN");
}
public M setFirstLevelName(java.lang.String firstLevelName) {
set("FIRST_LEVEL_NAME", firstLevelName);
return (M)this;
}
public java.lang.String getFirstLevelName() {
return getStr("FIRST_LEVEL_NAME");
}
public M setSecondLevelName(java.lang.String secondLevelName) {
set("SECOND_LEVEL_NAME", secondLevelName);
return (M)this;
}
public java.lang.String getSecondLevelName() {
return getStr("SECOND_LEVEL_NAME");
}
public M setGroupOrder(java.lang.Integer groupOrder) {
set("GROUP_ORDER", groupOrder);
return (M)this;
}
public java.lang.Integer getGroupOrder() {
return getInt("GROUP_ORDER");
}
}
......@@ -54,31 +54,22 @@ public abstract class BaseOrgan<M extends BaseOrgan<M>> extends Model<M> impleme
return getStr("IDSEQ");
}
public M setUuid(java.lang.String uuid) {
set("UUID", uuid);
public M setIdpath(java.lang.String idpath) {
set("IDPATH", idpath);
return (M)this;
}
public java.lang.String getUuid() {
return getStr("UUID");
public java.lang.String getIdpath() {
return getStr("IDPATH");
}
public M setPuuid(java.lang.String puuid) {
set("PUUID", puuid);
public M setRanking(java.lang.Integer ranking) {
set("RANKING", ranking);
return (M)this;
}
public java.lang.String getPuuid() {
return getStr("PUUID");
}
public M setLocked(java.lang.String locked) {
set("LOCKED", locked);
return (M)this;
}
public java.lang.String getLocked() {
return getStr("LOCKED");
public java.lang.Integer getRanking() {
return getInt("RANKING");
}
}
......@@ -63,4 +63,13 @@ public abstract class BaseRole<M extends BaseRole<M>> extends Model<M> implement
return getStr("IDSEQ");
}
public M setIsinclude(java.lang.String isinclude) {
set("ISINCLUDE", isinclude);
return (M)this;
}
public java.lang.String getIsinclude() {
return getStr("ISINCLUDE");
}
}
......@@ -135,15 +135,6 @@ public abstract class BaseUser<M extends BaseUser<M>> extends Model<M> implement
return get("IMAGE");
}
public M setUuid(java.lang.String uuid) {
set("UUID", uuid);
return (M)this;
}
public java.lang.String getUuid() {
return getStr("UUID");
}
public M setErrorcount(java.lang.Integer errorcount) {
set("ERRORCOUNT", errorcount);
return (M)this;
......@@ -162,4 +153,19 @@ public abstract class BaseUser<M extends BaseUser<M>> extends Model<M> implement
return get("LAST_LOGIN_TIME");
}
/**
* 该用户最后一次选择的档案门类
*/
public M setLastChoiceLibrary(java.lang.String lastChoiceLibrary) {
set("LAST_CHOICE_LIBRARY", lastChoiceLibrary);
return (M)this;
}
/**
* 该用户最后一次选择的档案门类
*/
public java.lang.String getLastChoiceLibrary() {
return getStr("LAST_CHOICE_LIBRARY");
}
}
......@@ -1881,6 +1881,7 @@
CONDITION varchar2(500),
CONDITION_UI varchar2(500),
TASK_ID number(9,0)
WRITEBACK varchar2(500),
);
create table "AS_CONFIG_RELATION"
(
......@@ -1911,11 +1912,29 @@
</sql>
</version>
<version edition="74" description="添加自定义水印透明度字段">
<sql creator="yangchengwu" createDate="20200819" note="添加自定义水印透明度字段">
alter table AS_SCAN_SETTING add WATERMARK_ALPHA DOUBLE(10);
</sql>
</version>
<version edition="75" description="添加task表字段">
<sql creator="chengYaqing" createDate="20200901" note="添加task表字段">
ALTER TABLE AS_TASK DROP COLUMN (ISDELE);
ALTER TABLE AS_TASK DROP COLUMN (TASKNUMBER);
ALTER TABLE AS_TASK DROP COLUMN (SRCDBID);
ALTER TABLE AS_TASK DROP COLUMN (TASKID);
ALTER TABLE AS_TASK DROP COLUMN (IDSEQ);
alter table AS_TASK add (fonds_number varchar2(50), ip varchar2(100) );
</sql>
</version>
<version edition="76" description="添加task表字段">
<sql creator="lidecai" createDate="20200901" note="设置菜单排序默认值">
alter table AS_MENU modify GROUP_ORDER default 0;
</sql>
</version>
......
dbType=DM
jdbcUrl=jdbc:dm://39.104.90.66:5236
jdbcUrl=jdbc:dm://39.104.174.12:5236
jdbc.driver=dm.jdbc.driver.DmDriver
user=archser_yz
password=archser_yz
basic.url=http://39.104.90.66:11028
user=archser
password=archser_v2.0
basic.url=http://39.104.174.12:11028
devMode =true
engineDevMode=true
......@@ -13,7 +13,7 @@ authUrl=http://125.77.26.133:7001/auth/token
userInfoUrl=http://125.77.26.133:7001/api/info/user_info
redirect_uri=http://192.168.31.17:8080/
redis.url=39.104.90.66
redis.url=39.104.174.12
redis.password=archser_redis
# --- 消息中心websocket配置 ---
......@@ -26,4 +26,4 @@ messageWsTimeout=30000
## 是否开启消息中心的websocket
openMessageWebSocket=true
MyIpAddress=127.0.0.1,39.104.28.145,39.104.90.66
\ No newline at end of file
MyIpAddress=127.0.0.1,39.104.28.145,39.104.174.12
\ No newline at end of file
......@@ -287,4 +287,16 @@ select * from AS_MENU where ID in (
)
) and system_id =#para(systemId) order by ID
#end
### 获取三级菜单
#sql("getMenuGroup")
select * from AS_MENU where ID in (
select MENU_ID from AS_ROLE_MENU where ROLE_ID in (
select r.ID from AS_ROLE r, AS_ROLE_USER ru where r.ID=ru.ROLE_ID and ru.USER_ID=#para(userId)
)
) order by GROUP_ORDER DESC;
#end
#include("message.sql")
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment