高敬炎 2 years ago
parent
commit
bab969ba53

+ 2 - 2
unimall-admin/config/index.js

@@ -15,8 +15,8 @@ module.exports = {
 
 
         // can be overwritten by process.env.HOST
         // can be overwritten by process.env.HOST
         // if you want dev by ip, please set host: '0.0.0.0'
         // if you want dev by ip, please set host: '0.0.0.0'
-        host: '192.168.110.138',
-        port: 9527, // can be overwritten by process.env.PORT, if port is in use, a free one will be determined
+        host: '192.168.110.72',
+        port: 8099, // can be overwritten by process.env.PORT, if port is in use, a free one will be determined
         autoOpenBrowser: true,
         autoOpenBrowser: true,
         errorOverlay: true,
         errorOverlay: true,
         notifyOnErrors: false,
         notifyOnErrors: false,

+ 1 - 0
unimall-admin/src/lang/en.js

@@ -69,6 +69,7 @@ export default {
     dashboard: 'Dashboard',
     dashboard: 'Dashboard',
     github: 'Github',
     github: 'Github',
     screenfull: 'Screenfull',
     screenfull: 'Screenfull',
+    language:'LangSwitcher',
     theme: 'Theme',
     theme: 'Theme',
     size: 'Global Size'
     size: 'Global Size'
   },
   },

+ 1 - 0
unimall-admin/src/lang/zh.js

@@ -69,6 +69,7 @@ export default {
     dashboard: '首页',
     dashboard: '首页',
     github: '项目地址',
     github: '项目地址',
     screenfull: '全屏',
     screenfull: '全屏',
+    language:'语言切换',
     theme: '换肤',
     theme: '换肤',
     size: '布局大小'
     size: '布局大小'
   },
   },

+ 1 - 1
unimall-admin/src/store/modules/app.js

@@ -7,7 +7,7 @@ const app = {
       withoutAnimation: false
       withoutAnimation: false
     },
     },
     device: 'desktop',
     device: 'desktop',
-    language: Cookies.get('language') || 'en',
+    language: Cookies.get('language') || 'zh',
     size: Cookies.get('size') || 'medium'
     size: Cookies.get('size') || 'medium'
   },
   },
   mutations: {
   mutations: {

+ 7 - 1
unimall-admin/src/views/articleManagement/index.vue

@@ -106,8 +106,14 @@
     </el-row>
     </el-row>
 
 
     <el-table v-loading="loading" :data="managementList" @selection-change="handleSelectionChange">
     <el-table v-loading="loading" :data="managementList" @selection-change="handleSelectionChange">
+      <el-table-column type="index" label="序号">
+        <template solt-scope="scope">
+          <span v-if="scope.$index < 9">{{ scope.$index + 1 }}</span>
+          <span v-else>{{ scope.$index + 1 }}</span>
+        </template>
+      </el-table-column>
       <el-table-column type="selection" width="55" align="center" />
       <el-table-column type="selection" width="55" align="center" />
-      <el-table-column label="" align="center" prop="id" />
+      <!-- <el-table-column label="" align="center" prop="id" /> -->
       <el-table-column label="文章标题" align="center" prop="articleTitle" />
       <el-table-column label="文章标题" align="center" prop="articleTitle" />
       <el-table-column label="文章简介" align="center" prop="articleIntroduction" />
       <el-table-column label="文章简介" align="center" prop="articleIntroduction" />
       <el-table-column label="封面" align="center" prop="coverImage" />
       <el-table-column label="封面" align="center" prop="coverImage" />

+ 0 - 477
unimall-admin/src/views/commonUserInfo/index.vue

@@ -1,477 +0,0 @@
-<template>
-  <div class="app-container">
-    <el-form :model="queryParams" ref="queryForm" :inline="true" label-width="68px">
-      <el-form-item label="昵称" prop="nickname">
-        <el-input v-model="queryParams.nickname" placeholder="请输入昵称" clearable size="small"
-          @keyup.enter.native="handleQuery" />
-      </el-form-item>
-      <!-- <el-form-item label="密码" prop="password">
-        <el-input
-          v-model="queryParams.password"
-          placeholder="请输入密码"
-          clearable
-          size="small"
-          @keyup.enter.native="handleQuery"
-        />
-      </el-form-item> -->
-      <el-form-item label="手机号" prop="phone">
-        <el-input v-model="queryParams.phone" placeholder="请输入手机号" clearable size="small"
-          @keyup.enter.native="handleQuery" />
-      </el-form-item>
-      <!-- <el-form-item label="真实姓名" prop="realname">
-        <el-input
-          v-model="queryParams.realname"
-          placeholder="请输入真实姓名"
-          clearable
-          size="small"
-          @keyup.enter.native="handleQuery"
-        />
-      </el-form-item>
-      <el-form-item label="允许他人分享名片(1允许)" prop="shareCard">
-        <el-input
-          v-model="queryParams.shareCard"
-          placeholder="请输入允许他人分享名片(1允许)"
-          clearable
-          size="small"
-          @keyup.enter.native="handleQuery"
-        />
-      </el-form-item>
-      <el-form-item label="允许圈子成员查看主页(1允许)" prop="lookPage">
-        <el-input
-          v-model="queryParams.lookPage"
-          placeholder="请输入允许圈子成员查看主页(1允许)"
-          clearable
-          size="small"
-          @keyup.enter.native="handleQuery"
-        />
-      </el-form-item>
-      <el-form-item label="自动接受邀请(1是)" prop="autoAccept">
-        <el-input
-          v-model="queryParams.autoAccept"
-          placeholder="请输入自动接受邀请(1是)"
-          clearable
-          size="small"
-          @keyup.enter.native="handleQuery"
-        />
-      </el-form-item>
-        <el-form-item label="0.冻结 1.激活" prop="status">
-        <el-select v-model="queryParams.status" placeholder="请选择0.冻结 1.激活" clearable size="small">
-          <el-option label="请选择字典生成" value="" />
-        </el-select>
-      </el-form-item>
-      <el-form-item label="" prop="gmtCreate">
-        <el-date-picker clearable size="small" style="width: 200px"
-          v-model="queryParams.gmtCreate"
-          type="date"
-          value-format="yyyy-MM-dd"
-          placeholder="选择">
-        </el-date-picker>
-      </el-form-item>
-      <el-form-item label="" prop="gmtUpdate">
-        <el-date-picker clearable size="small" style="width: 200px"
-          v-model="queryParams.gmtUpdate"
-          type="date"
-          value-format="yyyy-MM-dd"
-          placeholder="选择">
-        </el-date-picker>
-      </el-form-item>
-      <el-form-item label="删除标识" prop="deleteFlag">
-        <el-input
-          v-model="queryParams.deleteFlag"
-          placeholder="请输入删除标识"
-          clearable
-          size="small"
-          @keyup.enter.native="handleQuery"
-        />
-      </el-form-item> -->
-      <el-form-item>
-        <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
-        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
-      </el-form-item>
-    </el-form>
-
-    <el-row :gutter="10" class="mb8">
-      <el-col :span="1.5">
-        <el-button type="primary" icon="el-icon-plus" size="mini" @click="handleAdd"
-          v-permission="['unimall:commonUserInfo:add']">新增</el-button>
-      </el-col>
-      <el-col :span="1.5">
-        <el-button type="success" icon="el-icon-edit" size="mini" :disabled="single" @click="handleUpdate"
-          v-permission="['unimall:commonUserInfo:edit']">修改</el-button>
-      </el-col>
-      <el-col :span="1.5">
-        <el-button type="danger" icon="el-icon-delete" size="mini" :disabled="multiple" @click="handleDelete"
-          v-permission="['unimall:commonUserInfo:remove']">删除</el-button>
-        <el-button type="default" size="mini" @click="sendMsg"
-          v-permission="['unimall:commonUserInfo:remove']">发送消息</el-button>
-      </el-col>
-      <!-- <el-col :span="1.5">
-        <el-button
-          type="warning"
-          icon="el-icon-download"
-          size="mini"
-          @click="handleExport"
-          v-permission="['unimall:commonUserInfo:export']"
-        >导出</el-button>
-      </el-col> -->
-    </el-row>
-
-    <el-table v-loading="loading" :data="commonUserInfoList" @selection-change="handleSelectionChange">
-      <el-table-column type="selection" width="55" align="center" />
-      <!-- <el-table-column label="" align="center" prop="id" /> -->
-      <el-table-column label="昵称" align="center" prop="nickname" />
-      <!-- <el-table-column label="密码" align="center" prop="password" /> -->
-      <el-table-column label="手机号" align="center" prop="phone" />
-      <!-- <el-table-column label="真实姓名" align="center" prop="realname" />
-      <el-table-column label="允许他人分享名片(1允许)" align="center" prop="shareCard" />
-      <el-table-column label="允许圈子成员查看主页(1允许)" align="center" prop="lookPage" />
-      <el-table-column label="自动接受邀请(1是)" align="center" prop="autoAccept" />
-      <el-table-column label="0.冻结 1.激活" align="center" prop="status" />
-      <el-table-column label="" align="center" prop="gmtCreate" width="180">
-        <template slot-scope="scope">
-          <span>{{ parseTime(scope.row.gmtCreate) }}</span>
-        </template>
-      </el-table-column>
-      <el-table-column label="" align="center" prop="gmtUpdate" width="180">
-        <template slot-scope="scope">
-          <span>{{ parseTime(scope.row.gmtUpdate) }}</span>
-        </template>
-      </el-table-column>
-      <el-table-column label="删除标识" align="center" prop="deleteFlag" /> -->
-      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
-        <template slot-scope="scope">
-          <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
-            v-permission="['unimall:commonUserInfo:edit']">修改</el-button>
-          <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
-            v-permission="['unimall:commonUserInfo:remove']">删除</el-button>
-        </template>
-      </el-table-column>
-    </el-table>
-
-    <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
-      @pagination="getList" />
-    <el-dialog title="发送消息" :visible.sync="isShowMsg">
-      <div class="row" style="display:flex;align-items:center">
-        <div class="left" style="width:80px">接收群体</div>
-        <div v-if="multiple">全局发送</div>
-        <div v-else>批量发送 {{ selectList.length }}人</div>
-        <!-- <el-input v-model="msgObj.newsTitle" placeholder="请输入标题" disabled/> -->
-      </div>
-      <div class="row" style="display:flex;align-items:center;margin-top:20px">
-        <div class="left" style="width:80px">标题</div>
-        <el-input v-model="msgObj.newsTitle" placeholder="请输入标题" />
-      </div>
-      <div class="row" style="display:flex;align-items:center;margin-top:20px">
-        <div class="left" style="width:80px">内容</div>
-        <el-input type="textarea" placeholder="请输入内容" v-model="msgObj.newsContent">
-        </el-input>
-      </div>
-      <div slot="footer" class="dialog-footer">
-        <el-button type="primary" @click="submitMsg">确 定</el-button>
-        <el-button @click="cancelMsg">取 消</el-button>
-      </div>
-    </el-dialog>
-    <!-- 添加或修改用户管理对话框 -->
-    <el-dialog :title="title" :visible.sync="open" width="500px">
-      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
-        <el-form-item label="昵称" prop="nickname">
-          <el-input v-model="form.nickname" placeholder="请输入昵称" />
-        </el-form-item>
-        <!-- <el-form-item label="密码" prop="password">
-          <el-input v-model="form.password" placeholder="请输入密码" />
-        </el-form-item> -->
-        <el-form-item label="手机号" prop="phone">
-          <el-input v-model="form.phone" placeholder="请输入手机号" />
-        </el-form-item>
-        <!-- <el-form-item label="真实姓名" prop="realname">
-          <el-input v-model="form.realname" placeholder="请输入真实姓名" />
-        </el-form-item>
-        <el-form-item label="允许他人分享名片(1允许)" prop="shareCard">
-          <el-input v-model="form.shareCard" placeholder="请输入允许他人分享名片(1允许)" />
-        </el-form-item>
-        <el-form-item label="允许圈子成员查看主页(1允许)" prop="lookPage">
-          <el-input v-model="form.lookPage" placeholder="请输入允许圈子成员查看主页(1允许)" />
-        </el-form-item>
-        <el-form-item label="自动接受邀请(1是)" prop="autoAccept">
-          <el-input v-model="form.autoAccept" placeholder="请输入自动接受邀请(1是)" />
-        </el-form-item>
-        <el-form-item label="0.冻结 1.激活">
-          <el-radio-group v-model="form.status">
-            <el-radio label="1">请选择字典生成</el-radio>
-          </el-radio-group>
-        </el-form-item>
-        <el-form-item label="" prop="gmtCreate">
-          <el-date-picker clearable size="small" style="width: 200px"
-            v-model="form.gmtCreate"
-            type="date"
-            value-format="yyyy-MM-dd"
-            placeholder="选择">
-          </el-date-picker>
-        </el-form-item>
-        <el-form-item label="" prop="gmtUpdate">
-          <el-date-picker clearable size="small" style="width: 200px"
-            v-model="form.gmtUpdate"
-            type="date"
-            value-format="yyyy-MM-dd"
-            placeholder="选择">
-          </el-date-picker>
-        </el-form-item>
-        <el-form-item label="删除标识" prop="deleteFlag">
-          <el-input v-model="form.deleteFlag" placeholder="请输入删除标识" />
-        </el-form-item> -->
-      </el-form>
-      <div slot="footer" class="dialog-footer">
-        <el-button type="primary" @click="submitForm">确 定</el-button>
-        <el-button @click="cancel">取 消</el-button>
-      </div>
-    </el-dialog>
-  </div>
-</template>
-
-<script>
-// import { userSendMsg, listCommonUserInfo, getCommonUserInfo, delCommonUserInfo, addCommonUserInfo, updateCommonUserInfo, exportCommonUserInfo } from "@/api/card/commonUserInfo";
-
-export default {
-  data() {
-    return {
-      selectList: [],
-      msgObj: {
-        newsTitle: '',
-        newsContent: '',
-        // allFlag: '',
-        // cardNewsInfoList: []
-      },
-      isShowMsg: false,
-      // 遮罩层
-      loading: true,
-      // 选中数组
-      ids: [],
-      // 非单个禁用
-      single: true,
-      // 非多个禁用
-      multiple: true,
-      // 总条数
-      total: 0,
-      // 用户管理表格数据
-      commonUserInfoList: [],
-      // 弹出层标题
-      title: "",
-      // 是否显示弹出层
-      open: false,
-      // 查询参数
-      queryParams: {
-        pageNum: 1,
-        pageSize: 10,
-        nickname: undefined,
-        password: undefined,
-        phone: undefined,
-        realname: undefined,
-        shareCard: undefined,
-        lookPage: undefined,
-        autoAccept: undefined,
-        status: undefined,
-        gmtCreate: undefined,
-        gmtUpdate: undefined,
-        deleteFlag: undefined
-      },
-      // 表单参数
-      form: {},
-      // 表单校验
-      rules: {
-        shareCard: [
-          { required: true, message: "允许他人分享名片(1允许)不能为空", trigger: "blur" }
-        ], lookPage: [
-          { required: true, message: "允许圈子成员查看主页(1允许)不能为空", trigger: "blur" }
-        ], autoAccept: [
-          { required: true, message: "自动接受邀请(1是)不能为空", trigger: "blur" }
-        ], status: [
-          { required: true, message: "0.冻结 1.激活不能为空", trigger: "blur" }
-        ], gmtCreate: [
-          { required: true, message: "不能为空", trigger: "blur" }
-        ], gmtUpdate: [
-          { required: true, message: "不能为空", trigger: "blur" }
-        ], deleteFlag: [
-          { required: true, message: "删除标识不能为空", trigger: "blur" }
-        ]
-      }
-    };
-  },
-  created() {
-    this.getList();
-  },
-  methods: {
-    sendMsg() {
-      this.cardNewsInfo = {}
-      this.msgObj = {
-        newsTitle: '',
-        newsContent: '',
-      }
-      // this.selectList = []
-      this.isShowMsg = true
-    },
-    /** 查询用户管理列表 */
-    getList() {
-      this.loading = true;
-      listCommonUserInfo(this.queryParams).then(response => {
-        this.commonUserInfoList = response.data.data.items
-        this.total = response.data.data.count
-        this.loading = false;
-      });
-    },
-    submitMsg() {
-      let that = this
-      this.$confirm('确定发送消息', '提示', {
-        confirmButtonText: '确定',
-        cancelButtonText: '取消',
-        type: 'warning'
-      }).then(() => {
-        let _array = []
-        if (this.selectList.length == 0) {
-          this.msgObj.allFlag = 1
-        } else {
-          this.msgObj.cardNewsInfoList = []
-          for (let i = 0; i < this.selectList.length; i++) {
-            _array.push({ receiveId: this.selectList[i].id })
-          }
-          this.msgObj.cardNewsInfoList = _array
-        }
-        userSendMsg(this.msgObj).then(response => {
-          console.log("response", response)
-          if (response.data) {
-            this.msgSuccess("发送成功");
-            this.isShowMsg = false;
-            this.selectList = []
-          } else {
-            this.msgError(response.msg);
-          }
-
-        });
-      }).catch(() => {
-        this.$message({
-          type: 'info',
-          message: '已取消'
-        });
-      });
-
-    },
-    cancelMsg() {
-      this.isShowMsg = false;
-      this.msgObj = {
-        newsTitle: '',
-        newsContent: ''
-      }
-    },
-    // 取消按钮
-    cancel() {
-      this.open = false;
-      this.reset();
-    },
-    // 表单重置
-    reset() {
-      this.form = {
-        id: undefined,
-        nickname: undefined,
-        password: undefined,
-        phone: undefined,
-        realname: undefined,
-        shareCard: undefined,
-        lookPage: undefined,
-        autoAccept: undefined,
-        status: "0",
-        gmtCreate: undefined,
-        gmtUpdate: undefined,
-        deleteFlag: undefined
-      };
-      this.resetForm("form");
-    },
-    /** 搜索按钮操作 */
-    handleQuery() {
-      this.queryParams.pageNum = 1;
-      this.getList();
-    },
-    /** 重置按钮操作 */
-    resetQuery() {
-      this.resetForm("queryForm");
-      this.handleQuery();
-    },
-    // 多选框选中数据
-    handleSelectionChange(selection) {
-      this.ids = selection.map(item => item.id)
-      this.single = selection.length != 1
-      this.multiple = !selection.length
-      this.selectList = selection
-    },
-    /** 新增按钮操作 */
-    handleAdd() {
-      this.reset();
-      this.open = true;
-      this.title = "添加用户管理";
-    },
-    /** 修改按钮操作 */
-    handleUpdate(row) {
-      this.reset();
-      const id = row.id || this.ids.join(',')
-      getCommonUserInfo(id).then(response => {
-        this.form = response.data.data
-        this.open = true;
-        this.title = "修改用户管理";
-      });
-    },
-    /** 提交按钮 */
-    submitForm: function () {
-      this.$refs["form"].validate(valid => {
-        if (valid) {
-          if (this.form.id != undefined) {
-            updateCommonUserInfo(this.form).then(response => {
-              if (response.data) {
-                this.msgSuccess("修改成功");
-                this.open = false;
-                this.getList();
-              } else {
-                this.msgError(response.msg);
-              }
-            });
-          } else {
-            addCommonUserInfo(this.form).then(response => {
-              if (response.data) {
-                this.msgSuccess("新增成功");
-                this.open = false;
-                this.getList();
-              } else {
-                this.msgError(response.msg);
-              }
-            });
-          }
-        }
-      });
-    },
-    /** 删除按钮操作 */
-    handleDelete(row) {
-      const ids = row.id || this.ids.join(',')
-      this.$confirm('是否确认删除用户管理编号为"' + ids + '"的数据项?', "警告", {
-        confirmButtonText: "确定",
-        cancelButtonText: "取消",
-        type: "warning"
-      }).then(function () {
-        return delCommonUserInfo(ids);
-      }).then(() => {
-        this.getList();
-        this.msgSuccess("删除成功");
-      }).catch(function () { });
-    },
-    /** 导出按钮操作 */
-    handleExport() {
-      const queryParams = this.queryParams;
-      this.$confirm('是否确认导出所有用户管理数据项?', "警告", {
-        confirmButtonText: "确定",
-        cancelButtonText: "取消",
-        type: "warning"
-      }).then(function () {
-        return exportCommonUserInfo(queryParams);
-      }).then(response => {
-        this.download(response.data.data);
-      }).catch(function () { });
-    }
-  }
-};
-</script>

+ 4 - 0
unimall-admin/src/views/layout/components/Navbar.vue

@@ -10,6 +10,10 @@
 
 
     <div class="right-menu">
     <div class="right-menu">
       <template v-if="device!=='mobile'">
       <template v-if="device!=='mobile'">
+        <!-- <el-tooltip :content="$t('navbar.language')" effect="dark" placement="bottom">
+          <lang-select class="international right-menu-item" />
+        </el-tooltip> -->
+
         <el-tooltip :content="$t('navbar.screenfull')" effect="dark" placement="bottom">
         <el-tooltip :content="$t('navbar.screenfull')" effect="dark" placement="bottom">
           <screenfull class="screenfull right-menu-item" />
           <screenfull class="screenfull right-menu-item" />
         </el-tooltip>
         </el-tooltip>