username@email.com
2024-10-29 18a8fab394f764e5b30c48c8e0d6887ef7d44cbf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
/***********************************************************************
 *            Project: baifenBinfa
 *        ProjectName: 百分兵法管理系统                               
 *                Web: http://chuanyin.com                     
 *             Author:                                        
 *              Email:                               
 *         CreateTime: 202403/02   
 *        Description: 暂无
 ***********************************************************************/
 
using System;
using System.Collections.Generic;
using System.Linq.Expressions;
using System.Threading.Tasks;
using CoreCms.Net.DTO;
using CoreCms.Net.Model.Entities;
using CoreCms.Net.Model.ViewModels.Basics;
using CoreCms.Net.Model.ViewModels.DTO;
using CoreCms.Net.Model.ViewModels.UI;
using SqlSugar;
 
namespace CoreCms.Net.IServices
{
    /// <summary>
    ///     拼团规则表 服务工厂接口
    /// </summary>
    public interface ICoreCmsPinTuanRuleServices : IBaseServices<CoreCmsPinTuanRule>
    {
        /// <summary>
        ///     取购物车数据的时候,更新价格
        /// </summary>
        /// <param name="list"></param>
        /// <param name="ruleId">规则序列</param>
        /// <returns></returns>
        WebApiCallBack PinTuanInfo(List<CartProducts> list, int ruleId);
 
 
        /// <summary>
        ///     接口上获取拼团所有商品
        /// </summary>
        /// <returns></returns>
        Task<WebApiCallBack> GetPinTuanList(int userId = 0, int pageIndex = 1, int pageSize = 20);
 
 
        /// <summary>
        ///     根据条件查询分页数据
        /// </summary>
        /// <param name="predicate">判断集合</param>
        /// <param name="orderByType">排序方式</param>
        /// <param name="pageIndex">当前页面索引</param>
        /// <param name="pageSize">分布大小</param>
        /// <param name="orderByExpression"></param>
        /// <returns></returns>
        Task<IPageList<TagPinTuanResult>> QueryTagPinTuanPageAsync(Expression<Func<TagPinTuanResult, bool>> predicate,
            Expression<Func<TagPinTuanResult, object>> orderByExpression, OrderByType orderByType, int pageIndex = 1,
            int pageSize = 20);
 
 
        /// <summary>
        ///     根据规则Id获取拼团相关信息
        /// </summary>
        /// <param name="ruleId">规则序列</param>
        /// <returns></returns>
        Task<TagPinTuanResult> GetPinTuanInfo(int ruleId);
 
 
 
        /// <summary>
        ///     根据规则ID数组获取拼团相关信息
        /// </summary>
        /// <param name="ruleIds">规则序列</param>
        /// <param name="orderByExpression"></param>
        /// <param name="orderByType"></param>
        /// <param name="pageIndex"></param>
        /// <param name="pageSize"></param>
        /// <returns></returns>
        Task<IPageList<PinTuanListDTO>> GetPinTuanInfos(int[] ruleIds,
            Expression<Func<PinTuanListDTO, object>> orderByExpression, OrderByType orderByType, int pageIndex = 1,
            int pageSize = 20);
    }
}