Browse Source

excel 导入电话格式转换

zhaoy 6 years ago
parent
commit
3bdbe0ea4a

+ 10 - 10
applications/school/school-server/src/main/java/com/usoftchina/smartschool/school/basic/service/impl/CurriculumServiceImpl.java

@@ -112,18 +112,21 @@ public class CurriculumServiceImpl implements CurriculumService {
     private void convertToId(CurriculumDetailDTO curriculumDetailDTO, SubjectDO subjectDO) {
         if (curriculumDetailDTO.getMon().equals(subjectDO.getSubjectName())){
             curriculumDetailDTO.setMon(subjectDO.getSubjectId().toString());
-        }else if (curriculumDetailDTO.getTues().equals(subjectDO.getSubjectName())){
+        }
+        if (curriculumDetailDTO.getTues().equals(subjectDO.getSubjectName())){
             curriculumDetailDTO.setTues(subjectDO.getSubjectId().toString());
-        }else if (curriculumDetailDTO.getThur().equals(subjectDO.getSubjectName())){
+        }
+        if (curriculumDetailDTO.getThur().equals(subjectDO.getSubjectName())){
             curriculumDetailDTO.setThur(subjectDO.getSubjectId().toString());
-        }else if (curriculumDetailDTO.getWed().equals(subjectDO.getSubjectName())){
+        }
+        if (curriculumDetailDTO.getWed().equals(subjectDO.getSubjectName())){
             curriculumDetailDTO.setWed(subjectDO.getSubjectId().toString());
-        }else if (curriculumDetailDTO.getFri().equals(subjectDO.getSubjectName())){
+        }
+        if (curriculumDetailDTO.getFri().equals(subjectDO.getSubjectName())){
             curriculumDetailDTO.setFri(subjectDO.getSubjectId().toString());
-        }else if (curriculumDetailDTO.getSat().equals(subjectDO.getSubjectName())){
+        }
+        if (curriculumDetailDTO.getSat().equals(subjectDO.getSubjectName())){
             curriculumDetailDTO.setSat(subjectDO.getSubjectId().toString());
-        }else {
-            throw new BizException(BizExceptionCode.NOT_EXISTS_SUBJECT.getCode(), String.format(BizExceptionCode.NOT_EXISTS_SUBJECT.getMessage(), subjectDO.getSubjectName()));
         }
     }
 
@@ -199,7 +202,6 @@ public class CurriculumServiceImpl implements CurriculumService {
     }
 
     @Override
-    @Transactional
     public void saveToFormal(Integer id, boolean update){
         if (null == id || "0".equals(id)) {
             return;
@@ -241,12 +243,10 @@ public class CurriculumServiceImpl implements CurriculumService {
                         //1. 替换课程名称为ID
                         List<SubjectDO> subjectDOList = curriculumMapper.selectSubject(schoolId);
                         Iterator<CurriculumDetailDTO> detailIterator = curriculumDetailDTOList.iterator();
-                        int detno = 1;
                         while (detailIterator.hasNext()){
                             CurriculumDetailDTO curriculumDetailDTO = detailIterator.next();
                             curriculumDetailDTO.setmId(mainId);
                             curriculumDetailDTO.setStatus(1);
-                            curriculumDetailDTO.setLessons(detno++);
                             curriculumDetailDTO.setSchoolId(schoolId);
                             curriculumDetailDTO.setClazzId(clazzId);
                             subjectDOList.forEach(subjectDO -> { convertToId(curriculumDetailDTO, subjectDO); });

+ 1 - 0
applications/school/school-server/src/main/java/com/usoftchina/smartschool/school/basic/service/impl/TeacherServiceImpl.java

@@ -174,6 +174,7 @@ public class TeacherServiceImpl implements TeacherService{
     }
 
     @Override
+    @Transactional
     public void batchDelete(BatchDealBaseDTO baseDTOs) {
         if (null == baseDTOs || null == baseDTOs.getBaseDTOs() ||
                 baseDTOs.getBaseDTOs().size() == 0) {

+ 3 - 2
applications/school/school-server/src/main/java/com/usoftchina/smartschool/school/common/service/impl/ExcelServiceImpl.java

@@ -26,6 +26,7 @@ import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.StringUtils;
 
+import java.math.BigDecimal;
 import java.util.*;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
@@ -366,10 +367,10 @@ public class ExcelServiceImpl implements ExcelService {
                 case Cell.CELL_TYPE_NUMERIC:{
                     //POI在解析时,会将日期格式也解析为NUMERIC(数字类型);可查看API中CellType.java
                     if (!HSSFDateUtil.isCellDateFormatted(cell)) {
-                        cellValue = String.valueOf(cell.getNumericCellValue());
+                        cellValue = String.valueOf(new BigDecimal(cell.getNumericCellValue()));
                         cellValue = RegexpUtils.replaceSpecialCharacterNotcodefield(cellValue);
                         //判断是否为INT类型
-                        if (Double.valueOf(cellValue.toString()).intValue() - Double.valueOf(cellValue.toString()) == 0) {
+                        if (Double.valueOf(cellValue.toString()).intValue() - Double.valueOf(cellValue.toString()) == 0 && cellValue.toString().indexOf(".") > -1) {
                             return cellValue.toString().substring(0, cellValue.toString().indexOf("."));
                         }
                     }else {

+ 5 - 0
applications/school/school-server/src/main/resources/mapper/MessagelogMapper.xml

@@ -145,4 +145,9 @@
     </where>
     order by ml_id DESC
   </select>
+
+  <delete id="deleteDetail" parameterType="java.lang.Integer" >
+    delete from messagelog
+    where ml_id = #{id,jdbcType=INTEGER}
+  </delete>
 </mapper>