Files
WMS-Api/src/WMS.Web.Domain/IService/Public/ISingleDataService.cs
2023-10-18 10:37:41 +08:00

128 lines
4.8 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using System;
using System.Collections.Generic;
using System.Text;
using System.Threading.Tasks;
using WMS.Web.Domain.Values.Single;
namespace WMS.Web.Domain.IService.Public
{
/// <summary>
/// 单点数据返回服务接口
/// </summary>
public interface ISingleDataService
{
/// <summary>
/// 获取单点数据根据方法名和公司ID
/// </summary>
/// <param name="action"></param>
/// <param name="companyId"></param>
/// <param name="id"></param>
/// <returns></returns>
string GetSingleData(SingleAction action, int companyId, int id);
/// <summary>
/// 获取单点数据根据方法名和公司ID
/// </summary>
/// <param name="action"></param>
/// <param name="companyId"></param>
/// <param name="id"></param>
/// <returns></returns>
decimal GetSingleDataNumber(SingleAction action, int companyId, int id);
/// <summary>
/// 获取单点数据:根据方法名和公司ID
/// </summary>
/// <param name="action"></param>
/// <param name="companyId"></param>
/// <param name="id"></param>
/// <returns></returns>
string GetSingleDataCode(SingleAction action, int companyId, int id);
/// <summary>
/// 获取单点数据根据方法名和公司ID
/// </summary>
/// <param name="action"></param>
/// <param name="companyId"></param>
/// <param name="code"></param>
/// <returns></returns>
string GetSingleData(SingleAction action, int companyId, string code);
/// <summary>
/// 根据名字模糊匹配
/// </summary>
/// <param name="action"></param>
/// <param name="companyId"></param>
/// <param name="name"></param>
/// <returns></returns>
List<int> GetIdsBySingleName(SingleAction action, int companyId, string name);
/// <summary>
/// 获取单点数据集合:泛型-同步
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="action"></param>
/// <param name="companyId"></param>
/// <returns></returns>
List<T> GetSingleData<T>(SingleAction action, int companyId) where T : class;
/// <summary>
/// 获取单点数据集合:泛型-异步
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="action"></param>
/// <param name="companyId"></param>
/// <returns></returns>
Task<List<T>> GetSingleDataAsync<T>(SingleAction action, int companyId) where T : class;
/// <summary>
/// 获取单点数据集合:泛型-异步-无缓存
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="action"></param>
/// <param name="companyId"></param>
/// <returns></returns>
Task<List<T>> GetSingleDataNoCacheAsync<T>(SingleAction action, int companyId) where T : class;
/// <summary>
/// 单点数据:可对接全部接口
/// </summary>
/// <typeparam name="T">返回对象</typeparam>
/// <typeparam name="X">请求对象</typeparam>
/// <typeparam name="Y">方法名称</typeparam>
/// <param name="dto">请求对象</param>
/// <param name="action">方法名称</param>
/// <param name="type">控制器名称</param>
/// <returns></returns>
Task<T> GetSingleData<T, X, Y>(X dto, Y action, SingleControllerType type = SingleControllerType.Single) where T : class;
/// <summary>
/// 单点数据:可对接全部接口-无缓存
/// </summary>
/// <typeparam name="T"></typeparam>
/// <typeparam name="X"></typeparam>
/// <typeparam name="Y"></typeparam>
/// <param name="dto"></param>
/// <param name="action"></param>
/// <param name="type"></param>
/// <returns></returns>
Task<T> GetSingleDataNoCache<T, X, Y>(X dto, Y action, SingleControllerType type = SingleControllerType.Single) where T : class;
/// <summary>
/// 获取单点数据:请求对象和接口方法名
/// </summary>
/// <typeparam name="T"></typeparam>
/// <typeparam name="X"></typeparam>
/// <param name="dto"></param>
/// <param name="action"></param>
/// <returns></returns>
Task<T> GetSysConfigData<T, X>(X dto, SysConfigAction action);
/// <summary>
/// 获取客户仓库
/// </summary>
/// <param name="companyId"></param>
/// <param name="customerStockCode"></param>
/// <returns></returns>
string GetCustomerStock(int companyId, string customerStockCode);
}
}