mayPayStat.vue 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184
  1. <template>
  2. <view class="ex-page">
  3. <view class="top-bar">
  4. <DateSelect class="bar" top="0" @selectDateFn="selectDateFn" />
  5. <ShopSelect class="bar" top="0" @selectShopFn="selectShopFn" />
  6. </view>
  7. <scroll-view scroll-y scroll-with-animation class="main-view">
  8. <view class="space-view ex-table">
  9. <block>
  10. <t-table :headerBackgroundColor="'#F0F2F6'">
  11. <t-tr header><t-th>供货商</t-th><t-th>应付款(元)</t-th><t-th>操作</t-th></t-tr>
  12. <t-tr><t-td><view>盛丰</view></t-td><t-td><view>286500.00</view></t-td><t-td><view></view></t-td></t-tr>
  13. <t-tr><t-td><view>茗星花卉</view></t-td><t-td><view>170129.00</view></t-td><t-td><view></view></t-td></t-tr>
  14. <t-tr><t-td><view>珍情花卉</view></t-td><t-td><view>367111.00</view></t-td><t-td><view></view></t-td></t-tr>
  15. <t-tr><t-td><view>花伍鲜花</view></t-td><t-td><view>551906.00</view></t-td><t-td><view></view></t-td></t-tr>
  16. <t-tr><t-td><view>花醉美</view></t-td><t-td><view>74403.00</view></t-td><t-td><view></view></t-td></t-tr>
  17. <t-tr><t-td><view>美旗鲜花</view></t-td><t-td><view>64403.00</view></t-td><t-td><view></view></t-td></t-tr>
  18. <t-tr><t-td><view>花醉美</view></t-td><t-td><view>94403.00</view></t-td><t-td><view></view></t-td></t-tr>
  19. </t-table>
  20. </block>
  21. </view>
  22. </scroll-view>
  23. </view>
  24. </template>
  25. <script>
  26. import AppWrapperEmpty from "@/components/app-wrapper-empty";
  27. import SelectList from "@/components/plugin/selectList";
  28. import { getStatProfit } from "@/api/stat/index";
  29. import { list } from "@/mixins";
  30. import DorpdownSelect from "@/components/module/shopSelect";
  31. import {mapActions, mapGetters} from "vuex";
  32. export default {
  33. components: { SelectList, AppWrapperEmpty,DorpdownSelect },
  34. mixins: [list],
  35. computed: { ...mapGetters(["getDictionariesInfo","getLoginInfo"]) },
  36. data() {
  37. return {
  38. isShow:false,
  39. customizationTime:'',
  40. shopId:'',
  41. itemId:'',
  42. nowTime: "",
  43. showTimeDropdown: false,
  44. nowShop: "",
  45. showShopDropdown: false,
  46. columns: [
  47. {
  48. name: "姓名",
  49. dataIndex: "name",
  50. color: "info"
  51. },
  52. {
  53. name: "开单额",
  54. dataIndex: "amount",
  55. color: "info",
  56. width: 120,
  57. align: "center"
  58. },
  59. {
  60. name: "开单数",
  61. dataIndex: "num",
  62. color: "info",
  63. align: "center"
  64. }
  65. ],
  66. dataList: [],
  67. params:{
  68. itemId: '',
  69. searchTime:'',
  70. startTime: "",
  71. endTime: "",
  72. shopId: "",
  73. },
  74. profit:[],
  75. };
  76. },
  77. onPullDownRefresh() {
  78. this.resetList();
  79. this._list().then(res => {
  80. uni.stopPullDownRefresh();
  81. });
  82. },
  83. onLoad(e) {
  84. this.itemId = e.id;
  85. this.params.itemId = e.id;
  86. this.shopId = this.getLoginInfo.shopId;
  87. },
  88. methods: {
  89. ...mapActions(['setUserShopAll']),
  90. async init() {
  91. this._list();
  92. },
  93. _list() {
  94. let that = this
  95. getStatProfit(this.params).then(res => {
  96. that.profit = res.data
  97. });
  98. }
  99. }
  100. };
  101. </script>
  102. <style lang="scss" scoped>
  103. .ex-page {
  104. background: white;
  105. height: 100%;
  106. display: flex;
  107. flex-direction: column;
  108. .top-bar {
  109. position: absolute;
  110. left: 0;
  111. display: flex;
  112. width: 100%;
  113. top:130upx;
  114. z-index: 20;
  115. .bar{
  116. width: 50%;
  117. height: 100%;
  118. text-align: center;
  119. &:nth-child(1){
  120. border-right: 1upx solid #eeeeec;
  121. }
  122. }
  123. }
  124. .main-view {
  125. margin-top: 90upx;
  126. flex: 1;
  127. background-color: #f9fbfc;
  128. .space-view {
  129. background-color: #fff;
  130. }
  131. .ex-info {
  132. padding: 30upx;
  133. .info-cell {
  134. display: flex;
  135. align-items: center;
  136. font-size: 28upx;
  137. &:not(:first-child) {
  138. margin-top: 20upx;
  139. }
  140. .cell-label {
  141. width: 110upx;
  142. color: #666666;
  143. }
  144. .cell-value {
  145. margin-left: 40upx;
  146. color: #333;
  147. &.warning {
  148. color: #ffaf1d;
  149. }
  150. &.success {
  151. color: #27c325;
  152. }
  153. }
  154. }
  155. }
  156. .ex-table {
  157. ::v-deep.icon-info {
  158. color: #333333;
  159. }
  160. }
  161. }
  162. .bar-view {
  163. display: flex;
  164. justify-content: space-between;
  165. align-items: center;
  166. padding: 0 30upx;
  167. width: 100%;
  168. height: 100upx;
  169. box-shadow: 0upx -1upx 6upx 0upx rgba(4, 0, 0, 0.06);
  170. .info-view {
  171. font-size: 26upx;
  172. }
  173. .btn-view {
  174. display: flex;
  175. .admin-button-com {
  176. margin: 0 10upx;
  177. }
  178. }
  179. }
  180. }
  181. </style>