|
@@ -0,0 +1,330 @@
|
|
|
+<?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.minpay.db.table.own.mapper.OrderManageMapper">
|
|
|
+
|
|
|
+ <select id="selectOrderDetail" resultType="hashmap" parameterType="java.util.Map">
|
|
|
+ SELECT
|
|
|
+ d.VOI_ID "orderNo",
|
|
|
+ o.VOD_PRODUCT_ID "productId",
|
|
|
+ o.VOD_PRO_NAME "productName",
|
|
|
+ p.VCI_NAME "userName",
|
|
|
+ o.VOD_PRO_EQU_REL_ID "equrelId",
|
|
|
+ r.VCI_EQUIPMENT_ID "machineNo",
|
|
|
+ o.VOD_AMOUNT "orderAmt",
|
|
|
+ o.VOD_CREATE_TIME "createTime",
|
|
|
+ o.VOD_DELIVERY_ID "pickupNo",
|
|
|
+ o.VOD_PICKUP_TIME "pickUpTime",
|
|
|
+ o.VOD_IS_DELIVERY "stt",
|
|
|
+ r.VCI_SALL_PRICE "sallPrice",
|
|
|
+ r.VCI_GAME_PRICE "gamePrice",
|
|
|
+ r.VCI_COST_PRICE "costPrice",
|
|
|
+ e.VEQ_IMEI_ADDR "imeiAddr",
|
|
|
+ r.VCI_AISLE "aisle",
|
|
|
+ o.VOD_DETAILS_ID "detailsId"
|
|
|
+ FROM vm_order_details o,vm_order_inf d, vm_pro_equ_rel r, vm_person_inf p,vm_equipment_inf e
|
|
|
+ where o.VOD_PRO_EQU_REL_ID = r.VCI_ID
|
|
|
+ and d.VOI_PERSON_ID = p.VCI_ID
|
|
|
+ and o.VOD_ORDER_ID = d.VOI_ID
|
|
|
+ and r.VCI_EQUIPMENT_ID = e.VEQ_ID
|
|
|
+ <if test="branchId != null and branchId != ''">
|
|
|
+ and VOI_BRANCHID = #{branchId,jdbcType=VARCHAR}
|
|
|
+ </if>
|
|
|
+ <if test="pickUpCode != null and pickUpCode != ''">
|
|
|
+ AND o.VOD_DELIVERY_ID = #{pickUpCode,jdbcType=VARCHAR}
|
|
|
+ </if>
|
|
|
+ <if test="pickUpState != null and pickUpState != ''">
|
|
|
+ AND o.VOD_IS_DELIVERY = #{pickUpState,jdbcType=VARCHAR}
|
|
|
+ </if>
|
|
|
+ <if test="machineNo != null and machineNo != ''">
|
|
|
+ AND e.VEQ_IMEI_ADDR = #{machineNo,jdbcType=VARCHAR}
|
|
|
+ </if>
|
|
|
+ <if test="equrelId != null and equrelId != ''">
|
|
|
+ AND r.VCI_AISLE = #{equrelId,jdbcType=VARCHAR}
|
|
|
+ </if>
|
|
|
+ <if test="creatdDtes != null and creatdDtes != ''">
|
|
|
+ and substr(VOD_CREATE_TIME,1,8) between substr((#{creatdDtes, jdbcType=VARCHAR}),1,8)
|
|
|
+ and substr((#{creatdDtes, jdbcType=VARCHAR}),12,19)
|
|
|
+ </if>
|
|
|
+ <if test="pickUpDates != null and pickUpDates != ''">
|
|
|
+ and substr(VOD_PICKUP_TIME,1,8) between substr((#{pickUpDates, jdbcType=VARCHAR}),1,8)
|
|
|
+ and substr((#{pickUpDates, jdbcType=VARCHAR}),12,19)
|
|
|
+ </if>
|
|
|
+ and VCI_EXEIT_STATE = "00"
|
|
|
+ and VOI_STATE = "00"
|
|
|
+ and VCI_STATUS = "00"
|
|
|
+ order by d.VOI_CREATE_TIME desc
|
|
|
+ </select>
|
|
|
+ <select id="selectPickupRecord" resultType="hashmap" parameterType="java.util.Map">
|
|
|
+ SELECT
|
|
|
+ oi.VOI_EQUIPMENT_ID "machineNo",
|
|
|
+ oi.VOI_ID "orderNo",
|
|
|
+ di.VDI_STATUS "stt",
|
|
|
+ od.VOD_PICKUP_TIME "pickUpTime",
|
|
|
+ od.VOD_PRO_NAME "productName",
|
|
|
+ od.VOD_PRO_EQU_REL_ID "equrelId",
|
|
|
+ od.VOD_DELIVERY_ID "pickupNo",
|
|
|
+ p.VCI_ID "vciId",
|
|
|
+ p.VCI_NAME "userName",
|
|
|
+ r.VCI_SALL_PRICE "sallPrice",
|
|
|
+ r.VCI_GAME_PRICE "gamePrice",
|
|
|
+ r.VCI_COST_PRICE "costPrice",
|
|
|
+ e.VEQ_IMEI_ADDR "imeiAddr",
|
|
|
+ r.VCI_AISLE "aisle",
|
|
|
+ od.VOD_DETAILS_ID "detailsId"
|
|
|
+ from vm_delivery_inf di, vm_order_details od, vm_order_inf oi, vm_person_inf p, vm_pro_equ_rel r,vm_equipment_inf e
|
|
|
+ where di.VDI_ORD_DET_ID = od.VOD_DETAILS_ID
|
|
|
+ and VOD_ORDER_ID = oi.VOI_ID
|
|
|
+ and oi.VOI_PERSON_ID = p.VCI_ID
|
|
|
+ and od.VOD_PRO_EQU_REL_ID = r.VCI_ID
|
|
|
+ and r.VCI_EQUIPMENT_ID = e.VEQ_ID
|
|
|
+ <if test="branchId != null and branchId != ''">
|
|
|
+ and VOI_BRANCHID = #{branchId,jdbcType=VARCHAR}
|
|
|
+ </if>
|
|
|
+ <if test="machineNo != null and machineNo != ''">
|
|
|
+ AND e.VEQ_IMEI_ADDR = #{machineNo,jdbcType=VARCHAR}
|
|
|
+ </if>
|
|
|
+ <if test="orderNo != null and orderNo != ''">
|
|
|
+ AND od.VOD_DETAILS_ID = #{orderNo,jdbcType=VARCHAR}
|
|
|
+ </if>
|
|
|
+ <if test="equrelId != null and equrelId != ''">
|
|
|
+ AND r.VCI_AISLE = #{equrelId,jdbcType=VARCHAR}
|
|
|
+ </if>
|
|
|
+ <if test="vciId != null and vciId != ''">
|
|
|
+ AND p.VCI_ID = #{vciId,jdbcType=VARCHAR}
|
|
|
+ </if>
|
|
|
+ <if test="pickupNo != null and pickupNo != ''">
|
|
|
+ AND di.VDI_DELIVERY_ID = #{pickupNo,jdbcType=VARCHAR}
|
|
|
+ </if>
|
|
|
+ <if test="pickUpDates != null and pickUpDates != ''">
|
|
|
+ and substr(VOD_PICKUP_TIME,1,8) between substr((#{pickUpDates, jdbcType=VARCHAR}),1,8)
|
|
|
+ and substr((#{pickUpDates, jdbcType=VARCHAR}),12,19)
|
|
|
+ </if>
|
|
|
+ order by oi.VOI_MODIFY_TIME desc
|
|
|
+ </select>
|
|
|
+
|
|
|
+ <select id="selectIncomeDetail" resultType="hashmap" parameterType="java.util.Map">
|
|
|
+ SELECT succTime sellTime,
|
|
|
+ ROUND(SUM(allCount),2) newCount,
|
|
|
+ ROUND(SUM(wxSum),2) sellWxSum,
|
|
|
+ ROUND(SUM(zfSum),2) sellZfSum,
|
|
|
+ ROUND(SUM(yeSum),2) sellYESum,
|
|
|
+ ROUND(SUM(mfSum),2) sellMfSum,
|
|
|
+ ROUND(IFNULL(SUM(wxSum), 0.00) + IFNULL(SUM(zfSum), 0.00) + IFNULL(SUM(yeSum), 0.00),2) allSell,
|
|
|
+ VEQ_MACHINE_NO vciId
|
|
|
+ FROM (
|
|
|
+ SELECT SUBSTR(PIF_SUCCTIME, 1, 8) AS succTime,VEQ_MACHINE_NO,
|
|
|
+ COUNT(1) allCount,
|
|
|
+ SUM(VOI_ORDER_AMT) wxSum,
|
|
|
+ '0' zfSum,
|
|
|
+ '0' yeSum,
|
|
|
+ '0' mfSum
|
|
|
+ FROM vm_payment_inf, vm_order_inf,vm_equipment_inf
|
|
|
+ WHERE PIF_STATUS = '1'
|
|
|
+ AND VOI_ID = PIF_TRANFLOWNO
|
|
|
+ AND VOI_EQUIPMENT_ID = VEQ_ID
|
|
|
+ AND PIF_PAYTYPE IN ('91')
|
|
|
+ AND VOI_ORDER_AMT != '0.00'
|
|
|
+ <if test="branchId != null and branchId != ''">
|
|
|
+ AND VEQ_BRANCHID = #{branchId,jdbcType=VARCHAR}
|
|
|
+ </if>
|
|
|
+ GROUP BY SUBSTR(PIF_SUCCTIME, 1, 8), VEQ_MACHINE_NO
|
|
|
+ UNION ALL
|
|
|
+ SELECT SUBSTR(PIF_SUCCTIME, 1, 8) AS succTime,VEQ_MACHINE_NO,
|
|
|
+ COUNT(1) allCount,
|
|
|
+ '0' wxSum,
|
|
|
+ SUM(VOI_ORDER_AMT) zfSum,
|
|
|
+ '0' yeSum,
|
|
|
+ '0' mfSum
|
|
|
+ FROM vm_payment_inf, vm_order_inf,vm_equipment_inf
|
|
|
+ WHERE PIF_STATUS = '1'
|
|
|
+ AND VOI_ID = PIF_TRANFLOWNO
|
|
|
+ AND VOI_EQUIPMENT_ID = VEQ_ID
|
|
|
+ AND PIF_PAYTYPE IN ('92')
|
|
|
+ AND VOI_ORDER_AMT != '0.00'
|
|
|
+ <if test="branchId != null and branchId != ''">
|
|
|
+ AND VEQ_BRANCHID = #{branchId,jdbcType=VARCHAR}
|
|
|
+ </if>
|
|
|
+ GROUP BY SUBSTR(PIF_SUCCTIME, 1, 8), VEQ_MACHINE_NO
|
|
|
+ UNION ALL
|
|
|
+
|
|
|
+ SELECT SUBSTR(PIF_SUCCTIME, 1, 8) AS succTime,VEQ_MACHINE_NO,
|
|
|
+ COUNT(1) allCount,
|
|
|
+ '0' wxSum,
|
|
|
+ '0' zfSum,
|
|
|
+ SUM(VOI_ORDER_AMT) yeSum,
|
|
|
+ '0' mfSum
|
|
|
+ FROM vm_payment_inf, vm_order_inf,vm_equipment_inf
|
|
|
+ WHERE PIF_STATUS = '1'
|
|
|
+ AND VOI_ID = PIF_TRANFLOWNO
|
|
|
+ AND VOI_EQUIPMENT_ID = VEQ_ID
|
|
|
+ AND PIF_PAYTYPE IN ('93')
|
|
|
+ <if test="branchId != null and branchId != ''">
|
|
|
+ AND VEQ_BRANCHID = #{branchId,jdbcType=VARCHAR}
|
|
|
+ </if>
|
|
|
+ AND VOI_ORDER_AMT != '0.00'
|
|
|
+ GROUP BY SUBSTR(PIF_SUCCTIME, 1, 8), VEQ_MACHINE_NO
|
|
|
+
|
|
|
+ UNION ALL
|
|
|
+ SELECT SUBSTR(PIF_SUCCTIME, 1, 8) AS succTime,VEQ_MACHINE_NO,
|
|
|
+ COUNT(1) allCount,
|
|
|
+ '0' wxSum,
|
|
|
+ '0' zfSum,
|
|
|
+ '0' yeSum,
|
|
|
+ SUM(PIF_ORDERAMOUT) mfSum
|
|
|
+ FROM vm_payment_inf, vm_order_inf,vm_equipment_inf
|
|
|
+ WHERE PIF_STATUS = '1'
|
|
|
+ AND VOI_ID = PIF_TRANFLOWNO
|
|
|
+ AND VOI_EQUIPMENT_ID = VEQ_ID
|
|
|
+ AND PIF_PAYTYPE IN ('91', '92','93')
|
|
|
+ AND VOI_ORDER_AMT = '0.00'
|
|
|
+ <if test="branchId != null and branchId != ''">
|
|
|
+ AND VEQ_BRANCHID = #{branchId,jdbcType=VARCHAR}
|
|
|
+ </if>
|
|
|
+ GROUP BY SUBSTR(PIF_SUCCTIME, 1, 8), VEQ_MACHINE_NO
|
|
|
+ ) b
|
|
|
+ where 1=1
|
|
|
+ <if test="equNum != null and equNum != ''">
|
|
|
+ AND VEQ_MACHINE_NO = #{equNum,jdbcType=VARCHAR}
|
|
|
+ </if>
|
|
|
+ <if test="datesTime != null and datesTime != ''">
|
|
|
+ and succTime between substr((#{datesTime, jdbcType=VARCHAR}),1,8)
|
|
|
+ and substr((#{datesTime, jdbcType=VARCHAR}),12,19)
|
|
|
+ </if>
|
|
|
+ <if test="(datesTime == null or datesTime == '') and (equNum == null or equNum == '')">
|
|
|
+ and succTime = #{nowDate,jdbcType=VARCHAR}
|
|
|
+ </if>
|
|
|
+ GROUP BY succTime, vciId
|
|
|
+ ORDER BY succTime DESC, vciId DESC
|
|
|
+ </select>
|
|
|
+ <!-- 总订单数-->
|
|
|
+ <select id="selectCountOrderNum" resultType="java.lang.String" parameterType="java.util.Map">
|
|
|
+ SELECT COUNT(1)
|
|
|
+ FROM vm_order_inf
|
|
|
+ WHERE VOI_STATE = '00'
|
|
|
+ </select>
|
|
|
+ <!-- 累计收入-->
|
|
|
+ <select id="selectCountIncome" resultType="java.lang.String" parameterType="java.util.Map">
|
|
|
+ select IFNULL(CAST(SUM(PIF_ORDERAMOUT) AS DECIMAL(15,2)), 0.00)
|
|
|
+ from vm_payment_inf
|
|
|
+ where PIF_STATUS = '1'
|
|
|
+ <if test="nowDate != null and nowDate != ''">
|
|
|
+ and substr(PIF_SUCCTIME,1,8) = #{nowDate,jdbcType=VARCHAR}
|
|
|
+ </if>
|
|
|
+ <if test="yesDate != null and yesDate != ''">
|
|
|
+ and substr(PIF_SUCCTIME,1,8) = #{yesDate,jdbcType=VARCHAR}
|
|
|
+ </if>
|
|
|
+ <if test="weekDate != null and weekDate != ''">
|
|
|
+ and substr(PIF_SUCCTIME,1,8) >= #{weekDate,jdbcType=VARCHAR}
|
|
|
+ </if>
|
|
|
+ <if test="branchId != null and branchId != ''">
|
|
|
+ AND PIF_RCVCSTNO = #{branchId,jdbcType=VARCHAR}
|
|
|
+ </if>
|
|
|
+ </select>
|
|
|
+ <!-- 预估利润-->
|
|
|
+ <select id="selectPredictIncome" resultType="java.lang.String" parameterType="java.util.Map">
|
|
|
+ SELECT IFNULL(CAST(SUM(VCI_COST_PRICE) AS DECIMAL(15,2)), 0.00)
|
|
|
+ FROM vm_order_details a left join vm_payment_inf b on PIF_TRANFLOWNO = VOD_ORDER_ID
|
|
|
+ left join vm_pro_equ_rel c on c.VCI_ID = a.VOD_PRO_EQU_REL_ID
|
|
|
+ WHERE VOD_IS_WINNING in ('01','02')
|
|
|
+ AND PIF_STATUS = '1'
|
|
|
+ <if test="nowDate != null and nowDate != ''">
|
|
|
+ and substr(PIF_SUCCTIME,1,8) = #{nowDate,jdbcType=VARCHAR}
|
|
|
+ </if>
|
|
|
+ <if test="yesDate != null and yesDate != ''">
|
|
|
+ and substr(PIF_SUCCTIME,1,8) = #{yesDate,jdbcType=VARCHAR}
|
|
|
+ </if>
|
|
|
+ <if test="weekDate != null and weekDate != ''">
|
|
|
+ and substr(PIF_SUCCTIME,1,8) >= #{weekDate,jdbcType=VARCHAR}
|
|
|
+ </if>
|
|
|
+ <if test="branchId != null and branchId != ''">
|
|
|
+ AND b.PIF_RCVCSTNO = #{branchId,jdbcType=VARCHAR}
|
|
|
+ </if>
|
|
|
+ </select>
|
|
|
+ <!-- 总机台数-->
|
|
|
+ <select id="selectCountDevice" resultType="java.lang.String" parameterType="java.util.Map">
|
|
|
+ SELECT IFNULL(COUNT(VEQ_ID), 0.00)
|
|
|
+ FROM vm_equipment_inf
|
|
|
+ WHERE VEQ_STATE = '00'
|
|
|
+ </select>
|
|
|
+ <!-- 销售统计-->
|
|
|
+ <select id="selectProductInfo" resultType="hashmap" parameterType="java.util.Map">
|
|
|
+ SELECT aa.PRT_FMPIC mainUrl,
|
|
|
+ aa.PRT_NAME proName,
|
|
|
+ cc.VCI_NAME vciName,
|
|
|
+ COUNT(bb.VOD_DETAILS_ID) countNo,
|
|
|
+ SUM(bb.VOD_AMOUNT) amount,
|
|
|
+ SUM(bb.VOD_PRO_NUMS) proNums,
|
|
|
+ aa.PRT_PRO_COST proCost
|
|
|
+ FROM vm_product_inf aa, vm_category_inf cc, vm_order_details bb, vm_order_inf dd
|
|
|
+ WHERE aa.PRT_CATEGORY_ID = cc.VCI_ID
|
|
|
+ AND aa.PRT_ID = bb.VOD_PRODUCT_ID
|
|
|
+ AND bb.VOD_ORDER_ID = dd.VOI_ID
|
|
|
+ AND dd.VOI_STATE IN ('80', '00')
|
|
|
+ <if test="proName != null and proName != ''">
|
|
|
+ AND aa.PRT_NAME like concat('%' , #{proName,jdbcType=VARCHAR},'%')
|
|
|
+ </if>
|
|
|
+ <if test="branchId != null and branchId != ''">
|
|
|
+ AND dd.VOI_BRANCHID = #{branchId,jdbcType=VARCHAR}
|
|
|
+ </if>
|
|
|
+ GROUP BY aa.PRT_ID
|
|
|
+ ORDER BY aa.PRT_MODIFY_TIME DESC
|
|
|
+ </select>
|
|
|
+ <!-- 总实际金额-->
|
|
|
+ <select id="selectAllSale" resultType="java.lang.String" parameterType="java.util.Map">
|
|
|
+ SELECT IFNULL(SUM(VOI_ORDER_AMT), 0.00)
|
|
|
+ FROM vm_order_inf
|
|
|
+ WHERE VOI_PRO_TYPE = '00'
|
|
|
+ AND VOI_STATE IN ('80', '00')
|
|
|
+ </select>
|
|
|
+ <!-- 总商品成本-->
|
|
|
+ <select id="selectAllCost" resultType="java.lang.String" parameterType="java.util.Map">
|
|
|
+ SELECT IFNULL(SUM(proSum), 0.00) FROM (
|
|
|
+ SELECT aa.PRT_PRO_COST * SUM(bb.VOD_PRO_NUMS) AS proSum
|
|
|
+ FROM vm_product_inf aa, vm_order_details bb
|
|
|
+ WHERE aa.PRT_ID = bb.VOD_PRODUCT_ID
|
|
|
+ AND VOD_IS_WINNING = '01'
|
|
|
+ GROUP BY aa.PRT_ID
|
|
|
+ ) cc
|
|
|
+ </select>
|
|
|
+ <select id="selectCountIncomeb" resultType="hashmap" parameterType="java.util.Map">
|
|
|
+ select PIF_TRANSTYPE transType, IFNULL(CAST(SUM(PIF_ORDERAMOUT) AS DECIMAL(15,2)), 0.00) amout
|
|
|
+ from vm_payment_inf
|
|
|
+ where PIF_STATUS = '1' and PIF_PAYTYPE in ('91','92') and PIF_TRANSTYPE in ('00','10')
|
|
|
+ <if test="nowDate != null and nowDate != ''">
|
|
|
+ and substr(PIF_SUCCTIME,1,8) = #{nowDate,jdbcType=VARCHAR}
|
|
|
+ </if>
|
|
|
+ <if test="yesDate != null and yesDate != ''">
|
|
|
+ and substr(PIF_SUCCTIME,1,8) = #{yesDate,jdbcType=VARCHAR}
|
|
|
+ </if>
|
|
|
+ <if test="weekDate != null and weekDate != ''">
|
|
|
+ and substr(PIF_SUCCTIME,1,8) >= #{weekDate,jdbcType=VARCHAR}
|
|
|
+ </if>
|
|
|
+ <if test="branchId != null and branchId != ''">
|
|
|
+ AND PIF_RCVCSTNO = #{branchId,jdbcType=VARCHAR}
|
|
|
+ </if>
|
|
|
+
|
|
|
+ group by PIF_TRANSTYPE
|
|
|
+ </select>
|
|
|
+
|
|
|
+ <!-- 查询订单统计-->
|
|
|
+ <select id="selectOrderNumber" resultType="hashmap" parameterType="java.util.Map">
|
|
|
+ SELECT
|
|
|
+ COUNT(1) number,
|
|
|
+ IFNULL(ROUND(SUM(d.VOD_AMOUNT),2) , 0) sumAmt
|
|
|
+ FROM vm_order_details d LEFT JOIN vm_order_inf a ON d.VOD_ORDER_ID = a.VOI_ID
|
|
|
+ WHERE 1=1
|
|
|
+ AND a.VOI_STATE = 00
|
|
|
+ <if test="nowDate != null and nowDate != ''">
|
|
|
+ and substr(VOD_CREATE_TIME,1,8) = #{nowDate,jdbcType=VARCHAR}
|
|
|
+ </if>
|
|
|
+ <if test="yesDate != null and yesDate != ''">
|
|
|
+ and substr(VOD_CREATE_TIME,1,8) = #{yesDate,jdbcType=VARCHAR}
|
|
|
+ </if>
|
|
|
+ <if test="weekDate != null and weekDate != ''">
|
|
|
+ and substr(VOD_CREATE_TIME,1,8) >= #{weekDate,jdbcType=VARCHAR}
|
|
|
+ </if>
|
|
|
+ <if test="branchId != null and branchId != ''">
|
|
|
+ AND a.VOI_BRANCHID = #{branchId,jdbcType=VARCHAR}
|
|
|
+ </if>
|
|
|
+ </select>
|
|
|
+</mapper>
|