team.html 9.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281
  1. <link rel="stylesheet" href="__CDN__/assets/addons/shopro/libs/element/element.css">
  2. <link rel="stylesheet" href="__CDN__/assets/addons/shopro/libs/common.css">
  3. <style>
  4. #agentTeam {
  5. color: #58575A;
  6. font-size: 12px;
  7. padding: 10px;
  8. font-family: Noto Sans SC;
  9. font-weight: 400;
  10. }
  11. .theme-cursor {
  12. color: #6E3DC8;
  13. cursor: pointer;
  14. }
  15. .crumbs-item-container {
  16. margin: 0 0px 20px;
  17. width: auto;
  18. overflow-x: auto;
  19. }
  20. .crumbs-item-1 {
  21. color: #626066;
  22. cursor: pointer;
  23. }
  24. .crumbs-item-1:hover,
  25. .crumbs-item-id:hover {
  26. color: #6E3DC8;
  27. }
  28. .crumbs-item {
  29. color: #9E9E9E;
  30. }
  31. .crumbs-item-id {
  32. cursor: pointer;
  33. }
  34. .crumbs-item i {
  35. margin: 0 10px;
  36. }
  37. .shopro-screen-container .shopro-screen-condition {
  38. width: 160px;
  39. }
  40. .shopro-screen-container .shopro-screen-condition-1 {
  41. width: 240px;
  42. }
  43. .shopro-screen-container .shopro-screen-item {
  44. margin-right: 14px;
  45. }
  46. .agent-dashboard {
  47. margin-bottom: 20px;
  48. }
  49. .agent-dashboard-contanmer {
  50. padding: 14px 14px 0;
  51. box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.1);
  52. border-radius: 4px;
  53. margin-bottom: 10px;
  54. }
  55. .agent-dashboard-contanmer-nodata {
  56. padding-bottom: 14px;
  57. }
  58. .agent-dashboard-item {
  59. display: flex;
  60. align-items: center;
  61. margin-bottom: 14px;
  62. }
  63. .agent-dashboard-item-tip {
  64. margin-right: 6px;
  65. }
  66. .shopro-screen-container,
  67. .shopro-table-container{
  68. padding: 0;
  69. }
  70. .shopro-pagination-container {
  71. padding: 30px 0 10px;
  72. }
  73. .table-dashboard-item-dot {
  74. width: 8px;
  75. height: 8px;
  76. background: #8644F2;
  77. border-radius: 50%;
  78. margin-right: 10px;
  79. display: inline-block;
  80. }
  81. .dot-2 {
  82. background: #E6A93C;
  83. }
  84. .dot-3 {
  85. background: #687FF4;
  86. }
  87. .dot-4 {
  88. background: #F08972;
  89. }
  90. .dot-5 {
  91. background: #EC5B55;
  92. }
  93. .el-cascader-node.in-active-path,
  94. .el-cascader-node.is-active,
  95. .el-cascader-node.is-selectable.in-checked-path {
  96. color: #8644F2;
  97. font-weight: 700;
  98. }
  99. .unit-tip-item{
  100. color: #626066;
  101. font-size: 12px;
  102. margin-left: 6px;
  103. line-height: 18px;
  104. }
  105. .shopro-container-scrollbar::-webkit-scrollbar{
  106. height: 6px;
  107. }
  108. .el-popover-container{
  109. width: 170px;
  110. height: 200px;
  111. overflow: auto;
  112. }
  113. .el-checkbox-group{
  114. display: flex;
  115. flex-direction: column;
  116. }
  117. .el-icon-container{
  118. font-size: 16px;
  119. color: #626662;
  120. }
  121. .flex-between{
  122. justify-content: space-between;
  123. }
  124. .shopro-screen-item{
  125. margin-bottom: 20px;
  126. }
  127. .filter-color-normal {
  128. color: #444;
  129. }
  130. .filter-color-forbidden{
  131. color: #ED655F;
  132. }
  133. .filter-color-pending{
  134. color: #999;
  135. }
  136. .filter-color-freeze{
  137. color: #687FF4;
  138. }
  139. .nice-validator .el-input__inner{
  140. vertical-align: baseline !important;
  141. }
  142. [v-cloak] {
  143. display: none
  144. }
  145. </style>
  146. <script src="__CDN__/assets/addons/shopro/libs/vue.js"></script>
  147. <script src="__CDN__/assets/addons/shopro/libs/element/element.js"></script>
  148. <script src="__CDN__/assets/addons/shopro/libs/moment.js"></script>
  149. <div id="agentTeam" v-cloak>
  150. <div class="crumbs-item-container shopro-container-scrollbar">
  151. <span class="crumbs-item-1" @click="operation('clickteamdelete')" v-if="parent_user[0]">{{blockSearchId}}</span>
  152. <span class="crumbs-item" v-for="(titem,tindex) in tableIdArr">
  153. <i class="el-icon-arrow-right"></i>
  154. <span class="crumbs-item-id" v-if="tindex<tableIdArr.length-1"
  155. @click="operation('clickteamdelete',titem)">{{titem}}</span>
  156. <span v-if="tindex==tableIdArr.length-1">{{titem}}</span>
  157. </span>
  158. </div>
  159. <div class="display-flex flex-between">
  160. <div class="shopro-screen-container">
  161. <div class="display-flex shopro-screen-item">
  162. <div class="shopro-screen-condition shopro-screen-condition-1">
  163. <el-input placeholder="请输入内容" v-model="searchForm.form_1_value" class="input-with-select" size="small"
  164. @input="debounceFilter">
  165. <el-select v-model="searchForm.form_1_key" slot="prepend" placeholder="请选择">
  166. <el-option label="会员ID" value="id"></el-option>
  167. <el-option label="会员昵称" value="nickname"></el-option>
  168. <el-option label="会员手机号" value="mobile"></el-option>
  169. </el-select>
  170. </el-input>
  171. </div>
  172. </div>
  173. <div class="display-flex shopro-screen-item">
  174. <div class="shopro-screen-tip">分销商等级</div>
  175. <div class="shopro-screen-condition">
  176. <el-select v-model="searchForm.level" placeholder="请选择" size="small" @change="debounceFilter">
  177. <el-option v-for="item in agentLevelList" :key="item.level" :label="item.name+'(等级'+item.level+')'"
  178. :value="item.level">
  179. {{item.name}}(等级{{item.level}})
  180. </el-option>
  181. </el-select>
  182. </div>
  183. </div>
  184. </div>
  185. <div class="display-flex shopro-screen-item">
  186. <el-popover
  187. placement="bottom"
  188. width="170"
  189. trigger="click">
  190. <div class="el-popover-container shopro-container-scrollbar">
  191. <el-checkbox-group v-model="dashboardIdList">
  192. <el-checkbox :label="item.value" v-for="item in dashboardList">{{item.label}}</el-checkbox>
  193. </el-checkbox-group>
  194. </div>
  195. <span slot="reference" class="el-icon-container">
  196. <i class="el-icon-s-grid"></i>
  197. <i class="el-icon-caret-bottom"></i>
  198. </span>
  199. </el-popover>
  200. </div>
  201. </div>
  202. <div v-loading="teamAjax">
  203. <div style="margin-bottom: 14px;">
  204. <el-table :data="parent_user" border>
  205. <template v-for="(item, index) in columns">
  206. <el-table-column :key="index" :fixed="item.fixed" :prop="item.field"
  207. :align="item.align ? item.align : 'center'" :min-width="item.width" v-if="dashboardIdList.includes(item.field)">
  208. <template slot="header" slot-scope="scope">
  209. <div>
  210. {{item.field=='avatar-nickname'?'当前用户':item.title}}
  211. </div>
  212. </template>
  213. <template slot-scope="scope">
  214. <template>
  215. <div class="display-flex" v-if="item.type=='vhtml'" v-html="item.formatter(scope.row,item.outterfield,item.field)">
  216. </div>
  217. <div class="display-flex" v-if="item.type=='click'" v-html="item.formatter(scope.row,item.outterfield,item.field)"></div>
  218. <div v-if="item.type=='vmodel'">{{scope.row[item.field]}}</div>
  219. </template>
  220. </template>
  221. </el-table-column>
  222. </template>
  223. </el-table>
  224. </div>
  225. <div class="shopro-table-container">
  226. <el-table :data="teamList" border>
  227. <template v-for="(item, index) in columns">
  228. <el-table-column :key="index" :fixed="item.fixed" :prop="item.field"
  229. :align="item.align ? item.align : 'center'" :min-width="item.width" v-if="dashboardIdList.includes(item.field)">
  230. <template slot="header" slot-scope="scope">
  231. <div>
  232. {{item.title}}
  233. </div>
  234. </template>
  235. <template slot-scope="scope">
  236. <template>
  237. <div class="display-flex" v-if="item.type=='vhtml'" v-html="item.formatter(scope.row,item.outterfield,item.field)">
  238. </div>
  239. <div class="display-flex" style="cursor: pointer;color:#8644F2;" v-if="item.type=='click'" v-html="item.formatter(scope.row,item.outterfield,item.field)"
  240. @click="operation('clickteam',scope.row.id)"></div>
  241. <div v-if="item.type=='vmodel'">{{scope.row[item.field]}}</div>
  242. </template>
  243. </template>
  244. </el-table-column>
  245. </template>
  246. </el-table>
  247. </div>
  248. </div>
  249. <div class="shopro-pagination-container">
  250. <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" pager-count="5"
  251. :current-page="currentPage" :page-size="limit" :page-sizes="[10, 20, 30, 40]" layout="total, sizes, prev, pager, next, jumper"
  252. :total="totalPage">
  253. </el-pagination>
  254. </div>
  255. </div>