From 84fd23e5e865bd5529441a0c318809a00362f44c Mon Sep 17 00:00:00 2001 From: wjli <591616088@qq.com> Date: 星期一, 18 三月 2024 16:15:03 +0800 Subject: [PATCH] 添加签收图片对比功能 --- xboot-modules/xboot-your/src/main/resources/mapper/SignCountMapper.xml | 230 ++++++++++++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 203 insertions(+), 27 deletions(-) diff --git a/xboot-modules/xboot-your/src/main/resources/mapper/SignCountMapper.xml b/xboot-modules/xboot-your/src/main/resources/mapper/SignCountMapper.xml index 7e2b84c..e2d22d7 100644 --- a/xboot-modules/xboot-your/src/main/resources/mapper/SignCountMapper.xml +++ b/xboot-modules/xboot-your/src/main/resources/mapper/SignCountMapper.xml @@ -21,7 +21,7 @@ sum(abnormal_sign) AS abnormalSign, sum(not_sign_count) AS notSignCount, sum(sign_count )AS signCount, - CONCAT_WS( '',ROUND(AVG(proportion),0), '%') as proportion, + ROUND(AVG(proportion),0) as proportionInt, </if> <if test="bo.StatisticalType!=null and bo.StatisticalType !='' and bo.StatisticalType == '4'.toString()"> YEAR(DATE_FORMAT(DATE_SUB(send_date,INTERVAL 1 DAY),'%Y-%m-%d')) sendDate, @@ -62,21 +62,16 @@ </if> </where> GROUP BY - <if test="bo.StatisticalType!=null and bo.StatisticalType !='' and bo.StatisticalType == '1'.toString()"> - DATE(send_date), - </if> - <if test="bo.StatisticalType!=null and bo.StatisticalType !='' and bo.StatisticalType == '2'.toString()"> - WEEK(send_date,1), - </if> - <if test="bo.StatisticalType!=null and bo.StatisticalType !='' and bo.StatisticalType == '3'.toString()"> - MONTH(send_date), - </if> - <if test="bo.StatisticalType!=null and bo.StatisticalType !='' and bo.StatisticalType == '4'.toString()"> - YEAR(send_date), - </if> + send_date, car_name, line, - batch + batch, + amount, + abnormal_sign, + not_sign_count, + sign_count, + proportion, + user_name ORDER BY line ASC, send_date asc @@ -85,22 +80,78 @@ <select id="signCount" resultType="cn.exrick.xboot.your.entity.OrderStatusCount"> SELECT - DATE_FORMAT(send_date,'%Y-%m-%d') as sendDate, + CONCAT_WS('',YEAR(send_date),'骞�',MONTH(send_date),'鏈�')sendMonth, + DATE(DATE_FORMAT(send_date,'%Y-%m-%d') ) sendDate, + car_name, + batch, + SUM( amount ) amount, + SUM( abnormal_sign ) as abnormalSign, + SUM( not_sign_count ) as notSignCount, + SUM( sign_count ) as signCount , + CONCAT_WS( '',( FORMAT((SUM( sign_count ) / SUM( amount )),4 ) *100), '%') as proportion, (CASE `batch` WHEN '01娈�' THEN batch ELSE 0 END) as 'oneBatch', (CASE `batch` WHEN '02娈�' THEN batch ELSE 0 END) as 'twoBatch', (CASE `batch` WHEN '03娈�' THEN batch ELSE 0 END) as 'threeBatch', (CASE `batch` WHEN '04娈�' THEN batch ELSE 0 END) as 'fourBatch', (CASE `batch` WHEN '05娈�' THEN batch ELSE 0 END) as 'fiveBatch', - CONCAT_WS('',YEAR(send_date),'骞�',MONTH(send_date),'鏈�')sendMonth, - amount, - abnormal_sign as abnormalSign, - not_sign_count as notSignCount, - sign_count as signCount , - CONCAT_WS( '',ROUND(proportion,0), '%') as proportion, + user_name as userName, + line + FROM + t_sign + <where> + 1=1 + <if test="bo.line != null and bo.line != ''" > + AND line = #{bo.line} + </if> + <if test="bo.carName != null and bo.carName != ''" > + AND car_name like CONCAT ('%',#{bo.carName},'%') + </if> + <if test="bo.batch != null and bo.batch != ''" > + AND batch = #{bo.batch} + </if> + <if test="bo.userName != null and bo.userName != ''" > + AND user_name = #{bo.userName} + </if> + <if test="bo.sendDate != null and bo.sendDate != ''"> + AND DATE_FORMAT(send_date,'%Y-%m-%d') = #{bo.sendDate} + </if> + <if test="bo.sendDateStart != null and bo.sendDateStart != ''"> + AND send_date >= #{bo.sendDateStart} + </if> + <if test="bo.sendDateEnd != null and bo.sendDateEnd != ''"> + AND send_date <= #{bo.sendDateEnd} + ' 23:59:59' + </if> + </where> + GROUP BY car_name, - line, + send_date, batch, - user_name as userName + user_name, + line + ORDER BY + line ASC, + send_date asc + </select> + + <select id="signCount" resultType="cn.exrick.xboot.your.entity.OrderStatusCount"> + + SELECT + CONCAT_WS('',YEAR(send_date),'骞�',MONTH(send_date),'鏈�')sendMonth, + DATE(DATE_FORMAT(send_date,'%Y-%m-%d') ) sendDate, + car_name, + batch, + SUM( amount ) amount, + SUM( abnormal_sign ) as abnormalSign, + SUM( not_sign_count ) as notSignCount, + SUM( sign_count ) as signCount , + CONCAT_WS( '',( FORMAT((SUM( sign_count ) / SUM( amount )),4 ) *100), '%') as proportion, + (CASE `batch` WHEN '01娈�' THEN batch ELSE 0 END) as 'oneBatch', + (CASE `batch` WHEN '02娈�' THEN batch ELSE 0 END) as 'twoBatch', + (CASE `batch` WHEN '03娈�' THEN batch ELSE 0 END) as 'threeBatch', + (CASE `batch` WHEN '04娈�' THEN batch ELSE 0 END) as 'fourBatch', + (CASE `batch` WHEN '05娈�' THEN batch ELSE 0 END) as 'fiveBatch', + user_name as userName, + line FROM t_sign <where> @@ -128,12 +179,137 @@ </if> </where> GROUP BY - DATE(send_date), car_name, - line, - batch + send_date, + batch, + user_name, + line ORDER BY line ASC, send_date asc </select> -</mapper> \ No newline at end of file + + <select id="signCountNew" resultType="cn.exrick.xboot.your.entity.OrderStatusCount"> + SELECT + line, + user_name as userName, + car_name,SUM(sign_count) as signCount, + SUM(amount) as amount, + CONCAT_WS( '',( FORMAT((SUM( sign_count ) / SUM( amount )),4 ) *100), '%') as proportion, + (CASE `batch` WHEN '01娈�' THEN batch ELSE 0 END) as 'oneBatch', + (CASE `batch` WHEN '02娈�' THEN batch ELSE 0 END) as 'twoBatch', + (CASE `batch` WHEN '03娈�' THEN batch ELSE 0 END) as 'threeBatch', + (CASE `batch` WHEN '04娈�' THEN batch ELSE 0 END) as 'fourBatch', + (CASE `batch` WHEN '05娈�' THEN batch ELSE 0 END) as 'fiveBatch' + FROM + t_sign + <where> + 1=1 AND + car_name is not NULL + <if test="bo.line != null and bo.line != ''" > + AND line like CONCAT ('%', #{bo.line},'%') + </if> + <if test="bo.carName != null and bo.carName != ''" > + AND car_name like CONCAT ('%',#{bo.carName},'%') + </if> + <if test="bo.batch != null and bo.batch != ''" > + AND batch = #{bo.batch} + </if> + <if test="bo.userName != null and bo.userName != ''" > + AND user_name = #{bo.userName} + </if> + <if test="bo.sendDate != null and bo.sendDate != ''"> + AND DATE_FORMAT(send_date,'%Y-%m-%d') = #{bo.sendDate} + </if> + <if test="bo.sendDateStart != null and bo.sendDateStart != ''"> + AND send_date >= #{bo.sendDateStart} + </if> + <if test="bo.sendDateEnd != null and bo.sendDateEnd != ''"> + AND send_date <= #{bo.sendDateEnd} + </if> + </where> + GROUP BY line, + user_name, + car_name, + batch + </select> + <select id="signCount2New" resultType="cn.exrick.xboot.your.entity.OrderStatusCount"> + SELECT + line, + user_name as userName, + car_name,SUM(sign_count) as signCount, + SUM(amount) as amount, + SUM(not_sign_count) as not_sign_count, + CONCAT_WS( '',( FORMAT((SUM( sign_count ) / SUM( amount )),4 ) *100), '%') as proportion, + (CASE `batch` WHEN '01娈�' THEN batch ELSE 0 END) as 'oneBatch', + (CASE `batch` WHEN '02娈�' THEN batch ELSE 0 END) as 'twoBatch', + (CASE `batch` WHEN '03娈�' THEN batch ELSE 0 END) as 'threeBatch', + (CASE `batch` WHEN '04娈�' THEN batch ELSE 0 END) as 'fourBatch', + (CASE `batch` WHEN '05娈�' THEN batch ELSE 0 END) as 'fiveBatch' + FROM + t_sign + <where> + 1=1 AND + car_name is not NULL + <if test="bo.line != null and bo.line != ''" > + AND line like CONCAT ('%', #{bo.line},'%') + </if> + <if test="bo.carName != null and bo.carName != ''" > + AND car_name like CONCAT ('%',#{bo.carName},'%') + </if> + <if test="bo.batch != null and bo.batch != ''" > + AND batch = #{bo.batch} + </if> + <if test="bo.userName != null and bo.userName != ''" > + AND user_name = #{bo.userName} + </if> + <if test="bo.sendDate != null and bo.sendDate != ''"> + AND DATE_FORMAT(send_date,'%Y-%m-%d') = #{bo.sendDate} + </if> + <if test="bo.sendDateStart != null and bo.sendDateStart != ''"> + AND send_date >= #{bo.sendDateStart} + </if> + <if test="bo.sendDateEnd != null and bo.sendDateEnd != ''"> + AND send_date <= #{bo.sendDateEnd} + </if> + </where> + GROUP BY line, + user_name, + car_name, + batch + </select> + <select id="signCountNewTotal" resultType="cn.exrick.xboot.your.entity.OrderStatusCount"> + SELECT + car_name, + CONCAT_WS( '',( FORMAT((SUM( sign_count ) / SUM( amount )),4 ) *100), '%') as proportion + FROM + t_sign + <where> + 1=1 AND + car_name is not NULL + <if test="bo.line != null and bo.line != ''" > + AND line like CONCAT ('%', #{bo.line},'%') + </if> + <if test="bo.carName != null and bo.carName != ''" > + AND car_name like CONCAT ('%',#{bo.carName},'%') + </if> + <if test="bo.batch != null and bo.batch != ''" > + AND batch = #{bo.batch} + </if> + <if test="bo.userName != null and bo.userName != ''" > + AND user_name = #{bo.userName} + </if> + <if test="bo.sendDate != null and bo.sendDate != ''"> + AND DATE_FORMAT(send_date,'%Y-%m-%d') = #{bo.sendDate} + </if> + <if test="bo.sendDateStart != null and bo.sendDateStart != ''"> + AND send_date >= #{bo.sendDateStart} + </if> + <if test="bo.sendDateEnd != null and bo.sendDateEnd != ''"> + AND send_date <= #{bo.sendDateEnd} + </if> + </where> + GROUP BY + car_name + </select> +</mapper> -- Gitblit v1.9.1