diff --git a/ruoyi-ui/src/views/benyi/mathstudy/index.vue b/ruoyi-ui/src/views/benyi/mathstudy/index.vue new file mode 100644 index 000000000..ee8359f5f --- /dev/null +++ b/ruoyi-ui/src/views/benyi/mathstudy/index.vue @@ -0,0 +1,262 @@ +<template> + <div class="app-container"> + <el-row :gutter="20"> + <el-col :span="4" :xs="24"> + <div class="head-container"> + <el-input + v-model="name" + placeholder="请输入名称" + clearable + size="small" + prefix-icon="el-icon-search" + style="margin-bottom: 20px" + /> + </div> + <div class="head-container"> + <el-tree + :data="treeOptions" + :props="defaultProps" + :expand-on-click-node="false" + :filter-node-method="filterNode" + ref="tree" + default-expand-all + @node-click="handleNodeClick" + /> + </div> + </el-col> + <el-col :span="20" :xs="24"> + <el-card class="box-card"> + <div slot="header" class="clearfix"> + <span class="box-card-title">{{title}}</span> + </div> + <div class="text item" v-show="title1"> + <h3 class="box-card-title">{{title1}}</h3> + <div class="pad-left" v-html="note"></div> + </div> + <div class="text item" v-show="title2"> + <h3 class="box-card-title">{{title2}}</h3> + <div class="pad-left"> + <Editor v-model="communicate" /> + </div> + </div> + <div class="text item" v-show="title3"> + <h3 class="box-card-title">{{title3}}</h3> + <div class="pad-left"> + <Editor v-model="sug" /> + </div> + + <div class="pad-left"> + <div v-for="(item, index) in planList" :key="index" class="text item"> + <h3 class="box-card-case mr">第{{item.sort}}周 - {{item.name}}</h3> + <h3 class="box-card-info">游戏形式:{{typeFormat(item)}}</h3> + <h3 class="box-card-info">游戏目标</h3> + <div class="text item pad-left" v-html="item.target"></div> + <h3 class="box-card-info">游戏准备</h3> + <div class="text item pad-left" v-html="item.prepare"></div> + <h3 class="box-card-info">游戏过程</h3> + <div class="text item pad-left" v-html="item.process"></div> + <h3 class="box-card-info">其他目标</h3> + <div class="text item pad-left" v-html="item.otherTarget"></div> + <h3 class="box-card-info">建议</h3> + <div class="text item pad-left" v-html="item.suggest"></div> + <h3 class="box-card-info" v-show="item.appendix">附录</h3> + <div class="text item pad-left" v-html="item.appendix"></div> + </div> + </div> + </div> + </el-card> + </el-col> + </el-row> + </div> +</template> + +<script> +import { treeselect, getMath } from "@/api/benyi/math"; +import { listPlan } from "@/api/benyi/plan"; +import Editor from "@/components/Editor"; + +export default { + name: "Detail", + components: { + Editor + }, + data() { + return { + // 游戏数学名称 + name: undefined, + // 游戏数学id + id: undefined, + //标题 + title: "游戏数学", + title1: "前言", + //目标 + title2: "", + //活动方案 + title3: "", + // 游戏数学表格数据 + planList: [], + //家园沟通 + communicate: "", + //建议 + sug: "", + //活动形式 + typeOptions: [], + //目的 + note: "《幼儿园游戏数学》,就是在《规程》和《纲要》相关教育理念指导下,遵循《指南》关于儿童在科学领域学习与发展的基本目标、原则和策略,所构建和研发完成的。《指南》在科学领域中,对有关儿童数学认知领域的学习与发展提出三个基本目标。即:1. 初步感知生活中数学的有用和有趣。2. 感知和理解数、量及数量关系。3. 感知形状与空间关系.", + + // 树状显示类型 + treeOptions: [], + // 树结构 + defaultProps: { + children: "children", + label: "label" + }, + // 查询参数 + queryParams: { + mathid: undefined + } + }; + }, + watch: { + // 根据名称筛选部门树 + name(val) { + this.$refs.tree.filter(val); + } + }, + created() { + this.getTreeselect(); + this.getDicts("sys_math_type").then(response => { + this.typeOptions = response.data; + }); + }, + methods: { + // 活动形式类型--字典状态字典翻译 + typeFormat(row) { + //alert(row.scope.split(';').length); + var ilength = row.type.split(";").length; + var names = ""; + for (var i = 0; i < ilength; i++) { + names = + names + + this.selectDictLabel(this.typeOptions, row.type.split(";")[i]) + + ";"; + } + //this.selectDictLabel(this.scopeOptions, row.xnxq); + return names; + }, + /** 查询部门下拉树结构 */ + getTreeselect() { + treeselect().then(response => { + this.treeOptions = response.data; + console.log(this.treeOptions); + }); + }, + // 筛选节点 + filterNode(value, data) { + if (!value) return true; + return data.label.indexOf(value) !== -1; + }, + // 节点单击事件 + handleNodeClick(data) { + this.id = data.id; + console.log(data.id); + if (data.id >= 9999) { + } else { + this.title = data.label; + console.log(this.title); + this.getMathDetails(); + } + // console.log(this.dayflowtaskList[date.id]) + // this.getStandardList(); + }, + getMathDetails() { + getMath(this.id).then(response => { + //console.log(response); + if (response.code == "200") { + this.title1 = "学习目标"; + this.title2 = "表现特征"; + this.title3 = "教学建议"; + this.note = response.data.target; + this.communicate = response.data.feature; + this.sug = response.data.suggest; + //this.queryParams.mathid = response.data.id; + + listPlan(this.queryParams).then(req => { + //console.log(req); + if (req.code == "200") { + this.planList = req.rows; + } + }); + } + }); + } + } +}; +</script> +<style lang="scss" scoped> +.text { + font-size: 14px; +} + +.item { + margin-bottom: 18px; + line-height: 22px; +} + +.clearfix:before, +.clearfix:after { + display: table; + content: ""; +} +.clearfix:after { + clear: both; +} +.box-card-title { + display: flex; + align-items: center; + font-size: 16px; + &::before { + content: ""; + margin-right: 8px; + width: 4px; + height: 16px; + background: #1890ff; + } + &.mr { + margin: 10px 0; + } +} +.box-card-case { + margin: 0; + font-size: 14px; + font-weight: 700; + display: flex; + align-items: center; + &::before { + content: ""; + margin-right: 8px; + width: 4px; + height: 14px; + background: #2c3e50; + } + &.mr { + margin: 10px 0; + } +} +.box-card-info { + font-size: 14px; + font-weight: 700; +} +.pad-left { + padding-left: 15px; +} +// 禁止复制 +div { + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} +</style> \ No newline at end of file