using BBWYB.Common.Log; using BBWYB.Common.Models; using BBWYB.Server.Model; using BBWYB.Server.Model.Db; using BBWYB.Server.Model.Dto; using Yitter.IdGenerator; namespace BBWYB.Server.Business { public class PurchaserBusiness : BaseBusiness, IDenpendency { public PurchaserBusiness(IFreeSql fsql, NLogManager nLogManager, IIdGenerator idGenerator) : base(fsql, nLogManager, idGenerator) { } public ListResponse QueryPurchaserList(QueryPurchaserRequest request) { return new ListResponse(); } public ListResponse QueryPurchaserCategoryList(QueryPurchaserExtendedRequest request) { var list = fsql.Select() .WhereIf(request.Type != null, x => x.Type == request.Type) .WhereIf(!string.IsNullOrEmpty(request.Keywords), x => x.Name.Contains(request.Keywords)) .Count(out var count) .ToList(); return new ListResponse { Items = list, TotalCount = count }; } public void EditPurchaserExtendedInfo(EditPurchaserExtendedInfoRequest request) { var insertRelationList = new List(); insertRelationList.AddRange(request.CategoryIdList.Select(x => new Purchaser_ExtendedInfo_Relation() { Id = idGenerator.NewLong(), PurchaserId = request.PurchaserId, ExtendedType = Enums.PurchaserBasicInfoType.主营类目, ExtendedInfoId = x })); insertRelationList.AddRange(request.TagIdList.Select(x => new Purchaser_ExtendedInfo_Relation() { Id = idGenerator.NewLong(), PurchaserId = request.PurchaserId, ExtendedType = Enums.PurchaserBasicInfoType.标签, ExtendedInfoId = x })); fsql.Transaction(() => { fsql.Delete().Where(r => r.PurchaserId == request.PurchaserId).ExecuteAffrows(); fsql.Update(request.PurchaserId).Set(p => p.ManagmentMode, request.ManagmentMode).ExecuteAffrows(); if (insertRelationList.Count() > 0) fsql.Insert(insertRelationList).ExecuteAffrows(); }); } } }