package cc.smtweb.system.bpm.web.sys.user.dataRightGroup;

import cc.smtweb.framework.core.annotation.SwTable;
import cc.smtweb.framework.core.db.impl.DefaultEntity;
import cc.smtweb.framework.core.util.CommUtil;
import cc.smtweb.framework.core.util.JsonUtil;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;

/**
 * Created by 1 at 2022-08-04 17:45:35
 * 实体【[数据权限组](SYS_DATA_RIGHT_GROUP)】的Entity类
 */
@SwTable("SYS_DATA_RIGHT_GROUP")
public class DataRightGroup extends DefaultEntity {
    public static final String ENTITY_NAME = "SYS_DATA_RIGHT_GROUP";

    public DataRightGroup() {
        super(ENTITY_NAME);
    }

    /**
     * 主键
     */
    public long getId() {
        return getLong("sdrg_id");
    }

    /**
     * 主键
     */
    public void setId(long sdrg_id) {
        put("sdrg_id", sdrg_id);
    }

    /**
     * 编码
     */
    public String getCode() {
        return getStr("sdrg_code");
    }

    /**
     * 编码
     */
    public void setCode(String sdrg_code) {
        put("sdrg_code", sdrg_code);
    }

    /**
     * 名称
     */
    public String getName() {
        return getStr("sdrg_name");
    }

    /**
     * 名称
     */
    public void setName(String sdrg_name) {
        put("sdrg_name", sdrg_name);
    }

    /**
     * 备注
     */
    public String getRemark() {
        return getStr("sdrg_remark");
    }

    /**
     * 备注
     */
    public void setRemark(String sdrg_remark) {
        put("sdrg_remark", sdrg_remark);
    }

    /**
     * 数据权限详细
     */
    public String getContent() {
        return getStr("sdrg_content");
    }

    /**
     * 数据权限详细
     */
    public void setContent(String sdrg_content) {
        put("sdrg_content", sdrg_content);
    }

    /**
     * 数据权限定义
     */
    public long getSdrdId() {
        return getLong("sdrg_sdrd_id");
    }

    /**
     * 数据权限定义
     */
    public void setSdrdId(long sdrg_sdrd_id) {
        put("sdrg_sdrd_id", sdrg_sdrd_id);
    }
    // 获取权限明细集合
    public List<DataRightGroupItem> getDataRightItemList(){
        List<DataRightGroupItem> rtList = new ArrayList<>();
        List<Map<String, Object>> listItem = data.readListMap("sdrg_content");
        if(!CommUtil.isEmpty(listItem)){
            listItem.forEach(map-> {
                DataRightGroupItem item = JsonUtil.parse(map,DataRightGroupItem.class);
                if(item!=null){
                    rtList.add(item);
                }
            });
        }
        return rtList;
    }
}
