前端
展示效果
sql查询
SELECT
*,
t2.area_cn ,
t3.province_cn,
t4.city_cn
FROM
franchisee t1,
area t2,
province t3,
city t4
<where>
t1.area_id = t2.id
AND t1.province_id = t3.id
AND t1.city_id = t4.id
<if test="Franchisee.franchiseeAccount!=null and Franchisee.franchiseeAccount!=''">
AND t1.superior_franchisee_id =#{Franchisee.franchiseeAccount}
</if>
<if test="Franchisee.userType!='' and Franchisee.userType!=null">
and t1.user_type=#{Franchisee.userType}
</if>
<if test="Franchisee.superiorFranchiseeId!=null and Franchisee.superiorFranchiseeId!=''">
and t1.franchisee_account=#{Franchisee.superiorFranchiseeId}
</if>
and t1.isdel=0
</where>
order by t1.user_type desc
后端java 代码
解释:
1.上面那个不循环其实是没啥用的。
2.嗯,没有实现,基本上没有实现的功能,主要是嗯,下面那个复循环,跟那个查询一历list,那个是有用的
3.其实这个意思就是说,你前端就是你点一个加号,你前端不是有塑形吗?你要点一次加号,然后下面可以查询出它的子类是吧,然后然后你每点一次加号,就会每就会提就会那个请求一时这个坑处了。
4.然后你会带一个带一个自己的ID过来,自己的那个分销商ID,然后你跟,然后拿到自己的分销商ID之后,那个代码,就是说根据自己的分销商ID去查询自己的下级,就是下查询自己的list,然后查询自己的历史课,不是有多个多个那个分销商嘛,就是我这个分销商,我查询自己多个下级,然后我多个下级的时候,我还得判断我的下级是不是有。自己的下级,所以下面要复习完,就是把每个下级再去查询自己还有没有下级,所以所以返回那个意思OK,意思OK,就是不,如果这个下级是有下级的,那就返回一个处,如果没有的,就返回一个force
5.
@ApiOperation("根据一级分销商查询出下面所有的信息")
@RequestMapping(value = "/listFranchisee",method = RequestMethod.GET)
public Result listFranchisee(Franchisee franchiseeAccount){
// QueryWrapper<Franchisee> wrapper = new QueryWrapper<>();
// wrapper.eq("superior_franchisee_id",franchiseeAccount);
// wrapper.ne("franchisee_account",franchiseeAccount);
if (franchiseeAccount.getFranchiseeAccount().equals("0")){
franchiseeAccount.setFranchiseeAccount("");
franchiseeAccount.setUserType("0");
}else {
franchiseeAccount.setSuperiorFranchiseeId("");
}
List<FranchiseeVo> list = franchiseeService.queryFranchiseeList(franchiseeAccount);
for (FranchiseeVo franchisee : list) {
Boolean aBoolean = isokFranchisee(franchisee.getFranchiseeAccount());
franchisee.setIsok(aBoolean);
}
// List<Franchisee> digui = digui(list);
return Result.ok(list);
}
/**
* 判断分销商下面是否还有分销商,有判true否判false
* @param id
* @return
*/
public Boolean isokFranchisee(String id){
int superior_franchisee_id = franchiseeService.count(new QueryWrapper<Franchisee>().eq("superior_franchisee_id", id));
return superior_franchisee_id>0?true:false;
}