Browse Source

20210616

pt
zy_Java 4 years ago
parent
commit
1949785417
  1. 30
      mt/src/main/java/com/ccsens/mt/api/ExcelController.java
  2. 10
      mt/src/main/java/com/ccsens/mt/bean/vo/CompeteExcelVo.java
  3. 8
      mt/src/main/java/com/ccsens/mt/persist/dao/CompeteCompanyDao.java
  4. 6
      mt/src/main/java/com/ccsens/mt/service/ExcelService.java
  5. 3
      mt/src/main/java/com/ccsens/mt/service/IExcelService.java
  6. 14
      mt/src/main/java/com/ccsens/mt/service/IImportService.java
  7. 81
      mt/src/main/java/com/ccsens/mt/service/ImportService.java
  8. 1
      mt/src/main/resources/mapper_dao/CompeteCompanyDao.xml
  9. 9
      recovery/src/main/java/com/ccsens/recovery/service/PatientService.java
  10. 4
      tall/src/main/resources/application.yml

30
mt/src/main/java/com/ccsens/mt/api/ExcelController.java

@ -2,12 +2,18 @@ package com.ccsens.mt.api;
import com.ccsens.cloudutil.annotation.MustLogin;
import com.ccsens.cloudutil.bean.tall.vo.ProjectVo;
import com.ccsens.mt.bean.dto.CompeteDto;
import com.ccsens.mt.bean.dto.ProvinceCompeteDto;
import com.ccsens.mt.bean.dto.ScoreDto;
import com.ccsens.mt.bean.vo.CompeteExcelVo;
import com.ccsens.mt.bean.vo.TableVo;
import com.ccsens.mt.service.IExcelService;
import com.ccsens.mt.service.IImportService;
import com.ccsens.util.JsonResponse;
import com.ccsens.util.NotSupportedFileTypeException;
import com.ccsens.util.UploadFileUtil_Servlet3;
import com.ccsens.util.WebConstant;
import com.ccsens.util.bean.dto.QueryDto;
import com.github.pagehelper.PageInfo;
import io.swagger.annotations.Api;
@ -15,12 +21,11 @@ import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.servlet.http.Part;
import java.io.File;
import java.io.IOException;
import java.util.List;
@ -34,6 +39,9 @@ import java.util.List;
public class ExcelController {
@Resource
private IExcelService excelService;
@Resource
private IImportService importService;
@MustLogin
@ApiOperation(value = "比赛前八名(导出)", notes = "whj")
@ -159,4 +167,18 @@ public class ExcelController {
String path = excelService.countExpTable(params.getParam());
return JsonResponse.newInstance().ok(path);
}
@ApiOperation(value = "导入总决赛名单表", notes = "各个分赛场选出前三名,统计后导入系统生成总决赛名单")
@RequestMapping(value = "/importFinal", method = RequestMethod.POST, produces = {"application/json;charset=UTF-8"})
public JsonResponse<List<CompeteExcelVo.ErrorPlayer>> importFinal(@RequestParam(required = true) Part file) throws Exception {
//1.上传文件
String allowedExts = "xls,xlsx";
String dir = WebConstant.UPLOAD_PROJECT_WBS + File.separator;
String path = UploadFileUtil_Servlet3.uploadFile(file, allowedExts, dir);
log.info(dir+""+path);
//导入数据库
log.info("导入总决赛名单表");
List<CompeteExcelVo.ErrorPlayer> errorPlayers = importService.importFinal(dir+""+path);
return JsonResponse.newInstance().ok(errorPlayers);
}
}

10
mt/src/main/java/com/ccsens/mt/bean/vo/CompeteExcelVo.java

@ -92,4 +92,14 @@ public class CompeteExcelVo {
private List<TeamOrderPlayer> projectList;
}
@Data
@ApiModel("导入总决赛表异常")
public static class ErrorPlayer{
@ApiModelProperty("sheet名")
private String sheetName;
@ApiModelProperty("行")
private int rowNum;
@ApiModelProperty("异常原因")
private String remark;
}
}

8
mt/src/main/java/com/ccsens/mt/persist/dao/CompeteCompanyDao.java

@ -162,4 +162,12 @@ public interface CompeteCompanyDao extends CompeteCompanyMapper {
List<TableVo.CompeteOverview> selectCompeteJoinCountList(@Param("competeTimeId")Long competeTimeId);
/**
* 根据单位名和类型查找参赛单位信息筛选出有用的一条
* @param companyCell
* @param playerName
* @param projectCell
* @return
*/
List<CompeteCompany> getCompanyByNameAndType(String companyCell, String playerName, String projectCell,int type);
}

6
mt/src/main/java/com/ccsens/mt/service/ExcelService.java

@ -30,10 +30,8 @@ import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import javax.servlet.http.Part;
import java.io.*;
import java.text.SimpleDateFormat;
import java.util.ArrayList;

3
mt/src/main/java/com/ccsens/mt/service/IExcelService.java

@ -3,10 +3,12 @@ package com.ccsens.mt.service;
import com.ccsens.mt.bean.dto.ProvinceCompeteDto;
import com.ccsens.mt.bean.dto.ScoreDto;
import com.ccsens.mt.bean.dto.CompeteDto;
import com.ccsens.mt.bean.vo.CompeteExcelVo;
import com.ccsens.mt.bean.vo.TableVo;
import com.ccsens.util.bean.dto.QueryDto;
import com.github.pagehelper.PageInfo;
import javax.servlet.http.Part;
import java.io.IOException;
import java.util.List;
@ -106,4 +108,5 @@ public interface IExcelService {
String countExpTable(ScoreDto.ShowResultNoPage param);
}

14
mt/src/main/java/com/ccsens/mt/service/IImportService.java

@ -0,0 +1,14 @@
package com.ccsens.mt.service;
import com.ccsens.mt.bean.vo.CompeteExcelVo;
import java.util.List;
public interface IImportService {
/**
* 导入总决赛人员表
* @param path 总决赛表
* @return 返回失败的信息
*/
List<CompeteExcelVo.ErrorPlayer> importFinal(String path) throws Exception;
}

81
mt/src/main/java/com/ccsens/mt/service/ImportService.java

@ -0,0 +1,81 @@
package com.ccsens.mt.service;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import com.ccsens.mt.bean.po.CompeteCompany;
import com.ccsens.mt.bean.vo.CompeteExcelVo;
import com.ccsens.mt.persist.dao.CompeteCompanyDao;
import com.ccsens.util.ExcelUtil;
import com.ccsens.util.StringUtil;
import lombok.extern.slf4j.Slf4j;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.io.FileInputStream;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;
/**
* @author
*/
@Slf4j
@Service
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
public class ImportService implements IImportService{
@Resource
private CompeteCompanyDao competeCompanyDao;
@Override
public List<CompeteExcelVo.ErrorPlayer> importFinal(String path) throws Exception{
List<CompeteExcelVo.ErrorPlayer> errorPlayers = new ArrayList<>();
//获取excel表格
InputStream is = new FileInputStream(path);
XSSFWorkbook wb = new XSSFWorkbook(is);
//获取每个sheet信息
for (int i = 0; i < wb.getNumberOfSheets(); i++) {
int type = 7;
XSSFSheet sheet = wb.getSheetAt(i);
if(ObjectUtil.isNotNull(sheet)) {
String sheetName = sheet.getSheetName();
if (StrUtil.isNotBlank(sheetName)) {
if ("运城站入围名单".equals(sheetName)) {
type = 5;
} else if ("临汾站入围名单".equals(sheetName)) {
type = 4;
} else if ("太原站入围名单".equals(sheetName)) {
type = 6;
}
}
//读取sheet内的信息
readSheet(sheet,type,errorPlayers);
}
}
return errorPlayers;
}
private void readSheet(XSSFSheet sheet, int type, List<CompeteExcelVo.ErrorPlayer> errorPlayers) {
for (int i = 1; i < sheet.getLastRowNum(); i++) {
//参赛单位
String companyCell = StringUtil.replaceStrSpace(ExcelUtil.getCellValue(sheet.getRow(i).getCell(0)));
//参赛项目
String projectCell = StringUtil.replaceStrSpace(ExcelUtil.getCellValue(sheet.getRow(i).getCell(0)));
//组别
String groupCell = StringUtil.replaceStrSpace(ExcelUtil.getCellValue(sheet.getRow(i).getCell(0)));
//选手姓名
String playerCell = StringUtil.replaceStrSpace(ExcelUtil.getCellValue(sheet.getRow(i).getCell(0)));
String[] playerNames = new String[]{playerCell};
if(StrUtil.isNotBlank(playerCell)){
playerNames = playerCell.split("、");
}
//查找参赛单位
List<CompeteCompany> company = competeCompanyDao.getCompanyByNameAndType(companyCell,playerNames[0],projectCell,type);
}
}
}

1
mt/src/main/resources/mapper_dao/CompeteCompanyDao.xml

@ -473,4 +473,5 @@
tcc.id
) t2 ON t2.companyId = t3.companyId
</select>
<select id="getCompanyByNameAndType" resultType="com.ccsens.mt.bean.po.CompeteCompany"></select>
</mapper>

9
recovery/src/main/java/com/ccsens/recovery/service/PatientService.java

@ -20,10 +20,8 @@ import com.ccsens.recovery.util.Constant;
import com.ccsens.util.JacksonUtil;
import com.ccsens.util.RedisUtil;
import com.ccsens.util.bean.message.common.*;
import com.ccsens.util.bean.message.server.ChannelStatusMessage;
import com.ccsens.util.config.RabbitMQConfig;
import com.ccsens.util.message.SwitchoverProjectUtil;
import com.fasterxml.jackson.core.JsonProcessingException;
import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.core.AmqpTemplate;
import org.springframework.stereotype.Service;
@ -53,12 +51,8 @@ public class PatientService implements IPatientService{
@Resource
private RecipeRecordMapper recipeRecordMapper;
@Resource
private RecipeProjectMapper recipeProjectMapper;
@Resource
private RecDrillDao recDrillDao;
@Resource
private RecoveryDoctorMapper recoveryDoctorMapper;
@Resource
private PatientRobotMapper patientRobotMapper;
@Resource
private RecoveryCentreMapper recoveryCentreMapper;
@ -78,9 +72,6 @@ public class PatientService implements IPatientService{
@Override
public List<PatientVo.Patient> queryPatientByRecovery(HospitalDto.RecoveryCentreId param, Long userId) {
Long centreId = hospitalService.getCentreByProjectId(param.getProjectId());
// if(ObjectUtil.isNull(centreId)){
//// centreId = hospitalService.getCentreByUserId(userId);
//// }
return patientDao.queryPatientByHospitalId(centreId);
}

4
tall/src/main/resources/application.yml

@ -1,5 +1,5 @@
spring:
profiles:
active: test
include: util-test,common
active: dev
include: util-dev,common

Loading…
Cancel
Save