diff --git a/WEB-INF/classes/ExcelExportTemplate/excelTemp/8856DD1A-20E1-41E4-B890-038D5ED94E5D.xls b/WEB-INF/classes/ExcelExportTemplate/excelTemp/8856DD1A-20E1-41E4-B890-038D5ED94E5D.xls deleted file mode 100644 index 8a996c4..0000000 Binary files a/WEB-INF/classes/ExcelExportTemplate/excelTemp/8856DD1A-20E1-41E4-B890-038D5ED94E5D.xls and /dev/null differ diff --git a/src/main/java/com/dsideal/FengHuang/Yp/Controller/YpController.java b/src/main/java/com/dsideal/FengHuang/Yp/Controller/YpController.java index a54fbf9..3249f4f 100644 --- a/src/main/java/com/dsideal/FengHuang/Yp/Controller/YpController.java +++ b/src/main/java/com/dsideal/FengHuang/Yp/Controller/YpController.java @@ -23,6 +23,7 @@ import com.jfinal.upload.UploadFile; import java.io.File; import java.net.URISyntaxException; import java.util.HashMap; +import java.util.List; import java.util.Map; import java.util.UUID; @@ -107,10 +108,10 @@ public class YpController extends Controller { * @param uuid 照片ID */ @Before(POST.class) - @EmptyInterface({"xb", "xm", "mz", "byxx", "bybj", "sg", "zzfs", "hjszd", "jtzz", + @EmptyInterface({"xb", "xm", "mz", "byxx", "bybj", "sg", "hjszd", "jtzz", "xx", "fzhm", "bw", "db", "zg", "st", "zyz", "xly", "jlhd", "tc", "jwh", "uuid"}) public void save(String xb, String xm, String mz, String byxx, - String bybj, String sg, String zzfs, String hjszd, String jtzz, String xx, + String bybj, String sg, String hjszd, String jtzz, String xx, String bb_name, String bb_bureau, String bb_tel, String mm_name, String mm_bureau, String mm_tel, String fzhm, String bw, String db, String zg, String st, String zyz, String xly, String jlhd, String tc, String jwh, String uuid) { @@ -122,7 +123,7 @@ public class YpController extends Controller { return; } String zkz = getSessionAttr("zkz"); - model.save(zkz, xm, xb, mz, byxx, bybj, sg, zzfs, hjszd, jtzz, xx, bb_name, bb_bureau, bb_tel, mm_name, mm_bureau, + model.save(zkz, xm, xb, mz, byxx, bybj, sg, hjszd, jtzz, xx, bb_name, bb_bureau, bb_tel, mm_name, mm_bureau, mm_tel, fzhm, bw, db, zg, st, zyz, xly, jlhd, tc, jwh, uuid); kv.set("success", true); kv.set("message", "保存成功!"); @@ -187,7 +188,7 @@ public class YpController extends Controller { public void exportExcel() throws URISyntaxException { //模板文件 String excelPath = CommonUtil.getClassPath() + PropKit.get("excelExportTemplatePathSuffix").replace("\\", "/"); - String filePath = excelPath + "103.json"; + String filePath = excelPath + "103_YTB.json"; //转成 json对象 JSONObject jo = FileUtil.readJsonFile(filePath); //导出 @@ -195,7 +196,39 @@ public class YpController extends Controller { String excelFile = excelPath + "excelTemp/" + UUID.randomUUID().toString().toUpperCase() + ".xls"; ExcelCommonUtil.export(rs, jo, excelFile); //提供下载 - String filename = "学生信息表.xls"; + String filename = "已填报.xlsx"; renderFile(new File(excelFile), filename); } -} \ No newline at end of file + + @Before(GET.class) + public void exportWDL() throws URISyntaxException { + //模板文件 + String excelPath = CommonUtil.getClassPath() + PropKit.get("excelExportTemplatePathSuffix").replace("\\", "/"); + String filePath = excelPath + "103_WDL.json"; + //转成 json对象 + JSONObject jo = FileUtil.readJsonFile(filePath); + //导出 + List rs = model.exportWDL(); + String excelFile = excelPath + "excelTemp/" + UUID.randomUUID().toString().toUpperCase() + ".xls"; + ExcelCommonUtil.export(rs, jo, excelFile); + //提供下载 + String filename = "未登录.xlsx"; + renderFile(new File(excelFile), filename); + } + + @Before(GET.class) + public void exportYDLWTB() throws URISyntaxException { + //模板文件 + String excelPath = CommonUtil.getClassPath() + PropKit.get("excelExportTemplatePathSuffix").replace("\\", "/"); + String filePath = excelPath + "103_YDLWTB.json"; + //转成 json对象 + JSONObject jo = FileUtil.readJsonFile(filePath); + //导出 + List rs = model.exportYDLWTB(); + String excelFile = excelPath + "excelTemp/" + UUID.randomUUID().toString().toUpperCase() + ".xls"; + ExcelCommonUtil.export(rs, jo, excelFile); + //提供下载 + String filename = "已登录未填报.xlsx"; + renderFile(new File(excelFile), filename); + } +} diff --git a/src/main/java/com/dsideal/FengHuang/Yp/Model/YpModel.java b/src/main/java/com/dsideal/FengHuang/Yp/Model/YpModel.java index 7b08421..081afa7 100644 --- a/src/main/java/com/dsideal/FengHuang/Yp/Model/YpModel.java +++ b/src/main/java/com/dsideal/FengHuang/Yp/Model/YpModel.java @@ -49,7 +49,6 @@ public class YpModel { * @param byxx 毕业学校 * @param bybj 毕业班级 * @param sg 身高 - * @param zzfs 中招分数 * @param hjszd 户籍所在地 * @param jtzz 家庭住址 * @param xx 血型 @@ -72,7 +71,7 @@ public class YpModel { * @param uuid 照片ID */ public void save(String zkz, String xm, String xb, String mz, String byxx, - String bybj, String sg, String zzfs, String hjszd, String jtzz, String xx, + String bybj, String sg, String hjszd, String jtzz, String xx, String bb_name, String bb_bureau, String bb_tel, String mm_name, String mm_bureau, String mm_tel, String fzhm, String bw, String db, String zg, String st, String zyz, String xly, String jlhd, String tc, String jwh, String uuid) { @@ -85,7 +84,6 @@ public class YpModel { record.set("byxx", byxx); record.set("bybj", bybj); record.set("sg", sg); - record.set("zzfs", zzfs); record.set("hjszd", hjszd); record.set("jtzz", jtzz); record.set("xx", xx); @@ -115,4 +113,14 @@ public class YpModel { SqlPara sp = Db.getSqlPara("yp.listView"); return Db.paginate(page, limit, sp); } + + public List exportWDL() { + SqlPara sp = Db.getSqlPara("yp.exportWDL"); + return Db.find(sp); + } + + public List exportYDLWTB() { + SqlPara sp = Db.getSqlPara("yp.exportYDLWTB"); + return Db.find(sp); + } } \ No newline at end of file diff --git a/src/main/resource/ExcelExportTemplate/103_WDL.json b/src/main/resource/ExcelExportTemplate/103_WDL.json new file mode 100644 index 0000000..aecb415 --- /dev/null +++ b/src/main/resource/ExcelExportTemplate/103_WDL.json @@ -0,0 +1,24 @@ +{ + "title": "未登录人员列表", + "sheetName": "报表", + "titleHeight": 30, + "rowHeight": 30, + "showNumber": true, + "colInfo": [ + { + "show_column_name": "准考证号", + "list_column_name": "zkz", + "width": 16 + }, + { + "show_column_name": "学生姓名", + "list_column_name": "xm", + "width": 16 + }, + { + "show_column_name": "中招分数", + "list_column_name": "score", + "width": 16 + } + ] +} \ No newline at end of file diff --git a/src/main/resource/ExcelExportTemplate/103_YDLWTB.json b/src/main/resource/ExcelExportTemplate/103_YDLWTB.json new file mode 100644 index 0000000..ed7d8ce --- /dev/null +++ b/src/main/resource/ExcelExportTemplate/103_YDLWTB.json @@ -0,0 +1,24 @@ +{ + "title": "已未登录未填报人员", + "sheetName": "报表", + "titleHeight": 30, + "rowHeight": 30, + "showNumber": true, + "colInfo": [ + { + "show_column_name": "准考证号", + "list_column_name": "zkz", + "width": 16 + }, + { + "show_column_name": "学生姓名", + "list_column_name": "xm", + "width": 16 + }, + { + "show_column_name": "中招分数", + "list_column_name": "score", + "width": 16 + } + ] +} \ No newline at end of file diff --git a/src/main/resource/ExcelExportTemplate/103.json b/src/main/resource/ExcelExportTemplate/103_YTB.json similarity index 94% rename from src/main/resource/ExcelExportTemplate/103.json rename to src/main/resource/ExcelExportTemplate/103_YTB.json index 27b0bcb..45de6ef 100644 --- a/src/main/resource/ExcelExportTemplate/103.json +++ b/src/main/resource/ExcelExportTemplate/103_YTB.json @@ -1,5 +1,5 @@ { - "title": "学生信息填充情况", + "title": "学生信息填报情况", "sheetName": "报表", "titleHeight": 30, "rowHeight": 30, diff --git a/src/main/resource/Sql/yp.sql b/src/main/resource/Sql/yp.sql index 472d833..f3e5988 100644 --- a/src/main/resource/Sql/yp.sql +++ b/src/main/resource/Sql/yp.sql @@ -3,4 +3,10 @@ #sql("listView") select * from t_yp_record where length(xb)>0 #end + #sql("exportWDL") + SELECT zkz,xm,score FROM (select zkz,xm,score from t_yp_student as t1 where T1.zkz!='888888888888' AND t1.zkz not in (select zkz from t_yp_record) order by score desc ) AS T2; + #end + #sql("exportYDLWTB") + select zkz,xm,zzfs as score from t_yp_record where xb is null order by zzfs desc; + #end #end \ No newline at end of file diff --git a/target/classes/Backup/BackupMysqlFullDataBase.sh b/target/classes/Backup/BackupMysqlFullDataBase.sh new file mode 100644 index 0000000..e231783 --- /dev/null +++ b/target/classes/Backup/BackupMysqlFullDataBase.sh @@ -0,0 +1,30 @@ +#!/bin/bash + +# 备份目录 +backup_path="/usr/local/Backup" + +# 备份日期 +date_str=`date +%Y%m%d` + +# 备份的目录名称 +backup_path=/usr/local/Backup/base_db_${date_str} + +# 备份的文件名称 +FILE=${backup_path}.tar.gz + +# 备份 +rm -rf ${backup_path} +mariabackup --backup --target-dir ${backup_path} --databases="base_db mysql" --user root --password DsideaL147258369 + +# 压缩目录 +tar -czf ${FILE} ${backup_path} + +# 删除临时目录 +rm -rf ${backup_path} + +# 切片 +split -b 100m -d ${FILE} ${FILE}. + +# 删除原文件 +rm -rf ${FILE} + diff --git a/target/classes/Csv/1.txt b/target/classes/Csv/1.txt new file mode 100644 index 0000000..8506b14 --- /dev/null +++ b/target/classes/Csv/1.txt @@ -0,0 +1,2 @@ + +1 \ No newline at end of file diff --git a/target/classes/Doc/2021年长春市教育装备分析报告.doc b/target/classes/Doc/2021年长春市教育装备分析报告.doc new file mode 100644 index 0000000..ee1cd44 Binary files /dev/null and b/target/classes/Doc/2021年长春市教育装备分析报告.doc differ diff --git a/target/classes/Doc/2021年长春市教育装备分析报告.pptx b/target/classes/Doc/2021年长春市教育装备分析报告.pptx new file mode 100644 index 0000000..bc8b87c Binary files /dev/null and b/target/classes/Doc/2021年长春市教育装备分析报告.pptx differ diff --git a/target/classes/Doc/2021年长春市第一中学教育装备分析报告.doc b/target/classes/Doc/2021年长春市第一中学教育装备分析报告.doc new file mode 100644 index 0000000..1b8ce56 Binary files /dev/null and b/target/classes/Doc/2021年长春市第一中学教育装备分析报告.doc differ diff --git a/target/classes/Doc/2021年长春市第一中学教育装备分析报告.pptx b/target/classes/Doc/2021年长春市第一中学教育装备分析报告.pptx new file mode 100644 index 0000000..6da6644 Binary files /dev/null and b/target/classes/Doc/2021年长春市第一中学教育装备分析报告.pptx differ diff --git a/target/classes/Doc/AsposeTest.docx b/target/classes/Doc/AsposeTest.docx new file mode 100644 index 0000000..4883d53 Binary files /dev/null and b/target/classes/Doc/AsposeTest.docx differ diff --git a/target/classes/Doc/hwq.png b/target/classes/Doc/hwq.png new file mode 100644 index 0000000..e635177 Binary files /dev/null and b/target/classes/Doc/hwq.png differ diff --git a/target/classes/Doc/pingshendan_shi.docx b/target/classes/Doc/pingshendan_shi.docx new file mode 100644 index 0000000..eacc239 Binary files /dev/null and b/target/classes/Doc/pingshendan_shi.docx differ diff --git a/target/classes/Doc/yanshoudan_dw.docx b/target/classes/Doc/yanshoudan_dw.docx new file mode 100644 index 0000000..28b817d Binary files /dev/null and b/target/classes/Doc/yanshoudan_dw.docx differ diff --git a/target/classes/Doc/yanshoudan_shi.docx b/target/classes/Doc/yanshoudan_shi.docx new file mode 100644 index 0000000..d35e232 Binary files /dev/null and b/target/classes/Doc/yanshoudan_shi.docx differ diff --git a/target/classes/Doc/专家名单-旧版.xlsx b/target/classes/Doc/专家名单-旧版.xlsx new file mode 100644 index 0000000..8edb7e7 Binary files /dev/null and b/target/classes/Doc/专家名单-旧版.xlsx differ diff --git a/target/classes/Doc/监理人员表.xlsx b/target/classes/Doc/监理人员表.xlsx new file mode 100644 index 0000000..0f88c6c Binary files /dev/null and b/target/classes/Doc/监理人员表.xlsx differ diff --git a/target/classes/ExcelExportTemplate/103_WDL.json b/target/classes/ExcelExportTemplate/103_WDL.json new file mode 100644 index 0000000..aecb415 --- /dev/null +++ b/target/classes/ExcelExportTemplate/103_WDL.json @@ -0,0 +1,24 @@ +{ + "title": "未登录人员列表", + "sheetName": "报表", + "titleHeight": 30, + "rowHeight": 30, + "showNumber": true, + "colInfo": [ + { + "show_column_name": "准考证号", + "list_column_name": "zkz", + "width": 16 + }, + { + "show_column_name": "学生姓名", + "list_column_name": "xm", + "width": 16 + }, + { + "show_column_name": "中招分数", + "list_column_name": "score", + "width": 16 + } + ] +} \ No newline at end of file diff --git a/target/classes/ExcelExportTemplate/103_YDLWTB.json b/target/classes/ExcelExportTemplate/103_YDLWTB.json new file mode 100644 index 0000000..ed7d8ce --- /dev/null +++ b/target/classes/ExcelExportTemplate/103_YDLWTB.json @@ -0,0 +1,24 @@ +{ + "title": "已未登录未填报人员", + "sheetName": "报表", + "titleHeight": 30, + "rowHeight": 30, + "showNumber": true, + "colInfo": [ + { + "show_column_name": "准考证号", + "list_column_name": "zkz", + "width": 16 + }, + { + "show_column_name": "学生姓名", + "list_column_name": "xm", + "width": 16 + }, + { + "show_column_name": "中招分数", + "list_column_name": "score", + "width": 16 + } + ] +} \ No newline at end of file diff --git a/target/classes/ExcelExportTemplate/103_YTB.json b/target/classes/ExcelExportTemplate/103_YTB.json new file mode 100644 index 0000000..45de6ef --- /dev/null +++ b/target/classes/ExcelExportTemplate/103_YTB.json @@ -0,0 +1,144 @@ +{ + "title": "学生信息填报情况", + "sheetName": "报表", + "titleHeight": 30, + "rowHeight": 30, + "showNumber": true, + "colInfo": [ + { + "show_column_name": "准考证号", + "list_column_name": "zkz", + "width": 16 + }, + { + "show_column_name": "学生姓名", + "list_column_name": "xm", + "width": 16 + }, + { + "show_column_name": "性别", + "list_column_name": "xb", + "width": 10 + }, + { + "show_column_name": "民族", + "list_column_name": "mz", + "width": 36 + }, + { + "show_column_name": "毕业学校", + "list_column_name": "byxx", + "width": 20 + }, + { + "show_column_name": "毕业班级", + "list_column_name": "bybj", + "width": 16 + }, + { + "show_column_name": "身高(单位CM)", + "list_column_name": "sg", + "width": 26 + }, + { + "show_column_name": "中招分数", + "list_column_name": "zzfs", + "width": 20 + }, + { + "show_column_name": "户籍所在地", + "list_column_name": "hjszd", + "width": 20 + }, + { + "show_column_name": "家族住址", + "list_column_name": "jtzz", + "width": 20 + }, + { + "show_column_name": "血型", + "list_column_name": "xx", + "width": 20 + }, + { + "show_column_name": "父亲姓名", + "list_column_name": "bb_name", + "width": 20 + }, + { + "show_column_name": "父亲工作单位", + "list_column_name": "bb_bureau", + "width": 20 + }, + { + "show_column_name": "父亲电话", + "list_column_name": "bb_tel", + "width": 20 + }, + { + "show_column_name": "母亲姓名", + "list_column_name": "mm_name", + "width": 20 + }, + { + "show_column_name": "母亲工作单位", + "list_column_name": "mm_bureau", + "width": 20 + }, + { + "show_column_name": "母亲电话", + "list_column_name": "mm_tel", + "width": 20 + }, + { + "show_column_name": "服装号码", + "list_column_name": "fzhm", + "width": 20 + }, + { + "show_column_name": "初三是否班委", + "list_column_name": "bw", + "width": 20 + }, + { + "show_column_name": "家庭是否享受低保", + "list_column_name": "db", + "width": 20 + }, + { + "show_column_name": "是否因身体原因需特殊照顾", + "list_column_name": "zg", + "width": 20 + }, + { + "show_column_name": "希望加入或创办什么社团", + "list_column_name": "st", + "width": 20 + }, + { + "show_column_name": "是否希望加入志愿者组织", + "list_column_name": "zyz", + "width": 20 + }, + { + "show_column_name": "是否愿意参加暑期夏令营", + "list_column_name": "xly", + "width": 20 + }, + { + "show_column_name": "是否愿意参加暑期省内外游学交流活动", + "list_column_name": "jlhd", + "width": 20 + }, + { + "show_column_name": "有何特长", + "list_column_name": "tc", + "width": 20 + }, + { + "show_column_name": "家长是否愿意参加家长委员会", + "list_column_name": "jwh", + "width": 20 + } + ] +} \ No newline at end of file diff --git a/target/classes/ExcelExportTemplate/excelTemp/9775F4E7-336F-4302-9C74-38AADBECA3C4.xls b/target/classes/ExcelExportTemplate/excelTemp/9775F4E7-336F-4302-9C74-38AADBECA3C4.xls new file mode 100644 index 0000000..de2a015 Binary files /dev/null and b/target/classes/ExcelExportTemplate/excelTemp/9775F4E7-336F-4302-9C74-38AADBECA3C4.xls differ diff --git a/target/classes/ExcelExportTemplate/excelTemp/占位文件.txt b/target/classes/ExcelExportTemplate/excelTemp/占位文件.txt new file mode 100644 index 0000000..e658701 --- /dev/null +++ b/target/classes/ExcelExportTemplate/excelTemp/占位文件.txt @@ -0,0 +1 @@ +ww \ No newline at end of file diff --git a/target/classes/ExcelExportTemplate/getPrincipalshipThirdParty.json b/target/classes/ExcelExportTemplate/getPrincipalshipThirdParty.json new file mode 100644 index 0000000..0b3782e --- /dev/null +++ b/target/classes/ExcelExportTemplate/getPrincipalshipThirdParty.json @@ -0,0 +1,30 @@ +{ + "title": "职务与分管工作", + "sheetName": "职务与分管工作", + "titleHeight": 30, + "rowHeight": 30, + "showNumber": true, + + "colInfo": [ + { + "show_column_name": "级别", + "list_column_name": "level_name", + "width": 40 + }, + { + "show_column_name": "单位类型", + "list_column_name": "org_type_name", + "width": 40 + }, + { + "show_column_name": "职务名称", + "list_column_name": "zhiwu_name", + "width": 40 + }, + { + "show_column_name": "分管工作", + "list_column_name": "fenguan", + "width": 40 + } + ] +} \ No newline at end of file diff --git a/target/classes/ExcelExportTemplate/getPrintAreaBureau.json b/target/classes/ExcelExportTemplate/getPrintAreaBureau.json new file mode 100644 index 0000000..fb31149 --- /dev/null +++ b/target/classes/ExcelExportTemplate/getPrintAreaBureau.json @@ -0,0 +1,24 @@ +{ + "title": "县区级单位管理员登录账号", + "sheetName": "管理员账号", + "titleHeight": 30, + "rowHeight": 30, + "showNumber": true, + "colInfo": [ + { + "show_column_name": "姓名", + "list_column_name": "person_name", + "width": 40 + }, + { + "show_column_name": "登录名", + "list_column_name": "login_name", + "width": 40 + }, + { + "show_column_name": "原始密码", + "list_column_name": "original_pwd", + "width": 40 + } + ] +} \ No newline at end of file diff --git a/target/classes/ExcelExportTemplate/getPrintAreaManager.json b/target/classes/ExcelExportTemplate/getPrintAreaManager.json new file mode 100644 index 0000000..e548e54 --- /dev/null +++ b/target/classes/ExcelExportTemplate/getPrintAreaManager.json @@ -0,0 +1,24 @@ +{ + "title": "县区管理员登录账号", + "sheetName": "管理员账号", + "titleHeight": 30, + "rowHeight": 30, + "showNumber": true, + "colInfo": [ + { + "show_column_name": "姓名", + "list_column_name": "person_name", + "width": 40 + }, + { + "show_column_name": "登录名", + "list_column_name": "login_name", + "width": 40 + }, + { + "show_column_name": "原始密码", + "list_column_name": "original_pwd", + "width": 40 + } + ] +} \ No newline at end of file diff --git a/target/classes/ExcelExportTemplate/getPrintCityBureau.json b/target/classes/ExcelExportTemplate/getPrintCityBureau.json new file mode 100644 index 0000000..8d40831 --- /dev/null +++ b/target/classes/ExcelExportTemplate/getPrintCityBureau.json @@ -0,0 +1,24 @@ +{ + "title": "市直属单位登录账号", + "sheetName": "管理员账号", + "titleHeight": 30, + "rowHeight": 30, + "showNumber": true, + "colInfo": [ + { + "show_column_name": "姓名", + "list_column_name": "person_name", + "width": 40 + }, + { + "show_column_name": "登录名", + "list_column_name": "login_name", + "width": 40 + }, + { + "show_column_name": "原始密码", + "list_column_name": "original_pwd", + "width": 40 + } + ] +} \ No newline at end of file diff --git a/target/classes/ExcelExportTemplate/getPrintCityManager.json b/target/classes/ExcelExportTemplate/getPrintCityManager.json new file mode 100644 index 0000000..95763ed --- /dev/null +++ b/target/classes/ExcelExportTemplate/getPrintCityManager.json @@ -0,0 +1,24 @@ +{ + "title": "市管理员登录账号", + "sheetName": "管理员账号", + "titleHeight": 30, + "rowHeight": 30, + "showNumber": true, + "colInfo": [ + { + "show_column_name": "姓名", + "list_column_name": "person_name", + "width": 40 + }, + { + "show_column_name": "登录名", + "list_column_name": "login_name", + "width": 40 + }, + { + "show_column_name": "原始密码", + "list_column_name": "original_pwd", + "width": 40 + } + ] +} \ No newline at end of file diff --git a/target/classes/ExcelExportTemplate/getPrintParent.json b/target/classes/ExcelExportTemplate/getPrintParent.json new file mode 100644 index 0000000..15a3e0f --- /dev/null +++ b/target/classes/ExcelExportTemplate/getPrintParent.json @@ -0,0 +1,24 @@ +{ + "title": "家长登录信息", + "sheetName": "家长登录信息", + "titleHeight": 30, + "rowHeight": 30, + "showNumber": true, + "colInfo": [ + { + "show_column_name": "姓名", + "list_column_name": "person_name", + "width": 40 + }, + { + "show_column_name": "登录名", + "list_column_name": "login_name", + "width": 40 + }, + { + "show_column_name": "原始密码", + "list_column_name": "original_pwd", + "width": 40 + } + ] +} \ No newline at end of file diff --git a/target/classes/ExcelExportTemplate/getPrintStudent.json b/target/classes/ExcelExportTemplate/getPrintStudent.json new file mode 100644 index 0000000..c5c996c --- /dev/null +++ b/target/classes/ExcelExportTemplate/getPrintStudent.json @@ -0,0 +1,24 @@ +{ + "title": "学生登录信息", + "sheetName": "学生登录信息", + "titleHeight": 30, + "rowHeight": 30, + "showNumber": true, + "colInfo": [ + { + "show_column_name": "学生姓名", + "list_column_name": "person_name", + "width": 40 + }, + { + "show_column_name": "登录名", + "list_column_name": "login_name", + "width": 40 + }, + { + "show_column_name": "原始密码", + "list_column_name": "original_pwd", + "width": 40 + } + ] +} \ No newline at end of file diff --git a/target/classes/ExcelExportTemplate/getTeacherListByBureauId.json b/target/classes/ExcelExportTemplate/getTeacherListByBureauId.json new file mode 100644 index 0000000..fb31149 --- /dev/null +++ b/target/classes/ExcelExportTemplate/getTeacherListByBureauId.json @@ -0,0 +1,24 @@ +{ + "title": "县区级单位管理员登录账号", + "sheetName": "管理员账号", + "titleHeight": 30, + "rowHeight": 30, + "showNumber": true, + "colInfo": [ + { + "show_column_name": "姓名", + "list_column_name": "person_name", + "width": 40 + }, + { + "show_column_name": "登录名", + "list_column_name": "login_name", + "width": 40 + }, + { + "show_column_name": "原始密码", + "list_column_name": "original_pwd", + "width": 40 + } + ] +} \ No newline at end of file diff --git a/target/classes/ExcelImportTemplate/.idea/ExcelImportTemplate.iml b/target/classes/ExcelImportTemplate/.idea/ExcelImportTemplate.iml new file mode 100644 index 0000000..d9e6024 --- /dev/null +++ b/target/classes/ExcelImportTemplate/.idea/ExcelImportTemplate.iml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/target/classes/ExcelImportTemplate/.idea/inspectionProfiles/Project_Default.xml b/target/classes/ExcelImportTemplate/.idea/inspectionProfiles/Project_Default.xml new file mode 100644 index 0000000..c26d685 --- /dev/null +++ b/target/classes/ExcelImportTemplate/.idea/inspectionProfiles/Project_Default.xml @@ -0,0 +1,9 @@ + + + + \ No newline at end of file diff --git a/target/classes/ExcelImportTemplate/.idea/inspectionProfiles/profiles_settings.xml b/target/classes/ExcelImportTemplate/.idea/inspectionProfiles/profiles_settings.xml new file mode 100644 index 0000000..105ce2d --- /dev/null +++ b/target/classes/ExcelImportTemplate/.idea/inspectionProfiles/profiles_settings.xml @@ -0,0 +1,6 @@ + + + + \ No newline at end of file diff --git a/target/classes/ExcelImportTemplate/.idea/misc.xml b/target/classes/ExcelImportTemplate/.idea/misc.xml new file mode 100644 index 0000000..8d93904 --- /dev/null +++ b/target/classes/ExcelImportTemplate/.idea/misc.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/target/classes/ExcelImportTemplate/.idea/modules.xml b/target/classes/ExcelImportTemplate/.idea/modules.xml new file mode 100644 index 0000000..59750d2 --- /dev/null +++ b/target/classes/ExcelImportTemplate/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/target/classes/ExcelImportTemplate/.idea/vcs.xml b/target/classes/ExcelImportTemplate/.idea/vcs.xml new file mode 100644 index 0000000..15b5e29 --- /dev/null +++ b/target/classes/ExcelImportTemplate/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/target/classes/ExcelImportTemplate/.idea/workspace.xml b/target/classes/ExcelImportTemplate/.idea/workspace.xml new file mode 100644 index 0000000..02e51a5 --- /dev/null +++ b/target/classes/ExcelImportTemplate/.idea/workspace.xml @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + 1653553376213 + + + + + + \ No newline at end of file diff --git a/target/classes/ExcelImportTemplate/Student.json b/target/classes/ExcelImportTemplate/Student.json new file mode 100644 index 0000000..ea70e7f --- /dev/null +++ b/target/classes/ExcelImportTemplate/Student.json @@ -0,0 +1,85 @@ +{ + "rowHeight": 28, + "colInfo": [ + { + "column": 0, + "name": "stage", + "value": "学段", + "width": 20, + "promptContent": "请按下拉框进行选择!", + "need":1 + }, + { + "column":1, + "name": "class", + "value": "班级名称", + "width": 24, + "promptContent": "只支持入学年份+班号的形式,比如2017级8班", + "need":1 + }, + { + "column": 2, + "name": "person_name", + "value": "姓名", + "width": 18, + "promptContent": "人员姓名。", + "need":1 + }, + { + "column": 3, + "name":"xb", + "value": "性别", + "width": 14, + "promptContent": "性别请在下拉框中选择,或者将内容复制!", + "need":1 + }, + { + "column": 4, + "value": "民族", + "name":"mz", + "width": 20, + "promptContent": "民族请在下拉框中选择,或者将内容复制!", + "need":1 + }, + { + "column": 5, + "value": "政治面貌", + "name":"zzmm", + "width": 34, + "promptContent": "政治面貌请在下拉框中选择,或者将内容复制!", + "need":1 + }, + { + "column": 6, + "value": "身份证号", + "name":"cardNumber", + "width": 30, + "promptContent": "支持身份证号15位或18位。", + "need":1 + }, + { + "column": 7, + "value": "学籍号", + "name":"xjh", + "width": 18, + "promptContent": "可以为空!", + "need":0 + }, + { + "column": 8, + "value": "学籍辅号", + "name":"xjfh", + "width": 18, + "promptContent": "可以为空!", + "need":0 + }, + { + "column": 9, + "value": "学生来源", + "name":"stage", + "width": 16, + "promptContent": "学生来源请在下拉框中选择,或者将内容复制!", + "need":1 + } + ] +} \ No newline at end of file diff --git a/target/classes/ExcelImportTemplate/Student.xls b/target/classes/ExcelImportTemplate/Student.xls new file mode 100644 index 0000000..7be824a Binary files /dev/null and b/target/classes/ExcelImportTemplate/Student.xls differ diff --git a/target/classes/ExcelImportTemplate/StudentSample.xls b/target/classes/ExcelImportTemplate/StudentSample.xls new file mode 100644 index 0000000..be80e71 Binary files /dev/null and b/target/classes/ExcelImportTemplate/StudentSample.xls differ diff --git a/target/classes/ExcelImportTemplate/Teacher.json b/target/classes/ExcelImportTemplate/Teacher.json new file mode 100644 index 0000000..1878e15 --- /dev/null +++ b/target/classes/ExcelImportTemplate/Teacher.json @@ -0,0 +1,93 @@ +{ + "rowHeight": 28, + "colInfo": [ + { + "column": 0, + "name": "department", + "value": "部门", + "width": 25, + "promptContent": "只支持一级部门,系统中存在将重用,不存在将创建!", + "need":0 + }, + { + "column": 1, + "name": "person_name", + "value": "姓名", + "width": 18, + "promptContent": "人员姓名。", + "need":1 + }, + { + "column": 2, + "name":"xb", + "value": "性别", + "width": 14, + "promptContent": "性别请在下拉框中选择,或者将内容复制!", + "need":1 + }, + { + "column": 3, + "value": "民族", + "name":"mz", + "width": 16, + "promptContent": "民族请在下拉框中选择,或者将内容复制!", + "need":1 + }, + { + "column": 4, + "value": "政治面貌", + "name":"zzmm", + "width": 34, + "promptContent": "政治面貌请在下拉框中选择,或者将内容复制!", + "need":1 + }, + { + "column": 5, + "value": "身份证号", + "name":"cardNumber", + "width": 30, + "promptContent": "支持身份证号15位或18位。", + "need":1 + }, + { + "column": 6, + "value": "最高学历", + "name":"xl", + "width": 18, + "promptContent": "最高学历请在下拉框中选择,或者将内容复制!", + "need":1 + }, + { + "column": 7, + "value": "职称", + "name":"zc", + "width": 18, + "promptContent": "职称请在下拉框中选择,或者将内容复制!", + "need":1 + }, + { + "column": 8, + "value": "学段", + "name":"stage", + "width": 16, + "promptContent": "学段请在下拉框中选择,或者将内容复制!", + "need":1 + }, + { + "column": 9, + "value": "主教学科", + "name":"subject", + "width": 22, + "promptContent": "主教学科请在下拉框中选择,或者将内容复制!", + "need":1 + }, + { + "column": 10, + "value": "从教年月日", + "name":"teach_date", + "width": 18, + "promptContent": "例:1978-01-01", + "need":1 + } + ] +} \ No newline at end of file diff --git a/target/classes/ExcelImportTemplate/Teacher.xls b/target/classes/ExcelImportTemplate/Teacher.xls new file mode 100644 index 0000000..8eb9169 Binary files /dev/null and b/target/classes/ExcelImportTemplate/Teacher.xls differ diff --git a/target/classes/ExcelImportTemplate/TeacherSample.xls b/target/classes/ExcelImportTemplate/TeacherSample.xls new file mode 100644 index 0000000..7495ca3 Binary files /dev/null and b/target/classes/ExcelImportTemplate/TeacherSample.xls differ diff --git a/target/classes/ExcelImportTemplate/excelTemp/占位.txt b/target/classes/ExcelImportTemplate/excelTemp/占位.txt new file mode 100644 index 0000000..2f259b7 --- /dev/null +++ b/target/classes/ExcelImportTemplate/excelTemp/占位.txt @@ -0,0 +1 @@ +s \ No newline at end of file diff --git a/target/classes/Py/.idea/.gitignore b/target/classes/Py/.idea/.gitignore new file mode 100644 index 0000000..1c2fda5 --- /dev/null +++ b/target/classes/Py/.idea/.gitignore @@ -0,0 +1,8 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Editor-based HTTP Client requests +/httpRequests/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml diff --git a/target/classes/Py/.idea/Py.iml b/target/classes/Py/.idea/Py.iml new file mode 100644 index 0000000..d9e99f3 --- /dev/null +++ b/target/classes/Py/.idea/Py.iml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/target/classes/Py/.idea/inspectionProfiles/Project_Default.xml b/target/classes/Py/.idea/inspectionProfiles/Project_Default.xml new file mode 100644 index 0000000..c26d685 --- /dev/null +++ b/target/classes/Py/.idea/inspectionProfiles/Project_Default.xml @@ -0,0 +1,9 @@ + + + + \ No newline at end of file diff --git a/target/classes/Py/.idea/inspectionProfiles/profiles_settings.xml b/target/classes/Py/.idea/inspectionProfiles/profiles_settings.xml new file mode 100644 index 0000000..105ce2d --- /dev/null +++ b/target/classes/Py/.idea/inspectionProfiles/profiles_settings.xml @@ -0,0 +1,6 @@ + + + + \ No newline at end of file diff --git a/target/classes/Py/.idea/misc.xml b/target/classes/Py/.idea/misc.xml new file mode 100644 index 0000000..abf7b39 --- /dev/null +++ b/target/classes/Py/.idea/misc.xml @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/target/classes/Py/.idea/modules.xml b/target/classes/Py/.idea/modules.xml new file mode 100644 index 0000000..5d26daa --- /dev/null +++ b/target/classes/Py/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/target/classes/Py/.idea/vcs.xml b/target/classes/Py/.idea/vcs.xml new file mode 100644 index 0000000..15b5e29 --- /dev/null +++ b/target/classes/Py/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/target/classes/Py/LoadJson.py b/target/classes/Py/LoadJson.py new file mode 100644 index 0000000..2299eeb --- /dev/null +++ b/target/classes/Py/LoadJson.py @@ -0,0 +1,306 @@ +import os +import datetime +from urllib import request +# pip install pandas +# pip install sqlalchemy +# pip install requests +# pip install pymysql +import pandas as pd +import requests + +from sqlalchemy import create_engine + +import json + +import pymysql +from dbutils.pooled_db import PooledDB + + +class MysqlClient(object): + __pool = None + + def __init__(self, mincached=10, maxcached=20, maxshared=10, maxconnections=200, blocking=True, + maxusage=100, setsession=None, reset=True, + host="gtzz.dsideal.com", port=22066, db="gtzz_base_db", + user="root", passwd="DsideaL147258369", charset='utf8mb4'): + """ + :param mincached:连接池中空闲连接的初始数量 + :param maxcached:连接池中空闲连接的最大数量 + :param maxshared:共享连接的最大数量 + :param maxconnections:创建连接池的最大数量 + :param blocking:超过最大连接数量时候的表现,为True等待连接数量下降,为false直接报错处理 + :param maxusage:单个连接的最大重复使用次数 + :param setsession:optional list of SQL commands that may serve to prepare + the session, e.g. ["set datestyle to ...", "set time zone ..."] + :param reset:how connections should be reset when returned to the pool + (False or None to rollback transcations started with begin(), + True to always issue a rollback for safety's sake) + :param host:数据库ip地址 + :param port:数据库端口 + :param db:库名 + :param user:用户名 + :param passwd:密码 + :param charset:字符编码 + """ + + if not self.__pool: + self.__class__.__pool = PooledDB(pymysql, + mincached, maxcached, + maxshared, maxconnections, blocking, + maxusage, setsession, reset, + host=host, port=port, db=db, + user=user, passwd=passwd, + charset=charset, + cursorclass=pymysql.cursors.DictCursor + ) + self._conn = None + self._cursor = None + self.__get_conn() + + def __get_conn(self): + self._conn = self.__pool.connection() + self._cursor = self._conn.cursor() + + def close(self): + try: + self._cursor.close() + self._conn.close() + except Exception as e: + print(e) + + def __execute(self, sql, param=()): + count = self._cursor.execute(sql, param) + # print(count) + self._conn.commit() + return count + + @staticmethod + def __dict_datetime_obj_to_str(result_dict): + """把字典里面的datatime对象转成字符串,使json转换不出错""" + if result_dict: + result_replace = {k: v.__str__() for k, v in result_dict.items() if isinstance(v, datetime.datetime)} + result_dict.update(result_replace) + return result_dict + + def find(self, sql, param=()): + """查询单个结果""" + count = self.__execute(sql, param) + result = self._cursor.fetchone() + """:type result:dict""" + result = self.__dict_datetime_obj_to_str(result) + return count, result + + def findList(self, sql, param=()): + """ + 查询多个结果 + :param sql: qsl语句 + :param param: sql参数 + :return: 结果数量和查询结果集 + """ + count = self.__execute(sql, param) + result = self._cursor.fetchall() + """:type result:list""" + [self.__dict_datetime_obj_to_str(row_dict) for row_dict in result] + return count, result + + def execute(self, sql, param=()): + count = self.__execute(sql, param) + return count + + def begin(self): + """开启事务""" + self._conn.autocommit(0) + + def end(self, option='commit'): + """结束事务""" + if option == 'commit': + self._conn.autocommit() + else: + self._conn.rollback() + + +def printf(str): + now_time = datetime.datetime.now() + str_time = now_time.strftime("%Y-%m-%d %X") # 格式化时间字符串 + print(str_time + " " + str) + + +def SyncData(): + # 连接数据库的方法 + connectString = 'mysql+pymysql://%s:%s@%s:%s/%s?charset=utf8' % ( + "root", "DsideaL147258369", "gtzz.dsideal.com", 22066, "gtzz_base_db") + engine = create_engine(connectString) # use sqlalchemy to build link-engine + # 当前日期 + cnt = 0 + # 申请数据库连接 + db = MysqlClient() + + dateStr = datetime.datetime.now().strftime('%Y%m%d') + # dateStr = '20211115' + text_lines = ['https://dsideal.obs.cn-north-1.myhuaweicloud.com/down/ccsdjg/#(date)/T_PRO_PARA.json', + 'https://dsideal.obs.cn-north-1.myhuaweicloud.com/down/ccsdjg/#(date)/T_PRO_ATTACH.json', + 'https://dsideal.obs.cn-north-1.myhuaweicloud.com/down/ccsdjg/#(date)/T_PRO_FORM_VALUE.json', + 'https://dsideal.obs.cn-north-1.myhuaweicloud.com/down/ccsdjg/#(date)/T_PRO_DETAIL.json', + 'https://dsideal.obs.cn-north-1.myhuaweicloud.com/down/ccsdjg/#(date)/T_PRO_FORM_ITEM.json', + 'https://dsideal.obs.cn-north-1.myhuaweicloud.com/down/ccsdjg/#(date)/T_PRO_TARGET.json', + 'https://dsideal.obs.cn-north-1.myhuaweicloud.com/down/ccsdjg/#(date)/T_PRO_ATTACH_TYPE.json', + 'https://dsideal.obs.cn-north-1.myhuaweicloud.com/down/ccsdjg/#(date)/T_PRO_TASK.json', + 'https://dsideal.obs.cn-north-1.myhuaweicloud.com/down/ccsdjg/#(date)/T_PRO_FORM.json', + 'https://dsideal.obs.cn-north-1.myhuaweicloud.com/down/ccsdjg/#(date)/T_PRO_MESSAGE.json', + 'https://dsideal.obs.cn-north-1.myhuaweicloud.com/down/ccsdjg/#(date)/T_PRO_CONFIG.json' + ] + # 按行遍历 + for line in text_lines: + cnt = cnt + 1 + url = line.replace('#(date)', dateStr) + # 去掉最后的换行符 + url = url.rstrip("\n") + # 表名 + table_name = os.path.basename(url).split(".")[0].lower() + + # 尝试下载 + html = requests.head(url) # 用head方法去请求资源头部 + if html.status_code != 200: # 状态码 + printf("没有找到指定的下载文件,程序无法继续!") + exit(0) + # 下载文件 + r = request.Request(url) + response = request.urlopen(r) + # 中文编码转换 + s = response.read() + s = s.decode('gbk') + s = s.encode('gbk', 'ignore').decode('gbk') + s1 = json.loads(s) + try: + x = pd.DataFrame(s1["DATA"]) + # https://www.jianshu.com/p/d615699ff254 + # DataFrame 的处理逻辑是如果目标表存在,则删除重建,并且不能完整保留原表字段的数据类型 + x.to_sql(table_name, con=engine, if_exists='replace', index=False) + printf("成功完成表%s的数据导入!" % table_name) + except Exception as err: + print(err) + + # 创建主键 + sql = "alter table `gtzz_base_db`.`t_pro_task` modify column `sn` varchar(128) character set utf8mb4 collate utf8mb4_general_ci not null first,add primary key (`sn`)" + db.execute(sql) + + # 添加一列:subject_id + sql = "alter table `gtzz_base_db`.`t_pro_task` add column `subject_id` int null default 0 comment '与t_gtzz_subject对应的主键' after `reiterate_task_sn`" + db.execute(sql) + + # 添加组织机构码 + sql = "alter table `gtzz_base_db`.`t_pro_task` add column `org_code` varchar(36) null comment '组织机构码' after `subject_id`" + db.execute(sql) + + # 更新组织机构码 + sql = "update t_pro_task as t1 ,t_base_organization as t2 set t1.org_code=t2.org_code where t1.send_user_name=t2.org_name" + db.execute(sql) + + # 创建索引 + sql = "alter table `gtzz_base_db`.`t_pro_message` modify column `task_sn` varchar(128) character set utf8mb4 collate utf8mb4_bin null default null after `modify_time`" + db.execute(sql) + + sql = "alter table `gtzz_base_db`.`t_pro_message` add index(`task_sn`)" + db.execute(sql) + # 写入同步日志 + if cnt == 11: + message = '正常同步成功!' + else: + message = '财务系统未授权同步文件!' + sql = "insert into t_gtzz_sync_log(file_count,message) values(%s,'%s')" % (cnt, message) + db.execute(sql) + + # 回写subject_id,初始化时应该都是0,更新时才会回写 + sql = "update t_pro_task as t1 ,t_gtzz_subject as t2 set t1.subject_id=t2.subject_id where t1.sn=t2.task_sn" + db.execute(sql) + + # 填充表t_gtzz_subject + sql = "select t1.sn,(select itemvalue20 from t_pro_form_value where task_sn=t1.sn) as money,(select itemvalue11 from t_pro_form_value where task_sn=t1.sn) as xmjj ,t1.subject_id,t1.task_number,t1.task_title,t1.task_year,t1.ex_send_org_name,(select class_name from t_pro_detail where task_sn=t1.sn order by class_name limit 1 ) as subject_type_name, t1.create_time from t_pro_task as t1 left join t_pro_form_value as t2 on t2.task_sn=t1.sn where t1.ex_send_org_name in (select org_name from t_gtzz_school) and t1.use_flag=1 and t1.draft_flag=0 and t1.close_flag=1 and t1.data_type=0 order by t1.create_time desc" + l1 = db.findList(sql) + # 遍历每一条数据 + c1 = 0 + c2 = 0 + for i in range(0, l1[0]): + row = l1[1][i] + # 项目代号 + subject_id = row['subject_id'] + # sn + task_sn = row['sn'] + # 单位名称 + xmdw = row['ex_send_org_name'] + # 项目名称 + xmmc = row['task_title'] + # 申报年度 + sbnd = row['task_year'] + # 查询获取单位编号 + sql = "select org_code from t_base_organization where org_name='%s'" % xmdw + l2 = db.find(sql) + org_code = l2[1]["org_code"] + # 立项时间 + lixiang_time = row["create_time"] + # 项目编号 + task_number = row["task_number"] + + # 项目金额 + money = row["money"] + + # 项目简介 + xmjj = row["xmjj"] + + # 项目类型 + sql = "select class_name,parent_name from t_pro_detail where task_sn='%s'" % task_sn + l3 = db.findList(sql) + # 声明空的两个 + l1_list = [] + l2_list = [] + + for x in l3[1]: + l1_list.append(x["parent_name"]) + l2_list.append(x["class_name"]) + # 去重 + l1_list = list({}.fromkeys(l1_list).keys()) + l2_list = list({}.fromkeys(l2_list).keys()) + # 大的项目类型名称 + if l1_list == None or len(l1_list) == 0: + subject_type_name = '其他' + else: + subject_type_name = l1_list[0] + + # 如果存在subject_id,则update + if subject_id > 0: + finish_scan = 1 + sql = "update t_gtzz_subject set finish_scan=1,task_sn='%s',org_code='%s',xmdw='%s',xmmc='%s',sbnd='%s',lixiang_time='%s',subject_type_id='-1',subject_type_name='%s' where subject_id=%d" % \ + (task_sn, org_code, xmdw, xmmc, sbnd, lixiang_time, subject_type_name,subject_id) + db.execute(sql) + else: + # 如果不存在subject_id,则insert into + finish_scan = 0 + sql = "insert into t_gtzz_subject(finish_scan,task_sn,org_code,xmdw,xmmc,sbnd,lixiang_time,subject_type_id,subject_type_name,money,xmjj,task_number) values(%s,'%s','%s','%s','%s','%s','%s','%s','%s','%s','%s','%s')" % \ + (finish_scan, task_sn, org_code, xmdw, xmmc, sbnd, lixiang_time, '-1', subject_type_name, money, xmjj, + task_number) + # 执行insert 语句 + db.execute(sql) + # 保存子类型名称 + for x in l2_list: + sql = "insert into t_gtzz_subject_sub_type(task_sn,sub_type_name,year) values('%s','%s','%s')" % ( + task_sn, x, sbnd) + db.execute(sql) + + # 补充一下subject_type_id + sql = 'update t_gtzz_subject as t1,t_gtzz_subject_type as t2 set t1.subject_type_id=t2.subject_type_id where t1.subject_type_name=t2.subject_type_name' + db.execute(sql) + # 更新t_gtzz_subject_sub_type表的subject_id + sql = "update t_gtzz_subject_sub_type as t1,t_gtzz_subject as t2 set t1.subject_id=t2.subject_id where t1.task_sn=t2.task_sn" + db.execute(sql) + + if finish_scan == 0: + c1 = c1 + 1 + printf('成功插入%s条记录!' % c1) + else: + c2 = c2 + 1 + printf('成功更新%s条记录!' % c2) + printf('恭喜,所有操作成功完成!') + + +if __name__ == '__main__': + SyncData() diff --git a/target/classes/Py/bar.html b/target/classes/Py/bar.html new file mode 100644 index 0000000..3aec2a2 --- /dev/null +++ b/target/classes/Py/bar.html @@ -0,0 +1,223 @@ + + + + + Awesome-pyecharts + + + + +
+ + + diff --git a/target/classes/Py/bar.png b/target/classes/Py/bar.png new file mode 100644 index 0000000..af4fbaf Binary files /dev/null and b/target/classes/Py/bar.png differ diff --git a/target/classes/Py/chromedriver.exe b/target/classes/Py/chromedriver.exe new file mode 100644 index 0000000..60449ae Binary files /dev/null and b/target/classes/Py/chromedriver.exe differ diff --git a/target/classes/Py/pyEchartsExport.py b/target/classes/Py/pyEchartsExport.py new file mode 100644 index 0000000..48e80a4 --- /dev/null +++ b/target/classes/Py/pyEchartsExport.py @@ -0,0 +1,25 @@ +from snapshot_selenium import snapshot as driver + +from pyecharts import options as opts +from pyecharts.charts import Bar +from pyecharts.render import make_snapshot + + +def bar_chart() -> Bar: + c = ( + Bar() + .add_xaxis(["衬衫", "毛衣", "领带", "裤子", "风衣", "高跟鞋", "袜子"]) + .add_yaxis("商家A", [114, 55, 27, 101, 125, 27, 105]) + .add_yaxis("商家B", [57, 134, 137, 129, 145, 60, 49]) + .reversal_axis() + .set_series_opts(label_opts=opts.LabelOpts(position="right")) + .set_global_opts(title_opts=opts.TitleOpts(title="Bar-测试渲染图片")) + ) + return c + + +# 输出png文件(用于在ppt中静态展现) +make_snapshot(driver, bar_chart().render(), "bar.png") + +# 输出html(用于在ppt中动态展现) +bar_chart().render("bar.html") diff --git a/target/classes/Py/render.html b/target/classes/Py/render.html new file mode 100644 index 0000000..ed9ccb3 --- /dev/null +++ b/target/classes/Py/render.html @@ -0,0 +1,223 @@ + + + + + Awesome-pyecharts + + + + +
+ + + diff --git a/target/classes/Py/xmdwqk.py b/target/classes/Py/xmdwqk.py new file mode 100644 index 0000000..0546f5c --- /dev/null +++ b/target/classes/Py/xmdwqk.py @@ -0,0 +1,19 @@ +# 分类名称 +# LeiXing = [] +# 城区 +# CityArea = [] +# 镇区 +# ZhenArea = [] + +from pyecharts import options as opts +from pyecharts.charts import Bar + +c = ( + Bar() + .add_xaxis(LeiXing) + .add_yaxis("城区", CityArea) + .add_yaxis("乡镇", ZhenArea) + .set_global_opts(title_opts=opts.TitleOpts(title="项目单位情况", subtitle="")) + .dump_options() +) +print(c) diff --git a/target/classes/Py/安装办法.txt b/target/classes/Py/安装办法.txt new file mode 100644 index 0000000..b3ea682 --- /dev/null +++ b/target/classes/Py/安装办法.txt @@ -0,0 +1,25 @@ +# 导入输出图片工具 +# 使用snapshot-selenium 渲染图片 + +# 安装pyecharts +# pip install pyecharts + +# 安装插件 +# pip install snapshot-selenium + +# 下载Chrome插件 +# http://npm.taobao.org/mirrors/chromedriver/ + +方法限制: +(1)必须有 Chrome浏览器,而且chromedriver的版本必须与Chrome版本匹配,这基本是就限定了生成机器应该是一台 Windows主机 +这在本项目中没有什么问题,有一台WINDOWS 主机。 +(2)必须是https的网址,这在一些地区就没办法了,只能是先让用户申请成功https。 +(3) 不支持传参,只能是用代码将最终的模板复制出31份,然后人工上去手动修改url地址 + + +https://www.cnblogs.com/-wenli/p/14024078.html +工具安装 +安装pyecharts:pip install pyecharts +安装snapshot-selenium:pip install snapshot-selenium +安装ChromeDriver:下载地址 +注意:下载和电脑上的谷歌浏览器版本相同或者相近的版本,将ChromeDriver.exe放到项目文件所在文件夹即可。 diff --git a/target/classes/Py/演示文稿.pptx b/target/classes/Py/演示文稿.pptx new file mode 100644 index 0000000..c0a1af0 Binary files /dev/null and b/target/classes/Py/演示文稿.pptx differ diff --git a/target/classes/Sql/ClearDataBase.sql b/target/classes/Sql/ClearDataBase.sql new file mode 100644 index 0000000..b51df13 --- /dev/null +++ b/target/classes/Sql/ClearDataBase.sql @@ -0,0 +1,26 @@ +#namespace("clearDataBase") + #sql("clearAll") + truncate table t_base_class; + truncate table t_base_graduation; + truncate table t_base_organization; + truncate table t_import_student_by_excel; + truncate table t_import_teacher_by_excel; + truncate table t_person_duty_charge; + truncate table t_sys_account_mount; + truncate table t_transfer_apply; + truncate table t_sys_loginperson; + truncate table t_base_app_visiable; + #end + + #sql("set_install_area") + update t_base_global set global_value=? where global_code='install_area' + #end + + #sql("setPwd") + update t_sys_loginperson set original_pwd=?,pwd=?,pwdmd5=? where login_name=? + #end + + #sql("getAreaByCityId") + select * from t_dm_area where city_id=? + #end +#end \ No newline at end of file diff --git a/target/classes/Sql/app.sql b/target/classes/Sql/app.sql new file mode 100644 index 0000000..b721e6d --- /dev/null +++ b/target/classes/Sql/app.sql @@ -0,0 +1,62 @@ +-- 应用接入命名空间 +#namespace("app") + -- 根据appid获取app信息 + #sql("getAppInfoByAppid") + select t1.appid,t1.appkey,t1.appname,t1.sort_id,t1.system_type_id,t1.create_time,t1.update_ts,t1.bureau_id,t1.developer, + (select t2.org_name from t_base_organization as t2 where t1.bureau_id=t2.org_id) as bureau_name, + (select t2.system_type_name from t_dm_integrated_system_type as t2 where t2.system_type_id=t1.system_type_id) as system_type_name, + t1.is_system from t_base_app as t1 where appid=? + #end + + -- 获取应用系统的列表 + #sql("getAppList") + select t1.appid,t1.appkey,t1.appname,t1.sort_id,t1.system_type_id,t1.create_time,t1.update_ts,bureau_id,developer, + is_system,(select t2.system_type_name from t_dm_integrated_system_type as t2 where t2.system_type_id=t1.system_type_id) + as system_type_name, + (case when (select count(*) as c from t_integrated_system as t2 where t2.appid=t1.appid)>0 then 1 else 0 end) + as integrated_exist, + (case when (select count(*) as c from t_datashare_publish as t2 where t2.appid=t1.appid)>0 then 1 else 0 end) + as publish_exist, + (case when (select count(*) as c from t_datashare_subscribe as t2 where t2.appid=t1.appid)>0 then 1 else 0 end) + as subscribe_exist, + t1.b_use from t_base_app as t1 order by t1.sort_id + #end + + -- 获取集成系统的系统类型 + #sql("getIntegratedSystemType") + select system_type_id,system_type_name from t_dm_integrated_system_type + #end + + -- 通过appid 获取app的info信息 + #sql("getAppInfo") + select appid,appkey,appname,sort_id,system_type_id,create_time,update_ts,bureau_id,developer,is_system from t_base_app + where appid=? + #end + + -- 设置app为禁用或启用 + #sql("changeAppStatus") + update t_base_app set b_use=ABS(b_use-1) where appid=? + #end + + -- 通过appid清空它的发布系统配置 + #sql("deletePublishByAppid") + delete from t_datashare_publish where appid=? + #end + + -- 通过appid清空它的订阅系统配置 + #sql("deleteSubscribeByAppid") + delete from t_datashare_subscribe where appid=? + #end + + -- 删除一个集成的系统(可视范围表) + #sql("deleteVisiableByAppid") + delete from t_base_app_visiable where appid=? + #end + + --按系统获取系统与可视范围的关系 + #sql("appid_visible") + select t1.id,t1.appid,t1.city_id,t1.area_id,t1.bureau_id,t1.level_id,t1.update_ts, + (select t2.org_name from t_base_organization as t2 where t1.bureau_id=t2.org_id) as bureau_name + from t_base_app_visiable as t1 where appid=? + #end +#end \ No newline at end of file diff --git a/target/classes/Sql/base.sql b/target/classes/Sql/base.sql new file mode 100644 index 0000000..f6fb17d --- /dev/null +++ b/target/classes/Sql/base.sql @@ -0,0 +1,333 @@ +-- 基础类命名空间 +#namespace("Base") + -- 获取整个单位类型与职务+分管信息树数据 + #sql("getLoginInfoByUserName") + select person_id,person_name,pwd,ifnull(wx_openid,0) as wx_openid,ifnull(qq_openid,0) as qq_openid, + identity_id,bureau_id,city_id,area_id + from t_sys_loginperson where b_use = 1 and login_name =? + #end + -- 获取整个单位类型与职务+分管信息树数据 + #sql("getOrgTypePrincipalshipTree") + select t1.id,t1.code,t1.name,t1.parent_id as pId,(case when length(t1.code)>6 then 0 else 1 end) as open, + (case when length(t1.code)=10 then 1 else 0 end ) as nocheck, + (select count(1) from t_base_org_type_principalship as t2 where t2.parent_id=t1.id) as is_leaf,sort_id,b_use, + is_school,level,bureau_level + from t_base_org_type_principalship as t1 where b_use=1 order by sort_id + #end + + -- 获取单位类型与职务+分管信息树数据指定结点的信息 + #sql("getOrgTypePrincipalshipById") + select t1.id,t1.code,t1.name,t1.parent_id as pId,t1.sort_id,t1.b_use,t1.is_school,t1.level,t1.bureau_level, + (select count(1) from t_base_org_type_principalship as t2 where t2.parent_id=t1.id) as is_leaf + from t_base_org_type_principalship as t1 where t1.id=#para(0) order by t1.sort_id + #end + + -- 获取单位类型与职务+分管信息树数据指定结点的信息 + #sql("getOrgTypePrincipalshipByParentId") + select t1.id,t1.code,t1.name,t1.parent_id as pId,t1.sort_id,t1.b_use,t1.is_school,t1.level,t1.bureau_level, + (select count(1) from t_base_org_type_principalship as t2 where t2.parent_id=t1.id) as is_leaf + from t_base_org_type_principalship as t1 where t1.parent_id=#para(0) and t1.b_use=1 order by sort_id + #end + + -- 和上面的是一个东西,但要细分一下,比如幼儿园+中小学 + #sql("getOrgTypePrincipalshipByParentIdAndBigType") + select t1.id,t1.name,t1.parent_id as pId,t1.sort_id,t1.b_use,t1.is_school,t1.level,t1.bureau_level, + (select count(1) from t_base_org_type_principalship as t2 where t2.parent_id=t1.id) as is_leaf + from t_base_org_type_principalship as t1 where t1.parent_id=#para(0) and t1.b_use=1 and t1.is_school=#para(1) order by sort_id + #end + + -- 修改一个OrgTypePrincipalship节点 + #sql("updateOrgTypePrincipalshipNode") + update t_base_org_type_principalship set code=?,name=?,parent_id=?,sort_id=?,b_use=?,is_school=? where id=? + #end + + -- 删除一个OrgTypePrincipalship节点 + #sql("delOrgTypePrincipalshipById") + delete from t_base_org_type_principalship where id=? + #end + + -- 获取单位类型与职务+分管信息树数据指定结点下一级的数据ByCode + #sql("getOrgTypePrincipalshipByParentparent_code") + select id,code,name,parent_id as pId,sort_id,b_use,is_school,level,bureau_level + from t_base_org_type_principalship where code like ? and length(code)=length(?)+2 and b_use=1 order by sort_id + #end + + -- 获取指定CODE的个数 + #sql("t_base_org_type_principalship_CountByCode") + select count(1) as c from t_base_org_type_principalship where code=? and b_use=1 + #end + + -- 获取指定CODE的个数,不包括自己 + #sql("t_base_org_type_principalship_CountByCodeExceptSelf") + select count(1) as c from t_base_org_type_principalship where code=? and id!=? and b_use=1 + #end + + -- 通过单位ID获取职务权限树 + #sql("getPrincipalshipTreeByBureauId") + select t1.id,t1.code,t1.name,t1.sort_id,t1.b_use,t1.is_school,t1.level,t1.bureau_level, + (case when length(t1.code)=6 then -1 else t1.parent_id end ) as parent_id, + (select count(1) from t_base_org_type_principalship as t2 where t2.parent_id=t1.id and t2.b_use=1) as is_leaf + from t_base_org_type_principalship as t1 + where t1.code like concat((select code from t_base_org_type_principalship + where id=(select org_type_id from t_base_organization where org_id=?)),'%') and t1.b_use=1 + order by t1.sort_id + #end + + -- 获取职务列表打印EXCEL,用来方便第三方系统提供接入的职务与系统对应关系 + #sql("getPrincipalshipThirdParty") + select (case when substr(t1.code,1,4)='0101' then '市级' else '县区级' end ) as level_name, + (select t2.name from t_base_org_type_principalship as t2 where t2.code=SUBSTR(t1.code,1,6)) as org_type_name, + t1.name as zhiwu_name , + ifnull((select group_concat(name) as cols from t_base_org_type_principalship where parent_id=t1.id),'无') as fenguan + from t_base_org_type_principalship as t1 where t1.level =4 and t1.b_use=1 order by t1.code + #end + + -- 获取当前学期 + #sql("getCurrentTerm") + select xq_id,(case xq_code when '09' then xn else xn+1 end) as xn,xq, + xqmc,ksrq,jsrq,memo,xq_code,is_current from t_base_term where is_current=1 + #end + -- 按年份获取学期列表 + #sql("getTermListByYear") + select xq_id,(case xq_code when '09' then xn else xn+1 end) as xn,xq, + xqmc,ksrq,jsrq,memo,xq_code,is_current from t_base_term where xn=#(batch_year) + #end + -- 获取当前人员 + #sql("getCurrentPerson") + select t1.*,t4.rule_id + from t_sys_loginperson as t1 + left join t_base_student as t2 on t2.sfzh=AES_DECRYPT(from_base64(t1.idcard_code),'DsideaL4r5t6y7u!') + left join t_base_class as t3 on t2.class_id=t3.class_id + LEFT JOIN t_jw_major_rule AS t4 ON t3.zydm = t4.zhuanye_code + AND t3.entry_year = t4.entry_year + AND t3.type_id = t4.zhaosheng_type_id + AND t3.xq_code = t4.entry_term_code AND t4.rule_type_id=1 + where t1.person_id='#(person_id)' + #end + + -- 获取当前学生所在班级 + #sql("getCurrentClass") + select c.* from t_base_class as c left join t_sys_loginperson as l on c.class_id=l.s_class_id where l.person_id='#(person_id)' and l.identity_id=6 + #end + -- 获取人员(主部门)系列表 + #sql("getZhuDepartmentTypeId1List") + select l.login_name,case + when o.department_type_id=1 then o.org_id + when po.department_type_id=1 then po.org_id + end as org_id + from t_sys_loginperson as l + LEFT JOIN t_base_organization as o on l.org_id=o.org_id + LEFT JOIN t_base_organization as po on o.parent_id=po.org_id + where l.person_id='#(person_id)' and (o.department_type_id=1 or po.department_type_id=1 ) + #end + -- 获取人员(辅部门)系列表 + #sql("getFuDepartmentTypeId1List") + select l.login_name,case + when o.department_type_id=1 then o.org_id + when po.department_type_id=1 then po.org_id + end as org_id + from t_sys_loginperson as l + LEFT JOIN t_base_teacher_org as bto on l.person_id=bto.person_id + LEFT JOIN t_base_organization as o on bto.org_id=o.org_id + LEFT JOIN t_base_organization as po on o.parent_id=po.org_id + where l.person_id='#(person_id)' and (o.department_type_id=1 or po.department_type_id=1 ) + #end + -- 获取某人是管理员的专业列表 + #sql("getZhuanYeList") + select zt.zhuanye_id,z.zhuanye_code,z.zhuanye_name + from t_zhaosheng_zhuanye as z + left join t_zhaosheng_zhuanye_teacher as zt on zt.zhuanye_id=z.zhuanye_id + where zt.person_id='#(person_id)' + and z.b_use=1 and #(batch_year) BETWEEN z.begin_year AND z.end_year + #end + -- 获取所有专业列表 + #sql("getAllZhuanYeList") + select z.zhuanye_id,z.zhuanye_code,z.zhuanye_name + from t_zhaosheng_zhuanye as z + where z.b_use=1 and #(batch_year) BETWEEN z.begin_year AND z.end_year + #end + -- 获取学期列表 + #sql("getTermList") + select xq_id,xn,xq,xqmc, + date_format(ksrq,'%Y-%m-%d') as ksrq, + date_format(jsrq,'%Y-%m-%d') as jsrq,is_current + from t_base_term where + xq_id<=(select xq_id from t_base_term where is_current=1) + #if(addOne) + +1 + #end + and xn>=2018 order by xq_id + #if(action_asc) + asc + #else + desc + #end + #end + -- 获取校历的文字描述信息 + #sql("getXiaoLiMemo") + select memo from t_base_term where xq_id=#(xq_id) + #end + + -- 修改校历的文字描述信息 + #sql("updateXiaoLiMemo") + update t_base_term set memo='#(memo)',ksrq='#(ksrq)',jsrq='#(jsrq)' where xq_id=#(xq_id) + #end + + -- 是不是在职务列表中 + #sql("isInDutyList") + select count(*) as c from t_person_duty_charge where person_id='#(person_id)' and duties_id in + ( + #for(x:ids) + #(for.index == 0 ? "" : ",") #para(x) + #end + ) + #end + -- 查询人员职务列表 + #sql("selectDutyList") + select `name` from t_base_org_type_principalship where id in + ( #for(x:ids) + #(for.index == 0 ? "" : ",") + #para(x) + #end ) + #end + -- 获取所有的用户城市列表 + #sql("getAllUserCity") + select city_id,city_name,sort_id from t_base_user_city where b_use=1 order by sort_id + #end + + -- 教师选择器专用(多选) + #sql("selectPersonsByBureauId") + select person_id,person_name from t_sys_loginperson where bureau_id=? and b_use=1 and identity_id=5 + order by person_name,sort_id + #end + -- 系内人员选择器(主部门待选) + #sql("selectZhuPersonsByOrgId") + select sl.person_id,sl.person_name + from t_sys_loginperson as sl + LEFT JOIN t_base_organization AS bo ON bo.org_id = sl.org_id + where sl.bureau_id=? and sl.b_use=1 and sl.identity_id=5 + and (bo.org_id=? or bo.parent_id=?) + order by sl.person_name,sl.sort_id + #end + -- 系内人员选择器(辅部门待选) + #sql("selectFuPersonsByOrgId") + select sl.person_id,sl.person_name + from t_sys_loginperson as sl + LEFT JOIN t_base_teacher_org as bto on sl.person_id=bto.person_id + LEFT JOIN t_base_organization AS bo ON bo.org_id = bto.org_id + where sl.bureau_id=? and sl.b_use=1 and sl.identity_id=5 + and (bo.org_id=? or bo.parent_id=?) + order by sl.person_name,sl.sort_id + #end + -- 系内人员选择器(已选) + #sql("selectAlreadyPersonsByOrgId") + select sl.person_id,sl.person_name + from t_zhaosheng_zhuanye_teacher as sl + LEFT JOIN t_base_organization AS bo ON bo.org_id = sl.org_id + where sl.zhuanye_id=? and sl.org_id=? + order by sl.person_name + #end + --把原已选清空 + #sql("clearZhuanyeOrgTeacher") + delete from t_zhaosheng_zhuanye_teacher where zhuanye_id=? and org_id=? + #end + -- 获取场地列表 + #sql("getSiteList") + select t1.site_id,t1.type_id,t2.type_name,t1.site_code,t1.site_name,t1.site_storied_building, + t3.building_name as site_storied_building_name,t1.floor,t1.room_number,t1.capacity_normal, + (case t1.for_examination when 1 then '是' else '否' end) as for_examination_memo, + t1.for_examination,t1.capacity_examination,t1.sort_id, + ( + select t5.class_name as class_name + from t_base_class as t5 inner join t_base_term as t2 on t5.xq_id=t2.xq_id + inner join t_zhaosheng_zhuanye as t3 on t5.zydm=t3.zhuanye_code + inner join t_zhaosheng_person_type as t4 on t5.person_type_id=t4.person_type_id + where t5.class_id=t1.class_id + ) as class_name + from t_base_site as t1 left join t_base_site_type as t2 on t1.type_id=t2.type_id + left join t_base_site_storied_building as t3 on t1.site_storied_building=t3.building_id + where 1=1 + #if(site_storied_building>0) + and t1.site_storied_building=#(site_storied_building) + #end + #if(floor>0) + and t1.floor=#(floor) + #end + #if(type_id) + and t1.type_id=#(type_id) + #end + #if(for_class_id>0) + and (t1.class_id is not null and t1.class_id<>'') + #else + and (t1.class_id is null or t1.class_id='') + #end + order by t1.sort_id + #end + + -- 获取场地类型 + #sql("getSiteTypeList") + select type_id,type_name,sort_id from t_base_site_type order by sort_id + #end + + -- 获取教学楼列表 + #sql("getBindBuildingList") + select building_id,building_name,sort_id from t_base_site_storied_building order by sort_id + #end + -- 获取教学楼楼层列表 + #sql("getBuildingLevelList") + select DISTINCT floor from t_base_site where site_storied_building=#(site_storied_building) order by floor + #end + + -- 获取指定单位下多机构的教师列表 + #sql("getBureauPersonListByOrgId") + select t1.person_id,t1.person_name from t_sys_loginperson as t1 + where t1.b_use=1 + #if(org_id) + and (t1.org_id in ( + select t2.org_id from t_base_organization as t2 where t2.parent_id='#(org_id)' + union + select '#(org_id)' + ) + ) + or t1.person_id in ( + select person_id from t_base_teacher_org as t2 where t2.org_id in ( + select t2.org_id from t_base_organization as t2 where t2.parent_id='#(org_id)' + union + select '#(org_id)' + ) + ) + #end + order by t1.person_name; + #end + -- 获取指定单位下的场地列表 + #sql("getBureauBuildingList") + select distinct t1.building_id,t1.building_name from t_base_site_storied_building as t1 + order by t1.sort_id; + #end + -- 获取指定单位下的场地列表 + #sql("getBaseSiteList") + select distinct t1.site_id,t1.site_name from t_base_site as t1 + where t1.site_storied_building=#(building_id) + order by t1.sort_id; + #end + -- 获取指定单位下的班级列表 + #sql("getBureauClassList") + select distinct t1.class_id,t1.class_name from t_base_class as t1 + where ifnull(graduate_flag,0)=0 + #if(zhuanye_code) + and t1.zydm='#(zhuanye_code)' + #end + #if(batch_year) + and t1.entry_year=#(batch_year); + #end + #end + + -- 获取固定的班级 + #sql("getfixedClass") + select t1.class_id,t1.class_name + from t_base_class as t1 inner join t_base_term as t2 on t1.xq_id=t2.xq_id + inner join t_zhaosheng_zhuanye as t3 on t1.zydm=t3.zhuanye_code + inner join t_zhaosheng_person_type as t4 on t1.person_type_id=t4.person_type_id + order by t1.zydm,t1.xq_id,t1.class_name + #end +#end \ No newline at end of file diff --git a/target/classes/Sql/class.sql b/target/classes/Sql/class.sql new file mode 100644 index 0000000..5117a10 --- /dev/null +++ b/target/classes/Sql/class.sql @@ -0,0 +1,54 @@ +-- 班级命名空间 +#namespace("class") + + -- 根据单位号获取下面正常班级的个数 + #sql("getClassCountByBureauId") + select count(1) as c from t_base_class where bureau_id=? and b_use=1 + #end + + -- 根据单位ID、学段、入学年份获取班级List + #sql("getClassListByBureauIdStageIdEntryYear") + select class_name from t_base_class where b_use = 1 and bureau_id= ? and stage_id = ? and entry_year = ? + order by class_num + #end + + -- 获取班级列表 + #sql("getClassList") + select class_id, class_name, ifnull(altas_name,'') as altas_name, entry_year, + (select count(1) from t_sys_loginperson t2 where t2.b_use = 1 and identity_id = 6 and t2.s_class_id = t1.class_id) + as studentcount, bureau_id + from t_base_class t1 where b_use = 1 and bureau_id = #para(0) and stage_id = #para(1) + and entry_year =#para(2) order by class_num + #end + + -- 获取班级信息 + #sql("getClassInfoByClassId") + select class_name,ifnull(altas_name,'') as altas_name, stage_id,entry_year, bureau_id, city_id, area_id, main_school_id + from t_base_class where b_use = 1 and class_id = ? + #end + + -- 检查重名班级 + #sql("checkClassNameExists") + select class_id from t_base_class where b_use = 1 and bureau_id = ? and stage_id = ? and entry_year = ? + and class_name = ? and class_id <> ? + #end + + -- 修改班级名称 + #sql("updateClassName") + update t_base_class set altas_name = ?,operator=?,ip_address=? where class_id = ? + #end + + -- 删除班级 + #sql("deleteClassById") + update t_base_class set b_use = 0,operator=?,ip_address=?,class_code=UPPER(UUID()) where class_id = ? + #end + + #sql("getStudentCountByClassId") + select person_id from t_sys_loginperson where b_use = 1 and identity_id=6 and s_class_id = ? + #end + + -- 获取指定单位下有哪些班级名称 + #sql("getClassName") + select class_id,class_name,stage_id from t_base_class where bureau_id=? and b_use=1 + #end +#end \ No newline at end of file diff --git a/target/classes/Sql/dm.sql b/target/classes/Sql/dm.sql new file mode 100644 index 0000000..ec35e6a --- /dev/null +++ b/target/classes/Sql/dm.sql @@ -0,0 +1,121 @@ +-- 字典命名空间 +#namespace("dm") + + -- 获取学校办别 + #sql("getDmSchoolProperty") + select property_id,property_name from t_dm_schoolproperty + #end + + -- 获取学校隶属关系 + #sql("getDmSchoolLevel") + select * from t_dm_schoollevel + #end + + -- 获取编制的字典 + #sql("getDmBz") + select bz_id,bz_name from t_dm_bz + #end + + -- 获取性别的字典 + #sql("getDmXb") + select xb_id,xb_name from t_dm_xb + #end + + -- 获取民族的字典 + #sql("getDmMz") + select mz_id,mz_name from t_dm_mz + #end + + -- 获取学段字典 + #sql("getDmStage") + select stage_id,stage_name from t_dm_stage where b_use=1 order by sort_id + #end + + -- 获取指定学段下的学科 + #sql("getDmSubject") + select subject_id,subject_name from t_dm_subject where stage_id=? order by sort_id + #end + + --获取学历字典信息 + #sql("getDmXl") + select xl_id,xl_name from t_dm_xl + #end + + --获取职称字典信息 + #sql("getDmZc") + select zc_id,zc_name from t_dm_zc + #end + + --获取政治面貌字典信息 + #sql("getDmZzmm") + select zzmm_id,zzmm_name from t_dm_zzmm + #end + + -- 获取全量的行政区划树 + #sql("getAreaAll") + select id,area_code,area_name,parent_id,(case when parent_id='-1' then 1 else 0 end ) as open from t_dm_area order by area_code + #end + + -- 获取指定父节点的行政区划 + #sql("getAreaByParentId") + select t1.id,t1.area_code,t1.area_name,t1.parent_id, + (case when parent_id='-1' then 1 else 0 end ) as open, + (select count(1) from t_dm_area as t2 where t2.parent_id=t1.id) as is_leaf + from t_dm_area as t1 where t1.parent_id=? order by t1.area_code + #end + + -- 获取指定节点的行政区划 + #sql("getAreaById") + select t1.id,t1.area_code,t1.area_name,t1.parent_id,t1.province_id, + (select area_name from t_dm_area as t2 where t1.province_id=t2.id) as province_name,t1.city_id,t1.area_id,t1.level_id,t1.sort_id from t_dm_area as t1 + where t1.id=? order by t1.sort_id + #end + + -- 获取指定父节点的行政区划 + #sql("getOrgLevel") + select org_id,org_code,org_name,parent_id,org_type_id,school_type_id,sort_id,create_time,update_ts,b_use,org_pk_num,city_id,area_id,main_school_id,bureau_id + from t_base_organization where org_id=? + #end + + -- 获取学校类型 + #sql("getSchoolType") + select school_type_id,school_type_name from t_dm_schooltype + #end + + -- 将学校类型换算成组织机构类型 + #sql("convertSchoolTypeToOrgType") + select shi_org_type,area_org_type from t_dm_schooltype where school_type_id=? + #end + + -- 通过ID获取区域的信息 + #sql("getAreaInfoById") + select * from t_dm_area where id=? + #end + + -- 获取学段下学科名称集合,用于EXCEL导入 + #sql("getStageSubjectNameRecord") + select t2.stage_name,t1.subject_name from t_dm_subject as t1 inner join t_dm_stage as t2 + on t1.stage_id=t2.stage_id where t2.b_use=1 + #end + + -- 获取有哪些学生来源 + #sql("getStudentSource") + select source_id,source_name from t_dm_student_source + #end + + -- 获取当前安装市下有哪些县区 + #sql("getAllAreaInfoByInstallCity") + select id,area_code,area_name from t_dm_area where parent_id= + (select global_value from t_base_global where global_code='install_area') order by sort_id + #end + + -- 系统中共有多少种身份 + #sql("getDmIdentity") + select identity_id,identity_name from t_dm_identity + #end + + -- 获取城市的坐标 + #sql("getCityCoordinate") + select * from t_city_coordinate where city_id=? + #end +#end \ No newline at end of file diff --git a/target/classes/Sql/global.sql b/target/classes/Sql/global.sql new file mode 100644 index 0000000..662b7e9 --- /dev/null +++ b/target/classes/Sql/global.sql @@ -0,0 +1,59 @@ +-- 全局变量命名空间 +#namespace("global") + + -- 获取全局变量的分类类型 + #sql("getGlobalType") + select global_type_id,global_type_name from t_base_global_type + #end + + -- 获取所有分类 + #sql("getGlobalList") + select global_id,global_type_id,global_code,global_value,global_name,sort_id from t_base_global order by sort_id + #end + + -- 检查一个globalCode是不是重复 + #sql("checkGlobalCodeCount") + select count(1) as c from t_base_global where global_id!=? and global_code=? + #end + + -- 增加一个全局变量设置 + #sql("addGlobal") + insert into t_base_global(global_type_id,global_code,global_value,global_name,sort_id) values(?,?,?,?,?) + #end + + -- 修改一个全局变量设置 + #sql("updateGlobalById") + update t_base_global set global_type_id=?,global_code=?,global_value=?,global_name=?,sort_id=? where global_id=? + #end + + -- 删除一个全局变量设置 + #sql("delGlobalById") + delete from t_base_global where global_id=? + #end + + -- 获取一个全局变量设置 + #sql("getGlobalById") + select global_type_id,global_code,global_value,global_name from t_base_global where global_id=? + #end + + -- 传入一组global_code 返回对应的数据 + #sql("getGlobalByCodes") + select global_id,global_type_id,global_code,global_value,global_name from t_base_global where global_code=? + #end + + -- 获取area_id通过area_name + #sql("getAreaIdByAreaName") + select id from t_dm_area as t2 where t2.area_name=? and parent_id=(select id from t_dm_area as t1 where t1.area_name=?) + #end + #sql("getAreaIdByAreaNameOnlyCityName") + select id from t_dm_area as t1 where t1.area_name=? + #end + -- 保存设置安装地区 + #sql("saveInstallArea") + update t_base_global set global_value=? where global_code='install_area' + #end + -- 根据全局变量的KEY获取VALUE + #sql("getGlobalValueByKey") + select ifnull(global_value,'') as global_value from t_base_global where global_code = ? + #end +#end \ No newline at end of file diff --git a/target/classes/Sql/graduationAction.sql b/target/classes/Sql/graduationAction.sql new file mode 100644 index 0000000..0ddc7b0 --- /dev/null +++ b/target/classes/Sql/graduationAction.sql @@ -0,0 +1,23 @@ +#namespace("graduation") + + -- 获取当前年份是否已处理完毕业 + #sql("checkCurrentYearIsGraduation") + select count(1) as count from t_base_graduation where finish_year=? + #end + + -- 获取需要处理的班级个数 + #sql("getNeedActionClass") + select class_id from t_base_class where entry_year+school_length=? and b_use=1 limit ? + #end + + -- 修改指定班级下的学生和家长为毕业状态 + #sql("changeToGraduationByClassId") + update t_sys_loginperson set b_use=0,status_code='07' where s_class_id=? + #end + + -- 修改班级为毕业状态 + #sql("changeClassBuse") + update t_base_class set b_use=0 where class_id=? + #end + +#end \ No newline at end of file diff --git a/target/classes/Sql/loginPerson.sql b/target/classes/Sql/loginPerson.sql new file mode 100644 index 0000000..be54fe3 --- /dev/null +++ b/target/classes/Sql/loginPerson.sql @@ -0,0 +1,251 @@ +-- 登录命名空间 +#namespace("loginPerson") + + -- 获取指定身份的最大主键号 + #sql("getMaxPkByIdentityId") + select ifnull(max(identity_pk_num),0) as identity_pk_num from t_sys_loginperson where identity_id=? + #end + -- 删除一个人员:通过单位ID + #sql("deletePersonByBureauId") + update t_sys_loginperson set b_use=0,operator=?,ip_address=? where bureau_id=? and identity_id=4 + #end + + -- 删除一个人员:通过人员编号 + #sql("deletePersonById") + UPDATE t_sys_loginperson + SET b_use = 0,status_code=?,operator=?,ip_address=? + WHERE + person_id = ? + #end + + -- 根据学生ID获取家长ID + #sql("getParentInfoByStudentId") + select person_id from t_sys_loginperson where p_child_id=? + #end + + -- 修改密码 + #sql("changePwd") + update t_sys_loginperson set operator=?,ip_address=?,original_pwd=?,pwd=?,pwdmd5=? where person_id=? + #end + + -- 获取指定人员所在的区域信息 + #sql("getLoginPersonAreaInfo") + select city_id,area_id from t_sys_loginperson where person_id=? + #end + + -- 根据person_id获取是否已绑定了手机号 + #sql("getIsBindPhoneNum") + select ifnull(telephone, 0) as telephone from t_sys_loginperson where b_use = 1 and person_id = ? + #end + + -- 根据person_id获取是否已绑定了邮箱 + #sql("getIsBindEmail") + select ifnull(email, 0) as email from t_sys_loginperson where b_use = 1 and person_id = ? + #end + + -- 根据person_id获取是否已绑定了QQ + #sql("getIsBindQq") + select ifnull(qq_openid, 0) as qq_openid from t_sys_loginperson where b_use = 1 and person_id = ? + #end + + -- 根据person_id获取是否已绑定了微信 + #sql("getIsBindWx") + select ifnull(wx_openid, 0) as wx_openid from t_sys_loginperson where b_use = 1 and person_id = ? + #end + + -- 人员与手机号绑定 + #sql("bindPersonPhoneNum") + update t_sys_loginperson set telephone= ?,operator=?,ip_address=? where person_id = ? + #end + + -- 人员与邮箱绑定 + #sql("bindPersonEmail") + update t_sys_loginperson set email= ?,operator=?,ip_address=? where person_id = ? + #end + + -- 获取一个QQ的openId获了是否已存在 + #sql("getQqOpenIdIsExist") + select person_id from t_sys_loginperson where b_use = 1 and qq_openid =? + #end + + -- 绑定QQ + #sql("bindPersonQq") + update t_sys_loginperson set qq_openid= ?,operator=?,ip_address=? where person_id = ? + #end + + -- 获取一个微信的openId获了是否已存在 + #sql("getWxOpenIdIsExist") + select person_id from t_sys_loginperson where b_use = 1 and wx_openid =? + #end + + -- 绑定微信 + #sql("bindPersonWx") + update t_sys_loginperson set wx_openid= ?,operator=?,ip_address=? where person_id = ? + #end + + -- 根据人员的ID获取此人员的登录信息 + #sql("getLoginInfoByPersonId") + select person_id,person_name,identity_id,login_name,pwd,original_pwd,xb,zzmm,mz,idcard_code,birthday,create_time,sort_id,telephone,wx_openid,qq_openid,email,status_code,b_use,identity_pk_num,city_id,area_id,main_school_id,bureau_id,org_id,s_class_id,s_xjh,s_xjfh,s_source, + t_duty_charge,t_xl_id,t_zc_id,t_stage_id,t_subject_id,date_format(t_teaching_date,'%Y-%m-%d') as t_teaching_date,p_child_id, + update_ts from t_sys_loginperson where person_id =? + #end + + -- 根据单位号获取下面正常教师的个数 + #sql("getTeacherCountByBureauId") + select count(1) as c from t_sys_loginperson where bureau_id=? and b_use=1 and identity_id=5 + #end + + -- 根据部门获取下面正常教师的个数 + #sql("getTeacherCountByOrgId") + select count(1) as c from t_sys_loginperson where org_id=? and b_use=1 and identity_id=5 + #end + + -- 根据单位号获取下面正常学生的个数 + #sql("getStudentCountByBureauId") + select count(1) as c from t_sys_loginperson where bureau_id=? and b_use=1 and identity_id=6 + #end + + -- 根据单位号获取下面正常家长的个数 + #sql("getParentCountByBureauId") + select count(1) as c from t_sys_loginperson where bureau_id=? and b_use=1 and identity_id=7 + #end + + -- 根据身份证号获取是否存在 + #sql("getIdCardIsExist") + select person_id from t_sys_loginperson where b_use = 1 and idcard_code=? + #end + + -- 根据手机号获取是否存在 + #sql("getTelephoneIsExist") + select person_id from t_sys_loginperson where b_use = 1 and telephone=? + #end + + -- 根据邮箱获取是否存在 + #sql("getEmailIsExist") + select person_id from t_sys_loginperson where b_use = 1 and email=? + #end + + -- 根据身份证号和人员ID获取是否存在 + #sql("getIdCardIsExistByPersonId") + select person_id from t_sys_loginperson where b_use = 1 and idcard_code=? and person_id<>? + #end + + -- 根据手机号和人员ID获取是否存在 + #sql("getTelephoneIsExistByPersonId") + select person_id from t_sys_loginperson where b_use = 1 and telephone=? and person_id<>? + #end + + -- 根据邮箱获和人员ID获取是否存在 + #sql("getEmailIsExistByPersonId") + select person_id from t_sys_loginperson where b_use = 1 and email=? and person_id<>? + #end + + + -- 市管理员 + #sql("getPrintCityManager") + select person_id,person_name,login_name,original_pwd,pwd from t_sys_loginperson where identity_id =2 order by sort_id + #end + + -- 市直属单位 + #sql("getPrintCityBureau") + select person_id,person_name,login_name,original_pwd,pwd from t_sys_loginperson where identity_id =4 + order by sort_id + #end + + -- 县区管理员 + #sql("getPrintAreaManager") + select person_id,person_name,login_name,original_pwd,pwd from t_sys_loginperson where identity_id =3 order by sort_id + #end + + -- 指定县区的单位 + #sql("getPrintAreaBureau") + select person_id,person_name,login_name,original_pwd,pwd from t_sys_loginperson where identity_id =4 and area_id=#para(0) order by sort_id + #end + -- 更改人员的所在部门 + #sql("changePersonBureau") + update t_sys_loginperson set city_id=?,area_id=?,main_school_id=?,bureau_id=?,org_id=?,operator=?,ip_address=? where person_id=? + #end + + -- 更改学生、家长的所在班级 + #sql("changePersonClass") + update t_sys_loginperson set city_id=?,area_id=?,main_school_id=?,bureau_id=?,s_class_id=?,operator=?,ip_address=? where person_id=? + #end + + -- 检查身份证号与数据库中的身份证号重复,教师 + #sql("checkRepeatidcardByTeacherImport") + select t1.idcard_code from t_import_teacher_by_excel as t1 where t1.batch_id=? + and t1.idcard_code_aes in (select idcard_code from t_sys_loginperson as t2 where t2.b_use=1) + #end + -- 检查身份证号与数据库中的身份证号重复,学生 + #sql("checkRepeatidcardByStudentImport") + select t1.idcard_code from t_import_student_by_excel as t1 where t1.batch_id=? + and t1.idcard_code_aes in (select idcard_code from t_sys_loginperson as t2 where t2.b_use=1) + #end + + -- 使用单位ID填充部门ID + #sql("fillOrgIdByBureauId") + update t_import_teacher_by_excel set org_id=bureau_id where batch_id=? and org_name='' + #end + + -- 有哪些部门需要检查 + #sql("needCheckOrgName") + select org_name from t_import_teacher_by_excel where batch_id=? and org_name!='' group by org_name + #end + + -- 有哪些班级需要检查 + #sql("needCheckClassName") + select class_name,stage_id from t_import_student_by_excel where batch_id=? group by class_name,stage_id + #end + + -- 找到本次教师导入批次的组织机构名称有哪些 + #sql("selectBatchInfoTeacher") + select * from t_import_teacher_by_excel where batch_id=? + #end + #sql("selectBatchInfoStudent") + select * from t_import_student_by_excel where batch_id=? + #end + + -- 根据导入的ID,修改部门编号 + #sql("UpdateOrgIdByImportTeacherId") + update t_import_teacher_by_excel set org_id=? where id=? + #end + + -- 根据导入的ID,修改班级编号 + #sql("UpdateOrgIdByImportStudentId") + update t_import_student_by_excel set class_id=? where id=? + #end + + --删除导入的临时数据,通过batchId + #sql("deleteByBatchId") + delete from t_import_teacher_by_excel where batch_id=? + #end + + -- 根据人员ID,获取教师的学段id + #sql("getStageInfoByTeacherId") + select t_stage_id as s_stage_id from t_sys_loginperson where person_id=? + #end + -- 根据人员ID,获取学生的学段id + #sql("getStageInfoByStudentId") + select s_stage_id from t_sys_loginperson where person_id=? + #end +-- 根据人员ID,获取家长的学段id + #sql("getStageInfoByParentId") + select s_stage_id from t_sys_loginperson where person_id=? + #end + + -- 根据主、子账号获取信息 + #sql("getMountAccountInfo") + select id,person_id,identity_id,main_person_id,main_identity_id,account_type from t_sys_account_mount where main_person_id = ? and person_id = ? + #end + + -- 挂载子账号 + #sql("mountSubAccount") + insert into t_sys_account_mount (person_id,identity_id,main_person_id,main_identity_id,account_type) values (?,?,?,?,?) + #end + + -- 根据人员ID和密码,验证是不是合法,用于修改新密码 + #sql("checkPwdByPersonId") + select count(*) as c from t_sys_loginperson where person_id=? and pwd=? + #end + +#end \ No newline at end of file diff --git a/target/classes/Sql/menu.sql b/target/classes/Sql/menu.sql new file mode 100644 index 0000000..49a8db0 --- /dev/null +++ b/target/classes/Sql/menu.sql @@ -0,0 +1,76 @@ +-- 菜单命名空间 +#namespace("menu") + -- 获取获取异步接口 + #sql("selectChildAsync") +select t1.menu_id,t1.menu_name,t1.parent_id,t1.sort_id,t1.url,t1.memo,t1.create_time,t1.update_ts,t1.level_id, + (select count(1) from t_base_menu as t2 where t1.menu_id=t2.parent_id) as is_leaf +from t_base_menu as t1 where parent_id=? order by t1.sort_id + #end + + -- 获取全部菜单 + #sql("selectAll") + select t1.menu_id as id,t1.menu_name as name,t1.parent_id as pId,t1.sort_id,t1.url,t1.memo,t1.create_time,t1.update_ts,t1.level_id, + (select count(1) from t_base_menu as t2 where t1.menu_id=t2.parent_id) as is_leaf + from t_base_menu as t1 order by t1.sort_id + #end + -- 获取所有不为学校提供的数据 + #sql("selectNotForSchool") + select menu_id from t_base_menu where for_school=0 + #end + -- 获取所有不为单位提供的数据 + #sql("selectNotForBureau") + select menu_id from t_base_menu where for_bureau=0 + #end + + --删除指定菜单ID + #sql("deletePrivilageByMenuId") + delete from t_base_menu_privilage where menu_id=? + #end + + -- 根据菜单ID返回这个菜单的可用身份 + #sql("selectIdentityByMenuId") +select identity_id from t_base_menu_privilage where menu_id=? + #end + + -- 获取指定的节点信息 + #sql("selectSingle") + select t1.menu_id,t1.menu_name,t1.parent_id,t1.sort_id,t1.url,t1.memo,t1.create_time,t1.update_ts,t1.level_id,t1.for_school,t1.for_bureau, + (select count(1) from t_base_menu as t2 where t1.menu_id=t2.parent_id) as is_leaf + from t_base_menu as t1 where t1.menu_id=? + #end + + -- 通过身份获取有哪些菜单ID + #sql("selectMenuByIdentityId") + select menu_id from t_base_menu_privilage where identity_id=? + union + select 1 + #end + + -- 查询菜单的ids + #sql("selectMenuForIds") + select t1.menu_id,t1.menu_name,t1.parent_id,t1.sort_id,t1.url,t1.memo,t1.create_time,t1.update_ts,t1.level_id, + (select count(1) from t_base_menu as t2 where t1.menu_id=t2.parent_id) as is_leaf + from t_base_menu as t1 where t1.menu_id in + ( + #for(x:ids) + #(for.index == 0 ? "" : ",") #para(x) + #end + ) order by t1.sort_id + #end + + -- 删除指定职务+分管工作的所有菜单,准备重新设置 + #sql("deleteMenuByDutyInCharge") + delete from t_base_principalship_menu where duties_id=#(duties_id) and in_charge_id=#(in_charge_id) + #end + + -- 获取指定职务+分管工作的所有菜单,用于显示 + #sql("selectMenuByDutyInCharge") + select duties_id,in_charge_id,menu_id from t_base_principalship_menu where duties_id=? and in_charge_id=? + #end + + -- 人员根据职务+分管工作可见的菜单 + #sql("selectMenuByPersonId") + select distinct menu_id from t_base_principalship_menu as t1 inner join t_person_duty_charge as t2 on t1.duties_id=t2.`duties_id` + and t1.in_charge_id=t2.`in_charge_id` where t2.person_id=? and t2.b_use=1 + #end +#end \ No newline at end of file diff --git a/target/classes/Sql/organization.sql b/target/classes/Sql/organization.sql new file mode 100644 index 0000000..7398eb6 --- /dev/null +++ b/target/classes/Sql/organization.sql @@ -0,0 +1,112 @@ +-- 组织机构命名空间 +#namespace("organization") + + -- 获取组织机构的最大主键号 + #sql("getMaxPkByOrg") + select ifnull(max(org_pk_num),0) as org_pk_num from t_base_organization + #end + -- 获取指定单位或组织机构的信息 + #sql("getOrgInfoById") + select org_id,org_code,org_name,parent_id,org_type_id,school_type_id,sort_id,create_time, + update_ts,b_use,org_pk_num,ifnull(city_id, -1) as city_id,ifnull(area_id, -1) as area_id, + ifnull(main_school_id, -1) as main_school_id,bureau_id,property_id,level_id + from t_base_organization where org_id=? and b_use=1 + #end + + -- 判断一个组织机构号是不是单位 + #sql("IsBureau") + select count(1) as c from t_base_organization where org_id=? and org_id=bureau_id + #end + + + -- 根据单位号获取下面正常部门的个数 + #sql("getOrgCountByBureauId") + select count(1) as c from t_base_organization where bureau_id=? and org_id<>? and b_use=1 + #end + + + -- 删除一个机构 + #sql("deleteOrgById") + update t_base_organization set b_use=0,operator=?,ip_address=? where org_id=? + #end + + -- 判断此ORG_CODE是不是存在 + #sql("getOrgCodeCount") + select count(1) as c from t_base_organization where org_code=? and b_use=1 + #end + + -- 判断此ORG_CODE是不是存在(排除自己用于修改) + #sql("getOrgCodeCountExceptSelf") + select count(1) as c from t_base_organization where org_code=? and org_id!=? and b_use=1 + #end + + -- 获取部门列表 + #sql("getOrgList") + select * from t_base_organization where parent_id=#para(0) and b_use=1 order by sort_id + #end + + -- 获取学校列表 + #sql("getSchoolList") + select t1.org_id,t1.org_code,t1.org_name,t1.parent_id,t1.org_type_id,t1.school_type_id,t1.sort_id, + t1.create_time,t1.update_ts,t1.b_use,t1.org_pk_num,t1.city_id,t1.area_id,t1.main_school_id,t1.bureau_id, + (select t2.school_type_name from t_dm_schooltype as t2 where t2.school_type_id=t1.school_type_id) as school_type_name + from t_base_organization as t1 where t1.parent_id=#para(0) and t1.b_use=1 and t1.school_type_id>0 + #end + + -- 获取学校列表(指定学校类型) + #sql("getSchoolListBySchoolType") + select t1.org_id,t1.org_code,t1.org_name,t1.parent_id,t1.org_type_id, + t1.school_type_id,t1.sort_id,t1.create_time,t1.update_ts,t1.b_use, + t1.org_pk_num,t1.city_id,t1.area_id,t1.main_school_id,t1.bureau_id, + (select t2.school_type_name from t_dm_schooltype as t2 where t2.school_type_id=t1.school_type_id) as school_type_name + from t_base_organization as t1 where t1.parent_id=#para(0) and t1.b_use=1 and t1.school_type_id =#para(1) + #end + + + -- 获取单位列表 + #sql("getBureauList") + select t1.org_id,t1.org_code,t1.org_name,t1.parent_id,t1.org_type_id, + (select t2.name from t_base_org_type_principalship as t2 WHERE t2.id=t1.org_type_id) as org_type_name, + t1.school_type_id,t1.sort_id,t1.create_time, + t1.update_ts,t1.b_use,t1.org_pk_num,t1.city_id,t1.area_id,t1.main_school_id,t1.bureau_id + from t_base_organization as t1 where t1.parent_id=#para(0) and t1.school_type_id<=0 and t1.b_use=1 order by t1.sort_id,t1.update_ts + #end + + -- 获取单位列表(指定单位类型) + #sql("getBureauListByBureauType") + select t1.org_id,t1.org_code,t1.org_name,t1.parent_id,t1.org_type_id, + (select t2.name from t_base_org_type_principalship as t2 WHERE t2.id=t1.org_type_id) as org_type_name, + t1.school_type_id,t1.sort_id,t1.create_time, + t1.update_ts,t1.b_use,t1.org_pk_num,t1.city_id,t1.area_id,t1.main_school_id,t1.bureau_id + from t_base_organization as t1 where t1.parent_id=#para(0) and t1.school_type_id<=0 and t1.org_type_id = #para(1) + and t1.b_use=1 order by t1.sort_id,t1.update_ts + #end + + -- 组织机构部门树 + #sql("getOrgTreeByBureauId") + select org_id,org_name,(case when bureau_id=org_id then '-1' else parent_id end) as parent_id,bureau_id from t_base_organization where bureau_id=? + and b_use=1 order by sort_id,update_ts + #end + + -- 传入一个区域ID,获取它下面的学校 + #sql("getSchoolListByAreaId") + select org_id,org_code,org_name from t_base_organization where (city_id=#para(0) or area_id=#para(1)) and b_use=1 and is_bureau=1 + and org_name like #para(2) and school_type_id>0 order by area_id,sort_id + #end + -- 传入一个区域ID,获取它下面的单位 + #sql("getBureauListByAreaId") + select org_id,org_code,org_name from t_base_organization where (city_id=#para(0) or area_id=#para(1)) and b_use=1 and is_bureau=1 + and org_name like #para(2) and school_type_id<=0 order by area_id,sort_id + #end + -- 传入一个区域ID,获取它下面全部 + #sql("getAllListByAreaId") + select org_id,org_code,org_name from t_base_organization where (city_id=#para(0) or area_id=#para(1)) and b_use=1 and is_bureau=1 + and org_name like #para(2) order by area_id,sort_id + #end + + --传入一个单位ID,获取它的一级部门有哪些 + #sql("getFirstLevelOrgName") + select org_id,org_name from t_base_organization where bureau_id=? and parent_id=? and b_use=1 + #end + +#end \ No newline at end of file diff --git a/target/classes/Sql/student.sql b/target/classes/Sql/student.sql new file mode 100644 index 0000000..283f693 --- /dev/null +++ b/target/classes/Sql/student.sql @@ -0,0 +1,67 @@ +#namespace("student") + + -- 根据学生的ID获取家长的信息 + #sql("getParentByChildId") + select * from t_sys_loginperson where p_child_id=? + #end + + -- 获取学生列表 + #sql("getStudentOrParentList") + SELECT + t1.person_id, + t1.person_name, + t1.login_name, + IFNULL(t1.xb, '1') AS xb, + t1.original_pwd, + t1.pwd, + (select count(*) as c from t_transfer_apply as t2 where t2.person_id=t1.person_id and t2.status_id=1 and t2.b_use=1) + as apply_status + FROM + t_sys_loginperson as t1 + WHERE + t1.b_use = 1 + AND t1.identity_id = #para(0) + AND t1.s_class_id = #para(1) order by t1.sort_id + #end + + -- 获取学生列表按学生姓名 + #sql("getStudentOrParentListByPersonName") + SELECT + t1.person_id, + t1.person_name, + t1.login_name, + IFNULL(t1.xb, '1') AS xb, + t1.original_pwd, + (select count(*) as c from t_transfer_apply as t2 where t2.person_id=t1.person_id and t2.status_id=1 and t2.b_use=1) + as apply_status + FROM + t_sys_loginperson as t1 + WHERE + t1.b_use = 1 + AND t1.identity_id = #para(0) + AND t1.s_class_id = #para(1) + AND t1.person_name LIKE concat('%',#para(2),'%') order by t1.sort_id + #end + + + -- 根据学生ID获取学生信息 + #sql("getStudentInfoByPersonId") + SELECT + person_id, + person_name, + IFNULL(xb, '1') AS xb, + IFNULL(mz, '01') AS mz, + idcard_code, + birthday, + zzmm, + (case when s_xjh='-1' then '' else s_xjh end) AS xjh, + (case when s_xjfh='-1' then '' else s_xjfh end) AS xjfh, + s_source AS stu_source, + sort_id + FROM + t_sys_loginperson + WHERE + b_use = 1 + AND person_id = ? + #end +#end \ No newline at end of file diff --git a/target/classes/Sql/studentYd.sql b/target/classes/Sql/studentYd.sql new file mode 100644 index 0000000..c5b9d4b --- /dev/null +++ b/target/classes/Sql/studentYd.sql @@ -0,0 +1,91 @@ +#namespace("studentYd") + + -- 获取学生状态列表 + #sql("get_dm_status_student") + select status_code,status_name,b_use,change_person_b_use,is_show from t_dm_status_student where b_use=1 and is_show=1 + #end + + -- 获取学生状态列表ByCode + #sql("get_dm_status_student_by_code") + select status_code,status_name,b_use,change_person_b_use,is_show from t_dm_status_student where b_use=1 and is_show=1 and status_code=? + #end + + -- 修改人员主表的人员状态 + #sql("updateStudentStatus") + update t_sys_loginperson set b_use=?,status_code=?,operator=?,ip_address=? where person_id=? + #end + + + -- 判断一个学生是不是可以申请调转 + #sql("checkAllowStudentTransferApply") + select t1.id,t1.source_bureau_id,t1.target_bureau_id, + (select t2.org_name from t_base_organization as t2 where t2.org_id=t1.source_bureau_id) as source_bureau_name, + (select t2.org_name from t_base_organization as t2 where t2.org_id=t1.target_bureau_id) as target_bureau_name, + t1.identity_id,t1.person_id,t1.person_name,t1.status_id,t1.target_is_read,t1.source_is_read,t1.apply_time, + t1.apply_message,t1.echo_time,t1.echo_message,t1.b_use + from t_transfer_apply as t1 where t1.b_use=1 and t1.person_id=? order by t1.apply_time desc + #end + + -- 获取学生调动申请列表 + #sql("getStudentTransferApplyList") + select t1.id,t1.source_bureau_id,t1.target_bureau_id, + (select t2.class_name from t_base_class as t2 where t2.class_id=(select t3.s_class_id from t_sys_loginperson as t3 where t3.person_id=t1.person_id)) as class_name, + (select t2.org_name from t_base_organization as t2 where t2.org_id=t1.source_bureau_id) as source_bureau_name, + (select t2.org_name from t_base_organization as t2 where t2.org_id=t1.target_bureau_id) as target_bureau_name, + t1.identity_id,t1.person_id,t1.person_name,t1.status_id,t1.target_is_read,t1.source_is_read,t1.apply_time, + t1.apply_message,t1.echo_time,t1.echo_message,t1.b_use + from t_transfer_apply as t1 where t1.source_bureau_id=#para(0) and t1.person_name LIKE concat('%',#para(1),'%') + and t1.b_use=1 and t1.identity_id=6 order by t1.apply_time desc + #end + + -- 获取学生调动反馈列表 + #sql("getStudentTransferEchoList") + select t1.id,t1.source_bureau_id,t1.target_bureau_id, + (select t2.class_name from t_base_class as t2 where t2.class_id=(select t3.s_class_id from t_sys_loginperson as t3 where t3.person_id=t1.person_id)) as class_name, + (select t2.org_name from t_base_organization as t2 where t2.org_id=t1.source_bureau_id) as source_bureau_name, + (select t2.org_name from t_base_organization as t2 where t2.org_id=t1.target_bureau_id) as target_bureau_name, + t1.identity_id,t1.person_id,t1.person_name,t1.status_id,t1.target_is_read,t1.source_is_read,t1.apply_time, + t1.apply_message,t1.echo_time,t1.echo_message,t1.b_use + from t_transfer_apply as t1 where t1.target_bureau_id=#para(0) + and t1.person_name LIKE concat('%',#para(1),'%') and t1.b_use=1 and t1.identity_id=6 + order by t1.apply_time desc + #end + + -- 获取指定ID的学生调转申请 + #sql("getStudentTransferInfoById") + select t1.id,t1.source_bureau_id,t1.target_bureau_id, + (select t2.class_name from t_base_class as t2 where t2.class_id=(select t3.s_class_id from t_sys_loginperson as t3 where t3.person_id=t1.person_id)) as class_name, + (select t2.org_name from t_base_organization as t2 where t2.org_id=t1.source_bureau_id) as source_bureau_name, + (select t2.org_name from t_base_organization as t2 where t2.org_id=t1.target_bureau_id) as target_bureau_name, + t1.identity_id,t1.person_id,t1.person_name,t1.status_id,t1.target_is_read,t1.source_is_read,t1.apply_time, + t1.apply_message,t1.echo_time,t1.echo_message,t1.b_use + from t_transfer_apply as t1 where id=? + #end + + -- 删除指定的调转ID + #sql("deleteTransferInfoById") + update t_transfer_apply set b_use=0,operator=?,ip_address=? where id=? + #end + + -- 获取学生调转申请的未读取个数 + #sql("getNewStudentTransferApplyCount") + select count(1) as c from t_transfer_apply where b_use=1 and target_is_read=0 and status_id=1 + and target_bureau_id=? and identity_id=6 + #end + + -- 教师调转提醒(收到新的回执) + #sql("getNewStudentTransferEchoCount") + select count(1) as c from t_transfer_apply where b_use=1 and source_is_read=0 and status_id>1 + and source_bureau_id=? and identity_id=6 + #end + + -- 调转的三种状态 + #sql("getTransferApplyStatus") + select apply_status_id,apply_status_name,for_check from t_transfer_apply_status where for_check=1 + #end + + --判断一个人是不是处于待审核状态 + #sql("getPersonStatus") + select count(*) as c from t_transfer_apply where person_id=? and b_use=1 and status_id=1 + #end +#end \ No newline at end of file diff --git a/target/classes/Sql/teacher.sql b/target/classes/Sql/teacher.sql new file mode 100644 index 0000000..5b33494 --- /dev/null +++ b/target/classes/Sql/teacher.sql @@ -0,0 +1,90 @@ +#namespace("teacher") + + -- 通过部门ID获取教师列表 + #sql("getTeacherListByOrgId") + SELECT + t1.person_id, + t1.person_name, + t1.login_name, + IFNULL(t1.xb, '1') AS xb, + t1.original_pwd, + t1.pwd, + (select count(*) as c from t_transfer_apply as t2 where t2.person_id=t1.person_id and t2.status_id=1 and t2.b_use=1) + as apply_status + FROM + t_sys_loginperson as t1 + WHERE + t1.b_use = 1 + AND t1.identity_id = 5 + AND t1.org_id = #para(0) order by t1.sort_id + #end + + -- 通过单位ID获取教师列表 + #sql("getTeacherListByBureauId") + SELECT + t1.person_id, + t1.person_name, + t1.login_name, + IFNULL(t1.xb, '1') AS xb, + t1.original_pwd, + t1.pwd, + (select count(*) as c from t_transfer_apply as t2 where t2.person_id=t1.person_id and t2.status_id=1 and t2.b_use=1) + as apply_status + FROM + t_sys_loginperson as t1 + WHERE + t1.b_use = 1 + AND t1.identity_id = 5 + AND t1.bureau_id = #para(0) order by t1.sort_id + #end + + -- 按教师姓名获取教师列表 + #sql("getTeacherListByOrgIdPersonName") + SELECT + t1.person_id, + t1.person_name, + t1.login_name, + IFNULL(t1.xb, '1') AS xb, + t1.original_pwd, + t1.pwd, + (select count(*) as c from t_transfer_apply as t2 where t2.person_id=t1.person_id and t2.status_id=1 and t2.b_use=1) + as apply_status + FROM + t_sys_loginperson as t1 + WHERE + t1.b_use = 1 + AND t1.identity_id = 5 + AND t1.org_id = #para(0) + AND t1.person_name LIKE concat('%',#para(1),'%') order by t1.sort_id + #end + + -- 按教师姓名,通过单位 获取教师列表 + #sql("getTeacherListByPersonNameAndBureauId") + SELECT + t1.person_id, + t1.person_name, + t1.login_name, + IFNULL(t1.xb, '1') AS xb, + t1.original_pwd, + t1.pwd, + (select count(*) as c from t_transfer_apply as t2 where t2.person_id=t1.person_id and t2.status_id=1 and t2.b_use=1) + as apply_status + FROM + t_sys_loginperson as t1 + WHERE + t1.b_use = 1 + AND t1.identity_id = 5 + AND t1.bureau_id = #para(0) + AND t1.person_name LIKE concat('%',#para(1),'%') order by t1.sort_id + #end + + -- 更改人员的部门 + #sql("changeOrgByPersonIdAndOrgId") + update t_sys_loginperson set org_id=?,operator=?,ip_address=? where person_id=? + #end + + --删除指定人员的职务与分管工作 + #sql("deleteDutuesAndChargeByPersonId") + update t_person_duty_charge set b_use=0,operator=?,ip_address=? where person_id=? + #end +#end \ No newline at end of file diff --git a/target/classes/Sql/teacherYd.sql b/target/classes/Sql/teacherYd.sql new file mode 100644 index 0000000..ba4c82c --- /dev/null +++ b/target/classes/Sql/teacherYd.sql @@ -0,0 +1,88 @@ +#namespace("teacherYd") + + -- 获取教师状态列表 + #sql("get_dm_status_teacher") + select status_code,status_name,b_use,change_person_b_use,is_show from t_dm_status_teacher where b_use=1 and is_show=1 + #end + + -- 获取教师状态列表ByCode + #sql("get_dm_status_teacher_by_code") + select status_code,status_name,b_use,change_person_b_use from t_dm_status_teacher where b_use=1 and is_show=1 and status_code=? + #end + + -- 修改人员主表的人员状态 + #sql("updateTeacherStatus") + update t_sys_loginperson set b_use=?,status_code=?,operator=?,ip_address=? where person_id=? + #end + + + -- 判断一个教师是不是可以申请调转 + #sql("checkAllowTeacherTransferApply") + select t1.id,t1.source_bureau_id,t1.target_bureau_id, + (select t2.org_name from t_base_organization as t2 where t2.org_id=t1.source_bureau_id) as source_bureau_name, + (select t2.org_name from t_base_organization as t2 where t2.org_id=t1.target_bureau_id) as target_bureau_name, + t1.identity_id,t1.person_id,t1.person_name,t1.status_id,t1.target_is_read,t1.source_is_read,t1.apply_time, + t1.apply_message,t1.echo_time,t1.echo_message,t1.b_use + from t_transfer_apply as t1 where t1.b_use=1 and t1.person_id=? order by t1.apply_time desc + #end + + -- 获取教师调动申请列表 + #sql("getTeacherTransferApplyList") + select t1.id,t1.source_bureau_id,t1.target_bureau_id, + (select t2.org_name from t_base_organization as t2 where t2.org_id=t1.source_bureau_id) as source_bureau_name, + (select t2.org_name from t_base_organization as t2 where t2.org_id=t1.target_bureau_id) as target_bureau_name, + t1.identity_id,t1.person_id,t1.person_name,t1.status_id,t1.target_is_read,t1.source_is_read,t1.apply_time, + t1.apply_message,t1.echo_time,t1.echo_message,t1.b_use + from t_transfer_apply as t1 where t1.source_bureau_id=#para(0) and t1.person_name LIKE concat('%',#para(1),'%') + and t1.b_use=1 and t1.identity_id=5 order by t1.apply_time desc + #end + + -- 获取教师调动反馈列表 + #sql("getTeacherTransferEchoList") + select t1.id,t1.source_bureau_id,t1.target_bureau_id, + (select t2.org_name from t_base_organization as t2 where t2.org_id=t1.source_bureau_id) as source_bureau_name, + (select t2.org_name from t_base_organization as t2 where t2.org_id=t1.target_bureau_id) as target_bureau_name, + t1.identity_id,t1.person_id,t1.person_name,t1.status_id,t1.target_is_read,t1.source_is_read,t1.apply_time, + t1.apply_message,t1.echo_time,t1.echo_message,t1.b_use + from t_transfer_apply as t1 where t1.target_bureau_id=#para(0) + and t1.person_name LIKE concat('%',#para(1),'%') and t1.b_use=1 and t1.identity_id=5 + order by t1.apply_time desc + #end + + -- 获取指定ID的教师调转申请 + #sql("getTeacherTransferInfoById") + select t1.id,t1.source_bureau_id,t1.target_bureau_id, + (select t2.org_name from t_base_organization as t2 where t2.org_id=t1.source_bureau_id) as source_bureau_name, + (select t2.org_name from t_base_organization as t2 where t2.org_id=t1.target_bureau_id) as target_bureau_name, + t1.identity_id,t1.person_id,t1.person_name,t1.status_id,t1.target_is_read,t1.source_is_read,t1.apply_time, + t1.apply_message,t1.echo_time,t1.echo_message,t1.b_use + from t_transfer_apply as t1 where id=? + #end + + -- 删除指定的调转ID + #sql("deleteTransferInfoById") + update t_transfer_apply set b_use=0,operator=?,ip_address=? where id=? + #end + + -- 获取教师调转申请的未读取个数 + #sql("getNewTeacherTransferApplyCount") + select count(1) as c from t_transfer_apply where b_use=1 and target_is_read=0 and status_id=1 and + target_bureau_id=? and identity_id=5 + #end + + -- 教师调转提醒(收到新的回执) + #sql("getNewTeacherTransferEchoCount") + select count(1) as c from t_transfer_apply where b_use=1 and source_is_read=0 and status_id>1 + and source_bureau_id=? and identity_id=5 + #end + + -- 调转的三种状态 + #sql("getTransferApplyStatus") + select apply_status_id,apply_status_name,for_check from t_transfer_apply_status where for_check=1 + #end + + --判断一个人是不是处于待审核状态 + #sql("getPersonStatus") + select count(*) as c from t_transfer_apply where person_id=? and b_use=1 and status_id=1 + #end +#end \ No newline at end of file diff --git a/target/classes/Sql/yp.sql b/target/classes/Sql/yp.sql new file mode 100644 index 0000000..f3e5988 --- /dev/null +++ b/target/classes/Sql/yp.sql @@ -0,0 +1,12 @@ +-- 应用接入命名空间 +#namespace("yp") + #sql("listView") + select * from t_yp_record where length(xb)>0 + #end + #sql("exportWDL") + SELECT zkz,xm,score FROM (select zkz,xm,score from t_yp_student as t1 where T1.zkz!='888888888888' AND t1.zkz not in (select zkz from t_yp_record) order by score desc ) AS T2; + #end + #sql("exportYDLWTB") + select zkz,xm,zzfs as score from t_yp_record where xb is null order by zzfs desc; + #end +#end \ No newline at end of file diff --git a/target/classes/application.properties b/target/classes/application.properties new file mode 100644 index 0000000..b52b6cc --- /dev/null +++ b/target/classes/application.properties @@ -0,0 +1,36 @@ +# 数据库信息 +driverClassName=com.mysql.cj.jdbc.Driver +user=root +password=DsideaL147258369 +jdbcUrl=jdbc:mysql://10.10.14.169:22066/zhengzhou103_db?rewriteBatchedStatements=true&useUnicode=true&zeroDateTimeBehavior=CONVERT_TO_NULL&useSSL=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai +# redis ip +redis_ip=10.10.14.169 +# redis port +redis_port=18890 +# ============================================================== +# 生成Token的密码 +CookieMd5SingPwd=DsideaL4r5t6y7u +# MysqlAES加密解密的密码 +AesPwd=DsideaL4r5t6y7u! +# 在云存储上保存的备份天数 +backup_remain_days=120 +#OBS(华为云云存储) +obs_accessKeyId=WAFBGJACKDOQZDH1MKZ1 +obs_accessKeySecret=dlWTUbqgCICaYJG3n0Rot4jXaen2HnfFtMVxiPEo +obs_endpoint=obs.cn-north-1.myhuaweicloud.com +obs_bucket_name=dsideal +# 在云存储上备份的路径名称 +FengHuangDbBackup=FengHuangDbBackup/ +# 管理员邮箱 +adminEmailAddress=10402852@qq.com +# 口令,注意这里是腾讯的授权码,可不是什么 QQ密码或者独立密码! +# http://service.mail.qq.com/cgi-bin/help?subtype=1&&id=28&&no=1001256 +mail_pass=jfdbifdxsahlbjjf +# 导出excel 的模板配置路径 +excelExportTemplatePathSuffix=/ExcelExportTemplate/ +# 导入excel 的模板配置路径 +ExcelImportTemplatePathSuffix=/ExcelImportTemplate/ +#file下载的前缀 +filePrefix=/FengHuang +# 授权IP地址 +IP=192.168.100.100,10.10.11.124 \ No newline at end of file diff --git a/target/classes/backup.sh b/target/classes/backup.sh new file mode 100644 index 0000000..47f77ff --- /dev/null +++ b/target/classes/backup.sh @@ -0,0 +1,12 @@ +#!/bin/bash + +cd /usr/local/tomcat8 +# +rm -rf webapps.tar.gz + +# 打包 +tar -czf webapps.tar.gz webapps +# 准备华为云登录帐号 +/usr/local/obsutil/obsutil config -i=WAFBGJACKDOQZDH1MKZ1 -k=dlWTUbqgCICaYJG3n0Rot4jXaen2HnfFtMVxiPEo -e=obs.cn-north-1.myhuaweicloud.com +# 上传到华为云 +/usr/local/obsutil/obsutil cp /usr/local/tomcat8/webapps.tar.gz obs://dsideal/HuangHai/webapps.tar.gz \ No newline at end of file diff --git a/target/classes/backup_db.sh b/target/classes/backup_db.sh new file mode 100644 index 0000000..543c07e --- /dev/null +++ b/target/classes/backup_db.sh @@ -0,0 +1,5 @@ +#!/bin/bash +# +date_str=`date +%Y%m%d%H%M%S` +cd /home/Backup +mysqldump -h localhost -u root --password=DsideaL147258369 -R -E -e --max_allowed_packet=1048576 --net_buffer_length=16384 cczhichengtoupiao | gzip > /home/Backup/cczhichengtoupiao_$date_str.sql.gz \ No newline at end of file diff --git a/target/classes/cron4j.properties b/target/classes/cron4j.properties new file mode 100644 index 0000000..9810f1a --- /dev/null +++ b/target/classes/cron4j.properties @@ -0,0 +1,24 @@ +# cron 表达式由五部分组成:分 时 天 月 周 # 分 :从 0 到 59 # 时 :从 0 到 23 # 天 :从 1 到 31,字母 L 可以表示月的最后一天 # 月 :从 1 到 12,可以别名:jan", "feb", "mar", "apr", "may", "jun", "jul", "aug", "sep", "oct", "nov" and "dec" +# 周 :从 0 到 6,0 表示周日,6 表示周六,可以使用别名: "sun", "mon", "tue", "wed", "thu", "fri" and "sat" +# +# 数字 n:表示一个具体的时间点,例如 5 * * * * 表示 5 分这个时间点时执行 +# 逗号 , :表示指定多个数值,例如 3,5 * * * * 表示 3 和 5 分这两个时间点执行 +# 减号 -:表示范围,例如 1-3 * * * * 表示 1 分、2 分再到 3 分这三个时间点执行 +# 星号 *:表示每一个时间点,例如 * * * * * 表示每分钟执行 +# 除号 /:表示指定一个值的增加幅度。例如 n/m表示从 n 开始,每次增加 m 的时间点执行 +# cron4j 集成cron 只有 分 时 天 月 周 没有秒 +cron4j=clearRubbish,backup + +# 每天凌晨2点执行一次 +clearRubbish.cron=0 2 * * * +clearRubbish.class=com.dsideal.FengHuang.clearRubbish.clearRubbishAction +clearRubbish.daemon=true +clearRubbish.enable=true + +# 每天凌晨2点执行一次,备份数据库 +backup.cron=0 2 * * * +backup.class=Backup.BackupAll +backup.daemon=true +backup.enable=true + + diff --git a/target/classes/debug.sh b/target/classes/debug.sh new file mode 100644 index 0000000..f088e23 --- /dev/null +++ b/target/classes/debug.sh @@ -0,0 +1,21 @@ +#!/bin/bash + +# 启动入口类,该脚本文件用于别的项目时要改这里 +MAIN_CLASS=com.dsideal.FengHuang.Start + + +# Java 命令行参数,根据需要开启下面的配置,改成自己需要的,注意等号前后不能有空格 +export JAVA_HOME=/usr/java/jdk +export JRE_HOME=${JAVA_HOME}/jre +export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib +export PATH=${JAVA_HOME}/bin:$PATH + +#JAVA_OPTS="-Xms1024m -Xmx2048m" +JAVA_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,suspend=n,server=y,address=5555 -Xms1024m -Xmx2048m" + +# 生成 class path 值 +CP=.:/usr/local/tomcat8/webapps/FengHuang/WEB-INF/lib/* + +# 运行为后台进程,并且将信息输出到 logback.xml配置的日志文件位置 +java -Xverify:none ${JAVA_OPTS} -cp ${CP} ${MAIN_CLASS} + diff --git a/target/classes/dsideal.txt b/target/classes/dsideal.txt new file mode 100644 index 0000000..b93cd86 --- /dev/null +++ b/target/classes/dsideal.txt @@ -0,0 +1,32 @@ + _ooOoo_ + o8888888o + 88" . "88 + (| -_- |) + O\ = /O + ____/`---'\____ + . ' \\| |// `. + / \\||| : |||// \ + / _||||| -:- |||||- \ + | | \\\ - /// | | + | \_| ''\---/'' | | + \ .-\__ `-` ___/-. / + ___`. .' /--.--\ `. . __ + ."" '< `.___\_<|>_/___.' >'"". + | | : `- \`.;`\ _ /`;.`/ - ` : | | + \ \ `-. \_ __\ /__ _/ .-` / / + ======`-.____`-.___\_____/___.-`____.-'====== + `=---=' + + ............................................. + 佛祖镇楼 BUG辟易 + 佛曰: + 写字楼里写字间,写字间里程序员; + 程序人员写程序,又拿程序换酒钱。 + 酒醒只在网上坐,酒醉还来网下眠; + 酒醉酒醒日复日,网上网下年复年。 + 但愿老死电脑间,不愿鞠躬老板前; + 奔驰宝马贵者趣,公交自行程序员。 + 别人笑我忒疯癫,我笑自己命太贱; + 不见满街漂亮妹,哪个归得程序员? + +power by http://patorjk.com/software/taag/ \ No newline at end of file diff --git a/target/classes/license.xml b/target/classes/license.xml new file mode 100644 index 0000000..20b1b90 --- /dev/null +++ b/target/classes/license.xml @@ -0,0 +1,12 @@ + + + + Aspose.Total for Java + + Enterprise + 20991231 + 20991231 + 8bfe198c-7f0c-4ef8-8ff0-acc3237bf0d7 + + sNLLKGMUdF0r8O1kKilWAGdgfs2BvJb/2Xp8p5iuDVfZXmhppo+d0Ran1P9TKdjV4ABwAgKXxJ3jcQTqE/2IRfqwnPf8itN8aFZlV3TJPYeD3yWE7IT55Gz6EijUpC7aKeoohTb4w2fpox58wWoF3SNp6sK6jDfiAUGEHYJ9pjU= + \ No newline at end of file diff --git a/target/classes/log4j.properties b/target/classes/log4j.properties new file mode 100644 index 0000000..625cca1 --- /dev/null +++ b/target/classes/log4j.properties @@ -0,0 +1,12 @@ +log4j.rootLogger=WARN, console +log4j.appender.console=org.apache.log4j.ConsoleAppender +log4j.appender.console.layout=org.apache.log4j.PatternLayout +log4j.appender.console.layout.conversionPattern=%5p [%t] (%F:%L) - %m%n + +log4j.appender.mq=org.apache.rocketmq.logappender.log4j.RocketmqLog4jAppender +log4j.appender.mq.Topic=TOPIC_MEIWEI_SMS_NOTICE_TEST +log4j.appender.mq.Tag=PID_MEIWEI_SMS_RETRY_TIMEOUT +log4j.appender.mq.ProducerGroup=meiwei-producer-retry +log4j.appender.mq.NameServerAddress=127.0.0.1:9876;127.0.0.1:9877 +log4j.appender.mq.layout=org.apache.log4j.PatternLayout +log4j.appender.mq.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-4r [%t] (%F:%L) % \ No newline at end of file diff --git a/target/classes/logback.xml b/target/classes/logback.xml new file mode 100644 index 0000000..9a8c072 --- /dev/null +++ b/target/classes/logback.xml @@ -0,0 +1,39 @@ + + + + + + + + + %date{yyyy-MM-dd HH:mm:ss.SSS} %boldYellow([%thread]) %highlight(%-5level) %boldGreen(%logger{40}) + - %msg%n + + + + + + ${LOG_HOME}/FengHuang.log + + + ${LOG_HOME}/FengHuang.log.%d{yyyy-MM-dd}.log + + 30 + + + + %date{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{40} - %msg%n + + + + 100MB + + + + + + + + + + \ No newline at end of file diff --git a/target/classes/start.bat b/target/classes/start.bat new file mode 100644 index 0000000..5f157c9 --- /dev/null +++ b/target/classes/start.bat @@ -0,0 +1,7 @@ +@echo off +set MAIN_CLASS=com.dsideal.FengHuang.Start +set APP_BASE_PATH=%~dp0 +set CP=.;%APP_BASE_PATH%config;%APP_BASE_PATH%..\..\lib\*; +set JAVA_OPTS=-Xms1024m -Xmx2048m +java -Xverify:none %JAVA_OPTS% -cp %CP% %MAIN_CLASS% +pause diff --git a/target/classes/start.sh b/target/classes/start.sh new file mode 100644 index 0000000..48b2b40 --- /dev/null +++ b/target/classes/start.sh @@ -0,0 +1,20 @@ +#!/bin/bash + +# 启动入口类,该脚本文件用于别的项目时要改这里 +MAIN_CLASS=com.dsideal.FengHuang.Start + + +# Java 命令行参数,根据需要开启下面的配置,改成自己需要的,注意等号前后不能有空格 +export JAVA_HOME=/usr/java/jdk +export JRE_HOME=${JAVA_HOME}/jre +export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib +export PATH=${JAVA_HOME}/bin:$PATH + +JAVA_OPTS="-Xms1024m -Xmx2048m" + +# 生成 class path 值 +CP=.:/usr/local/tomcat8/webapps/FengHuang/WEB-INF/lib/* + +# 运行为后台进程,并且将信息输出到 logback.xml配置的日志文件位置 +nohup java -Xverify:none ${JAVA_OPTS} -cp ${CP} ${MAIN_CLASS} >> /dev/null 2>&1 & + diff --git a/target/classes/stop.sh b/target/classes/stop.sh new file mode 100644 index 0000000..1ca4927 --- /dev/null +++ b/target/classes/stop.sh @@ -0,0 +1,10 @@ +#!/bin/bash + +# 启动入口类,该脚本文件用于别的项目时要改这里 +MAIN_CLASS=com.dsideal.FengHuang.Start + +# kill 命令不使用 -9 参数时,会回调 onStop() 方法,确定不需要此回调建议使用 -9 参数 +kill -9 `pgrep -f ${MAIN_CLASS}` 2>/dev/null + +# 以下代码与上述代码等价 +# kill $(pgrep -f ${MAIN_CLASS}) 2>/dev/null diff --git a/target/classes/undertow.properties b/target/classes/undertow.properties new file mode 100644 index 0000000..ccd5376 --- /dev/null +++ b/target/classes/undertow.properties @@ -0,0 +1,36 @@ +# true 值支持热加载 +undertow.devMode=true +undertow.port=9000 +undertow.host=0.0.0.0 +#undertow.resourcePath =/usr/local/tomcat8/webapps/ZhengZhou103,classpath:static +undertow.resourcePath =D:/dsWork/ZhengZhou103/WebRoot,classpath:static + +# 目录名称 +undertow.contextPath=/FengHuang + +# 设定I/O线程数. +server.undertow.io-threads=8 + +# 设定工作线程数 +server.undertow.worker-threads=60 + +# 查询当前某程序的线程或进程数 +# yum install psmisc -y +# ps -e | grep java | awk '{print $1} +# pstree -p 15453 | wc -l + +# gzip 压缩开关 +undertow.gzip.enable=true +# 配置压缩级别,默认值 -1。 可配置 1 到 9。 1 拥有最快压缩速度,9 拥有最高压缩率 +undertow.gzip.level=-1 +# 触发压缩的最小内容长度 +undertow.gzip.minLength=1024 + +# 开启access日志 +server.undertow.accesslog.enabled=true +server.undertow.accesslog.pattern=%t %a "%r" %s (%D ms) + +# ssl 开启时,是否开启 http2。检测该配置是否生效在 chrome 地址栏中输入: chrome://net-internals/#http2 +#undertow.http2.enable=true + +#http://www.jfinal.com/doc/1-4