Преглед на файлове

Merge remote-tracking branch 'origin/dev' into dev

24282 преди 1 година
родител
ревизия
993a690c2c

+ 24 - 2
hx-area/src/main/java/com/fjhx/area/controller/CustomizeAreaController.java

@@ -1,9 +1,8 @@
 package com.fjhx.area.controller;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.fjhx.area.entity.dto.AreaInfoSelectDto;
-import com.fjhx.area.entity.po.AreaInfo;
 import com.fjhx.area.entity.po.CustomizeArea;
-import com.fjhx.area.service.AreaInfoService;
 import com.fjhx.area.service.CustomizeAreaService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.PostMapping;
@@ -37,4 +36,27 @@ public class CustomizeAreaController {
         return customizeAreaService.getList(dto);
     }
 
+    /**
+     * 国家城市表分页
+     */
+    @PostMapping("/page")
+    public Page<CustomizeArea> page(@RequestBody AreaInfoSelectDto dto) {
+        return customizeAreaService.getPage(dto);
+    }
+
+    @PostMapping("/add")
+    public void add(@RequestBody CustomizeArea dto) {
+        customizeAreaService.add(dto);
+    }
+
+    @PostMapping("/edit")
+    public void edit(@RequestBody CustomizeArea dto) {
+        customizeAreaService.edit(dto);
+    }
+
+    @PostMapping("/delete")
+    public void delete(@RequestBody CustomizeArea dto) {
+        customizeAreaService.delete(dto);
+    }
+
 }

+ 5 - 0
hx-area/src/main/java/com/fjhx/area/mapper/CustomizeAreaMapper.java

@@ -1,7 +1,10 @@
 package com.fjhx.area.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.fjhx.area.entity.po.CustomizeArea;
+import com.ruoyi.common.utils.wrapper.IWrapper;
+import org.apache.ibatis.annotations.Param;
 
 
 /**
@@ -14,4 +17,6 @@ import com.fjhx.area.entity.po.CustomizeArea;
  */
 public interface CustomizeAreaMapper extends BaseMapper<CustomizeArea> {
 
+    Page<CustomizeArea> getPage(@Param("page") Page<CustomizeArea> page, @Param("ew") IWrapper<CustomizeArea> wrapper);
+
 }

+ 8 - 0
hx-area/src/main/java/com/fjhx/area/service/CustomizeAreaService.java

@@ -1,5 +1,6 @@
 package com.fjhx.area.service;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.fjhx.area.entity.dto.AreaInfoSelectDto;
 import com.fjhx.area.entity.po.CustomizeArea;
 import com.ruoyi.common.core.service.BaseService;
@@ -26,4 +27,11 @@ public interface CustomizeAreaService extends BaseService<CustomizeArea> {
 
     List<CustomizeArea> getList(AreaInfoSelectDto dto);
 
+    Page<CustomizeArea> getPage(AreaInfoSelectDto dto);
+
+    void add(CustomizeArea dto);
+
+    void edit(CustomizeArea dto);
+
+    void delete(CustomizeArea dto);
 }

+ 44 - 2
hx-area/src/main/java/com/fjhx/area/service/impl/CustomizeAreaServiceImpl.java

@@ -3,6 +3,7 @@ package com.fjhx.area.service.impl;
 import cn.hutool.core.util.ObjectUtil;
 import cn.hutool.core.util.StrUtil;
 import com.baomidou.dynamic.datasource.annotation.DS;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.fjhx.area.entity.dto.AreaInfoSelectDto;
 import com.fjhx.area.entity.po.CustomizeArea;
@@ -11,6 +12,7 @@ import com.fjhx.area.service.CustomizeAreaService;
 import com.fjhx.area.service.SetCustomizeAreaId;
 import com.fjhx.area.service.SetCustomizeAreaName;
 import com.ruoyi.common.constant.BaseSourceConstant;
+import com.ruoyi.common.exception.ServiceException;
 import com.ruoyi.common.utils.wrapper.IWrapper;
 import com.ruoyi.common.utils.wrapper.SqlField;
 import org.springframework.stereotype.Service;
@@ -87,10 +89,10 @@ public class CustomizeAreaServiceImpl extends ServiceImpl<CustomizeAreaMapper, C
             }
 
             //如果省市id还是为空就赋值-1解决id没被修改问题
-            if (ObjectUtil.isEmpty(item.getCityId())){
+            if (ObjectUtil.isEmpty(item.getCityId())) {
                 item.setCityId(-1L);
             }
-            if (ObjectUtil.isEmpty(item.getProvinceId())){
+            if (ObjectUtil.isEmpty(item.getProvinceId())) {
                 item.setProvinceId(-1L);
             }
 
@@ -167,4 +169,44 @@ public class CustomizeAreaServiceImpl extends ServiceImpl<CustomizeAreaMapper, C
         return list(wrapper);
     }
 
+    @DS(BaseSourceConstant.BASE)
+    @Override
+    public Page<CustomizeArea> getPage(AreaInfoSelectDto dto) {
+        String parentId = ObjectUtil.defaultIfNull(dto.getParentId(), "0");
+        IWrapper<CustomizeArea> wrapper = IWrapper.getWrapper();
+        wrapper.eq(CustomizeArea::getParentId, parentId);
+        wrapper.keyword(dto.getKeyword(),
+                new SqlField(CustomizeArea::getName),
+                new SqlField(CustomizeArea::getChineseName),
+                new SqlField(CustomizeArea::getCode)
+        );
+        return baseMapper.getPage(dto.getPage(), wrapper);
+    }
+
+    @DS(BaseSourceConstant.BASE)
+    @Override
+    public void add(CustomizeArea dto) {
+        if (ObjectUtil.isEmpty(dto.getParentId())) {
+            throw new ServiceException("父级id不能为空");
+        }
+        if (ObjectUtil.isEmpty(dto.getLevelCode())) {
+            throw new ServiceException("层级不能为空");
+        }
+        this.nameDuplication(CustomizeArea::getName, dto.getName(), "名称已存在请检查!");
+        this.save(dto);
+    }
+
+    @DS(BaseSourceConstant.BASE)
+    @Override
+    public void edit(CustomizeArea dto) {
+        this.updateById(dto);
+        this.nameDuplication(CustomizeArea::getName, dto.getName(), dto.getId(), "名称已存在请检查!");
+    }
+
+    @DS(BaseSourceConstant.BASE)
+    @Override
+    public void delete(CustomizeArea dto) {
+        this.removeById(dto);
+    }
+
 }

+ 12 - 0
hx-area/src/main/resources/mapper/area/CustomizeAreaMapper.xml

@@ -2,4 +2,16 @@
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.fjhx.area.mapper.CustomizeAreaMapper">
 
+    <select id="getPage" resultType="com.fjhx.area.entity.po.CustomizeArea">
+        SELECT
+            cz.id,
+            cz.`name`,
+            cz.chinese_name,
+            cz.parent_id,
+            cz.level_code,
+            cz.`code`
+        FROM
+            customize_area cz
+            ${ew.customSqlSegment}
+    </select>
 </mapper>