| | |
| | | ORDER BY end_date DESC |
| | | </select> |
| | | |
| | | <!-- 统计月结时间范围内的订单数量 --> |
| | | <select id="countOrdersInRange" resultType="int"> |
| | | SELECT COUNT(*) FROM man_order |
| | | WHERE status = 1 |
| | | AND order_time >= #{startDate} |
| | | AND order_time <= #{endDate} |
| | | <!-- 统计月结时间范围内未完成的入库订单数量 --> |
| | | <select id="countUnfinishedOrdersInRangePakin" resultType="int"> |
| | | SELECT COUNT(1) FROM man_order_log_pakin molpi |
| | | WHERE molpi.status = 1 |
| | | AND molpi.order_time >= #{startDate} |
| | | AND molpi.order_time <= #{endDate} |
| | | AND (molpi.settle IS NULL OR molpi.settle != 6) |
| | | AND (molpi.monthly_settle_id IS NULL OR molpi.monthly_settle_id = 0) |
| | | AND EXISTS ( |
| | | SELECT 1 FROM man_order_detl_log_pakin modlpi |
| | | WHERE modlpi.order_id = molpi.id |
| | | AND (modlpi.anfme > modlpi.qty OR modlpi.qty IS NULL) |
| | | ) |
| | | </select> |
| | | |
| | | <!-- 统计月结时间范围内未完成的订单数量(入库和出库) --> |
| | | <select id="countUnfinishedOrdersInRange" resultType="int"> |
| | | SELECT COUNT(*) FROM ( |
| | | SELECT DISTINCT o.id FROM man_order_log_pakin o |
| | | INNER JOIN man_order_detl_log_pakin od ON o.id = od.order_id |
| | | WHERE o.status = 1 |
| | | AND CONVERT(date, o.order_time) >= #{startDate} |
| | | AND o.order_time <= #{endDate} |
| | | AND o.move_status != 2 |
| | | AND (od.anfme > od.qty OR od.qty IS NULL) |
| | | AND (o.monthly_settle_id IS NULL OR o.monthly_settle_id = 0) |
| | | UNION |
| | | SELECT DISTINCT o.id FROM man_order_log_pakout o |
| | | INNER JOIN man_order_detl_log_pakout od ON o.id = od.order_id |
| | | WHERE o.status = 1 |
| | | AND CONVERT(date, o.order_time) >= #{startDate} |
| | | AND o.order_time <= #{endDate} |
| | | AND o.move_status != 2 |
| | | AND (od.anfme > od.qty OR od.qty IS NULL) |
| | | AND (o.monthly_settle_id IS NULL OR o.monthly_settle_id = 0) |
| | | ) t |
| | | <!-- 统计月结时间范围内未完成的出库订单数量 --> |
| | | <select id="countUnfinishedOrdersInRangePakout" resultType="int"> |
| | | SELECT COUNT(1) FROM man_order_log_pakout molpo |
| | | WHERE molpo.status = 1 |
| | | AND molpo.order_time >= #{startDate} |
| | | AND molpo.order_time <= #{endDate} |
| | | AND (molpo.settle IS NULL OR molpo.settle != 6) |
| | | AND (molpo.monthly_settle_id IS NULL OR molpo.monthly_settle_id = 0) |
| | | AND EXISTS ( |
| | | SELECT 1 FROM man_order_detl_log_pakout modlpo |
| | | WHERE modlpo.order_id = molpo.id |
| | | AND (modlpo.anfme > modlpo.qty OR modlpo.qty IS NULL) |
| | | ) |
| | | </select> |
| | | |
| | | <!-- 统计月结时间范围内的物料出入库数量(从入库表查询) --> |
| | | <select id="statisticsMaterialInOutFromPakin" resultType="com.zy.asrs.entity.result.MaterialInOutRawDTO"> |
| | | SELECT |
| | | od.matnr, |
| | | od.maktx, |
| | | od.batch, |
| | | od.brand, |
| | | SUM(od.qty) as qty, |
| | | COALESCE(od.pakin_pakout_status, o.pakin_pakout_status) as pakinPakoutStatus |
| | | FROM man_order_log_pakin o |
| | | INNER JOIN man_order_detl_log_pakin od ON o.id = od.order_id |
| | | WHERE o.status = 1 |
| | | AND CONVERT(date, o.order_time) >= #{startDate} |
| | | AND o.order_time <= #{endDate} |
| | | AND o.move_status = 2 |
| | | AND (o.monthly_settle_id IS NULL OR o.monthly_settle_id = 0) |
| | | AND COALESCE(od.pakin_pakout_status, o.pakin_pakout_status) IN (1, 2) |
| | | GROUP BY od.matnr, od.maktx, od.batch, od.brand, COALESCE(od.pakin_pakout_status, o.pakin_pakout_status) |
| | | modlpi.matnr, |
| | | modlpi.maktx, |
| | | modlpi.batch, |
| | | modlpi.brand, |
| | | SUM(modlpi.qty) as qty, |
| | | COALESCE(modlpi.pakin_pakout_status, molpi.pakin_pakout_status) as pakinPakoutStatus |
| | | FROM man_order_log_pakin molpi |
| | | INNER JOIN man_order_detl_log_pakin modlpi ON molpi.id = modlpi.order_id |
| | | WHERE molpi.status = 1 |
| | | AND molpi.order_time >= #{startDate} |
| | | AND molpi.order_time <= #{endDate} |
| | | AND molpi.settle = 6 |
| | | AND (molpi.monthly_settle_id IS NULL OR molpi.monthly_settle_id = 0) |
| | | AND COALESCE(modlpi.pakin_pakout_status, molpi.pakin_pakout_status) IN (1, 2) |
| | | GROUP BY modlpi.matnr, modlpi.maktx, modlpi.batch, modlpi.brand, COALESCE(modlpi.pakin_pakout_status, molpi.pakin_pakout_status) |
| | | </select> |
| | | |
| | | <!-- 统计月结时间范围内的物料出入库数量(从出库表查询) --> |
| | | <select id="statisticsMaterialInOutFromPakout" resultType="com.zy.asrs.entity.result.MaterialInOutRawDTO"> |
| | | SELECT |
| | | od.matnr, |
| | | od.maktx, |
| | | od.batch, |
| | | od.brand, |
| | | SUM(od.qty) as qty, |
| | | COALESCE(od.pakin_pakout_status, o.pakin_pakout_status) as pakinPakoutStatus |
| | | FROM man_order_log_pakout o |
| | | INNER JOIN man_order_detl_log_pakout od ON o.id = od.order_id |
| | | WHERE o.status = 1 |
| | | AND CONVERT(date, o.order_time) >= #{startDate} |
| | | AND o.order_time <= #{endDate} |
| | | AND o.move_status = 2 |
| | | AND (o.monthly_settle_id IS NULL OR o.monthly_settle_id = 0) |
| | | AND COALESCE(od.pakin_pakout_status, o.pakin_pakout_status) IN (1, 2) |
| | | GROUP BY od.matnr, od.maktx, od.batch, od.brand, COALESCE(od.pakin_pakout_status, o.pakin_pakout_status) |
| | | modlpo.matnr, |
| | | modlpo.maktx, |
| | | modlpo.batch, |
| | | modlpo.brand, |
| | | SUM(modlpo.qty) as qty, |
| | | COALESCE(modlpo.pakin_pakout_status, molpo.pakin_pakout_status) as pakinPakoutStatus |
| | | FROM man_order_log_pakout molpo |
| | | INNER JOIN man_order_detl_log_pakout modlpo ON molpo.id = modlpo.order_id |
| | | WHERE molpo.status = 1 |
| | | AND molpo.order_time >= #{startDate} |
| | | AND molpo.order_time <= #{endDate} |
| | | AND molpo.settle = 6 |
| | | AND (molpo.monthly_settle_id IS NULL OR molpo.monthly_settle_id = 0) |
| | | AND COALESCE(modlpo.pakin_pakout_status, molpo.pakin_pakout_status) IN (1, 2) |
| | | GROUP BY modlpo.matnr, modlpo.maktx, modlpo.batch, modlpo.brand, COALESCE(modlpo.pakin_pakout_status, molpo.pakin_pakout_status) |
| | | </select> |
| | | |
| | | <!-- 获取上一个月结的物料期末库存 --> |
| | |
| | | SET monthly_settle_id = #{settleId}, |
| | | monthly_settle_no = #{settleNo} |
| | | WHERE status = 1 |
| | | AND CONVERT(date, order_time) >= #{startDate} |
| | | AND order_time >= #{startDate} |
| | | AND order_time <= #{endDate} |
| | | AND move_status = 2 |
| | | AND settle = 6 |
| | | AND (monthly_settle_id IS NULL OR monthly_settle_id = 0) |
| | | </update> |
| | | |
| | |
| | | SET monthly_settle_id = #{settleId}, |
| | | monthly_settle_no = #{settleNo} |
| | | WHERE status = 1 |
| | | AND CONVERT(date, order_time) >= #{startDate} |
| | | AND order_time >= #{startDate} |
| | | AND order_time <= #{endDate} |
| | | AND move_status = 2 |
| | | AND settle = 6 |
| | | AND (monthly_settle_id IS NULL OR monthly_settle_id = 0) |
| | | </update> |
| | | |