فهرست منبع

Merge branch 'master' of https://git.cocorobo.cn/CocoRoboLabs/ssti-CollegeManage

yuanyiming 2 سال پیش
والد
کامیت
b70933066a
4فایلهای تغییر یافته به همراه407 افزوده شده و 215 حذف شده
  1. 3 0
      src/components/common/aws-sdk-2.235.1.min.js
  2. 122 0
      src/components/tool/beUpload.vue
  3. 251 215
      src/router/index.js
  4. 31 0
      src/views/test.vue

تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 3 - 0
src/components/common/aws-sdk-2.235.1.min.js


+ 122 - 0
src/components/tool/beUpload.vue

@@ -0,0 +1,122 @@
+<template>
+  <button class="info_btn" @click="addImg($event)">
+    {{ navName }}
+    <input
+      type="file"
+      :accept="acc"
+      style="display: none"
+      capture="camera"
+      @change="beforeUpload($event)"
+    />
+  </button>
+</template>
+
+<script>
+import "../common/aws-sdk-2.235.1.min.js";
+export default {
+  components: {},
+  props: [ 'navName','accept'],
+  data() {
+    return {
+      inputShow: true,
+      acc:"",
+    };
+  },
+ watch: {
+    accept: {
+      immediate: true,
+      deep: true,
+      handler(newValue, oldValue) {
+        this.getAccept();
+      },
+    },
+  },
+  methods: {
+    addImg(e) {
+      var el = e.currentTarget || e;
+      el.getElementsByTagName("input")[0].click();
+      e.target.value = "";
+    },
+    beforeUpload(event) {
+      // const loading = this.openLoading();
+      var file = event.target.files[0];
+      var credentials = {
+        accessKeyId: "AKIATLPEDU37QV5CHLMH",
+        secretAccessKey: "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",
+      }; //秘钥形式的登录上传
+      window.AWS.config.update(credentials);
+      window.AWS.config.region = "cn-northwest-1"; //设置区域
+      var bucket = new window.AWS.S3({
+        params: {
+          Bucket: "ccrb",
+        },
+      }); //选择桶
+      var _this = this;
+      if (file) {
+        var params = {
+          Key:
+            file.name.split(".")[0] +
+            new Date().getTime() +
+            "." +
+            file.name.split(".")[file.name.split(".").length - 1],
+          ContentType: file.type,
+          Body: file,
+          "Access-Control-Allow-Credentials": "*",
+          ACL: "public-read",
+        }; //key可以设置为桶的相抵路径,Body为文件, ACL最好要设置
+        var options = {
+          partSize: 2048 * 1024 * 1024,
+          queueSize: 2,
+          leavePartsOnError: true,
+        };
+        bucket
+          .upload(params, options)
+          .on("httpUploadProgress", function (evt) {
+            //这里可以写进度条
+            // console.log("Uploaded : " + parseInt((evt.loaded * 80) / evt.total) + '%');
+          })
+          .send(function (err, data) {
+            // loading.close();
+            _this.inputShow = true;
+            if (err) {
+              _this.$message.error("上传失败");
+            } else {
+                _this.$emit('getFile',data.Location)
+              console.log(data.Location);
+            }
+          });
+      }
+    },
+    getAccept(){
+        if(this.accept){
+            this.acc = this.accept;
+        }else{
+            this.acc = "*";
+        }
+    },
+  },
+  created(){
+    this.getAccept();
+  },
+};
+</script>
+
+<style scoped>
+.info_btn{
+  color: #fff;
+  background-color: #0f7eff;
+  padding: 8px 24px;
+  font-size: 0.9375rem;
+  box-shadow: 0px 1px 3px 0px rgb(0 0 0 / 20%), 0px 2px 2px 0px rgb(0 0 0 / 14%),
+    0px 3px 1px -2px rgb(0 0 0 / 12%);
+  min-width: 64px;
+  font-weight: 500;
+  border-radius: 4px;
+  box-sizing: border-box;
+  border: none;
+  cursor: pointer;
+}
+.info_btn:hover {
+  background-color: #4f7cd5 !important;
+}
+</style>

+ 251 - 215
src/router/index.js

@@ -3,223 +3,259 @@ import VueRouter from 'vue-router'
 
 Vue.use(VueRouter)
 
-const routes = [
-  {
-    path: '/',
-    redirect:'/projectApplication'
-  },
-  {
-    name:'login',
-    path:'/login',
-    component:()=>import('@/views/login.vue'), 
-    meta:{isAuth:false}
-  },
-  {  //项目立项申请
-    name:"projectApplicationApplyMain",
-    path:"/projectApplicationApplyMain",
-    component:()=>import('@/views/projectApply/projectApplicationApplyMain.vue'),
-    meta:{isAuth:true}
-  },
-  {  //活动管理
-    name:"makerActvityApplyMain",
-    path:"/makerActvityApplyMain",
-    component:()=>import('@/views/activityManage/makerActvityApplyMain.vue'),
-    meta:{isAuth:true}
-  },
- 
-  { //成果展示
-    name:'resultShowDetail',
-    path:'/resultShowDetail',
-    component:()=>import('@/views/resultShow/resultShowDetail.vue'),
-    meta:{isAuth:true}
-
-  },
-  {
-    name:'home',
-    path:'/home',
-    component:()=>import('@/views/home.vue'),
-    meta:{isAuth:true},
-
-    children:[
-      { //创客活动
-        name:'makerActvity',
-        path:'/makerActvity',
-        component:()=>import('@/views/activityManage/makerActvity.vue'),
-        meta:{isAuth:true}
-
-      },
-      { //创客活动详情
-        name:'makerActvityDetails',
-        path:'/makerActvityDetails',
-        component:()=>import('@/views/activityManage/makerActvityDetails.vue'),
-        meta:{isAuth:true}
-      },
-      { //项目立项申请
-        name:'projectApplication',
-        path:'/projectApplication',
-        component:()=>import('@/views/projectApply/projectApplication.vue'),
-        meta:{isAuth:true}
-
-      },
-      {
-        name:'projectApplicationDetails',
-        path:'/projectApplicationDetails',
-        component:()=>import('@/views/projectApply/projectApplicationDetails.vue'),
-        meta:{isAuth:true}
-
-      },
-      {
-        name:'projectApplication2',
-        path:'/projectApplication2',
-        component:()=>import('@/views/projectApply/projectApplication2.vue'),
-        meta:{isAuth:true}
-
-      },
-      { //学分登记
-        name:'credit',
-        path:'/credit',
-        component:()=>import('@/views/credit/credit.vue'),
-        meta:{isAuth:true}
-
-      },
-      { //学分登记
-        name:'credit1',
-        path:'/credit1',
-        component:()=>import('@/views/credit/credit1.vue'),
-        meta:{isAuth:true}
-
-      },
-      { //创业公司登记
-        name:'firm',
-        path:'/firm',
-        component:()=>import('@/views/firm.vue'),
-        meta:{isAuth:true}
-
-      },
-      { //创客资金
-        name:'makerfund',
-        path:'/makerfund',
-        component:()=>import('@/views/fundManage/makerfund.vue'),
-        meta:{isAuth:true}
-
-      },
-      { //创客资金
-        name:'makerfundApply',
-        path:'/makerfundApply',
-        component:()=>import('@/views/fundManage/makerfundApply.vue'),
-        meta:{isAuth:true}
-
-      },
-      { //创客资金
-        name:'makerfundDetails',
-        path:'/makerfundDetails',
-        component:()=>import('@/views/fundManage/makerfundDetails.vue'),
-        meta:{isAuth:true}
-
-      },
-      { //消息通知
-        name:'messageNotification',
-        path:'/messageNotification',
-        component:()=>import('@/views/messageNotification.vue'),
-        meta:{isAuth:true}
-
-      },
-      { //项目管理
-        name:'ProjectManagement',
-        path:'/ProjectManagement',
-        component:()=>import('@/views/projectManage/ProjectManagement.vue'),
-        meta:{isAuth:true}
-
-      },
-      { //项目管理
-        name:'ProjectManagement2',
-        path:'/ProjectManagement2',
-        component:()=>import('@/views/projectManage/ProjectManagement2.vue'),
-        meta:{isAuth:true}
-
-      },
-      { //项目管理
-        name:'ProjectManagement3',
-        path:'/ProjectManagement3',
-        component:()=>import('@/views/projectManage/ProjectManagement3.vue'),
-        meta:{isAuth:true}
-
-      },
-      { //项目管理
-        name:'ProjectManagement4',
-        path:'/ProjectManagement4',
-        component:()=>import('@/views/projectManage/ProjectManagement4.vue'),
-        meta:{isAuth:true}
-      },
-      {
-        name:'ProjectManagement3_1',
-        path:'/ProjectManagement3_1',
-        component:()=>import('@/views/projectManage/ProjectManagement3_1.vue'),
-        meta:{isAuth:true}
-      },
-      { //项目管理
-        name:'ProjectManagement5',
-        path:'/ProjectManagement5',
-        component:()=>import('@/views/projectManage/ProjectManagement5.vue'),
-        meta:{isAuth:true}
-
-      },
-      { //项目管理
-        name:'ProjectManagement1',
-        path:'/ProjectManagement1',
-        component:()=>import('@/views/projectManage/ProjectManagement1.vue'),
-        meta:{isAuth:true}
-
-      },
-      { //项目资金管理
-        name:'ProjectManagementFund1',
-        path:'/ProjectManagementFund1',
-        component:()=>import('@/views/projectManage/ProjectManagementFund1.vue'),
-        meta:{isAuth:true}
-
-      },
-      { //项目资金管理
-        name:'ProjectManagementFund2',
-        path:'/ProjectManagementFund2',
-        component:()=>import('@/views/projectManage/ProjectManagementFund2.vue'),
-        meta:{isAuth:true}
-
-      },
-      { //项目结项
-        name:'projectSettlement',
-        path:'/projectSettlement',
-        component:()=>import('@/views/projectSettlement/projectSettlement.vue'),
-        meta:{isAuth:true}
-
-      },
-      { //项目结项
-        name:'projectSettlement1',
-        path:'/projectSettlement1',
-        component:()=>import('@/views/projectSettlement/projectSettlement1.vue'),
-        meta:{isAuth:true}
-
-      },
-      { //项目结项
-        name:'projectSettlement2',
-        path:'/projectSettlement2',
-        component:()=>import('@/views/projectSettlement/projectSettlement2.vue'),
-        meta:{isAuth:true}
-
-      },
-      { //成果展示
-        name:'resultsShow',
-        path:'/resultsShow',
-        component:()=>import('@/views/resultShow/resultsShow.vue'),
-        meta:{isAuth:true}
-
-      },
-      
-    ]
-  }
+const routes = [{
+        path: '/',
+        redirect: '/projectApplication'
+    },
+    {
+        name: 'login',
+        path: '/login',
+        component: () =>
+            import ('@/views/login.vue'),
+        meta: { isAuth: false }
+    },
+    { //项目立项申请
+        name: "projectApplicationApplyMain",
+        path: "/projectApplicationApplyMain",
+        component: () =>
+            import ('@/views/projectApply/projectApplicationApplyMain.vue'),
+        meta: { isAuth: true }
+    },
+    { //活动管理
+        name: "makerActvityApplyMain",
+        path: "/makerActvityApplyMain",
+        component: () =>
+            import ('@/views/activityManage/makerActvityApplyMain.vue'),
+        meta: { isAuth: true }
+    },
+
+    { //成果展示
+        name: 'resultShowDetail',
+        path: '/resultShowDetail',
+        component: () =>
+            import ('@/views/resultShow/resultShowDetail.vue'),
+        meta: { isAuth: true }
+
+    },
+    { //创客活动
+        name: 'test',
+        path: '/test',
+        component: () =>
+            import ('@/views/test.vue'),
+        meta: { isAuth: true }
+
+    },
+    {
+        name: 'home',
+        path: '/home',
+        component: () =>
+            import ('@/views/home.vue'),
+        meta: { isAuth: true },
+
+        children: [{ //创客活动
+                name: 'makerActvity',
+                path: '/makerActvity',
+                component: () =>
+                    import ('@/views/activityManage/makerActvity.vue'),
+                meta: { isAuth: true }
+
+            },
+            { //创客活动详情
+                name: 'makerActvityDetails',
+                path: '/makerActvityDetails',
+                component: () =>
+                    import ('@/views/activityManage/makerActvityDetails.vue'),
+                meta: { isAuth: true }
+            },
+            { //项目立项申请
+                name: 'projectApplication',
+                path: '/projectApplication',
+                component: () =>
+                    import ('@/views/projectApply/projectApplication.vue'),
+                meta: { isAuth: true }
+
+            },
+            {
+                name: 'projectApplicationDetails',
+                path: '/projectApplicationDetails',
+                component: () =>
+                    import ('@/views/projectApply/projectApplicationDetails.vue'),
+                meta: { isAuth: true }
+
+            },
+            {
+                name: 'projectApplication2',
+                path: '/projectApplication2',
+                component: () =>
+                    import ('@/views/projectApply/projectApplication2.vue'),
+                meta: { isAuth: true }
+
+            },
+            { //学分登记
+                name: 'credit',
+                path: '/credit',
+                component: () =>
+                    import ('@/views/credit/credit.vue'),
+                meta: { isAuth: true }
+
+            },
+            { //学分登记
+                name: 'credit1',
+                path: '/credit1',
+                component: () =>
+                    import ('@/views/credit/credit1.vue'),
+                meta: { isAuth: true }
+
+            },
+            { //创业公司登记
+                name: 'firm',
+                path: '/firm',
+                component: () =>
+                    import ('@/views/firm.vue'),
+                meta: { isAuth: true }
+
+            },
+            { //创客资金
+                name: 'makerfund',
+                path: '/makerfund',
+                component: () =>
+                    import ('@/views/fundManage/makerfund.vue'),
+                meta: { isAuth: true }
+
+            },
+            { //创客资金
+                name: 'makerfundApply',
+                path: '/makerfundApply',
+                component: () =>
+                    import ('@/views/fundManage/makerfundApply.vue'),
+                meta: { isAuth: true }
+
+            },
+            { //创客资金
+                name: 'makerfundDetails',
+                path: '/makerfundDetails',
+                component: () =>
+                    import ('@/views/fundManage/makerfundDetails.vue'),
+                meta: { isAuth: true }
+
+            },
+            { //消息通知
+                name: 'messageNotification',
+                path: '/messageNotification',
+                component: () =>
+                    import ('@/views/messageNotification.vue'),
+                meta: { isAuth: true }
+
+            },
+            { //项目管理
+                name: 'ProjectManagement',
+                path: '/ProjectManagement',
+                component: () =>
+                    import ('@/views/projectManage/ProjectManagement.vue'),
+                meta: { isAuth: true }
+
+            },
+            { //项目管理
+                name: 'ProjectManagement2',
+                path: '/ProjectManagement2',
+                component: () =>
+                    import ('@/views/projectManage/ProjectManagement2.vue'),
+                meta: { isAuth: true }
+
+            },
+            { //项目管理
+                name: 'ProjectManagement3',
+                path: '/ProjectManagement3',
+                component: () =>
+                    import ('@/views/projectManage/ProjectManagement3.vue'),
+                meta: { isAuth: true }
+
+            },
+            { //项目管理
+                name: 'ProjectManagement4',
+                path: '/ProjectManagement4',
+                component: () =>
+                    import ('@/views/projectManage/ProjectManagement4.vue'),
+                meta: { isAuth: true }
+            },
+            {
+                name: 'ProjectManagement3_1',
+                path: '/ProjectManagement3_1',
+                component: () =>
+                    import ('@/views/projectManage/ProjectManagement3_1.vue'),
+                meta: { isAuth: true }
+            },
+            { //项目管理
+                name: 'ProjectManagement5',
+                path: '/ProjectManagement5',
+                component: () =>
+                    import ('@/views/projectManage/ProjectManagement5.vue'),
+                meta: { isAuth: true }
+
+            },
+            { //项目管理
+                name: 'ProjectManagement1',
+                path: '/ProjectManagement1',
+                component: () =>
+                    import ('@/views/projectManage/ProjectManagement1.vue'),
+                meta: { isAuth: true }
+
+            },
+            { //项目资金管理
+                name: 'ProjectManagementFund1',
+                path: '/ProjectManagementFund1',
+                component: () =>
+                    import ('@/views/projectManage/ProjectManagementFund1.vue'),
+                meta: { isAuth: true }
+
+            },
+            { //项目资金管理
+                name: 'ProjectManagementFund2',
+                path: '/ProjectManagementFund2',
+                component: () =>
+                    import ('@/views/projectManage/ProjectManagementFund2.vue'),
+                meta: { isAuth: true }
+
+            },
+            { //项目结项
+                name: 'projectSettlement',
+                path: '/projectSettlement',
+                component: () =>
+                    import ('@/views/projectSettlement/projectSettlement.vue'),
+                meta: { isAuth: true }
+
+            },
+            { //项目结项
+                name: 'projectSettlement1',
+                path: '/projectSettlement1',
+                component: () =>
+                    import ('@/views/projectSettlement/projectSettlement1.vue'),
+                meta: { isAuth: true }
+
+            },
+            { //项目结项
+                name: 'projectSettlement2',
+                path: '/projectSettlement2',
+                component: () =>
+                    import ('@/views/projectSettlement/projectSettlement2.vue'),
+                meta: { isAuth: true }
+
+            },
+            { //成果展示
+                name: 'resultsShow',
+                path: '/resultsShow',
+                component: () =>
+                    import ('@/views/resultShow/resultsShow.vue'),
+                meta: { isAuth: true }
+
+            },
+
+        ]
+    }
 ]
 
 const router = new VueRouter({
-  routes,
+    routes,
 })
 
 // router.beforeEach((to,from,next)=>{
@@ -252,4 +288,4 @@ const router = new VueRouter({
 //   }
 // });
 
-export default router
+export default router

+ 31 - 0
src/views/test.vue

@@ -0,0 +1,31 @@
+<template>
+<!-- 测试上传组件 -->
+    <div>
+        <div>
+            <BeUpload @getFile="getFile" :navName="'测试按钮'" :accept="accept"></BeUpload>
+        </div>
+    </div>
+
+</template>
+
+<script>
+import BeUpload from "../components/tool/beUpload.vue";
+export default {
+  components: {
+    BeUpload,
+  },
+  data(){
+    return{
+        accept:"*",
+    }
+  },
+  methods: {
+    getFile(val) {
+        console.log( val);
+    }
+  },
+};
+</script>
+
+<style>
+</style>

برخی فایل ها در این مقایسه diff نمایش داده نمی شوند زیرا تعداد فایل ها بسیار زیاد است