From 9ca0e9dc50759f4c00498e68c0155bcc3db2be2f Mon Sep 17 00:00:00 2001
From: fangyuan <527392886@qq.com>
Date: 星期二, 27 十二月 2022 15:20:02 +0800
Subject: [PATCH] 页面修改

---
 src/views/manager/User.vue |  325 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 321 insertions(+), 4 deletions(-)

diff --git a/src/views/manager/User.vue b/src/views/manager/User.vue
index a778f95..815e4cd 100644
--- a/src/views/manager/User.vue
+++ b/src/views/manager/User.vue
@@ -1,15 +1,332 @@
 <template>
-  <div>
-    鐢ㄦ埛绠$悊
+  <div style="height: 100%">
+    <el-card style="height: 100%">
+      <template slot="header">
+        <el-form :inline="true" :model="queryInfo" class="demo-form-inline">
+          <el-form-item label="鐢ㄦ埛鍚嶏細">
+            <el-input placeholder="璇疯緭鍏�" v-model="queryInfo.nickName"></el-input>
+          </el-form-item>
+          <el-form-item label="鐢ㄦ埛濮撳悕锛�">
+            <el-input placeholder="璇疯緭鍏�" v-model="queryInfo.realName"></el-input>
+          </el-form-item>
+          <el-form-item>
+            <el-button type="primary" @click="search">鏌ヨ</el-button>
+          </el-form-item>
+          <el-form-item>
+            <el-button type="primary" @click="addPublicityVisibel = true">娣诲姞</el-button>
+          </el-form-item>
+        </el-form>
+      </template>
+      <template>
+        <el-table :data="publicityList" style="width: 100%">
+          <el-table-column prop="nickName" label="鐢ㄦ埛鍚�" width="180" align="center">
+          </el-table-column>
+          <el-table-column prop="realName" label="鐢ㄦ埛濮撳悕" width="180" header-align="center" align="center">
+          </el-table-column>
+          <el-table-column prop="userMobile" label="鎵嬫満鍙风爜" width="180" header-align="center" align="center">
+          </el-table-column>
+          <el-table-column prop="ctime" label="鍒涘缓鏃堕棿" width="180" header-align="center" align="center">
+          </el-table-column>
+          <el-table-column label="鎿嶄綔" align="conter">
+            <template slot-scope="scope">
+              <el-button type="text" size="medium" @click="details(scope.row)">缂栬緫</el-button>
+              <el-button type="text" size="medium" @click="reset(scope.row.id)">閲嶇疆瀵嗙爜</el-button>
+              <el-button type="text" size="medium" @click="remove(scope.row.id)" style="color:#ff0000">鍒犻櫎
+              </el-button>
+            </template>
+          </el-table-column>
+        </el-table>
+      </template>
+      <el-pagination @current-change="handleCurrentChange" :current-page="queryInfo.current" :page-size="queryInfo.size"
+        layout="prev, pager, next" :total="total"></el-pagination>
+    </el-card>
+
+    <!--娣诲姞鐢ㄦ埛寮圭獥-->
+    <el-dialog title="鐢ㄦ埛娣诲姞" :visible.sync="addPublicityVisibel" width="50%" :before-close="addPublicityClose"
+      :append-to-body="true">
+      <el-row :gutter="15">
+        <el-form ref="addPublicityForm" :model="addPublicityForm" :rules="rules" size="medium" label-width="100px">
+
+          <el-col :span="12">
+            <el-form-item label="鐢ㄦ埛鍚�" prop="nickName">
+              <el-input v-model="addPublicityForm.nickName" clearable placeholder="璇疯緭鍏ョ敤鎴峰悕"></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="鐢ㄦ埛濮撳悕" prop="realName">
+              <el-input v-model="addPublicityForm.realName" clearable placeholder="璇疯緭鍏ョ敤鎴峰鍚�"></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="鎵嬫満鍙�" prop="userMobile">
+              <el-input v-model="addPublicityForm.userMobile" clearable placeholder="璇疯緭鍏ユ墜鏈哄彿"></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="韬唤璇�" prop="userIdcard">
+              <el-input v-model="addPublicityForm.userIdcard" clearable placeholder="璇疯緭鍏ヨ韩浠借瘉"> </el-input>
+            </el-form-item>
+          </el-col>
+        </el-form>
+      </el-row>
+      <span slot="footer" class="dialog-footer">
+        <el-button @click="addPublicityVisibel = false">鍙� 娑�</el-button>
+        <el-button type="primary" @click="add">纭� 瀹�</el-button>
+      </span>
+    </el-dialog>
+
+    <el-dialog title="缂栬緫" :visible.sync="detailsVisible" width="50%" :append-to-body="true"
+      :before-close="detailsVisibleclose">
+      <el-row :gutter="15">
+        <el-form ref="detailsRow" :model="detailsRow" size="medium" label-width="100px">
+          <el-col :span="12">
+            <el-form-item label="鐢ㄦ埛鍚�" prop="nickName">
+              <el-input v-model="detailsRow.nickName" placeholder="璇疯緭鍏ョ敤鎴峰悕" clearable :style="{ width: '100%' }">
+              </el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="鐢ㄦ埛濮撳悕" prop="realName">
+              <el-input v-model="detailsRow.realName" placeholder="璇疯緭鍏ョ敤鎴峰鍚�" clearable :style="{ width: '100%' }">
+              </el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="鎵嬫満鍙风爜" prop="userMobile">
+              <el-input v-model="detailsRow.userMobile" placeholder="璇疯緭鍏ユ墜鏈哄彿鐮�" clearable :style="{ width: '100%' }">
+              </el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="韬唤璇佸彿" prop="userIdcard">
+              <el-input v-model="detailsRow.userIdcard" placeholder="璇疯緭鍏ヨ韩浠借瘉鍙�" clearable :style="{ width: '100%' }">
+              </el-input>
+            </el-form-item>
+          </el-col>
+        </el-form>
+      </el-row>
+      <span slot="footer" class="dialog-footer">
+        <el-button @click="detailsVisible = false">鍙� 娑�</el-button>
+        <el-button type="primary" @click="update">纭� 瀹�</el-button>
+      </span>
+    </el-dialog>
+
   </div>
 </template>
 
 <script>
+import {
+  getPublicityList,
+  addPublicityList
+} from '@/api/User'
+
+
 export default {
-  name: "User"
+  name: "User",
+  data() {
+    return {
+
+      rules: {
+        nickName: [{
+          required: true,
+          message: '璇疯緭鍏ョ敤鎴峰悕 ',
+          trigger: 'blur'
+        }],
+        realName: [{
+          required: true,
+          message: '璇疯緭鍏ョ敤鎴峰鍚�',
+          trigger: 'blur'
+        }],
+        userMobile: [{
+          required: true,
+          message: '璇疯緭鍏ユ墜鏈哄彿 ',
+          trigger: 'blur'
+        }],
+        userIdcard: [{
+          required: true,
+          message: '璇疯緭鍏ヨ韩浠借瘉 ',
+          trigger: 'blur'
+        }],
+      },
+      //璇︾粏鍐呭寮规
+      detailsVisible: false,
+      //璇︾粏鍐呭
+      detailsRow:
+      {
+      }
+      ,
+      //琛ㄥ崟鎻愪氦鍐呭
+      addPublicityForm: {
+        nickName: '',
+        realName: ''
+      },
+      //娣诲姞寮规
+      addPublicityVisibel: false,
+      //搴忓彿褰撳墠椤�
+      current: 1,
+      //搴忓彿鏁扮洰
+      size: 10,
+      //椤甸潰鏌ヨ鎬绘暟
+      total: null,
+      //鏌ヨ鏉′欢
+      queryInfo: {
+        nickName: '',
+        current: 1,
+        size: 10
+      },
+      options: [
+        {
+          value: null,
+          label: '鍏ㄩ儴'
+        },
+        {
+          value: '0',
+          label: '鏈彂甯�'
+        },
+        {
+          value: '1',
+          label: '宸插彂甯�'
+        }
+        , {
+          value: '2',
+          label: '涓嬫灦 '
+        }
+      ],
+      publicityList: []
+      ,
+    }
+  },
+  created() {
+    this.init();
+
+  },
+  methods:
+  {
+    //鍒犻櫎
+    remove(val) {
+      var _this = this;
+      this.$confirm('纭鍒犻櫎锛�').then(() => {
+        _this.$http.delete('/api/user', { params: { id: val } }).then(res => {
+          _this.$message({
+            message: '鍒犻櫎鎴愬姛',
+            type: 'success'
+          })
+          this.search();
+        })
+      }
+      )
+
+    },
+    // //鍙戝竷/涓嬫灦
+    // punlish(val, val2) {
+    //   if (val2 == 0) {
+    //     this.$http.get('/api/commonQuestion/release/' + val).then(res => {
+    //       this.$message({
+    //         message: '鍙戝竷鎴愬姛',
+    //         type: 'success'
+    //       })
+
+    //       this.search();
+    //     }
+    //     )
+    //   }
+    //   if (val2 == 1) {
+    //     this.$http.get('/api/commonQuestion/offline/' + val).then(res => {
+    //       this.$message({
+    //         message: '涓嬫灦鎴愬姛',
+    //         type: 'success'
+    //       })
+    //       this.search();
+    //     }
+    //     );
+    //   }
+    // },
+
+    //缂栬緫
+    details(val) {
+      this.detailsVisible = true;
+      this.detailsRow = Object.assign({}, val);
+    },
+    update() {
+      this.$http.put('/api/user', this.detailsRow).then(res => {
+        this.$message({
+          message: '缂栬緫鎴愬姛',
+          type: 'success'
+        }
+        )
+        this.search();
+      }
+      );
+      this.detailsVisible = false;
+    },
+
+    //閲嶇疆瀵嗙爜
+    reset(val) {
+      this.$http.get('/api/user/resetPassword/' + val).then(res => this.$message({
+        message: '閲嶇疆鎴愬姛',
+        type: 'success'
+      }));
+    },
+    //娣诲姞
+    add() {
+      this.$refs.addPublicityForm.validate(async (vaild) => {
+        if (!vaild) return this.$message.error('杈撳叆鏈夎')
+        let param = null;
+        param = this.addPublicityForm;
+        addPublicityList(param).then(res => {
+          this.$message({
+            message: '鎿嶄綔鎴愬姛',
+            type: 'success'
+          });
+          this.addPublicityForm = {};
+          this.init();
+        }
+        )
+        this.addPublicityVisibel = false;
+      })
+    },
+    //鍏抽棴涔嬪墠
+    addPublicityClose() {
+      this.addPublicityVisibel = false;
+    },
+    detailsVisibleclose() {
+      this.detailsVisible = false;
+    },
+    //鍒嗛〉鏂规硶
+    handleCurrentChange(val) {
+      this.queryInfo.current = val;
+      this.search();
+    },
+
+    //鍏叡瀹d紶鍔犺浇
+    init() {
+      let param = {}
+      param.current = this.queryInfo.current
+      param.size = this.queryInfo.size
+      getPublicityList(param).then(res => {
+        this.publicityList = res.records;
+        this.total = res.total
+      })
+    },
+    //鏌ヨ
+    search() {
+      let param = {}
+      param.realName = this.queryInfo.realName
+      param.nickName = this.queryInfo.nickName
+      param.size = this.queryInfo.size
+      getPublicityList(param).then(res => {
+        this.publicityList = res.records;
+        this.total = res.total
+        this.current = res.current
+      })
+    },
+
+  }
 }
 </script>
 
 <style scoped>
-
+::v-deep(.el-table thead) {
+  color: #000000;
+}
 </style>
\ No newline at end of file

--
Gitblit v1.8.0