yupeng
2025-01-21 86e51e9199540ca5fe29b49d5fbe2f3476a0449d
Merge remote-tracking branch 'origin/master' into xizang-changyun
2个文件已添加
11个文件已修改
257 ■■■■ 已修改文件
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TContractController.java 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TTenantController.java 89 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysDictDataController.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/core/config/SwaggerConfig.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-applet/src/main/java/com/ruoyi/web/core/config/SwaggerConfig.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-common/src/main/java/com/ruoyi/common/enums/BusinessType.java 20 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/dto/TTenantDTO.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/mapper/TTenantMapper.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/model/TTenant.java 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/query/TTenantQuery.java 21 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/service/TTenantService.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TTenantServiceImpl.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-system/src/main/resources/mapper/system/TTenantMapper.xml 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TContractController.java
@@ -1,9 +1,19 @@
package com.ruoyi.web.controller.api;
import org.springframework.web.bind.annotation.RequestMapping;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.ruoyi.common.basic.PageInfo;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.system.model.TContract;
import com.ruoyi.system.model.TTenant;
import com.ruoyi.system.query.TTenantQuery;
import com.ruoyi.system.service.TContractService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
 * <p>
@@ -13,9 +23,29 @@
 * @author xiaochen
 * @since 2025-01-17
 */
@Api(tags = "合同管理")
@RestController
@RequestMapping("/t-contract")
public class TContractController {
    private final TContractService contractService;
    @Autowired
    public TContractController(TContractService contractService) {
        this.contractService = contractService;
    }
    /**
     * 查询用户合同列表
     */
    @ApiOperation(value = "查询用户合同列表")
    @GetMapping(value = "/queryListByTenantId")
    public AjaxResult<PageInfo<TTenant>> queryListByTenantId(@RequestParam String tenantId) {
        List<TContract> list = contractService.list(Wrappers.lambdaQuery(TContract.class)
                .eq(TContract::getTenantId, tenantId));
        return AjaxResult.success(list);
    }
}
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TTenantController.java
@@ -1,9 +1,23 @@
package com.ruoyi.web.controller.api;
import org.springframework.web.bind.annotation.RequestMapping;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.basic.PageInfo;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.system.dto.TTenantDTO;
import com.ruoyi.system.model.TTenant;
import com.ruoyi.system.query.TTenantQuery;
import com.ruoyi.system.service.TTenantService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
 * <p>
@@ -13,9 +27,80 @@
 * @author xiaochen
 * @since 2025-01-17
 */
@Api(tags = "租户管理")
@RestController
@RequestMapping("/t-tenant")
public class TTenantController {
    private final TTenantService tenantService;
    @Autowired
    public TTenantController(TTenantService tenantService) {
        this.tenantService = tenantService;
    }
    /**
     * 获取租户管理列表
     */
    @ApiOperation(value = "获取租户分页列表")
    @PostMapping(value = "/pageList")
    public AjaxResult<PageInfo<TTenant>> pageList(@RequestBody TTenantQuery query) {
        return AjaxResult.success(tenantService.pageList(query));
    }
    /**
     * 添加租户管理
     */
    @Log(title = "租户信息-新增租户", businessType = BusinessType.INSERT)
    @ApiOperation(value = "添加租户")
    @PostMapping(value = "/add")
    public AjaxResult<Boolean> add(@Validated @RequestBody TTenantDTO dto) {
        // 密码加密
        dto.setPassword(SecurityUtils.encryptPassword(dto.getPassword()));
        return AjaxResult.success(tenantService.save(dto));
    }
    /**
     * 修改租户
     */
    @Log(title = "租户信息-修改租户", businessType = BusinessType.UPDATE)
    @ApiOperation(value = "修改租户")
    @PostMapping(value = "/update")
    public AjaxResult<Boolean> update(@Validated @RequestBody TTenantDTO dto) {
        // 密码加密
        if(StringUtils.isNotBlank(dto.getPassword())){
            dto.setPassword(SecurityUtils.encryptPassword(dto.getPassword()));
        }
        return AjaxResult.success(tenantService.updateById(dto));
    }
    /**
     * 查看租户详情
     */
    @ApiOperation(value = "查看租户详情")
    @GetMapping(value = "/getDetailById")
    public AjaxResult<TTenant> getDetailById(@RequestParam Long id) {
        return AjaxResult.success(tenantService.getById(id));
    }
    /**
     * 删除租户
     */
    @Log(title = "租户信息-删除租户", businessType = BusinessType.DELETE)
    @ApiOperation(value = "删除租户")
    @DeleteMapping(value = "/deleteById")
    public AjaxResult<Boolean> deleteById(@RequestParam Long id) {
        return AjaxResult.success(tenantService.removeById(id));
    }
    /**
     * 批量删除租户
     */
    @Log(title = "租户信息-删除租户", businessType = BusinessType.DELETE)
    @ApiOperation(value = "批量删除租户")
    @DeleteMapping(value = "/deleteByIds")
    public AjaxResult<Boolean> deleteByIds(@RequestBody List<Long> ids) {
        return AjaxResult.success(tenantService.removeByIds(ids));
    }
}
ruoyi-admin/src/main/java/com/ruoyi/web/controller/system/SysDictDataController.java
@@ -3,6 +3,9 @@
import java.util.ArrayList;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.validation.annotation.Validated;
@@ -30,6 +33,7 @@
 * 
 * @author ruoyi
 */
@Api(tags = "数据字典信息")
@RestController
@RequestMapping("/system/dict/data")
public class SysDictDataController extends BaseController
@@ -72,6 +76,7 @@
    /**
     * 根据字典类型查询字典数据信息
     */
    @ApiOperation(value = "根据字典类型查询字典数据信息")
    @GetMapping(value = "/type/{dictType}")
    public AjaxResult dictType(@PathVariable String dictType)
    {
ruoyi-admin/src/main/java/com/ruoyi/web/core/config/SwaggerConfig.java
@@ -113,9 +113,9 @@
        // 用ApiInfoBuilder进行定制
        return new ApiInfoBuilder()
                // 设置标题
                .title("标题:阿坝移动管理系统_接口文档")
                .title("标题:西藏国投管理系统_接口文档")
                // 描述
                .description("阿坝移动接口文档")
                .description("西藏国投接口文档")
                // 作者信息
                .contact(new Contact(ruoyiConfig.getName(), null, null))
                // 版本
ruoyi-applet/src/main/java/com/ruoyi/web/core/config/SwaggerConfig.java
@@ -113,9 +113,9 @@
        // 用ApiInfoBuilder进行定制
        return new ApiInfoBuilder()
                // 设置标题
                .title("标题:阿坝移动管理系统_接口文档")
                .title("标题:西藏国投管理系统_接口文档")
                // 描述
                .description("阿坝移动接口文档")
                .description("西藏国投接口文档")
                // 作者信息
                .contact(new Contact(ruoyiConfig.getName(), null, null))
                // 版本
ruoyi-common/src/main/java/com/ruoyi/common/enums/BusinessType.java
@@ -57,23 +57,7 @@
     */
    CLEAN,
    /**
     * 现场作业修改时间
     * 查询
     */
    UPDATETIME,
    /**
     * 现场作业修改经理
     */
    UPDATEMANAGER,
    /**
     * 现场作业修改负责人
     */
    UPDATEHEADER,
    /**
     * 现场作业修改人员
     */
    UPDATEUSERADD,
    /**
     * 现场作业修改人员
     */
    UPDATEUSERREMOVE,
    SELECT,
}
ruoyi-system/src/main/java/com/ruoyi/system/dto/TTenantDTO.java
New file
@@ -0,0 +1,10 @@
package com.ruoyi.system.dto;
import com.ruoyi.system.model.TTenant;
import io.swagger.annotations.ApiModel;
import lombok.Data;
@Data
@ApiModel(value = "租户DTO")
public class TTenantDTO extends TTenant {
}
ruoyi-system/src/main/java/com/ruoyi/system/mapper/TTenantMapper.java
@@ -1,7 +1,12 @@
package com.ruoyi.system.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.ruoyi.common.basic.PageInfo;
import com.ruoyi.system.model.TTenant;
import com.ruoyi.system.query.TTenantQuery;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
 * <p>
@@ -13,4 +18,13 @@
 */
public interface TTenantMapper extends BaseMapper<TTenant> {
    /**
     * 获取租户分页列表
     * @param query
     * @param pageInfo
     * @return
     */
    List<TTenant> pageList(@Param("query") TTenantQuery query, @Param("pageInfo")PageInfo<TTenant> pageInfo);
}
ruoyi-system/src/main/java/com/ruoyi/system/model/TTenant.java
@@ -14,6 +14,9 @@
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
/**
 * <p>
 * 租户
@@ -34,10 +37,12 @@
    private String id;
    @ApiModelProperty(value = "住户名称")
    @NotBlank(message = "住户名称不能为空")
    @TableField("resident_name")
    private String residentName;
    @ApiModelProperty(value = "入住时间")
    @NotNull(message = "入住时间不能为空")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @TableField("checkIn_time")
    private LocalDateTime checkinTime;
@@ -63,10 +68,12 @@
    private Integer buildingArea;
    @ApiModelProperty(value = "联系电话")
    @NotBlank(message = "联系电话不能为空")
    @TableField("phone")
    private String phone;
    @ApiModelProperty(value = "证件号码")
    @NotBlank(message = "证件号码不能为空")
    @TableField("id_card")
    private String idCard;
@@ -75,6 +82,7 @@
    private String email;
    @ApiModelProperty(value = "银行转账专号")
    @NotBlank(message = "银行转账专号不能为空")
    @TableField("bank_number")
    private String bankNumber;
@@ -82,4 +90,13 @@
    @TableField("mail_address")
    private String mailAddress;
    @ApiModelProperty(value = "登录账号")
    @NotBlank(message = "登录账号不能为空")
    @TableField("account")
    private String account;
    @ApiModelProperty(value = "登录密码")
    @TableField("password")
    private String password;
}
ruoyi-system/src/main/java/com/ruoyi/system/query/TTenantQuery.java
New file
@@ -0,0 +1,21 @@
package com.ruoyi.system.query;
import com.ruoyi.common.core.domain.BasePage;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@ApiModel(value = "租户查询Query")
public class TTenantQuery extends BasePage {
    @ApiModelProperty(value = "租户姓名")
    private String tenantName;
    @ApiModelProperty(value = "联系电话")
    private String phone;
}
ruoyi-system/src/main/java/com/ruoyi/system/service/TTenantService.java
@@ -1,7 +1,9 @@
package com.ruoyi.system.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.common.basic.PageInfo;
import com.ruoyi.system.model.TTenant;
import com.ruoyi.system.query.TTenantQuery;
/**
 * <p>
@@ -13,4 +15,10 @@
 */
public interface TTenantService extends IService<TTenant> {
    /**
     * 获取租户分页列表
     * @param query
     * @return
     */
    PageInfo<TTenant> pageList(TTenantQuery query);
}
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TTenantServiceImpl.java
@@ -1,10 +1,15 @@
package com.ruoyi.system.service.impl;
import com.ruoyi.common.basic.PageInfo;
import com.ruoyi.system.mapper.TTenantMapper;
import com.ruoyi.system.model.TTenant;
import com.ruoyi.system.query.TTenantQuery;
import com.ruoyi.system.service.TTenantService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.system.vo.SysUserVO;
import org.springframework.stereotype.Service;
import java.util.List;
/**
 * <p>
@@ -17,4 +22,11 @@
@Service
public class TTenantServiceImpl extends ServiceImpl<TTenantMapper, TTenant> implements TTenantService {
    @Override
    public PageInfo<TTenant> pageList(TTenantQuery query) {
        PageInfo<TTenant> pageInfo = new PageInfo<>(query.getPageNum(), query.getPageSize());
        List<TTenant> list = this.baseMapper.pageList(query,pageInfo);
        pageInfo.setRecords(list);
        return pageInfo;
    }
}
ruoyi-system/src/main/resources/mapper/system/TTenantMapper.xml
@@ -22,11 +22,28 @@
        <result column="create_by" property="createBy" />
        <result column="update_by" property="updateBy" />
        <result column="disabled" property="disabled" />
        <result column="account" property="account" />
        <result column="password" property="password" />
    </resultMap>
    <!-- 通用查询结果列 -->
    <sql id="Base_Column_List">
        id, resident_name, checkIn_time, tenant_attributes, tenant_type, tenant_building, room_number, building_area, phone, id_card, email, bank_number, mail_address, create_time, update_time, create_by, update_by, disabled
        id, resident_name, checkIn_time, tenant_attributes, tenant_type, tenant_building, room_number, building_area, phone, id_card, email,
            bank_number, mail_address, create_time, update_time, create_by, update_by, disabled,account,password
    </sql>
    <select id="pageList" resultType="com.ruoyi.system.model.TTenant">
        SELECT <include refid="Base_Column_List"/>
        FROM t_tenant
        <where>
            <if test="residentName != null and residentName != ''">
                AND resident_name LIKE concat('%',#{residentName},'%')
            </if>
            <if test="phone != null and phone != ''">
                AND phone LIKE concat('%',#{phone},'%')
            </if>
            AND disabled = ${@com.ruoyi.common.enums.DisabledEnum@NO.getCode()}
        </where>
        ORDER BY create_time DESC
    </select>
</mapper>