一、查询
1.建立数据库
2.实体类
import lombok.Data;
import org.apache.ibatis.type.Alias;
@Data
@Alias("SysUserSettings")
public class SysUserSettings {
private String id;
private String userId;
private int bigFile;
private int days;
}
3.SQL语句
import com.cms.modules.sys.domain.SysUserSettings;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@Mapper
public interface SysUserSettingsMapper {
SysUserSettings selectByUserId(@Param("userId") String userId);
4.service
import com.cms.modules.sys.domain.SysUserSettings;
public interface ISysUserSettingsService {
SysUserSettings selectByUserId(String userId);
}
import com.cms.modules.sys.domain.SysUserSettings;
import com.cms.modules.sys.mapper.SysUserSettingsMapper;
import com.cms.modules.sys.service.ISysUserSettingsService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@Service
public class ISysUserSettingsServiceImpl implements ISysUserSettingsService {
@Resource
private SysUserSettingsMapper sysUserSettingsMapper;
@Override
public SysUserSettings selectByUserId(String userId) {
return sysUserSettingsMapper.selectByUserId(userId);
}
}
5.Api接口
import com.cms.common.constant.ControllerConstant;
import com.cms.common.plugins.logging.aop.annotation.Logging;
import com.cms.common.plugins.logging.aop.enums.BusinessType;
import com.cms.common.tools.secure.SecurityUtil;
import com.cms.common.web.domain.response.Result;
import com.cms.modules.sys.domain.SysUser;
import com.cms.modules.sys.domain.SysUserSettings;
import com.cms.modules.sys.service.ISysUserSettingsService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import static com.cms.common.web.domain.response.Result.success;
@RestController
@RequestMapping(ControllerConstant.API_CLIENT_PREFIX + "user")
@Api(value = "个人设置Api", tags = {"个人设置接口"})
public class SysUserSettingsApi {
@Resource
private ISysUserSettingsService iSysUserSettingsService;
@ResponseBody
@GetMapping("/selectByUserId")
@ApiOperation(value = "根据UserId查询个人设置详细内容")
@Logging(title = "根据UserId查询个人设置详细内容", describe = "根据UserId查询个人设置详细内容", type = BusinessType.QUERY)
public Result selectByUserId() {
//用来获取当前的user
SysUser currentUserObj = (SysUser) SecurityUtil.currentUserObj();
SysUserSettings sysUserSettings1 = iSysUserSettingsService.selectByUserId(currentUserObj.getUserId());
return success(sysUserSettings1);
}
}
二、修改
1.SQL语句
import com.cms.modules.bus.domain.AppPaper;
import com.cms.modules.sys.domain.SysUserSettings;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@Mapper
public interface SysUserSettingsMapper {
int update(SysUserSettings sysUserSettings);
}
update Sys_User_Settings
big_file=#{bigFile},
days=#{days},
frequency=#{frequency},
frequencies=#{frequencies},
file_delete =#{fileDelete},
delete_size=#{deleteSize},
automatic_delete=#{automaticDelete},
where user_id = #{userId}
3.service
import com.cms.modules.sys.domain.SysUserSettings;
public interface ISysUserSettingsService {
int update(SysUserSettings sysUserSettings);
}
import com.cms.modules.sys.domain.SysUserSettings;
import com.cms.modules.sys.mapper.SysUserSettingsMapper;
import com.cms.modules.sys.service.ISysUserSettingsService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@Service
public class ISysUserSettingsServiceImpl implements ISysUserSettingsService {
@Resource
private SysUserSettingsMapper sysUserSettingsMapper;
@Override
public int update(SysUserSettings sysUserSettings) {
return sysUserSettingsMapper.update(sysUserSettings);
}
}
4.Api
import com.cms.common.constant.ControllerConstant;
import com.cms.common.plugins.logging.aop.annotation.Logging;
import com.cms.common.plugins.logging.aop.enums.BusinessType;
import com.cms.common.tools.secure.SecurityUtil;
import com.cms.common.tools.sequence.SequenceUtil;
import com.cms.common.tools.string.StringUtil;
import com.cms.common.web.domain.response.Result;
import com.cms.modules.sys.domain.SysUser;
import com.cms.modules.sys.domain.SysUserSettings;
import com.cms.modules.sys.service.ISysUserSettingsService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import static com.cms.common.web.domain.response.Result.success;
@RestController
@RequestMapping(ControllerConstant.API_CLIENT_PREFIX + "user")
@Api(value = "个人设置Api", tags = {"个人设置接口"})
public class SysUserSettingsApi {
@Resource
private ISysUserSettingsService iSysUserSettingsService;
@ResponseBody
@PostMapping("/update")
@ApiOperation(value = "修改个人设置详细内容")
@Logging(title = "修改个人设置详细内容", describe = "修改个人设置详细内容", type = BusinessType.EDIT)
public Result update(@RequestBody SysUserSettings sysUserSettings) {
int sysUserSettings1 = iSysUserSettingsService.update(sysUserSettings);
return success(sysUserSettings1);
}
}
三、判断查询是否为空,如果为空则添加一条SQL语句。
1.SQL语句
import com.cms.modules.bus.domain.AppPaper;
import com.cms.modules.sys.domain.SysUserSettings;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@Mapper
public interface SysUserSettingsMapper {
SysUserSettings selectByUserId(@Param("userId") String userId);
int insert(SysUserSettings sysUserSettings);
}
INSERT INTO Sys_User_Settings(id, user_id, big_file, days, frequency, frequencies, file_delete, delete_size,automatic_delete)
VALUES (#{id}, #{userId}, 100, 30, '0', '0', '0', 50, '0')
2.service
import com.cms.modules.sys.domain.SysUserSettings;
public interface ISysUserSettingsService {
SysUserSettings selectByUserId(String userId);
int insert(SysUserSettings sysUserSettings);
}
import com.cms.modules.sys.domain.SysUserSettings;
import com.cms.modules.sys.mapper.SysUserSettingsMapper;
import com.cms.modules.sys.service.ISysUserSettingsService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@Service
public class ISysUserSettingsServiceImpl implements ISysUserSettingsService {
@Resource
private SysUserSettingsMapper sysUserSettingsMapper;
@Override
public SysUserSettings selectByUserId(String userId) {
return sysUserSettingsMapper.selectByUserId(userId);
}
@Override
public int insert(SysUserSettings sysUserSettings) {
return sysUserSettingsMapper.insert(sysUserSettings);
}
}
3.Api
import com.cms.common.constant.ControllerConstant;
import com.cms.common.plugins.logging.aop.annotation.Logging;
import com.cms.common.plugins.logging.aop.enums.BusinessType;
import com.cms.common.tools.secure.SecurityUtil;
import com.cms.common.tools.sequence.SequenceUtil;
import com.cms.common.tools.string.StringUtil;
import com.cms.common.web.domain.response.Result;
import com.cms.modules.sys.domain.SysUser;
import com.cms.modules.sys.domain.SysUserSettings;
import com.cms.modules.sys.service.ISysUserSettingsService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import static com.cms.common.web.domain.response.Result.success;
@RestController
@RequestMapping(ControllerConstant.API_CLIENT_PREFIX + "user")
@Api(value = "个人设置Api", tags = {"个人设置接口"})
public class SysUserSettingsApi {
@Resource
private ISysUserSettingsService iSysUserSettingsService;
@ResponseBody
@GetMapping("/selectByUserId")
@ApiOperation(value = "根据UserId查询个人设置详细内容")
@Logging(title = "根据UserId查询个人设置详细内容", describe = "根据UserId查询个人设置详细内容", type = BusinessType.QUERY)
public Result selectByUserId() {
//获取用户Id
SysUser currentUserObj = (SysUser) SecurityUtil.currentUserObj();
SysUserSettings sysUserSettings1 = iSysUserSettingsService.selectByUserId(currentUserObj.getUserId());
// 先判断此用户是否为空,如果没有就插入一条默认值
SysUserSettings sysUserSettings = new SysUserSettings();
if (!StringUtil.isNotNull(sysUserSettings1)) {
sysUserSettings.setId(SequenceUtil.makeStringId());
sysUserSettings.setUserId(currentUserObj.getUserId());
iSysUserSettingsService.insert(sysUserSettings);
} else {
sysUserSettings1 = sysUserSettings;
}
return success(sysUserSettings1);
}