chao преди 1 година
родител
ревизия
689c1b1433

+ 1 - 1
dist/assets/Details-55S9YJ-8.js → dist/assets/Details-vhGmpWwf.js

@@ -1 +1 @@
-import{u as m,r as i,o as p,a as r,b as a,c as t,w as o,d as c,e as u,t as b,f,g as h,C as v,h as k,P as y,i as g,j as C}from"./index-2dErOktZ.js";const x={class:"iframDiv"},w={__name:"Details",setup(N){const{query:n,params:s}=m();console.log(n,s);const e=i("");return p(()=>{e.value=s.title}),(V,B)=>{const l=r("el-breadcrumb-item"),_=r("el-breadcrumb"),d=r("el-page-header");return a(),t(d,null,{breadcrumb:o(()=>[c(_,{separator:"/"},{default:o(()=>[c(l,{to:{path:"/"}},{default:o(()=>[u(" 首页 ")]),_:1}),c(l,null,{default:o(()=>[u(b(f(s).title),1)]),_:1})]),_:1})]),default:o(()=>[h("div",x,[e.value=="课程列表"?(a(),t(v,{key:0})):e.value=="资源中心"?(a(),t(k,{key:1})):e.value=="实践中心"?(a(),t(y,{key:2})):e.value=="其他课程资源"?(a(),t(g,{key:3})):C("",!0)])]),_:1})}}};export{w as default};
+import{u as m,r as i,o as p,a as r,b as a,c as t,w as o,d as c,e as u,t as b,f,g as h,C as v,h as k,P as y,i as g,j as C}from"./index-Mnn_AMKp.js";const x={class:"iframDiv"},w={__name:"Details",setup(N){const{query:n,params:s}=m();console.log(n,s);const e=i("");return p(()=>{e.value=s.title}),(V,B)=>{const l=r("el-breadcrumb-item"),_=r("el-breadcrumb"),d=r("el-page-header");return a(),t(d,null,{breadcrumb:o(()=>[c(_,{separator:"/"},{default:o(()=>[c(l,{to:{path:"/"}},{default:o(()=>[u(" 首页 ")]),_:1}),c(l,null,{default:o(()=>[u(b(f(s).title),1)]),_:1})]),_:1})]),default:o(()=>[h("div",x,[e.value=="课程列表"?(a(),t(v,{key:0})):e.value=="资源中心"?(a(),t(k,{key:1})):e.value=="实践中心"?(a(),t(y,{key:2})):e.value=="其他课程资源"?(a(),t(g,{key:3})):C("",!0)])]),_:1})}}};export{w as default};

+ 1 - 1
dist/assets/admin-w4bMrFop.js → dist/assets/admin-Lpd_wvRF.js

@@ -1 +1 @@
-import{_ as d,k as _,r as a,b as c,l as s,p as n,m as i,g as t,d as p}from"./index-2dErOktZ.js";const l=e=>(n("data-v-5156346f"),e=e(),i(),e),u={class:"adminStudent"},f=l(()=>t("div",{style:{width:"100%",height:"100%"}},[t("iframe",{src:"//beta.pbl.cocorobo.cn/pbl-teacher-table/dist/#/works?userid=a77e9404-efec-11e9-96f9-028edca3b798&oid=45facc0a-1211-11ec-80ad-005056b86db5&org=",frameborder:"0",allow:"camera *; fullscreen *;fullscreen 'src'"})],-1)),m=[f],h={__name:"adminStudent",setup(e){return _({user:"",region:"",date:""}),a(0),a(5),a(4),a(10),(o,r)=>(c(),s("div",u,m))}},b=d(h,[["__scopeId","data-v-5156346f"]]),S={__name:"admin",setup(e){return(o,r)=>(c(),s("div",null,[p(b)]))}};export{S as default};
+import{_ as d,k as _,r as a,b as c,l as s,p as n,m as i,g as t,d as p}from"./index-Mnn_AMKp.js";const l=e=>(n("data-v-5156346f"),e=e(),i(),e),u={class:"adminStudent"},f=l(()=>t("div",{style:{width:"100%",height:"100%"}},[t("iframe",{src:"//beta.pbl.cocorobo.cn/pbl-teacher-table/dist/#/works?userid=a77e9404-efec-11e9-96f9-028edca3b798&oid=45facc0a-1211-11ec-80ad-005056b86db5&org=",frameborder:"0",allow:"camera *; fullscreen *;fullscreen 'src'"})],-1)),m=[f],h={__name:"adminStudent",setup(e){return _({user:"",region:"",date:""}),a(0),a(5),a(4),a(10),(o,r)=>(c(),s("div",u,m))}},b=d(h,[["__scopeId","data-v-5156346f"]]),S={__name:"admin",setup(e){return(o,r)=>(c(),s("div",null,[p(b)]))}};export{S as default};

Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
dist/assets/index-Mnn_AMKp.js


Файловите разлики са ограничени, защото са твърде много
+ 0 - 0
dist/assets/index-ldo6XSnS.css


+ 2 - 2
dist/index.html

@@ -8,8 +8,8 @@
     <script>
       document.domain = "cocorobo.cn"
     </script>
-    <script type="module" crossorigin src="./assets/index-2dErOktZ.js"></script>
-    <link rel="stylesheet" crossorigin href="./assets/index-RRwWEnu3.css">
+    <script type="module" crossorigin src="./assets/index-Mnn_AMKp.js"></script>
+    <link rel="stylesheet" crossorigin href="./assets/index-ldo6XSnS.css">
   </head>
   <body>
     <div id="app"></div>

+ 2 - 0
src/App.vue

@@ -12,6 +12,8 @@ onMounted(() => {
   let params = {
     openid: "fb1ca3e74fb4236ae95d0c670f65487114e0e3878759bc46d907d8ef61b568d09f5543fc67f61aa7"
   }
+  axios.defaults.headers = { 'content-type': 'application/x-www-form-urlencoded' }
+  axios.defaults.withCredentials = true;
   axios.post(`https://beta.api.cocorobo.cn/api/user`, qs.stringify(params)).then(res => {
     console.log(res, '222222222222')
 

BIN
src/assets/icon/shang.png


BIN
src/assets/icon/xia.png


+ 245 - 42
src/components/main/courseSelect.vue

@@ -3,52 +3,87 @@
   <div class="course_select">
     <span class="Screening">筛选</span>
     <div style="float: right;">
-      年级:<el-select v-model="value" class="m-2" placeholder="全部" style="width: 240px">
+      年级:<el-select v-model="value" class="m-2" placeholder="三年级" style="width: 240px" @change="getCurrenData()">
         <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value" />
       </el-select>
     </div>
   </div>
   <div class="course_select">
     <span class="grandTitle">{{ value }}</span>
-    <!-- <el-button :class="selectGrand == 0 ? 'el_button_active' : ''" @click="clickGrand(0)">三年级</el-button>
-    <el-button :class="selectGrand == 1 ? 'el_button_active' : ''" @click="clickGrand(1)">四年级</el-button>
-    <el-button :class="selectGrand == 2 ? 'el_button_active' : ''" @click="clickGrand(2)">五年级</el-button>
-    <el-button :class="selectGrand == 3 ? 'el_button_active' : ''" @click="clickGrand(3)">六年级</el-button>
-    <el-button :class="selectGrand == 4 ? 'el_button_active' : ''" @click="clickGrand(4)">七年级</el-button>
-    <el-button :class="selectGrand == 5 ? 'el_button_active' : ''" @click="clickGrand(5)">八年级</el-button> -->
-  </div>
-  <el-row :gutter="20" class="course_select">
-    <el-col :span="6">
-      <div class="grid-content ep-bg-purple">
-        <img src="" alt="">
-        <div>
-          <p>title</p>
-          <el-button>情绪小怪兽</el-button>
-          <el-button class="el_button_active">上课</el-button>
-        </div>
+    <div v-if="currentData && currentData.shang.length > 0">
+      <div class="book">
+        <img src="../../assets/icon/shang.png" alt="">
+        <span>上册</span>
+      </div>
+      <el-row :gutter="20">
+        <el-col :span="6" v-for="item in currentData.shang" :key="item.title">
+          <div class="grid-content ep-bg-purple">
+            <img :src="getImageUrl(item.url)" alt="">
+            <div class="course_content">
+              <p>{{ item.title }}</p>
+              <div class="class_button">
+                <el-button>备课</el-button>
+                <el-button class="el_button_active">上课</el-button>
+              </div>
+            </div>
+          </div>
+        </el-col>
+      </el-row>
+    </div>
+    <div v-if="currentData && currentData.xia.length > 0">
+      <div class="book">
+        <img src="../../assets/icon/xia.png" alt="">
+        <span>下册</span>
       </div>
-    </el-col>
-    <el-col :span="6">
-      <div class="grid-content ep-bg-purple"></div>
-    </el-col>
-    <el-col :span="6">
-      <div class="grid-content ep-bg-purple"></div>
-    </el-col>
-    <el-col :span="6">
-      <div class="grid-content ep-bg-purple"></div>
-    </el-col>
-  </el-row>
+      <el-row :gutter="20">
+        <el-col :span="6" v-for="item in currentData.xia" :key="item.title">
+          <div class="grid-content ep-bg-purple">
+            <img :src="getImageUrl(item.url)" alt="">
+            <div class="course_content">
+              <p>{{ item.title }}</p>
+            </div>
+            <div class="class_button">
+              <el-button>备课</el-button>
+              <el-button class="el_button_active">上课</el-button>
+            </div>
+          </div>
+        </el-col>
+      </el-row>
+    </div>
+  </div>
 </template>
 <script setup>
-import { ref } from 'vue';
-
+import { ref, onMounted } from 'vue';
 
-const value = ref('')
+const value = ref('三年级')
+const currentData = ref({
+  shang: [
+  ],
+  xia: [
+    {
+      id: "",
+      title: "智能安防",
+      url: "../../assets/img/三下1.png"
+    }, {
+      id: "",
+      title: "人脸检测与识别",
+      url: "../../assets/img/三下1.png"
+    }, {
+      id: "",
+      title: "电子警察",
+      url: "../../assets/img/三下1.png"
+    }, {
+      id: "",
+      title: "音频播报",
+      url: "../../assets/img/三下1.png"
+    },
+  ]
+})
 const options = [
-  {
-    value: 'all',
-    label: '全部',
-  },
+  // {
+  //   value: 'all',
+  //   label: '全部',
+  // },
   {
     value: '三年级',
     label: '三年级',
@@ -74,14 +109,160 @@ const options = [
     label: '八年级',
   },
 ]
+const courseData = {
+  "三年级": {
+    shang: [
+    ],
+    xia: [
+      {
+        id: "",
+        title: "智能安防",
+        url: "../../assets/img/三下1.png"
+      }, {
+        id: "",
+        title: "人脸检测与识别",
+        url: "../../assets/img/三下2.png"
+      }, {
+        id: "",
+        title: "电子警察",
+        url: "../../assets/img/三下3.png"
+      }, {
+        id: "",
+        title: "音频播报",
+        url: "../../assets/img/三下4.png"
+      },
+    ]
+  },
+  "四年级": {
+    shang: [
+    ],
+    xia: [
+      {
+        id: "",
+        title: "智能出行",
+        url: "../../assets/img/四下1.png"
+      }, {
+        id: "",
+        title: "数字识别与车牌识别",
+        url: "../../assets/img/四下2.png"
+      }, {
+        id: "",
+        title: "摆动起来",
+        url: "../../assets/img/四下3.png"
+      }, {
+        id: "",
+        title: "停车场助手",
+        url: "../../assets/img/四下4.png"
+      },
+    ]
+  },
+  "五年级": {
+    shang: [
+    ],
+    xia: [
+      {
+        id: "",
+        title: "游戏与生活概率",
+        url: "../../assets/img/五下1.png"
+      }, {
+        id: "",
+        title: "手势识别",
+        url: "../../assets/img/五下2.png"
+      }, {
+        id: "",
+        title: "猜拳机器人",
+        url: "../../assets/img/五下3.png"
+      }, {
+        id: "",
+        title: "猜拳大战",
+        url: "../../assets/img/五下4.png"
+      },
+    ]
+  },
+  "六年级": {
+    shang: [
+    ],
+    xia: [
+      {
+        id: "",
+        title: "人脸检测知多少",
+        url: "../../assets/img/六下1.png"
+      }, {
+        id: "",
+        title: "人脸检测全流程",
+        url: "../../assets/img/六下2.png"
+      }, {
+        id: "",
+        title: "人脸检测功能实现",
+        url: "../../assets/img/六下3.png"
+      }, {
+        id: "",
+        title: "人脸追踪向日葵功能实现",
+        url: "../../assets/img/六下4.png"
+      },
+    ]
+  },
+  "七年级": {
+    shang: [
+    ],
+    xia: [
+      {
+        id: "",
+        title: "机器学习",
+        url: "../../assets/img/七下1.png"
+      }, {
+        id: "",
+        title: "萌宠生活(一)",
+        url: "../../assets/img/七下2.png"
+      }, {
+        id: "",
+        title: "萌宠生活(二)",
+        url: "../../assets/img/七下3.png"
+      }, {
+        id: "",
+        title: "萌宠生活(三)",
+        url: "../../assets/img/七下4.png"
+      },
+    ]
+  },
+  "八年级": {
+    shang: [
+    ],
+    xia: [
+      {
+        id: "",
+        title: "初识人工智能",
+        url: "../../assets/img/八下1.png"
+      }, {
+        id: "",
+        title: "无所不在的人工智能",
+        url: "../../assets/img/八下2.png"
+      }, {
+        id: "",
+        title: "机器翻译鸟(上)",
+        url: "../../assets/img/八下3.png"
+      }, {
+        id: "",
+        title: "机器翻译鸟(下)",
+        url: "../../assets/img/八下4.png"
+      },
+    ]
+  }
+}
+onMounted(() => {
+  currentData.value = courseData["三年级"]
+})
+const getCurrenData = () => {
+  console.log(value.value, courseData[value.value])
+  currentData.value = courseData[value.value]
+}
 
-const selectGrand = ref(0)
-const clickGrand = val => {
-  selectGrand.value = val
+const getImageUrl = (url) => {
+  return new URL(url, import.meta.url).href
 }
 
-const openCourseDetail = () => {
-  top.U.MD.D.I.openInApplication("studyDetail", "课程id", 2, 1); //这个是打开指定的课程接口
+const openCourseDetail = (id) => {
+  top.U.MD.D.I.openInApplication("studyDetail", id, 2, 1); //这个是打开指定的课程接口
 }
 </script>
 <style lang="scss" scoped>
@@ -108,7 +289,6 @@ const openCourseDetail = () => {
 
   .el-button {
     // background:  rgba(54, 129, 252, 1);
-    background: rgba(224, 234, 251, 1);
     color: rgba(54, 129, 252, 1);
   }
 
@@ -116,6 +296,17 @@ const openCourseDetail = () => {
     background: rgba(54, 129, 252, 1);
     color: #fff;
   }
+
+  .book {
+    margin-top: 10px;
+    position: relative;
+
+    img {
+      position: relative;
+      top: 3px;
+      margin-right: 8px;
+    }
+  }
 }
 
 .el-row {
@@ -134,7 +325,19 @@ const openCourseDetail = () => {
 .grid-content {
   border-radius: 4px;
   min-height: 36px;
-  // background: #000;
+  background: #fff;
+  padding: 12px;
+
   // height: 300px;
+  img {
+    width: 100%;
+    border-radius: 5px;
+  }
+
+  .course_content {
+    p {
+      margin-bottom: 5px;
+    }
+  }
 }
 </style>

Някои файлове не бяха показани, защото твърде много файлове са промени