随笔笔记3

笔记3

1.查询列表展示各家谱最大代数,代数递增

方式 ①

一个mapper对应一个查询sql
mapper:
/**
     * 查询每个家谱对应的最大代数
     */
int selectBaseGenealogySpectrumMaxById(Long familytreeId);
sql:(查出每个家谱最大代数)
<select id="selectBaseGenealogySpectrumMaxById" parameterType="Long" resultType="java.lang.Integer">
        SELECT MAX(algebra) FROM base_genealogy_spectrum
        WHERE familytree_id = #{familytreeId}
    </select>
新增时调用mapper,
int i = baseGenealogySpectrumMapper.selectBaseGenealogySpectrumMaxById(baseGenealogySpectrum.getFamilytreeId());
baseGenealogySpectrum.setAlgebra(Long.valueOf(i+1));
注意:valueOf() 方法用于返回给定参数的原生 Number 对象值,参数可以是原生数据类型, String等。
方式② 
直接再查询sql里+1
<select id="selectBaseGenealogySpectrumMaxById" parameterType="Long" resultType="java.lang.Integer">
        SELECT  IFNULL (MAX(algebra) ,0)+1 FROM base_genealogy_spectrum
        WHERE familytree_id = #{familytreeId}
</select>

调mapper

2.select选择器联动

select选择数据联动带出其他数据

① 再需要联动的其他模块写一个无参返回接口
mapper:
/**
     * 查询家谱列表数据
     */
    List<BaseFamilytree> selectFamilytreeAllList();
xml:
<!-- 查询家谱列表数据   -->
    <select id="selectFamilytreeAllList" resultMap="BaseFamilytreeResult">
        select * from base_familytree
    </select>
service:
/**
     * 查询家谱列表数据
     */
    List<BaseFamilytree> selectFamilytreeAllList();
impl:
 /**
     * 查询家谱列表数据
     * @return
     */
    @Override
    public List<BaseFamilytree> selectFamilytreeAllList() {
        return baseFamilytreeMapper.selectFamilytreeAllList();
    }
controller:
 /**
     * 查询家谱列表
     */
    @PreAuthorize("@ss.hasPermi('base:BaseFamilytree:AllList')")
    @GetMapping("/AllList")
    public List<BaseFamilytree> AllList()
    {
        return baseFamilytreeService.selectFamilytreeAllList();
    }
② 再前端对应页面调接口
import { AllListBaseFamilytree } from "@/api/base/familytree/BaseFamilytree";
③ select选择器
//BaseFamilytreeList 自定义列表名   familytreeId 家谱id   familytreeName家谱名称
<el-form-item label="家谱名称" prop="familytreeId">
          <el-select v-model="form.familytreeId" placeholder="请输入家谱名称" clearable>
            <el-option
               v-for="dict in BaseFamilytreeList"
               :key="dict.familytreeId"
               :label="dict.familytreeName"
               :value="dict.familytreeId" 
            />
          </el-select>
 </el-form-item>

 //查询家谱数据
    handAllList(){
       AllListBaseFamilytree().then(response => {
        this.BaseFamilytreeList = response;
      });
    },

注意:最后在created(){} 里面回调handAllList函数,初始化数据

3.字辈谱-代数处理(查询列表展示代数人数)

//查询每个家谱最大代数,新增一个家谱代数默认+1,代数递增
方式① 一个mapper对应一个查询sql
mapper:
/**
     * 查询每个家谱对应的最大代数
     */
int selectBaseGenealogySpectrumMaxById(Long familytreeId);

xml:(查出每个家谱最大代数)
<select id="selectBaseGenealogySpectrumMaxById" parameterType="Long" resultType="java.lang.Integer">
        SELECT MAX(algebra) FROM base_genealogy_spectrum
        WHERE familytree_id = #{familytreeId}
    </select>

新增时调用mapper,
int i = baseGenealogySpectrumMapper.selectBaseGenealogySpectrumMaxById(baseGenealogySpectrum.getFamilytreeId());
baseGenealogySpectrum.setAlgebra(Long.valueOf(i+1));
注意:valueOf() 方法用于返回给定参数的原生 Number 对象值,参数可以是原生数据类型, String等。
方式② 
mapper:
/**
     * 查询每个家谱对应的最大代数
     */
int selectBaseGenealogySpectrumMaxById(Long familytreeId);

直接再查询sql里+1
<select id="selectBaseGenealogySpectrumMaxById" parameterType="Long" resultType="java.lang.Integer">
        SELECT  IFNULL (MAX(algebra) ,0)+1 FROM base_genealogy_spectrum
        WHERE familytree_id = #{familytreeId}
</select>
在需要的时候调mapper
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值