package com.crunii.micro.service.sysmgr.service;

import com.crunii.micro.common.dto.Result;
import com.crunii.micro.domain.dto.Worker;
import com.crunii.micro.domain.entity.main.YcqAppConfigUrl;
import com.crunii.micro.service.sysmgr.dto.sysmgr.AppConfigC;
import com.crunii.micro.service.sysmgr.dto.sysmgr.AppConfigU;

import java.util.List;

/**
 * @author baoxy
 * @date 2023-06-09
 */
public interface AppHomeConfigService {

    /**
     * 查询app端配置url
     *
     * @return List<YcqAppConfigUrl>列表
     */
    Result<List<YcqAppConfigUrl>> findAppConfigUrl();

    /**
     * 保存app端配置url的数据
     *
     * @param dto 实体类
     * @return object
     */
    Result<Object> save(AppConfigC dto);

    /**
     * 批量保存app端配置url的数据
     *
     * @param dtos 列表
     * @return object
     */
    Result<Object> batchSave(List<AppConfigC> dtos);

    /**
     * 删除数据
     *
     * @param appId app端唯一主键id
     * @return object
     */
    Result<Object> del(String appId);

    /**
     * 修来数据
     *
     * @param dto 实体类
     * @return object
     */
    Result<Object> update(AppConfigU dto);

    Result<List<YcqAppConfigUrl>> findRoleApp(Worker worker);

    Result<List<YcqAppConfigUrl>> findRoleAppVisitor();
}
