From b662833522a6a5d453b201a3dfa75012fcb8acb3 Mon Sep 17 00:00:00 2001
From: zhanglipeng <chinazhanglipeng@qq.com>
Date: Sat, 21 Nov 2020 22:34:06 +0800
Subject: [PATCH] =?UTF-8?q?=E8=AF=84=E4=BC=B0-=E6=95=99=E8=82=B2=E5=BB=BA?=
 =?UTF-8?q?=E8=AE=AE?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 ruoyi-ui/src/api/benyi/assessmentcontent.js   |  10 ++
 .../src/views/benyi/assessment/history.vue    | 108 ++++++++++--------
 .../views/benyi/assessmentcontent/index.vue   |  11 +-
 .../ByAssessmentcontentController.java        |  10 ++
 .../benyi/domain/ByAssessmentcontent.java     |  21 ++++
 .../mapper/ByAssessmentcontentMapper.java     |   8 ++
 .../service/IByAssessmentcontentService.java  |   8 ++
 .../impl/ByAssessmentcontentServiceImpl.java  |  11 ++
 .../benyi/ByAssessmentcontentMapper.xml       |  14 ++-
 9 files changed, 151 insertions(+), 50 deletions(-)

diff --git a/ruoyi-ui/src/api/benyi/assessmentcontent.js b/ruoyi-ui/src/api/benyi/assessmentcontent.js
index 0910f0bdb..9b088c45c 100644
--- a/ruoyi-ui/src/api/benyi/assessmentcontent.js
+++ b/ruoyi-ui/src/api/benyi/assessmentcontent.js
@@ -9,6 +9,16 @@ export function listAssessmentcontent(query) {
   })
 }
 
+// 查询评估内容列表
+export function listNoAssessmentcontentByChild(childid) {
+  return request({
+    url: '/benyi/assessmentcontent/noassessment/list/' + childid,
+    method: 'get'
+  })
+}
+
+
+
 // 查询部门下拉树结构
 export function treeselect() {
   return request({
diff --git a/ruoyi-ui/src/views/benyi/assessment/history.vue b/ruoyi-ui/src/views/benyi/assessment/history.vue
index 4fa00af2a..43adbd756 100644
--- a/ruoyi-ui/src/views/benyi/assessment/history.vue
+++ b/ruoyi-ui/src/views/benyi/assessment/history.vue
@@ -18,6 +18,53 @@
         <div>
           <radar-chart_jk :psMsg="item.dictValue" />
         </div>
+        <div class="block">
+          <h2 class="block-item-title flex align-center">教育建议</h2>
+          <div
+            class="block"
+            v-for="itemLy in assessmentcontentList.filter(
+              (p) => p.parentId == item.dictValue && p.name == '健康'
+            )"
+            :key="itemLy.id"
+          >
+            {{ itemLy.name }}
+            <div
+              class="block"
+              v-for="itemFzly in assessmentcontentList.filter(
+                (p) => p.parentId == itemLy.id
+              )"
+              :key="itemFzly.id"
+            >
+              <h2 class="block-item-title flex align-center">
+                {{ itemFzly.name }}
+              </h2>
+              <ul class="block-content">
+                <li
+                  v-for="itemMb in assessmentcontentList.filter(
+                    (p) => p.parentId == itemFzly.id
+                  )"
+                  :key="itemMb.id"
+                >
+                  <p class="block-content-title">
+                    <span class="num">{{ itemMb.sort }}. </span
+                    >{{ itemMb.name }}
+                  </p>
+                  <div
+                    class="checkbox-content"
+                    v-for="itemYs in assessmentcontentList.filter(
+                      (p) => p.parentId == itemMb.id
+                    )"
+                    :key="itemYs.id"
+                  >
+                    <p class="checkbox-item flex align-center">
+                      {{ itemYs.jyjy }}
+                    </p>
+                  </div>
+                </li>
+              </ul>
+            </div>
+          </div>
+        </div>
         <div>
           <radar-chart_yy :psMsg="item.dictValue" />
         </div>
@@ -30,57 +77,12 @@
         <div>
           <radar-chart_ys :psMsg="item.dictValue" />
         </div>
-        <div class="block">
-          <h2 class="block-item-title flex align-center">教育建议</h2>
-          <!-- <ul class="block-content">
-            <li>
-              <p class="block-content-title">
-                <span class="num">1. </span>具有健康的体态
-              </p>
-              <div class="checkbox-content">
-                <p class="checkbox-item flex align-center">
-                  身高和体重适宜
-                </p>
-                <div class="check-info">
-                  参考标准:
-                  <p>男孩:身高:94.9-111.7厘米,体重:12.7-21.2公斤</p>
-                  <p>女孩:身高:94.1-111.3厘米,体重:12.3-21.5公斤</p>
-                </div>
-              </div>
-              <div class="checkbox-content">
-                <p class="checkbox-item flex align-center">在提醒下能自然坐直、站直
-                </p>
-                <div class="check-info"></div>
-              </div>
-            </li>
-            <li>
-              <p class="block-content-title">
-                <span class="num">2. </span>情绪安定愉快
-              </p>
-              <div class="checkbox-content">
-                <p class="checkbox-item flex align-center">
-                 情绪比较稳定,很少因一点小事哭闹不止
-                </p>
-                <div class="check-info"></div>
-              </div>
-              <div class="checkbox-content">
-                <p class="checkbox-item flex align-center">
-                 有比较强烈的情绪反应时,能在成人的安抚下逐渐平静下来
-                </p>
-                <div class="check-info"></div>
-              </div>
-            </li>
-          </ul> -->
-        </div>
       </el-tab-pane>
     </el-tabs>
   </div>
 </template>
 <script>
-import {
-  listAssessmentcontent,
-  getAssessmentcontent,
-} from "@/api/benyi/assessmentcontent";
+import { listNoAssessmentcontentByChild } from "@/api/benyi/assessmentcontent";
 import { getChildByAssessment } from "@/api/benyi/child";
 import { getAssessmentDictData } from "@/api/benyi/assessmentchild";
 import RadarChart from "@/views/dashboard/RadarChart";
@@ -109,6 +111,8 @@ export default {
       // tabs列表
       tabsList: [],
       activeName: "",
+      // 评估内容表格数据
+      assessmentcontentList: [],
     };
   },
   created() {
@@ -118,8 +122,16 @@ export default {
     // console.log("childId:" + childId);
     this.getChild(childId);
     this.getList(childId);
+    this.getNoAssessmentList();
   },
   methods: {
+    /** 查询幼儿未评估内容列表 */
+    getNoAssessmentList() {
+      listNoAssessmentcontentByChild(this.childId).then((response) => {
+        // console.log("rows:" + response.rows);
+        this.assessmentcontentList = response.rows;
+      });
+    },
     getChild(childId) {
       getChildByAssessment(childId).then((response) => {
         // console.log(response);
@@ -142,8 +154,8 @@ export default {
       });
     },
     handleClick(tab) {
-    //   this.activeName = tab.name;
-    //   console.log(tab.name);
+      //   this.activeName = tab.name;
+      //   console.log(tab.name);
     },
   },
 };
diff --git a/ruoyi-ui/src/views/benyi/assessmentcontent/index.vue b/ruoyi-ui/src/views/benyi/assessmentcontent/index.vue
index 37e739eeb..d9cc60c83 100644
--- a/ruoyi-ui/src/views/benyi/assessmentcontent/index.vue
+++ b/ruoyi-ui/src/views/benyi/assessmentcontent/index.vue
@@ -71,7 +71,8 @@
             icon="el-icon-plus"
             @click="handleAdd(scope.row)"
             v-hasPermi="['benyi:assessmentcontent:add']"
-          >新增</el-button>
+            >新增</el-button
+          >
           <el-button
             v-if="scope.row.parentId !== 0"
             size="mini"
@@ -147,6 +148,13 @@
             placeholder="请输入序号"
           />
         </el-form-item>
+        <el-form-item label="教育建议" prop="jyjy">
+          <el-input
+            v-model="form.jyjy"
+            type="textarea"
+            placeholder="请输入内容"
+          />
+        </el-form-item>
       </el-form>
       <div slot="footer" class="dialog-footer">
         <el-button type="primary" @click="submitForm">确 定</el-button>
@@ -277,6 +285,7 @@ export default {
         createTime: undefined,
         sort: 0,
         ckbz: undefined,
+        jyjy: undefined,
       };
       this.resetForm("form");
     },
diff --git a/ruoyi/src/main/java/com/ruoyi/project/benyi/controller/ByAssessmentcontentController.java b/ruoyi/src/main/java/com/ruoyi/project/benyi/controller/ByAssessmentcontentController.java
index 59f6eebd9..3e9cdd5ae 100644
--- a/ruoyi/src/main/java/com/ruoyi/project/benyi/controller/ByAssessmentcontentController.java
+++ b/ruoyi/src/main/java/com/ruoyi/project/benyi/controller/ByAssessmentcontentController.java
@@ -50,6 +50,16 @@ public class ByAssessmentcontentController extends BaseController {
         return getDataTable(list);
     }
 
+    /**
+     * 查询幼儿未评估内容列表
+     */
+    @PreAuthorize("@ss.hasPermi('benyi:assessmentcontent:list')")
+    @GetMapping("/noassessment/list/{child}")
+    public TableDataInfo listno(@PathVariable("child") Long child) {
+        List<ByAssessmentcontent> list = byAssessmentcontentService.selectNoByAssessmentcontentListByChild(child);
+        return getDataTable(list);
+    }
+
     /**
      * 查询评估内容列表
      */
diff --git a/ruoyi/src/main/java/com/ruoyi/project/benyi/domain/ByAssessmentcontent.java b/ruoyi/src/main/java/com/ruoyi/project/benyi/domain/ByAssessmentcontent.java
index 2c9e6ea25..de1be657b 100644
--- a/ruoyi/src/main/java/com/ruoyi/project/benyi/domain/ByAssessmentcontent.java
+++ b/ruoyi/src/main/java/com/ruoyi/project/benyi/domain/ByAssessmentcontent.java
@@ -52,6 +52,10 @@ public class ByAssessmentcontent extends BaseEntity {
     @Excel(name = "参考标准")
     private String ckbz;
 
+    @Excel(name = "教育建议")
+    private String jyjy;
+
+    private Long childid;
 
     public String getParentName() {
         return parentName;
@@ -131,7 +135,22 @@ public class ByAssessmentcontent extends BaseEntity {
 
     public String getCkbz() {
         return ckbz;
+    }
 
+    public void setJyjy(String jyjy) {
+        this.jyjy = jyjy;
+    }
+
+    public String getJyjy() {
+        return jyjy;
+    }
+
+    public void setChildid(Long childid) {
+        this.childid = childid;
+    }
+
+    public Long getChildid() {
+        return childid;
     }
 
 
@@ -146,6 +165,8 @@ public class ByAssessmentcontent extends BaseEntity {
                 .append("createTime", getCreateTime())
                 .append("sort", getSort())
                 .append("ckbz", getCkbz())
+                .append("jyjy", getJyjy())
+                .append("childid", getChildid())
                 .toString();
     }
 
diff --git a/ruoyi/src/main/java/com/ruoyi/project/benyi/mapper/ByAssessmentcontentMapper.java b/ruoyi/src/main/java/com/ruoyi/project/benyi/mapper/ByAssessmentcontentMapper.java
index 692c9e336..dd352b50a 100644
--- a/ruoyi/src/main/java/com/ruoyi/project/benyi/mapper/ByAssessmentcontentMapper.java
+++ b/ruoyi/src/main/java/com/ruoyi/project/benyi/mapper/ByAssessmentcontentMapper.java
@@ -27,6 +27,14 @@ public interface ByAssessmentcontentMapper {
      */
     public List<ByAssessmentcontent> selectByAssessmentcontentList(ByAssessmentcontent byAssessmentcontent);
 
+    /**
+     * 查询幼儿未评估内容列表
+     *
+     * @param childId 幼儿id
+     * @return 评估内容集合
+     */
+    public List<ByAssessmentcontent> selectNoByAssessmentcontentListByChild(Long childId);
+
     /**
      * 查询评估内容列表
      *
diff --git a/ruoyi/src/main/java/com/ruoyi/project/benyi/service/IByAssessmentcontentService.java b/ruoyi/src/main/java/com/ruoyi/project/benyi/service/IByAssessmentcontentService.java
index 3e78af4cd..00c47db22 100644
--- a/ruoyi/src/main/java/com/ruoyi/project/benyi/service/IByAssessmentcontentService.java
+++ b/ruoyi/src/main/java/com/ruoyi/project/benyi/service/IByAssessmentcontentService.java
@@ -28,6 +28,14 @@ public interface IByAssessmentcontentService {
      */
     public List<ByAssessmentcontent> selectByAssessmentcontentList(ByAssessmentcontent byAssessmentcontent);
 
+    /**
+     * 查询幼儿未评估内容列表
+     *
+     * @param childId 幼儿id
+     * @return 评估内容集合
+     */
+    public List<ByAssessmentcontent> selectNoByAssessmentcontentListByChild(Long childId);
+
     /**
      * 查询评估内容列表
      *
diff --git a/ruoyi/src/main/java/com/ruoyi/project/benyi/service/impl/ByAssessmentcontentServiceImpl.java b/ruoyi/src/main/java/com/ruoyi/project/benyi/service/impl/ByAssessmentcontentServiceImpl.java
index 686ff7aaa..cf5849dea 100644
--- a/ruoyi/src/main/java/com/ruoyi/project/benyi/service/impl/ByAssessmentcontentServiceImpl.java
+++ b/ruoyi/src/main/java/com/ruoyi/project/benyi/service/impl/ByAssessmentcontentServiceImpl.java
@@ -47,6 +47,17 @@ public class ByAssessmentcontentServiceImpl implements IByAssessmentcontentServi
         return byAssessmentcontentMapper.selectByAssessmentcontentList(byAssessmentcontent);
     }
 
+    /**
+     * 查询幼儿未评估内容列表
+     *
+     * @param childId 幼儿id
+     * @return 评估内容集合
+     */
+    @Override
+    public List<ByAssessmentcontent> selectNoByAssessmentcontentListByChild(Long childId){
+        return byAssessmentcontentMapper.selectNoByAssessmentcontentListByChild(childId);
+    }
+
     /**
      * 查询评估内容列表
      *
diff --git a/ruoyi/src/main/resources/mybatis/benyi/ByAssessmentcontentMapper.xml b/ruoyi/src/main/resources/mybatis/benyi/ByAssessmentcontentMapper.xml
index bafafca18..60e155233 100644
--- a/ruoyi/src/main/resources/mybatis/benyi/ByAssessmentcontentMapper.xml
+++ b/ruoyi/src/main/resources/mybatis/benyi/ByAssessmentcontentMapper.xml
@@ -13,10 +13,13 @@
         <result property="createTime" column="create_time"/>
         <result property="sort" column="sort"/>
         <result property="ckbz" column="ckbz"/>
+        <result property="jyjy"    column="jyjy"    />
+
+        <result property="childid"    column="childid"    />
     </resultMap>
 
     <sql id="selectByAssessmentcontentVo">
-        select id, parentId, name, iselement, scope, create_time, sort, ckbz from by_assessmentcontent
+        select id, parentId, name, iselement, scope, create_time, sort, ckbz, jyjy from by_assessmentcontent
     </sql>
 
     <select id="selectByAssessmentcontentList" parameterType="ByAssessmentcontent"
@@ -76,6 +79,12 @@ where find_in_set(id, getChildLst(#{id})) ;
 where find_in_set(id, getChildLst(#{id})) and parentId>#{id} and iselement='N';
 	</select>
 
+    <!--根据幼儿id获取未评选的指标-->
+    <select id="selectNoByAssessmentcontentListByChild" parameterType="Long" resultMap="ByAssessmentcontentResult">
+		SELECT id, parentId, name, iselement, scope, create_time, sort, ckbz, jyjy  FROM by_assessmentcontent
+where id not in(select contentid from by_assessmentchild where childid=#{childid})
+	</select>
+
     <insert id="insertByAssessmentcontent" parameterType="ByAssessmentcontent" useGeneratedKeys="true" keyProperty="id">
         insert into by_assessmentcontent
         <trim prefix="(" suffix=")" suffixOverrides=",">
@@ -86,6 +95,7 @@ where find_in_set(id, getChildLst(#{id})) and parentId>#{id} and iselement='N';
             <if test="createTime != null ">create_time,</if>
             <if test="sort != null ">sort,</if>
             <if test="ckbz != null  and ckbz != ''">ckbz,</if>
+            <if test="jyjy != null  and jyjy != ''">jyjy,</if>
         </trim>
         <trim prefix="values (" suffix=")" suffixOverrides=",">
             <if test="parentId != null ">#{parentId},</if>
@@ -95,6 +105,7 @@ where find_in_set(id, getChildLst(#{id})) and parentId>#{id} and iselement='N';
             <if test="createTime != null ">#{createTime},</if>
             <if test="sort != null ">#{sort},</if>
             <if test="ckbz != null  and ckbz != ''">#{ckbz},</if>
+            <if test="jyjy != null  and jyjy != ''">#{jyjy},</if>
         </trim>
     </insert>
 
@@ -108,6 +119,7 @@ where find_in_set(id, getChildLst(#{id})) and parentId>#{id} and iselement='N';
             <if test="createTime != null ">create_time = #{createTime},</if>
             <if test="sort != null ">sort = #{sort},</if>
             <if test="ckbz != null  and ckbz != ''">ckbz = #{ckbz},</if>
+            <if test="jyjy != null  and jyjy != ''">jyjy = #{jyjy},</if>
         </trim>
         where id = #{id}
     </update>