瀏覽代碼

我的审核

maxiaoxiao 9 月之前
父節點
當前提交
ace0a44933

+ 2 - 1
src/views/ResourceShare/myApplication/components/addEdtModal.vue

@@ -109,7 +109,8 @@ export default {
       this.activeTabs = "sqjl";
       this.modelType = type;
       this.formData = rowdata;
-      this.activetime = this.formData.list[0].time;
+      if (this.formData.list && this.formData.list.length)
+        this.activetime = this.formData.list[0].time;
     },
     async submit() {
       this.close();

+ 20 - 30
src/views/ResourceShare/myApplication/config.js

@@ -64,36 +64,26 @@ export const detailInfos = [
       { flag: 'value', value: 'carPropertyName', span: 20 }
     ],
   ],
-  [
-    [
-      { flag: 'label', value: '申请理由', span: 4 },
-      { flag: 'value', value: 'carModel', span: 20 }
-    ],
-  ],
-  [
-    [
-      { flag: 'label', value: '系统名称', span: 4 },
-      { flag: 'value', value: 'vehicleNumber', unit: '人', span: 20 }
-    ],
-  ],
-  [
-    [
-      { flag: 'label', value: '预期使用时间', span: 4 },
-      { flag: 'value', value: 'ownerPhone', span: 20 }
-    ],
-  ],
-  [
-    [
-      { flag: 'label', value: '调用IP', span: 4 },
-      { flag: 'value', value: 'owner', span: 20 }
-    ]
-  ],
-  [
-    [
-      { flag: 'label', value: '附件', span: 4 },
-      { flag: 'value', value: 'companyImage', span: 20, isslot: true }
-    ]
-  ]
+  [[
+    { flag: 'label', value: '申请理由', span: 4 },
+    { flag: 'value', value: 'carModel', span: 20 }
+  ]],
+  [[
+    { flag: 'label', value: '系统名称', span: 4 },
+    { flag: 'value', value: 'vehicleNumber', unit: '人', span: 20 }
+  ]],
+  [[
+    { flag: 'label', value: '调用IP', span: 4 },
+    { flag: 'value', value: 'owner', span: 20 }
+  ]],
+  [[
+    { flag: 'label', value: '预期使用时间', span: 4 },
+    { flag: 'value', value: 'ownerPhone', span: 20 }
+  ]],
+  [[
+    { flag: 'label', value: '附件', span: 4 },
+    { flag: 'value', value: 'companyImage', span: 20, isslot: true }
+  ]]
 ]
 export const shjlInfos = [
   [[

+ 2 - 38
src/views/ResourceShare/myApplication/index.vue

@@ -38,7 +38,6 @@
       <customForm></customForm>
       <tablePage
         class="tablePage"
-        title="我的申请"
         :cloumn="cloumn"
         :table="table"
         ref="tableDialogRef"
@@ -136,7 +135,7 @@ export default {
       this.$refs.addEdtModal.Init("info", row);
     },
     reset(row) {
-      this.$refs.addEdtModal.Init("withdraw", row);
+      if (row.type == 0) this.$refs.addEdtModal.Init("withdraw", row);
     },
     copyText(text) {
       this.$copyText(text).then(
@@ -156,42 +155,7 @@ export default {
 };
 </script>
 <style lang="scss" scoped>
-.ResourceShare {
-  width: 100%;
-  height: 100%;
-  background: #b6e0ff;
-  position: absolute;
-  z-index: 99;
-  .innerContainer {
-    width: 100%;
-    height: 100%;
-    position: absolute;
-    background: #041024;
-    z-index: 99;
-    top: 0px;
-    background-image: url("/static/images/homepage/00-底框.png");
-    background-size: 100% 100%;
-    padding: 20px;
-  }
-  .tablePage {
-    margin-top: 20px;
-    height: calc(100% - 100px);
-    .type0,
-    .type3 {
-      color: #e6a23c;
-    }
-    .type1 {
-      color: #67c23a;
-    }
-    .type2 {
-      color: #f56c6c;
-    }
-    .usable {
-      color: #3f93f5;
-      cursor: pointer;
-    }
-  }
-}
+@import "../resource.scss";
 </style>
 <style lang="scss">
 @import "../../cockpit/datePicker.scss";

+ 178 - 0
src/views/ResourceShare/myReview/components/reviewModal.vue

@@ -0,0 +1,178 @@
+<template>
+  <div class="dialog">
+    <el-dialog
+      :title="formData.JGMC"
+      width="40%"
+      :visible.sync="dialogVisible"
+      :before-close="close"
+      :modal-append-to-body="false"
+      :close-on-click-modal="false"
+    >
+      <div class="content">
+        <div>
+          <el-tabs
+            type="border-card"
+            class="xz_box"
+            v-model="activeTabs"
+            stretch
+          >
+            <el-tab-pane label="审核" name="sh">
+              <div>
+                <div class="create" @click="generate">生成并查看服务</div>
+                服务地址:{{ formData.url }}
+              </div>
+              <el-form :model="ruleForm" ref="ruleForm" label-width="100px">
+                <el-form-item label="审核结论:" prop="shjl">
+                  <el-radio v-model="ruleForm.shjl" label="1">
+                    申请通过
+                  </el-radio>
+                  <el-radio v-model="ruleForm.shjl" label="2">
+                    申请不通过
+                  </el-radio>
+                </el-form-item>
+                <el-form-item label="使用截止日期:" prop="jzrq">
+                  <el-date-picker
+                    v-model="ruleForm.jzrq"
+                    type="date"
+                    value-format="yyyy-MM-dd"
+                    placeholder="选择日期"
+                  >
+                  </el-date-picker>
+                  (默认一年)
+                </el-form-item>
+                <el-form-item label="审核意见:" prop="xmmc">
+                  <el-input
+                    v-model="ruleForm.xmmc"
+                    :rows="5"
+                    type="textarea"
+                    placeholder="描述"
+                  ></el-input>
+                </el-form-item>
+                <el-row :gutter="20" class="elrow">
+                  <el-col :span="12">
+                    <el-form-item label="审核时间" prop="shsj">
+                      <el-date-picker
+                        v-model="ruleForm.shsj"
+                        type="date"
+                        value-format="yyyy-MM-dd"
+                        placeholder="自动读取"
+                      >
+                      </el-date-picker>
+                    </el-form-item>
+                  </el-col>
+                  <el-col :span="12">
+                    <el-form-item label="审核人" prop="shr">
+                      <el-input
+                        v-model="ruleForm.shr"
+                        placeholder="自动读取"
+                      ></el-input>
+                    </el-form-item>
+                  </el-col>
+                </el-row>
+              </el-form>
+            </el-tab-pane>
+            <el-tab-pane label="审核记录" name="shjl">
+              <el-tabs
+                type="border-card"
+                class="xz_box"
+                v-model="activetime"
+                stretch
+              >
+                <el-tab-pane
+                  v-for="(il, i) in formData.list"
+                  :key="i"
+                  :label="il.time"
+                  :name="il.time"
+                >
+                  <CustomDetails :model="il" :config="shjlInfos">
+                  </CustomDetails>
+                </el-tab-pane>
+              </el-tabs>
+            </el-tab-pane>
+          </el-tabs>
+        </div>
+      </div>
+      <span slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="close">关闭</el-button>
+        <el-button type="primary" @click="submit">确 定</el-button>
+      </span>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import CustomDetails from "@/components/mapView/custom-detailsInfo.vue";
+import { shjlInfos } from "../../myApplication/config";
+import moment from "moment";
+export default {
+  components: {
+    CustomDetails,
+  },
+  props: {},
+  data() {
+    return {
+      radio: "1",
+
+      shjlInfos: shjlInfos,
+
+      modelType: "info",
+      formData: {},
+      ruleForm: {},
+      dialogVisible: false,
+      activeTabs: "sh",
+      activetime: "",
+    };
+  },
+  created() {},
+  methods: {
+    // 关闭弹窗
+    close() {
+      this.dialogVisible = false;
+      this.$emit("close");
+    },
+    Init(type, rowdata) {
+      this.dialogVisible = true;
+      this.activeTabs = "sh";
+      // this.modelType = type;
+      this.formData = rowdata;
+      if (this.formData.list && this.formData.list.length)
+        this.activetime = this.formData.list[0].time;
+      var dateTime = new Date().getFullYear();
+      this.ruleForm.jzrq = moment(
+        new Date(new Date().setFullYear(dateTime + 1))
+      ).format("YYYY-MM-DD");
+    },
+    generate() {},
+    async submit() {
+      this.close();
+    },
+  },
+};
+</script>
+
+<style lang="scss" scoped>
+.dialog {
+  .content {
+    height: 400px;
+    overflow-y: auto;
+    overflow-x: hidden;
+    color: #fff;
+    .create {
+      display: inline-block;
+      padding: 5px 10px;
+      border: 1px solid #3f93f5;
+      border-radius: 5px;
+      cursor: pointer;
+    }
+  }
+
+  .el-radio {
+    color: #fff;
+  }
+  .elrow {
+    margin-top: 10px;
+  }
+}
+</style>
+<style lang="scss" >
+</style>

+ 154 - 6
src/views/ResourceShare/myReview/index.vue

@@ -1,17 +1,165 @@
 <template>
-  <div>
-    我是我的审核
+  <div class="ghzc ResourceShare">
+    <div class="innerContainer" v-drag>
+      <custom-form ref="formRef" :model="model" :config="formConfig">
+        <template #time>
+          <el-date-picker
+            v-model="model.sj"
+            type="daterange"
+            value-format="yyyy-MM-dd"
+            range-separator="~"
+            start-placeholder="开始日期"
+            end-placeholder="结束日期"
+            class="datepicker"
+            size="mini"
+            @change="changedate"
+          >
+          </el-date-picker>
+        </template>
+        <template #type>
+          <el-select v-model="model.placeCode" placeholder="申请状态">
+            <el-option
+              v-for="item in optionList"
+              :key="item.code"
+              :label="item.name"
+              :value="item.code"
+            >
+            </el-option>
+          </el-select>
+        </template>
+        <template #action>
+          <!-- v-hasPermi="['monitor:job:add']" -->
+          <el-button size="mini" @click="getTableData">查询</el-button>
+          <el-button size="mini" @click="reset()">重置</el-button>
+        </template>
+      </custom-form>
+      <!-- :total="table.total"
+    :tableArrDate="table.data" -->
+      <customForm></customForm>
+      <tablePage
+        class="tablePage"
+        :cloumn="cloumn"
+        :table="table"
+        ref="tableDialogRef"
+        @currentChange="searchFun"
+      >
+        <template #apptype="{ row }">
+          <div :class="`type${row.type}`">{{ row.typeN }}</div>
+        </template>
+        <template #url="{ row }">
+          <div v-if="row.url" @click="copyText(row.url)">
+            {{ row.url }}
+            <i class="el-icon-document-copy usable"></i>
+          </div>
+        </template>
+        <template #action="{ row }">
+          <span class="usable" @click="detail(row)">申请详情</span>
+          <span :class="{ usable: row.type == 3 }" @click="review(row)"
+            >审核</span
+          >
+        </template>
+      </tablePage>
+    </div>
+    <addEdt ref="addEdtModal" @close="closeMdel"></addEdt>
+    <review ref="reviewModal" @close="closeMdel"></review>
   </div>
 </template>
 
 <script>
+// import Clipboard from "clipboard";
+import tablePage from "@/components/mapView/tablePage.vue";
+import customForm from "@/components/mapView/custom-form.vue";
+import addEdt from "../myApplication/components/addEdtModal.vue";
+import review from "./components/reviewModal";
+import { FormConfig, TableHeader } from "../myApplication/config";
 export default {
+  components: {
+    tablePage,
+    customForm,
+    addEdt,
+    review,
+  },
+  props: {},
   data() {
-    return {};
+    return {
+      model: {
+        carNo: "", //网格名称
+        regionCode: "", //地区编码
+        placeCode: "", //所属小区
+      },
+      formConfig: FormConfig,
+      tableData: null,
+      details: {},
+      cloumn: TableHeader,
+      table: {
+        data: [
+          { JGMC: "ssmdmm", type: 0, typeN: "正在审核" },
+          {
+            JGMC: "ssmdmm",
+            type: 1,
+            time: "2024/9/3",
+            typeN: "审核通过",
+            url: "snsd",
+            list: [
+              { time: "2024/9/3", jg: "申请通过" },
+              { time: "2024/8/13", jg: "申请通过" },
+            ],
+          },
+          {
+            JGMC: "ssmdmm",
+            type: 2,
+            typeN: "审核不通过",
+            list: [
+              { time: "2024/9/3", jg: "申请通过" },
+              { time: "2024/8/13", jg: "申请通过" },
+            ],
+          },
+          { JGMC: "ssmdmm", type: 3, typeN: "已撤回" },
+        ],
+        total: 0,
+      },
+    };
+  },
+  methods: {
+    async getTableData(params) {
+      let obj = {
+        jscType: store.state.cockpit_vector.tablejscType,
+        beginTime: store.state.cockpit_date[0],
+        endTime: store.state.cockpit_date[1],
+        id: store.state.cockpit_region.id,
+        ...params,
+      };
+      let data = await QueryList(obj);
+      this.active_dableData = data.data;
+      this.tableData = data.data;
+    },
+    // 详情
+    detail(row) {
+      this.$refs.addEdtModal.Init("info", row);
+    },
+    review(row) {
+      if (row.type == 3) this.$refs.reviewModal.Init("review", row);
+    },
+    copyText(text) {
+      this.$copyText(text).then(
+        () => {
+          this.$message.success("复制成功");
+        },
+        () => {
+          this.$message.error("该浏览器不支持自动复制");
+        }
+      );
+    },
+    closeMdel() {},
   },
+  computed: {},
+  watch: {},
+  mounted() {},
 };
 </script>
-
-<style lang="less" scoped>
-
+<style lang="scss" scoped>
+@import "../resource.scss";
+</style>
+<style lang="scss">
+@import "../../cockpit/datePicker.scss";
 </style>

+ 36 - 0
src/views/ResourceShare/resource.scss

@@ -0,0 +1,36 @@
+.ResourceShare {
+    width: 100%;
+    height: 100%;
+    background: #b6e0ff;
+    position: absolute;
+    z-index: 99;
+    .innerContainer {
+      width: 100%;
+      height: 100%;
+      position: absolute;
+      background: #041024;
+      z-index: 99;
+      top: 0px;
+      background-image: url("/static/images/homepage/00-底框.png");
+      background-size: 100% 100%;
+      padding: 20px;
+    }
+    .tablePage {
+      margin-top: 20px;
+      height: calc(100% - 100px);
+      .type0,
+      .type3 {
+        color: #e6a23c;
+      }
+      .type1 {
+        color: #67c23a;
+      }
+      .type2 {
+        color: #f56c6c;
+      }
+      .usable {
+        color: #3f93f5;
+        cursor: pointer;
+      }
+    }
+  }