ソースを参照

Merge remote-tracking branch 'origin/master'

Joburgess 5 年 前
コミット
2768f0c598

+ 22 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/MusicGroupDao.java

@@ -260,4 +260,26 @@ public interface MusicGroupDao extends BaseDAO<String, MusicGroup> {
      * @return
      */
     List<MusicGroup> getTeacherMusicGroup(@Param("teacherId") Integer teacherId);
+
+    /**
+     * @describe 获取学员所在乐团名称
+     * @apiNote 时光荏苒,认真工作的时间总是过得很快,而我、享受这一刻!
+     * @author zouxuan
+     * @date 2020/9/7
+     * @time 14:16
+     * @param userId:
+     * @return java.util.List<com.ym.mec.biz.dal.dto.MusicCardDto>
+     */
+    List<MusicCardDto> queryUserMusicInfos(Integer userId);
+
+    /**
+     * @describe 获取分部下乐团名称列表
+     * @apiNote 时光荏苒,认真工作的时间总是过得很快,而我、享受这一刻!
+     * @author zouxuan
+     * @date 2020/9/7
+     * @time 14:31
+     * @param organId:
+     * @return java.util.List<com.ym.mec.biz.dal.dto.MusicCardDto>
+     */
+    List<MusicCardDto> queryOrganMusicInfos(String organId);
 }

+ 11 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/SporadicChargeInfo.java

@@ -57,6 +57,17 @@ public class SporadicChargeInfo {
 
 	private String orderType;
 
+	@ApiModelProperty(value = "所属乐团", required = true)
+	private String musicGroupId;
+
+	public String getMusicGroupId() {
+		return musicGroupId;
+	}
+
+	public void setMusicGroupId(String musicGroupId) {
+		this.musicGroupId = musicGroupId;
+	}
+
 	public Integer getOpenFlag() {
 		return openFlag;
 	}

+ 11 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/MusicGroupService.java

@@ -283,6 +283,17 @@ public interface MusicGroupService extends BaseService<String, MusicGroup> {
 	int pushMessage(String musicGroupId, String classGroupIds) throws IOException;
 
 	/**
+	 * @describe 获取分部乐团列表名称
+	 * @apiNote 时光荏苒,认真工作的时间总是过得很快,而我、享受这一刻!
+	 * @author zouxuan
+	 * @date 2020/9/7
+	 * @time 14:28
+	 * @param :
+	 * @return java.util.List<com.ym.mec.biz.dal.dto.MusicCardDto>
+	 */
+	List<MusicCardDto> queryOrganMusicInfos(String organId);
+
+	/**
 	 * 补全musicGroupStudentFee表数据
 	 * @param musicGroupIds
 	 */

+ 6 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/StudentManageService.java

@@ -46,6 +46,12 @@ public interface StudentManageService {
     List<StudentManageBaseInfoOfMusicGroupDto> findStudentMusicGroupsByUserId(Integer userId);
 
     /**
+     * 获取学生所在乐团名称
+     * @return
+     */
+    List<MusicCardDto> queryUserMusicInfos(Integer userId);
+
+    /**
      * @Author: Joburgess
      * @Date: 2019/9/20
      * 获取学生排课信息

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

@@ -1108,6 +1108,11 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
         return studentMap.size();
     }
 
+    @Override
+    public List<MusicCardDto> queryOrganMusicInfos(String organId) {
+        return musicGroupDao.queryOrganMusicInfos(organId);
+    }
+
 //    @Override
 //    public void musicGroupStudentFeePatch(List<String> musicGroupIds) {
 //        if(musicGroupIds != null && musicGroupIds.size() > 0){
@@ -1133,6 +1138,7 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
         return musicCardDtos;
     }
 
+
     @Override
     public MusicCardDto queryPersonalMusicGroups(Integer userId) {
         SysUser sysUser = sysUserFeignService.queryUserById(userId);

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

@@ -229,6 +229,11 @@ public class StudentManageServiceImpl implements StudentManageService {
     }
 
     @Override
+    public List<MusicCardDto> queryUserMusicInfos(Integer userId) {
+        return musicGroupDao.queryUserMusicInfos(userId);
+    }
+
+    @Override
     public PageInfo findStudentCourseList(StudentManageCourseQueryInfo queryInfo) {
         PageInfo pageInfo = new PageInfo<>(queryInfo.getPage(), queryInfo.getRows());
         Map<String, Object> params = new HashMap<String, Object>();

+ 21 - 0
mec-biz/src/main/resources/config/mybatis/MusicGroupMapper.xml

@@ -576,4 +576,25 @@
         LEFT JOIN music_group mg ON mg.id_ = cs.music_group_id_
         WHERE cs.actual_teacher_id_ = #{teacherId} AND cs.group_type_ = 'MUSIC' GROUP BY mg.id_
     </select>
+    <select id="queryUserMusicInfos" resultMap="queryUserMusicGroupsMap">
+        SELECT mg.name_ music_group_name_,mg.id_ music_group_id_
+        FROM student_registration sr
+        LEFT JOIN music_group mg ON sr.music_group_id_ = mg.id_
+        WHERE sr.user_id_ = #{userId}
+        AND mg.status_ IN ('APPLY','PAY','PREPARE','PROGRESS')
+        AND sr.music_group_status_ != 'QUIT'
+        GROUP BY mg.id_
+        ORDER BY mg.create_time_ DESC
+    </select>
+    <select id="queryOrganMusicInfos" resultMap="queryUserMusicGroupsMap">
+        SELECT
+        mg.name_ music_group_name_,
+        mg.id_ music_group_id_
+        FROM music_group mg
+        WHERE mg.status_ IN ('APPLY','PAY','PREPARE','PROGRESS')
+        <if test="organId != null and organId != ''">
+            AND FIND_IN_SET(mg.organ_id_,#{organId})
+        </if>
+        ORDER BY mg.create_time_ DESC
+    </select>
 </mapper>

+ 6 - 2
mec-biz/src/main/resources/config/mybatis/SporadicChargeInfo.xml

@@ -18,6 +18,7 @@
 		<result column="open_flag_" property="openFlag" />
 		<result column="organ_name_" property="organName" />
 		<result column="user_id_" property="userId" />
+		<result column="music_group_id_" property="musicGroupId" />
 	</resultMap>
 
 	<!-- 根据主键查询一条记录 -->
@@ -34,15 +35,18 @@
 	<insert id="insert" parameterType="com.ym.mec.biz.dal.entity.SporadicChargeInfo"
 		useGeneratedKeys="true" keyColumn="id" keyProperty="id">
 		INSERT INTO sporadic_charge_info
-		(title_,charge_type_,organ_id_,amount_,discount_amount_,detail_,create_time_,update_time_,operator_id_,user_id_)
+		(title_,charge_type_,organ_id_,amount_,discount_amount_,detail_,create_time_,update_time_,operator_id_,user_id_,music_group_id_)
 		VALUES(#{title},#{chargeType,typeHandler=com.ym.mec.common.dal.CustomEnumTypeHandler},
-		#{organId},#{amount},#{discountAmount},#{detail},now(),now(),#{operatorId},#{userId})
+		#{organId},#{amount},#{discountAmount},#{detail},now(),now(),#{operatorId},#{userId},#{musicGroupId})
 	</insert>
 
 	<!-- 根据主键查询一条记录 -->
 	<update id="update" parameterType="com.ym.mec.biz.dal.entity.SporadicChargeInfo">
 		UPDATE sporadic_charge_info
 		<set>
+			<if test="musicGroupId != null">
+				music_group_id_ = #{musicGroupId},
+			</if>
 			<if test="title != null">
 				title_ = #{title},
 			</if>

+ 64 - 0
mec-web/src/main/java/com/ym/mec/web/controller/ImportController.java

@@ -0,0 +1,64 @@
+package com.ym.mec.web.controller;
+
+import com.ym.mec.biz.dal.entity.Goods;
+import com.ym.mec.biz.service.GoodsService;
+import com.ym.mec.common.controller.BaseController;
+import com.ym.mec.common.entity.HttpResponseResult;
+import com.ym.mec.util.date.DateUtil;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.apache.tomcat.util.http.fileupload.IOUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.core.io.ClassPathResource;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
+
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.OutputStream;
+import java.util.Date;
+import java.util.List;
+
+@RequestMapping("import")
+@Api(tags = "数据导入服务")
+@RestController
+public class ImportController extends BaseController {
+
+    @Autowired
+    private GoodsService goodsService;
+
+    @ApiOperation(value = "导入商品")
+    @PostMapping(value = "goods")
+    @PreAuthorize("@pcs.hasPermissions('import/goods')")
+    public HttpResponseResult<List<Goods>> importExamSong(@RequestParam("file") MultipartFile file) throws Exception {
+        return succeed(goodsService.importGoods(file));
+    }
+
+    @ApiOperation(value = "获取商品导入模板")
+    @GetMapping(value = "getGoodsTemplate")
+    @PreAuthorize("@pcs.hasPermissions('import/getGoodsTemplate')")
+    public void getGoodsTemplate(HttpServletResponse response) throws IOException {
+        InputStream inputStream = new ClassPathResource("excelTemplate/goods.xls").getInputStream();
+        OutputStream outputStream = response.getOutputStream();
+        try {
+            response.setContentType("application/octet-stream");
+            response.setHeader("Content-Disposition", "attachment;filename=goods-" + DateUtil.getDate(new Date()) + ".xls");
+            response.flushBuffer();
+            outputStream = response.getOutputStream();
+            IOUtils.copy(inputStream, outputStream);
+            outputStream.flush();
+        } catch (Exception e) {
+            e.printStackTrace();
+        } finally {
+            if (outputStream != null) {
+                try {
+                    outputStream.close();
+                } catch (IOException e) {
+                    e.printStackTrace();
+                }
+            }
+        }
+    }
+}

+ 16 - 0
mec-web/src/main/java/com/ym/mec/web/controller/MusicGroupController.java

@@ -259,4 +259,20 @@ public class MusicGroupController extends BaseController {
 		return succeed();
 	}
 
+	@ApiOperation("获取分部乐团列表名称")
+	@GetMapping(value = "/queryOrganMusicInfos")
+	@PreAuthorize("@pcs.hasPermissions('musicGroup/queryOrganMusicInfos')")
+	public Object queryOrganMusicInfos() {
+		SysUser sysUser = sysUserFeignService.queryUserInfo();
+		if (sysUser == null) {
+			return failed("用户信息获取失败");
+		}
+		String organId = null;
+		if(!sysUser.getIsSuperAdmin()){
+			Employee employee = employeeDao.get(sysUser.getId());
+			organId = employee.getOrganIdList();
+		}
+		return succeed(musicGroupService.queryOrganMusicInfos(organId));
+	}
+
 }

+ 8 - 0
mec-web/src/main/java/com/ym/mec/web/controller/StudentManageController.java

@@ -16,6 +16,7 @@ import org.apache.commons.lang3.StringUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.HttpStatus;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;
@@ -150,6 +151,13 @@ public class StudentManageController extends BaseController {
         return succeed(studentManageService.findStudentMusicGroupsByUserId(userId));
     }
 
+    @ApiOperation("获取学生所在乐团列表名称")
+    @GetMapping(value = "/queryUserMusicInfos")
+    @PreAuthorize("@pcs.hasPermissions('studentManage/queryUserMusicInfos')")
+    public Object queryUserMusicInfos(Integer userId) {
+        return succeed(studentManageService.queryUserMusicInfos(userId));
+    }
+
     @ApiOperation(value = "根据乐团获取排课列表")
     @GetMapping("/findStudentCourses")
     @PreAuthorize("@pcs.hasPermissions('studentManage/findStudentCourses')")