diff --git a/dsBase/src/main/resource/application_pro.yaml b/dsBase/src/main/resource/application_pro.yaml index 7673bd7f..0af87d49 100644 --- a/dsBase/src/main/resource/application_pro.yaml +++ b/dsBase/src/main/resource/application_pro.yaml @@ -1,5 +1,5 @@ # 上传文件的临时路径 -uploadTempPath: c:/Windows/Temp +uploadTempPath: /tmp # JWT SECRET: ZXZnZWVr5b+r5LmQ5L2g55qE5Ye66KGM # 生成Token的密码 @@ -8,17 +8,20 @@ CookieMd5SingPwd: DsideaL4r5t6y7u mysql: # 数据库信息 driverClassName: com.mysql.cj.jdbc.Driver - user: root - password: DsideaL147258369 - jdbcUrl : jdbc:mysql://10.10.14.210:22066/ds_db?rewriteBatchedStatements=true&useUnicode=true&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai + user: ylt + password: Ycharge666 + jdbcUrl : jdbc:mysql://rm-bp1ux6tuk49er80t9.mysql.rds.aliyuncs.com:3306/ds_db?useUnicode=true&characterEncoding=UTF-8 redis: - ip: 10.10.14.210 - port: 18890 - password: + ip: r-bp14c1p5j5lkpw1jc2.redis.rds.aliyuncs.com + port: 6379 + password: Ycharge666 # ============================================================== +jwt: + # 生成Token的密码 + CookieMd5SingPwd: DsideaL4r5t6y7u excel: # 导出excel 的模板配置路径 diff --git a/dsBase/target/classes/application_pro.yaml b/dsBase/target/classes/application_pro.yaml index 7673bd7f..0af87d49 100644 --- a/dsBase/target/classes/application_pro.yaml +++ b/dsBase/target/classes/application_pro.yaml @@ -1,5 +1,5 @@ # 上传文件的临时路径 -uploadTempPath: c:/Windows/Temp +uploadTempPath: /tmp # JWT SECRET: ZXZnZWVr5b+r5LmQ5L2g55qE5Ye66KGM # 生成Token的密码 @@ -8,17 +8,20 @@ CookieMd5SingPwd: DsideaL4r5t6y7u mysql: # 数据库信息 driverClassName: com.mysql.cj.jdbc.Driver - user: root - password: DsideaL147258369 - jdbcUrl : jdbc:mysql://10.10.14.210:22066/ds_db?rewriteBatchedStatements=true&useUnicode=true&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai + user: ylt + password: Ycharge666 + jdbcUrl : jdbc:mysql://rm-bp1ux6tuk49er80t9.mysql.rds.aliyuncs.com:3306/ds_db?useUnicode=true&characterEncoding=UTF-8 redis: - ip: 10.10.14.210 - port: 18890 - password: + ip: r-bp14c1p5j5lkpw1jc2.redis.rds.aliyuncs.com + port: 6379 + password: Ycharge666 # ============================================================== +jwt: + # 生成Token的密码 + CookieMd5SingPwd: DsideaL4r5t6y7u excel: # 导出excel 的模板配置路径 diff --git a/dsBuild/pom.xml b/dsBuild/pom.xml index b1a3094a..7cc1e6d9 100644 --- a/dsBuild/pom.xml +++ b/dsBuild/pom.xml @@ -65,7 +65,6 @@ - ch.qos.logback @@ -164,6 +163,61 @@ jsch 0.2.19 + + + + + ch.qos.logback + logback-classic + 1.5.8 + runtime + + + io.prometheus + simpleclient + 0.15.0 + + + io.prometheus + simpleclient_httpserver + 0.15.0 + + + io.kubernetes + client-java-api + 20.0.0 + + + io.kubernetes + client-java + 20.0.0 + + + io.kubernetes + client-java-extended + 20.0.0 + + + io.kubernetes + client-java-proto + 20.0.0 + + + commons-cli + commons-cli + 1.9.0 + + + io.kubernetes + client-java-cert-manager-models + 10.0.1 + + + io.kubernetes + client-java-prometheus-operator-models + 10.0.1 + + diff --git a/dsRes/src/main/java/com/dsideal/resource/Base/Controller/BaseController.java b/dsRes/src/main/java/com/dsideal/resource/Base/Controller/BaseController.java index 43d98a13..1dbaa330 100644 --- a/dsRes/src/main/java/com/dsideal/resource/Base/Controller/BaseController.java +++ b/dsRes/src/main/java/com/dsideal/resource/Base/Controller/BaseController.java @@ -1,8 +1,13 @@ package com.dsideal.resource.Base.Controller; import com.dsideal.resource.Base.Model.BaseModel; +import com.dsideal.resource.Interceptor.EmptyInterface; +import com.dsideal.resource.Interceptor.IsNumericInterface; import com.dsideal.resource.Util.RetKit; +import com.jfinal.aop.Before; import com.jfinal.core.Controller; +import com.jfinal.ext.interceptor.GET; +import com.jfinal.ext.interceptor.POST; import com.jfinal.plugin.activerecord.Page; import com.jfinal.plugin.activerecord.Record; @@ -14,13 +19,86 @@ public class BaseController extends Controller { /** * 功能:获取学段列表 */ + @Before({GET.class}) public void getStageList() { List list = bm.getStageList(); - Page page=new Page<>(); + Page page = new Page<>(); page.setList(list); page.setPageSize(20); page.setTotalRow(list.size()); page.setPageNumber(1); renderJson(RetKit.renderSuccess(page)); } + + /** + * 功能:增加科目 + */ + @Before({POST.class}) + @EmptyInterface({"subject_name", "subject_code"}) + @IsNumericInterface({"sort_id", "stage_id"}) + public void addSubject(String subject_name, String subject_code, int stage_id, int sort_id) { + //1、检查科目名称是不是已经在指定学段下存在,存在的不能继续添加 + if (!bm.checkSubjectName(subject_name, stage_id)) { + renderJson(RetKit.renderFail("该科目名称已存在")); + return; + } + //2、检查科目代码是不是在指定学段下存在,存在的不能继续添加 + if (!bm.checkSubjectCode(subject_code, stage_id)) { + renderJson(RetKit.renderFail("该科目代码已存在")); + return; + } + //3、可以正确添加 + bm.addSubject(subject_name, subject_code, stage_id, sort_id); + renderJson(RetKit.renderSuccess("操作成功")); + } + + /** + * 功能:删除科目 + */ + @Before({POST.class}) + @IsNumericInterface({"subject_id"}) + public void delSubject(int subject_id) { + bm.delSubject(subject_id); + renderJson(RetKit.renderSuccess("操作成功")); + } + + /** + * 功能:修改科目 + */ + @Before({POST.class}) + @EmptyInterface({"subject_name", "subject_code"}) + @IsNumericInterface({"sort_id", "stage_id", "subject_id"}) + public void updateSubject(int subject_id, String subject_name, String subject_code, int stage_id, int sort_id) { + //1、检查科目名称是不是已经在指定学段下存在,存在的不能继续添加 + if (!bm.checkSubjectName(subject_id, subject_name, stage_id)) { + renderJson(RetKit.renderFail("该科目名称已存在")); + return; + } + //2、检查科目代码是不是在指定学段下存在,存在的不能继续添加 + if (!bm.checkSubjectCode(subject_id, subject_code, stage_id)) { + renderJson(RetKit.renderFail("该科目代码已存在")); + return; + } + //3、可以正确修改 + bm.updateSubject(subject_id, subject_name, subject_code, stage_id, sort_id); + renderJson(RetKit.renderSuccess("操作成功")); + } + + /** + * 功能:科目列表 + */ + @Before({POST.class}) + public void listSubject(int stage_id, int page, int limit) { + Page listPage = bm.listSubject(stage_id, page, limit); + renderJson(RetKit.renderSuccess(listPage)); + } + + /** + * 功能:获取科目信息 + */ + @Before({POST.class}) + public void getSubject(int subject_id) { + Record record=bm.getSubject(subject_id); + renderJson(RetKit.renderSuccess(record)); + } } diff --git a/dsRes/src/main/java/com/dsideal/resource/Base/Model/BaseModel.java b/dsRes/src/main/java/com/dsideal/resource/Base/Model/BaseModel.java index 6e58c750..8e6ad6e8 100644 --- a/dsRes/src/main/java/com/dsideal/resource/Base/Model/BaseModel.java +++ b/dsRes/src/main/java/com/dsideal/resource/Base/Model/BaseModel.java @@ -1,16 +1,117 @@ package com.dsideal.resource.Base.Model; import com.jfinal.plugin.activerecord.Db; +import com.jfinal.plugin.activerecord.Page; import com.jfinal.plugin.activerecord.Record; + import java.util.List; public class BaseModel { /** * 功能:获取学段列表 + * * @return */ - public List getStageList(){ - String sql="select * from t_dm_stage order by stage_id"; + public List getStageList() { + String sql = "select * from t_dm_stage order by stage_id"; return Db.find(sql); } + + /** + * 功能:检查学科名称是否重复 + * + * @param subject_name + * @param stage_id + * @return + */ + public boolean checkSubjectName(String subject_name, int stage_id) { + return checkSubjectName(-1, subject_name, stage_id); + } + + public boolean checkSubjectName(int subject_id, String subject_name, int stage_id) { + String sql = "select count(1) as c from t_dm_subject where subject_name=? and stage_id=? and subject_id<>?"; + int count = Db.findFirst(sql, subject_name, stage_id, subject_id).getInt("c"); + return count > 0; + } + + /** + * 功能:检查学科代码是否重复 + * + * @param subject_code + * @param stage_id + * @return + */ + public boolean checkSubjectCode(String subject_code, int stage_id) { + return checkSubjectCode(-1, subject_code, stage_id); + } + + public boolean checkSubjectCode(int subject_id, String subject_code, int stage_id) { + String sql = "select count(1) as c from t_dm_subject where subject_code=? and stage_id=? and subject_id<>?"; + int count = Db.findFirst(sql, subject_code, stage_id, subject_id).getInt("c"); + return count > 0; + } + + /** + * 功能:添加学科 + * + * @param subject_name + * @param subject_code + * @param stage_id + * @param sort_id + */ + public void addSubject(String subject_name, String subject_code, int stage_id, int sort_id) { + Record record = new Record(); + record.set("subject_name", subject_name); + record.set("subject_code", subject_code); + record.set("stage_id", stage_id); + record.set("sort_id", sort_id); + Db.save("t_dm_subject", record); + } + + /** + * 功能:删除学科 + * + * @param subject_id + */ + public void delSubject(int subject_id) { + String sql = "delete from t_dm_subject where subject_id=?"; + Db.update(sql, subject_id); + } + + /** + * 功能:修改学科 + * + * @param subject_id + * @param subject_name + * @param subject_code + * @param stage_id + * @param sort_id + */ + public void updateSubject(int subject_id, String subject_name, String subject_code, int stage_id, int sort_id) { + String sql = "update t_dm_subject set subject_name=?,subject_code=?,stage_id=?,sort_id=? where subject_id=?"; + Db.update(sql, subject_name, subject_code, stage_id, sort_id, subject_id); + } + + /** + * 功能:获取学科列表 + * + * @param stage_id + * @param page + * @param limit + * @return + */ + public Page listSubject(int stage_id, int page, int limit) { + String sql = "from t_dm_subject where stage_id=? order by sort_id"; + return Db.paginate(page, limit, "select *", sql, stage_id); + } + + /** + * 功能:获取学科信息 + * + * @param subject_id + * @return + */ + public Record getSubject(int subject_id) { + return Db.findById("t_dm_subject", subject_id); + } } diff --git a/dsRes/src/main/java/com/dsideal/resource/Util/RetKit.java b/dsRes/src/main/java/com/dsideal/resource/Util/RetKit.java index 9e299d4a..9bc219ab 100644 --- a/dsRes/src/main/java/com/dsideal/resource/Util/RetKit.java +++ b/dsRes/src/main/java/com/dsideal/resource/Util/RetKit.java @@ -18,9 +18,11 @@ public class RetKit { public static Map renderSuccess(List list) { return renderSuccess(null, list, null, 0, 0, 0); } + public static Map renderSuccess(String msg, List list) { return renderSuccess(msg, list, null, 0, 0, 0); } + public static Map renderSuccess(Page page) { return renderSuccess(null, page.getList(), "list", page.getPageNumber(), page.getPageSize(), page.getTotalRow()); } @@ -43,6 +45,23 @@ public class RetKit { return renderSuccess(null, jsonArray); } + public static Map renderSuccess(String msg) { + Map rMap = new HashMap<>(); + rMap.put("code", 200); + if (!StrKit.isBlank(msg)) { + rMap.put("msg", msg); + } + return rMap; + } + + public static Map renderSuccess(Record record) { + Map rMap = new HashMap<>(); + rMap.put("code", 200); + rMap.put("msg", "获取成功"); + rMap.put("data", record); + return rMap; + } + public static Map renderSuccess(String msg, cn.hutool.json.JSONArray jsonArray) { Map rMap = new HashMap<>(); rMap.put("code", 200);