瀏覽代碼

Merge branch 'master' of http://git.dayaedu.com/yonge/mec

zouxuan 5 年之前
父節點
當前提交
7f84b0ceae

+ 17 - 10
mec-biz/src/main/java/com/ym/mec/biz/service/impl/PracticeGroupServiceImpl.java

@@ -3054,15 +3054,19 @@ public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGrou
         CourseSchedule firstCourseWithGroup = courseScheduleDao.findFirstCourseWithGroup(practiceGroup.getId().toString(), GroupType.PRACTICE);
         String firstCourseStartTime = DateUtil.dateToString(firstCourseWithGroup.getStartClassTime(),"yyyy年MM月dd日 HH时mm分");
 
-        Map<Integer, String> userMap = new HashMap<>();
-        userMap.put(practiceGroup.getStudentId(), practiceGroup.getStudentId().toString());
-        sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.PAY_PRACTICE_BUY_SUCCESS,
-                userMap, null, 0, null, "STUDENT", groupStartTime, groupEndTime, teacherName, drillTimesOnWeek, firstCourseStartTime);
-        SysUser student = sysUserFeignService.queryUserById(practiceGroup.getStudentId());
-        Map<Integer, String> userPhoneMap = new HashMap<>();
-        userPhoneMap.put(practiceGroup.getStudentId(), student.getPhone().toString());
-        sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.YIMEI, MessageTypeEnum.PAY_PRACTICE_BUY_SUCCESS,
-                userPhoneMap, null, 0, null, "STUDENT", groupStartTime, groupEndTime, teacherName, drillTimesOnWeek, firstCourseStartTime);
+        try{
+            Map<Integer, String> userMap = new HashMap<>();
+            userMap.put(practiceGroup.getStudentId(), practiceGroup.getStudentId().toString());
+            sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.JIGUANG, MessageTypeEnum.PAY_PRACTICE_BUY_SUCCESS,
+                    userMap, null, 0, null, "STUDENT", groupStartTime, groupEndTime, teacherName, drillTimesOnWeek, firstCourseStartTime);
+            SysUser student = sysUserFeignService.queryUserById(practiceGroup.getStudentId());
+            Map<Integer, String> userPhoneMap = new HashMap<>();
+            userPhoneMap.put(practiceGroup.getStudentId(), student.getPhone().toString());
+            sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.YIMEI, MessageTypeEnum.PAY_PRACTICE_BUY_SUCCESS,
+                    userPhoneMap, null, 0, null, "STUDENT", groupStartTime, groupEndTime, teacherName, drillTimesOnWeek, firstCourseStartTime);
+        }catch (Exception e){
+            e.printStackTrace();
+        }
 
         List<ImGroupMember> imGroupMemberList = new ArrayList<>();
         imGroupMemberList.add(new ImGroupMember(practiceGroup.getUserId().toString()));
@@ -3153,8 +3157,11 @@ public class PracticeGroupServiceImpl extends BaseServiceImpl<Long, PracticeGrou
             throw new BizException("请指定需要重新支付的课程组");
         }
         PracticeGroup practiceGroup = practiceGroupDao.get(practiceGroupId.longValue());
+        if(Objects.isNull(practiceGroup)){
+            throw new BizException("此课程组已过期,请重新购买");
+        }
         if(!practiceGroup.getGroupStatus().equals(GroupStatusEnum.LOCK)){
-            throw new BizException("此课程组不处于支付中");
+            throw new BizException("此课程组订单正在支付中");
         }
         List<StudentPaymentOrder> userGroupOrders = studentPaymentOrderDao.findUserGroupOrders(userId, practiceGroupId.toString(), GroupType.PRACTICE,null);
         Map<DealStatusEnum, List<StudentPaymentOrder>> statusOrderMap = userGroupOrders.stream().collect(Collectors.groupingBy(StudentPaymentOrder::getStatus));

+ 1 - 1
mec-biz/src/main/resources/config/contracts/practice.ftl

@@ -151,7 +151,7 @@
 
         <h2>第十条 其他</h2>
         10.1双方因履行本协议而相互发出或者提供的所有通知、文件、资料,均以本协议中所列明的电话、APP推送消息送达,用户如果变更电话号码的,应当自变更后1日内通知本公司且获得本公司确认,本公司通过电话、APP方式无法联系用户或者本公司认为必要时,本公司也可以通过特快专递至用户住址的方式向用户发出上述任何通知、文件、资料等,并在本公司寄出特快专递后第5日视为送达成功。<br />
-        10.2本协议自用户点击“购买”选项并支付费用完成购买课程之日起生效。协议内容电子协议为准,本公司不再提供纸质协议。<br />
+        10.2本协议自用户点击“购买”选项并支付费用完成购买课程之日起生效。协议内容电子协议为准,本公司不再提供纸质协议。<br />
         10.3用户对本服务或本协议有任何疑问、意见或建议的,可通过以下方式联系本公司,本公司将及时回复和处理用户请求。<br />
         本公司联系方式:027-87718176
 

+ 11 - 1
mec-student/src/main/java/com/ym/mec/student/controller/PracticeGroupController.java

@@ -3,10 +3,12 @@ package com.ym.mec.student.controller;
 import com.ym.mec.auth.api.client.SysUserFeignService;
 import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.biz.dal.dao.ClassGroupDao;
+import com.ym.mec.biz.dal.dao.CourseScheduleEvaluateDao;
 import com.ym.mec.biz.dal.dao.PracticeGroupDao;
 import com.ym.mec.biz.dal.dao.SysConfigDao;
 import com.ym.mec.biz.dal.dto.PracticeGroupBuyDto;
 import com.ym.mec.biz.dal.entity.ClassGroup;
+import com.ym.mec.biz.dal.entity.CourseScheduleEvaluate;
 import com.ym.mec.biz.dal.entity.PracticeGroup;
 import com.ym.mec.biz.dal.enums.GroupType;
 import com.ym.mec.biz.dal.enums.MessageTypeEnum;
@@ -16,6 +18,7 @@ import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.entity.HttpResponseResult;
 import com.ym.mec.common.exception.BizException;
 import com.ym.mec.thirdparty.message.MessageSenderPluginContext;
+import com.ym.mec.util.http.HttpUtil;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -47,6 +50,8 @@ public class PracticeGroupController extends BaseController {
     private ClassGroupDao classGroupDao;
     @Autowired
     private SysConfigDao sysConfigDao;
+    @Autowired
+    private CourseScheduleEvaluateDao courseScheduleEvaluateDao;
 
     @ApiOperation("获取学生的陪练课")
     @GetMapping(value = "/findUserPracticeCourses")
@@ -215,6 +220,11 @@ public class PracticeGroupController extends BaseController {
         PracticeGroup userFreePracticeGroup = practiceGroupDao.getUserFreePracticeGroup(userId);
         ClassGroup classGroup = classGroupDao.findByMusicGroupAndType(userFreePracticeGroup.getId().toString(), GroupType.PRACTICE.getCode());
 
+        CourseScheduleEvaluate courseScheduleEvaluate = courseScheduleEvaluateDao.findByClassGroupId(classGroup.getId());
+        if(Objects.isNull(courseScheduleEvaluate)){
+            return failed("未生成课程报告");
+        }
+
         String pushUrl = baseApiUrl + "/#/reportDetail?classGroupId=" + classGroup.getId();
 
         String smsUrl = baseApiUrl + "/#/transfer?url=http://mstudev.dayaedu.com&hash=reportDetail&classGroupId=" + classGroup.getId();
@@ -232,7 +242,7 @@ public class PracticeGroupController extends BaseController {
             Map<Integer, String> userPhoneMap = new HashMap<>();
             userPhoneMap.put(userId, student.getPhone());
             sysMessageService.batchSendMessage(MessageSenderPluginContext.MessageSender.YIMEI, MessageTypeEnum.PRACTICE_COMPLETED_STUDY_REPORT,
-                    userPhoneMap, null, 0, null, "STUDENT", smsUrl);
+                    userPhoneMap, null, 0, null, "STUDENT", HttpUtil.getSortUrl(smsUrl));
         }
 
         return succeed();

+ 2 - 0
mec-thirdparty/src/main/java/com/ym/mec/thirdparty/message/provider/JiguangPushPlugin.java

@@ -78,6 +78,7 @@ public class JiguangPushPlugin implements MessageSenderPlugin, InitializingBean
 		JSONObject android_extras = new JSONObject();// android额外参数
 		android_extras.put("type", "infomation");
 		android_extras.put("url", url);
+		android_extras.put("memo", url);
 		android.put("extras", android_extras);
 
 		JSONObject ios = new JSONObject();// ios通知内容
@@ -87,6 +88,7 @@ public class JiguangPushPlugin implements MessageSenderPlugin, InitializingBean
 		JSONObject ios_extras = new JSONObject();// ios额外参数
 		ios_extras.put("type", "infomation");
 		ios_extras.put("url", url);
+		ios_extras.put("memo", url);
 		ios.put("extras", ios_extras);
 		notification.put("android", android);
 		notification.put("ios", ios);

+ 18 - 20
mec-util/src/main/java/com/ym/mec/util/http/HttpUtil.java

@@ -1,21 +1,7 @@
 package com.ym.mec.util.http;
 
-import java.io.File;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.InputStream;
-import java.net.URLDecoder;
-import java.nio.charset.Charset;
-import java.security.KeyManagementException;
-import java.security.KeyStoreException;
-import java.security.NoSuchAlgorithmException;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Map.Entry;
-
 import com.alibaba.fastjson.JSONObject;
+import com.ym.mec.util.compress.ZipUtil;
 import org.apache.commons.beanutils.ConvertUtils;
 import org.apache.commons.io.FileUtils;
 import org.apache.commons.io.IOUtils;
@@ -34,12 +20,25 @@ import org.apache.http.impl.client.HttpClients;
 import org.apache.http.message.BasicNameValuePair;
 import org.apache.http.util.EntityUtils;
 
-import com.ym.mec.util.compress.ZipUtil;
+import java.io.File;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.net.URLDecoder;
+import java.nio.charset.Charset;
+import java.security.KeyManagementException;
+import java.security.KeyStoreException;
+import java.security.NoSuchAlgorithmException;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Map.Entry;
 
 public class HttpUtil {
 
 	public static String getSortUrl(String url){
-		/*try {
+		try {
 			Map<String,Object> paramMap = new HashMap<>();
 			paramMap.put("format","json");
 			paramMap.put("url",URLDecoder.decode(url,"UTF-8"));
@@ -47,9 +46,8 @@ public class HttpUtil {
 			String s = get("http://mrw.so/api.htm", paramMap);
 			return JSONObject.parseObject(s).getString("url");
 		}catch (Exception e){
-			e.printStackTrace();
-		}*/
-		return url;
+			return url;
+		}
 	}
 
 	/**