Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
V
volunteer_service
Project
Project
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
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
licc
volunteer_service
Commits
0a2a9791
Commit
0a2a9791
authored
Jan 07, 2021
by
licc
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
用户实体类提交
parent
a849fb41
Show whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
185 additions
and
558 deletions
+185
-558
UsersMapper.java
...mapper/src/main/java/cn/wisenergy/mapper/UsersMapper.java
+25
-26
CameraMapper.xml
wisenergy-mapper/src/main/resources/mapper/CameraMapper.xml
+0
-174
UsersMapper.xml
wisenergy-mapper/src/main/resources/mapper/UsersMapper.xml
+80
-90
UserInfo.java
...-model/src/main/java/cn/wisenergy/model/app/UserInfo.java
+25
-76
BaseEntity.java
...l/src/main/java/cn/wisenergy/model/common/BaseEntity.java
+1
-1
UserService.java
...e/src/main/java/cn/wisenergy/service/app/UserService.java
+8
-2
UserServiceImpl.java
...n/java/cn/wisenergy/service/app/impl/UserServiceImpl.java
+27
-0
ResidentListener.java
...cn/wisenergy/service/excel/listener/ResidentListener.java
+0
-186
Application.java
...rgy-web-admin/src/main/java/cn/wisenergy/Application.java
+0
-1
UserController.java
...cn/wisenergy/web/admin/controller/app/UserController.java
+17
-0
application-dev.yml
wisenergy-web-admin/src/main/resources/application-dev.yml
+2
-2
No files found.
wisenergy-mapper/src/main/java/cn/wisenergy/mapper/UsersMapper.java
View file @
0a2a9791
...
@@ -5,32 +5,31 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
...
@@ -5,32 +5,31 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
/**
*@ Description:
*@ Author : 86187
*@ Date : 2021/1/6 15:32
*/
@Mapper
@Mapper
public
interface
UsersMapper
extends
BaseMapper
<
UserInfo
>
{
public
interface
UsersMapper
extends
BaseMapper
<
UserInfo
>
{
/**
/**
* 获取用户列表
* 添加
* @return
* @param userInfo 用户信息
* @return 用户信息
*/
*/
List
<
UserInfo
>
getUserList
(
@Param
(
"keyword"
)
String
keyword
);
UserInfo
add
(
UserInfo
userInfo
);
List
<
AccountUserVo
>
getUserNameList
();
UserInfo
getByName
(
@Param
(
"nickName"
)
String
nickName
);
UserInfo
getById
(
@Param
(
"id"
)
Integer
id
);
UserInfo
getByAutoId
(
@Param
(
"autoId"
)
String
autoId
);
int
count
();
List
<
UserRoleCountVo
>
getUserRoles
();
List
<
String
>
getNameByRoleName
(
@Param
(
"roleName"
)
String
roleName
);
/**
* 编辑
int
countByName
(
@Param
(
"list"
)
List
<
String
>
organizationName
);
* @param userInfo 用户信息
* @return 修改是否成功
List
<
UserRoleCountVo
>
getByOrgName
(
@Param
(
"list"
)
List
<
String
>
organizationName
);
*/
int
edit
(
UserInfo
userInfo
);
UserRoleCountVo
getRoleByAutoId
(
@Param
(
"autoId"
)
String
autoId
);
/**
* 删除
* @param id 用户id
* @return 删除是否成功
*/
int
delById
(
@Param
(
"id"
)
Integer
id
);
}
}
wisenergy-mapper/src/main/resources/mapper/CameraMapper.xml
deleted
100644 → 0
View file @
a849fb41
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"cn.wisenergy.mapper.CameraMapper"
>
<resultMap
id=
"cameraMap"
type=
"cn.wisenergy.model.app.Camera"
>
<id
column=
"id"
property=
"id"
/>
<result
column=
"camera_number"
property=
"cameraNumber"
/>
<result
column=
"name"
property=
"name"
/>
<result
column=
"device_serial"
property=
"deviceSerial"
/>
<result
column=
"validate_code"
property=
"validateCode"
/>
<result
column=
"rubbish_id"
property=
"rubbishId"
/>
<result
column=
"inspector_name"
property=
"inspectorName"
/>
<result
column=
"inspector_phone"
property=
"inspectorPhone"
/>
<result
column=
"longitude"
property=
"longitude"
/>
<result
column=
"latitude"
property=
"latitude"
/>
<result
column=
"status"
property=
"status"
/>
<result
column=
"is_delete"
property=
"isDelete"
/>
<result
column=
"remark"
property=
"remark"
/>
<result
column=
"create_time"
property=
"createTime"
/>
<result
column=
"update_time"
property=
"updateTime"
/>
</resultMap>
<sql
id=
"table"
>
camera
</sql>
<sql
id=
"cols_all"
>
id,
<include
refid=
"cols_exclude_id"
/>
</sql>
<sql
id=
"cols_exclude_id"
>
camera_number,name, device_serial,validate_code,rubbish_id,
inspector_name,inspector_phone,longitude,latitude,status,is_delete,remark,create_time,update_time
</sql>
<sql
id=
"vals"
>
#{cameraNumber},#{name},#{deviceSerial},#{validateCode},#{rubbishId},#{inspectorName},#{inspectorPhone},#{longitude},#{latitude},#{status},
#{isDelete},#{remark},now(),now()
</sql>
<sql
id=
"updateCondition"
>
<if
test=
"cameraNumber != null"
>
camera_number = #{cameraNumber},
</if>
<if
test=
"name != null"
>
name =#{name},
</if>
<if
test=
"deviceSerial != null"
>
device_serial =#{deviceSerial},
</if>
<if
test=
"validateCode != null"
>
validate_code =#{validateCode},
</if>
<if
test=
"rubbishId != null"
>
rubbish_id =#{rubbishId},
</if>
<if
test=
"inspectorName != null"
>
inspector_name = #{inspectorName},
</if>
<if
test=
"inspectorPhone != null"
>
inspector_phone = #{inspectorPhone},
</if>
<if
test=
"longitude != null"
>
longitude = #{longitude},
</if>
<if
test=
"latitude != null"
>
latitude = #{latitude},
</if>
<if
test=
"status != null"
>
status = #{status},
</if>
<if
test=
"isDelete != null"
>
is_delete = #{isDelete},
</if>
<if
test=
"remark != null"
>
remark = #{remark},
</if>
update_time =now()
</sql>
<sql
id=
"criteria"
>
<if
test=
"id != null"
>
id = #{id}
</if>
<if
test=
"cameraNumber != null"
>
and camera_number = #{cameraNumber}
</if>
<if
test=
"name != null"
>
and name =#{name}
</if>
<if
test=
"deviceSerial != null"
>
and device_serial =#{deviceSerial}
</if>
<if
test=
"validateCode != null"
>
and validate_code =#{validateCode}
</if>
<if
test=
"rubbishId != null"
>
and rubbish_id =#{rubbishId}
</if>
<if
test=
"inspectorName != null"
>
and inspector_name = #{inspectorName}
</if>
<if
test=
"inspectorPhone != null"
>
and inspector_phone = #{inspectorPhone}
</if>
<if
test=
"longitude != null"
>
and longitude =#{longitude}
</if>
<if
test=
"latitude != null"
>
and latitude =#{latitude}
</if>
<if
test=
"status != null"
>
and status =#{status}
</if>
<if
test=
"isDelete != null"
>
and is_delete =#{isDelete}
</if>
<if
test=
"remark != null"
>
and remark = #{remark}
</if>
<if
test=
"createTime != null"
>
and create_time
>
= #{createTime}
</if>
<if
test=
"updateTime != null"
>
and #{updateTime}
>
= update_time
</if>
</sql>
<insert
id=
"add"
parameterType=
"cn.wisenergy.model.app.Camera"
keyProperty=
"id"
useGeneratedKeys=
"true"
>
insert into
<include
refid=
"table"
/>
(
<include
refid=
"cols_exclude_id"
/>
)
value(
<include
refid=
"vals"
/>
)
</insert>
<update
id=
"modify"
parameterType=
"cn.wisenergy.model.app.Camera"
>
UPDATE
<include
refid=
"table"
/>
<set>
<include
refid=
"updateCondition"
/>
</set>
<where>
id = #{id}
</where>
</update>
<delete
id=
"delById"
parameterType=
"java.lang.Integer"
>
delete from
<include
refid=
"table"
/>
where id = #{id}
</delete>
<select
id=
"getList"
parameterType=
"map"
resultMap=
"cameraMap"
>
SELECT
<include
refid=
"cols_all"
/>
FROM
<include
refid=
"table"
/>
<where>
is_delete=0
and status=0
<if
test=
"keyword != null and keyword != ''"
>
AND (id LIKE CONCAT('%', #{keyword}, '%')
OR camera_number LIKE CONCAT('%', #{keyword}, '%'))
</if>
limit #{startNum},#{endNum}
</where>
</select>
<select
id=
"countNumber"
resultType=
"java.lang.Integer"
>
select count(1)
FROM
<include
refid=
"table"
/>
where is_delete =0 and camera_number=#{cameraNumber}
</select>
<select
id=
"checkNumber"
resultType=
"java.lang.Integer"
>
select count(1)
FROM
<include
refid=
"table"
/>
where is_delete =0 and id!= #{id} and camera_number=#{cameraNumber}
</select>
<select
id=
"countByRubbishId"
resultType=
"java.lang.Integer"
parameterType=
"java.lang.Integer"
>
select count(1)
from
<include
refid=
"table"
/>
where is_delete =0 and rubbish_id=#{rubbishId}
</select>
<select
id=
"getByRubbishId"
parameterType=
"java.lang.Integer"
resultMap=
"cameraMap"
>
select *
from
<include
refid=
"table"
/>
<where>
is_delete=0
and rubbish_id =#{rubbishId}
</where>
</select>
<select
id=
"getByNumber"
resultType=
"cn.wisenergy.model.app.Camera"
parameterType=
"list"
>
select *
from
<include
refid=
"table"
/>
<where>
is_delete=0
<if
test=
"list != null "
>
and camera_number IN
<foreach
collection=
"list"
index=
"index"
item=
"id"
separator=
","
open=
"("
close=
")"
>
#{id}
</foreach>
</if>
</where>
</select>
<select
id=
"count"
resultType=
"java.lang.Integer"
>
select count(1)
from
<include
refid=
"table"
/>
<where>
is_delete=0
</where>
</select>
</mapper>
wisenergy-mapper/src/main/resources/mapper/UsersMapper.xml
View file @
0a2a9791
...
@@ -2,104 +2,94 @@
...
@@ -2,104 +2,94 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"cn.wisenergy.mapper.UsersMapper"
>
<mapper
namespace=
"cn.wisenergy.mapper.UsersMapper"
>
<resultMap
id=
"userMap"
type=
"cn.wisenergy.model.app.UserInfo"
>
<id
column=
"id"
property=
"id"
/>
<result
column=
"user_name"
property=
"userName"
/>
<result
column=
"password"
property=
"password"
/>
<result
column=
"phone"
property=
"phone"
/>
<result
column=
"sex"
property=
"sex"
/>
<result
column=
"school"
property=
"school"
/>
<result
column=
"student_type"
property=
"studentType"
/>
<result
column=
"culture_grade"
property=
"cultureGrade"
/>
<result
column=
"major_grade"
property=
"majorGrade"
/>
<result
column=
"query_limit"
property=
"queryLimit"
/>
<result
column=
"money_amount"
property=
"moneyAmount"
/>
<result
column=
"is_delete"
property=
"isDelete"
/>
<result
column=
"create_time"
property=
"createTime"
/>
<result
column=
"update_time"
property=
"updateTime"
/>
</resultMap>
<select
id=
"getUserList"
resultType=
"cn.wisenergy.model.app.UserInfo"
>
<sql
id=
"table"
>
select *
user
from account_users
</sql>
<where>
<if
test=
"keyword != null and keyword != ''"
>
and nickname LIKE CONCAT('%', #{keyword}, '%')
</if>
</where>
</select>
<select
id=
"getUserNameList"
resultType=
"cn.wisenergy.model.vo.AccountUserVo"
>
<sql
id=
"cols_all"
>
select id,auto_id,nickname
id,
from account_users
<include
refid=
"cols_exclude_id"
/>
</select>
</sql>
<select
id=
"getByName"
resultType=
"cn.wisenergy.model.app.UserInfo"
parameterType=
"java.lang.String"
>
select *
from account_users
where nickname=#{nickName}
</select>
<select
id=
"getById"
resultType=
"cn.wisenergy.model.app.UserInfo"
parameterType=
"java.lang.Integer"
>
<sql
id=
"cols_exclude_id"
>
select *
user_name,password, phone,sex,school, student_type,culture_grade,major_grade,is_delete,query_limit,
from account_users
money_amount,create_time,update_time
where id=#{id}
</sql>
</select>
<select
id=
"getByAutoId"
resultType=
"cn.wisenergy.model.app.UserInfo"
parameterType=
"java.lang.String"
>
<sql
id=
"vals"
>
select *
#{userName},#{password},#{phone},#{sex},#{school},#{studentType},#{cultureGrade},#{majorGrade},
from account_users
#{queryLimit},#{moneyAmount},#{isDelete},#{remark},now(),now()
where auto_id=#{autoId}
</sql>
</select>
<select
id=
"count"
resultType=
"java.lang.Integer"
>
<sql
id=
"updateCondition"
>
select count(1)
<if
test=
"userName != null"
>
user_name = #{userName},
</if>
from account_users
<if
test=
"password != null"
>
password =#{password},
</if>
where is_active=1
<if
test=
"phone != null"
>
phone =#{phone},
</if>
</select>
<if
test=
"sex != null"
>
sex =#{sex},
</if>
<if
test=
"school != null"
>
school =#{school},
</if>
<if
test=
"studentType != null"
>
inspector_name = #{studentType},
</if>
<if
test=
"cultureGrade != null"
>
culture_grade = #{cultureGrade},
</if>
<if
test=
"majorGrade != null"
>
major_grade = #{majorGrade},
</if>
<if
test=
"isDelete != null"
>
is_delete = #{isDelete},
</if>
update_time =now()
</sql>
<select
id=
"getUserRoles"
resultType=
"cn.wisenergy.model.vo.UserRoleCountVo"
>
<sql
id=
"criteria"
>
select r.`name` as userRoleName,count(1) as count
<if
test=
"id != null"
>
id = #{id}
</if>
from account_users a ,system_roles r
<if
test=
"userName != null"
>
and user_name = #{userName}
</if>
where
<if
test=
"password != null"
>
and password =#{password}
</if>
a.is_active=1
<if
test=
"phone != null"
>
and phone =#{phone}
</if>
and r.is_delete=0
<if
test=
"sex != null"
>
and sex =#{sex}
</if>
and a.role_id=r.id
<if
test=
"school != null"
>
and school =#{school}
</if>
GROUP BY r.`name`
<if
test=
"studentType != null"
>
and inspector_name = #{studentType}
</if>
</select>
<if
test=
"cultureGrade != null"
>
and culture_grade = #{cultureGrade}
</if>
<if
test=
"majorGrade != null"
>
and major_grade = #{majorGrade}
</if>
<if
test=
"isDelete != null"
>
and is_delete = #{isDelete}
</if>
<if
test=
"createTime != null"
>
and create_time
>
= #{createTime}
</if>
<if
test=
"updateTime != null"
>
and #{updateTime}
>
= update_time
</if>
</sql>
<
select
id=
"getNameByRoleName"
resultType=
"java.lang.String"
parameterType=
"java.lang.String
"
>
<
insert
id=
"add"
parameterType=
"cn.wisenergy.model.app.UserInfo"
keyProperty=
"id"
useGeneratedKeys=
"true
"
>
select a.name
insert into
from account_users a,system_roles system_roles
<include
refid=
"table"
/>
where a.is_active=1
(
<include
refid=
"cols_exclude_id"
/>
)
and r.is_delete=0
value(
and a.role_id=r.id
<include
refid=
"vals"
/>
and r.name LIKE CONCAT('%', #{role_name}, '%'
)
)
</
selec
t>
</
inser
t>
<select
id=
"countByName"
resultType=
"java.lang.Integer"
<update
id=
"edit"
parameterType=
"cn.wisenergy.model.app.UserInfo"
>
parameterType=
"list"
>
UPDATE
select count(1)
<include
refid=
"table"
/>
from account_users
<set>
<include
refid=
"updateCondition"
/>
</set>
<where>
<where>
is_delete=0
id = #{id}
<if
test=
"list != null "
>
and organization_name IN
<foreach
collection=
"list"
index=
"index"
item=
"id"
separator=
","
open=
"("
close=
")"
>
#{id}
</foreach>
</if>
</where>
</where>
</select>
</update>
<delete
id=
"delById"
parameterType=
"java.lang.Integer"
>
delete from
<include
refid=
"table"
/>
where id = #{id}
</delete>
<select
id=
"getByOrgName"
resultType=
"cn.wisenergy.model.vo.UserRoleCountVo"
parameterType=
"list"
>
select r.`name` as userRoleName,count(1) as count
from account_users a ,system_roles r
<where>
a.is_active=1
and r.is_delete=0
and a.role_id=r.id
<if
test=
"list != null "
>
and a.organization_name IN
<foreach
collection=
"list"
index=
"index"
item=
"id"
separator=
","
open=
"("
close=
")"
>
#{id}
</foreach>
</if>
GROUP BY r.`name`
</where>
</select>
<select
id=
"getRoleByAutoId"
resultType=
"cn.wisenergy.model.vo.UserRoleCountVo"
parameterType=
"java.lang.String"
>
select r.`name` as userRoleName,count(1) as count
from account_users a ,system_roles r
<where>
a.is_active=1
and r.is_delete=0
and a.role_id=r.id
and a.auto_id=#{autoId}
</where>
</select>
</mapper>
</mapper>
wisenergy-model/src/main/java/cn/wisenergy/model/app/UserInfo.java
View file @
0a2a9791
package
cn
.
wisenergy
.
model
.
app
;
package
cn
.
wisenergy
.
model
.
app
;
import
cn.wisenergy.model.common.BaseEntity
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModel
;
import
lombok.Data
;
import
lombok.Data
;
import
java.io.Serializable
;
import
java.io.Serializable
;
import
java.util.Date
;
/**
/**
* @ Description : 用户
* @author 86187
* @ Description : 用户实体类
* @ Author : lcc
* @ Author : lcc
* @ CreateDate : 2020/11/8 19:59
* @ CreateDate : 2020/11/8 19:59
*/
*/
@Data
@Data
@ApiModel
(
value
=
"AccountUsers"
)
@ApiModel
(
value
=
"AccountUsers"
)
public
class
UserInfo
implements
Serializable
{
public
class
UserInfo
extends
BaseEntity
implements
Serializable
{
private
static
final
long
serialVersionUID
=
2525339404301884673L
;
private
static
final
long
serialVersionUID
=
2525339404301884673L
;
private
Integer
id
;
private
Date
createTime
;
private
String
createUserAutoId
;
private
Date
updateTime
;
private
String
updateUserAutoId
;
private
Integer
isDelete
;
private
Integer
sort
;
/**
/**
*
有前后缀的自动编号
*
主键id
*/
*/
private
String
autoId
;
private
Integer
id
;
/**
* oa的用户编号
*/
private
String
oaAutoId
;
/**
* 权限编号
*/
private
Integer
roleId
;
/**
* 权限2编号
*/
private
Integer
role2Id
;
/**
* 等级编号
*/
private
String
lvlId
;
/**
/**
*
登录名
*
用户名称
*/
*/
private
String
userName
;
private
String
userName
;
/**
/**
* 真实姓名
* 密码
*/
private
String
nickName
;
/**
* 组织架构部门编号
*/
*/
private
String
organizationAutoI
d
;
private
String
passwor
d
;
/**
/**
*
组织架构部门
*
电话号码
*/
*/
private
String
organizationNam
e
;
private
String
phon
e
;
/**
/**
*
父级组织架构编号
*
性别
*/
*/
private
String
pOrganizationAutoId
;
private
Integer
sex
;
/**
/**
*
邮箱
*
学校
*/
*/
private
String
emai
l
;
private
String
schoo
l
;
/**
/**
*
电话
*
学生类型
*/
*/
private
String
mobil
e
;
private
Integer
studentTyp
e
;
/**
/**
*
超级管理员
*
文化成绩
*/
*/
private
Integer
isSupper
;
private
String
cultureGrade
;
/**
/**
*
激活
*
专业成绩
*/
*/
private
Integer
isActiv
e
;
private
String
majorGrad
e
;
/**
/**
*
自助用户
*
用户剩余查询次数
*/
*/
private
Integer
isSelf
;
private
Integer
queryLimit
;
/**
/**
*
自助用户是否通过审核
*
用户充值总额
*/
*/
private
Integer
isReview
;
private
String
moneyAmount
;
private
String
accessToken
;
private
Integer
tokenExpired
;
/**
* 微信openId
*/
private
String
wxOpenId
;
/**
* 微信公众号
*/
private
String
wxSubOpenId
;
}
}
wisenergy-model/src/main/java/cn/wisenergy/model/common/BaseEntity.java
View file @
0a2a9791
...
@@ -30,6 +30,6 @@ public abstract class BaseEntity implements Serializable {
...
@@ -30,6 +30,6 @@ public abstract class BaseEntity implements Serializable {
* 删除标记
* 删除标记
*/
*/
@ApiModelProperty
(
"是否删除 1,删除;0,未删除"
)
@ApiModelProperty
(
"是否删除 1,删除;0,未删除"
)
private
String
is
_d
elete
;
private
String
is
D
elete
;
}
}
wisenergy-service/src/main/java/cn/wisenergy/service/app/UserService.java
View file @
0a2a9791
...
@@ -6,11 +6,17 @@ import cn.wisenergy.model.app.UserInfo;
...
@@ -6,11 +6,17 @@ import cn.wisenergy.model.app.UserInfo;
import
java.util.List
;
import
java.util.List
;
/**
*@ Description: 用户接口
*@ Author : 86187
*@ Date : 2021/1/6 16:08
*/
public
interface
UserService
{
public
interface
UserService
{
/**
/**
* 获取用户列表信息
* 获取用户列表
* @return
* @param keyword 关键字
* @return 用户列表
*/
*/
R
<
List
<
UserInfo
>>
getUserList
(
String
keyword
);
R
<
List
<
UserInfo
>>
getUserList
(
String
keyword
);
...
...
wisenergy-service/src/main/java/cn/wisenergy/service/app/impl/UserServiceImpl.java
0 → 100644
View file @
0a2a9791
package
cn
.
wisenergy
.
service
.
app
.
impl
;
import
cn.wisenergy.common.utils.R
;
import
cn.wisenergy.mapper.UsersMapper
;
import
cn.wisenergy.model.app.UserInfo
;
import
cn.wisenergy.service.app.UserService
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.stereotype.Service
;
import
java.util.List
;
/**
*@ Description: 用户接口实现
*@ Author : 86187
*@ Date : 2021/1/6 16:11
*/
@Service
@Slf4j
public
class
UserServiceImpl
extends
ServiceImpl
<
UsersMapper
,
UserInfo
>
implements
UserService
{
@Override
public
R
<
List
<
UserInfo
>>
getUserList
(
String
keyword
)
{
return
null
;
}
}
wisenergy-service/src/main/java/cn/wisenergy/service/excel/listener/ResidentListener.java
deleted
100644 → 0
View file @
a849fb41
package
cn
.
wisenergy
.
service
.
excel
.
listener
;
import
cn.wisenergy.model.app.Resident
;
import
com.alibaba.excel.context.AnalysisContext
;
import
com.alibaba.excel.event.AnalysisEventListener
;
import
com.alibaba.excel.metadata.Head
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.util.CollectionUtils
;
import
org.springframework.util.StringUtils
;
import
java.util.*
;
import
java.util.stream.Collectors
;
/**
* Excel批量添加社区居民 监听器
*/
@Slf4j
public
class
ResidentListener
extends
AnalysisEventListener
<
Resident
>
{
private
List
<
Resident
>
list
;
private
ResidentService
residentService
;
private
final
int
batch
=
2000
;
private
Map
<
Integer
,
String
>
headMap
=
new
HashMap
<>();
// 导入模板头内容
private
boolean
isCorrectFormat
=
true
;
//结果标记 默认错误
public
ResidentListener
(
ResidentService
residentService
)
{
this
.
residentService
=
residentService
;
list
=
new
ArrayList
<>();
}
/**
* 这个每一条数据解析都会来调用 ==
*
* @param resident
* @param analysisContext
*/
@Override
public
void
invoke
(
Resident
resident
,
AnalysisContext
analysisContext
)
{
if
(!
isCorrectFormat
)
{
//格式是否正确
return
;
}
log
.
info
(
"解析到一条居民数据>>>>>>>>>>:{}"
,
resident
);
//此处做校验 本次没有校验
if
(
resident
!=
null
)
{
resident
.
setIsDelete
(
0
);
resident
.
setCreateTime
(
new
Date
());
resident
.
setUpdateTime
(
new
Date
());
if
(
StringUtils
.
isEmpty
(
resident
.
getName
()))
{
throw
new
RuntimeException
(
"居民姓名不能为空!"
);
}
if
(
StringUtils
.
isEmpty
(
resident
.
getPhone
()))
{
throw
new
RuntimeException
(
"居民手机号不能为空!"
);
}
else
{
if
(
resident
.
getPhone
().
length
()
!=
11
)
{
throw
new
RuntimeException
(
"居民手机号错误!"
);
}
}
if
(
null
==
resident
.
getSex
())
{
throw
new
RuntimeException
(
"居民性别不能为空!"
);
}
if
(
StringUtils
.
isEmpty
(
resident
.
getCommunity
()))
{
throw
new
RuntimeException
(
"居民社区信息不能为空!"
);
}
if
(
StringUtils
.
isEmpty
(
resident
.
getStreet
()))
{
throw
new
RuntimeException
(
"居民街道信息不能为空!"
);
}
log
.
info
(
"打印用户信息:"
+
resident
.
getPhone
());
Resident
result
=
residentService
.
getByPhone
(
resident
.
getPhone
());
if
(
null
!=
result
)
{
throw
new
RuntimeException
(
resident
.
getName
()
+
"的手机号"
+
resident
.
getPhone
()
+
"重复"
);
}
list
.
add
(
resident
);
}
//每500条插入一次数据库
if
(
list
.
size
()
>=
batch
)
{
//判断数据库是否已有手机号的数据
List
<
Resident
>
residents
=
this
.
removeExist
(
list
);
log
.
info
(
"invoke批量插入居民数据,条数为>>>>>>>>>>:{}"
,
residents
.
size
());
if
(
residents
.
size
()
>
0
)
{
residentService
.
saveBatch
(
residents
);
}
//保存后清除,防止大量数据导致内存耗尽
list
.
clear
();
}
}
/**
* 所有数据解析完成了 都会来调用
*
* @param analysisContext
*/
@Override
public
void
doAfterAllAnalysed
(
AnalysisContext
analysisContext
)
{
log
.
info
(
"doAfterAllAnalysed解析玩一个居民sheet工作表>>>>>>>>>>"
);
//如果集合不为空
if
(!
CollectionUtils
.
isEmpty
(
list
))
{
//判断excel表中的手机号是否重复
checkPhone
(
list
);
List
<
Resident
>
residents
=
this
.
removeExist
(
list
);
log
.
info
(
"批量插入居民数据,条数为>>>>>>>>>>:{}"
,
residents
.
size
());
if
(
residents
.
size
()
>
0
)
{
residentService
.
saveBatch
(
residents
);
}
}
}
/**
* 校验导入模板表头是否正确
*
* @param headMap
* @param context
*/
public
void
invokeHeadMap
(
Map
<
Integer
,
String
>
headMap
,
AnalysisContext
context
)
{
//是否手动传入表头信息 没有则自动读取实体类头信息
try
{
if
(
this
.
headMap
==
null
||
this
.
headMap
.
size
()
<=
0
)
{
Map
<
Integer
,
Head
>
map
=
context
.
currentReadHolder
().
excelReadHeadProperty
().
getHeadMap
();
for
(
int
i
=
0
;
i
<
map
.
size
();
i
++)
{
//封装成headMap
this
.
headMap
.
put
(
map
.
get
(
i
).
getColumnIndex
(),
map
.
get
(
i
).
getHeadNameList
().
get
(
0
));
//加入模板头
}
}
}
catch
(
Exception
e
)
{
isCorrectFormat
=
false
;
//导入错误
throw
new
RuntimeException
(
"导入失败,请联系管理员!"
);
}
if
(
this
.
headMap
==
null
||
headMap
==
null
||
this
.
headMap
.
size
()
!=
headMap
.
size
())
{
isCorrectFormat
=
false
;
//导入表头错误
throw
new
RuntimeException
(
"导入表的表头与模板表头不符!"
);
}
else
{
for
(
int
i
=
0
;
i
<
this
.
headMap
.
size
();
i
++)
{
//循环遍历判断表格头是否一一对应
if
(!
this
.
headMap
.
get
(
i
).
equals
(
headMap
.
get
(
i
)))
{
isCorrectFormat
=
false
;
//导入表头错误
throw
new
RuntimeException
(
"导入表的表头与模板表头不符!"
);
}
}
}
}
/**
* 数据库总已经存在的手机号不能重复添加
*
* @param data
* @return
*/
private
List
<
Resident
>
removeExist
(
List
<
Resident
>
data
)
{
//筛选出手机号
Set
<
String
>
phones
=
data
.
stream
().
map
(
Resident:
:
getPhone
).
collect
(
Collectors
.
toSet
());
if
(
CollectionUtils
.
isEmpty
(
phones
))
{
return
data
;
}
QueryWrapper
<
Resident
>
wrapper
=
new
QueryWrapper
<>();
wrapper
.
in
(
"phone"
,
phones
).
select
(
"phone"
);
wrapper
.
eq
(
"is_delete"
,
0
);
List
<
Resident
>
listPhone
=
residentService
.
list
(
wrapper
);
Set
<
String
>
dbPhones
=
listPhone
.
stream
().
map
(
Resident:
:
getPhone
).
collect
(
Collectors
.
toSet
());
//排除存在的数据
List
<
Resident
>
noExist
=
data
.
stream
().
filter
(
d
->
!
dbPhones
.
contains
(
d
.
getPhone
())).
collect
(
Collectors
.
toList
());
return
noExist
;
}
private
void
checkPhone
(
List
<
Resident
>
list
)
{
Set
<
String
>
set
=
new
HashSet
<>();
for
(
Resident
resident
:
list
)
{
if
(
set
.
contains
(
resident
.
getPhone
()))
{
throw
new
RuntimeException
(
"导入EXCEL中手机号:"
+
resident
.
getPhone
()
+
"重复!"
);
}
else
{
set
.
add
(
resident
.
getPhone
());
}
}
}
}
wisenergy-web-admin/src/main/java/cn/wisenergy/Application.java
View file @
0a2a9791
...
@@ -12,7 +12,6 @@ import springfox.documentation.swagger2.annotations.EnableSwagger2;
...
@@ -12,7 +12,6 @@ import springfox.documentation.swagger2.annotations.EnableSwagger2;
* 配置netty启动
* 配置netty启动
*/
*/
@EnableCaching
@EnableCaching
//排除原有的Multipart配置 spingboot接受不了multipartfile参数
@SpringBootApplication
(
exclude
=
{
MultipartAutoConfiguration
.
class
})
@SpringBootApplication
(
exclude
=
{
MultipartAutoConfiguration
.
class
})
@MapperScan
(
@MapperScan
(
basePackages
=
"cn.wisenergy.mapper"
)
basePackages
=
"cn.wisenergy.mapper"
)
...
...
wisenergy-web-admin/src/main/java/cn/wisenergy/web/admin/controller/app/UserController.java
0 → 100644
View file @
0a2a9791
package
cn
.
wisenergy
.
web
.
admin
.
controller
.
app
;
import
io.swagger.annotations.Api
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
/**
*@ Description: 用户管理模块
*@ Author : 86187
*@ Date : 2021/1/7 10:29
*/
@RestController
@Api
(
tags
=
"用户管理"
)
@RequestMapping
(
"/user"
)
@Slf4j
public
class
UserController
{
}
wisenergy-web-admin/src/main/resources/application-dev.yml
View file @
0a2a9791
...
@@ -3,9 +3,9 @@ spring:
...
@@ -3,9 +3,9 @@ spring:
type
:
com.alibaba.druid.pool.DruidDataSource
type
:
com.alibaba.druid.pool.DruidDataSource
druid
:
druid
:
driver-class-name
:
com.mysql.cj.jdbc.Driver
driver-class-name
:
com.mysql.cj.jdbc.Driver
url
:
jdbc:mysql://
172.18.1.55:3306/qzhits
m?useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&serverTimezone=GMT%2B8
url
:
jdbc:mysql://
localhost:3306/exa
m?useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&serverTimezone=GMT%2B8
username
:
root
username
:
root
password
:
adm4HYservice$
password
:
root
initial-size
:
10
initial-size
:
10
max-active
:
100
max-active
:
100
min-idle
:
10
min-idle
:
10
...
...
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