package com.qxueyou.scc.exercise.service; import java.io.File; import java.lang.reflect.InvocationTargetException; import java.util.List; import java.util.Map; import com.alibaba.fastjson.JSONArray; import com.qxueyou.scc.base.model.Result; import com.qxueyou.scc.base.model.ResultJson; import com.qxueyou.scc.exercise.model.ExerciseGroup; import com.qxueyou.scc.exercise.model.ExerciseItem; import com.qxueyou.scc.exercise.model.ExerciseItemOption; import com.qxueyou.scc.exercise.model.ExerciseItemStatistics; import com.qxueyou.scc.exercise.model.ExerciseParseResult; /** * Á·Ï°service * @author zhiyong * */ public interface IExerciseService { /** * ÐÂÔöÁ·Ï°×é * @param name Á·Ï°×éÃû³Æ * @param type Á·Ï°×éÀàÐÍ * @param lessonId ¿Î³Ìid * @param chapterId Õ½Úid * @param singleType Á·Ï°ÊÇ·ñÖ»±£´æÕ½ÚÁ·Ï° * @return */ Result insertExerciseGroup(String name, short type,String lessonId, String chapterId); /** * ÐÂÔöÁ·Ï°×é * @param name Á·Ï°×éÃû³Æ * @param type Á·Ï°×éÀàÐÍ * @param lessonId ¿Î³Ìid * @param chapterId Õ½Úid * @param singleType Á·Ï°ÊÇ·ñÖ»±£´æÕ½ÚÁ·Ï° * @param Ä£Ä⿼ÊÔ Ê±¼äÉèÖà * @return */ Result insertExerciseGroup(String groupId,String name, short type,String lessonId, String chapterId,String attribute1,boolean repeatFlag); /**ÐÂÔö»ú¹¹Á·Ï°×é * name Á·Ï°×éÃû³Æ * type Á·Ï°×éÀàÐÍ * collegeCourseId ¿ÆÄ¿id * attribute1 Ä£ÄâÁ·Ï°Ê±¼ä * **/ Result insertOrgExercise(ExerciseGroup group, boolean repeatFlag); Result insertAppointExercise(String groupId [],String orgId [],String classIds[]); /** * ¶ÁÈ¡Á·Ï°×éËùÓÐϰÌâ * @param groupId Á·Ï°×éid * @return */ List readExerciseItems(String groupId); /** * ¶ÁÈ¡Á·Ï°×éËùÓÐϰÌâ,´ø±àºÅ * @param groupId Á·Ï°×éid * @return */ List readExerciseItemsWithNo(String groupId); /** * ²åÈëExerciseItem * @param item * @param lstOptions * @return */ Result insertExerciseItem(String groupId, ExerciseItem item,List lstOptions,String analysis); /** * ÅúÁ¿±£´æÌâÄ¿ * @param groupId * @param items * @return */ public Result saveExerciseItemBatch(String groupId,List items); /** * ¸üÐÂÁ·Ï° * @param item * @param lstOptions * @return */ Result updateExerciseItem(ExerciseItem item, List lstOptions,String analysis) ; /** * ɾ³ýϰÌâ * @param strings ϰÌâid * @return */ Result deleteExerciseItems(String[] exerciceIds,String[] reIds,String groupId); /** * µ¼ÈëϰÌâ * @param groupId Á·Ï°×éid * @param file Îļþ * @return */ Result doImportItems(String groupId, File file); /** * ×é×°ExerciseGroupµÄlist * @param groupId Ö÷¼ü * @return */ List initExerciseGroup(String groupId); /** * ÅúÁ¿É¾³ýExerciseGroup * @param groupId Ö÷¼ü£¬¶à¸öidʱÒÔ","·Ö¸ô * @return */ Result deleteExerciseGroup(String groupId) ; /** * ÅúÁ¿É¾³ýExerciseGroup * @param groupId Ö÷¼ü£¬¶à¸öidʱÒÔ","·Ö¸ô * @param type ¶à¸ötypeʱÒÔ","·Ö¸ô * @return */ Result deleteExerciseGroup(String groupId,String type,String deleteType,Integer delAll, String orgIds[], String classIds[]) ; /** * £ººǫ́ * ²åÈëÆÀ¹ÀÄ£°åʱµ÷Óà * @param name * @param type * @return */ ExerciseGroup insertExerciseGroup(String name,short type) ; /** * ²éѯÁ·Ï°ÁÐ±í£¬»¹Ðè²éѯÁªÏµÏÂÃæÏ°Ìâ¸öÊý * @param hql * @param args * @return */ List queryExerciceGroupList(String hql,List args); /** * Ìí¼ÓÁ·Ï°Í¼Æ¬ * @param imgPath * @param imgObjId * @param imgObjType * @return */ List> doAddExerciseObjImg(String[] imgPath, String imgObjId, int imgObjType); /** * Ìí¼ÓÁ·Ï°Í¼Æ¬ * @param imgPath * @param imgObjId * @param imgObjType * @return */ List> doAddEvaExerciseObjImg(String[] imgPath, String imgObjId, int imgObjType); /** * ɾ³ýÁ·Ï°Í¼Æ¬ * @return */ Result dodelExerciseObjImg(String imgObjId); /** * ɾ³ýÁ·Ï°Í¼Æ¬ Îʾí * @return */ ResultJson dodelEvaExerciseObjImg(String imgObjId); /** * µ¼ÈëϰÌâÄ£¿é£ºÉî¶È½âÎöwordÎĵµ * @param groupId * @param file * @param uuid * @return */ Result doDeepAnalysisDoc(String groupId,String fullPath); /** * µ¼ÈëϰÌâÄ£¿é£º½«½âÎö½á¹û·µ»Øµ½Ç°Ì¨ * @param groupId * @param file * @return */ ExerciseParseResult doParseItems(String groupId, String fullPath , String module ); /** * µ¼ÈëϰÌâÄ£¿é£º УÑéϰÌ⣬½«½âÎö½á¹û·µ»Øµ½Ç°Ì¨ * @param content * @return */ ExerciseParseResult validateExercise(String content); /** * ¸´ÖÆÀúÊ·Á·Ï° * @param fromClassId * @return */ Result executeCopyExercise(String groupId, String subjectId, String subjectName, String chapterId) ; /** * ѧԱµÃ·ÖÏêÇéÁбí * @param groupId * @return */ List> resultList(String groupId); /** * ³õʼ»¯Æ½¾ù³É¼¨ºÍ×î¸ß³É¼¨ * @param groupId * @return */ Map initScore(String groupId); /** * ÌâÄ¿µÃ·ÖÏêÇé * @param groupId * @return */ List itemDetailList(String groupId); /** * ¼ÓÔØÌâĿѡÏîÏêÇé - °à¼¶¡¢»ú¹¹ * @param groupId * @return */ List> loadOptionsList( String exerciseItemId); Result addExerciseGroupExtendTime(String groupId, String exerciseTime,boolean repeatFlag); /** * ÆÀ¼ÛÄ£¿éϰÌâÐÞ¸Ä * * @param item * @param lstOptions * @return */ ResultJson updateExerciseItem4Evaluate(ExerciseItem item, List lstOptions,String analysis); /** * ÆÀ¼ÛÄ£¿éϰÌâÐÂÔö * * @param groupId * @param item * @param lstOptions * @return */ ResultJson insertExerciseItem4Evaluate(String groupId, ExerciseItem item, List lstOptions,String analysis,JSONArray titleImgs); /** * ²é¿´ÎʾíÏêÇé * * @param groupId ÎÊÌâ×éid * @param evaluateTemId Ä£°åid * @return */ List readExerciseItems4Evaluate(String groupId); /** * ²éѯÎʾíÓû§Á·Ï°ÏêÇé * @param recordId * @param evaluateId * @return */ ResultJson queryUserEvaExerciseDetail(String recordId,String evaluateId); /** * ²éѯÎʾíͼƬ * @param imgObjId * @param imgObjType * @return */ List> queryEvaExerciseObjImg(String imgObjId, int imgObjType); /** * ±à¼­Á·Ï°±£´æ */ Result doSaveEditGroup(String groupId, String groupName); /** * ÅÅÐò * * @param ids ÅÅÐòid * @param index ÐòºÅ * @return */ Result doOrder(List ids, List index); /** * ÎʾíÄ£°åÁ·Ï°ÌâÅÅÐò * * @param ids ÅÅÐòid * @param index ÐòºÅ * @return */ Result doitemOrder(List ids, List index,String groupId); /** * ¿½±´Á·Ï° * * @param id * @param subjectId * @param collegeCourseId * @param chapterId * @return * @throws IllegalAccessException * @throws InstantiationException * @throws InvocationTargetException * @throws NoSuchMethodException */ Result doCopyExerciseGroup(String id, String subjectId, String collegeCourseId, String chapterId) throws IllegalAccessException, InstantiationException, InvocationTargetException, NoSuchMethodException; /** * ±£´æÁ·Ï°½Ó¿Ú * * @param group * @return */ public Result saveExerciseGroup(ExerciseGroup group); /** * £¨ºǫ́¹ÜÀíϵͳ£© * ¹ÜÀíԱͬ²½Ï°Ìâµ½°à¼¶ * * @param exerciseItemId * @return */ public Result doSynExercise(String[] exerciseItemIds) throws IllegalAccessException, InvocationTargetException; /** * ¿½±´Á·Ï°Ìâ * * @param items * @param newGroupId * @param oldGroupId * @throws NoSuchMethodException * @throws InvocationTargetException * @throws InstantiationException * @throws IllegalAccessException */ public void doCopyExerciseItem(String newGroupId, String oldGroupId, List items, int type) throws IllegalAccessException, InstantiationException, InvocationTargetException, NoSuchMethodException; /** * Êý¾Ýͬ²½½Ó¿Ú£¬Í¬²½Ï·¢µ½°à¼¶µÄÊý¾Ý * * @param orgId * @param groupId * @return */ public Result doSynExerciseItem(String orgId, String groupId); /** * ÎʾíÆÀ¹À ¸´ÖÆÁ·Ï° * @param groupId * @return */ public String doCopyExerciseByEvaluate(String groupId); }