| | |
| | | from area where id=1 |
| | | </select> |
| | | |
| | | <select id="selectCustomGoodsCnt" resultType="java.util.TreeMap"> |
| | | select |
| | | <foreach collection="list" index="index" item="item" separator="," > |
| | | ( |
| | | select case a.perCustomCnt when 0 then 0 else a.totalSaleCnt/a.perCustomCnt end from ( |
| | | select |
| | | (select IFNULL(count(1),0) from sys_order |
| | | where STATU in ('已付款', '欠款') and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]> |
| | | <if test="shopId != null"> |
| | | and shop_id=#{shopId} |
| | | </if> |
| | | <if test="companyId != null"> |
| | | and company_id=#{companyId} |
| | | </if> |
| | | ) perCustomCnt, |
| | | (select IFNULL(sum(b.COUNT),0) from sys_order a inner join sys_order_item b on a.ID=b.ORDER_ID |
| | | where a.STATU in ('已付款', '欠款') and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]> |
| | | <if test="shopId != null"> |
| | | and shop_id=#{shopId} |
| | | </if> |
| | | <if test="companyId != null"> |
| | | and company_id=#{companyId} |
| | | </if> |
| | | ) totalSaleCnt from dual |
| | | ) a |
| | | ) as t${index} |
| | | </foreach> |
| | | from area where id=1 |
| | | </select> |
| | | |
| | | <select id="selectPerCustomPrice" resultType="java.util.TreeMap"> |
| | | select |
| | | <foreach collection="list" index="index" item="item" separator="," > |
| | | ( |
| | | select case a.perCustomCnt when 0 then 0 else a.totalPay/a.perCustomCnt end from ( |
| | | select |
| | | (select IFNULL(count(1),0) from sys_order |
| | | where STATU in ('已付款', '欠款') and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]> |
| | | <if test="shopId != null"> |
| | | and shop_id=#{shopId} |
| | | </if> |
| | | <if test="companyId != null"> |
| | | and company_id=#{companyId} |
| | | </if> |
| | | ) perCustomCnt, |
| | | (select IFNULL(sum(amount),0) from sys_order_flow |
| | | where <![CDATA[ create_time > #{item.beginTime} and create_time < #{item.endTime}]]> and pay_method!='欠款' |
| | | <if test="shopId != null"> |
| | | and shop_id=#{shopId} |
| | | </if> |
| | | <if test="companyId != null"> |
| | | and company_id=#{companyId} |
| | | </if> |
| | | ) totalPay from dual |
| | | ) a |
| | | ) as t${index} |
| | | </foreach> |
| | | from area where id=1 |
| | | </select> |
| | | |
| | | <select id="selectCost" resultType="java.util.TreeMap"> |
| | | select |
| | | <foreach collection="list" index="index" item="item" separator="," > |
| | | ( |
| | | select a.goodsCost+a.otherCost end from ( |
| | | select |
| | | (select IFNULL(sum(e.count * d.GOODS_PRICE),0) from sys_order a |
| | | inner join sys_out_store b on a.id=b.ORDER_ID |
| | | inner join sys_out_store_item c on b.id=c.OUT_STORE_ID |
| | | inner join sys_store_info d on c.store_id = d.ID |
| | | inner join sys_order_item e on a.ID=e.ORDER_ID |
| | | inner join shopping_goods f on e.goods_id=f.id and f.good_type='家居产品' |
| | | where a.STATU in ('已付款', '欠款') and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]> |
| | | <if test="shopId != null"> |
| | | and a.shop_id=#{shopId} |
| | | </if> |
| | | <if test="companyId != null"> |
| | | and a.company_id=#{companyId} |
| | | </if> |
| | | ) goodsCost, |
| | | (select IFNULL(sum(b.COUNT * IFNULL(c.price, 0)),0) from sys_order a |
| | | inner join sys_order_item b on a.ID=b.ORDER_ID |
| | | inner join shopping_goods c on c.good_type != '家居产品' and b.goods_id=c.id |
| | | where a.STATU in ('已付款', '欠款') and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]> |
| | | <if test="shopId != null"> |
| | | and a.shop_id=#{shopId} |
| | | </if> |
| | | <if test="companyId != null"> |
| | | and a.company_id=#{companyId} |
| | | </if> |
| | | ) otherCost from dual |
| | | ) a |
| | | ) as t${index} |
| | | </foreach> |
| | | from area where id=1 |
| | | </select> |
| | | |
| | | <select id="selectGrossProfit" resultType="java.util.TreeMap"> |
| | | select |
| | | <foreach collection="list" index="index" item="item" separator="," > |
| | | ( |
| | | select a.totalPay - a.goodsCost - a.otherCost end from ( |
| | | select |
| | | (select IFNULL(sum(e.count * d.GOODS_PRICE),0) from sys_order a |
| | | inner join sys_out_store b on a.id=b.ORDER_ID |
| | | inner join sys_out_store_item c on b.id=c.OUT_STORE_ID |
| | | inner join sys_store_info d on c.store_id = d.ID |
| | | inner join sys_order_item e on a.ID=e.ORDER_ID |
| | | inner join shopping_goods f on e.goods_id=f.id and f.good_type='家居产品' |
| | | where a.STATU in ('已付款', '欠款') and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]> |
| | | <if test="shopId != null"> |
| | | and a.shop_id=#{shopId} |
| | | </if> |
| | | <if test="companyId != null"> |
| | | and a.company_id=#{companyId} |
| | | </if> |
| | | ) goodsCost, |
| | | (select IFNULL(sum(b.COUNT * IFNULL(c.price, 0)),0) from sys_order a |
| | | inner join sys_order_item b on a.ID=b.ORDER_ID |
| | | inner join shopping_goods c on c.good_type != '家居产品' and b.goods_id=c.id |
| | | where a.STATU in ('已付款', '欠款') and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]> |
| | | <if test="shopId != null"> |
| | | and a.shop_id=#{shopId} |
| | | </if> |
| | | <if test="companyId != null"> |
| | | and a.company_id=#{companyId} |
| | | </if> |
| | | ) otherCost, |
| | | (select IFNULL(sum(amount),0) from sys_order_flow |
| | | where <![CDATA[ create_time > #{item.beginTime} and create_time < #{item.endTime}]]> and pay_method!='欠款' |
| | | <if test="shopId != null"> |
| | | and shop_id=#{shopId} |
| | | </if> |
| | | <if test="companyId != null"> |
| | | and company_id=#{companyId} |
| | | </if> |
| | | ) totalPay from dual |
| | | ) a |
| | | ) as t${index} |
| | | </foreach> |
| | | from area where id=1 |
| | | </select> |
| | | |
| | | <select id="selectGrossProfitRate" resultType="java.util.TreeMap"> |
| | | select |
| | | <foreach collection="list" index="index" item="item" separator="," > |
| | | ( |
| | | select case a.totalPay when 0 then 0 else (a.totalPay - a.goodsCost - a.otherCost)/a.totalPay end from ( |
| | | select |
| | | (select IFNULL(sum(e.count * d.GOODS_PRICE),0) from sys_order a |
| | | inner join sys_out_store b on a.id=b.ORDER_ID |
| | | inner join sys_out_store_item c on b.id=c.OUT_STORE_ID |
| | | inner join sys_store_info d on c.store_id = d.ID |
| | | inner join sys_order_item e on a.ID=e.ORDER_ID |
| | | inner join shopping_goods f on e.goods_id=f.id and f.good_type='家居产品' |
| | | where a.STATU in ('已付款', '欠款') and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]> |
| | | <if test="shopId != null"> |
| | | and a.shop_id=#{shopId} |
| | | </if> |
| | | <if test="companyId != null"> |
| | | and a.company_id=#{companyId} |
| | | </if> |
| | | ) goodsCost, |
| | | (select IFNULL(sum(b.COUNT * IFNULL(c.price, 0)),0) from sys_order a |
| | | inner join sys_order_item b on a.ID=b.ORDER_ID |
| | | inner join shopping_goods c on c.good_type != '家居产品' and b.goods_id=c.id |
| | | where a.STATU in ('已付款', '欠款') and <![CDATA[ ORDER_TIME > #{item.beginTime} and ORDER_TIME < #{item.endTime} ]]> |
| | | <if test="shopId != null"> |
| | | and a.shop_id=#{shopId} |
| | | </if> |
| | | <if test="companyId != null"> |
| | | and a.company_id=#{companyId} |
| | | </if> |
| | | ) otherCost, |
| | | (select IFNULL(sum(amount),0) from sys_order_flow |
| | | where <![CDATA[ create_time > #{item.beginTime} and create_time < #{item.endTime}]]> and pay_method!='欠款' |
| | | <if test="shopId != null"> |
| | | and shop_id=#{shopId} |
| | | </if> |
| | | <if test="companyId != null"> |
| | | and company_id=#{companyId} |
| | | </if> |
| | | ) totalPay from dual |
| | | ) a |
| | | ) as t${index} |
| | | </foreach> |
| | | from area where id=1 |
| | | </select> |
| | | |
| | | <select id="selectCashRefund" resultType="java.util.TreeMap"> |
| | | select |
| | | <foreach collection="list" index="index" item="item" separator="," > |