diff --git a/src/main/java/com/dsideal/QingLong/Collect/Controller/CollectController.java b/src/main/java/com/dsideal/QingLong/Collect/Controller/CollectController.java index 41e2d782..1e7219a4 100644 --- a/src/main/java/com/dsideal/QingLong/Collect/Controller/CollectController.java +++ b/src/main/java/com/dsideal/QingLong/Collect/Controller/CollectController.java @@ -1634,16 +1634,15 @@ public class CollectController extends Controller { //根据人员ID,获取人员所在的单位ID LoginPersonModel personModel = new LoginPersonModel(); Record rs = personModel.getLoginInfoByPersonId(person_id); - String bureau_id = rs.get("bureau_id"); + + //检查当前登录人员是不是发布任务的角色 + Kv kvCheck = cm.checkPublishRole(person_id); + //获取登录人员第一个发布任务的角色是什么 + int publish_role_id = kvCheck.getInt("publish_role_id"); + + String bureau_id = rs.get("bureau_id"); Record jobRecord = cm.getJob(job_id); - String fabu_bureau_id = jobRecord.getStr("bureau_id"); - if (!fabu_bureau_id.equals(bureau_id)) { - Map map = new HashMap<>(); - map.put("success", false); - map.put("message", "这个任务不是登录人下发的,无法输出汇总表!"); - renderJson(map); - } String job_name = jobRecord.getStr("job_name"); String tmpFile = UUID.randomUUID().toString().toLowerCase() + ".xlsx"; String excelPath = basePath + "/" + tmpFile; @@ -1651,10 +1650,10 @@ public class CollectController extends Controller { int job_type = jobRecord.getInt("job_type");//任务类型:1:表单,2:EXCEL模板 switch (job_type) { case 1: - cm.getSummaryExcelForFormFill(job_id, excelPath); //测试用例 job_id=8 + cm.getSummaryExcelForFormFill(job_id,publish_role_id, excelPath); //测试用例 job_id=8 break; case 2: - cm.getSummaryExcelForImportExcel(job_id, excelPath);//测试用例 job_id=47 + cm.getSummaryExcelForImportExcel(job_id,publish_role_id, excelPath);//测试用例 job_id=47 break; } //提供下载 diff --git a/src/main/java/com/dsideal/QingLong/Collect/Model/CollectModel.java b/src/main/java/com/dsideal/QingLong/Collect/Model/CollectModel.java index 07e166bc..79ac1a21 100644 --- a/src/main/java/com/dsideal/QingLong/Collect/Model/CollectModel.java +++ b/src/main/java/com/dsideal/QingLong/Collect/Model/CollectModel.java @@ -1908,7 +1908,6 @@ public class CollectModel { * @param groupIds 组列表 * @param memo 要求 * @param bureau_id 发布者所在单位 - * @param person_id 发布人员ID * 下面的参数,为任务发布到人时扩展 * @param allTeacher 所有教师 * @param allStudent 所有学生 @@ -2149,7 +2148,7 @@ public class CollectModel { * @param filePath * @throws IOException */ - public void getSummaryExcelForImportExcel(int job_id, String filePath) throws IOException { //给定任务编号,获取它有哪些表 + public void getSummaryExcelForImportExcel(int job_id, int publish_role_id, String filePath) throws IOException { //给定任务编号,获取它有哪些表 // 创建工作簿和工作表 SXSSFWorkbook workbook = new SXSSFWorkbook();//默认100行,超100行将写入临时文件 workbook.setCompressTempFiles(false); //是否压缩临时文件,否则写入速度更快,但更占磁盘,但程序最后是会将临时文件删掉的 @@ -2275,7 +2274,9 @@ public class CollectModel { * @param filePath * @throws IOException */ - public void getSummaryExcelForFormFill(int job_id, String filePath) throws IOException { + public void getSummaryExcelForFormFill(int job_id, int publish_role_id, String filePath) throws IOException { + //TODO + Record jobRecord = getJob(job_id); String table_name = jobRecord.getStr("form_table_name");//表格名称 Map _map = new HashMap<>();