liyong
12 小时以前 1ca5584d7e3200a9af65a099bd26d3593e2ba702
src/main/resources/mapper/production/ProductionProductOutputMapper.xml
@@ -1,37 +1,61 @@
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.production.mapper.ProductionProductOutputMapper">
    <resultMap id="basicMap" type="com.ruoyi.production.pojo.ProductionProductOutput">
        <id property="id" column="id"/>
        <result property="productMainId" column="product_main_id"/>
        <result property="productModelId" column="product_model_id"/>
        <result property="quantity" column="quantity"/>
        <result property="tenantId" column="tenant_id"/>
        <result property="createTime" column="create_time"/>
    <!-- 通用查询映射结果 -->
    <resultMap id="BaseResultMap" type="com.ruoyi.production.pojo.ProductionProductOutput">
        <id column="id" property="id" />
        <result column="production_product_main_id" property="productionProductMainId" />
        <result column="product_model_id" property="productModelId" />
        <result column="quantity" property="quantity" />
        <result column="scrap_qty" property="scrapQty" />
        <result column="update_time" property="updateTime" />
        <result column="create_user" property="createUser" />
        <result column="create_time" property="createTime" />
        <result column="update_user" property="updateUser" />
    </resultMap>
    <select id="listPageProductionProductOutputDto" resultType="com.ruoyi.production.dto.ProductionProductOutputDto">
    <select id="listPageProductionProductOutputDto" resultType="com.ruoyi.production.bean.dto.ProductionProductOutputDto">
        select ppo.*,
        pm.model as model,
        ppm.product_no as productNo
        from
        production_product_output ppo
        left join production_product_main ppm on ppm.id = ppo.product_main_id
        left join product_model pm on pm.id = ppo.product_model_id
               ppm.product_no as productNo,
               pm.model
        from production_product_output ppo
                 left join production_product_main ppm on ppo.production_product_main_id = ppm.id
                 left join production_operation_task pot on ppm.production_operation_task_id = pot.id
                 left join production_order po on pot.production_order_id = po.id
                 left join product_model pm on ppo.product_model_id = pm.id
        <where>
            <if test="c.productMainId != null and c.productMainId > 0">
                and ppm.id = #{c.productMainId}
            <if test="c.productNo != null and c.productNo != ''">
                and ppm.product_no like concat('%', #{c.productNo}, '%')
            </if>
            <if test="c.model != null and c.model != ''">
                and pm.model like concat('%', #{c.model}, '%')
            </if>
        </where>
        order by ppo.id
        order by ppo.create_time desc
    </select>
    <delete id="deleteByProductMainIds" parameterType="java.util.List">
        DELETE FROM production_product_output
        WHERE product_main_id IN
        <foreach collection="productMainIds" item="id" open="(" separator="," close=")">
            #{id}
        </foreach>
    </delete>
    <select id="selectOutputStats" resultType="com.ruoyi.production.bean.dto.ProductionProductOutputDto">
        select id,
               production_product_main_id as productionProductMainId,
               product_model_id as productModelId,
               quantity,
               scrap_qty as scrapQty,
               create_time as createTime
        from production_product_output
        where create_time &gt;= #{startDate}
          and create_time &lt;= #{endDate}
    </select>
    <select id="selectDailyOutputStats" resultType="java.util.Map">
        select date(create_time) as statDate,
               sum(ifnull(quantity, 0)) as quantity,
               sum(ifnull(scrap_qty, 0)) as scrapQty
        from production_product_output
        where create_time &gt;= #{startDate}
          and create_time &lt;= #{endDate}
        group by date(create_time)
        order by statDate asc
    </select>
</mapper>