CmMarketShopDao.xml 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  3. <mapper namespace="com.caimei365.manager.dao.user.CmMarketShopDao">
  4. <update id="updateShopLogo">
  5. update cm_shop_product
  6. set logo = #{logo}
  7. where id = #{id}
  8. </update>
  9. <select id="getMarketReport" resultType="com.caimei365.manager.entity.caimei.shopImport.CmMarketReport">
  10. select
  11. cmr.id,
  12. cmr.marketId,
  13. cmr.reportDate,
  14. cmr.reportTime,
  15. cmr.fileName,
  16. cmr.reportName,
  17. css.shopId,
  18. cmr.visible,
  19. cmr.addTime,
  20. cmr.delFlag
  21. FROM cm_market_report cmr
  22. left join cm_shop_product csp on csp.id = cmr.marketId
  23. LEFT JOIN cm_shop_statistics css ON css.id = csp.statisticsId
  24. <where>
  25. cmr.marketId = #{marketId} AND cmr.delFlag = 0
  26. <if test="reportName != null and reportName != ''">
  27. AND cmr.reportName LIKE concat('%', #{reportName}, '%')
  28. </if>
  29. </where>
  30. order by cmr.addTime desc
  31. </select>
  32. <select id="getMarketReportById" resultType="com.caimei365.manager.entity.caimei.shopImport.CmMarketReport">
  33. SELECT id,
  34. marketId,
  35. reportDate,
  36. reportTime,
  37. reportName,
  38. fileName,
  39. visible,
  40. addTime,
  41. delFlag
  42. FROM cm_market_report
  43. where id = #{id}
  44. AND delFlag = 0
  45. </select>
  46. <update id="updateMarketReportVisible">
  47. update cm_market_report
  48. set visible = 1,
  49. reportTime = now()
  50. where id = #{id}
  51. </update>
  52. <update id="updateMarketReport">
  53. update cm_market_report
  54. set delFlag = 1
  55. where id = #{id}
  56. </update>
  57. <insert id="insertMarketReport" useGeneratedKeys="true" keyColumn="id" keyProperty="id">
  58. insert into cm_market_report (marketId, reportDate, reportTime, reportName, fileName, visible, addTime, delFlag)
  59. values (#{marketId}, #{reportDate}, #{reportTime}, #{reportName}, #{fileName}, 2, now(), 0)
  60. </insert>
  61. <insert id="insertMarketStage">
  62. insert into cm_market_stage (marketReportId, stage, theme, addTime, delFlag)
  63. values (#{marketReportId}, #{stage}, #{theme}, now(), 0)
  64. </insert>
  65. <insert id="insertMarketFunnelModel">
  66. insert into cm_market_funnelModel (marketReportId, impressions, hits, visits, consultation, report, addTime,
  67. delFlag)
  68. values (#{marketReportId}, #{impressions}, #{hits}, #{visits}, #{consultation}, #{report}, now(), 0)
  69. </insert>
  70. <insert id="insertMarketArticleReadVolume">
  71. insert into cm_market_articleReadVolume (marketReportId, firstTime, title, link, titleReferred, type, keyword, channel,
  72. touchNumber, wechatNumber, addTime, delFlag)
  73. values (#{marketReportId}, #{firstTime}, #{title}, #{link}, #{titleReferred}, #{type}, #{keyword}, #{channel}, #{touchNumber},
  74. #{wechatNumber}, now(), 0)
  75. </insert>
  76. <insert id="insertMarketImpressions">
  77. insert into cm_market_impressions (marketReportId, generalNumber, microBlog, redBookNumber, otherNumber,
  78. addTime, delFlag)
  79. values (#{marketReportId}, #{generalNumber}, #{microBlog}, #{redBookNumber}, #{otherNumber}, now(), 0)
  80. </insert>
  81. <insert id="insertMarketReadVolume">
  82. insert into cm_market_readVolume (marketReportId, generalNumber, microBlog, redBookNumber, otherNumber, addTime,
  83. delFlag)
  84. values (#{marketReportId}, #{generalNumber}, #{microBlog}, #{redBookNumber}, #{otherNumber}, now(), 0)
  85. </insert>
  86. <insert id="insertMarketSummary">
  87. insert into cm_market_summary (marketReportId, keyword, seoRanking, searchVolume, addTime, delFlag)
  88. values (#{marketReportId}, #{keyword}, #{seoRanking}, #{searchVolume}, now(), 0)
  89. </insert>
  90. <insert id="insertMarketVisits">
  91. insert into cm_market_visits (marketReportId, clubNumber, touristNumber, addTime, delFlag)
  92. values (#{marketReportId}, #{clubNumber}, #{touristNumber}, now(), 0)
  93. </insert>
  94. <insert id="insertMarketProportion">
  95. insert into cm_market_proportion (marketReportId, search, general, microBlog, directAccess, addTime, delFlag)
  96. values (#{marketReportId}, #{search}, #{general}, #{microBlog}, #{directAccess}, now(), 0)
  97. </insert>
  98. <insert id="insertMarketPageDuration">
  99. insert into cm_market_pageDuration (marketReportId, pageLabel, accessDuration, addTime, delFlag)
  100. values (#{marketReportId}, #{pageLabel}, #{accessDuration}, now(), 0)
  101. </insert>
  102. <insert id="insertMarketAdvertHits">
  103. insert into cm_market_advertHits (marketReportId, position, home, infoCenter, hits, addTime, delFlag)
  104. values (#{marketReportId}, #{position}, #{home}, #{infoCenter}, #{hits}, now(), 0)
  105. </insert>
  106. <insert id="insertMarketRemark">
  107. insert into cm_market_remark (marketReportId, remarkNumber, addTime, delFlag)
  108. values (#{marketReportId}, #{remarkNumber}, now(), 0)
  109. </insert>
  110. <insert id="updateMarketStage">
  111. update cm_market_stage
  112. set delFlag = 1
  113. where marketReportId = #{marketReportId}
  114. </insert>
  115. <insert id="updateMarketFunnelModel">
  116. update cm_market_funnelModel
  117. set delFlag = 1
  118. where marketReportId = #{marketReportId}
  119. </insert>
  120. <insert id="updateMarketArticleReadVolume">
  121. update cm_market_articleReadVolume
  122. set delFlag = 1
  123. where marketReportId = #{marketReportId}
  124. </insert>
  125. <insert id="updateMarketImpressions">
  126. update cm_market_impressions
  127. set delFlag = 1
  128. where marketReportId = #{marketReportId}
  129. </insert>
  130. <insert id="updateMarketReadVolume">
  131. update cm_market_readVolume
  132. set delFlag = 1
  133. where marketReportId = #{marketReportId}
  134. </insert>
  135. <insert id="updateMarketSummary">
  136. update cm_market_summary
  137. set delFlag = 1
  138. where marketReportId = #{marketReportId}
  139. </insert>
  140. <insert id="updateMarketVisits">
  141. update cm_market_visits
  142. set delFlag = 1
  143. where marketReportId = #{marketReportId}
  144. </insert>
  145. <insert id="updateMarketProportion">
  146. update cm_market_proportion
  147. set delFlag = 1
  148. where marketReportId = #{marketReportId}
  149. </insert>
  150. <insert id="updateMarketPageDuration">
  151. update cm_market_pageDuration
  152. set delFlag = 1
  153. where marketReportId = #{marketReportId}
  154. </insert>
  155. <insert id="updateMarketAdvertHits">
  156. update cm_market_advertHits
  157. set delFlag = 1
  158. where marketReportId = #{marketReportId}
  159. </insert>
  160. <insert id="updateMarketRemark">
  161. update cm_market_remark
  162. set delFlag = 1
  163. where marketReportId = #{marketReportId}
  164. </insert>
  165. <select id="getShopInfoById" resultType="com.caimei365.manager.entity.caimei.shopImport.CmMarketShop">
  166. SELECT cmr.reportDate,
  167. cmr.addTime,
  168. s.shopId,
  169. s.name,
  170. s.linkMan,
  171. s.contractMobile,
  172. css.logo
  173. FROM cm_market_report cmr
  174. LEFT JOIN cm_shop_statistics css ON css.id = cmr.marketId
  175. LEFT JOIN shop s ON s.shopId = css.shopId
  176. WHERE cmr.delFlag = 0
  177. and cmr.id = #{id}
  178. limit 1
  179. </select>
  180. <select id="getMarketStage" resultType="com.caimei365.manager.entity.caimei.shopImport.Stage">
  181. SELECT id,
  182. stage,
  183. theme,
  184. addTime
  185. FROM cm_market_stage
  186. WHERE marketReportId = #{marketReportId}
  187. </select>
  188. <select id="getMarketFunnelModel" resultType="com.caimei365.manager.entity.caimei.shopImport.FunnelModel">
  189. SELECT id,
  190. impressions,
  191. hits,
  192. visits,
  193. consultation,
  194. report
  195. FROM cm_market_funnelModel
  196. WHERE marketReportId = #{marketReportId}
  197. </select>
  198. <select id="getMarketArticleReadVolume"
  199. resultType="com.caimei365.manager.entity.caimei.shopImport.ArticleReadVolume">
  200. SELECT id,
  201. title,
  202. link,
  203. titleReferred,
  204. type,
  205. keyword,
  206. channel,
  207. touchNumber,
  208. wechatNumber
  209. FROM cm_market_articleReadVolume
  210. WHERE marketReportId = #{marketReportId}
  211. </select>
  212. <select id="getMarketImpressions" resultType="com.caimei365.manager.entity.caimei.shopImport.Impressions">
  213. SELECT id,
  214. generalNumber,
  215. microBlog,
  216. redBookNumber,
  217. otherNumber
  218. FROM cm_market_impressions
  219. WHERE marketReportId = #{marketReportId}
  220. </select>
  221. <select id="getMarketReadVolume" resultType="com.caimei365.manager.entity.caimei.shopImport.ReadVolume">
  222. SELECT id,
  223. generalNumber,
  224. microBlog,
  225. redBookNumber,
  226. otherNumber
  227. FROM cm_market_readVolume
  228. WHERE marketReportId = #{marketReportId}
  229. </select>
  230. <select id="getMarketSummary" resultType="com.caimei365.manager.entity.caimei.shopImport.Summary">
  231. SELECT id,
  232. keyword,
  233. seoRanking,
  234. searchVolume
  235. FROM cm_market_summary
  236. WHERE marketReportId = #{marketReportId}
  237. </select>
  238. <select id="getMarketVisits" resultType="com.caimei365.manager.entity.caimei.shopImport.Visits">
  239. SELECT id,
  240. clubNumber,
  241. touristNumber
  242. FROM cm_market_visits
  243. WHERE marketReportId = #{marketReportId}
  244. </select>
  245. <select id="getMarketProportion" resultType="com.caimei365.manager.entity.caimei.shopImport.Proportion">
  246. SELECT id,
  247. search,
  248. general,
  249. microBlog,
  250. directAccess
  251. FROM cm_market_proportion
  252. WHERE marketReportId = #{marketReportId}
  253. </select>
  254. <select id="getMarketPageDuration" resultType="com.caimei365.manager.entity.caimei.shopImport.PageDuration">
  255. SELECT id,
  256. pageLabel,
  257. accessDuration
  258. FROM cm_market_pageDuration
  259. WHERE marketReportId = #{marketReportId}
  260. </select>
  261. <select id="getMarketAdvertHits" resultType="com.caimei365.manager.entity.caimei.shopImport.AdvertHits">
  262. SELECT id,
  263. POSITION,
  264. home,
  265. infoCenter,
  266. hits
  267. FROM cm_market_advertHits
  268. WHERE marketReportId = #{marketReportId}
  269. </select>
  270. <select id="getMarketRemark" resultType="com.caimei365.manager.entity.caimei.shopImport.Remark">
  271. SELECT id,
  272. remarkNumber,
  273. addTime
  274. FROM cm_market_remark
  275. WHERE marketReportId = #{marketReportId}
  276. </select>
  277. <select id="getShopKeyword" resultType="java.lang.String">
  278. SELECT cusf.keyword
  279. FROM cm_user_search_frequency cusf
  280. LEFT JOIN cm_shop_label csl ON csl.keywordId = cusf.id
  281. LEFT JOIN cm_shop_relevance csr ON csr.id = csl.relevanceId
  282. where csr.shopId = #{shopId}
  283. </select>
  284. <select id="getRegion" resultType="java.lang.String">
  285. SELECT region FROM cm_behavior_record_index
  286. where accessDate = #{accessDate}
  287. AND (
  288. <foreach collection="labels" item="label" open="(" separator="or" close=")">
  289. label LIKE concat('%', #{label}, '%')
  290. </foreach>
  291. )
  292. </select>
  293. <!--用户身份-->
  294. <select id="getUserIdentity" resultType="com.caimei365.manager.entity.caimei.ReturnEntity">
  295. SELECT
  296. (CASE c.linkManIdentity
  297. WHEN 1 THEN '老板'
  298. WHEN 2 THEN '采购'
  299. WHEN 3 THEN '运营'
  300. WHEN 4 THEN '其他'
  301. END) AS name,
  302. COUNT(c.userId) as value
  303. FROM cm_behavior_record_index cbri
  304. LEFT JOIN club c ON c.userId = cbri.userId
  305. LEFT JOIN USER u ON u.userId = cbri.userId
  306. WHERE cbri.accessDate = #{accessDate}
  307. AND cbri.userId != 0
  308. AND u.userIdentity = 2
  309. AND (
  310. <foreach collection="labels" item="label" open="(" separator="or" close=")">
  311. cbri.label LIKE concat('%', #{label}, '%')
  312. </foreach>
  313. )
  314. GROUP BY c.linkManIdentity
  315. </select>
  316. <!--机构类型-->
  317. <select id="getClubType" resultType="com.caimei365.manager.entity.caimei.ReturnEntity">
  318. SELECT
  319. (CASE c.firstClubType
  320. WHEN 1 THEN '医美'
  321. WHEN 2 THEN '生美'
  322. WHEN 3 THEN '项目公司'
  323. WHEN 4 THEN '个人'
  324. WHEN 5 THEN '其他'
  325. END) AS name,
  326. COUNT(c.userId) as value
  327. FROM cm_behavior_record_index cbri
  328. LEFT JOIN club c ON c.userId = cbri.userId
  329. LEFT JOIN USER u ON u.userId = cbri.userId
  330. WHERE cbri.accessDate = #{accessDate}
  331. AND cbri.userId != 0
  332. AND u.userIdentity = 2
  333. AND (
  334. <foreach collection="labels" item="label" open="(" separator="or" close=")">
  335. cbri.label LIKE concat('%', #{label}, '%')
  336. </foreach>
  337. )
  338. GROUP BY c.firstClubType
  339. </select>
  340. </mapper>