企业考试交卷 __coTyEAVU2rvXr4ErDl2 __coTyEAVU2rvXr4ErDl2 published UTF-8 post /bkt/myEnterpriseExamSubmit json planProcess var planProcessSql = "SELECT "+ "cast(sum(process.ITEM_PROCESS)/count(1) as DECIMAL(10,2)) planProcess "+ "FROM tms.tlk_learnPlan_mission_process process "+ "LEFT JOIN tms.tlk_learnPlanMission mission ON process.ITEM_MISSION_ID = mission.id "+ "WHERE process.ITEM_ISDELETE = '0' and process.ITEM_LEARNPLAN_ID = '"+planId+"' and process.ITEM_EXAMINEE_ID = '"+employeeId+"'"; var planProcessData = queryByDSName("tms",planProcessSql); var planProcessIter = planProcessData.iterator(); var planProcessMap = ""; if(planProcessIter.hasNext()){ planProcessMap = planProcessIter.next(); planProcess = planProcessMap.get("planProcess"); // 计划总进度达到100% ->1 if(1 === planProcess){ missionProgressUpdateSql = "UPDATE tms.tlk_learnPlan_test_examinee SET LASTMODIFIED = now(),LASTMODIFIER = '"+employeeId+"',"+ "ITEM_mission_progress = '"+planProcess+"',"+ "ITEM_examinee_test_score = concat(ifnull(ITEM_examinee_test_score,''),'"+examScore+"'),"+ "ITEM_examinee_credit_score = '0',ITEM_examinee_learnPlan_status = case when now()>'"+effectEndDate+"' then '2' else '1' end,"+ "ITEM_learnPlan_finish_time = now() where ITEM_learnplan_id = '"+planId+"' and ITEM_examinee_id = '"+employeeId+"' and item_isDelete='0'"; }else if(1 > planProcess){ // 计划总进度没达到100% ->1 missionProgressUpdateSql = "UPDATE tms.tlk_learnPlan_test_examinee SET LASTMODIFIED = now(),LASTMODIFIER = '"+employeeId+"',"+ "ITEM_mission_progress = '"+planProcess+"',"+ "ITEM_examinee_test_score = concat(ifnull(ITEM_examinee_test_score,''),'"+examScore+"',';') "+ "where ITEM_learnplan_id = '"+planId+"' and ITEM_examinee_id = '"+employeeId+"' and item_isDelete='0'"; } // 更新职员所属计划任务的进度 updateByDSName("tms",missionProgressUpdateSql); } searchSql = "SELECT "+ "'"+examScore+"' ITEM_examinee_exam_score,"+ "'' ITEM_examinee_credit_score,"+ "'' certification,"+ "process.ITEM_examinee_test_record ITEM_examinee_exam_record "+ "FROM tms.tlk_learnPlan_mission_process process "+ "LEFT JOIN tms.tlk_learnPlanMission mission ON process.ITEM_mission_id = mission.id "+ "WHERE process.ITEM_ISDELETE = '0' and process.ITEM_examinee_id = '"+employeeId+"' and mission.ITEM_MISSION_ID = '"+examId+"'"; }else if("1".equals(learnPassStatus) && ("0".equals(examPassStatus) || "".equals(examPassStatus))){ //学习不生效而考试生效的情况下 var passedScore = "";// 规定的及格分数 var creditScore = "";// 规定的奖励学分 var certificationId = "";// 规定的证书id passedCount = "";// 规定的考试合格场数 var certificationWay = "";// 规定的证书颁发方式 0:不颁发 或 2:考试合格后颁发 passedTestNum = "";// 已经考试合格的场数 var passSql = "SELECT "+ "case when (plan.ITEM_exam_pass_setting is null OR plan.ITEM_exam_pass_setting = '') then 0 else cast(plan.ITEM_exam_pass_setting*0.01*paper.ITEM_TESTALL as decimal(10,0)) end passedScore,"+ "plan.ITEM_reward_score creditScore,"+ "plan.ITEM_issue_certifications_way certificationWay,"+ "plan.ITEM_certification_id certificationId,"+ "plan.ITEM_exam_pass_demand passedCount "+ "FROM tms.tlk_learnPlan_mission_process process "+ "LEFT JOIN tms.tlk_learnPlanMission mission ON process.ITEM_MISSION_ID = mission.ID "+ "LEFT JOIN tms.tlk_learnPlanStage stage on mission.ITEM_learn_stage_id = stage.ID "+ "LEFT JOIN tms.tlk_learnPlan plan ON stage.ITEM_learn_plan_id = plan.id "+ "LEFT JOIN tms.tlk_learnPlanTest test ON mission.ITEM_MISSION_ID = test.id "+ "LEFT JOIN tms.tlk_enterprise_test_paper paper ON test.ITEM_learn_test_paper_id = paper.id "+ "WHERE process.ITEM_ISDELETE = '0' and mission.ITEM_MISSION_ID = '"+examId+"' and process.ITEM_EXAMINEE_ID = '"+employeeId+"'"; var passData = queryByDSName("tms",passSql); var passIter = passData.iterator(); var passMap = ""; if(passIter.hasNext()){ passMap = passIter.next(); passedScore = passMap.get("passedScore"); creditScore = passMap.get("creditScore"); certificationId = passMap.get("certificationId"); passedCount = passMap.get("passedCount"); certificationWay = passMap.get("certificationWay"); } if(isNotNull(passedScore) && examScore >= passedScore){ // 是否达到考试及格分数,达到的话这个人的考试任务进度+1 processUpdateSql = "UPDATE tms.tlk_learnPlan_mission_process SET LASTMODIFIED = now(),LASTMODIFIER = '"+employeeId+"',"+ "ITEM_process = '1',ITEM_examinee_test_record = '"+examRecord+"' "+ "WHERE ITEM_mission_id = (select id from tms.tlk_learnPlanMission where item_mission_id = '"+examId+"') and ITEM_examinee_id = '"+employeeId+"' and item_isDelete='0'"; updateByDSName("tms",processUpdateSql); // 计算职员所属计划任务的进度->planProcess var planProcessSql = "SELECT "+ "cast(sum(process.ITEM_PROCESS)/count(1) as DECIMAL(10,2)) planProcess "+ "FROM tms.tlk_learnPlan_mission_process process "+ "LEFT JOIN tms.tlk_learnPlanMission mission ON process.ITEM_MISSION_ID = mission.id "+ "WHERE process.ITEM_ISDELETE = '0' and process.ITEM_LEARNPLAN_ID = '"+planId+"' and process.ITEM_EXAMINEE_ID = '"+employeeId+"'"; var planProcessData = queryByDSName("tms",planProcessSql); var planProcessIter = planProcessData.iterator(); var planProcessMap = ""; // 计算已通过的考试个数 var passedTestNumSql = "SELECT "+ "count(1) passedTestNum "+ "FROM tms.tlk_learnPlan_mission_process process "+ "LEFT JOIN tms.tlk_learnPlanMission mission ON process.ITEM_MISSION_ID = mission.id "+ "WHERE process.ITEM_ISDELETE = '0' and mission.ITEM_MISSION_ID like '%__Cq1HeEavDV5nbpOVpd2' and process.item_process = '1' and process.ITEM_LEARNPLAN_ID = '"+planId+"' and process.ITEM_EXAMINEE_ID = '"+employeeId+"'"; var passedTestNumData = queryByDSName("tms",passedTestNumSql); var passedTestNumIter = passedTestNumData.iterator(); var passedTestNumMap = ""; if(planProcessIter.hasNext()){ planProcessMap = planProcessIter.next(); planProcess = planProcessMap.get("planProcess"); passedTestNumMap = passedTestNumIter.next(); passedTestNum = passedTestNumMap.get("passedTestNum"); var searchStr = ""; // 考试合格场数达到计划中规定的合格场数则算考试通过 if(Number(passedTestNum) == passedCount){ if(!isNotNull(creditScore)){ creditScore = "0"; } var updateStr = ""; if("2".equals(certificationWay)){ updateStr +="ITEM_examinee_certificate_status = '1',"; searchStr += "case person.ITEM_examinee_certificate_status when '0' then '' when '1' then '获得1项证书' end "; } if(1 == planProcess){ // 计划总进度达到100% ->1 missionProgressUpdateSql = "UPDATE tms.tlk_learnPlan_test_examinee SET LASTMODIFIED = now(),LASTMODIFIER = '"+employeeId+"',"+ "ITEM_mission_progress = '"+planProcess+"',"+updateStr+ "ITEM_examinee_test_score = concat(ifnull(ITEM_examinee_test_score,''),'"+examScore+"'),"+ "ITEM_examinee_credit_score = '"+creditScore+"',ITEM_examinee_learnPlan_status = case when now()>'"+effectEndDate+"' then '2' else '1' end,"+ "ITEM_learnPlan_finish_time = now() where ITEM_learnplan_id = '"+planId+"' and ITEM_examinee_id = '"+employeeId+"' and item_isDelete='0'"; }else if(1 > planProcess){ // 计划总进度没达到100% ->1 missionProgressUpdateSql = "UPDATE tms.tlk_learnPlan_test_examinee SET LASTMODIFIED = now(),LASTMODIFIER = '"+employeeId+"',"+ "ITEM_mission_progress = '"+planProcess+"',"+updateStr+ "ITEM_examinee_test_score = concat(ifnull(ITEM_examinee_test_score,''),'"+examScore+"',';'),"+ "ITEM_examinee_credit_score = '"+creditScore+"',ITEM_examinee_learnPlan_status = case when now()>'"+effectEndDate+"' then '2' else '1' end,"+ "ITEM_learnPlan_finish_time = now() where ITEM_learnplan_id = '"+planId+"' and ITEM_examinee_id = '"+employeeId+"' and item_isDelete='0'"; } // 更新职员所属计划任务的进度 updateByDSName("tms",missionProgressUpdateSql); // 插入学分成员明细 1 var ruleId = ""; var ruleSql = "select id from tms.tlk_creditRules where item_isDelete = '0' and item_rule_name ='学习计划'"; var creditRulelId = queryByDSName("tms",ruleSql).iterator().next().get("id"); var process = getDocumentProcess(); var formService = getFormProcess(); var subform = formService.doView("__84a1z2MaoRytX5nWz86"); var doc = process.doNew(subform,getWebUser(),createParamsTable()); doc.addStringItem("credit_rule_id",creditRulelId); doc.addStringItem("credit_score",creditScore); ruleId = doc.getId(); process.doCreate(doc); // 插入学分成员明细 2 var subform = formService.doView("__6HDqpRKrC0KPrhy2Rgo"); var doc = process.doNew(subform,getWebUser(),createParamsTable()); doc.addStringItem("credit_detail_id",ruleId); doc.addStringItem("student_id",employeeId); var sql = "SELECT "+ "b.`name` studentName,"+ "c.`name` departName "+ "FROM obpm2.tenant_employees a "+ "LEFT JOIN obpm2.tenant_users b ON a.tenant_user_id = b.id "+ "LEFT JOIN obpm2.tenant_departments c ON a.department_id = c.id "+ "WHERE a.id = '"+employeeId+"'"; var data = queryByDSName("tms",sql); var iter = data.iterator(); var employeeName = ""; if(iter.hasNext()){ map = iter.next(); doc.addStringItem("student_name",map.get("studentName")); doc.addStringItem("student_department",map.get("departName")); employeeName = map.get("studentName"); } doc.addStringItem("score_source_id",planId); process.doCreate(doc); // 生成证书 makeCertification(employeeId,employeeName,certificationId); searchSql = "SELECT "+ "'"+examScore+"' ITEM_examinee_exam_score,"+ "person.ITEM_examinee_credit_score,"+ searchStr +" certification,"+ "process.ITEM_examinee_test_record ITEM_examinee_exam_record "+ "FROM tms.tlk_learnPlan_mission_process process "+ "LEFT JOIN tms.tlk_learnPlanMission mission ON process.ITEM_mission_id = mission.id "+ "LEFT JOIN tms.tlk_learnPlan_test_examinee person ON (person.ITEM_examinee_id = process.ITEM_examinee_id and person.ITEM_learnplan_id = '"+planId+"' and person.ITEM_ISDELETE = '0') "+ "WHERE process.ITEM_ISDELETE = '0' and process.ITEM_examinee_id = '"+employeeId+"' and mission.ITEM_MISSION_ID = '"+examId+"'"; } } }else{ searchSql = "SELECT "+ "'"+examScore+"' ITEM_examinee_exam_score,"+ "'' ITEM_examinee_credit_score,"+ "'' certification,"+ "process.ITEM_examinee_test_record ITEM_examinee_exam_record "+ "FROM tms.tlk_learnPlan_mission_process process "+ "LEFT JOIN tms.tlk_learnPlanMission mission ON process.ITEM_mission_id = mission.id "+ "WHERE process.ITEM_ISDELETE = '0' and process.ITEM_examinee_id = '"+employeeId+"' and mission.ITEM_MISSION_ID = '"+examId+"'"; } }else if(("".equals(learnPassStatus) || "0".equals(learnPassStatus)) && ("".equals(examPassStatus) || "0".equals(examPassStatus))){ //学习生效而考试也生效的情况下 var passedScore = "";// 规定的及格分数 var creditScore = "";// 规定的奖励学分 var certificationId = "";// 规定的证书id var passedCount = "";// 规定的考试合格场数 var certificationWay = "";// 规定的证书颁发方式 0:不颁发; 1:学习合格后颁发;2:考试合格后颁发;3:学习和考试合格后颁发 var finishCoursePercent = ""; // 规定的完成总课程百分比 (0-100) var passedTestNum = "";// 已经考试合格的场数 var finishCoursePercentNum = "";// 已完成总课程百分比 var passSql = "SELECT "+ "case when (plan.ITEM_exam_pass_setting is null OR plan.ITEM_exam_pass_setting = '') then 0 else cast(plan.ITEM_exam_pass_setting*0.01*paper.ITEM_TESTALL as decimal(10,0)) end passedScore,"+ "plan.ITEM_reward_score creditScore,"+ "plan.ITEM_issue_certifications_way certificationWay,"+ "plan.ITEM_certification_id certificationId,"+ "plan.ITEM_exam_pass_demand passedCount,"+ "plan.ITEM_learn_pass_demand finishCoursePercent "+ "FROM tms.tlk_learnPlan_mission_process process "+ "LEFT JOIN tms.tlk_learnPlanMission mission ON process.ITEM_MISSION_ID = mission.ID "+ "LEFT JOIN tms.tlk_learnPlanStage stage on mission.ITEM_learn_stage_id = stage.ID "+ "LEFT JOIN tms.tlk_learnPlan plan ON stage.ITEM_learn_plan_id = plan.id "+ "LEFT JOIN tms.tlk_learnPlanTest test ON mission.ITEM_MISSION_ID = test.id "+ "LEFT JOIN tms.tlk_enterprise_test_paper paper ON test.ITEM_learn_test_paper_id = paper.id "+ "WHERE process.ITEM_ISDELETE = '0' and mission.ITEM_MISSION_ID = '"+examId+"' and process.ITEM_EXAMINEE_ID = '"+employeeId+"'"; var passData = queryByDSName("tms",passSql); var passIter = passData.iterator(); var passMap = ""; if(passIter.hasNext()){ passMap = passIter.next(); passedScore = passMap.get("passedScore"); creditScore = passMap.get("creditScore"); certificationId = passMap.get("certificationId"); passedCount = passMap.get("passedCount"); certificationWay = passMap.get("certificationWay"); finishCoursePercent = passMap.get("finishCoursePercent"); } if(isNotNull(passedScore) && examScore >= passedScore){ // 是否达到考试及格分数,达到的话这个人的考试任务进度+1 processUpdateSql = "UPDATE tms.tlk_learnPlan_mission_process SET LASTMODIFIED = now(),LASTMODIFIER = '"+employeeId+"',"+ "ITEM_process = '1',ITEM_examinee_test_record = '"+examRecord+"' "+ "WHERE ITEM_mission_id = (select id from tms.tlk_learnPlanMission where item_mission_id = '"+examId+"') and ITEM_examinee_id = '"+employeeId+"' and item_isDelete='0'"; updateByDSName("tms",processUpdateSql); // 计算职员所属计划任务的进度->planProcess var planProcessSql = "SELECT "+ "cast(sum(process.ITEM_PROCESS)/count(1) as DECIMAL(10,2)) planProcess "+ "FROM tms.tlk_learnPlan_mission_process process "+ "LEFT JOIN tms.tlk_learnPlanMission mission ON process.ITEM_MISSION_ID = mission.id "+ "WHERE process.ITEM_ISDELETE = '0' and process.ITEM_LEARNPLAN_ID = '"+planId+"' and process.ITEM_EXAMINEE_ID = '"+employeeId+"'"; var planProcessData = queryByDSName("tms",planProcessSql); var planProcessIter = planProcessData.iterator(); var planProcessMap = ""; // 计算已通过的考试个数 var passedTestNumSql = "SELECT "+ "count(1) passedTestNum "+ "FROM tms.tlk_learnPlan_mission_process process "+ "LEFT JOIN tms.tlk_learnPlanMission mission ON process.ITEM_MISSION_ID = mission.id "+ "WHERE process.ITEM_ISDELETE = '0' and mission.ITEM_MISSION_ID like '%__Cq1HeEavDV5nbpOVpd2' "+ "and process.item_process = '1' and process.ITEM_LEARNPLAN_ID = '"+planId+"' and process.ITEM_EXAMINEE_ID = '"+employeeId+"'"; var passedTestNumData = queryByDSName("tms",passedTestNumSql); var passedTestNumIter = passedTestNumData.iterator(); var passedTestNumMap = ""; // 计算已完成课程百分比 var finishCoursePercentSql = "SELECT "+ "cast(sum(process.ITEM_PROCESS)/count(1) as DECIMAL(10,2)) percent "+ "FROM tms.tlk_learnPlan_mission_process process "+ "LEFT JOIN tms.tlk_learnPlanMission mission ON process.ITEM_MISSION_ID = mission.id "+ "WHERE process.ITEM_ISDELETE = '0' and mission.ITEM_MISSION_ID not like '%__Cq1HeEavDV5nbpOVpd2' "+ "and process.ITEM_LEARNPLAN_ID = '"+planId+"' and process.ITEM_EXAMINEE_ID = '"+employeeId+"'"; var finishCoursePercentData = queryByDSName("tms",finishCoursePercentSql); var finishCoursePercentIter = finishCoursePercentData.iterator(); var finishCoursePercentMap = ""; if(planProcessIter.hasNext()){ planProcessMap = planProcessIter.next(); planProcess = planProcessMap.get("planProcess"); passedTestNumMap = passedTestNumIter.next(); passedTestNum = passedTestNumMap.get("passedTestNum"); finishCoursePercentMap = finishCoursePercentIter.next(); finishCoursePercentNum = finishCoursePercentMap.get("percent") * 100; var searchStr = ""; // 考试合格场数达到计划中规定的合格场数 并且 已完成课程百分比达到计划中的课程百分比则算考试通过 if(Number(passedTestNum) == passedCount && finishCoursePercent <= finishCoursePercentNum){ if(!isNotNull(creditScore)){ creditScore = "0"; } var updateStr = ""; if("2".equals(certificationWay) || "3".equals(certificationWay)){ updateStr +="ITEM_examinee_certificate_status = '1',"; searchStr += "case person.ITEM_examinee_certificate_status when '0' then '' when '1' then '获得1项证书' end "; } if(1 == planProcess){ // 计划总进度达到100% ->1 missionProgressUpdateSql = "UPDATE tms.tlk_learnPlan_test_examinee SET LASTMODIFIED = now(),LASTMODIFIER = '"+employeeId+"',"+ "ITEM_mission_progress = '"+planProcess+"',"+updateStr+ "ITEM_examinee_test_score = concat(ifnull(ITEM_examinee_test_score,''),'"+examScore+"'),"+ "ITEM_examinee_credit_score = '"+creditScore+"',ITEM_examinee_learnPlan_status = case when now()>'"+effectEndDate+"' then '2' else '1' end,"+ "ITEM_learnPlan_finish_time = now() where ITEM_learnplan_id = '"+planId+"' and ITEM_examinee_id = '"+employeeId+"' and item_isDelete='0'"; }else if(1 > planProcess){ // 计划总进度没达到100% ->1 missionProgressUpdateSql = "UPDATE tms.tlk_learnPlan_test_examinee SET LASTMODIFIED = now(),LASTMODIFIER = '"+employeeId+"',"+ "ITEM_mission_progress = '"+planProcess+"',"+updateStr+ "ITEM_examinee_test_score = concat(ifnull(ITEM_examinee_test_score,''),'"+examScore+"',';'),"+ "ITEM_examinee_credit_score = '"+creditScore+"',ITEM_examinee_learnPlan_status = case when now()>'"+effectEndDate+"' then '2' else '1' end,"+ "ITEM_learnPlan_finish_time = now() where ITEM_learnplan_id = '"+planId+"' and ITEM_examinee_id = '"+employeeId+"' and item_isDelete='0'"; } // 更新职员所属计划任务的进度 updateByDSName("tms",missionProgressUpdateSql); // 插入学分成员明细 1 var ruleId = ""; var ruleSql = "select id from tms.tlk_creditRules where item_isDelete = '0' and item_rule_name ='学习计划'"; var creditRulelId = queryByDSName("tms",ruleSql).iterator().next().get("id"); var process = getDocumentProcess(); var formService = getFormProcess(); var subform = formService.doView("__84a1z2MaoRytX5nWz86"); var doc = process.doNew(subform,getWebUser(),createParamsTable()); doc.addStringItem("credit_rule_id",creditRulelId); doc.addStringItem("credit_score",creditScore); ruleId = doc.getId(); process.doCreate(doc); // 插入学分成员明细 2 var subform = formService.doView("__6HDqpRKrC0KPrhy2Rgo"); var doc = process.doNew(subform,getWebUser(),createParamsTable()); doc.addStringItem("credit_detail_id",ruleId); doc.addStringItem("student_id",employeeId); var sql = "SELECT "+ "b.`name` studentName,"+ "c.`name` departName "+ "FROM obpm2.tenant_employees a "+ "LEFT JOIN obpm2.tenant_users b ON a.tenant_user_id = b.id "+ "LEFT JOIN obpm2.tenant_departments c ON a.department_id = c.id "+ "WHERE a.id = '"+employeeId+"'"; var data = queryByDSName("tms",sql); var iter = data.iterator(); var employeeName = ""; if(iter.hasNext()){ map = iter.next(); doc.addStringItem("student_name",map.get("studentName")); doc.addStringItem("student_department",map.get("departName")); employeeName = map.get("studentName"); } doc.addStringItem("score_source_id",planId); process.doCreate(doc); // 生成证书 makeCertification(employeeId,employeeName,certificationId); searchSql = "SELECT "+ "'"+examScore+"' ITEM_examinee_exam_score,"+ "person.ITEM_examinee_credit_score,"+ searchStr +" certification,"+ "process.ITEM_examinee_test_record ITEM_examinee_exam_record "+ "FROM tms.tlk_learnPlan_mission_process process "+ "LEFT JOIN tms.tlk_learnPlanMission mission ON process.ITEM_mission_id = mission.id "+ "LEFT JOIN tms.tlk_learnPlan_test_examinee person ON (person.ITEM_examinee_id = process.ITEM_examinee_id and person.ITEM_learnplan_id = '"+planId+"' and person.ITEM_ISDELETE = '0') "+ "WHERE process.ITEM_ISDELETE = '0' and process.ITEM_examinee_id = '"+employeeId+"' and mission.ITEM_MISSION_ID = '"+examId+"'"; }else{ searchSql = "SELECT "+ "'"+examScore+"' ITEM_examinee_exam_score,"+ "'' ITEM_examinee_credit_score,"+ "'' certification,"+ "process.ITEM_examinee_test_record ITEM_examinee_exam_record "+ "FROM tms.tlk_learnPlan_mission_process process "+ "LEFT JOIN tms.tlk_learnPlanMission mission ON process.ITEM_mission_id = mission.id "+ "WHERE process.ITEM_ISDELETE = '0' and process.ITEM_examinee_id = '"+employeeId+"' and mission.ITEM_MISSION_ID = '"+examId+"'"; } } }else{ searchSql = "SELECT "+ "'"+examScore+"' ITEM_examinee_exam_score,"+ "'' ITEM_examinee_credit_score,"+ "'' certification,"+ "process.ITEM_examinee_test_record ITEM_examinee_exam_record "+ "FROM tms.tlk_learnPlan_mission_process process "+ "LEFT JOIN tms.tlk_learnPlanMission mission ON process.ITEM_mission_id = mission.id "+ "WHERE process.ITEM_ISDELETE = '0' and process.ITEM_examinee_id = '"+employeeId+"' and mission.ITEM_MISSION_ID = '"+examId+"'"; } } updateSql = missionProgressUpdateSql+planProcess+" "+passedCount+" "+passedTestNum; }else{ // ------ 企业考试交卷 ------ // 1.获取考试的及格分 var passedScore = ""; var creditScore = ""; var certification = ""; var passSql = "SELECT "+ "cast(exam.ITEM_exam_pass_percent*0.01*paper.ITEM_TESTALL as decimal(10,0)) passedScore,"+ "exam.ITEM_exam_credit_reward_score creditScore,"+ "exam.ITEM_exam_pass_certification_id certification "+ "FROM tms.tlk_enterprise_exam_info exam "+ "LEFT JOIN tms.tlk_enterprise_test_paper paper ON exam.ITEM_exam_paper_id = paper.id "+ "WHERE exam.id = '"+examId+"'"; var data = queryByDSName("tms",passSql); var iter = data.iterator(); var map = ""; var updateStr = ""; if(iter.hasNext()){ map = iter.next(); passedScore = map.get("passedScore"); creditScore = map.get("creditScore"); certification = map.get("certification"); // 及格的话状态更新 if(examScore >= passedScore){ updateStr += "ITEM_examinee_pass_status = '1',ITEM_examinee_credit_score = '"+creditScore+"',"; }else{ updateStr += "ITEM_examinee_credit_score = '0',"; } // 考试有证书的话则更新 if(isNotNull(certification) && examScore >= passedScore){ updateStr += "ITEM_examinee_certificate_status = '1',"; } } // 2.更新考生信息 var updateExamineeInfoSql = "UPDATE tms.tlk_enterprise_exam_examinee SET LASTMODIFIED = now(),LASTMODIFIER = '"+employeeId+"',"+ "ITEM_examinee_exam_num = ITEM_examinee_exam_num+1,ITEM_examinee_exam_status = '1',"+ "ITEM_examinee_exam_score = '"+examScore+"',"+updateStr+ "ITEM_examinee_complete_time = now(),ITEM_examinee_exam_record = '"+examRecord+"' "+ "WHERE ITEM_exam_info_id = '"+examId+"' and ITEM_examinee_id = '"+employeeId+"' and ITEM_ISDELETE = '0'"; updateByDSName("tms",updateExamineeInfoSql); // 3.插入学分成员明细 if(examScore >= passedScore){ var ruleId = ""; var ruleSql = "select id from tms.tlk_creditRules where item_isDelete = '0' and item_rule_name ='考试'"; var creditRulelId = queryByDSName("tms",ruleSql).iterator().next().get("id"); var process = getDocumentProcess(); var formService = getFormProcess(); var subform = formService.doView("__84a1z2MaoRytX5nWz86"); var doc = process.doNew(subform,getWebUser(),createParamsTable()); doc.addStringItem("credit_rule_id",creditRulelId); doc.addStringItem("credit_score",creditScore); ruleId = doc.getId(); process.doCreate(doc); var subform = formService.doView("__6HDqpRKrC0KPrhy2Rgo"); var doc = process.doNew(subform,getWebUser(),createParamsTable()); doc.addStringItem("credit_detail_id",ruleId); doc.addStringItem("student_id",employeeId); var sql = "SELECT "+ "b.`name` studentName,"+ "c.`name` departName "+ "FROM obpm2.tenant_employees a "+ "LEFT JOIN obpm2.tenant_users b ON a.tenant_user_id = b.id "+ "LEFT JOIN obpm2.tenant_departments c ON a.department_id = c.id "+ "WHERE a.id = '"+employeeId+"'"; var data = queryByDSName("tms",sql); var iter = data.iterator(); var employeeName = ""; if(iter.hasNext()){ map = iter.next(); doc.addStringItem("student_name",map.get("studentName")); doc.addStringItem("student_department",map.get("departName")); employeeName = map.get("studentName"); } doc.addStringItem("score_source_id",examId); process.doCreate(doc); // 生成证书 makeCertification(employeeId,employeeName,certification); } searchSql = "SELECT "+ "ITEM_examinee_exam_score,"+ "ITEM_examinee_credit_score,"+ "case ITEM_examinee_certificate_status when '0' then '' when '1' then '获得1项证书' end certification,"+ "ITEM_examinee_exam_record "+ "FROM tms.tlk_enterprise_exam_examinee "+ "WHERE DOMAINID = '"+domainid+"' and ITEM_examinee_id = '"+employeeId+"' and ITEM_exam_info_id = '"+examId+"' and ITEM_ISDELETE = '0'"; } var data = queryByDSName("tms",searchSql); var iter = data.iterator(); if(iter.hasNext()){ result.put("msg","success"); result.put("code","1"); result.put("data",data); }else{ result.put("msg","我的成绩不存在"); result.put("code","-1"); } return result; })()]]>