| | |
| | | <mapper namespace="com.example.erp.mapper.sd.OrderMapper"> |
| | | <select id="selectMaxOrderId"> |
| | | select |
| | | COUNT(a.order_id) |
| | | ifnull(SUBSTR(max(order_id) from 9),0) |
| | | from |
| | | `order` as a |
| | | where |
| | | date(a.create_time) = curdate() |
| | | order by id desc,order_id desc limit 1 |
| | | </select> |
| | | |
| | | |
| | | <update id="updateOrderParameter"> |
| | | update `order` o |
| | | left join |
| | | (select a.order_id,sum(a.perimeter) as aa,sum(a.quantity) as b,sum(a.compute_gross_area) as c |
| | | from sd.order_detail as a group by a.order_id) od |
| | | (select a.order_id, |
| | | round(sum(a.perimeter),2) as aa, |
| | | sum(a.quantity) as b, |
| | | sum(a.compute_gross_area) as c, |
| | | sum(a.gross_amount) as 'detailAmount' |
| | | from sd.order_detail as a group by a.order_id |
| | | ) as od |
| | | on o.order_id = od.order_id |
| | | left join (select oom.order_id, |
| | | sum(oom.money) as 'money' |
| | | from order_other_money as oom |
| | | where |
| | | oom.order_id = #{orderId} |
| | | group by oom.order_id |
| | | ) as c |
| | | on c.order_id = o.order_id |
| | | set |
| | | o.money = ifnull(od.detailAmount,0)+ifnull(c.money,0), |
| | | o.quantity = od.b, |
| | | o.area = od.c, |
| | | o.perimeter= od.aa |
| | | o.perimeter= od.aa, |
| | | o.other_money = ifnull(c.money,0) |
| | | where |
| | | o.order_id = #{orderId} |
| | | |
| | |
| | | |
| | | <select id="getOrderList"> |
| | | select |
| | | * |
| | | *, |
| | | sum(fgi.quantity_available) as goodsQuantity |
| | | from |
| | | `order` as o |
| | | where o.create_time>=#{startDate} and o.create_time <= #{endDate} |
| | | left join mm.finished_goods_inventory as fgi |
| | | on o.order_id = fgi.order_id |
| | | where date(o.create_time)>=#{startDate} and date(o.create_time) <= #{endDate} |
| | | |
| | | <if test="orderType!= null and orderType != ''"> |
| | | and o.create_order = #{orderType} |
| | |
| | | </if> |
| | | |
| | | <if test="order.customerId != null and order.customerId != ''"> |
| | | and o.customer_id REGEXP #{customerId} |
| | | and o.customer_id REGEXP #{order.customerId} |
| | | </if> |
| | | <if test="order.customerName != null and order.customerName != ''"> |
| | | and o.customer_name REGEXP #{customerName} |
| | | and o.customer_name REGEXP #{order.customerName} |
| | | </if> |
| | | <if test="order.project != null and order.project != ''"> |
| | | and o.project REGEXP #{order.project} |
| | |
| | | </if> |
| | | |
| | | <if test="order.area != null and order.area != ''"> |
| | | and o.area REGEXP #{order.area} |
| | | and o.area REGEXP REGEXP_REPLACE(#{order.area}, '\\.0+$', '') |
| | | </if> |
| | | <if test="order.createTime != null and order.createTime != ''"> |
| | | and date(o.create_time) = #{order.createTime} |
| | |
| | | <if test="order.deliveryAddress != null and order.deliveryAddress != ''"> |
| | | and o.delivery_address REGEXP #{order.deliveryAddress} |
| | | </if> |
| | | |
| | | group by o.id |
| | | order by o.id desc |
| | | limit #{offset},#{pageSize} |
| | | </select> |
| | | |
| | | <select id="getPageTotal"> |
| | | select |
| | | CEILING(count(o.id)/#{pageSize}) |
| | | CEILING(count(o.id)/#{pageSize}) as 'pageTotal', |
| | | count(o.id) as 'total' |
| | | from |
| | | `order` as o |
| | | where o.create_time>=#{startDate} and o.create_time <= #{endDate} |
| | | where date (o.create_time)>=#{startDate} and date(o.create_time) <= #{endDate} |
| | | <if test="orderType!= null and orderType != ''"> |
| | | and o.create_order = #{orderType} |
| | | </if> |
| | |
| | | </if> |
| | | |
| | | <if test="order.customerId != null and order.customerId != ''"> |
| | | and o.customer_id REGEXP #{customerId} |
| | | and o.customer_id REGEXP #{order.customerId} |
| | | </if> |
| | | <if test="order.customerName != null and order.customerName != ''"> |
| | | and o.customer_name REGEXP #{customerName} |
| | | and o.customer_name REGEXP #{order.customerName} |
| | | </if> |
| | | <if test="order.project != null and order.project != ''"> |
| | | and o.project REGEXP #{order.project} |
| | |
| | | <if test="order.deliveryAddress != null and order.deliveryAddress != ''"> |
| | | and o.delivery_address REGEXP #{order.deliveryAddress} |
| | | </if> |
| | | |
| | | order by o.id desc |
| | | limit #{offset},#{pageSize} |
| | | </select> |
| | | |
| | | <update id="reviewOrderById"> |
| | | update `order` set order_review = #{status} where order_id = #{id} |
| | | </update> |
| | | |
| | | <update id="reviewProcessById"> |
| | | update `order` set process_review = #{status} where order_id = #{id} |
| | | </update> |
| | | |
| | | <update id="updateMoney"> |
| | | update `order` set money = #{order.money} where order_id = #{order.orderId} |
| | | </update> |
| | | |
| | | <update id="cancelOrder"> |
| | | update `order` as a set |
| | | a.create_order = - a.create_order, |
| | | a.process_review = - a.process_review, |
| | | a.order_review = - a.order_review, |
| | | a.production_order = - a.production_order, |
| | | a.processing_card = - a.processing_card, |
| | | a.warehousing = - a.warehousing, |
| | | a.delivery = - a.delivery |
| | | where order_id = #{order.orderId} |
| | | </update> |
| | | |
| | | </mapper> |