智慧农业后台管理
guoshilong
2022-09-28 5f7f52e93266dc8795ad1543b333a64444c22727
src/main/java/org/springblade/modules/sale/mapper/SaleMapper.xml
@@ -23,23 +23,76 @@
        <result column="url" property="url"/>
        <result column="district" property="district"/>
        <result column="land_id" property="landId"/>
        <result column="city_name" property="cityName"/>
        <result column="district_name" property="countyName"/>
    </resultMap>
    <select id="selectSalePage" resultMap="saleResultMap">
<!--        SELECT-->
<!--            sale.*,-->
<!--            user.real_name,-->
<!--            strain.strain_name,-->
<!--            strain.url,-->
<!--            district.name as district,-->
<!--            region.city_name,-->
<!--            region.district_name,-->
<!--        CASE WHEN sale.type = 1 THEN-->
<!--        (-->
<!--        SELECT m.machining_type FROM sys_process_inv inv-->
<!--        LEFT JOIN sys_machining m ON m.id = inv.product_id-->
<!--        WHERE sale.prod_id = inv.id-->
<!--        )-->
<!--        ELSE-->
<!--        (-->
<!--        SELECT strain.strain_name FROM sys_farm_product_stock sfps-->
<!--        LEFT JOIN sys_strain strain ON strain.id = sfps.strain_id-->
<!--        WHERE sale.prod_id = sfps.id-->
<!--        )-->
<!--        END AS proName-->
<!--        FROM-->
<!--            sys_sale sale-->
<!--        LEFT JOIN blade_user user on sale.create_user = user.id-->
<!--        LEFT JOIN sys_strain strain on sale.strain_id = strain.id-->
<!--        LEFT JOIN sys_district district on sale.sale_destination = district.code-->
<!--        LEFT JOIN blade_region region on sale.county = region.district_code-->
<!--        LEFT JOIN sys_land land ON land.id = sale.land_id-->
<!--        WHERE-->
<!--        <if test="sale.strainId !=null and sale.strainId != '' ">-->
<!--            sale.strain_id = #{sale.strainId} AND-->
<!--        </if>-->
<!--        <if test="sale.farmId != null and sale.farmId !=''">-->
<!--           land.farm_id = #{sale.farmId} AND-->
<!--        </if>-->
<!--            sale.is_deleted = 0 ORDER BY sale.create_time DESC-->
        SELECT
            sale.*,
            user.real_name,
            USER.real_name,
            strain.strain_name,
            mach.machining_type AS proName,
            strain.url,
            district.name as district
            district.NAME AS district,
            region.city_name,
            region.district_name
        FROM
            sys_sale sale
        LEFT JOIN blade_user user on sale.create_user = user.id
        LEFT JOIN sys_strain strain on sale.strain_id = strain.id
        LEFT JOIN sys_district district on sale.sale_destination = district.code
            LEFT JOIN blade_user USER ON sale.create_user = USER.id
            LEFT JOIN sys_strain strain ON sale.strain_id = strain.id
            LEFT JOIN sys_district district ON sale.sale_destination = district.CODE
            LEFT JOIN blade_region region ON sale.county = region.district_code
            LEFT JOIN sys_land land ON land.id = sale.land_id
            LEFT JOIN sys_process_inv inv ON inv.id = sale.prod_id
            LEFT JOIN sys_machining mach ON mach.id = inv.product_id
        WHERE
            sale.is_deleted = 0
            1 = 1
        <if test="sale.farmId != null and sale.farmId !=''">
            AND (land.farm_id = #{sale.farmId} OR inv.fps_id = #{sale.farmId})
        </if>
        AND sale.is_deleted = 0
        ORDER BY
        sale.create_time DESC
    </select>
@@ -120,10 +173,19 @@
            sys_sale sale
            LEFT JOIN sys_district dis ON sale.sale_destination = dis.CODE
            LEFT JOIN sys_land sl ON sl.id = sale.land_id
        WHERE
            YEAR ( sale_time ) = YEAR ( NOW( ) )
            LEFT JOIN sys_process_inv inv ON inv.id = sale.prod_id
        WHERE 1 = 1 AND sale.is_deleted = 0
        <if test="startTime != null and startTime != ''">
            and sale_time &gt;= #{startTime}
        </if>
        <if test="endTime != null and endTime != ''">
            and sale_time &lt;= #{endTime}
        </if>
        <if test="startTime == null and endTime == null ">
            and YEAR ( sale_time ) = YEAR ( NOW( ) )
        </if>
        <if test="farmId != null and farmId != ''">
            and sl.farm_id = #{farmId}
            and (sl.farm_id = #{farmId} or inv.fps_id = #{farmId})
        </if>
        GROUP BY
            dis.NAME,