瀏覽代碼

update:乐团学员导入

yonge 3 年之前
父節點
當前提交
dcf6bb05f8

+ 2 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/enums/TemplateTypeEnum.java

@@ -7,7 +7,8 @@ public enum TemplateTypeEnum implements BaseEnum<String, TemplateTypeEnum> {
     ROUTE_ORDER("ROUTE_ORDER","财务管理导入模板"),
     FINANCIAL_EXPENDITURE("FINANCIAL_EXPENDITURE","财务支出导入模板"),
     REDEMPTIONCODE("REDEMPTION_CODE", "兑换码分配模板表"),
-    OA_QUIT_MUSIC_GROUP("OA_QUIT_MUSIC_GROUP", "乐团退费模板");
+    OA_QUIT_MUSIC_GROUP("OA_QUIT_MUSIC_GROUP", "乐团退费模板"),
+    EXTERNAL_STUDENT_IMPORT_MUSIC_GROUP("EXTERNAL_STUDENT_IMPORT_MUSIC_GROUP", "外部学生导入乐团模板");
 
     private String code;
 

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

@@ -18,6 +18,15 @@ import java.util.Map;
 import java.util.Set;
 
 public interface MusicGroupService extends BaseService<String, MusicGroup> {
+	
+	/**
+	 * 将学生导入至乐团中
+	 * @param musicGroupId
+	 * @param excelData
+	 * @return
+	 */
+	boolean importStudentToMusicGroup(String musicGroupId, Map<String, List<Map<String, Object>>> excelData);
+	
     /**
      * 建团申请数据提交
      *

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

@@ -32,6 +32,7 @@ import com.ym.mec.util.collection.MapUtil;
 import com.ym.mec.util.date.DateUtil;
 import com.ym.mec.util.http.HttpUtil;
 import com.ym.mec.util.json.JsonUtil;
+
 import org.apache.commons.collections.CollectionUtils;
 import org.apache.commons.lang3.StringUtils;
 import org.slf4j.Logger;
@@ -203,6 +204,25 @@ public class MusicGroupServiceImpl extends BaseServiceImpl<String, MusicGroup> i
     }
 
     @Override
+	public boolean importStudentToMusicGroup(String musicGroupId, Map<String, List<Map<String, Object>>> excelData) {
+    	
+    	MusicGroup musicGroup = musicGroupDao.get(musicGroupId);
+    	
+    	if(musicGroup == null){
+    		throw new BizException("乐团[{}]信息查询失败", musicGroupId);
+    	}
+    	
+    	if(musicGroup.getStatus() != MusicGroupStatusEnum.PAY){
+    		throw new BizException("只有[缴费中]状态的乐团才能导入数据");
+    	}
+    	
+    	//查询缴费金额是否是0
+    	
+    	
+		return false;
+	}
+
+	@Override
     @Transactional(rollbackFor = Exception.class)
     public String createGroup(SubFeeSettingDto subFeeSettingDto) {
         SysUser sysUser = sysUserFeignService.queryUserInfo();

+ 51 - 23
mec-web/src/main/java/com/ym/mec/web/controller/ImportController.java

@@ -1,40 +1,55 @@
 package com.ym.mec.web.controller;
 
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+
+import java.io.ByteArrayInputStream;
+import java.io.File;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.OutputStream;
+import java.net.HttpURLConnection;
+import java.net.URL;
+import java.util.Date;
+import java.util.List;
+import java.util.Map;
+import java.util.UUID;
+
+import javax.servlet.http.HttpServletResponse;
+
+import org.apache.commons.io.FileUtils;
+import org.apache.commons.lang3.StringUtils;
+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.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.multipart.MultipartFile;
+
 import com.ym.mec.auth.api.client.SysUserFeignService;
 import com.ym.mec.auth.api.entity.SysUser;
 import com.ym.mec.biz.dal.entity.FinancialExpenditure;
 import com.ym.mec.biz.dal.entity.Goods;
-import com.ym.mec.biz.dal.entity.AppRedemptionCode;
 import com.ym.mec.biz.dal.entity.StudentPaymentRouteOrder;
 import com.ym.mec.biz.dal.enums.TemplateTypeEnum;
-import com.ym.mec.biz.service.*;
+import com.ym.mec.biz.service.AppRedemptionCodeService;
+import com.ym.mec.biz.service.FinancialExpenditureService;
+import com.ym.mec.biz.service.GoodsService;
+import com.ym.mec.biz.service.MusicGroupService;
+import com.ym.mec.biz.service.StudentPaymentRouteOrderService;
+import com.ym.mec.biz.service.UploadFileService;
 import com.ym.mec.common.controller.BaseController;
 import com.ym.mec.common.entity.HttpResponseResult;
 import com.ym.mec.common.entity.UploadReturnBean;
 import com.ym.mec.common.exception.BizException;
 import com.ym.mec.util.date.DateUtil;
+import com.ym.mec.util.excel.POIUtil;
 import com.ym.mec.util.upload.UploadUtil;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiParam;
-import org.apache.commons.io.FileUtils;
-import org.apache.commons.lang3.StringUtils;
-import org.apache.tomcat.util.http.fileupload.IOUtils;
-import org.redisson.liveobject.resolver.UUIDGenerator;
-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.*;
-import java.net.HttpURLConnection;
-import java.net.URL;
-import java.text.SimpleDateFormat;
-import java.util.Date;
-import java.util.List;
-import java.util.UUID;
 
 @RequestMapping("import")
 @Api(tags = "数据导入服务")
@@ -53,6 +68,9 @@ public class ImportController extends BaseController {
     private AppRedemptionCodeService appRedemptionCodeService;
     @Autowired
     private UploadFileService uploadFileService;
+    
+    @Autowired
+    private MusicGroupService musicGroupService;
 
 
     @ApiOperation(value = "导入商品")
@@ -94,6 +112,16 @@ public class ImportController extends BaseController {
         return studentPaymentRouteOrderService.importRouteOrder(file);
     }
 
+    @ApiOperation(value = "导入学生至乐团中")
+    @PostMapping(value = "studentToMusicGroup")
+    @PreAuthorize("@pcs.hasPermissions('import/studentToMusicGroup')")
+    public HttpResponseResult<List<StudentPaymentRouteOrder>> importStudentToMusicGroup(String musicGroupId, @RequestParam("file") MultipartFile file) throws Exception {
+    	Map<String, List<Map<String, Object>>> sheetsListMap = POIUtil.importExcel(new ByteArrayInputStream(file.getBytes()), 2, file.getOriginalFilename());
+        boolean result =  musicGroupService.importStudentToMusicGroup(musicGroupId, sheetsListMap);
+        
+        return result ? succeed() : failed();
+    }
+
     @PostMapping(value = "oaUploadFile")
     public Object uploadFile(@ApiParam(value = "上传的文件", required = true) @RequestParam("file") MultipartFile file,Integer processId) throws Exception {
         if (file != null && StringUtils.isNotBlank(file.getOriginalFilename())) {

二進制
mec-web/src/main/resources/excelTemplate/外部学生入团导入模板.xls