username@email.com
4 天以前 4008c7e22c9c01eb653b04f934990486df622654
Admin.NET/FZCZTB.NET.SYSService/CustomerSYS/CustomerManagerS.cs
New file
@@ -0,0 +1,229 @@
using Admin.NET.Core;
using Admin.NET.Core.Service;
using Furion.DependencyInjection;
using Furion.FriendlyException;
using FZCZTB.NET.MD.CutomerMd;
using Mapster;
using SqlSugar;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace FZCZTB.NET.SYSService.CustomerSYS
{
    /// <summary>
    /// customermanger 服务
    /// </summary>
    public class CustomerManagerS: IScoped
    {
        private readonly SqlSugarRepository<FBS_ExRole> _fBS_ExRoleRep;
        private readonly SqlSugarRepository<FBS_Customer> _fBS_CustomerRep;
        private readonly SysCacheService _sysCacheService;
        public CustomerManagerS(SysCacheService sysCacheService,
            SqlSugarRepository<FBS_ExRole> fBS_ExRoleRep,
            SqlSugarRepository<FBS_Customer> fBS_CustomerRep)
        {
            _sysCacheService = sysCacheService;
            _fBS_ExRoleRep = fBS_ExRoleRep;
            _fBS_CustomerRep = fBS_CustomerRep;
        }
        /// <summary>
        /// 返回当前可用的用户角色 再注册和登录时需要返回编码
        /// </summary>
        /// <returns></returns>
        public async Task< List<ExRoleVM>> GetExRole()
        {
           return await _fBS_ExRoleRep.AsQueryable().Where(x=>x.Status== StatusEnum.Enable)
            .Select<ExRoleVM>().WithCache(20).ToListAsync();
        }
        /// <summary>
        /// 返回当前可用的用户角色 再注册和登录时需要返回编码
        /// </summary>
        /// <returns></returns>
        public async Task<CustomerRDto> GetCustomer(long  id)
        {
            return await _fBS_CustomerRep.AsQueryable().Where(x=>x.Id==id&&x.Status== StatusEnum.Enable).Includes(x=>x.CoutomerExRols,y=>y.ExRole)
           .Select<CustomerRDto>().WithCache(20).FirstAsync();
            //return (await _fBS_CustomerRep.GetFirstAsync(x => x.Id == id && x.Status == StatusEnum.Enable)).Adapt<CustomerRDto>();
        }
        /// <summary>
        /// 返回当前可用的用户角色 再注册和登录时需要返回编码
        /// </summary>
        /// <returns></returns>
        public async Task<CustomerRDto> UpDataCustomer(int id)
        {
            return (await _fBS_CustomerRep.GetFirstAsync(x => x.Id == id && x.Status == StatusEnum.Enable)).Adapt<CustomerRDto>();
        }
    }
    /// <summary>
    /// 客户主分类角色基础输入参数
    /// </summary>
    public class ExRoleVM
    {
        /// <summary>
        /// 主键Id
        /// </summary>
        public virtual long? Id { get; set; }
        /// <summary>
        /// 名称
        /// </summary>
        [Required(ErrorMessage = "名称不能为空")]
        public virtual string Name { get; set; }
        /// <summary>
        /// 编码
        /// </summary>
        public virtual string? Code { get; set; }
        /// <summary>
        /// 排序
        /// </summary>
        [Required(ErrorMessage = "排序不能为空")]
        public virtual int? OrderNo { get; set; }
        /// <summary>
        /// 数据范围
        /// </summary>
        [Dict(nameof(DataScopeEnum), AllowNullValue = true)]
        [Required(ErrorMessage = "数据范围不能为空")]
        public virtual DataScopeEnum? DataScope { get; set; }
        /// <summary>
        /// 备注
        /// </summary>
        public virtual string? Remark { get; set; }
        /// <summary>
        /// 状态
        /// </summary>
        [Dict(nameof(StatusEnum), AllowNullValue = true)]
        [Required(ErrorMessage = "状态不能为空")]
        public virtual StatusEnum? Status { get; set; }
    }
    /// <summary>
    /// 客户表输出参数
    /// </summary>
    public class CustomerRDto
    {
        /// <summary>
        /// 账号
        /// </summary>
        public virtual string Account { get; set; }
        /// <summary>
        /// 密码
        /// </summary>
        [MaxLength(512)]
        public virtual string Password { get; set; }
        /// <summary>
        /// 真实姓名
        /// </summary>
        [MaxLength(32)]
        public virtual string RealName { get; set; }
        /// <summary>
        /// 昵称
        /// </summary>
        [MaxLength(32)]
        public string? NickName { get; set; }
        /// <summary>
        /// 头像
        /// </summary>
        [MaxLength(512)]
        public string? Avatar { get; set; }
        /// <summary>
        /// 手机号码
        /// </summary>
        [MaxLength(16)]
        public string? Phone { get; set; }
        /// <summary>
        /// 邮箱
        /// </summary>
        [MaxLength(64)]
        public string? Email { get; set; }
        /// <summary>
        /// 备注
        /// </summary>
        [MaxLength(256)]
        public string? Remark { get; set; }
        /// <summary>
        /// 电子签名
        /// </summary>
        public string? Signature { get; set; }
        /// <summary>
        /// 登录角色
        /// </summary>
        [Navigate(NavigateType.OneToMany, nameof(FBS_CoutomerExRole.CustomerId))]
        public List<FBS_CoutomerExRole> CoutomerExRols { set; get; }
        /// <summary>
        /// 注册用户角色
        /// </summary>
        public  string? ExRoleCode {  get; set; }
        /// <summary>
        /// 用户注册手机验证码
        /// </summary>
        public string? PhoneVCode {  get; set; }
    }
}