智慧农业后台管理
guoshilong
2022-08-29 2e4f364403e5c4d00010d29ccd022553fd5d0029
秧苗显示
5 files modified
94 ■■■■■ changed files
src/main/java/org/springblade/modules/farmplant/controller/FarmPlantController.java 9 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/farmplant/mapper/FarmPlantMapper.java 1 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/farmplant/mapper/FarmPlantMapper.xml 77 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/farmplant/service/FarmPlantService.java 2 ●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/farmplant/service/impl/FarmPlantServiceImpl.java 5 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/farmplant/controller/FarmPlantController.java
@@ -117,6 +117,15 @@
        return R.data(pages);
    }
    /**
     * 首页秧苗产品总和
     */
    @GetMapping("/strainCountYM")
    public R<IPage<FarmPlantVO>> strainCountYM(FarmPlantVO farmPlant, Query query) {
        IPage<FarmPlantVO> pages = farmplantService.selectFarmPlantPageCountYM(Condition.getPage(query), farmPlant);
        return R.data(pages);
    }
    /**
src/main/java/org/springblade/modules/farmplant/mapper/FarmPlantMapper.java
@@ -28,6 +28,7 @@
     */
    List<FarmPlantVO> selectFarmPlantPage(@Param("page") IPage page, @Param("farmPlant") FarmPlantVO farm);
    IPage<FarmPlantVO> selectFarmPlantPageCount(IPage<Object> page, FarmPlantVO farmPlant);
    IPage<FarmPlantVO> selectFarmPlantPageCountYM(IPage<Object> page, FarmPlantVO farmPlant);
    List<FarmPlantVO> getFarmPlantStatisticsCountz(@Param("page") IPage page, @Param("farmPlant") FarmPlantVO farm);
    /**
src/main/java/org/springblade/modules/farmplant/mapper/FarmPlantMapper.xml
@@ -75,8 +75,81 @@
    </select>
    <select id="selectFarmPlantPageCount" resultType="org.springblade.modules.farmplant.vo.FarmPlantVO">
        SELECT b.strain_id,b.strainName,SUM(b.area) AS area,b.url,b.tenant_id,b.dept_id FROM
        (
        SELECT
            a.strain_id,a.strainName,SUM(TRUNCATE(a.land_area,3)) area,a.url,a.tenant_id,a.dept_id
            a.strain_id,a.strainName,SUM(TRUNCATE(a.land_area,3)) area,a.url,a.tenant_id,a.dept_id,a.planting_way
        FROM
            (
                SELECT
                sfp.*,
                ss.strain_name AS strainName,
                ss.url,
                sl.land_name AS landName,
                land_unit AS landUnit,
                ( CASE WHEN land_unit = 2 THEN FORMAT(sl.land_area * 0.0015,3) WHEN land_unit = 1 THEN sl.land_area * 0.1 ELSE
                sl.land_area END ) land_area
                FROM
                sys_farm_plant sfp
                LEFT JOIN sys_strain ss ON ss.id = sfp.strain_id
                LEFT JOIN sys_land sl ON sl.id = sfp.land_id
                WHERE
                1 = 1
                <if test="farmPlant.plant!=null and farmPlant.plant!=''">
                    and sfp.plant = #{farmPlant.plant}
                </if>
                <if test="farmPlant.year!=null and farmPlant.year!=''">
                    and sfp.create_time like concat('%',#{farmPlant.year},'%')
                </if>
                <if test="farmPlant.landId!=null and farmPlant.landId!=''">
                    and sfp.land_id = #{farmPlant.landId}
                </if>
                <if test="farmPlant.strainId!=null and farmPlant.strainId!=''">
                    and sfp.strain_id = #{farmPlant.strainId}
                </if>
                <if test="farmPlant.plantingWay!=null and farmPlant.plantingWay!=''">
                    and sfp.planting_way = #{farmPlant.plantingWay}
                </if>
                <if test="farmPlant.jobWay!=null and farmPlant.jobWay!=''">
                    and sfp.job_way = #{farmPlant.jobWay}
                </if>
                <if test="farmPlant.status!=null and farmPlant.status!=''">
                    and sfp.status = #{farmPlant.status}
                </if>
                <if test="farmPlant.strainName!=null and farmPlant.strainName!=''">
                    and ss.strain_name like concat('%',#{farmPlant.strainName},'%')
                </if>
                <if test="farmPlant.varieties!=null and farmPlant.varieties!=''">
                    and sfp.varieties like concat('%',#{farmPlant.varieties},'%')
                </if>
                <if test="farmPlant.startTime!=null and farmPlant.startTime!=''">
                    and sfp.transplan_time &gt;= #{farmPlant.startTime}
                </if>
                <if test="farmPlant.endTime!=null and farmPlant.endTime!=''">
                    and sfp.transplan_time &lt;= #{farmPlant.endTime}
                </if>
                <if test="farmPlant.deptId!=null and farmPlant.deptId!=''">
                    and sfp.dept_id = #{farmPlant.deptId}
                </if>
                <if test="farmPlant.tenantId!=null and farmPlant.tenantId!=''">
                    and sfp.tenant_id = #{farmPlant.tenantId}
                </if>
                <if test="farmPlant.farmId!=null and farmPlant.farmId!=''">
                    and sl.farm_id = #{farmPlant.farmId}
                </if>ORDER BY
                sfp.id
                DESC
            ) a
            GROUP BY
            a.strain_id,a.dept_id,a.planting_way HAVING planting_way !=2
        ) b
        GROUP BY
        b.strain_id,b.dept_id
    </select>
    <select id="selectFarmPlantPageCountYM" resultType="org.springblade.modules.farmplant.vo.FarmPlantVO">
        SELECT
        a.strain_id,a.strainName,SUM(TRUNCATE(a.land_area,3)) area,a.url,a.tenant_id,a.dept_id,a.planting_way
        FROM
            (
                SELECT
@@ -138,7 +211,7 @@
                    sfp.id DESC
            ) a
        GROUP BY
            a.strain_id,a.dept_id
        a.strain_id,a.dept_id,a.planting_way HAVING planting_way !=0 AND planting_way !=1
    </select>
    <!--自定义查询农场养殖记录分页数据-->
src/main/java/org/springblade/modules/farmplant/service/FarmPlantService.java
@@ -27,6 +27,7 @@
     */
    IPage<FarmPlantVO> selectFarmPlantPage(IPage<FarmPlantVO> page, FarmPlantVO farm);
    IPage<FarmPlantVO> selectFarmPlantPageCount(IPage<Object> page, FarmPlantVO farmPlant);
    IPage<FarmPlantVO> selectFarmPlantPageCountYM(IPage<Object> page, FarmPlantVO farmPlant);
    IPage<FarmPlantVO> getFarmPlantStatisticsCountz(IPage<FarmPlantVO> page, FarmPlantVO farm);
    /**
@@ -67,6 +68,5 @@
     * @return
     */
    List<FarmPlantVO> getFarmPlantList(FarmPlantVO farmPlant);
}
src/main/java/org/springblade/modules/farmplant/service/impl/FarmPlantServiceImpl.java
@@ -57,6 +57,11 @@
    }
    @Override
    public IPage<FarmPlantVO> selectFarmPlantPageCountYM(IPage<Object> page, FarmPlantVO farmPlant) {
        return baseMapper.selectFarmPlantPageCountYM(page, farmPlant);
    }
    @Override
    public IPage<FarmPlantVO> getFarmPlantStatisticsCountz(IPage<FarmPlantVO> page, FarmPlantVO farm) {
        List<FarmPlantVO> farmPlantVOS = baseMapper.getFarmPlantStatisticsCountz(page, farm);
//        //遍历