109 lines
4.7 KiB
XML
109 lines
4.7 KiB
XML
<?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.gear.oa.mapper.GearOrderMapper">
|
|
|
|
<resultMap type="com.gear.oa.domain.GearOrder" id="GearOrderResult">
|
|
<result property="orderId" column="order_id"/>
|
|
<result property="orderCode" column="order_code"/>
|
|
<result property="customerId" column="customer_id"/>
|
|
<result property="company" column="company"/>
|
|
<result property="salesManager" column="sales_manager"/>
|
|
<result property="salesmanId" column="salesman_id"/>
|
|
<result property="orderStatus" column="order_status"/>
|
|
<result property="tradeType" column="trade_type"/>
|
|
<result property="remark" column="remark"/>
|
|
<result property="delFlag" column="del_flag"/>
|
|
<result property="createTime" column="create_time"/>
|
|
<result property="createBy" column="create_by"/>
|
|
<result property="updateTime" column="update_time"/>
|
|
<result property="updateBy" column="update_by"/>
|
|
<result property="taxAmount" column="tax_amount"/>
|
|
<result property="noTaxAmount" column="no_tax_amount"/>
|
|
<result property="contractExcelOssIds" column="contract_excel_oss_ids"/>
|
|
</resultMap>
|
|
<select id="selectVoPlusPage" resultType="com.gear.oa.domain.vo.GearOrderVo">
|
|
select o.order_id,
|
|
o.order_code,
|
|
o.customer_id,
|
|
o.company,
|
|
o.salesman_id,
|
|
s.name as sales_manager,
|
|
o.order_status AS order_status,
|
|
o.remark,
|
|
o.del_flag,
|
|
o.create_time,
|
|
o.create_by,
|
|
o.update_time,
|
|
o.update_by,
|
|
o.tax_amount,
|
|
o.no_tax_amount,
|
|
o.contract_excel_oss_ids as contractExcelOssIds,
|
|
c.name as customerName,
|
|
(SELECT MAX(CAST(so.status AS SIGNED))
|
|
FROM gear_shipping_order so
|
|
WHERE so.order_id = o.order_id
|
|
AND so.del_flag = '0') AS shippingMaxStatus,
|
|
(CASE
|
|
WHEN EXISTS (SELECT 1
|
|
FROM gear_shipping_order so
|
|
WHERE so.order_id = o.order_id
|
|
AND so.del_flag = '0'
|
|
AND CAST(so.status AS SIGNED) >= 2) THEN 1
|
|
ELSE 0
|
|
END) AS shippedFlag,
|
|
(SELECT MAX(so.ship_time)
|
|
FROM gear_shipping_order so
|
|
WHERE so.order_id = o.order_id
|
|
AND so.del_flag = '0'
|
|
AND CAST(so.status AS SIGNED) >= 2) AS lastShipTime
|
|
from gear_order o
|
|
left join gear_customer c on o.customer_id = c.customer_id and c.del_flag = 0
|
|
left join gear_salesman s on o.salesman_id = s.salesman_id and s.del_flag = 0
|
|
${ew.customSqlSegment}
|
|
</select>
|
|
<select id="selectVoPagePlus" resultType="com.gear.oa.domain.vo.GearOrderVo">
|
|
select o.order_id,
|
|
o.order_code,
|
|
o.customer_id,
|
|
o.company,
|
|
o.salesman_id,
|
|
s.name as sales_manager,
|
|
o.order_status AS order_status,
|
|
o.remark,
|
|
o.del_flag,
|
|
o.create_time,
|
|
o.create_by,
|
|
o.update_time,
|
|
o.update_by,
|
|
o.tax_amount,
|
|
o.no_tax_amount,
|
|
o.contract_excel_oss_ids as contractExcelOssIds,
|
|
c.name as customerName,
|
|
(SELECT MAX(CAST(so.status AS SIGNED))
|
|
FROM gear_shipping_order so
|
|
WHERE so.order_id = o.order_id
|
|
AND so.del_flag = '0') AS shippingMaxStatus,
|
|
(CASE
|
|
WHEN EXISTS (SELECT 1
|
|
FROM gear_shipping_order so
|
|
WHERE so.order_id = o.order_id
|
|
AND so.del_flag = '0'
|
|
AND CAST(so.status AS SIGNED) >= 2) THEN 1
|
|
ELSE 0
|
|
END) AS shippedFlag,
|
|
(SELECT MAX(so.ship_time)
|
|
FROM gear_shipping_order so
|
|
WHERE so.order_id = o.order_id
|
|
AND so.del_flag = '0'
|
|
AND CAST(so.status AS SIGNED) >= 2) AS lastShipTime
|
|
from gear_order o
|
|
left join gear_customer c on o.customer_id = c.customer_id and c.del_flag = 0
|
|
left join gear_salesman s on o.salesman_id = s.salesman_id and s.del_flag = 0
|
|
${ew.customSqlSegment}
|
|
</select>
|
|
|
|
|
|
</mapper>
|