浏览代码

总体规划、村庄规划基本信息保存展示

wanger 4 月之前
父节点
当前提交
24b1564e20

+ 40 - 34
website/src/components/ghcgscygl/ghcgsb/ztgh/ghcgDialog.vue

@@ -28,6 +28,39 @@
               </el-option>
             </el-select> </el-form-item
         ></el-col>
+        <el-col>
+          <el-form-item
+            label="上传成果包:"
+            prop="file"
+            style="position: relative; font-weight: 600"
+          >
+            <el-input style="width: 90%" autocomplete="off" readonly></el-input>
+            <el-upload
+              action="#"
+              :http-request="addFileToFormData"
+              v-model:file-list="fileList"
+            >
+              <!-- // 去掉边框// 去掉点击按钮后的边框 -->
+              <el-button
+                slot="trigger"
+                type="primary"
+                style="
+                  height: 90%;
+                  padding: 0;
+                  position: absolute;
+                  top: 1px;
+                  right: 45px;
+                  background-color: #fff;
+                  color: #169bd5;
+                  border: none;
+                  outline: none;
+                "
+                @click="upload"
+                >选择</el-button
+              ></el-upload
+            >
+          </el-form-item>
+        </el-col>
         <el-col>
           <el-form-item label="成果名称:" prop="name">
             <el-input
@@ -92,39 +125,6 @@
             ></el-input>
           </el-form-item>
         </el-col>
-        <el-col>
-          <el-form-item
-            label="上传成果包:"
-            prop="file"
-            style="position: relative; font-weight: 600"
-          >
-            <el-input style="width: 90%" autocomplete="off" readonly></el-input>
-            <el-upload
-              action="#"
-              :http-request="addFileToFormData"
-              v-model:file-list="fileList"
-            >
-              <!-- // 去掉边框// 去掉点击按钮后的边框 -->
-              <el-button
-                slot="trigger"
-                type="primary"
-                style="
-                  height: 90%;
-                  padding: 0;
-                  position: absolute;
-                  top: 1px;
-                  right: 45px;
-                  background-color: #fff;
-                  color: #169bd5;
-                  border: none;
-                  outline: none;
-                "
-                @click="upload"
-                >选择</el-button
-              ></el-upload
-            >
-          </el-form-item>
-        </el-col>
         <el-col>
           <el-form-item label="报批单位:" prop="bpdw">
             <el-input
@@ -331,7 +331,13 @@ export default {
                   parent.emit("refresh");
                   ElMessage.success("添加成果成功");
                 } else {
-                  ElMessage.error(res.message);
+                  // ElMessage.error(res.message);
+                  this.$message({
+                    type: "error",
+                    message: res.message,
+                    showClose: true,
+                    duration: 0,
+                  });
                 }
               });
             } else {

+ 6 - 40
website/src/permission.js

@@ -13,7 +13,7 @@ import NProgress from 'nprogress'
 import 'nprogress/nprogress.css'
 import { getToken } from '@/utils/auth'
 import { isHttp } from '@/utils/validate'
-import { checkToken, currentUserInfo, validateTicket, SsoLogout } from "@/api/login";
+import { checkToken, currentUserInfo } from "@/api/login";
 
 
 NProgress.configure({ showSpinner: false });
@@ -61,50 +61,17 @@ router.beforeEach((to, from, next) => {
                         })
                         .catch((e) => {
                             console.log('认证登录失败:');
-                            next(SSOExitUrl) // 否则全部重定向到登录页
+                            next(`/login?redirect=/`) // 否则全部重定向到登录页
                         });
                 })
                 .catch((e) => {
                     console.log('用户信息获取失败');
-                    next(SSOExitUrl) // 否则全部重定向到登录页
+                    next(`/login?redirect=/`) // 否则全部重定向到登录页
                 });
         }).catch(e => {
             console.log('Token过期,请重新登录!');
-            next(SSOExitUrl) // 否则全部重定向到登录页
+            next(`/login?redirect=/`) // 否则全部重定向到登录页
         })
-    } else if (to.query && to.query.ticket) { //TODO wanger 对接基础信息平台
-        // 通过ticket获取登录用户信息
-        validateTicket(to.query.ticket).then(res => {
-                console.log('用户信息获取成功:' + JSON.stringify(res.data));
-                // 获取username
-                let username = res.data.account;
-                // 调用action的登录方法,进行自动认证登录
-                console.log('开始自动认证登录');
-                store.dispatch("LoginNew", username)
-                    .then(() => {
-                        store.commit("SET_SUPERUSER", username);
-                        next("/")
-                    })
-                    .catch((e) => {
-                        console.log('认证登录失败:');
-                        next(SSOExitUrl) // 否则全部重定向到登录页
-                    });
-            })
-            .catch((e) => {
-                console.log('用户信息获取失败');
-                next(SSOExitUrl) // 否则全部重定向到登录页
-            });
-    } else if (to.query && to.query.logout) { //TODO wanger 对接基础信息平台
-        store.dispatch("LogOut").then(() => {});
-        // 获取Token对应登录用户信息
-        SsoLogout().then(res => {
-                console.log('单点登录退出成功');
-                next(SSOUrl) // 否则全部重定向到登录页
-            })
-            .catch((e) => {
-                console.log('单点登录退出失败');
-                next(SSOExitUrl) // 否则全部重定向到登录页
-            });
     } else {
         if (getToken()) {
 
@@ -153,7 +120,7 @@ router.beforeEach((to, from, next) => {
                             console.log('Token过期,请重新登录!');
                             store.commit("SET_SUPERUSER", "");
                             store.commit("SET_SUPERTOKEN", "");
-                            next(SSOExitUrl) // 否则全部重定向到登录页
+                            next(`/login?redirect=/`) // 否则全部重定向到登录页
                             return
                         })
                     } else {
@@ -173,8 +140,7 @@ router.beforeEach((to, from, next) => {
                 // 在免登录白名单,直接进入
                 next()
             } else {
-                window.location = JcptSSOExitUrl;
-                // next(`/login?redirect=${to.path}`) // 否则全部重定向到登录页
+                next(`/login?redirect=${to.path}`) // 否则全部重定向到登录页
                 NProgress.done()
             }
         }

+ 75 - 3
website/src/views/ghcgscygl/ghcgsb/xxgh/Czgh/Qxyh.vue

@@ -151,6 +151,15 @@
             <template #default="scope">
               <div class="max-width">
                 <slot name="xq" :item="scope.row">
+                  <el-button
+                    type="text"
+                    v-if="scope.row.bz"
+                    class="caozuo"
+                    @click="xmDetail(scope.row.bz)"
+                    >详情</el-button
+                  >
+                </slot>
+                <!-- <slot name="xq" :item="scope.row">
                   <el-button
                     type="text"
                     class="caozuo"
@@ -160,7 +169,7 @@
                     "
                     >详情</el-button
                   >
-                </slot>
+                </slot> -->
                 <slot name="bj">
                   <el-button
                     type="text"
@@ -208,6 +217,15 @@
                     >下载</el-button
                   >
                 </slot>
+                <slot name="rz">
+                  <el-button
+                    type="text"
+                    class="caozuo"
+                    v-if="scope.row.msg"
+                    @click="showRzDialog(scope.row.msg)"
+                    >日志</el-button
+                  >
+                </slot>
                 <slot name="sc">
                   <el-button
                     type="text"
@@ -329,6 +347,32 @@
       @getlist="getlist"
       v-model:cgb="activeCgb"
     ></CzghbjDialog>
+    <el-dialog
+      v-model="xmDetailDialogVisible"
+      :title="xmDetailDialogTitle"
+      :before-close="handleClose"
+      :align-center="true"
+      style="
+        white-space: initial;
+        overflow: hidden;
+        width: 850px;
+        height: 600px;
+      "
+    >
+      <el-descriptions
+        column="2"
+        border="true"
+        style="overflow-y: auto; width: 100%; height: 500px"
+      >
+        <el-descriptions-item
+          v-for="(value, key) in xmDetailInfo"
+          :key="key"
+          :label="key"
+        >
+          {{ value }}
+        </el-descriptions-item>
+      </el-descriptions>
+    </el-dialog>
   </div>
 </template>
 
@@ -353,6 +397,9 @@ export default {
     const { proxy } = getCurrentInstance();
     const parent = { ...context };
     const qxyh = reactive({
+      xmDetailDialogVisible: false,
+      xmDetailDialogTitle: "基本信息",
+      xmDetailInfo: {},
       formInline: {
         xzqCode: "", // 行政区代码
         xzqName: "", // 行政区名称
@@ -399,6 +446,19 @@ export default {
       index: "",
       uuidList: [],
       uuidList1: "",
+      xmDetail(detail) {
+        try {
+          let info = JSON.parse(detail);
+          console.log(info);
+          qxyh.xmDetailDialogVisible = true;
+          qxyh.xmDetailInfo = info;
+        } catch {
+          this.$alert(detail, "详情", {
+            confirmButtonText: "关闭",
+            type: "warning",
+          });
+        }
+      },
       handleSizeChange(val) {
         qxyh.formInline.limit = val;
         qxyh.getlist();
@@ -481,6 +541,18 @@ export default {
         qxyh.startjqscVisible = true;
         qxyh.jqscform.cgid = row.uuid;
       },
+      showRzDialog(msg) {
+        this.$alert(msg, "上报日志", {
+          confirmButtonText: "关闭",
+          type: "warning",
+          // callback: (action) => {
+          //   this.$message({
+          //     type: "info",
+          //     message: `action: ${action}`,
+          //   });
+          // },
+        });
+      },
       startsc() {
         this.$refs.jqscformModel.validate(function (valid, msg) {
           if (valid) {
@@ -586,12 +658,12 @@ export default {
         proxy.download(
           "/apply/xzczghcgsb/downloadZip",
           params,
-          getFileName(qxyh.tableData[index].filePath)
+          getFileName(qxyh.tableData[index].filePath),
         );
       },
       // 获取列表数据
       getlist() {
-        qxyh.formInline.xzq_code = qxyh.formInline.xzqCode
+        qxyh.formInline.xzq_code = qxyh.formInline.xzqCode;
         Getlist(qxyh.formInline).then((res) => {
           qxyh.tableData = res.data;
           qxyh.formInline.total = res.recordstotal;

+ 67 - 4
website/src/views/ghcgscygl/ghcgsb/ztgh/Qxjghcg/Qxyh.vue

@@ -124,7 +124,7 @@
           </el-table-column>
           <el-table-column prop="instid" label="补正流程主键" align="center">
           </el-table-column>
-          <el-table-column
+          <!-- <el-table-column
             v-if="$store.getters.roles.indexOf('shiji') === -1"
             prop="fileupload"
             label="上传状态"
@@ -147,7 +147,7 @@
                 >上传失败</el-tag
               >
             </template>
-          </el-table-column>
+          </el-table-column> -->
           <el-table-column prop="uploadtime" label="上报时间" align="center">
           </el-table-column>
           <el-table-column prop="uploadstatus" label="上报状态" align="center">
@@ -197,9 +197,9 @@
                 <slot name="xq" :item="scope.row">
                   <el-button
                     type="text"
+                    v-if="scope.row.fileuploadremark"
                     class="caozuo"
-                    @click="detail(scope.row)"
-                    :disabled="!scope.row.fileid"
+                    @click="xmDetail(scope.row.fileuploadremark)"
                     >详情</el-button
                   >
                 </slot>
@@ -276,6 +276,15 @@
                     >下载</el-button
                   >
                 </slot>
+                <slot name="rz">
+                  <el-button
+                    type="text"
+                    class="caozuo"
+                    v-if="scope.row.loginfo"
+                    @click="showRzDialog(scope.row.loginfo)"
+                    >日志</el-button
+                  >
+                </slot>
                 <slot
                   name="sc"
                   v-if="$store.getters.roles.indexOf('qixian') > -1"
@@ -437,6 +446,32 @@
       v-model:sbjdDialog="sbjdDialog"
       v-model:cgDetail="activeCg"
     ></SbjdDialog>
+    <el-dialog
+      v-model="xmDetailDialogVisible"
+      :title="xmDetailDialogTitle"
+      :before-close="handleClose"
+      :align-center="true"
+      style="
+        white-space: initial;
+        overflow: hidden;
+        width: 850px;
+        height: 600px;
+      "
+    >
+      <el-descriptions
+        column="2"
+        border="true"
+        style="overflow-y: auto; width: 100%; height: 500px"
+      >
+        <el-descriptions-item
+          v-for="(value, key) in xmDetailInfo"
+          :key="key"
+          :label="key"
+        >
+          {{ value }}
+        </el-descriptions-item>
+      </el-descriptions>
+    </el-dialog>
   </div>
   <errorLog
     v-model:dialogLog="dialogLog"
@@ -488,6 +523,9 @@ export default {
     );
     const qxyh = reactive({
       cascader: ref(null),
+      xmDetailDialogVisible: false,
+      xmDetailDialogTitle: "基本信息",
+      xmDetailInfo: {},
       startjqscVisible: false,
       formLabelWidth: "120px",
       jqscform: {
@@ -571,6 +609,19 @@ export default {
       editStatus: "",
       editId: "",
       name: "",
+      xmDetail(detail) {
+        try {
+          let info = JSON.parse(detail);
+          console.log(info);
+          qxyh.xmDetailDialogVisible = true;
+          qxyh.xmDetailInfo = info;
+        } catch {
+          this.$alert(detail, "详情", {
+            confirmButtonText: "关闭",
+            type: "warning",
+          });
+        }
+      },
       getPlantype(plantype) {
         for (let i = 0; i < qxyh.plantypeoptions.length; i++) {
           if (qxyh.plantypeoptions[i].value == plantype) {
@@ -608,6 +659,18 @@ export default {
         qxyh.startjqscVisible = true;
         qxyh.jqscform.cgid = row.id;
       },
+      showRzDialog(msg) {
+        this.$alert(msg, "上报日志", {
+          confirmButtonText: "关闭",
+          type: "warning",
+          // callback: (action) => {
+          //   this.$message({
+          //     type: "info",
+          //     message: `action: ${action}`,
+          //   });
+          // },
+        });
+      },
       startsc() {
         this.$refs.jqscformModel.validate(function (valid, msg) {
           if (valid) {

+ 67 - 5
website/src/views/ghcgscygl/ghcgsb/ztgh/Sjghcg.vue

@@ -119,7 +119,7 @@
           </el-table-column>
           <el-table-column prop="instid" label="补正流程主键" align="center">
           </el-table-column>
-          <el-table-column prop="fileupload" label="上传状态" align="center">
+          <!-- <el-table-column prop="fileupload" label="上传状态" align="center">
             <template #default="scope">
               <el-tag
                 v-if="
@@ -137,7 +137,7 @@
                 >上传失败</el-tag
               >
             </template>
-          </el-table-column>
+          </el-table-column> -->
           <el-table-column prop="uploadtime" label="上报时间" align="center">
           </el-table-column>
           <el-table-column prop="uploadstatus" label="上报状态" align="center">
@@ -190,9 +190,9 @@
                 <slot name="xq" :item="scope.row">
                   <el-button
                     type="text"
+                    v-if="scope.row.fileuploadremark"
                     class="caozuo"
-                    @click="detail(scope.row)"
-                    :disabled="!scope.row.fileid"
+                    @click="xmDetail(scope.row.fileuploadremark)"
                     >详情</el-button
                   >
                 </slot>
@@ -268,6 +268,15 @@
                     >下载</el-button
                   >
                 </slot>
+                <slot name="rz">
+                  <el-button
+                    type="text"
+                    class="caozuo"
+                    v-if="scope.row.loginfo"
+                    @click="showRzDialog(scope.row.loginfo)"
+                    >日志</el-button
+                  >
+                </slot>
                 <slot name="sc">
                   <el-button
                     v-if="$store.getters.roles.indexOf('shiji') > -1"
@@ -428,13 +437,38 @@
       v-model:rkxxDialog="rkxxDialog"
       v-model:cgDetail="activeCg"
     ></RkDialog>
+    <el-dialog
+      v-model="xmDetailDialogVisible"
+      :title="xmDetailDialogTitle"
+      :before-close="handleClose"
+      :align-center="true"
+      style="
+        white-space: initial;
+        overflow: hidden;
+        width: 850px;
+        height: 600px;
+      "
+    >
+      <el-descriptions
+        column="2"
+        border="true"
+        style="overflow-y: auto; width: 100%; height: 500px"
+      >
+        <el-descriptions-item
+          v-for="(value, key) in xmDetailInfo"
+          :key="key"
+          :label="key"
+        >
+          {{ value }}
+        </el-descriptions-item>
+      </el-descriptions>
+    </el-dialog>
   </div>
   <Scjg
     v-model:showTypeInfo="showTypeInfo"
     v-else-if="showTypeInfo.type === 'scjg'"
     :act_tab="'sj'"
   ></Scjg>
-
   <errorLog
     v-model:dialogLog="dialogLog"
     v-model:logData="logData"
@@ -478,6 +512,9 @@ export default {
 
     const sjghcg = reactive({
       cascader: ref(null),
+      xmDetailDialogVisible: false,
+      xmDetailDialogTitle: "基本信息",
+      xmDetailInfo: {},
       startjqscVisible: false,
       formLabelWidth: "120px",
       jqscform: {
@@ -566,6 +603,19 @@ export default {
       editId: "",
       name: "",
       loading: {},
+      xmDetail(detail) {
+        try {
+          let info = JSON.parse(detail);
+          console.log(info);
+          sjghcg.xmDetailDialogVisible = true;
+          sjghcg.xmDetailInfo = info;
+        } catch {
+          this.$alert(detail, "详情", {
+            confirmButtonText: "关闭",
+            type: "warning",
+          });
+        }
+      },
       getPlantype(plantype) {
         for (let i = 0; i < sjghcg.plantypeoptions.length; i++) {
           if (sjghcg.plantypeoptions[i].value == plantype) {
@@ -598,6 +648,18 @@ export default {
         sjghcg.startjqscVisible = true;
         sjghcg.jqscform.cgid = row.id;
       },
+      showRzDialog(msg) {
+        this.$alert(msg, "上报日志", {
+          confirmButtonText: "关闭",
+          type: "warning",
+          // callback: (action) => {
+          //   this.$message({
+          //     type: "info",
+          //     message: `action: ${action}`,
+          //   });
+          // },
+        });
+      },
       startsc() {
         this.$refs.jqscformModel.validate(function (valid, msg) {
           if (valid) {