Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
D
dd_school
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wangqi
dd_school
Commits
05b3eb2d
Commit
05b3eb2d
authored
Oct 23, 2023
by
baochunxin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
上传拉去家校通讯
parent
bd39ffd0
Hide whitespace changes
Inline
Side-by-side
Showing
15 changed files
with
544 additions
and
252 deletions
+544
-252
ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java
+1
-0
smart-campus/src/main/java/yangtz/cs/liu/campus/domain/schoolClass/SchoolClass.java
+1
-0
smart-campus/src/main/java/yangtz/cs/liu/campus/domain/schoolgrade/SchoolGrade.java
+3
-0
smart-campus/src/main/java/yangtz/cs/liu/campus/domain/student/SchoolStudent.java
+2
-0
smart-campus/src/main/java/yangtz/cs/liu/campus/mapper/schoolClass/SchoolClassMapper.java
+2
-0
smart-campus/src/main/java/yangtz/cs/liu/campus/mapper/schoolgrade/SchoolGradeMapper.java
+2
-0
smart-campus/src/main/java/yangtz/cs/liu/campus/service/impl/schoolClass/SchoolClassImpl.java
+4
-0
smart-campus/src/main/java/yangtz/cs/liu/campus/service/impl/schoolgrade/ISchoolGradeImpl.java
+5
-0
smart-campus/src/main/java/yangtz/cs/liu/campus/service/schoolClass/ISchoolClassService.java
+4
-0
smart-campus/src/main/java/yangtz/cs/liu/campus/service/schoolgrade/ISchoolGradeService.java
+1
-0
smart-campus/src/main/java/yangtz/cs/liu/campus/vo/student/SchoolStudentVO.java
+1
-0
smart-campus/src/main/java/yangtz/cs/liu/dingding/controller/DingJiaXiaoController.java
+496
-248
smart-campus/src/main/resources/mapper/schoolClass/SchoolClassMapper.xml
+5
-0
smart-campus/src/main/resources/mapper/schoolgrade/SchoolGradeMapper.xml
+4
-1
smart-campus/src/main/resources/mapper/student/SchoolStudentMapper.xml
+13
-3
No files found.
ruoyi-framework/src/main/java/com/ruoyi/framework/config/SecurityConfig.java
View file @
05b3eb2d
...
...
@@ -132,6 +132,7 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter
.
antMatchers
(
"/wx/user/getToken"
).
permitAll
()
//钉钉免登录接口
.
antMatchers
(
"/dd/App/user/**"
).
permitAll
()
.
antMatchers
(
"/dd/djtx/**"
).
permitAll
()
//开发一个接口字典
.
antMatchers
(
"/system/dict/data/type/**"
).
permitAll
()
// .antMatchers("/**").permitAll()
...
...
smart-campus/src/main/java/yangtz/cs/liu/campus/domain/schoolClass/SchoolClass.java
View file @
05b3eb2d
...
...
@@ -100,4 +100,5 @@ public class SchoolClass extends OurBaseEntity {
"7=物理+地理+化学,8=物理+地理+生物,9=物理+化学+生物,10=物理+历史+地理,11=化学+政治+地理,12=化学+政治+历史"
+
"13=化学+政治+生物,14=化学+历史+地理,15=化学+历史+生物,16=化学+地理+生物,17=生物+政治+地理,18=生物+历史+地理,19=生物+政治+历史,20=政治+历史+地理"
,
width
=
25
)
private
String
chooseCourse
;
private
String
ddClassId
;
}
smart-campus/src/main/java/yangtz/cs/liu/campus/domain/schoolgrade/SchoolGrade.java
View file @
05b3eb2d
...
...
@@ -36,4 +36,7 @@ public class SchoolGrade extends OurBaseEntity {
/** 级部名称 */
@Excel
(
name
=
"级部名称"
)
private
String
gradeName
;
private
String
ddClassId
;
}
smart-campus/src/main/java/yangtz/cs/liu/campus/domain/student/SchoolStudent.java
View file @
05b3eb2d
...
...
@@ -147,6 +147,8 @@ public class SchoolStudent extends OurBaseEntity {
private
String
support
;
//独生子女(0否 1是)
private
String
onlyChild
;
//钉钉userId
private
String
ddUserId
;
/*
* 校园一卡通
...
...
smart-campus/src/main/java/yangtz/cs/liu/campus/mapper/schoolClass/SchoolClassMapper.java
View file @
05b3eb2d
...
...
@@ -66,4 +66,6 @@ public interface SchoolClassMapper extends BaseMapper<SchoolClass> {
* 获取本级部下的班级
* */
List
<
Long
>
getClassesIdByGradeId
(
Long
gradeId
);
public
Long
selectDdClassId
(
String
ddClssId
);
}
smart-campus/src/main/java/yangtz/cs/liu/campus/mapper/schoolgrade/SchoolGradeMapper.java
View file @
05b3eb2d
...
...
@@ -31,4 +31,6 @@ public interface SchoolGradeMapper extends BaseMapper<SchoolGrade> {
public
List
<
String
>
getYearList
();
List
<
SchoolGrade
>
selectNowSchoolGrade
();
public
Long
selectDdClassId
(
String
ddClssId
);
}
smart-campus/src/main/java/yangtz/cs/liu/campus/service/impl/schoolClass/SchoolClassImpl.java
View file @
05b3eb2d
...
...
@@ -2433,4 +2433,8 @@ public class SchoolClassImpl extends ServiceImpl<SchoolClassMapper, SchoolClass>
}
@Override
public
Long
selectDdClassId
(
String
ddId
)
{
return
schoolClassMapper
.
selectDdClassId
(
ddId
);
}
}
smart-campus/src/main/java/yangtz/cs/liu/campus/service/impl/schoolgrade/ISchoolGradeImpl.java
View file @
05b3eb2d
...
...
@@ -238,4 +238,9 @@ public class ISchoolGradeImpl extends ServiceImpl<SchoolGradeMapper, SchoolGrade
public
int
isNewSchoolYear
()
{
return
schoolGradeMapper
.
isNewSchoolYear
();
}
@Override
public
Long
selectDdClassId
(
String
ddId
)
{
return
schoolGradeMapper
.
selectDdClassId
(
ddId
);
}
}
smart-campus/src/main/java/yangtz/cs/liu/campus/service/schoolClass/ISchoolClassService.java
View file @
05b3eb2d
...
...
@@ -91,4 +91,8 @@ public interface ISchoolClassService extends IService<SchoolClass> {
/**批量新增班级*/
int
batchAdd
(
ClassBatchVo
vo
);
Long
selectDdClassId
(
String
ddId
);
}
smart-campus/src/main/java/yangtz/cs/liu/campus/service/schoolgrade/ISchoolGradeService.java
View file @
05b3eb2d
...
...
@@ -25,5 +25,6 @@ public interface ISchoolGradeService extends IService<SchoolGrade> {
//获取最新学年
int
isNewSchoolYear
();
Long
selectDdClassId
(
String
ddId
);
}
smart-campus/src/main/java/yangtz/cs/liu/campus/vo/student/SchoolStudentVO.java
View file @
05b3eb2d
...
...
@@ -301,4 +301,5 @@ public class SchoolStudentVO {
//教务-学生管理-学籍表-所在年级
private
String
currentGrade
;
private
String
ddUserId
;
}
smart-campus/src/main/java/yangtz/cs/liu/dingding/controller/DingJiaXiaoController.java
View file @
05b3eb2d
...
...
@@ -7,6 +7,7 @@ import cn.hutool.json.JSONUtil;
import
com.alibaba.fastjson2.JSONArray
;
import
com.alibaba.fastjson2.JSONObject
;
import
com.ruoyi.common.core.domain.entity.SchoolTeacher
;
import
com.ruoyi.common.core.domain.entity.SchoolTeacherCopy
;
import
com.ruoyi.common.core.domain.entity.SysUser
;
import
com.ruoyi.common.utils.SecurityUtils
;
import
com.ruoyi.system.service.ISysUserService
;
...
...
@@ -17,30 +18,37 @@ import org.springframework.web.bind.annotation.RequestMapping;
import
org.springframework.web.bind.annotation.RestController
;
import
yangtz.cs.liu.campus.controller.schoolClass.SchoolClassController
;
import
yangtz.cs.liu.campus.domain.schoolClass.SchoolClass
;
import
yangtz.cs.liu.campus.domain.schoolClass.SchoolClassCopy
;
import
yangtz.cs.liu.campus.domain.schoolClass.SchoolClassHeadmaster
;
import
yangtz.cs.liu.campus.domain.schoolClass.SchoolClassMentor
;
import
yangtz.cs.liu.campus.domain.schoolgrade.SchoolGrade
;
import
yangtz.cs.liu.campus.domain.schoolgrade.SchoolGradeCopy
;
import
yangtz.cs.liu.campus.domain.schoolgrade.SchoolGradeMentor
;
import
yangtz.cs.liu.campus.domain.student.SchoolStudent
;
import
yangtz.cs.liu.campus.domain.student.SchoolStudentClassRelation
;
import
yangtz.cs.liu.campus.domain.student.SchoolStudentClasses
;
import
yangtz.cs.liu.campus.domain.student.SchoolStudentParent
;
import
yangtz.cs.liu.campus.service.schoolClass.ISchoolClassCopyService
;
import
yangtz.cs.liu.campus.service.schoolClass.ISchoolClassHeadmasterService
;
import
yangtz.cs.liu.campus.service.schoolClass.ISchoolClassMentorService
;
import
yangtz.cs.liu.campus.service.schoolClass.ISchoolClassService
;
import
yangtz.cs.liu.campus.service.schoolgrade.ISchoolGradeCopyService
;
import
yangtz.cs.liu.campus.service.schoolgrade.ISchoolGradeMentorService
;
import
yangtz.cs.liu.campus.service.schoolgrade.ISchoolGradeService
;
import
yangtz.cs.liu.campus.service.student.ISchoolStudentClassRelationService
;
import
yangtz.cs.liu.campus.service.student.ISchoolStudentClassesService
;
import
yangtz.cs.liu.campus.service.student.ISchoolStudentParentService
;
import
yangtz.cs.liu.campus.service.student.ISchoolStudentService
;
import
yangtz.cs.liu.campus.service.teacher.ISchoolTeacherCopyService
;
import
yangtz.cs.liu.campus.service.teacher.ISchoolTeacherService
;
import
yangtz.cs.liu.campus.vo.student.SchoolStudentVO
;
import
yangtz.cs.liu.campus.vo.teacher.SchoolTeacherVO
;
import
yangtz.cs.liu.dingding.utils.AccessTokenUtils
;
import
yangtz.cs.liu.dingding.vo.DingJiaXiaoVo
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.*
;
import
java.util.stream.Collectors
;
import
java.util.stream.Stream
;
/**
* 家校通讯录
...
...
@@ -59,37 +67,50 @@ public class DingJiaXiaoController {
//年级表
@Autowired
ISchoolGradeService
schoolGradeService
;
//职工与年级关系
//年级临时表
@Autowired
ISchoolGradeCopyService
iSchoolGradeCopyService
;
//职工与年级关系 ----------------
@Autowired
ISchoolGradeMentorService
schoolGradeMentorService
;
//学校班级
@Autowired
ISchoolClassService
iSchoolClassService
;
//班主任和班级关系
//班级表临时
@Autowired
ISchoolClassCopyService
iSchoolClassCopyService
;
//班主任和班级关系 ------------------
@Autowired
ISchoolClassHeadmasterService
iSchoolClassHeadmasterService
;
//任课老师和班级关系
//任课老师和班级关系
----------------
@Autowired
ISchoolClassMentorService
schoolClassMentorService
;
//学生表
//学生表
---------------------
@Autowired
ISchoolStudentService
schoolStudentService
;
//学生与班级关系
//学生与班级关系
--------------------
@Autowired
ISchoolStudentClassRelationService
iSchoolStudentClassRelationService
;
//学生历史班级表
//学生历史班级表
-----------------
@Autowired
ISchoolStudentClassesService
schoolStudentClassesService
;
//家长信息表
//家长信息表
---------------------
@Autowired
ISchoolStudentParentService
iSchoolStudentParentService
;
//老师表
@Autowired
ISchoolTeacherService
schoolTeacherService
;
//用户表
//老师表 临时表
@Autowired
ISchoolTeacherCopyService
schoolTeacherCopyService
;
//用户表 ----------------
@Autowired
ISysUserService
sysUserService
;
public
List
<
String
>
userTypes
=
new
ArrayList
<
String
>(){
{
this
.
add
(
"teacher"
);
...
...
@@ -98,12 +119,15 @@ public class DingJiaXiaoController {
}
};
@GetMapping
(
"/getList"
)
private
List
<
DingJiaXiaoVo
>
getList
(){
//更新年级与班级
@GetMapping
(
"/updateLabClassYear"
)
private
String
updateLabClassYear
(){
String
token
=
accessTokenUtils
.
getToken
();
//年级
List
<
DingJiaXiaoVo
>
njInfoList
=
new
ArrayList
<>();
List
<
SchoolGrade
>
schoolGradeCopies
=
new
ArrayList
<>();
// 0 获取校园信息
String
token
=
accessTokenUtils
.
getToken
();
JSONObject
jsonObjectParme
=
new
JSONObject
();
jsonObjectParme
.
put
(
"page_no"
,
1
);
jsonObjectParme
.
put
(
"page_size"
,
30
);
...
...
@@ -112,7 +136,7 @@ public class DingJiaXiaoController {
if
((
Integer
)
jsonObject
.
get
(
"errcode"
)
!=
0
){
throw
new
RuntimeException
(
"获取校园列表失败"
);
}
Integer
deptId
=
null
;
Integer
deptId
=
null
;
JSONObject
result
=
(
JSONObject
)
jsonObject
.
get
(
"result"
);
JSONArray
detailsArray
=
JSONArray
.
of
(
result
.
get
(
"details"
));
for
(
int
i
=
0
;
i
<
detailsArray
.
size
();
i
++){
...
...
@@ -125,7 +149,6 @@ public class DingJiaXiaoController {
xyParme
.
put
(
"page_size"
,
30
);
xyParme
.
put
(
"super_id"
,
deptId
);
String
xyPost
=
HttpUtil
.
post
(
listUrl
+
token
,
xyParme
);
JSONObject
xyObject
=
JSONObject
.
parseObject
(
xyPost
);
if
((
Integer
)
xyObject
.
get
(
"errcode"
)
!=
0
){
throw
new
RuntimeException
(
"获取年纪列表失败"
);
...
...
@@ -133,10 +156,10 @@ public class DingJiaXiaoController {
JSONObject
xyResult
=
(
JSONObject
)
xyObject
.
get
(
"result"
);
JSONArray
xyDetailsArray
=
JSONArray
.
of
(
xyResult
.
get
(
"details"
));
for
(
int
i
=
0
;
i
<
xyDetailsArray
.
size
();
i
++){
JSONObject
da
=
xyDetailsArray
.
getJSONArray
(
i
).
getJSONObject
(
i
);
JSONObject
da
=
xyDetailsArray
.
getJSONArray
(
i
).
getJSONObject
(
i
);
deptId
=
(
Integer
)
da
.
get
(
"dept_id"
);
}
//2.获取校园年级
//2.获取校园年级
JSONObject
njParme
=
new
JSONObject
();
njParme
.
put
(
"page_no"
,
1
);
njParme
.
put
(
"page_size"
,
30
);
...
...
@@ -148,81 +171,283 @@ public class DingJiaXiaoController {
}
JSONObject
njResult
=
(
JSONObject
)
njObject
.
get
(
"result"
);
JSONArray
njDetailsArray
=
JSONArray
.
of
(
njResult
.
get
(
"details"
));
for
(
int
i
=
0
;
i
<
njDetailsArray
.
size
();
i
++){
for
(
int
q
=
0
;
q
<
njDetailsArray
.
getJSONArray
(
i
).
size
();
q
++){
for
(
int
i
=
0
;
i
<
njDetailsArray
.
size
();
i
++)
{
for
(
int
q
=
0
;
q
<
njDetailsArray
.
getJSONArray
(
i
).
size
();
q
++)
{
JSONObject
da
=
njDetailsArray
.
getJSONArray
(
i
).
getJSONObject
(
q
);
String
grName
=
(
String
)
da
.
get
(
"name"
);
//截取级部 2022级
String
gradeJi
=
grName
.
substring
(
grName
.
length
()
-
5
);
String
grade
=
gradeJi
.
substring
(
0
,
gradeJi
.
length
()-
1
);
//获取年级 一年级
String
gradeName
=
grName
.
substring
(
0
,
grName
.
length
()
-
5
);
//级部id
Integer
suId
=
(
Integer
)
da
.
get
(
"dept_id"
);
SchoolGrade
schoolGrade
=
new
SchoolGrade
();
schoolGrade
.
setGradeValue
(
Integer
.
valueOf
(
this
.
gradeSubt
(
gradeName
)));
schoolGrade
.
setGradeYear
(
grade
);
schoolGrade
.
setGradeName
(
gradeJi
+
"部"
);
schoolGrade
.
setRemark
(
gradeName
);
schoolGrade
.
setDdClassId
(
String
.
valueOf
(
suId
));
schoolGrade
.
setCreateTime
(
new
Date
());
schoolGrade
.
setCreateBy
(
"admin"
);
schoolGrade
.
setDelFlag
(
"0"
);
schoolGrade
.
setUpdateBy
(
"admin"
);
schoolGrade
.
setUpdateTime
(
new
Date
());
schoolGradeCopies
.
add
(
schoolGrade
);
}
}
JSONObject
da
=
njDetailsArray
.
getJSONArray
(
i
).
getJSONObject
(
q
);
Integer
supId
=
(
Integer
)
da
.
get
(
"dept_id"
);
DingJiaXiaoVo
dingJiaXiaoVo
=
new
DingJiaXiaoVo
();
dingJiaXiaoVo
.
setGradeId
((
Integer
)
da
.
get
(
"dept_id"
));
dingJiaXiaoVo
.
setGradeName
((
String
)
da
.
get
(
"name"
));
//3.查询年纪下的班级
JSONObject
bjParme
=
new
JSONObject
();
bjParme
.
put
(
"page_no"
,
1
);
bjParme
.
put
(
"page_size"
,
30
);
bjParme
.
put
(
"super_id"
,
supId
);
String
bjPost
=
HttpUtil
.
post
(
listUrl
+
token
,
bjParme
);
JSONObject
bjObject
=
JSONObject
.
parseObject
(
bjPost
);
if
((
Integer
)
bjObject
.
get
(
"errcode"
)
!=
0
){
throw
new
RuntimeException
(
"获取班级列表失败"
);
//对年级进行排序 找出最新年级 设则最新学年状态 并且找出班级 进行保存
List
<
SchoolGrade
>
collect
=
schoolGradeCopies
.
stream
().
sorted
(
Comparator
.
comparing
(
SchoolGrade:
:
getGradeYear
,
Comparator
.
reverseOrder
())).
collect
(
Collectors
.
toList
());
//最新学年
String
schoolYear
=
collect
.
get
(
0
).
getGradeYear
();
for
(
int
i
=
0
;
i
<
collect
.
size
();
i
++)
{
collect
.
get
(
i
).
setSchoolYear
(
schoolYear
);
if
(
i
>=
3
){
//当前第四个以上不是新学年 更新数据库新学年状态
List
<
SchoolGrade
>
schoolGradeCopies1
=
schoolGradeService
.
queryList
(
collect
.
get
(
i
));
if
(
schoolGradeCopies1
.
isEmpty
()){
collect
.
get
(
i
).
setSfzxxn
(
"1"
);
schoolGradeService
.
save
(
collect
.
get
(
i
));
}
else
{
for
(
SchoolGrade
date
:
schoolGradeCopies1
){
date
.
setSfzxxn
(
"1"
);
schoolGradeService
.
updateById
(
date
);
}
}
continue
;
}
//追加学年
List
<
SchoolGrade
>
schoolGradeCopies1
=
schoolGradeService
.
queryList
(
collect
.
get
(
i
));
if
(
schoolGradeCopies1
.
isEmpty
()){
//追加
collect
.
get
(
i
).
setSfzxxn
(
"0"
);
schoolGradeService
.
save
(
collect
.
get
(
i
));
}
}
//追加班级
for
(
SchoolGrade
date:
collect
){
if
(
date
.
getId
()==
null
){
Long
l
=
schoolGradeService
.
selectDdClassId
(
date
.
getDdClassId
());
date
.
setId
(
l
);
}
//查找班级
//保存班级
JSONArray
ddHttp
=
this
.
getDdHttp
(
date
.
getDdClassId
(),
token
);
JSONArray
jsonArrays
=
ddHttp
.
getJSONArray
(
0
);
for
(
int
i
=
0
;
i
<
jsonArrays
.
size
()
;
i
++){
//查询当前班级是否存在
String
classDdId
=
jsonArrays
.
getJSONObject
(
i
).
get
(
"dept_id"
).
toString
();
Long
classId
=
iSchoolClassService
.
selectDdClassId
(
classDdId
);
if
(
null
!=
classId
){
SchoolClass
schoolClass
=
new
SchoolClass
();
schoolClass
.
setSchoolYear
(
Integer
.
valueOf
(
date
.
getSchoolYear
()));
schoolClass
.
setClassType
(
"4"
);
schoolClass
.
setGradeValue
(
date
.
getGradeValue
());
schoolClass
.
setGradeName
(
date
.
getGradeName
());
schoolClass
.
setClassValue
(
Integer
.
valueOf
(
jsonArrays
.
getJSONObject
(
i
).
getJSONObject
(
"feature"
).
get
(
"class_level"
).
toString
()));
String
className
=
jsonArrays
.
getJSONObject
(
i
).
get
(
"name"
).
toString
();
schoolClass
.
setClassName
(
className
.
substring
(
className
.
length
()-
2
));
schoolClass
.
setClassAlias
(
jsonArrays
.
getJSONObject
(
i
).
get
(
"name"
).
toString
());
schoolClass
.
setUpdateBy
(
"admin"
);
schoolClass
.
setUpdateTime
(
new
Date
());
schoolClass
.
setGradeId
(
date
.
getId
());
schoolClass
.
setDdClassId
(
classDdId
);
schoolClass
.
setId
(
classId
);
iSchoolClassService
.
updateById
(
schoolClass
);
}
else
{
SchoolClass
schoolClass
=
new
SchoolClass
();
schoolClass
.
setSchoolYear
(
Integer
.
valueOf
(
date
.
getSchoolYear
()));
schoolClass
.
setClassType
(
"4"
);
schoolClass
.
setGradeValue
(
date
.
getGradeValue
());
schoolClass
.
setGradeName
(
date
.
getGradeName
());
schoolClass
.
setClassValue
(
Integer
.
valueOf
(
jsonArrays
.
getJSONObject
(
i
).
getJSONObject
(
"feature"
).
get
(
"class_level"
).
toString
()));
String
className
=
jsonArrays
.
getJSONObject
(
i
).
get
(
"name"
).
toString
();
schoolClass
.
setClassName
(
className
.
substring
(
className
.
length
()-
2
));
schoolClass
.
setClassAlias
(
jsonArrays
.
getJSONObject
(
i
).
get
(
"name"
).
toString
());
schoolClass
.
setCreateBy
(
"admin"
);
schoolClass
.
setCreateTime
(
new
Date
());
schoolClass
.
setUpdateBy
(
"admin"
);
schoolClass
.
setUpdateTime
(
new
Date
());
schoolClass
.
setGradeId
(
date
.
getId
());
schoolClass
.
setDdClassId
(
classDdId
);
iSchoolClassService
.
save
(
schoolClass
);
}
}
}
JSONObject
bjResult
=
(
JSONObject
)
bjObject
.
get
(
"result"
);
JSONArray
bjDetailsArray
=
JSONArray
.
of
(
bjResult
.
get
(
"details"
));
//班级
List
<
DingJiaXiaoVo
.
ClassInfo
>
classInfoList
=
new
ArrayList
<>();
//查询班级班级
for
(
int
j
=
0
;
j
<
bjDetailsArray
.
size
();
j
++)
{
for
(
int
n
=
0
;
n
<
bjDetailsArray
.
getJSONArray
(
j
).
size
();
n
++)
{
JSONObject
classDate
=
bjDetailsArray
.
getJSONArray
(
j
).
getJSONObject
(
n
);
Integer
classId
=
(
Integer
)
classDate
.
get
(
"dept_id"
);
//创建班级
DingJiaXiaoVo
.
ClassInfo
classInfo
=
new
DingJiaXiaoVo
().
new
ClassInfo
();
classInfo
.
setClassId
((
Integer
)
classDate
.
get
(
"dept_id"
));
classInfo
.
setClassName
((
String
)
classDate
.
get
(
"name"
));
return
""
;
}
//更新追加人员信息
@GetMapping
(
"/updateLabUser"
)
private
String
updateLabUser
(){
//查找当前学年 所有的班级
String
nowSchoolYear
=
iSchoolGradeCopyService
.
selectUpToYear
();
SchoolClass
schoolClass
=
new
SchoolClass
();
schoolClass
.
setSchoolYear
(
Integer
.
valueOf
(
nowSchoolYear
));
List
<
SchoolClass
>
schoolClassCopies
=
iSchoolClassService
.
selectSchoolClassList
(
schoolClass
);
String
token
=
accessTokenUtils
.
getToken
();
for
(
SchoolClass
date
:
schoolClassCopies
){
//查询班级下边的人员 包含三种人员查询
//学生信息
List
<
DingJiaXiaoVo
.
StudentUserInfo
>
studentUserInfos
=
new
ArrayList
<>();
//老师信息
List
<
DingJiaXiaoVo
.
StudentUserInfo
>
teacherUserInfos
=
new
ArrayList
<>();
//监护人信息*
List
<
DingJiaXiaoVo
.
StudentUserInfo
>
guardianUserInfos
=
new
ArrayList
<>();
SchoolTeacherVO
schoolTeacher
=
new
SchoolTeacherVO
();
//分页查询,每次查询数据最大只有30条,分5次查询 一个班判断最大150人
for
(
String
type
:
userTypes
)
{
if
(
type
.
equals
(
"teacher"
))
{
//老师
teacherUserInfos
=
this
.
addUserList
(
token
,
type
,
classId
);
//同步家校通讯老师
teacherUserInfos
=
this
.
addUserList
(
token
,
type
,
date
.
getDdClassId
());
for
(
DingJiaXiaoVo
.
StudentUserInfo
teachDate
:
teacherUserInfos
){
// 关联老师跟班级信息
schoolTeacher
.
setTeacherName
(
teachDate
.
getName
());
List
<
SchoolTeacher
>
schoolTeacherCopies
=
schoolTeacherService
.
selectSchoolTeacherList
(
schoolTeacher
);
if
(
schoolTeacherCopies
.
isEmpty
()){
throw
new
RuntimeException
(
"钉钉老师未在系统中找到"
);
}
SchoolTeacher
classHeadTeacher
=
schoolTeacherCopies
.
get
(
0
);
//职工跟年级关系
SchoolGradeMentor
schoolGradeMentor
=
new
SchoolGradeMentor
();
schoolGradeMentor
.
setTeacherId
(
classHeadTeacher
.
getId
());
schoolGradeMentor
.
setGradeId
(
date
.
getGradeId
());
schoolGradeMentorService
.
save
(
schoolGradeMentor
);
if
(
"1"
.
equals
(
teachDate
.
getIsAdviser
())){
//当前老师是班主任 记录班主任跟班级关系
SchoolClassHeadmaster
schoolClassHeadmaster
=
new
SchoolClassHeadmaster
();
schoolClassHeadmaster
.
setTeacherId
(
classHeadTeacher
.
getId
());
schoolClassHeadmaster
.
setClassId
(
date
.
getId
());
iSchoolClassHeadmasterService
.
save
(
schoolClassHeadmaster
);
//设置班级 班主任信息
SchoolClass
schoolClassss
=
new
SchoolClass
();
schoolClassss
.
setId
(
date
.
getId
());
schoolClassss
.
setTeacherId
(
classHeadTeacher
.
getId
());
schoolClassss
.
setTeacherName
(
classHeadTeacher
.
getTeacherName
());
schoolClassss
.
setTeacherTel
(
classHeadTeacher
.
getTeacherTel
());
iSchoolClassService
.
updateById
(
schoolClassss
);
}
else
{
//任课老师 跟班级关系
SchoolClassMentor
schoolClassMentor
=
new
SchoolClassMentor
();
schoolClassMentor
.
setTeacherId
(
classHeadTeacher
.
getId
());
schoolClassMentor
.
setClassId
(
date
.
getId
());
//查找部门 课程没有编写
schoolClassMentorService
.
save
(
schoolClassMentor
);
}
}
}
else
if
(
type
.
equals
(
"student"
))
{
//学生
studentUserInfos
=
this
.
addUserList
(
token
,
type
,
date
.
getDdClassId
());
for
(
DingJiaXiaoVo
.
StudentUserInfo
studentDte
:
studentUserInfos
)
{
//学生信息
SchoolStudent
schoolStudent
=
new
SchoolStudent
();
schoolStudent
.
setStudentName
(
studentDte
.
getName
());
schoolStudent
.
setClassId
(
date
.
getId
());
schoolStudent
.
setStudentStatus
(
"1"
);
schoolStudent
.
setDdUserId
(
studentDte
.
getUserId
());
schoolStudentService
.
save
(
schoolStudent
);
//学生班级信息
SchoolStudentClassRelation
schoolStudentClassRelation
=
new
SchoolStudentClassRelation
();
schoolStudentClassRelation
.
setStudentId
(
schoolStudent
.
getId
());
schoolStudentClassRelation
.
setClassId
(
date
.
getId
());
iSchoolStudentClassRelationService
.
save
(
schoolStudentClassRelation
);
//学生与班级历史关系
SchoolClassCopy
school
=
iSchoolClassCopyService
.
selectSchoolClassById
(
date
.
getId
());
SchoolStudentClasses
schoolStudentClasses
=
new
SchoolStudentClasses
();
schoolStudentClasses
.
setStudentId
(
schoolStudent
.
getId
());
schoolStudentClasses
.
setGrade
(
school
.
getGradeName
());
schoolStudentClasses
.
setClasses
(
school
.
getClassName
());
schoolStudentClasses
.
setTeacherName
(
school
.
getTeacherName
());
schoolStudentClassesService
.
save
(
schoolStudentClasses
);
}
}
else
if
(
type
.
equals
(
"guardian"
))
{
//监护人
guardianUserInfos
=
this
.
addUserList
(
token
,
type
,
classId
);
}
else
if
(
type
.
equals
(
"student"
))
{
//学生
studentUserInfos
=
this
.
addUserList
(
token
,
type
,
classId
);
guardianUserInfos
=
this
.
addUserList
(
token
,
type
,
date
.
getDdClassId
());
for
(
DingJiaXiaoVo
.
StudentUserInfo
guarDate
:
guardianUserInfos
){
//找寻学生
String
toUserId
=
this
.
getToUserId
(
token
,
guarDate
.
getUserId
(),
date
.
getDdClassId
());
SchoolStudentVO
schoolStudentVO
=
new
SchoolStudentVO
();
schoolStudentVO
.
setDdUserId
(
toUserId
);
List
<
SchoolStudentVO
>
schoolStudentVOS
=
schoolStudentService
.
queryList
(
schoolStudentVO
);
Long
studenId
=
schoolStudentVOS
.
get
(
0
).
getId
();
//创建用户user表
SysUser
jUser
=
new
SysUser
();
jUser
.
setLoginName
(
guarDate
.
getName
());
jUser
.
setUserName
(
guarDate
.
getName
());
jUser
.
setUserType
(
"01"
);
jUser
.
setUserLoginType
(
"1"
);
jUser
.
setPhonenumber
(
guarDate
.
getMobile
());
jUser
.
setPassword
(
SecurityUtils
.
encryptPassword
(
"123#@!"
));
jUser
.
setStatus
(
"0"
);
jUser
.
setDelFlag
(
"0"
);
jUser
.
setUnionId
(
guarDate
.
getUnionid
());
jUser
.
setRoleIds
(
new
Long
[]{
111L
});
jUser
.
setStudentId
(
studenId
);
sysUserService
.
insertUser
(
jUser
);
//家长表
SchoolStudentParent
schoolStudentParent
=
new
SchoolStudentParent
()
;
schoolStudentParent
.
setStudentId
(
studenId
);
schoolStudentParent
.
setUserId
(
jUser
.
getUserId
());
schoolStudentParent
.
setParentName
(
guarDate
.
getName
());
schoolStudentParent
.
setTelephone
(
guarDate
.
getMobile
());
Integer
patriarch
=
this
.
getPatriarch
(
guarDate
.
getName
().
substring
(
guarDate
.
getName
().
length
()
-
2
));
schoolStudentParent
.
setRelationship
(
String
.
valueOf
(
patriarch
));
iSchoolStudentParentService
.
save
(
schoolStudentParent
);
}
}
}
//将人员存入班级中
classInfo
.
setStudentUserInfos
(
studentUserInfos
);
classInfo
.
setTeacherUserInfos
(
teacherUserInfos
);
classInfo
.
setGuardianUserInfos
(
guardianUserInfos
);
classInfoList
.
add
(
classInfo
);
}
}
dingJiaXiaoVo
.
setClassInfoList
(
classInfoList
);
njInfoList
.
add
(
dingJiaXiaoVo
);
}
}
return
njInfoList
;
return
""
;
}
//获取监护人详情 获取学生userid
private
String
getToUserId
(
String
token
,
String
fromUserId
,
String
classId
){
String
toUserId
=
null
;
JSONObject
bjParme
=
new
JSONObject
();
bjParme
.
put
(
"from_userid"
,
fromUserId
);
bjParme
.
put
(
"class_id"
,
classId
);
String
bjPost
=
HttpUtil
.
post
(
"https://oapi.dingtalk.com/topapi/edu/user/relation/get?access_token="
+
token
,
bjParme
);
JSONObject
bjObject
=
JSONObject
.
parseObject
(
bjPost
);
if
((
Integer
)
bjObject
.
get
(
"errcode"
)
!=
0
){
throw
new
RuntimeException
(
"获取班级列表失败"
);
}
JSONArray
jsonArray
=
bjObject
.
getJSONObject
(
"result"
).
getJSONArray
(
"relations"
);
for
(
int
i
=
0
;
i
<
jsonArray
.
size
();
i
++){
toUserId
=
jsonArray
.
getJSONObject
(
0
).
get
(
"to_userid"
).
toString
();
}
return
toUserId
;
}
private
JSONArray
getDdHttp
(
String
supId
,
String
token
){
JSONObject
bjParme
=
new
JSONObject
();
bjParme
.
put
(
"page_no"
,
1
);
bjParme
.
put
(
"page_size"
,
30
);
bjParme
.
put
(
"super_id"
,
supId
);
String
bjPost
=
HttpUtil
.
post
(
listUrl
+
token
,
bjParme
);
JSONObject
bjObject
=
JSONObject
.
parseObject
(
bjPost
);
if
((
Integer
)
bjObject
.
get
(
"errcode"
)
!=
0
){
throw
new
RuntimeException
(
"获取班级列表失败"
);
}
JSONObject
bjResult
=
(
JSONObject
)
bjObject
.
get
(
"result"
);
JSONArray
bjDetailsArray
=
JSONArray
.
of
(
bjResult
.
get
(
"details"
));
return
bjDetailsArray
;
}
private
List
<
DingJiaXiaoVo
.
StudentUserInfo
>
addUserList
(
String
token
,
String
type
,
Integer
classId
){
private
List
<
DingJiaXiaoVo
.
StudentUserInfo
>
addUserList
(
String
token
,
String
type
,
String
classId
){
List
<
DingJiaXiaoVo
.
StudentUserInfo
>
userList
=
new
ArrayList
<>();
//分页查询,每次查询数据最大只有30条,分5次查询 一个班判断最大150人
for
(
int
k
=
1
;
k
<=
5
;
k
++
){
for
(
int
k
=
1
;
k
<=
4
;
k
++
){
//查询班级下边的人员
JSONObject
ryParme
=
new
JSONObject
();
ryParme
.
put
(
"page_no"
,
k
);
...
...
@@ -237,7 +462,6 @@ public class DingJiaXiaoController {
JSONObject
ryResult
=
(
JSONObject
)
ryObject
.
get
(
"result"
);
JSONArray
xyDetailsArray
=
JSONArray
.
of
(
ryResult
.
get
(
"details"
));
for
(
int
o
=
0
;
o
<
xyDetailsArray
.
size
();
o
++){
for
(
int
i
=
0
;
i
<
xyDetailsArray
.
getJSONArray
(
o
).
size
();
i
++){
JSONObject
userInfo
=
xyDetailsArray
.
getJSONArray
(
o
).
getJSONObject
(
i
);
DingJiaXiaoVo
.
StudentUserInfo
studentUserInfo
=
new
DingJiaXiaoVo
().
new
StudentUserInfo
();
...
...
@@ -248,8 +472,11 @@ public class DingJiaXiaoController {
studentUserInfo
.
setName
(
userInfo
.
get
(
"name"
).
toString
());
studentUserInfo
.
setIsAdviser
(
userInfo
.
getJSONObject
(
"feature"
).
get
(
"is_adviser"
)
==
null
?
null
:
userInfo
.
getJSONObject
(
"feature"
).
get
(
"is_adviser"
).
toString
());
studentUserInfo
.
setStudentNo
(
userInfo
.
getJSONObject
(
"feature"
).
get
(
"student_no"
)
==
null
?
null
:
userInfo
.
getJSONObject
(
"feature"
).
get
(
"student_no"
).
toString
());
String
tel
=
this
.
getTel
(
studentUserInfo
.
getUserId
(),
token
);
studentUserInfo
.
setMobile
(
tel
);
//学生没有手机号 不需要查询手机号
if
(!
type
.
equals
(
"student"
)){
String
tel
=
this
.
getTel
(
studentUserInfo
.
getUserId
(),
token
);
studentUserInfo
.
setMobile
(
tel
);
}
userList
.
add
(
studentUserInfo
);
}
}
...
...
@@ -262,181 +489,202 @@ public class DingJiaXiaoController {
/**
* 钉钉数据同步到数据,
* //班级、级部 、学生、家长、老师、班级关系、
*/
@GetMapping
(
"/updateJiaXiaoTX"
)
public
void
updateJiaXiaoTX
(){
//获取钉钉数据
List
<
DingJiaXiaoVo
>
list
=
this
.
getList
();
//循环更新
for
(
DingJiaXiaoVo
njDate
:
list
){
//更新年级
String
gradeName
=
njDate
.
getGradeName
();
Integer
gradeId
=
njDate
.
getGradeId
();
SchoolGrade
schoolGrade
=
new
SchoolGrade
();
schoolGrade
.
setGradeName
(
gradeName
.
substring
(
gradeName
.
length
()-
5
)+
"部"
);
schoolGrade
.
setGradeValue
(
this
.
gradeSubt
(
gradeName
.
substring
(
3
)));
schoolGrade
.
setGradeYear
(
gradeName
.
substring
(
gradeName
.
length
()-
5
,
4
));
schoolGrade
.
setSchoolYear
(
gradeName
.
substring
(
gradeName
.
length
()-
5
,
4
));
schoolGrade
.
setRemark
(
gradeName
);
schoolGrade
.
setId
(
Long
.
valueOf
(
gradeId
));
schoolGradeService
.
save
(
schoolGrade
);
//获取班级
List
<
DingJiaXiaoVo
.
ClassInfo
>
classInfoList
=
njDate
.
getClassInfoList
();
//遍历班级
for
(
DingJiaXiaoVo
.
ClassInfo
classDate
:
classInfoList
){
String
teacherName
=
null
;
Integer
classId
=
classDate
.
getClassId
();
String
className
=
classDate
.
getClassName
();
Map
<
String
,
String
>
fromUserId
=
this
.
getFromUserId
(
Long
.
valueOf
(
classId
),
accessTokenUtils
.
getToken
());
SchoolClass
schoolClass
=
new
SchoolClass
();
schoolClass
.
setSchoolYear
(
Integer
.
valueOf
(
schoolGrade
.
getSchoolYear
()));
schoolClass
.
setClassType
(
"4"
);
schoolClass
.
setGradeValue
(
Integer
.
valueOf
(
schoolGrade
.
getGradeYear
()));
schoolClass
.
setGradeName
(
schoolGrade
.
getGradeName
());
schoolClass
.
setId
(
Long
.
valueOf
(
classId
));
schoolClass
.
setClassName
(
className
);
schoolClass
.
setClassValue
(
Integer
.
valueOf
(
className
.
substring
(
className
.
length
()-
2
,
1
)));
schoolClass
.
setClassAlias
(
className
);
schoolClass
.
setGradeId
(
schoolGrade
.
getId
());
schoolClass
.
setGradeId
(
schoolGrade
.
getId
());
//班级
iSchoolClassService
.
save
(
schoolClass
);
//老师
List
<
DingJiaXiaoVo
.
StudentUserInfo
>
teacherUserInfos
=
classDate
.
getTeacherUserInfos
();
for
(
DingJiaXiaoVo
.
StudentUserInfo
date
:
teacherUserInfos
){
SysUser
sysUser
=
new
SysUser
();
sysUser
.
setUserId
(
Long
.
valueOf
(
date
.
getUserId
()));
// sysUser.setDept(); 部门没有
sysUser
.
setLoginName
(
date
.
getName
());
sysUser
.
setUserName
(
date
.
getName
());
sysUser
.
setUserType
(
"01"
);
sysUser
.
setUserLoginType
(
"0"
);
sysUser
.
setPhonenumber
(
date
.
getMobile
());
sysUser
.
setPassword
(
SecurityUtils
.
encryptPassword
(
"123456"
));
sysUser
.
setStatus
(
"0"
);
sysUser
.
setDelFlag
(
"0"
);
sysUser
.
setUnionId
(
date
.
getUnionid
());
sysUser
.
setRoleIds
(
new
Long
[]{
111L
});
//用户表
sysUserService
.
insertUser
(
sysUser
);
SchoolTeacher
schoolTeacher
=
new
SchoolTeacher
();
schoolTeacher
.
setTeacherName
(
date
.
getName
());
// schoolTeacher.setSex(); 性别没有
schoolTeacher
.
setNation
(
"汉族"
);
// schoolTeacher.setTeacherCode(); 工作编号
schoolTeacher
.
setUserId
(
sysUser
.
getUserId
());
schoolTeacher
.
setTeacherTel
(
date
.
getMobile
());
schoolTeacher
.
setUnionId
(
date
.
getUnionid
());
// schoolTeacher.setDeptId(); schoolTeacher.setDeptName(); 部门没有
//老师表
schoolTeacherService
.
save
(
schoolTeacher
);
//老师与班级关系表 缺少课程信息
// SchoolClassMentor schoolClassMentor = new SchoolClassMentor();
// schoolClassMentor.setTeacherId(schoolTeacher.getId());
// schoolClassMentorService.save(schoolClassMentor);
if
(
date
.
getIsAdviser
().
equals
(
"1"
)){
schoolClass
.
setTeacherId
(
schoolTeacher
.
getId
());
schoolClass
.
setTeacherName
(
date
.
getName
());
schoolClass
.
setTeacherTel
(
date
.
getMobile
());
teacherName
=
date
.
getName
();
SchoolClassHeadmaster
schoolClassHeadmaster
=
new
SchoolClassHeadmaster
();
schoolClassHeadmaster
.
setTeacherId
(
schoolTeacher
.
getId
());
schoolClassHeadmaster
.
setClassId
(
Long
.
valueOf
(
classId
));
//班主任和班级关系
iSchoolClassHeadmasterService
.
save
(
schoolClassHeadmaster
);
}
}
//学生
List
<
DingJiaXiaoVo
.
StudentUserInfo
>
studentUserInfos
=
classDate
.
getStudentUserInfos
();
for
(
DingJiaXiaoVo
.
StudentUserInfo
date
:
studentUserInfos
){
//学生表
SchoolStudent
schoolStudent
=
new
SchoolStudent
();
schoolStudent
.
setStudentName
(
date
.
getName
());
// schoolStudent.setSex();
schoolStudent
.
setClassId
(
Long
.
valueOf
(
classId
));
// schoolStudent.setIdCard(); 身份证号
schoolStudent
.
setNation
(
"汉族"
);
schoolStudent
.
setNationalNumber
(
date
.
getStudentNo
());
schoolStudent
.
setEnrollmentYear
(
gradeName
.
substring
(
gradeName
.
length
()-
5
,
4
));
schoolStudent
.
setStudentStatus
(
"1"
);
schoolStudent
.
setId
(
Long
.
valueOf
(
date
.
getUserId
()));
schoolStudentService
.
save
(
schoolStudent
);
//学生与班级关系
SchoolStudentClassRelation
schoolStudentClassRelation
=
new
SchoolStudentClassRelation
();
schoolStudentClassRelation
.
setClassId
(
Long
.
valueOf
(
classId
));
schoolStudentClassRelation
.
setStudentId
(
schoolStudent
.
getId
());
iSchoolStudentClassRelationService
.
save
(
schoolStudentClassRelation
);
//学生历史班级表
SchoolStudentClasses
schoolStudentClasses
=
new
SchoolStudentClasses
();
schoolStudentClasses
.
setTeacherName
(
teacherName
);
schoolStudentClasses
.
setStudentId
(
schoolStudent
.
getId
());
schoolStudentClasses
.
setGrade
(
gradeName
.
substring
(
gradeName
.
length
()-
5
,
4
));
schoolStudentClasses
.
setClasses
(
className
);
schoolStudentClassesService
.
save
(
schoolStudentClasses
);
}
//监护人
List
<
DingJiaXiaoVo
.
StudentUserInfo
>
guardianUserInfos
=
classDate
.
getGuardianUserInfos
();
for
(
DingJiaXiaoVo
.
StudentUserInfo
date
:
guardianUserInfos
){
String
studentId
=
fromUserId
.
get
(
date
.
getUserId
());
//创建家长用户
SysUser
jUser
=
new
SysUser
();
jUser
.
setUserId
(
Long
.
valueOf
(
date
.
getUserId
()));
// sysUser.setDept(); 部门没有
jUser
.
setLoginName
(
date
.
getName
());
jUser
.
setUserName
(
date
.
getName
());
jUser
.
setUserType
(
"01"
);
jUser
.
setUserLoginType
(
"1"
);
jUser
.
setPhonenumber
(
date
.
getMobile
());
jUser
.
setPassword
(
SecurityUtils
.
encryptPassword
(
"123456"
));
jUser
.
setStatus
(
"0"
);
jUser
.
setDelFlag
(
"0"
);
jUser
.
setUnionId
(
date
.
getUnionid
());
jUser
.
setRoleIds
(
new
Long
[]{
111L
});
jUser
.
setStudentId
(
Long
.
valueOf
(
studentId
));
sysUserService
.
insertUser
(
jUser
);
//维护家长表
SchoolStudentParent
schoolStudentParent
=
new
SchoolStudentParent
();
schoolStudentParent
.
setStudentId
(
Long
.
valueOf
(
studentId
));
schoolStudentParent
.
setUserId
(
jUser
.
getUserId
());
schoolStudentParent
.
setParentName
(
date
.
getName
());
schoolStudentParent
.
setTelephone
(
date
.
getMobile
());
Integer
patriarch
=
this
.
getPatriarch
(
date
.
getName
().
substring
(
date
.
getName
().
length
()
-
2
));
schoolStudentParent
.
setRelationship
(
patriarch
.
toString
());
iSchoolStudentParentService
.
save
(
schoolStudentParent
);
}
iSchoolClassService
.
updateById
(
schoolClass
);
}
}
}
private
Integer
gradeSubt
(
String
grade
){
Integer
gId
=
null
;
// */
// @GetMapping("/updateJiaXiaoTX")
// public void updateJiaXiaoTX(){
//
// //获取钉钉数据
// List<DingJiaXiaoVo> list = null;
// //循环更新
// for (DingJiaXiaoVo njDate : list){
// //更新年级
// String gradeName = njDate.getGradeName();
// Integer gradeId = njDate.getGradeId();
// SchoolGrade schoolGrade = new SchoolGrade();
// schoolGrade.setGradeName(gradeName.substring(gradeName.length()- 5)+"部");
// schoolGrade.setGradeValue(Integer.valueOf(this.gradeSubt(gradeName.substring(3))));
// schoolGrade.setGradeYear(gradeName.substring(gradeName.length()- 5,4));
// schoolGrade.setSchoolYear(gradeName.substring(gradeName.length()- 5,4));
// schoolGrade.setRemark(gradeName);
// schoolGrade.setId(Long.valueOf(gradeId));
// schoolGradeService.save(schoolGrade);
// //获取班级
// List<DingJiaXiaoVo.ClassInfo> classInfoList = njDate.getClassInfoList();
// //遍历班级
// for (DingJiaXiaoVo.ClassInfo classDate : classInfoList){
//
//
// String teacherName =null;
//
// Integer classId = classDate.getClassId();
// String className = classDate.getClassName();
// Map<String,String> fromUserId = this.getFromUserId(Long.valueOf(classId), accessTokenUtils.getToken());
// SchoolClass schoolClass = new SchoolClass();
// schoolClass.setSchoolYear(Integer.valueOf(schoolGrade.getSchoolYear()));
// schoolClass.setClassType("4");
// schoolClass.setGradeValue(Integer.valueOf(schoolGrade.getGradeYear()));
// schoolClass.setGradeName(schoolGrade.getGradeName());
// schoolClass.setId(Long.valueOf(classId));
// schoolClass.setClassName(className);
// schoolClass.setClassValue(Integer.valueOf(className.substring(className.length()-2,1)));
// schoolClass.setClassAlias(className);
// schoolClass.setGradeId(schoolGrade.getId());
// schoolClass.setGradeId(schoolGrade.getId());
//
// //班级
// iSchoolClassService.save(schoolClass);
//
// //老师
// List<DingJiaXiaoVo.StudentUserInfo> teacherUserInfos = classDate.getTeacherUserInfos();
// for (DingJiaXiaoVo.StudentUserInfo date : teacherUserInfos){
// SysUser sysUser = new SysUser();
// sysUser.setUserId(Long.valueOf(date.getUserId()));
//// sysUser.setDept(); 部门没有
// sysUser.setLoginName(date.getName());
// sysUser.setUserName(date.getName());
// sysUser.setUserType("01");
// sysUser.setUserLoginType("0");
// sysUser.setPhonenumber(date.getMobile());
// sysUser.setPassword(SecurityUtils.encryptPassword("123456"));
// sysUser.setStatus("0");
// sysUser.setDelFlag("0");
// sysUser.setUnionId(date.getUnionid());
// sysUser.setRoleIds(new Long[]{111L});
// //用户表
// sysUserService.insertUser(sysUser);
//
// SchoolTeacher schoolTeacher = new SchoolTeacher();
// schoolTeacher.setTeacherName(date.getName());
// // schoolTeacher.setSex(); 性别没有
// schoolTeacher.setNation("汉族");
//// schoolTeacher.setTeacherCode(); 工作编号
// schoolTeacher.setUserId(sysUser.getUserId());
// schoolTeacher.setTeacherTel(date.getMobile());
// schoolTeacher.setUnionId(date.getUnionid());
// // schoolTeacher.setDeptId(); schoolTeacher.setDeptName(); 部门没有
// //老师表
// schoolTeacherService.save(schoolTeacher);
// //老师与班级关系表 缺少课程信息
//// SchoolClassMentor schoolClassMentor = new SchoolClassMentor();
//// schoolClassMentor.setTeacherId(schoolTeacher.getId());
//// schoolClassMentorService.save(schoolClassMentor);
// if (date.getIsAdviser().equals("1")){
// schoolClass.setTeacherId(schoolTeacher.getId());
// schoolClass.setTeacherName(date.getName());
// schoolClass.setTeacherTel(date.getMobile());
// teacherName = date.getName();
// SchoolClassHeadmaster schoolClassHeadmaster = new SchoolClassHeadmaster();
// schoolClassHeadmaster.setTeacherId(schoolTeacher.getId());
// schoolClassHeadmaster.setClassId(Long.valueOf(classId));
// //班主任和班级关系
// iSchoolClassHeadmasterService.save(schoolClassHeadmaster);
// }
// }
//
// //学生
// List<DingJiaXiaoVo.StudentUserInfo> studentUserInfos = classDate.getStudentUserInfos();
// for (DingJiaXiaoVo.StudentUserInfo date : studentUserInfos){
// //学生表
// SchoolStudent schoolStudent = new SchoolStudent();
// schoolStudent.setStudentName(date.getName());
//// schoolStudent.setSex();
// schoolStudent.setClassId(Long.valueOf(classId));
//// schoolStudent.setIdCard(); 身份证号
// schoolStudent.setNation("汉族");
// schoolStudent.setNationalNumber(date.getStudentNo());
// schoolStudent.setEnrollmentYear(gradeName.substring(gradeName.length()- 5,4));
// schoolStudent.setStudentStatus("1");
// schoolStudent.setId(Long.valueOf(date.getUserId()));
// schoolStudentService.save(schoolStudent);
// //学生与班级关系
// SchoolStudentClassRelation schoolStudentClassRelation = new SchoolStudentClassRelation();
// schoolStudentClassRelation.setClassId(Long.valueOf(classId));
// schoolStudentClassRelation.setStudentId(schoolStudent.getId());
// iSchoolStudentClassRelationService.save(schoolStudentClassRelation);
// //学生历史班级表
// SchoolStudentClasses schoolStudentClasses = new SchoolStudentClasses();
// schoolStudentClasses.setTeacherName(teacherName);
// schoolStudentClasses.setStudentId(schoolStudent.getId());
// schoolStudentClasses.setGrade(gradeName.substring(gradeName.length()- 5,4));
// schoolStudentClasses.setClasses(className);
// schoolStudentClassesService.save(schoolStudentClasses);
// }
// //监护人
// List<DingJiaXiaoVo.StudentUserInfo> guardianUserInfos = classDate.getGuardianUserInfos();
// for (DingJiaXiaoVo.StudentUserInfo date : guardianUserInfos){
// String studentId = fromUserId.get(date.getUserId());
//
// //创建家长用户
// SysUser jUser = new SysUser();
// jUser.setUserId(Long.valueOf(date.getUserId()));
//// sysUser.setDept(); 部门没有
// jUser.setLoginName(date.getName());
// jUser.setUserName(date.getName());
// jUser.setUserType("01");
// jUser.setUserLoginType("1");
// jUser.setPhonenumber(date.getMobile());
// jUser.setPassword(SecurityUtils.encryptPassword("123456"));
// jUser.setStatus("0");
// jUser.setDelFlag("0");
// jUser.setUnionId(date.getUnionid());
// jUser.setRoleIds(new Long[]{111L});
// jUser.setStudentId(Long.valueOf(studentId));
// sysUserService.insertUser(jUser);
// //维护家长表
// SchoolStudentParent schoolStudentParent = new SchoolStudentParent();
// schoolStudentParent.setStudentId(Long.valueOf(studentId));
// schoolStudentParent.setUserId(jUser.getUserId());
// schoolStudentParent.setParentName(date.getName());
// schoolStudentParent.setTelephone(date.getMobile());
// Integer patriarch = this.getPatriarch(date.getName().substring(date.getName().length() - 2));
// schoolStudentParent.setRelationship(patriarch.toString());
// iSchoolStudentParentService.save(schoolStudentParent);
//
// }
//
//
// iSchoolClassService.updateById(schoolClass);
//
//
// }
// }
// }
private
String
gradeSubt
(
String
grade
){
String
gId
=
null
;
switch
(
grade
){
case
"六年级"
:
return
gId
=
6
;
case
"七年级"
:
return
gId
=
7
;
case
"八年级"
:
return
gId
=
8
;
case
"九年级"
:
return
gId
=
9
;
case
"一年级"
:
return
gId
=
1
;
case
"二年级"
:
return
gId
=
2
;
case
"三年级"
:
return
gId
=
3
;
case
"四年级"
:
return
gId
=
4
;
case
"五年级"
:
return
gId
=
5
;
case
"一年级"
:
return
gId
=
"1"
;
case
"二年级"
:
return
gId
=
"2"
;
case
"三年级"
:
return
gId
=
"3"
;
case
"四年级"
:
return
gId
=
"4"
;
case
"五年级"
:
return
gId
=
"5"
;
case
"六年级"
:
return
gId
=
"6"
;
case
"七年级"
:
return
gId
=
"7"
;
case
"八年级"
:
return
gId
=
"8"
;
case
"九年级"
:
return
gId
=
"9"
;
case
"十年级"
:
return
gId
=
"10"
;
case
"十一年级"
:
return
gId
=
"11"
;
case
"十二年级"
:
return
gId
=
"12"
;
case
"十三年级"
:
return
gId
=
"13"
;
case
"十四年级"
:
return
gId
=
"14"
;
case
"十五年级"
:
return
gId
=
"15"
;
case
"十六年级"
:
return
gId
=
"16"
;
case
"十七年级"
:
return
gId
=
"17"
;
case
"十八年级"
:
return
gId
=
"18"
;
case
"十九年级"
:
return
gId
=
"19"
;
case
"二十年级"
:
return
gId
=
"20"
;
case
"二十一年级"
:
return
gId
=
"21"
;
case
"二十二级"
:
return
gId
=
"22"
;
case
"二十三年级"
:
return
gId
=
"23"
;
case
"二十四年级"
:
return
gId
=
"24"
;
case
"二十五年级"
:
return
gId
=
"25"
;
case
"二十六年级"
:
return
gId
=
"26"
;
case
"二十七年级"
:
return
gId
=
"27"
;
case
"二十八年级"
:
return
gId
=
"28"
;
case
"二十九年级"
:
return
gId
=
"29"
;
case
"三十年级"
:
return
gId
=
"30"
;
}
return
gId
;
}
...
...
smart-campus/src/main/resources/mapper/schoolClass/SchoolClassMapper.xml
View file @
05b3eb2d
...
...
@@ -159,4 +159,9 @@
where del_flag = '0' and grade_id = #{gradeId}
</select>
<select
id=
"selectDdClassId"
resultType=
"java.lang.Long"
>
select sg.id from school_class_copy sg
where sg.del_flag = '0' and sg.dd_class_id=#{ddClssId}
</select>
</mapper>
smart-campus/src/main/resources/mapper/schoolgrade/SchoolGradeMapper.xml
View file @
05b3eb2d
...
...
@@ -54,5 +54,8 @@
<include
refid=
"selectSchoolGradeVo"
/>
where school_year = (select max(school_year) from school_grade )
</select>
<select
id=
"selectDdClassId"
resultType=
"java.lang.Long"
>
select sg.id from school_grade_copy sg
where sg.del_flag = '0' and sg.dd_class_id=#{ddClssId}
</select>
</mapper>
smart-campus/src/main/resources/mapper/student/SchoolStudentMapper.xml
View file @
05b3eb2d
...
...
@@ -29,6 +29,7 @@
<result
property=
"appearance"
column=
"appearance"
/>
<result
property=
"registeredAddress"
column=
"registered_address"
/>
<result
property=
"registeredType"
column=
"registered_type"
/>
<result
property=
"ddUserId"
column=
"dd_user_id"
/>
</resultMap>
<sql
id=
"selectSchoolStudentVo"
>
...
...
@@ -42,6 +43,7 @@
native_place,
avatar,
id_card,
dd_user_id,
school_no,
student_status,
student_type,
...
...
@@ -72,6 +74,7 @@
<if
test=
"studentStatus != null"
>
student_status,
</if>
<if
test=
"studentType != null"
>
student_type,
</if>
<if
test=
"oneCard != null and oneCard != ''"
>
one_card,
</if>
<if
test=
"ddUserId != null and oneCard != ''"
>
dd_user_id,
</if>
</trim>
<trim
prefix=
"values ("
suffix=
")"
suffixOverrides=
","
>
<if
test=
"classId != null"
>
#{classId},
</if>
...
...
@@ -90,6 +93,7 @@
<if
test=
"studentStatus != null"
>
#{studentStatus},
</if>
<if
test=
"studentType != null"
>
#{studentType},
</if>
<if
test=
"oneCard != null and oneCard != ''"
>
#{oneCard},
</if>
<if
test=
"ddUserId != null and ddUserId != ''"
>
#{ddUserId},
</if>
</trim>
</insert>
...
...
@@ -100,7 +104,7 @@
<select
id=
"queryList"
parameterType=
"SchoolStudentVO"
resultType=
"yangtz.cs.liu.campus.vo.student.SchoolStudentVO"
>
select ss.id,ss.class_id,ss.student_name,ss.sex,ss.birthday,ss.nation,ss.stu_telephone,ss.postal_code,
ss.nature,ss.provincial_number,ss.national_number,ss.enrollment_year,ss.home_address,
ss.native_place, ss.avatar, ss.id_card,ss.school_no, ss.student_status, ss.platform,
ss.native_place, ss.avatar,
ss.dd_user_id,
ss.id_card,ss.school_no, ss.student_status, ss.platform,
ss.birth_address,ss.postal_address,ss.junior_school,ss.region,ss.foreign_languages,
ss.blood_type,ss.health,ss.other_regions,ss.floating_population,ss.support,ss.only_child,
ss.student_type, ss.one_card, ss.enrollment_time, ss.appearance, ss.registered_address, ss.registered_type,
...
...
@@ -123,6 +127,7 @@
<if
test=
"schoolNo != null and schoolNo != ''"
>
and ss.school_no like concat('%', #{schoolNo}, '%')
</if>
<if
test=
"studentStatus != null and studentStatus !=''"
>
and ss.student_status = #{studentStatus}
</if>
<if
test=
"studentType != null and studentType !=''"
>
and ss.student_type = #{studentType}
</if>
<if
test=
"ddUserId != null and ddUserId !=''"
>
and ss.dd_user_id = #{ddUserId}
</if>
</where>
order by ss.class_id asc
</select>
...
...
@@ -146,6 +151,7 @@
<if
test=
"studentStatus != null and studentStatus !=''"
>
and student_status = #{studentStatus}
</if>
<if
test=
"studentType != null and studentType !=''"
>
and student_type = #{studentType}
</if>
<if
test=
"oneCard != null and oneCard !=''"
>
and one_card = #{oneCard}
</if>
<if
test=
"ddUserId != null and ddUserId !=''"
>
and dd_user_id = #{ddUserId}
</if>
and del_flag = '0'
</where>
order by create_time desc
...
...
@@ -179,6 +185,7 @@
ss.student_type,
ss.one_card,
sg.class_alias
sg.dd_user_id
FROM school_student ss
LEFT JOIN school_class sg ON sg.id = ss.class_id
LEFT JOIN school_teacher st ON st.id = sg.teacher_id
...
...
@@ -213,6 +220,7 @@
ssp.parent_name,
ssp.relationship,
ssp.telephone
ssp.dd_user_id
FROM school_student s
LEFT JOIN school_class sg on sg.id = s.class_id
LEFT JOIN school_student_parent ssp on ssp.student_id = s.id
...
...
@@ -244,7 +252,7 @@
<select
id=
"getInfo"
resultType=
"yangtz.cs.liu.campus.vo.student.SchoolStudentVO"
>
select ss.id,ss.class_id,ss.student_name,ss.sex,ss.birthday,ss.nation,ss.stu_telephone,ss.postal_code,
ss.nature,ss.provincial_number,ss.national_number,ss.enrollment_year,ss.home_address,
ss.native_place, ss.avatar, ss.id_card,ss.school_no, ss.student_status, ss.platform,
ss.native_place, ss.avatar,
ss.dd_user_id,
ss.id_card,ss.school_no, ss.student_status, ss.platform,
ss.birth_address,ss.postal_address,ss.junior_school,ss.region,ss.foreign_languages,
ss.blood_type,ss.health,ss.other_regions,ss.floating_population,ss.support,ss.only_child,
ss.student_type, ss.one_card, ss.enrollment_time, ss.appearance, ss.registered_address, ss.registered_type,
...
...
@@ -284,7 +292,7 @@
<select
id=
"getInfoByidCard"
resultType=
"yangtz.cs.liu.campus.vo.student.SchoolStudentVO"
>
select ss.id,ss.class_id,ss.student_name,ss.sex,ss.birthday,ss.nation,ss.stu_telephone,ss.postal_code,
ss.nature,ss.provincial_number,ss.national_number,ss.enrollment_year,ss.home_address,
ss.native_place,sc.school_year, ss.avatar, ss.id_card,ss.school_no, ss.student_status,ss.platform,
ss.native_place,sc.school_year, ss.
dd_user_id,ss.
avatar, ss.id_card,ss.school_no, ss.student_status,ss.platform,
ss.birth_address,ss.postal_address,ss.junior_school,ss.region,ss.foreign_languages,
ss.blood_type,ss.health,ss.other_regions,ss.floating_population,ss.support,ss.only_child,
ss.student_type, ss.one_card, ss.enrollment_time, ss.appearance, ss.registered_address, ss.registered_type,
...
...
@@ -314,6 +322,7 @@
<if
test=
"data.studentStatus != null and data.studentStatus != ''"
>
student_status,
</if>
<if
test=
"data.studentType != null and data.studentType != ''"
>
student_type,
</if>
<if
test=
"data.oneCard != null and data.oneCard != ''"
>
one_card,
</if>
<if
test=
"data.ddUserId != null and data.ddUserId != ''"
>
dd_user_id,
</if>
</trim>
<trim
prefix=
"values ("
suffix=
")"
suffixOverrides=
","
>
<if
test=
"data.classId != null"
>
#{data.classId},
</if>
...
...
@@ -330,6 +339,7 @@
<if
test=
"data.studentStatus != null and data.studentStatus != ''"
>
#{data.studentStatus},
</if>
<if
test=
"data.studentType != null and data.studentType != ''"
>
#{data.studentType},
</if>
<if
test=
"data.oneCard != null and data.oneCard != ''"
>
#{data.oneCard},
</if>
<if
test=
"data.ddUserId != null and data.ddUserId != ''"
>
#{data.ddUserId},
</if>
</trim>
</foreach>
</insert>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment