taoyuan 1 ヶ月 前
コミット
68115af151

+ 14 - 2
csm-admin/src/main/java/com/csm/huahai/web/controller/CsmController.java

@@ -10,6 +10,7 @@ import com.csm.huahai.web.entity.ScanCodeRecordEntity;
 import com.csm.huahai.web.service.CsmService;
 import com.github.pagehelper.PageHelper;
 import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.HttpStatus;
 import org.springframework.web.bind.annotation.*;
 
 import javax.servlet.http.HttpServletResponse;
@@ -45,8 +46,13 @@ public class CsmController extends BaseController {
 
     @PostMapping("/saveCsm")
     public AjaxResult saveCsm(@RequestBody CsmEntity csmEntity ) {
-        csmService.saveCsm(csmEntity);
-        return AjaxResult.success(csmEntity);
+        int csmNum = csmService.getCsmNum(csmEntity.getBzdzbm());
+        if(csmNum>0){
+            return AjaxResult.error("该场所编码已被占用");
+        }else{
+            csmService.saveCsm(csmEntity);
+            return AjaxResult.success(csmEntity);
+        }
     }
 
     @PostMapping("/saveScanRecord")
@@ -60,6 +66,12 @@ public class CsmController extends BaseController {
         return AjaxResult.success(csmService.getCsmNum(queryCsmNumDto.getBzdzbm()));
     }
 
+    @PostMapping("/getAdressByBzdzbm")
+    public AjaxResult getAdressByBzdzbm(@RequestBody QueryAdressDto queryAdressDto ) {
+        return AjaxResult.success(csmService.getAdressByBzdzbm(queryAdressDto.getBzdzbm()));
+    }
+
+
 
 
 

+ 17 - 0
csm-admin/src/main/java/com/csm/huahai/web/dto/QueryAdressDto.java

@@ -0,0 +1,17 @@
+package com.csm.huahai.web.dto;
+
+import javax.validation.constraints.NotBlank;
+
+public class QueryAdressDto {
+
+    @NotBlank
+    private String bzdzbm;
+
+    public String getBzdzbm() {
+        return bzdzbm;
+    }
+
+    public void setBzdzbm(String bzdzbm) {
+        this.bzdzbm = bzdzbm;
+    }
+}

+ 1 - 0
csm-admin/src/main/java/com/csm/huahai/web/mapper/coremapper/CsddMapper.java

@@ -11,4 +11,5 @@ public interface CsddMapper {
 
     public List<CsddDto> getDdSelect(@Param("name")String name);
 
+    List<CsddDto> getAdressByBzdzbm(@Param("bzdzbm")String bzdzbm);
 }

+ 2 - 0
csm-admin/src/main/java/com/csm/huahai/web/mapper/secondmapper/CsmMapper.java

@@ -1,5 +1,6 @@
 package com.csm.huahai.web.mapper.secondmapper;
 
+import com.csm.huahai.web.dto.CsddDto;
 import com.csm.huahai.web.dto.CsmDto;
 import com.csm.huahai.web.entity.CsmEntity;
 import com.csm.huahai.web.entity.ScanCodeRecordEntity;
@@ -18,4 +19,5 @@ public interface CsmMapper {
     void saveScanRecord(ScanCodeRecordEntity scanCodeRecordEntity);
 
     int getCsmNum(@Param("bzdzbm")String bzdzbm);
+
 }

+ 2 - 0
csm-admin/src/main/java/com/csm/huahai/web/service/CsmService.java

@@ -19,4 +19,6 @@ public interface CsmService {
     void saveScanRecord(ScanCodeRecordEntity scanCodeRecordEntity);
 
     int getCsmNum(String csdm);
+
+    CsddDto getAdressByBzdzbm(String bzdzbm);
 }

+ 11 - 0
csm-admin/src/main/java/com/csm/huahai/web/service/impl/CsmServiceImpl.java

@@ -1,5 +1,6 @@
 package com.csm.huahai.web.service.impl;
 
+import com.csm.huahai.common.utils.StringUtils;
 import com.csm.huahai.common.utils.uuid.IdUtils;
 import com.csm.huahai.web.dto.CsddDto;
 import com.csm.huahai.web.dto.CsmDto;
@@ -50,4 +51,14 @@ public class CsmServiceImpl implements CsmService {
         return csmMapper.getCsmNum(bzdzbm);
     }
 
+    @Override
+    public CsddDto getAdressByBzdzbm(String bzdzbm) {
+        List<CsddDto> list = csddMapper.getAdressByBzdzbm(bzdzbm);
+        if(StringUtils.isNotEmpty(list)){
+            return list.get(0);
+        }else {
+            return null;
+        }
+    }
+
 }

+ 5 - 2
csm-admin/src/main/resources/mapper/coremapper/CsddMapper.xml

@@ -24,8 +24,11 @@
         </if>
     order by update_time desc
     </select>
-
-
+    <select id="getAdressByBzdzbm" resultMap="ddSelectResult">
+        SELECT ID,BZDZ_BM,BZDZ_MC,CSDM,CSMC,LABEL_ID,LABEL_NAME,SJJYR_LXDH,SJJYR_XM from VIEW_TAB_BASE_CSXX
+        WHERE BZDZ_BM = #{bzdzbm}
+        order by update_time desc
+    </select>
 
 
 </mapper>

+ 1 - 0
csm-admin/src/main/resources/mapper/secondmapper/CsmMapper.xml

@@ -37,4 +37,5 @@
         values(#{id,jdbcType=VARCHAR},#{sfzh,jdbcType=VARCHAR},#{userName,jdbcType=VARCHAR},#{mobile,jdbcType=VARCHAR},#{csmId,jdbcType=VARCHAR},#{createTime,jdbcType=TIMESTAMP})
     </insert>
 
+
 </mapper>

+ 41 - 0
csm-common/src/main/java/com/csm/huahai/common/handler/GlobalExceptionHandler.java

@@ -0,0 +1,41 @@
+package com.csm.huahai.common.handler;
+
+import com.csm.huahai.common.core.controller.domain.AjaxResult;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.http.HttpStatus;
+import org.springframework.http.ResponseEntity;
+import org.springframework.validation.FieldError;
+import org.springframework.web.bind.MethodArgumentNotValidException;
+import org.springframework.web.bind.annotation.ControllerAdvice;
+import org.springframework.web.bind.annotation.ExceptionHandler;
+import org.springframework.web.context.request.WebRequest;
+
+import java.util.HashMap;
+import java.util.Map;
+
+@ControllerAdvice
+public class GlobalExceptionHandler {
+
+    private static final Logger logger = LoggerFactory.getLogger(GlobalExceptionHandler.class);
+
+    @ExceptionHandler(MethodArgumentNotValidException.class)
+    public ResponseEntity<?> paramCheckException(MethodArgumentNotValidException ex, WebRequest request) {
+        Map<String, String> errors = new HashMap<>();
+        ex.getBindingResult().getAllErrors().forEach((error) -> {
+            String fieldName = ((FieldError) error).getField();
+            String errorMessage = error.getDefaultMessage();
+            errors.put(fieldName, errorMessage);
+        });
+        String res = String.join(",", errors.values());
+        return new ResponseEntity<>(AjaxResult.error(res), HttpStatus.OK);
+    }
+
+    // 处理所有其他异常
+    @ExceptionHandler(Exception.class)
+    public ResponseEntity<?> globalExceptionHandler(Exception ex, WebRequest request) {
+        logger.error("Unexpected exception occurred: ", ex);
+        return new ResponseEntity<>(AjaxResult.error(ex.getMessage()), HttpStatus.INTERNAL_SERVER_ERROR);
+    }
+
+}