forked from kidgrow-microservices-platform

zhaoxiaohao
2020-04-10 665c0a06d0bca5a22fb42406c465d736f876b04e
kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysCompanyServiceImpl.java
@@ -1,10 +1,17 @@
package com.kidgrow.usercenter.service.impl;
import com.kidgrow.common.model.ResultBody;
import com.kidgrow.usercenter.model.SysArea;
import com.kidgrow.usercenter.service.ISysAreaService;
import com.kidgrow.usercenter.vo.SysCompanyVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cglib.beans.BeanCopier;
import org.springframework.stereotype.Service;
import com.kidgrow.common.model.PageResult;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.kidgrow.common.service.impl.SuperServiceImpl;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import org.apache.commons.collections4.MapUtils;
@@ -25,16 +32,58 @@
@Slf4j
@Service
public class SysCompanyServiceImpl extends SuperServiceImpl<SysCompanyMapper, SysCompany> implements ISysCompanyService {
    @Autowired
    private ISysAreaService sysAreaService;
    private final  Integer SHENG=1;
    private final  Integer SHI=2;
    private final  Integer XIAN=3;
    /**
     * 列表
     * @param params
     * @return
     */
    @Override
    public PageResult<SysCompany> findList(Map<String, Object> params){
    public PageResult<SysCompanyVo> findList(Map<String, Object> params){
        Page<SysCompany> page = new Page<>(MapUtils.getInteger(params, "page"), MapUtils.getInteger(params, "limit"));
        List<SysCompany> list  =  baseMapper.findList(page, params);
        return PageResult.<SysCompany>builder().data(list).code(0).count(page.getTotal()).build();
        List<SysCompanyVo> listVo=new ArrayList<>();
        list.forEach(e -> {
            SysCompanyVo vo=new SysCompanyVo();
            BeanCopier beanCopier = BeanCopier.create(SysCompany.class, SysCompanyVo.class, false);
            beanCopier.copy(e,vo,null);
            if(vo.getCompanyArea()!=null){
                SysArea byId = sysAreaService.getById(vo.getCompanyArea());
                if(byId.getAreaLeveltype()==XIAN){
                    vo.setXianId(byId.getId());
                    vo.setXian(byId.getAreaName());
                    SysArea shi = sysAreaService.getById(byId.getAreaParentId());
                    if(shi!=null){
                        vo.setShi(shi.getAreaName());
                        vo.setShiId(shi.getId());
                        SysArea sheng = sysAreaService.getById(shi.getAreaParentId());
                        if (sheng != null) {
                            vo.setSheng(sheng.getAreaName());
                            vo.setShengId(sheng.getId());
                        }
                    }
                }
                if(byId.getAreaLeveltype()==SHI){
                    vo.setShi(byId.getAreaName());
                    vo.setShiId(byId.getId());
                    SysArea sheng = sysAreaService.getById(byId.getAreaParentId());
                    if (sheng != null) {
                        vo.setSheng(sheng.getAreaName());
                        vo.setShengId(sheng.getId());
                    }
                }
                if(byId.getAreaLeveltype()==SHENG){
                    vo.setSheng(byId.getAreaName());
                    vo.setShengId(byId.getId());
                }
            }
            listVo.add(vo);
        });
        return PageResult.<SysCompanyVo>builder().data(listVo).code(0).count(page.getTotal()).build();
    }
    /**
@@ -46,4 +95,20 @@
    public SysCompany findByObject(SysCompany sysCompany){
        return baseMapper.findByObject(sysCompany);
    }
    @Override
    public ResultBody updateEnabled(Map<String, Object> params) {
        Long id = MapUtils.getLong(params, "id");
        if (id != null) {
            SysCompany sysCompany = baseMapper.selectById(id);
            if (sysCompany != null) {
                Boolean enabled = MapUtils.getBoolean(params, "enabled");
                sysCompany.setEnabled(enabled);
                baseMapper.updateById(sysCompany);
            }
        }else {
            return ResultBody.failed("请选择一条数据");
        }
        return ResultBody.ok();
    }
}