Sfoglia il codice sorgente

Merge remote-tracking branch 'origin/master'

Joburgess 5 anni fa
parent
commit
7d38456c4b

+ 10 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/TeacherAttendanceDao.java

@@ -4,7 +4,9 @@ import com.ym.mec.biz.dal.dto.Mapper;
 import com.ym.mec.biz.dal.dto.TeacherAbnormalAttendanceInfoDto;
 import com.ym.mec.biz.dal.dto.TeacherPersonalAttendanceDto;
 import com.ym.mec.biz.dal.entity.TeacherAttendance;
+import com.ym.mec.biz.dal.enums.GroupType;
 import com.ym.mec.common.dal.BaseDAO;
+
 import org.apache.ibatis.annotations.Param;
 
 import java.util.Date;
@@ -127,4 +129,12 @@ public interface TeacherAttendanceDao extends BaseDAO<Long, TeacherAttendance> {
      * @return java.util.List<java.util.Map<java.lang.Integer,java.lang.Integer>>
      */
     List<Map<Integer,Integer>> findCourseTimeByCourseSchedules(@Param("courseScheduleIds") List<Integer> courseScheduleIds);
+	
+	/**
+	 * 批量删除
+	 * @param musicGroupId
+	 * @param groupType
+	 * @return
+	 */
+	int deleteByMusicGroupId(@Param("musicGroupId")String musicGroupId, @Param("groupType")GroupType groupType);
 }

+ 11 - 8
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ClassGroupServiceImpl.java

@@ -1280,6 +1280,15 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
 
         //1、更新班级关联老师信息
         List<ClassGroupTeacherMapper> newClassGroupTeacherMapperList = classGroup4MixDto.getClassGroupTeacherMapperList();
+        Integer teacherId = null;
+        for (ClassGroupTeacherMapper groupTeacherMapper : newClassGroupTeacherMapperList) {
+            groupTeacherMapper.setGroupType(classGroup.getGroupType());
+            groupTeacherMapper.setClassGroupId(classGroup.getId());
+            groupTeacherMapper.setMusicGroupId(classGroup4MixDto.getMusicGroupId());
+            if (groupTeacherMapper.getTeacherRole().equals(TeachTypeEnum.BISHOP)) {
+                teacherId = groupTeacherMapper.getUserId();
+            }
+        }
 
         Set<String> newTeacher = newClassGroupTeacherMapperList.stream().map(
                 classGroupTeacherMapper -> classGroupTeacherMapper.getTeacherRole().getCode() + classGroupTeacherMapper.getUserId()
@@ -1295,13 +1304,7 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
             classGroupTeacherMapperService.classGroupTeachersInsert(newClassGroupTeacherMapperList);
         }
 
-        Integer teacherId = null;
-        for (ClassGroupTeacherMapper groupTeacherMapper : newClassGroupTeacherMapperList) {
-            if (groupTeacherMapper.getTeacherRole().equals(TeachTypeEnum.BISHOP)) {
-                teacherId = groupTeacherMapper.getUserId();
-                break;
-            }
-        }
+
 
         //2、获取班级学生
         List<StudentRegistration> studentList = classGroupStudentMapperDao.findClassStudentList(classGroup.getId(), ClassGroupStudentStatusEnum.NORMAL);
@@ -1375,7 +1378,7 @@ public class ClassGroupServiceImpl extends BaseServiceImpl<Integer, ClassGroup>
                 times++;
 
                 for (ClassGroupTeacherMapper classGroupTeacherMapper : newClassGroupTeacherMapperList) {
-                    List<TeacherDefaultMusicGroupSalary> teacherSalaryList = teacherDefaultMusicGroupSalaryService.getTeacherSalaryByUserIdAndType(classGroupTeacherMapper.getUserId(), "SINGLE", musicGroup.getSettlementType());
+                    List<TeacherDefaultMusicGroupSalary> teacherSalaryList = teacherDefaultMusicGroupSalaryService.getTeacherSalaryByUserIdAndType(classGroupTeacherMapper.getUserId(), null, null);
                     BigDecimal salary = new BigDecimal("0");
 
                     Map<CourseSchedule.CourseScheduleType, TeacherDefaultMusicGroupSalary> collect = teacherSalaryList.stream().collect(Collectors.toMap(TeacherDefaultMusicGroupSalary::getCourseScheduleType, teacherDefaultMusicGroupSalary -> teacherDefaultMusicGroupSalary));

+ 34 - 20
mec-biz/src/main/java/com/ym/mec/biz/service/impl/CourseScheduleServiceImpl.java

@@ -547,6 +547,9 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 		List<CourseSchedule> existCourseSchedules = courseScheduleDao
 				.findAllCourseByDateZone(firstCourseSchedule.getStartClassTime(), latestCourseSchedule.getEndClassTime());
 
+		if(existCourseSchedules ==null || existCourseSchedules.size()==0){
+			return null;
+		}
 		//只需要调整课程信息的课程编号列表
 		List<Long> updateCourseScheduleIds = courseSchedules
 				.stream()
@@ -561,12 +564,7 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 		if(existCourseSchedules ==null || existCourseSchedules.size()==0){
 			return null;
 		}
-		//新课程对应的班级编号列表
-		List<Integer> newCourseScheduleClassGroupIds = courseSchedules
-				.stream()
-				.map(CourseSchedule::getClassGroupId)
-				.distinct()
-				.collect(Collectors.toList());
+
 
 		List<Long> existCourseScheduleIds = existCourseSchedules.stream()
 				.map(CourseSchedule::getId)
@@ -579,6 +577,14 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 		}else{
 			allCourseSchedules = courseSchedules;
 		}
+
+		//新课程对应的班级编号列表
+		List<Integer> newCourseScheduleClassGroupIds = allCourseSchedules
+				.stream()
+				.map(CourseSchedule::getClassGroupId)
+				.distinct()
+				.collect(Collectors.toList());
+
 		//所有课程的班级编号
 		List<Integer> classGroupIds = allCourseSchedules
 				.stream()
@@ -621,7 +627,11 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 				boolean isTeacherRepeat = false;
 				boolean isStudentRepeat = false;
 				//检测老师冲突
-				existCourseSchedule.setTeachingTeacherIdList(courseScheduleTeacherMap.get(existCourseSchedule.getId()).getIds());
+				if(courseScheduleTeacherMap.containsKey(existCourseSchedule.getId().intValue())){
+					existCourseSchedule.setTeachingTeacherIdList(courseScheduleTeacherMap.get(existCourseSchedule.getId().intValue()).getIds());
+				}else {
+					existCourseSchedule.setTeachingTeacherIdList(classGroupTeachingTeacherMap.get(existCourseSchedule.getClassGroupId()).getIds());
+				}
 				newCourseSchedule.setTeachingTeacherIdList(classGroupTeachingTeacherMap.get(newCourseSchedule.getClassGroupId()).getIds());
 
 				if(!CollectionUtils.isEmpty(newCourseSchedule.getTeachingTeacherIdList())
@@ -642,19 +652,23 @@ public class CourseScheduleServiceImpl extends BaseServiceImpl<Long, CourseSched
 				//如果班级不同,则需要检测两个班级是否存在重复的学生
 				List<ClassGroupStudentMapper> preClassGroupStudents=classGroupStudentsMap.get(newCourseSchedule.getClassGroupId());
 				List<ClassGroupStudentMapper> backClassGroupStudents=classGroupStudentsMap.get(existCourseSchedule.getClassGroupId());
-				//当前课程所在班级的学生编号列表
-				List<Integer> preClassGroupStudentIds = preClassGroupStudents.stream()
-						.map(ClassGroupStudentMapper::getUserId)
-						.collect(Collectors.toList());
-				//后面一节课程所在班级的学生编号列表
-				List<Integer> backClassGroupStudentIds = backClassGroupStudents.stream()
-						.map(ClassGroupStudentMapper::getUserId)
-						.collect(Collectors.toList());
-				List<Integer> repeatStudentIds = preClassGroupStudentIds.stream()
-						.filter(backClassGroupStudentIds::contains)
-						.collect(Collectors.toList());
-				if(!CollectionUtils.isEmpty(repeatStudentIds)){
-					isStudentRepeat = true;
+
+				List<Integer> repeatStudentIds = new ArrayList<>();
+				if(classGroupStudentsMap.containsKey(newCourseSchedule.getClassGroupId()) && classGroupStudentsMap.containsKey(existCourseSchedule.getClassGroupId())) {
+					//当前课程所在班级的学生编号列表
+					List<Integer> preClassGroupStudentIds = preClassGroupStudents.stream()
+							.map(ClassGroupStudentMapper::getUserId)
+							.collect(Collectors.toList());
+					//后面一节课程所在班级的学生编号列表
+					List<Integer> backClassGroupStudentIds = backClassGroupStudents.stream()
+							.map(ClassGroupStudentMapper::getUserId)
+							.collect(Collectors.toList());
+					repeatStudentIds = preClassGroupStudentIds.stream()
+							.filter(backClassGroupStudentIds::contains)
+							.collect(Collectors.toList());
+					if (!CollectionUtils.isEmpty(repeatStudentIds)) {
+						isStudentRepeat = true;
+					}
 				}
 				if(!isTeacherRepeat && !isStudentRepeat){
 					continue;

+ 5 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/impl/MusicGroupServiceImpl.java

@@ -47,6 +47,7 @@ import com.ym.mec.biz.dal.dao.StudentPaymentOrderDao;
 import com.ym.mec.biz.dal.dao.StudentPaymentOrderDetailDao;
 import com.ym.mec.biz.dal.dao.StudentRegistrationDao;
 import com.ym.mec.biz.dal.dao.SysConfigDao;
+import com.ym.mec.biz.dal.dao.TeacherAttendanceDao;
 import com.ym.mec.biz.dal.dao.TeacherDao;
 import com.ym.mec.biz.dal.dto.BasicUserDto;
 import com.ym.mec.biz.dal.dto.CourseScheduleTeachersDto;
@@ -182,6 +183,9 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
 
     @Autowired
     private CooperationOrganDao cooperationOrganDao;
+    
+    @Autowired
+    private TeacherAttendanceDao teacherAttendanceDao;
 
     @Autowired
     private StudentPaymentOrderService studentPaymentOrderService;
@@ -890,6 +894,7 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
 		courseScheduleTeacherSalaryDao.deleteByMusicGroupId(musicGroupId, GroupType.MUSIC);
         
         //删除考勤
+		teacherAttendanceDao.deleteByMusicGroupId(musicGroupId, GroupType.MUSIC);
 
         // 查询已缴费信息
         studentPaymentOrders = studentPaymentOrderDao.queryByDealStatus(musicGroupId, OrderTypeEnum.APPLY, DealStatusEnum.SUCCESS);

+ 2 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentAttendanceServiceImpl.java

@@ -181,7 +181,8 @@ public class StudentAttendanceServiceImpl extends BaseServiceImpl<Long, StudentA
 		teacherAttendance.setSignInStatus(YesOrNoEnum.YES);
 		teacherAttendance.setSignOutTime(date);
 		teacherAttendance.setSignOutStatus(YesOrNoEnum.YES);
-		if(yesOrNoEnum != YesOrNoEnum.YES&&courseSchedule.getStartClassTime().before(date)){
+		teacherAttendance.setCurrentClassTimes(classTimes + 1);
+		if(yesOrNoEnum != YesOrNoEnum.YES && courseSchedule.getStartClassTime().before(date)){
 			teacherAttendance.setSignInStatus(YesOrNoEnum.NO);
 			teacherAttendance.setSignOutStatus(YesOrNoEnum.NO);
 		}

+ 1 - 2
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentRegistrationServiceImpl.java

@@ -582,8 +582,7 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
                         receivers, null, 0, null, studentRegistration.getParentsName(), studentRegistration.getName(), musicGroup.getName());
             }else {
                 String studentApplyUrl = sysConfigDao.findConfigValue(SysConfigService.STUDENT_APPLY_URL) + musicGroupId;
-                sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.YIMEI, MessageTypeEnum.SMS_MUSIC_GROUP_ADD_STUDENT,
-                        receivers, null, 0, null, studentRegistration.getParentsName(), studentRegistration.getName(), musicGroup.getName(),HttpUtil.getSortUrl(studentApplyUrl));
+                sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.YIMEI, MessageTypeEnum.SMS_MUSIC_GROUP_ADD_STUDENT,receivers, null, 0, null, studentRegistration.getParentsName(), studentRegistration.getName(), musicGroup.getName(),HttpUtil.getSortUrl(studentApplyUrl));
             }
             return userId;
         }

+ 3 - 5
mec-biz/src/main/resources/config/mybatis/ClassGroupMapper.xml

@@ -573,8 +573,8 @@
     <select id="queryMusicGroupCourseSchedule" resultMap="MusicGroupCourseScheduleDto">
         SELECT cs.id_ course_schedule_id_,cs.class_date_,cs.start_class_time_,cs.end_class_time_,cs.class_group_id_,
         cs.type_ course_schedule_type_,cs.status_ course_schedule_status_,cg.name_ course_schedule_name_,
-        IF(ISNULL(ta.sign_in_status_),3,ta.sign_in_status_) sign_in_status_,
-        IF(ISNULL(ta.sign_out_status_),3,ta.sign_out_status_) sign_out_status_
+        IF(ta.sign_in_status_ IS NULL,3,ta.sign_in_status_) sign_in_status_,
+        IF(ta.sign_out_status_ IS NULL,3,ta.sign_out_status_) sign_out_status_
         FROM course_schedule cs
         LEFT JOIN class_group cg ON cg.id_ = cs.class_group_id_
         LEFT JOIN teacher_attendance ta ON ta.course_schedule_id_ = cs.id_
@@ -660,7 +660,6 @@
         <foreach collection="list" item="item" index="index" open="(" close=")" separator=",">
             #{item}
         </foreach>
-        AND current_class_times_ &lt; total_class_times_
     </update>
     <update id="batchUpdateClassGroupCourseTimes" parameterType="map">
         <foreach collection="classGroupCourseTimes.entrySet()" index="key" item="value" open="" close="" separator=";">
@@ -859,8 +858,7 @@
         <result property="portrait" column="head_url_"/>
     </resultMap>
     <select id="queryImUser" resultMap="ImUserModelMap">
-        SELECT su.id_,su.real_name_,
-        IF(su.avatar_ IS NULL OR su.avatar_ = '','https://daya-online.oss-cn-beijing.aliyuncs.com/201910/RgHwgKc.jpg',su.avatar_) head_url_
+        SELECT su.id_,su.real_name_,su.avatar_ head_url_
         FROM sys_user su
         WHERE su.id_ IS NOT NULL
     </select>

+ 3 - 3
mec-biz/src/main/resources/config/mybatis/MusicGroupStudentFeeMapper.xml

@@ -39,10 +39,10 @@
 	</insert>
 
     <insert id="batchInsert" parameterType="com.ym.mec.biz.dal.entity.MusicGroupStudentFee">
-        INSERT INTO music_group_student_fee_ (music_group_id_,user_id_,create_time_,update_time_,next_payment_date_,subject_id_,payment_status_)
+        INSERT INTO music_group_student_fee_ (music_group_id_,user_id_,create_time_,update_time_,next_payment_date_,subject_id_,payment_status_,course_fee_)
 		VALUES
 		<foreach collection="musicGroupStudentFees" item="item" separator=",">
-            (#{item.musicGroupId},#{item.userId},NOW(),NOW(),#{nextPaymentDate},#{item.subjectId},#{paymentStatus})
+            (#{item.musicGroupId},#{item.userId},NOW(),NOW(),#{nextPaymentDate},#{item.subjectId},#{paymentStatus},#{item.courseFee})
         </foreach>
     </insert>
 
@@ -128,7 +128,7 @@
     </update>
 
     <select id="queryWillRenewList" resultMap="MusicGroupStudentFee">
-        SELECT * FROM music_group_student_fee_ WHERE payment_status_ = 'PAID_COMPLETED' and date_add(now(), interval #{days} day) >= next_payment_date_
+        SELECT * FROM music_group_student_fee_ WHERE next_payment_date_ IS NOT NULL AND payment_status_ = 'PAID_COMPLETED' and date_add(now(), interval #{days} day) >= next_payment_date_
     </select>
 
     <select id="countContinuosAbsenteeismStudentNum" resultType="java.util.Map">

+ 4 - 0
mec-biz/src/main/resources/config/mybatis/TeacherAttendanceMapper.xml

@@ -323,4 +323,8 @@
     	update teacher_attendance set sign_out_status_ = 1,sign_out_time_= now()
     	where FIND_IN_SET(course_schedule_id_,#{courseScheduleIdList}) and sign_in_status_ = 1
     </update>
+	
+	<delete id="deleteByMusicGroupId" parameterType="map" >
+		DELETE FROM teacher_attendance WHERE music_group_id_=#{musicGroupId} AND group_type_=#{groupType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler}
+	</delete>
 </mapper>

+ 0 - 8
mec-im/src/main/java/com/ym/controller/UserController.java

@@ -8,8 +8,6 @@ import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.bind.annotation.RestController;
 
-import java.util.List;
-
 /**
  * Created by weiqinxiao on 2019/2/25.
  */
@@ -24,12 +22,6 @@ public class UserController {
     public Object register(@RequestBody UserModel userModel) throws Exception {
         return userService.register(userModel);
     }
-
-    @RequestMapping(value = "/batchRegister", method = RequestMethod.POST)
-    public Object batchRegister(){
-        return userService.batchRegister();
-    }
-
     @RequestMapping(value = "/update", method = RequestMethod.POST)
     public Object update(@RequestBody UserModel userModel) throws Exception {
         return userService.update(userModel);

+ 0 - 17
mec-im/src/main/java/com/ym/service/Impl/UserServiceImpl.java

@@ -1,9 +1,5 @@
 package com.ym.service.Impl;
 
-import com.alibaba.fastjson.JSONObject;
-import com.ym.dao.UserDao;
-import com.ym.mec.biz.dal.dao.ClassGroupDao;
-import com.ym.mec.common.entity.ImUserModel;
 import com.ym.mec.im.IMHelper;
 import com.ym.service.UserService;
 import io.rong.RongCloud;
@@ -26,8 +22,6 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 
-import java.util.List;
-
 /**
  * Created by weiqinxiao on 2019/2/25.
  */
@@ -38,10 +32,6 @@ public class UserServiceImpl implements UserService {
     private String appKey;
     @Value("${cn.rongcloud.im.secret}")
     private String appSecret;
-    @Autowired
-    UserDao userDao;
-    @Autowired
-    private ClassGroupDao classGroupDao;
 
     @Autowired
     IMHelper imHelper;
@@ -155,11 +145,4 @@ public class UserServiceImpl implements UserService {
     public Result muteChatroomsGetList() throws Exception {
         return getMuteChatrooms().getList();
     }
-
-    @Override
-    public Result batchRegister() {
-        List<ImUserModel> userModels = classGroupDao.queryImUser();
-        List<UserModel> userModelList = JSONObject.parseArray(JSONObject.toJSONString(userModels), UserModel.class);
-        return null;
-    }
 }

+ 0 - 3
mec-im/src/main/java/com/ym/service/UserService.java

@@ -1,6 +1,5 @@
 package com.ym.service;
 
-import com.ym.common.ApiException;
 import io.rong.models.Result;
 import io.rong.models.chatroom.ChatroomModel;
 import io.rong.models.group.GroupModel;
@@ -61,6 +60,4 @@ public interface UserService {
     Result muteChatroomsRemove(ChatroomModel chatroomModel) throws Exception;
 
     Result muteChatroomsGetList() throws Exception;
-
-    Result batchRegister();
 }

+ 48 - 0
mec-student/src/main/java/com/ym/mec/student/controller/SysConfigController.java

@@ -0,0 +1,48 @@
+package com.ym.mec.student.controller;
+
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import com.ym.mec.biz.dal.entity.SysConfig;
+import com.ym.mec.biz.service.SysConfigService;
+import com.ym.mec.common.controller.BaseController;
+
+/** 
+ * 系统配置控制层
+ */
+@RestController
+@Api(tags = "系统参数设置")
+@RequestMapping(value = "sysConfig")
+public class SysConfigController extends BaseController {
+
+	@Autowired
+	private SysConfigService sysConfigService;
+
+	@ApiOperation(value = "参数列表")
+	@GetMapping(value = "list")
+	public Object configList(String group) {
+		Map<String,Object> params = new HashMap<String, Object>();
+		params.put("group", group);
+		List<SysConfig> configs = sysConfigService.findAll(params);
+		return succeed(configs);
+	}
+
+	@ApiOperation(value = "查询参数")
+	@GetMapping(value = "queryByParamName")
+	public Object queryByParamName(String paramName) {
+		if(StringUtils.isBlank(paramName)){
+			return failed("参数不能为空");
+		}
+		return succeed(sysConfigService.findByParamName(paramName));
+	}
+}

+ 48 - 0
mec-teacher/src/main/java/com/ym/mec/teacher/controller/SysConfigController.java

@@ -0,0 +1,48 @@
+package com.ym.mec.teacher.controller;
+
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import com.ym.mec.biz.dal.entity.SysConfig;
+import com.ym.mec.biz.service.SysConfigService;
+import com.ym.mec.common.controller.BaseController;
+
+/** 
+ * 系统配置控制层
+ */
+@RestController
+@Api(tags = "系统参数设置")
+@RequestMapping(value = "sysConfig")
+public class SysConfigController extends BaseController {
+
+	@Autowired
+	private SysConfigService sysConfigService;
+
+	@ApiOperation(value = "参数列表")
+	@GetMapping(value = "list")
+	public Object configList(String group) {
+		Map<String,Object> params = new HashMap<String, Object>();
+		params.put("group", group);
+		List<SysConfig> configs = sysConfigService.findAll(params);
+		return succeed(configs);
+	}
+
+	@ApiOperation(value = "查询参数")
+	@GetMapping(value = "queryByParamName")
+	public Object queryByParamName(String paramName) {
+		if(StringUtils.isBlank(paramName)){
+			return failed("参数不能为空");
+		}
+		return succeed(sysConfigService.findByParamName(paramName));
+	}
+}

+ 12 - 7
mec-util/src/main/java/com/ym/mec/util/http/HttpUtil.java

@@ -38,13 +38,18 @@ import com.ym.mec.util.compress.ZipUtil;
 
 public class HttpUtil {
 
-	public static String getSortUrl(String url) throws IOException {
-		Map<String,Object> paramMap = new HashMap<>();
-		paramMap.put("format","json");
-		paramMap.put("url",URLDecoder.decode(url,"UTF-8"));
-		paramMap.put("key","5dc941c5d3c3816ac84898d7@3d0e03b46a30f4fea51f038e5cd411c5");
-		String s = get("http://mrw.so/api.htm", paramMap);
-		return JSONObject.parseObject(s).getString("url");
+	public static String getSortUrl(String url){
+		try {
+			Map<String,Object> paramMap = new HashMap<>();
+			paramMap.put("format","json");
+			paramMap.put("url",URLDecoder.decode(url,"UTF-8"));
+			paramMap.put("key","5dc941c5d3c3816ac84898d7@3d0e03b46a30f4fea51f038e5cd411c5");
+			String s = get("http://mrw.so/api.htm", paramMap);
+			return JSONObject.parseObject(s).getString("url");
+		}catch (Exception e){
+			e.printStackTrace();
+		}
+		return url;
 	}
 
 	/**