Browse Source

Merge remote-tracking branch 'origin/master'

周箭河 5 years ago
parent
commit
5969999e65

+ 8 - 2
cms/src/main/java/com/ym/mec/cms/controller/NewsController.java

@@ -29,8 +29,8 @@ public class NewsController extends BaseController {
 
 	@ApiOperation("查询资讯详情")
 	@ApiImplicitParam(name = "id", value = "资讯ID编号", required = true, dataType = "Long", paramType = "path")
-	@GetMapping(value = "/query/{id}")
-	public Object query(@PathVariable("id") Long id) {
+	@GetMapping(value = "/query")
+	public Object query(Long id) {
 
 		return succeed(sysNewsInformationService.get(id));
 	}
@@ -50,4 +50,10 @@ public class NewsController extends BaseController {
 		return succeed(sysNewsInformationService.update(newsInfo));
 	}
 
+	@ApiOperation("删除")
+	@PostMapping(value = "/del/{id}", consumes = MediaType.APPLICATION_FORM_URLENCODED_VALUE, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
+	public Object add(@PathVariable("id") Long id) {
+		return succeed(sysNewsInformationService.deleteWithLogical(id));
+	}
+
 }

+ 7 - 0
cms/src/main/java/com/ym/mec/cms/dal/dao/SysNewsInformationDao.java

@@ -13,4 +13,11 @@ public interface SysNewsInformationDao extends BaseDAO<Long, SysNewsInformation>
 	 * @return
 	 */
 	List<SysNewsInformation> queryByType(Integer type);
+
+	/**
+	 * 逻辑删除
+	 * @param id
+	 * @return
+	 */
+	int deleteWithLogical(Long id);
 }

+ 10 - 0
cms/src/main/java/com/ym/mec/cms/dal/entity/SysNewsInformation.java

@@ -45,6 +45,8 @@ public class SysNewsInformation {
 
 	/**  */
 	private java.util.Date updateTime;
+	
+	private Boolean delFlag;
 
 	public String getLinkUrl() {
 		return linkUrl;
@@ -134,6 +136,14 @@ public class SysNewsInformation {
 		return this.updateTime;
 	}
 
+	public Boolean getDelFlag() {
+		return delFlag;
+	}
+
+	public void setDelFlag(Boolean delFlag) {
+		this.delFlag = delFlag;
+	}
+
 	@Override
 	public String toString() {
 		return ToStringBuilder.reflectionToString(this);

+ 7 - 0
cms/src/main/java/com/ym/mec/cms/service/SysNewsInformationService.java

@@ -13,4 +13,11 @@ public interface SysNewsInformationService extends BaseService<Long, SysNewsInfo
 	 * @return
 	 */
 	List<SysNewsInformation> queryByType(Integer type);
+
+	/**
+	 * 逻辑删除
+	 * @param id
+	 * @return
+	 */
+	boolean deleteWithLogical(Long id);
 }

+ 6 - 0
cms/src/main/java/com/ym/mec/cms/service/impl/SysNewsInformationServiceImpl.java

@@ -27,4 +27,10 @@ public class SysNewsInformationServiceImpl extends BaseServiceImpl<Long, SysNews
 		return sysNewsInformationDao.queryByType(type);
 	}
 
+	@Override
+	public boolean deleteWithLogical(Long id) {
+		sysNewsInformationDao.deleteWithLogical(id);
+		return true;
+	}
+
 }

+ 10 - 2
cms/src/main/resources/config/mybatis/SysNewsInformationMapper.xml

@@ -16,6 +16,7 @@
 		<result column="status_" property="status" typeHandler="com.ym.mec.common.dal.CustomEnumTypeHandler" />
 		<result column="create_time_" property="createTime" />
 		<result column="update_time_" property="updateTime" />
+		<result column="del_flag_" property="delFlag" />
 	</resultMap>
 	
 	<sql id="queryCondition">
@@ -47,8 +48,8 @@
 	
 	<!-- 向数据库增加一条记录 -->
 	<insert id="insert" parameterType="com.ym.mec.cms.dal.entity.SysNewsInformation" useGeneratedKeys="true" keyColumn="id" keyProperty="id">
-		INSERT INTO sys_news_information (id_,title_,content_,cover_image_,type_,status_,create_time_,update_time_,link_url_,href_target_,order_)
-		VALUES(#{id},#{title},#{content},#{coverImage},#{type},#{status, typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},now(),now(),#{linkUrl},#{hrefTarget},#{order})
+		INSERT INTO sys_news_information (id_,title_,content_,cover_image_,type_,status_,create_time_,update_time_,link_url_,href_target_,order_,del_flag_)
+		VALUES(#{id},#{title},#{content},#{coverImage},#{type},#{status, typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},now(),now(),#{linkUrl},#{hrefTarget},#{order},#{delFlag})
 	</insert>
 	
 	<!-- 根据主键查询一条记录 -->
@@ -82,6 +83,9 @@
 			<if test="order != null">
 				order_ = #{order},
 			</if>
+			<if test="delFlag != null">
+				del_flag_ = #{delFlag},
+			</if>
 		</set>
 		WHERE id_ = #{id}
 	</update>
@@ -113,4 +117,8 @@
 			</if>
 		</where>
 	</select>
+	
+	<update id="deleteWithLogical">
+		UPDATE sys_news_information del_flag_ = 1,update_time_ = NOW() WHERE id_ = #{id}
+	</update>
 </mapper>

+ 20 - 8
mec-biz/src/main/java/com/ym/mec/biz/service/impl/VipGroupServiceImpl.java

@@ -834,8 +834,6 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 		Long vipGroupId=Long.parseLong(order.getMusicGroupId());
 		Integer userId = order.getUserId();
 		boolean isOk=order.getStatus().equals(DealStatusEnum.SUCCESS);
-
-		VipGroup vipGroup = vipGroupDao.get(vipGroupId);
 		studentPaymentOrderDao.update(order);
 
 		//将学生加入到班级,更新班级报名状态及人数信息
@@ -846,6 +844,8 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 
 		updateVipGroupStudentNumAndStatus(vipGroupId,0,true);
 		SysUserCashAccount sysUserCashAccount = sysUserCashAccountService.get(userId);
+
+		VipGroup vipGroup = vipGroupDao.get(vipGroupId);
 		//插入缴费明细
 		//收入
 		SysUserCashAccountDetail sysUserIncomeCashAccountDetail = new SysUserCashAccountDetail();
@@ -881,9 +881,13 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 		classGroupStudentMapper.setMusicGroupId(vipGroupId.toString());
 		classGroupStudentMapperDao.insert(classGroupStudentMapper);
 
-		//将学员加入vip班级群组
-		ImGroupMember[] imGroupMembers = new ImGroupMember[]{new ImGroupMember(userId.toString())};
-		imFeignService.groupJoin(new ImGroupModel(vipGroupClassGroupMapper.getClassGroupId().toString(), imGroupMembers, null));
+		try {
+			//将学员加入vip班级群组
+			ImGroupMember[] imGroupMembers = new ImGroupMember[]{new ImGroupMember(userId.toString())};
+			imFeignService.groupJoin(new ImGroupModel(vipGroupClassGroupMapper.getClassGroupId().toString(), imGroupMembers, null));
+		} catch (Exception e) {
+			e.printStackTrace();
+		}
 
 		//更新所属分部列表
 		List<Integer> organIds = classGroupDao.findStudentOrganIdsByClassGroup(vipGroupClassGroupMapper.getClassGroupId().longValue());
@@ -893,7 +897,11 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
 		vipGroup.setOrganIdList(organIdsString);
 		vipGroupDao.update(vipGroup);
 
-		contractService.transferVipGroupCoursesContract(userId,vipGroupId);
+		try {
+			contractService.transferVipGroupCoursesContract(userId,vipGroupId);
+		} catch (Exception e) {
+			e.printStackTrace();
+		}
 	}
 
 	@Transactional(rollbackFor = Exception.class)
@@ -1075,15 +1083,21 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
     	if(vipGroup.getStatus()==VipGroupStatusEnum.FINISH||vipGroup.getStatus()==VipGroupStatusEnum.CANCEL){
     		throw new BizException("该课程已结束或者已被停止,无法进行此操作");
 		}
+		List<CourseSchedule> vipGroupCourseSchedules = courseScheduleDao.findVipGroupCourseSchedules(vipGroupId);
+		List<Long> courseScheduleIds = vipGroupCourseSchedules.stream().map(CourseSchedule::getId).collect(Collectors.toList());
     	if(vipGroup.getStatus()==VipGroupStatusEnum.NOT_START){
 			vipGroup.setStatus(VipGroupStatusEnum.CANCEL);
     		vipGroupDao.update(vipGroup);
+			courseScheduleDao.batchDeleteCourseSchedules(courseScheduleIds);
+			courseScheduleTeacherSalaryDao.batchDeleteByCourseScheduleIds(courseScheduleIds);
     		return;
 		}
 		List<Map<Integer, BigDecimal>> maps = vipGroupDao.countSurplusCourseFee(vipGroupId);
     	if(CollectionUtils.isEmpty(maps)||(maps.size()==1&&Objects.isNull(maps.get(0)))){
 			vipGroup.setStatus(VipGroupStatusEnum.CANCEL);
 			vipGroupDao.update(vipGroup);
+			courseScheduleDao.batchDeleteCourseSchedules(courseScheduleIds);
+			courseScheduleTeacherSalaryDao.batchDeleteByCourseScheduleIds(courseScheduleIds);
 			return;
 		}
 		Map<Integer, BigDecimal> studentSurplusClassFees = MapUtil.convertMybatisMap(maps);
@@ -1108,8 +1122,6 @@ public class VipGroupServiceImpl extends BaseServiceImpl<Long, VipGroup> impleme
     	vipGroup.setStopReason(stopReason);
 		vipGroupDao.update(vipGroup);
 
-		List<CourseSchedule> vipGroupCourseSchedules = courseScheduleDao.findVipGroupCourseSchedules(vipGroupId);
-		List<Long> courseScheduleIds = vipGroupCourseSchedules.stream().map(CourseSchedule::getId).collect(Collectors.toList());
 		courseScheduleDao.batchDeleteCourseSchedules(courseScheduleIds);
 		courseScheduleTeacherSalaryDao.batchDeleteByCourseScheduleIds(courseScheduleIds);
 		courseScheduleStudentPaymentDao.deleteByCourseSchedule(courseScheduleIds);