智慧农业后台管理
guoshilong
2022-07-22 879fe6b588b87e4266abf3cfbafba406fd06c34c
全景表添加农场id,一个农场对应一个全景
7 files modified
55 ■■■■ changed files
src/main/java/org/springblade/modules/panorama/controller/PanoramaController.java 10 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/panorama/entity/Panorama.java 2 ●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/panorama/mapper/PanoramaMapper.java 7 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/panorama/mapper/PanoramaMapper.xml 13 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/panorama/service/IPanoramaService.java 6 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/panorama/service/impl/PanoramaServiceImpl.java 12 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/panorama/vo/PanoramaVO.java 5 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/panorama/controller/PanoramaController.java
@@ -89,7 +89,11 @@
    @ApiOperationSupport(order = 4)
    @ApiOperation(value = "新增", notes = "传入panorama")
    public R save(@Valid @RequestBody Panorama panorama) {
        return R.status(panoramaService.save(panorama));
        if(panoramaService.selectOne(panorama.getFarmId())) {
            return R.status(panoramaService.save(panorama));
        }else {
            return R.fail("该农场全景已存在");
        }
    }
    /**
@@ -112,7 +116,7 @@
        return R.status(panoramaService.saveOrUpdate(panorama));
    }
    /**
     * 删除 全景
     */
@@ -123,5 +127,5 @@
        return R.status(panoramaService.deleteLogic(Func.toLongList(ids)));
    }
}
src/main/java/org/springblade/modules/panorama/entity/Panorama.java
@@ -40,6 +40,6 @@
    private String jd;
    private String wd;
    private String addressName;
    private int farmId;
}
src/main/java/org/springblade/modules/panorama/mapper/PanoramaMapper.java
@@ -16,6 +16,7 @@
 */
package org.springblade.modules.panorama.mapper;
import org.apache.ibatis.annotations.Param;
import org.springblade.modules.panorama.entity.Panorama;
import org.springblade.modules.panorama.vo.PanoramaVO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
@@ -39,4 +40,10 @@
     */
    List<PanoramaVO> selectPanoramaPage(IPage page, PanoramaVO panorama);
    /**
     * 判断是否存在相同农场
     * @param farmId
     * @return
     */
    List<Panorama> getFarmList(@Param("farmId") int farmId);
}
src/main/java/org/springblade/modules/panorama/mapper/PanoramaMapper.xml
@@ -3,7 +3,7 @@
<mapper namespace="org.springblade.modules.panorama.mapper.PanoramaMapper">
    <!-- 通用查询映射结果 -->
    <resultMap id="panoramaResultMap" type="org.springblade.modules.panorama.entity.Panorama">
    <resultMap id="panoramaResultMap" type="org.springblade.modules.panorama.vo.PanoramaVO">
        <result column="id" property="id"/>
        <result column="create_user" property="createUser"/>
        <result column="create_dept" property="createDept"/>
@@ -17,11 +17,20 @@
        <result column="jd" property="jd"/>
        <result column="wd" property="wd"/>
        <result column="address_name" property="addressName"/>
        <result column="farm_name" property="farmName"/>
        <result column="farm_id" property="farmId"/>
    </resultMap>
    <select id="selectPanoramaPage" resultMap="panoramaResultMap">
        select * from sys_panorama where is_deleted = 0
        select panorama.*,farm.farm_name
        from sys_panorama panorama
        LEFT JOIN sys_farm farm ON panorama.farm_id = farm.id
        where is_deleted = 0
    </select>
    <select id="getFarmList" resultType="org.springblade.modules.panorama.entity.Panorama">
        select * from sys_panorama where farm_id = #{farmId}
    </select>
</mapper>
src/main/java/org/springblade/modules/panorama/service/IPanoramaService.java
@@ -38,4 +38,10 @@
     */
    IPage<PanoramaVO> selectPanoramaPage(IPage<PanoramaVO> page, PanoramaVO panorama);
    /**
     * 判断是否存在相同农场
     * @param farmId
     * @return
     */
    boolean selectOne(int farmId);
}
src/main/java/org/springblade/modules/panorama/service/impl/PanoramaServiceImpl.java
@@ -24,6 +24,8 @@
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import java.util.List;
/**
 * 全景 服务实现类
 *
@@ -38,4 +40,14 @@
        return page.setRecords(baseMapper.selectPanoramaPage(page, panorama));
    }
    @Override
    public boolean selectOne(int farmId) {
        List<Panorama> list = baseMapper.getFarmList(farmId);
        if (list.size()>0){
            return false;
        }else {
            return true;
        }
    }
}
src/main/java/org/springblade/modules/panorama/vo/PanoramaVO.java
@@ -30,5 +30,8 @@
@EqualsAndHashCode(callSuper = true)
public class PanoramaVO extends Panorama {
    private static final long serialVersionUID = 1L;
    /**
     * 农场名称
     */
    String farmName;
}