likang пре 2 година
родитељ
комит
668f4d45a8

+ 3 - 0
src/config/componentsMap.js

@@ -30,6 +30,9 @@ export default {
         import ('@/views/system/develop'),
     generate: () =>
         import ('@/views/system/generate'),
+    //邮箱管理
+    email: () =>
+        import ('@/views/system/email'),
     // 配置管理
     config: () =>
         import ('@/views/system/config'),

+ 154 - 0
src/views/system/email/index.vue

@@ -0,0 +1,154 @@
+<template>
+  <div class="app-container">
+    <div class="filter-container">
+      <el-input v-model="queryParam.name" placeholder="邮箱" clearable class="filter-item form-search-input fl" />
+       <el-select  v-model="queryParam.device_type"  clearable class="filter-item form-search-input fl"  placeholder="请选择状态" >
+              <el-option
+                v-for="item in deviceTypes"
+                :key="item.value"
+                :label="item.text"
+                :value="item.value">
+              </el-option>
+        </el-select>
+      <el-button class="filter-item search fl" icon="el-icon-search" @click="handleSearch">
+        搜索
+      </el-button>
+      <el-button class="filter-item fl" icon="el-icon-refresh" @click="handleRefresh">
+        重置
+      </el-button>
+
+      <!-- <el-button class="filter-item" type="primary" icon="el-icon-plus" @click="handleCreate()">
+        新增
+      </el-button>
+      <el-button v-if="this.selectedIds.length" size="small" class="filter-item mb-5" type="danger" icon="el-icon-delete" @click="handleMultiDelete">
+        批量删除
+      </el-button> -->
+    </div>
+    <el-table ref="multipleTable" :data="data" tooltip-effect="dark" style="width: 100%" border fit @selection-change="handleSelectMulti">
+      <el-table-column type="selection" width="55" align="center"/>
+      <el-table-column label="邮箱" prop="email" align="center"/>
+
+      <el-table-column label="状态" align="center">
+          <template slot-scope="scope">
+              <p  v-if="scope.row.status==1">
+                <el-tag type="success">生效中</el-tag>
+              </p>
+              <p  v-else>
+                  <el-tag type="danger">失效</el-tag>
+              </p>
+            </template>
+      </el-table-column>>
+      <el-table-column label="详情" prop="info" align="center"/>
+      <el-table-column prop="created_at" label="创建时间" align="center"/>
+      <el-table-column prop="updated_at" label="更新时间" align="center"/>
+      <el-table-column label="操作" width="200px" align="center">
+        <template slot-scope="word">
+          <el-button type="primary" icon="el-icon-edit" @click="handleUpdate(word.row)" />
+          <el-button type="danger" icon="el-icon-delete" @click="handleDelete(word.row.id)" />
+        </template>
+      </el-table-column>
+    </el-table>
+        <el-button
+      type="primary"
+      icon="el-icon-plus"
+      :loading="downloadLoading"
+      style="margin-top: 15px"
+      @click="handleCreate"
+      >添加</el-button
+    >
+    <el-button
+      type="danger"
+      icon="el-icon-delete"
+      v-if="selectedIds.length > 0"
+      style="margin-top: 15px"
+      @click="handleMultiDelete()"
+      >删除</el-button
+    >
+    <el-pagination
+      background
+      @size-change="handleSizeChange"
+      @current-change="handleCurrentChange"
+      :current-page="paginate.current"
+       class="pagination-container"
+      :page-sizes="paginate.sizes"
+      :page-size="paginate.limit"
+      :layout="paginate.layout"
+      :total="paginate.total"/>
+    <!----------------------------------- 部门 ---------------------------------------------->
+    <el-dialog :title="title" :visible.sync="formVisible" @close="handleCancel" width="500px">
+
+      
+      <el-form :ref="formName" :model="formFieldsData" :rules="rules">
+          <el-form-item label="邮箱" :label-width="formLabelWidth" prop="email">
+               <el-input v-model="formFieldsData.email" placeholder="请输入邮箱" style="width: 250px" autocomplete="off" clearable />
+          </el-form-item>
+          <el-form-item label="状态" :label-width="formLabelWidth"  prop="status">
+              <el-switch v-model="formFieldsData.status"  style="width: 250px"  placeholder="请选择邮箱状态"  active-color="#13ce66"
+                inactive-color="#ff4949"  active-value="1" inactive-value="-1" />
+            </el-form-item>
+            <el-form-item label="详情" :label-width="formLabelWidth" prop="info">
+              <el-input type="textarea" v-model="formFieldsData.info" placeholder="请输入详情" style="width: 250px" autocomplete="off" clearable />
+            </el-form-item>
+      </el-form>
+      <div slot="footer" class="dialog-footer">
+        <el-button @click="handleCancel">取 消</el-button>
+        <el-button type="primary" @click="handleSubmit">确 定</el-button>
+      </div>
+    </el-dialog>
+  </div>
+</template>
+<script>
+import formOperate from '@/layout/mixin/formOperate'
+
+export default {
+  name:"email",
+  mixins: [formOperate],
+  data() {
+    return {
+      formName: 'email',
+      formLabelWidth: '120px',
+      // 用户搜索
+      queryParam: {
+        name: '',
+      },
+      deviceTypes:[],
+      fan_models:[],
+      formVisible: false,
+      formFieldsData: {
+        email: '',
+        status: '',
+        info:'',
+      },
+      url: 'email',
+      // 表单验证
+      rules: {
+        emial: [
+          { required: true, message: '请输入邮箱', trigger: 'blur' }
+        ]
+      }
+    }
+  },
+  created() {
+    this.$http.post("sysDictData/getOptions", { type: "Maintenance" }).then(resp => {
+        this.deviceTypes = resp.data
+     });
+      this.$http.get("get_device_mold?type=4").then(resp => {
+        this.fan_models = resp.data
+     });
+
+  },
+  methods:{
+
+
+
+  },
+
+
+
+  }
+</script>
+<style lang="scss" scoped>
+.filter-item{
+  margin-bottom: 10px;
+}
+</style>

+ 2 - 1
src/views/work_record/maintenancemapper/index.vue

@@ -89,7 +89,7 @@
       
       <el-form :ref="formName" :model="formFieldsData" :rules="rules">
       
-      <el-form-item label="风机型号" :label-width="formLabelWidth" prop="fan_model" v-if="isShow"  >
+      <el-form-item label="风机型号" :label-width="formLabelWidth"  prop="fan_model" v-if="isShow"  :required="isShow" >
           <el-select  v-model.number="formFieldsData.fan_model"  clearable  style="width: 250px"  placeholder="请选择风机类型" >
               <el-option
                 v-for="item in fan_models"
@@ -167,6 +167,7 @@ export default {
       }
       else
       {
+        this.formFieldsData.fan_model=null;
         this.isShow=false;
       }
     },