CmMarketShopDao.xml 13 KB

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