ソースを参照

feat: #补充部分接口

loki 3 年 前
コミット
191606c727

+ 6 - 4
src/api/scene/index.js

@@ -1,10 +1,12 @@
 import api from '@/utils/request';
 
 export const getList = params =>
-	api.post(`/yxl-back-end/admin/Kindergarten/page`, params);
+	api.post(`/yxl-back-end/admin/kindergarten/page`, params);
 export const getItem = ({ id, params }) =>
-	api.get(`/yxl-back-end/admin/Kindergarten/${id}`, params);
+	api.get(`/yxl-back-end/admin/kindergarten/${id}`, params);
 export const saveItem = params =>
-	api.post(`/yxl-back-end/admin/Kindergarten/save`, params);
+	api.post(`/yxl-back-end/admin/kindergarten/save`, params);
 export const delItem = ({ id, params }) =>
-	api.del(`/yxl-back-end/admin/Kindergarten/${id}`, params);
+	api.del(`/yxl-back-end/admin/kindergarten/${id}`, params);
+export const auditItem = ({ id, params }) =>
+	api.put(`/yxl-back-end/admin/kindergarten/${id}/audit`, params);

+ 8 - 0
src/utils/dialog-helper.js

@@ -7,6 +7,7 @@ import BannerItem from 'views/baseManagement/bannerManagement/modal/ItemModal.vu
 import InfoItem from 'views/baseManagement/infoManagement/modal/ItemModal.vue';
 import MemberLeverItem from 'views/memberManagement/memberLever/modal/ItemModal.vue';
 import TrendItem from 'views/baseManagement/trending/modal/ItemModal.vue';
+import SceneVerifyItem from 'views/sceneManagement/sceneVerify/modal/ItemModal.vue';
 
 const modal = (Component, props) => {
   let _component = null;
@@ -77,3 +78,10 @@ let TrendItemModal = data => {
 Vue.prototype.$TrendItemModal = params => {
   TrendItemModal(params);
 };
+
+let SceneVerifyItemModal = data => {
+  modal(SceneVerifyItem, data);
+};
+Vue.prototype.$SceneVerifyItemModal = params => {
+  SceneVerifyItemModal(params);
+};

+ 1 - 1
src/utils/request.js

@@ -121,7 +121,7 @@ const formatStatus = response => {
   if (!response) {
     txt = '通信错误';
   } else if (response.code === 500) {
-    txt = '服务器错误';
+    txt = response.msg || '服务器错误';
     // } else if (response.code === 401) {
     //   txt = '身份验证失败'
   }

+ 1 - 1
src/views/sceneManagement/sceneVerify/index.vue

@@ -111,7 +111,7 @@ export default {
                   },
                   on: {
                     click: () =>
-                      this.$BannerItemModal({
+                      this.$SceneVerifyItemModal({
                         id: row.id
                       })
                   }

+ 161 - 0
src/views/sceneManagement/sceneVerify/modal/ItemModal.vue

@@ -0,0 +1,161 @@
+<template>
+  <el-dialog
+    :title="title"
+    :visible.sync="modal"
+    width="500px"
+    :close-on-click-modal="false"
+    @close="
+      res => {
+        $emit('cancel');
+      }
+    "
+  >
+    <el-form ref="form" :model="form" :rules="rules" label-width="100px">
+      <el-form-item label="机构名称"> {{ form.name }} </el-form-item>
+      <el-form-item label="机构类型"> {{ form.type }} </el-form-item>
+      <el-form-item label="所在地区">
+        {{ form.area ? form.province + '/' + form.city + '/' + form.area : '' }}
+      </el-form-item>
+      <el-form-item label="详细地址"> {{ form.address }} </el-form-item>
+      <el-form-item label="机构logo">
+        <img
+          :src="form.logo"
+          class="pre-img"
+          @click="
+            () =>
+              this.$AdvanceViewImageModal({
+                items: [{ src: form.logo }]
+              })
+          "
+        />
+      </el-form-item>
+      <el-form-item label="门店图片"
+        ><img
+          :src="form.frontDoor"
+          class="pre-img"
+          @click="
+            () =>
+              this.$AdvanceViewImageModal({
+                items: [{ src: form.frontDoor }]
+              })
+          "
+        />
+      </el-form-item>
+      <el-form-item label="营业执照"
+        ><img
+          :src="form.businessLicense"
+          class="pre-img"
+          @click="
+            () =>
+              this.$AdvanceViewImageModal({
+                items: [{ src: form.businessLicense }]
+              })
+          "
+        />
+      </el-form-item>
+      <el-form-item label="证照号码"> {{ form.idCardNumber }} </el-form-item>
+      <el-form-item label="办公电话"> {{ form.phonenumber }} </el-form-item>
+      <el-form-item label="场景介绍"> {{ form.brief }} </el-form-item>
+      <el-form-item label="申请人姓名"> {{ form.realName }} </el-form-item>
+      <el-form-item label="手机号"> {{ form.personPhonenumber }} </el-form-item>
+      <el-form-item label="半身照"
+        ><img
+          :src="form.bodyPhoto"
+          class="pre-img"
+          @click="
+            () =>
+              this.$AdvanceViewImageModal({
+                items: [{ src: form.bodyPhoto }]
+              })
+          "
+        />
+      </el-form-item>
+      <el-form-item label="状态">
+        <el-radio-group v-model="form.auditStatus" prop="isShow">
+          <el-radio :label="1">通过</el-radio>
+          <el-radio :label="-1">不通过</el-radio>
+        </el-radio-group>
+      </el-form-item>
+    </el-form>
+    <span slot="footer" class="dialog-footer">
+      <el-button @click="modal = false">取消</el-button>
+      <el-button type="primary" @click="handleConfirm">确定</el-button>
+    </span>
+  </el-dialog>
+</template>
+
+<script>
+import { getItem, auditItem } from '@/api/scene';
+
+export default {
+  name: 'SceneVerifyItemModal',
+
+  props: {
+    id: {
+      type: String,
+      default: ''
+    }
+  },
+
+  data() {
+    return {
+      title: '场景详情',
+      modal: true,
+
+      form: {
+        auditStatus: null
+      },
+      rules: {
+        auditStatus: [
+          { required: true, message: '请选择是否通过', trigger: 'blur' }
+        ]
+      }
+    };
+  },
+
+  watch: {
+    id: {
+      handler(id) {
+        id && this.loadData();
+      },
+      immediate: true
+    }
+  },
+
+  mounted() {},
+
+  methods: {
+    async loadData() {
+      const { success, data, msg } = await getItem({
+        id: this.id
+      });
+      if (success) {
+        this.form = data;
+      }
+    },
+
+    handleConfirm() {
+      this.$refs.form.validate(async valid => {
+        if (valid) {
+          const params = {
+            audit: this.from.auditStatus
+          };
+          if (this.id) params.id = this.id;
+          const { success, msg } = await auditItem(params);
+          if (success) {
+            this.$success('保存成功!');
+            this.modal = false;
+            this.$g_emit('scene_reload');
+          }
+        }
+      });
+    }
+  }
+};
+</script>
+
+<style lang="scss" scoped>
+.pre-img {
+  height: 80px;
+}
+</style>

+ 2 - 0
src/views/sceneManagement/sceneVerify/toolbar.vue

@@ -3,6 +3,8 @@
 </template>
 
 <script>
+import TYPE from '@/const/type';
+
 export default {
   name: 'SceneVerifyToolbar',