Browse Source

修改家族查询sql语句

dev
OuGaoHao 3 years ago
parent
commit
2bb9b42c0f
  1. 2
      numone-admin/src/main/resources/application.yml
  2. 17
      numone-business/src/main/java/com/numone/system/service/impl/AppFamilyServiceImpl.java
  3. 211
      numone-business/src/main/resources/mapper/system/AppFamilyMapper.xml
  4. 18
      numone-system/src/main/resources/mapper/system/AppUserInfoMapper.xml
  5. 8
      ry.sh

2
numone-admin/src/main/resources/application.yml

@ -14,7 +14,7 @@ spring:
# 国际化资源文件路径
basename: i18n/messages
profiles:
active: gray
active: dev
# 文件上传
servlet:
multipart:

17
numone-business/src/main/java/com/numone/system/service/impl/AppFamilyServiceImpl.java

@ -17,14 +17,12 @@ import com.numone.common.response.RanksVo;
import com.numone.common.utils.DateUtils;
import com.numone.common.utils.PinYinUtils;
import com.numone.system.domain.AppOccupation;
import com.numone.system.mapper.AppOccupationMapper;
import com.numone.system.mapper.AppUserInfoMapper;
import com.numone.system.mapper.SysUserMapper;
import com.numone.system.domain.AppUserFamily;
import com.numone.system.mapper.*;
import com.numone.system.service.GloadService;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.numone.system.mapper.AppFamilyMapper;
import com.numone.system.domain.AppFamily;
import com.numone.system.service.IAppFamilyService;
import org.springframework.transaction.annotation.Transactional;
@ -56,6 +54,9 @@ public class AppFamilyServiceImpl implements IAppFamilyService
@Autowired
private RedisCache redisCache;
@Autowired
private AppUserFamilyMapper appUserFamilyMapper;
/**
* 查询家族
*
@ -164,9 +165,11 @@ public class AppFamilyServiceImpl implements IAppFamilyService
if (ObjectUtil.isNull(sysUser)){
throw new AppException("用户不存在");
}
AppUserInfo appUserInfo = appUserInfoMapper.selectAppUserInfoByUserId(sysUser.getUserId());
appUserInfo.setFamilyId(familyParams.getId());
appUserInfoMapper.updateAppUserInfo(appUserInfo);
AppUserFamily appUserFamily=new AppUserFamily();
appUserFamily.setFamilyId(Long.valueOf(familyParams.getId()));
appUserFamily.setIdentifier(1l);
appUserFamily.setUserId(sysUser.getUserId());
appUserFamilyMapper.updateAppUserFamily(appUserFamily);
AppFamily appFamily=new AppFamily();
BeanUtils.copyProperties(familyParams,appFamily);
appFamily.setUserId(Integer.valueOf(String.valueOf(sysUser.getUserId())));

211
numone-business/src/main/resources/mapper/system/AppFamilyMapper.xml

@ -96,87 +96,63 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</delete>
<select id="getRankList" resultType="com.numone.common.response.RanksVo">
SELECT
@rowNO:=@rowNO+1 AS sortId,a.familyName familyName,a.nickName patriarchName,a.heatValue heatValue
FROM
(
SELECT
t1.id id,
t1.family_name familyName,
t1.fam_logo_img famLogoImg,
t3.nick_name nickName,
IFNULL(t2.stone_num, 0) heatValue
t1.family_name familyName,
t4.nick_name nickName,
IFNULL(SUM(t3.stone_num), 0) heatValue
FROM
app_family t1
LEFT JOIN app_user_family t2 ON t1.id = t2.family_id
LEFT JOIN app_user_info t3 ON t2.user_id = t3.user_id
LEFT JOIN (
SELECT
b.*, (
SELECT
user_id
FROM
app_user_info
WHERE
family_id = b.family_id
AND stone_num = b.stone_num
) user_id
a.id,
b.nick_name
FROM
(
SELECT
family_id,
SUM(stone_num) sum_stone,
MAX(stone_num) stone_num
FROM
app_user_info
GROUP BY
family_id
) b
) t2 ON t1.id = t2.family_id
LEFT JOIN sys_user t3 ON t1.user_id = t3.user_id
app_user_family a
LEFT JOIN sys_user b ON a.user_id = b.user_id
AND a.identifier = 1
) t4 ON t1.id = t4.id
GROUP BY
t1.id
ORDER BY t1.sort_id,heatValue desc,t1.family_name
) a,(SELECT @rowNO:=0) r
</select>
<select id="getRank" parameterType="Long" resultType="com.numone.common.response.RanksVo">
SELECT
t1.sortId sortId,t1.familyName familyName,t1.patriarchName patriarchName,t1.heatValue heatValue
from (SELECT
@rowNO:=@rowNO+1 AS sortId,a.familyName familyName,a.nickName patriarchName,a.heatValue heatValue ,a.id id
t1.sortId sortId,t1.familyName familyName,GROUP_CONCAT(t1.patriarchName) patriarchName,t1.heatValue heatValue from
(SELECT
@rowNO:=@rowNO+1 AS sortId,a.familyName familyName,a.nickName patriarchName,a.heatValue heatValue,a.userId userId
FROM
(
SELECT
t1.id id,
t1.family_name familyName,
t1.fam_logo_img famLogoImg,
IFNULL(t3.nick_name, "无") nickName,
IFNULL(t2.stone_num, 0) heatValue
t1.family_name familyName,
t4.nick_name nickName,
t4.user_id userId,
IFNULL(SUM(t3.stone_num), 0) heatValue
FROM
app_family t1
LEFT JOIN app_user_family t2 ON t1.id = t2.family_id
LEFT JOIN app_user_info t3 ON t2.user_id = t3.user_id
LEFT JOIN (
SELECT
b.*, (
SELECT
user_id
FROM
app_user_info
WHERE
family_id = b.family_id
AND stone_num = b.stone_num
) user_id
a.id,
b.nick_name,
a.user_id
FROM
(
SELECT
family_id,
SUM(stone_num) sum_stone,
MAX(stone_num) stone_num
FROM
app_user_info
GROUP BY
family_id
) b
) t2 ON t1.id = t2.family_id
LEFT JOIN sys_user t3 ON t1.user_id = t3.user_id
app_user_family a
LEFT JOIN sys_user b ON a.user_id = b.user_id
AND a.identifier = 1
) t4 ON t1.id = t4.id
GROUP BY
t1.id
ORDER BY t1.sort_id,heatValue desc,t1.family_name
) a,(SELECT @rowNO:=0) r) t1 RIGHT JOIN app_user_info t2 on t1.id=t2.family_id where t2.user_id=#{userId}
) a,(SELECT @rowNO:=0) r) t1 where t1.userId=#{userId} GROUP BY t1.user_id
</select>
@ -185,34 +161,23 @@ ORDER BY t1.sort_id,heatValue desc,t1.family_name
t1.id id,
t1.family_name familyName,
t1.fam_logo_img famLogoImg,
IFNULL(t3.nick_name, "无") nickName,
IFNULL(t2.stone_num, 0) heatValue
IFNULL(t4.nick_name, "无") nickName,
IFNULL(SUM(t3.stone_num), 0) heatValue
FROM
app_family t1
LEFT JOIN app_user_family t2 ON t1.id = t2.family_id
LEFT JOIN app_user_info t3 ON t2.user_id = t3.user_id
LEFT JOIN (
SELECT
b.*, (
SELECT
user_id
FROM
app_user_info
WHERE
family_id = b.family_id
AND stone_num = b.stone_num
) user_id
a.id,
b.nick_name
FROM
(
SELECT
family_id,
SUM(stone_num) sum_stone,
MAX(stone_num) stone_num
FROM
app_user_info
app_user_family a
LEFT JOIN sys_user b ON a.user_id = b.user_id
AND a.identifier = 1
) t4 ON t1.id = t4.id
GROUP BY
family_id
) b
) t2 ON t1.id = t2.family_id
LEFT JOIN sys_user t3 ON t1.user_id = t3.user_id
t1.id
<where>
<if test="familyName != null and familyName != ''"> and t1.family_name like concat('%', #{familyName}, '%')</if>
<if test="famLogoImg != null and famLogoImg != ''"> and t1.fam_logo_img = #{famLogoImg}</if>
@ -224,76 +189,52 @@ ORDER BY t1.sort_id,heatValue desc,t1.family_name
SELECT
t1.id id,
t1.family_name familyName,
t1.sort_id sortId,
t1.fam_logo_img famLogoImg,
IFNULL(t3.nick_name, "无") nickName,
IFNULL(t2.stone_num, 0) heatValue
IFNULL(t4.nick_name, "无") nickName,
IFNULL(SUM(t3.stone_num), 0) heatValue
FROM
app_family t1
LEFT JOIN app_user_family t2 ON t1.id = t2.family_id
LEFT JOIN app_user_info t3 ON t2.user_id = t3.user_id
LEFT JOIN (
SELECT
b.*, (
SELECT
user_id
a.id,
b.nick_name
FROM
app_user_info
WHERE
family_id = b.family_id
AND stone_num = b.stone_num
) user_id
FROM
(
SELECT
family_id,
SUM(stone_num) sum_stone,
MAX(stone_num) stone_num
FROM
app_user_info
app_user_family a
LEFT JOIN sys_user b ON a.user_id = b.user_id
AND a.identifier = 1
) t4 ON t1.id = t4.id
GROUP BY
family_id
) b
) t2 ON t1.id = t2.family_id
LEFT JOIN sys_user t3 ON t1.user_id = t3.user_id
t1.id
<where>
<if test="familyName != null and familyName != ''"> and t1.family_name like concat('%', #{familyName}, '%')</if>
</where>
ORDER BY t1.sort_id,heatValue desc
ORDER BY t1.sort_id,heatValue desc,t1.family_name
</select>
<select id="selectFamilyVoById" parameterType="Integer" resultType="com.numone.common.response.FamilyVo">
SELECT
t1.id id,
t1.family_name familyName,
t1.fam_logo_img famLogoImg,
t1.sort_id sortId,
IFNULL(t3.nick_name, "无") nickName,
IFNULL(t2.stone_num, 0) heatValue
FROM
app_family t1
LEFT JOIN (
SELECT
b.*, (
SELECT
user_id
FROM
app_user_info
WHERE
family_id = b.family_id
AND stone_num = b.stone_num
) user_id
FROM
(
SELECT
family_id,
SUM(stone_num) sum_stone,
MAX(stone_num) stone_num
FROM
app_user_info
GROUP BY
family_id
) b
) t2 ON t1.id = t2.family_id
LEFT JOIN sys_user t3 ON t1.user_id = t3.user_id
t1.id id,
t1.family_name familyName,
t1.fam_logo_img famLogoImg,
IFNULL(t4.nick_name, "无") nickName,
IFNULL(SUM(t3.stone_num), 0) heatValue
FROM
app_family t1
LEFT JOIN app_user_family t2 ON t1.id = t2.family_id
LEFT JOIN app_user_info t3 ON t2.user_id = t3.user_id
LEFT JOIN (
SELECT
a.id,
b.nick_name
FROM
app_user_family a
LEFT JOIN sys_user b ON a.user_id = b.user_id
AND a.identifier = 1
) t4 ON t1.id = t4.id
GROUP BY
t1.id
where t1.id=#{id}
</select>
<select id="selectAppFamilyName" resultType="com.numone.system.domain.AppFamily">

18
numone-system/src/main/resources/mapper/system/AppUserInfoMapper.xml

@ -183,11 +183,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
t2.lucky_num luckyNum,
t2.sign sign,
ISNULL(t2.id_card) isAuthentication,
t3.family_name familyName,
t3.fam_logo_img familyLogo,
t3.familyName familyName,
t4.occup_name occupationName,
t4.occup_logo_img occupatLogo,
CASE ISNULL(t5.id)
CASE ISNULL(t5.user_id)
WHEN 0 THEN
"族长"
WHEN 1 THEN
@ -197,9 +196,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
FROM
sys_user t1
LEFT JOIN app_user_info t2 ON t1.user_id = t2.user_id
LEFT JOIN app_family t3 ON t2.family_id = t3.id
LEFT JOIN (SELECT a.user_id,GROUP_CONCAT(b.family_name) familyName from app_user_family a LEFT JOIN app_family b on a.family_id=b.id GROUP BY a.user_id) t3 ON t2.user_id = t3.user_id
LEFT JOIN app_occupation t4 ON t2.occupation_id = t4.id
LEFT JOIN app_family t5 ON t1.user_id = t5.user_id
LEFT JOIN (SELECT a.user_id from app_user_family a LEFT JOIN app_family b on a.family_id=b.id and a.identifier=1 GROUP BY a.user_id) t5 ON t3.user_id = t5.user_id
WHERE
t1.del_flag = 0 and t1.user_type="22"
AND t1.user_id = #{userId}
@ -259,11 +258,10 @@ AND t1.user_id = #{userId}
t2.sign sign,
t2.lucky_num luckyNum,
ISNULL(t2.id_card) isAuthentication,
t3.family_name familyName,
t3.fam_logo_img familyLogo,
t3.familyName familyName,
t4.occup_name occupationName,
t4.occup_logo_img occupatLogo,
CASE ISNULL(t5.id)
CASE ISNULL(t5.user_id)
WHEN 0 THEN
"族长"
WHEN 1 THEN
@ -273,9 +271,9 @@ AND t1.user_id = #{userId}
FROM
sys_user t1
LEFT JOIN app_user_info t2 ON t1.user_id = t2.user_id
LEFT JOIN app_family t3 ON t2.family_id = t3.id
LEFT JOIN (SELECT a.user_id,GROUP_CONCAT(b.family_name) familyName from app_user_family a LEFT JOIN app_family b on a.family_id=b.id GROUP BY a.user_id) t3 ON t2.user_id = t3.user_id
LEFT JOIN app_occupation t4 ON t2.occupation_id = t4.id
LEFT JOIN app_family t5 ON t1.user_id = t5.user_id
LEFT JOIN (SELECT a.user_id from app_user_family a LEFT JOIN app_family b on a.family_id=b.id and a.identifier=1 GROUP BY a.user_id) t5 ON t3.user_id = t5.user_id
WHERE
t1.del_flag = 0 and t1.user_type="22"
<if test="phonenumber != null">

8
ry.sh

@ -1,11 +1,11 @@
#!/bin/sh
# ./ry.sh start 启动 stop 停止 restart 重启 status 状态
AppName=numone-admin.jar
APP_HOME=`pwd`
AppName=$APP_HOME/numone-admin.jar
# JVM参数
JVM_OPTS="-Dname=$AppName -Duser.timezone=Asia/Shanghai -Xms512m -Xmx1024m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=512m -XX:+HeapDumpOnOutOfMemoryError -XX:+PrintGCDateStamps -XX:+PrintGCDetails -XX:NewRatio=1 -XX:SurvivorRatio=30 -XX:+UseParallelGC -XX:+UseParallelOldGC"
APP_HOME=`pwd`
LOG_PATH=$APP_HOME/logs/$AppName.log
LOG_PATH=$APP_HOME/logs/sys-info.log
if [ "$1" = "" ];
then
@ -26,7 +26,7 @@ function start()
if [ x"$PID" != x"" ]; then
echo "$AppName is running..."
else
nohup java $JVM_OPTS -jar $AppName > /dev/null 2>&1 &
nohup java $JVM_OPTS -jar $AppName > $LOG_PATH 2>&1 &
echo "Start $AppName success..."
fi
}

Loading…
Cancel
Save