ReceiptDetailMapper.xml 7.06 KB
<?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.huaheng.receipt.receipt.mapper.ReceiptDetailMapper">
    <resultMap id="BaseResultMap" type="com.huaheng.receipt.api.domain.ReceiptDetail">
        <!--@mbg.generated-->
        <!--@Table receipt_detail-->
        <id column="id" jdbcType="INTEGER" property="id"/>
        <result column="receiptId" jdbcType="INTEGER" property="receiptId"/>
        <result column="receiptCode" jdbcType="VARCHAR" property="receiptCode"/>
        <result column="warehouseCode" jdbcType="VARCHAR" property="warehouseCode"/>
        <result column="companyCode" jdbcType="VARCHAR" property="companyCode"/>
        <result column="materialCode" jdbcType="VARCHAR" property="materialCode"/>
        <result column="materialName" jdbcType="VARCHAR" property="materialName"/>
        <result column="materialSpec" jdbcType="VARCHAR" property="materialSpec"/>
        <result column="materialUnit" jdbcType="VARCHAR" property="materialUnit"/>
        <result column="supplierCode" jdbcType="VARCHAR" property="supplierCode"/>
        <result column="batch" jdbcType="VARCHAR" property="batch"/>
        <result column="lot" jdbcType="VARCHAR" property="lot"/>
        <result column="qcCheck" jdbcType="VARCHAR" property="qcCheck"/>
        <result column="projectNo" jdbcType="VARCHAR" property="projectNo"/>
        <result column="manufactureDate" jdbcType="DATE" property="manufactureDate"/>
        <result column="expirationDate" jdbcType="DATE" property="expirationDate"/>
        <result column="agingDate" jdbcType="DATE" property="agingDate"/>
        <result column="attributeTemplateCode" jdbcType="VARCHAR" property="attributeTemplateCode"/>
        <result column="attribute1" jdbcType="VARCHAR" property="attribute1"/>
        <result column="attribute2" jdbcType="VARCHAR" property="attribute2"/>
        <result column="attribute3" jdbcType="VARCHAR" property="attribute3"/>
        <result column="attribute4" jdbcType="VARCHAR" property="attribute4"/>
        <result column="totalQty" jdbcType="DECIMAL" property="totalQty"/>
        <result column="status" jdbcType="INTEGER" property="status"/>
        <result column="openQty" jdbcType="DECIMAL" property="openQty"/>
        <result column="referCode" jdbcType="VARCHAR" property="referCode"/>
        <result column="referId" jdbcType="INTEGER" property="referId"/>
        <result column="referLineNum" jdbcType="VARCHAR" property="referLineNum"/>
        <result column="locatingRule" jdbcType="VARCHAR" property="locatingRule"/>
        <result column="inventorySts" jdbcType="VARCHAR" property="inventorySts"/>
        <result column="itemListPrice" jdbcType="DECIMAL" property="itemListPrice"/>
        <result column="itemNetPrice" jdbcType="DECIMAL" property="itemNetPrice"/>
        <result column="isVirtualBom" jdbcType="INTEGER" property="isVirtualBom"/>
        <result column="created" jdbcType="TIMESTAMP" property="created"/>
        <result column="createdBy" jdbcType="VARCHAR" property="createdBy"/>
        <result column="lastUpdated" jdbcType="TIMESTAMP" property="lastUpdated"/>
        <result column="lastUpdatedBy" jdbcType="VARCHAR" property="lastUpdatedBy"/>
        <result column="version" jdbcType="INTEGER" property="version"/>
        <result column="userDef1" jdbcType="VARCHAR" property="userDef1"/>
        <result column="userDef2" jdbcType="VARCHAR" property="userDef2"/>
        <result column="userDef3" jdbcType="VARCHAR" property="userDef3"/>
        <result column="userDef4" jdbcType="VARCHAR" property="userDef4"/>
        <result column="userDef5" jdbcType="VARCHAR" property="userDef5"/>
        <result column="userDef6" jdbcType="VARCHAR" property="userDef6"/>
        <result column="userDef7" jdbcType="VARCHAR" property="userDef7"/>
        <result column="userDef8" jdbcType="VARCHAR" property="userDef8"/>
        <result column="processStamp" jdbcType="VARCHAR" property="processStamp"/>
        <result column="deleted" jdbcType="BIT" property="deleted"/>
        <result column="statusFlowCode" jdbcType="VARCHAR" property="statusFlowCode"/>
        <result column="qtyRcvTolerance" jdbcType="DECIMAL" property="qtyRcvTolerance"/>
    </resultMap>
    <sql id="Base_Column_List">
        <!--@mbg.generated-->
        id, receiptId, receiptCode, warehouseCode, companyCode, materialCode, materialName,
        materialSpec, materialUnit, supplierCode, batch, lot, qcCheck, projectNo, manufactureDate,
        expirationDate, agingDate, attributeTemplateCode, attribute1, attribute2, attribute3,
        attribute4, totalQty, `status`, openQty, referCode, referId, referLineNum, locatingRule,
        inventorySts, itemListPrice, itemNetPrice, isVirtualBom, created, createdBy, lastUpdated,
        lastUpdatedBy, version, userDef1, userDef2, userDef3, userDef4, userDef5, userDef6,
        userDef7, userDef8, processStamp, deleted, statusFlowCode, qtyRcvTolerance
    </sql>

    <select id="getReceiptQtyLast7Days" resultType="com.huaheng.task.api.domain.TaskDetail">
        SELECT a.click_date         AS lastUpdated,
               ifnull(b.taskQty, 0) AS qty
        FROM (
                     SELECT curdate() AS click_date
                     UNION ALL
                     SELECT date_sub(curdate(), INTERVAL 1 DAY) AS click_date
                     UNION ALL
                     SELECT date_sub(curdate(), INTERVAL 2 DAY) AS click_date
                     UNION ALL
                     SELECT date_sub(curdate(), INTERVAL 3 DAY) AS click_date
                     UNION ALL
                     SELECT date_sub(curdate(), INTERVAL 4 DAY) AS click_date
                     UNION ALL
                     SELECT date_sub(curdate(), INTERVAL 5 DAY) AS click_date
                     UNION ALL
                     SELECT date_sub(curdate(), INTERVAL 6 DAY) AS click_date
                     ) a
                     LEFT JOIN (
                SELECT DATE(r.lastUpdated) AS date,
                       SUM(r.qty)          AS taskQty
                FROM task_detail r
                WHERE r.taskType = 100
                  and r.lastUpdated >= DATE_SUB(CURDATE(), INTERVAL 7 DAY)
                  AND r.status > 90
                GROUP BY DATE(r.lastUpdated)
                ) b ON a.click_date = b.date
        ORDER BY a.click_date;
    </select>

    <select id="getWarehouseReceipt" resultType="com.huaheng.task.api.domain.TaskDetail">
        SELECT ifnull(sum(r.qty), 0) as qty, w.name as warehouseName
        from warehouse w
                     left JOIN task_detail r on r.warehouseCode = w.code and r.status > 90 and r.taskType = 100
                and date(r.lastUpdated) = CURDATE()
        group by w.code
    </select>


    <select id="getCompanyReceipt" resultType="com.huaheng.task.api.domain.TaskDetail">
        SELECT ifnull(sum(r.qty), 0) as qty, c.name as companyName
        from company c
                     left JOIN task_detail r on r.companyCode = c.code and r.status > 90 and r.taskType = 100
                and date(r.lastUpdated) = CURDATE()
        group by c.code
    </select>
</mapper>