|
@@ -1,6 +1,6 @@
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
<?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">
|
|
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
|
-<mapper namespace="cn.iocoder.yudao.module.rq.dal.mysql.iotmaintainmaterial.IotMaintainMaterialMapper">
|
|
|
|
|
|
+<mapper namespace="cn.iocoder.yudao.module.pms.dal.mysql.maintain.material.IotMaintainMaterialMapper">
|
|
|
|
|
|
<!--
|
|
<!--
|
|
一般情况下,尽可能使用 Mapper 进行 CRUD 增删改查即可。
|
|
一般情况下,尽可能使用 Mapper 进行 CRUD 增删改查即可。
|
|
@@ -8,62 +8,10 @@
|
|
代码生成器暂时只生成 Mapper XML 文件本身,更多推荐 MybatisX 快速开发插件来生成查询。
|
|
代码生成器暂时只生成 Mapper XML 文件本身,更多推荐 MybatisX 快速开发插件来生成查询。
|
|
文档可见:https://www.iocoder.cn/MyBatis/x-plugins/
|
|
文档可见:https://www.iocoder.cn/MyBatis/x-plugins/
|
|
-->
|
|
-->
|
|
- <select id="selectMaterialsByDeptId"
|
|
|
|
- resultType="cn.iocoder.yudao.module.statistics.dal.dataobject.maintain.material.IotMaintainMaterialDO">
|
|
|
|
- SELECT spu.id AS spuId
|
|
|
|
- -- 浏览量:一个用户可以有多次
|
|
|
|
- , (SELECT COUNT(1)
|
|
|
|
- FROM product_browse_history
|
|
|
|
- WHERE spu_id = spu.id
|
|
|
|
- AND create_time BETWEEN #{beginTime} AND #{endTime}) AS browse_count
|
|
|
|
- -- 访客量:按用户去重计数
|
|
|
|
- , (SELECT COUNT(DISTINCT user_id)
|
|
|
|
- FROM product_browse_history
|
|
|
|
- WHERE spu_id = spu.id
|
|
|
|
- AND create_time BETWEEN #{beginTime} AND #{endTime}) AS browse_user_count
|
|
|
|
- -- 收藏数量:按用户去重计数
|
|
|
|
- , (SELECT COUNT(DISTINCT user_id)
|
|
|
|
- FROM product_favorite
|
|
|
|
- WHERE spu_id = spu.id
|
|
|
|
- AND create_time BETWEEN #{beginTime} AND #{endTime}) AS favorite_count
|
|
|
|
- -- 加购数量:按用户去重计数
|
|
|
|
- , (SELECT COUNT(DISTINCT user_id)
|
|
|
|
- FROM trade_cart
|
|
|
|
- WHERE spu_id = spu.id
|
|
|
|
- AND create_time BETWEEN #{beginTime} AND #{endTime}) AS cart_count
|
|
|
|
- -- 下单件数
|
|
|
|
- , (SELECT IFNULL(SUM(count), 0)
|
|
|
|
- FROM trade_order_item
|
|
|
|
- WHERE spu_id = spu.id
|
|
|
|
- AND create_time BETWEEN #{beginTime} AND #{endTime}) AS order_count
|
|
|
|
- -- 支付件数
|
|
|
|
- , (SELECT IFNULL(SUM(item.count), 0)
|
|
|
|
- FROM trade_order_item item
|
|
|
|
- JOIN trade_order o ON item.order_id = o.id
|
|
|
|
- WHERE spu_id = spu.id
|
|
|
|
- AND o.pay_status = TRUE
|
|
|
|
- AND item.create_time BETWEEN #{beginTime} AND #{endTime}) AS order_pay_count
|
|
|
|
- -- 支付金额
|
|
|
|
- , (SELECT IFNULL(SUM(item.pay_price), 0)
|
|
|
|
- FROM trade_order_item item
|
|
|
|
- JOIN trade_order o ON item.order_id = o.id
|
|
|
|
- WHERE spu_id = spu.id
|
|
|
|
- AND o.pay_status = TRUE
|
|
|
|
- AND item.create_time BETWEEN #{beginTime} AND #{endTime}) AS order_pay_price
|
|
|
|
- -- 退款件数
|
|
|
|
- , (SELECT IFNULL(SUM(count), 0)
|
|
|
|
- FROM trade_after_sale
|
|
|
|
- WHERE spu_id = spu.id
|
|
|
|
- AND refund_time IS NOT NULL
|
|
|
|
- AND create_time BETWEEN #{beginTime} AND #{endTime}) AS after_sale_count
|
|
|
|
- -- 退款金额
|
|
|
|
- , (SELECT IFNULL(SUM(refund_price), 0)
|
|
|
|
- FROM trade_after_sale
|
|
|
|
- WHERE spu_id = spu.id
|
|
|
|
- AND refund_time IS NOT NULL
|
|
|
|
- AND create_time BETWEEN #{beginTime} AND #{endTime}) AS after_sale_refund_price
|
|
|
|
- FROM product_spu spu
|
|
|
|
- WHERE spu.deleted = FALSE
|
|
|
|
- ORDER BY spu.id
|
|
|
|
|
|
+ <select id="selectMaterialsByDept"
|
|
|
|
+ resultType="cn.iocoder.yudao.module.pms.dal.dataobject.maintain.material.IotMaintainMaterialDO">
|
|
|
|
+ select lo.material_code as code,lo.material_name as name,lo.unit_price as price,lo.quantity as totalCount,lo.unit as unit,'本地库存' as sourceType from rq_iot_lock_stock lo where lo.dept_id = #{deptId}
|
|
|
|
+ union all
|
|
|
|
+ select sap.material_code as code,sap.material_name as name,sap.unit_price as price,sap.quantity as totalCount,sap.unit as unit,'sap库存' as sourceType from rq_iot_sap_stock sap where sap.dept_id = #{parentDept}
|
|
</select>
|
|
</select>
|
|
</mapper>
|
|
</mapper>
|