Kaynağa Gözat

修改durid请求已响应问题,升级oshi,修改个人会员

Alex 4 yıl önce
ebeveyn
işleme
1db39a90a0

+ 13 - 2
pom.xml

@@ -23,7 +23,8 @@
 		<kaptcha.version>2.3.2</kaptcha.version>
         <pagehelper.boot.version>1.2.5</pagehelper.boot.version>
         <fastjson.version>1.2.73</fastjson.version>
-        <oshi.version>3.9.1</oshi.version>
+        <oshi.version>5.2.5</oshi.version>
+        <jna.version>5.5.0</jna.version>
         <commons.io.version>2.5</commons.io.version>
         <commons.fileupload.version>1.3.3</commons.fileupload.version>
         <poi.version>3.17</poi.version>
@@ -79,7 +80,17 @@
                 <artifactId>oshi-core</artifactId>
                 <version>${oshi.version}</version>
             </dependency>
-			
+
+            <dependency>
+                <groupId>net.java.dev.jna</groupId>
+                <artifactId>jna</artifactId>
+            </dependency>
+
+            <dependency>
+                <groupId>net.java.dev.jna</groupId>
+                <artifactId>jna-platform</artifactId>
+            </dependency>
+
             <!-- swagger2-->
             <dependency>
                 <groupId>io.springfox</groupId>

+ 2 - 2
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TbAppUserController.java

@@ -50,9 +50,9 @@ public class TbAppUserController extends BaseController {
     @PreAuthorize("@ss.hasPermi('system:appUser:list')")
     @GetMapping("/memberList")
     public TableDataInfo memberList(AppMemberVo memberVo) {
-
         startPage();
-        List<AppMemberVo> list = iTbAppUserService.selectAppMembers();
+        List<AppMemberVo> list = iTbAppUserService.selectAppMembers(memberVo.getEnable(),memberVo.getSearchValue(),
+                memberVo.getBeginTime(),memberVo.getEndTime());
         return getDataTable(list);
     }
 

+ 13 - 8
ruoyi-app/src/main/java/com/ruoyi/app/controller/AppLoginController.java

@@ -58,22 +58,17 @@ public class AppLoginController {
         TbAppUser appUser = userService.getOne(new QueryWrapper<TbAppUser>()
                 .eq("mobile",mobile)
         );
+        boolean ck;
+        Date date = new Date();
         // 为空则新增
         if (appUser == null) {
             appUser = new TbAppUser();
-            Date date = new Date();
             appUser.setMobile(mobile);
             appUser.setNickName(mobile);
             appUser.setQrcode(DateUtils.getCurrentTimeRandom());
             appUser.setCreateTime(date);
             appUser.setUpdateTime(date);
-            boolean ck = userService.save(appUser);
-            if (!ck){
-                return AjaxResult.error("未知异常,登录失败");
-            }
-            appUser.setCreateBy(appUser.getId());
-            appUser.setUpdateBy(appUser.getId());
-            ck = userService.updateById(appUser);
+            ck = userService.save(appUser);
             if (!ck){
                 return AjaxResult.error("未知异常,登录失败");
             }
@@ -93,6 +88,16 @@ public class AppLoginController {
         String token = appTokenService.createToken(loginUser);
         jsonObject.put("token", token);
         jsonObject.put("user", appUser);
+
+        appUser.setLoginIp(loginUser.getIpaddr());
+        appUser.setLoginTime(date);
+        appUser.setCreateBy(appUser.getId());
+        appUser.setUpdateBy(appUser.getId());
+        ck = userService.updateById(appUser);
+        if (!ck){
+            return AjaxResult.error("未知异常,登录失败");
+        }
+
         return AjaxResult.success(jsonObject);
     }
 

+ 0 - 10
ruoyi-framework/pom.xml

@@ -65,16 +65,6 @@
             <artifactId>oshi-core</artifactId>
         </dependency>
 
-        <dependency>
-            <groupId>net.java.dev.jna</groupId>
-            <artifactId>jna</artifactId>
-        </dependency>
-
-        <dependency>
-            <groupId>net.java.dev.jna</groupId>
-            <artifactId>jna-platform</artifactId>
-        </dependency>
-
         <!-- 系统模块-->
         <dependency>
             <groupId>com.ruoyi</groupId>

+ 1 - 1
ruoyi-framework/src/main/java/com/ruoyi/framework/config/DruidConfig.java

@@ -105,7 +105,7 @@ public class DruidConfig
             {
                 chain.doFilter(request, response);
                 // 重置缓冲区,响应头不会被重置
-                response.resetBuffer();
+//                response.resetBuffer();
                 // 获取common.js
                 String text = Utils.readFromResource(filePath);
                 // 正则替换banner, 除去底部的广告信息

+ 1 - 1
ruoyi-framework/src/main/java/com/ruoyi/framework/web/domain/Server.java

@@ -189,7 +189,7 @@ public class Server
     private void setSysFiles(OperatingSystem os)
     {
         FileSystem fileSystem = os.getFileSystem();
-        OSFileStore[] fsArray = fileSystem.getFileStores();
+        List<OSFileStore> fsArray = fileSystem.getFileStores();
         for (OSFileStore fs : fsArray)
         {
             long free = fs.getUsableSpace();

+ 3 - 0
ruoyi-system/src/main/java/com/ruoyi/app/domain/TbAppUser.java

@@ -72,6 +72,9 @@ public class TbAppUser implements Serializable {
     @Excel(name = "删除  1是 0否")
     private String deleted;
 
+    private String loginIp;
+    private Date loginTime;
+
     /** 创建者 */
     private Long createBy;
 

+ 8 - 1
ruoyi-system/src/main/java/com/ruoyi/app/domain/vo/AppMemberVo.java

@@ -2,6 +2,7 @@ package com.ruoyi.app.domain.vo;
 
 import com.fasterxml.jackson.annotation.JsonFormat;
 import com.ruoyi.common.annotation.Excel;
+import com.ruoyi.common.core.domain.BaseEntity;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
@@ -11,7 +12,7 @@ import java.util.Date;
 
 @Data
 @ApiModel(value = "会员+家族成员")
-public class AppMemberVo implements Serializable {
+public class AppMemberVo extends BaseEntity implements Serializable {
 
     private static final long serialVersionUID=1L;
 
@@ -61,6 +62,12 @@ public class AppMemberVo implements Serializable {
     @Excel(name = "verCode")
     private String verCode;
 
+    @ApiModelProperty(value="最后登录时间")
+    private Date loginTime;
+
+    @ApiModelProperty(value="登录ip")
+    private String loginIp;
+
     /** 启用  1是 0否 */
     @ApiModelProperty(value="启用  1是 0否")
     @Excel(name = "启用  1是 0否")

+ 15 - 1
ruoyi-system/src/main/java/com/ruoyi/app/mapper/TbAppUserMapper.java

@@ -3,6 +3,7 @@ package com.ruoyi.app.mapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.ruoyi.app.domain.TbAppUser;
 import com.ruoyi.app.domain.vo.AppMemberVo;
+import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
 
@@ -14,5 +15,18 @@ import java.util.List;
  */
 public interface TbAppUserMapper extends BaseMapper<TbAppUser> {
 
-    List<AppMemberVo> selectAppMembers();
+    /**
+     * 查询会员+家族成员列表
+     * @param type  user:左关联app_user表,member:右关联family_member表
+     * @param enable 是否启用 1是 0否
+     * @param search 根据昵称、手机号模糊查询
+     * @param beginTime
+     * @param endTime
+     * @return
+     */
+    List<AppMemberVo> selectAppMembers(@Param("type") String type,
+                                       @Param("enable") String enable,
+                                       @Param("search") String search,
+                                       @Param("beginTime") String beginTime,
+                                       @Param("endTime") String endTime);
 }

+ 2 - 1
ruoyi-system/src/main/java/com/ruoyi/app/service/ITbAppUserService.java

@@ -3,6 +3,7 @@ package com.ruoyi.app.service;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.ruoyi.app.domain.TbAppUser;
 import com.ruoyi.app.domain.vo.AppMemberVo;
+import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
 
@@ -14,5 +15,5 @@ import java.util.List;
  */
 public interface ITbAppUserService extends IService<TbAppUser> {
 
-    List<AppMemberVo> selectAppMembers();
+    List<AppMemberVo> selectAppMembers(String enable, String search, String beginTime, String endTime);
 }

+ 2 - 3
ruoyi-system/src/main/java/com/ruoyi/app/service/impl/TbAppUserServiceImpl.java

@@ -23,8 +23,7 @@ public class TbAppUserServiceImpl extends ServiceImpl<TbAppUserMapper, TbAppUser
      * @return
      */
     @Override
-    public List<AppMemberVo> selectAppMembers(){
-
-        return baseMapper.selectAppMembers();
+    public List<AppMemberVo> selectAppMembers(String enable, String search, String beginTime, String endTime){
+        return baseMapper.selectAppMembers("user",enable, search, beginTime, endTime);
     }
 }

+ 41 - 7
ruoyi-system/src/main/resources/mapper/app/TbAppUserMapper.xml

@@ -16,6 +16,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="verCode"    column="ver_code"    />
         <result property="enable"    column="enable"    />
         <result property="deleted"    column="deleted"    />
+        <result property="loginIp"    column="login_ip"    />
+        <result property="loginTime"    column="login_time"    />
         <result property="createBy"    column="create_by"    />
         <result property="createTime"    column="create_time"    />
         <result property="updateBy"    column="update_by"    />
@@ -23,15 +25,47 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="remark"    column="remark"    />
     </resultMap>
 
-    <select id="selectAppMembers" resultType="com.ruoyi.app.domain.vo.AppMemberVo">
-        select a.id user_id, joins, template_id, nick_name, avatar, qrcode, mobile, openid, ver_code, a.create_by user_create_by,
-            a.create_time user_create_time, a.update_by user_update_by, a.update_time user_update_time, a.remark user_remark,
+    <select id="selectAppMembers" resultType="com.ruoyi.app.domain.vo.AppMemberVo" parameterType="String">
+        select a.id user_id,a.joins,a.template_id,a.nick_name,a.avatar,a.qrcode,a.mobile,a.openid,a.ver_code,a.deleted,a.enable,a.login_time,a.login_ip,
+        a.create_by user_create_by,a.create_time user_create_time, a.update_by user_update_by, a.update_time user_update_time, a.remark user_remark,
 
-            b.id member_id,family_id,admin,parent_id,spouse_id,name,birthday,gender,education,state,b.create_by member_create_by,
-            b.create_time member_create_time,b.update_by member_update_by,b.update_time member_update_time,b.remark member_remark
+        b.id member_id,b.family_id,b.admin,b.parent_id,b.spouse_id,b.name,b.birthday,b.gender,b.education,b.state,
+        b.create_by member_create_by,b.create_time member_create_time,b.update_by member_update_by,b.update_time member_update_time,b.remark member_remark
         from tb_app_user a
-        left join tb_family_member b on a.id = b.app_user_id
-        where deleted = 0
+        <if test="type == 'user' ">
+            left join
+        </if>
+        <if test="type == 'member' ">
+            right join
+        </if>
+        tb_family_member b on a.id = b.app_user_id
+        <where>
+            deleted = 0
+            <if test="enable != null and enable != '' ">
+                AND enable = #{enable}
+            </if>
+            <if test="search != null and search != '' ">
+                and ( a.nick_name LIKE CONCAT('%',#{search},'%') or mobile LIKE CONCAT('%',#{search},'%') )
+            </if>
+
+            <if test="type == 'user' ">
+                <if test="beginTime != null and beginTime != ''"><!-- 开始时间检索 -->
+                    and date_format(a.create_time,'%y%m%d') &gt;= date_format(#{beginTime},'%y%m%d')
+                </if>
+                <if test="endTime != null and endTime != ''"><!-- 结束时间检索 -->
+                    and date_format(a.create_time,'%y%m%d') &lt;= date_format(#{endTime},'%y%m%d')
+                </if>
+            </if>
+            <if test="type == 'member' ">
+                <if test="beginTime != null and beginTime != ''"><!-- 开始时间检索 -->
+                    and date_format(b.create_time,'%y%m%d') &gt;= date_format(#{beginTime},'%y%m%d')
+                </if>
+                <if test="endTime != null and endTime != ''"><!-- 结束时间检索 -->
+                    and date_format(b.create_time,'%y%m%d') &lt;= date_format(#{endTime},'%y%m%d')
+                </if>
+            </if>
+
+        </where>
     </select>
 
 </mapper>