1
0

downloadLog.vue 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123
  1. <template>
  2. <com-head :options="[{ name: '下载记录', value: '2' }]" showCtrl>
  3. <el-form label-width="84px">
  4. <el-form-item label="所属架构:">
  5. <com-company v-model="state.query.deptId" />
  6. </el-form-item>
  7. <el-form-item label="用户姓名:">
  8. <el-input v-model="state.query.nickName" placeholder="请输入"></el-input>
  9. </el-form-item>
  10. <el-form-item label="用户账号:">
  11. <el-input v-model="state.query.userName" placeholder="请输入手机号"></el-input>
  12. </el-form-item>
  13. <el-form-item label="下载时间:">
  14. <el-date-picker
  15. type="daterange"
  16. format="YYYY-MM-DD"
  17. start-placeholder="开始日期"
  18. end-placeholder="结束日期"
  19. v-model="createTime"
  20. placeholder="请选择"
  21. :defaultTime="defaultTime"
  22. style="width: 100%"
  23. />
  24. </el-form-item>
  25. <el-form-item label="场景标题:">
  26. <el-input v-model="state.query.sceneTitle" placeholder="请输入"></el-input>
  27. </el-form-item>
  28. <el-form-item label="场景码:">
  29. <el-input v-model="state.query.sceneNum" placeholder="请输入"></el-input>
  30. </el-form-item>
  31. <el-form-item label="SN码:">
  32. <el-input v-model="state.query.snCode" placeholder="请输入"></el-input>
  33. </el-form-item>
  34. <el-form-item class="searh-btns" style="grid-area: 1/4/4/5">
  35. <el-button type="primary" @click="refresh">查询</el-button>
  36. <el-button type="primary" plain @click="queryReset">重置</el-button>
  37. </el-form-item>
  38. </el-form>
  39. </com-head>
  40. <div class="body-layer" style="padding-top: 8px">
  41. <el-table
  42. class="user-table"
  43. :data="state.table.rows"
  44. style="width: 100%; max-height: 480px"
  45. size="large"
  46. >
  47. <el-table-column label="序号" width="70" v-slot:default="{ $index }">
  48. <div style="text-align: center">
  49. {{ state.pag.size * (state.pag.currentPage - 1) + $index + 1 }}
  50. </div>
  51. </el-table-column>
  52. <el-table-column label="组织名称" prop="deptName"></el-table-column>
  53. <el-table-column label="组织类型" prop="deptLevelStr"></el-table-column>
  54. <el-table-column label="用户姓名" prop="nickName"></el-table-column>
  55. <el-table-column label="用户账号" prop="userName"></el-table-column>
  56. <el-table-column label="下载时间" prop="createTime"></el-table-column>
  57. <el-table-column label="场景标题" prop="sceneTitle"></el-table-column>
  58. <el-table-column label="场景码" prop="sceneNum"></el-table-column>
  59. <el-table-column label="SN码" prop="snCode"></el-table-column>
  60. </el-table>
  61. <com-pagination
  62. @size-change="changPageSize"
  63. @current-change="changPageCurrent"
  64. :current-page="state.pag.currentPage"
  65. :page-size="state.pag.size"
  66. :total="state.pag.total"
  67. />
  68. </div>
  69. </template>
  70. <script setup lang="ts">
  71. import { usePagging } from "@/hook/pagging";
  72. import comHead from "@/components/head/index.vue";
  73. import comCompany from "@/components/company-select/index.vue";
  74. import comPagination from "@/components/pagination/index.vue";
  75. import { getDownloadQuoteScene } from "@/store/scene";
  76. import { ref, watchEffect } from "vue";
  77. import { dateFormat } from "@/util";
  78. const {
  79. state,
  80. queryReset: queryResetRaw,
  81. refresh,
  82. changPageCurrent,
  83. changPageSize,
  84. } = usePagging({
  85. get: getDownloadQuoteScene,
  86. paramsTemlate: {
  87. nickName: "",
  88. deptId: "",
  89. userName: "",
  90. startCreateTime: "",
  91. endCreateTime: "",
  92. sceneTitle: "",
  93. sceneNum: "",
  94. snCode: "",
  95. },
  96. });
  97. const defaultTime: [Date, Date] = [
  98. new Date(2000, 1, 1, 0, 0, 0),
  99. new Date(2000, 2, 1, 23, 59, 59),
  100. ];
  101. const createTime = ref<Date[] | null>(null);
  102. watchEffect(() => {
  103. if (createTime.value && createTime.value.length === 2) {
  104. state.query.startCreateTime = dateFormat(createTime.value[0], "yyyy-MM-dd hh:mm:ss");
  105. state.query.endCreateTime = dateFormat(createTime.value[1], "yyyy-MM-dd hh:mm:ss");
  106. } else {
  107. state.query.startCreateTime = null as any;
  108. state.query.endCreateTime = null as any;
  109. }
  110. });
  111. const queryReset = () => {
  112. queryResetRaw();
  113. createTime.value = null;
  114. };
  115. </script>
  116. <style scoped lang="scss"></style>