Browse Source

Merge branch 'develop' of http://132.232.92.186:3000/XinXiBu/OA2023 into develop

jiangjc 2 years ago
parent
commit
d8ac0fd272
31 changed files with 1443 additions and 182 deletions
  1. 1 0
      OASystem/EntitySync/Program.cs
  2. 25 18
      OASystem/OASystem.Api/Controllers/AuthController.cs
  3. 71 14
      OASystem/OASystem.Api/Controllers/GroupsController.cs
  4. 192 0
      OASystem/OASystem.Api/Controllers/ResourceController.cs
  5. 139 13
      OASystem/OASystem.Api/Controllers/SystemController.cs
  6. 4 0
      OASystem/OASystem.Api/GlobalUsings.cs
  7. 24 0
      OASystem/OASystem.Api/OAMethodLib/JsonConvertOverride.cs
  8. 11 0
      OASystem/OASystem.Domain/AutoMappers/_baseMappingProfile.cs
  9. 1 1
      OASystem/OASystem.Domain/Dtos/DtoBase.cs
  10. 24 6
      OASystem/OASystem.Domain/Dtos/Groups/GroupListDto.cs
  11. 311 0
      OASystem/OASystem.Domain/Dtos/Resource/CarDataDto.cs
  12. 61 0
      OASystem/OASystem.Domain/Dtos/System/MsgDto.cs
  13. 19 0
      OASystem/OASystem.Domain/Dtos/System/SetDataDto.cs
  14. 1 1
      OASystem/OASystem.Domain/Dtos/UserDto/LoginDto.cs
  15. 48 37
      OASystem/OASystem.Domain/Entities/Customer/Crm_DeleClient.cs
  16. 2 2
      OASystem/OASystem.Domain/Entities/Groups/Grp_DelegationInfo.cs
  17. 9 0
      OASystem/OASystem.Domain/Entities/System/Sys_JobPost.cs
  18. 1 1
      OASystem/OASystem.Domain/Result.cs
  19. 22 10
      OASystem/OASystem.Domain/ViewModels/Group/DelegationInfoView.cs
  20. 5 0
      OASystem/OASystem.Domain/ViewModels/LoginView.cs
  21. 13 0
      OASystem/OASystem.Domain/ViewModels/Resource/CarDataView.cs
  22. 15 0
      OASystem/OASystem.Domain/ViewModels/System/JobPostView.cs
  23. 54 0
      OASystem/OASystem.Domain/ViewModels/System/MessageView.cs
  24. 5 5
      OASystem/OASystem.Domain/ViewModels/System/UserInfoView.cs
  25. 11 0
      OASystem/OASystem.Infrastructure/Repositories/BaseRepository.cs
  26. 194 50
      OASystem/OASystem.Infrastructure/Repositories/Groups/DelegationInfoRepository.cs
  27. 17 2
      OASystem/OASystem.Infrastructure/Repositories/Login/LoginRepository.cs
  28. 12 0
      OASystem/OASystem.Infrastructure/Repositories/Resource/CarDataRepository.cs
  29. 10 1
      OASystem/OASystem.Infrastructure/Repositories/System/JobPostRepository.cs
  30. 130 20
      OASystem/OASystem.Infrastructure/Repositories/System/MessageRepository.cs
  31. 11 1
      OASystem/OASystem.Infrastructure/Repositories/System/UsersRepository.cs

+ 1 - 0
OASystem/EntitySync/Program.cs

@@ -80,5 +80,6 @@ db.CodeFirst.SetStringDefaultLength(50).BackupTable().InitTables(new Type[]
 
 
     //typeof(Sys_Message),
     //typeof(Sys_Message),
     //typeof(Sys_MessageReadAuth)
     //typeof(Sys_MessageReadAuth)
+    typeof(Crm_DeleClient)
 });
 });
 Console.WriteLine("数据库结构同步完成!");
 Console.WriteLine("数据库结构同步完成!");

+ 25 - 18
OASystem/OASystem.Api/Controllers/AuthController.cs

@@ -6,6 +6,7 @@ using OASystem.Domain.Dtos.UserDto;
 using OASystem.API.OAMethodLib;
 using OASystem.API.OAMethodLib;
 using Serilog.Parsing;
 using Serilog.Parsing;
 using OASystem.Domain.Dtos.System;
 using OASystem.Domain.Dtos.System;
+using System.Drawing.Drawing2D;
 
 
 namespace OASystem.API.Controllers
 namespace OASystem.API.Controllers
 {
 {
@@ -19,6 +20,7 @@ namespace OASystem.API.Controllers
         private readonly IConfiguration _config;
         private readonly IConfiguration _config;
         private readonly LoginRepository _loginRep;
         private readonly LoginRepository _loginRep;
         private readonly MessageRepository _message; 
         private readonly MessageRepository _message; 
+
         public AuthController(IConfiguration config, LoginRepository loginRep, IMapper mapper,MessageRepository message)
         public AuthController(IConfiguration config, LoginRepository loginRep, IMapper mapper,MessageRepository message)
         {
         {
             _config = config;
             _config = config;
@@ -38,22 +40,27 @@ namespace OASystem.API.Controllers
         public async Task<IActionResult> LoginAsync(LoginDto dto)
         public async Task<IActionResult> LoginAsync(LoginDto dto)
         {
         {
             #region 校验用户信息 
             #region 校验用户信息 
-            var userData = _loginRep.Login(dto);
-            if (userData.Result.Code != 0)
+            var userData = _loginRep.Login(dto).Result;
+            if (userData.Code != 0)
             {
             {
-                if (userData.Result.Code != 0) { return Ok(JsonView(false, userData.Result.Msg)); }
+                if (userData.Code != 0) { return Ok(JsonView(false, userData.Msg)); }
 
 
                 return Ok(JsonView(false, "暂无该员工信息!"));
                 return Ok(JsonView(false, "暂无该员工信息!"));
             }
             }
 
 
             #endregion
             #endregion
+
+
+            dynamic authData = null;
+
             var view = new LoginView
             var view = new LoginView
             {
             {
-                UserInfo = userData.Result.Data
+                UserInfo = userData.Data,
+                AuthData = authData,
             };
             };
 
 
 
 
-            DateTime createZebraTime = DateTime.UtcNow;
+            DateTime createZebraTime = DateTime.Now;
             string authorId = dto.Number + "Token";
             string authorId = dto.Number + "Token";
             string authorToken = await RedisRepository.RedisFactory.CreateRedisRepository().StringGetAsync<string>(authorId);//string 取
             string authorToken = await RedisRepository.RedisFactory.CreateRedisRepository().StringGetAsync<string>(authorId);//string 取
             if (authorToken !=  null)
             if (authorToken !=  null)
@@ -84,19 +91,19 @@ namespace OASystem.API.Controllers
 
 
             #region 测试添加系统消息
             #region 测试添加系统消息
 
 
-            await _message.AddMsg(new MessageDto()
-            {
-                Type = 1,
-                IssuerId = 208,
-                Title = "测试添加消息标题",
-                Content = "消息体测试",
-                ReleaseTime = DateTime.Now,
-                UIdList = new List<int> {
-                    5,
-                    208,
-                    219
-                }
-            });
+            //await _message.AddMsg(new MessageDto()
+            //{
+            //    Type = 1,
+            //    IssuerId = 208,
+            //    Title = "测试添加消息标题",
+            //    Content = "消息体测试",
+            //    ReleaseTime = DateTime.Now,
+            //    UIdList = new List<int> {
+            //        5,
+            //        208,
+            //        219
+            //    }
+            //});
             #endregion
             #endregion
 
 
             return Ok(JsonView(view));
             return Ok(JsonView(view));

+ 71 - 14
OASystem/OASystem.Api/Controllers/GroupsController.cs

@@ -8,7 +8,7 @@ using OASystem.Infrastructure.Repositories.Groups;
 namespace OASystem.API.Controllers
 namespace OASystem.API.Controllers
 {
 {
     /// <summary>
     /// <summary>
-    /// 团组
+    /// 团组相关
     /// </summary>
     /// </summary>
     //[Authorize]
     //[Authorize]
     [Route("api/[controller]/[action]")]
     [Route("api/[controller]/[action]")]
@@ -17,6 +17,7 @@ namespace OASystem.API.Controllers
         private readonly GrpScheduleRepository _grpScheduleRep;
         private readonly GrpScheduleRepository _grpScheduleRep;
         private readonly IMapper _mapper;
         private readonly IMapper _mapper;
         private readonly DelegationInfoRepository _groupRepository;
         private readonly DelegationInfoRepository _groupRepository;
+
         public GroupsController(IMapper mapper, GrpScheduleRepository grpScheduleRep, DelegationInfoRepository groupRepository)
         public GroupsController(IMapper mapper, GrpScheduleRepository grpScheduleRep, DelegationInfoRepository groupRepository)
         {
         {
             _mapper = mapper;
             _mapper = mapper;
@@ -74,11 +75,10 @@ namespace OASystem.API.Controllers
 
 
         #endregion
         #endregion
 
 
-
         #region 团组基本信息
         #region 团组基本信息
 
 
         /// <summary>
         /// <summary>
-        ///  接团信息 List
+        ///  接团信息列表
         /// </summary>
         /// </summary>
         /// <param name="dto">团组列表请求dto</param>
         /// <param name="dto">团组列表请求dto</param>
         /// <returns></returns>
         /// <returns></returns>
@@ -91,11 +91,11 @@ namespace OASystem.API.Controllers
                 return Ok(JsonView(false, groupData.Msg));
                 return Ok(JsonView(false, groupData.Msg));
             }
             }
 
 
-            return Ok(JsonView(groupData.Data, groupData.Data.Count));
+            return Ok(JsonView(groupData.Data));
         }
         }
 
 
         /// <summary>
         /// <summary>
-        ///  接团信息 Singe
+        ///  接团信息详情
         /// </summary>
         /// </summary>
         /// <param name="dto">团组info请求dto</param>
         /// <param name="dto">团组info请求dto</param>
         /// <returns></returns>
         /// <returns></returns>
@@ -108,7 +108,7 @@ namespace OASystem.API.Controllers
                 return Ok(JsonView(false, groupData.Msg));
                 return Ok(JsonView(false, groupData.Msg));
             }
             }
 
 
-            return Ok(JsonView(groupData.Data, groupData.Data.Count));
+            return Ok(JsonView(groupData.Data));
         }
         }
 
 
         /// <summary>
         /// <summary>
@@ -118,35 +118,92 @@ namespace OASystem.API.Controllers
         /// <param name="dto"></param>
         /// <param name="dto"></param>
         /// <returns></returns>
         /// <returns></returns>
         [HttpPost]
         [HttpPost]
-        public async Task<IActionResult> GetGroupEditBasicSource(GroupListDto dto)
+        public async Task<IActionResult> GroupEditBasicSource(GroupListDto dto)
         {
         {
-            var groupData = await _groupRepository.GetGroupEditBasicSource(dto);
+
+            var groupData = await _groupRepository.GroupEditBasicSource(dto);
             if (groupData.Code != 0)
             if (groupData.Code != 0)
             {
             {
                 return Ok(JsonView(false, groupData.Msg));
                 return Ok(JsonView(false, groupData.Msg));
             }
             }
-
             return Ok(JsonView(groupData.Data));
             return Ok(JsonView(groupData.Data));
+
         }
         }
 
 
         /// <summary>
         /// <summary>
-        /// 接团信息 操作
-        /// 基础信息数据源
+        /// 接团信息 操作(增改)
         /// </summary>
         /// </summary>
         /// <param name="dto"></param>
         /// <param name="dto"></param>
         /// <returns></returns>
         /// <returns></returns>
         [HttpPost]
         [HttpPost]
         public async Task<IActionResult> GroupOperation(GroupOperationDto dto)
         public async Task<IActionResult> GroupOperation(GroupOperationDto dto)
         {
         {
-            var groupData = await _groupRepository.GroupOperation(dto);
+            try
+            {
+                var groupData = await _groupRepository.GroupOperation(dto);
+                if (groupData.Code != 0)
+                {
+                    return Ok(JsonView(false, groupData.Msg));
+                }
+
+                return Ok(JsonView(true));
+            }
+            catch (Exception ex)
+            {
+
+                Logs("[response]" +  JsonConvert.SerializeObject( dto));
+                Logs(ex.Message);
+                return Ok(JsonView(false, ex.Message));
+            }
+        }
+
+        /// <summary>
+        /// 接团信息 操作(删除)
+        /// </summary>
+        /// <param name="dto"></param>
+        /// <returns></returns>
+        [HttpPost]
+        public async Task<IActionResult> GroupDel(GroupDelDto dto)
+        {
+            try
+            {
+                var groupData = await _groupRepository.GroupDel(dto);
+                if (groupData.Code != 0)
+                {
+                    return Ok(JsonView(false, groupData.Msg));
+                }
+
+                return Ok(JsonView(true));
+            }
+            catch (Exception ex)
+            {
+
+                Logs("[response]" + JsonConvert.SerializeObject(dto));
+                Logs(ex.Message);
+                return Ok(JsonView(false, ex.Message));
+            }
+        }
+
+        /// <summary>
+        /// 获取团组销售报价号
+        /// 团组添加时 使用
+        /// </summary>
+        /// <returns></returns>
+        [HttpPost]
+        public async Task<IActionResult> GetGroupSalesQuoteNo()
+        {
+            var groupData = await _groupRepository.GetGroupSalesQuoteNo();
             if (groupData.Code != 0)
             if (groupData.Code != 0)
             {
             {
                 return Ok(JsonView(false, groupData.Msg));
                 return Ok(JsonView(false, groupData.Msg));
             }
             }
+            object salesQuoteNo = new
+            {
+                SalesQuoteNo = groupData.Data
+            };
 
 
-            return Ok(JsonView(true));
+            return Ok(JsonView(salesQuoteNo));
         }
         }
-
         #endregion
         #endregion
     }
     }
 }
 }

+ 192 - 0
OASystem/OASystem.Api/Controllers/ResourceController.cs

@@ -0,0 +1,192 @@
+
+
+namespace OASystem.API.Controllers
+{
+    /// <summary>
+    /// 资料相关
+    /// </summary>
+    //[Authorize]
+    [Route("api/[controller]/[action]")]
+    public class ResourceController : ControllerBase
+    {
+        private readonly IMapper _mapper;
+        private readonly IConfiguration _config;
+        private readonly CarDataRepository _carDataRep;
+       
+        public ResourceController(IMapper mapper, IConfiguration config,CarDataRepository carDataRep)
+        {
+            _mapper = mapper;
+            _config = config;
+            _carDataRep = carDataRep;
+        }
+        #region 车公司资料板块
+
+        /// <summary>
+        /// 车公司信息查询
+        /// </summary>
+        /// <returns></returns>
+        [HttpPost]
+        [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)]
+        public async Task<IActionResult> QuerCarData(DtoBase dto)
+        {
+            try
+            {
+                if (dto.PortType==1)
+                {
+                    var carDada = _carDataRep.QueryDto<Res_CarData, CarDataView>().ToList();
+                    if (carDada.Count == 0)
+                    {
+                        return Ok(JsonView(false, "暂无数据!"));
+                    }
+                    carDada = carDada.OrderByDescending(s => s.CreateTime).ToList();
+                    return Ok(JsonView(true, "查询成功", carDada));
+                }
+                else if(dto.PortType==2)
+                {
+                    var carDada = _carDataRep.QueryDto<Res_CarData, CarDataView>().ToList();
+                    if (carDada.Count == 0)
+                    {
+                        return Ok(JsonView(false, "暂无数据!"));
+                    }
+                    carDada=carDada.OrderByDescending(s=>s.CreateTime).ToList();
+                    return Ok(JsonView(true, "查询成功", carDada));
+                }
+                else
+                {
+                    return Ok(JsonView(false, "请传入PortType参数!1:Web,2:Android,3:IOS"));
+                }
+               
+            }
+            catch (Exception ex)
+            {
+                return Ok(JsonView(false, "程序错误!"));
+                throw;
+            }
+           
+            
+        }
+
+        /// <summary>
+        /// 车公司信息添加
+        /// </summary>
+        /// <returns></returns>
+        [HttpPost]
+        [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)]
+        public async Task<IActionResult> AddCarData(AddCarDataDto dto)
+        {
+            try
+            {
+                if (dto.UnitArea == "")
+                {
+                    return Ok(JsonView(false, "请检查单位区域是否填写!"));
+                }
+                if (dto.UnitName == "")
+                {
+                    return Ok(JsonView(false, "请检查单位名称是否填写!"));
+                }
+                if (dto.Contact == "")
+                {
+                    return Ok(JsonView(false, "请检查单位联系人是否填写!"));
+                }
+                if (dto.ContactTel == "")
+                {
+                    return Ok(JsonView(false, "请检查联系方式是否填写正确!"));
+                }
+                Res_CarData _CarData = _mapper.Map<Res_CarData>(dto);
+                int id = await _carDataRep.AddAsyncReturnId(_CarData);
+                if (id == 0) 
+                {
+                    return Ok(JsonView(false, "添加失败!"));
+                }
+                return Ok(JsonView(true, "添加成功", new { Id = id }));
+            }
+            catch (Exception ex)
+            {
+                return Ok(JsonView(false, "程序错误!"));
+                throw;
+            }
+        }
+
+        /// <summary>
+        /// 车公司信息修改
+        /// </summary>
+        /// <returns></returns>
+        [HttpPost]
+        [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)]
+        public async Task<IActionResult> UpCarData(UpCarDataDto dto)
+        {
+            try
+            {
+                if (dto.UnitArea == "")
+                {
+                    return Ok(JsonView(false, "请检查单位区域是否填写!"));
+                }
+                if (dto.UnitName == "")
+                {
+                    return Ok(JsonView(false, "请检查单位名称是否填写!"));
+                }
+                if (dto.Contact == "")
+                {
+                    return Ok(JsonView(false, "请检查单位联系人是否填写!"));
+                }
+                if (dto.ContactTel == "")
+                {
+                    return Ok(JsonView(false, "请检查联系方式是否填写正确!"));
+                }
+                bool res = await _carDataRep.UpdateAsync(a => a.Id == dto.Id, a => new Res_CarData
+                {
+                    UnitArea = dto.UnitArea,
+                    UnitName = dto.UnitName,
+                    Address = dto.Address,
+                    Contact = dto.Contact,
+                    ContactTel = dto.ContactTel,
+                    ContactEmail = dto.ContactEmail,
+                    ContactFax = dto.ContactFax,
+                    CarDes = dto.CarDes,
+                    CarPicPaths = dto.CarPicPaths,
+                    OtherInfo = dto.OtherInfo,
+                    Score = dto.Score,
+                    QualificationScore = dto.QualificationScore,
+                    CarAgeScore = dto.CarAgeScore,
+                    CleanImgScore = dto.CleanImgScore,
+                    SmellScore = dto.SmellScore,
+                    WaterPaperScore = dto.WaterPaperScore,
+                    HardwareScore = dto.HardwareScore,
+                    TimeScore = dto.TimeScore,
+                    SafetyScore = dto.SafetyScore,
+                    DrivingAgeScore = dto.DrivingAgeScore,
+                    Remark = dto.Remark,
+                });
+                if (!res) { return Ok(JsonView(false, "修改失败!")); }
+                return Ok(JsonView(true, "修改成功"));
+            }
+            catch (Exception ex)
+            {
+                return Ok(JsonView(false, "程序错误!"));
+                throw;
+            }
+        }
+        /// <summary>
+        /// 车公司信息修改
+        /// </summary>
+        /// <returns></returns>
+        [HttpPost]
+        [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)]
+        public async Task<IActionResult> DelCarData(DelCarDataDto dto)
+        {
+            try
+            {
+                bool res = await _carDataRep.SoftDeleteByIdAsync<Res_CarData>(dto.Id.ToString(), dto.DeleteUserId);
+                if (!res) { return Ok(JsonView(false, "删除失败!")); }
+                return Ok(JsonView(true, "删除成功"));
+            }
+            catch (Exception ex)
+            {
+                return Ok(JsonView(false, "程序错误!"));
+                throw;
+            }
+        }
+        #endregion
+
+    }
+}

+ 139 - 13
OASystem/OASystem.Api/Controllers/SystemController.cs

@@ -1,4 +1,7 @@
-using System.Collections;
+
+using OASystem.Domain.Dtos.System;
+using Org.BouncyCastle.Asn1.Cms;
+using System.Collections;
 using static OpenAI.GPT3.ObjectModels.SharedModels.IOpenAiModels;
 using static OpenAI.GPT3.ObjectModels.SharedModels.IOpenAiModels;
 
 
 namespace OASystem.API.Controllers
 namespace OASystem.API.Controllers
@@ -15,7 +18,7 @@ namespace OASystem.API.Controllers
         private readonly DepartmentRepository _sysDepRep;
         private readonly DepartmentRepository _sysDepRep;
         private readonly UsersRepository _userRep;
         private readonly UsersRepository _userRep;
         private readonly IMapper _mapper;
         private readonly IMapper _mapper;
-
+        private readonly MessageRepository _messageRep;
         private readonly SetDataRepository _setDataRepository;
         private readonly SetDataRepository _setDataRepository;
         private readonly SystemMenuPermissionRepository _SystemMenuPermissionRepository;
         private readonly SystemMenuPermissionRepository _SystemMenuPermissionRepository;
         private readonly CompanyRepository _CompanyRepository;
         private readonly CompanyRepository _CompanyRepository;
@@ -23,17 +26,19 @@ namespace OASystem.API.Controllers
         private readonly SystemMenuAndFunctionRepository _SystemMenuAndFunctionRepository;
         private readonly SystemMenuAndFunctionRepository _SystemMenuAndFunctionRepository;
         private readonly JobPostAuthorityRepository _JobPostAuthorityRepository;
         private readonly JobPostAuthorityRepository _JobPostAuthorityRepository;
         private readonly JobPostRepository _jobRep;
         private readonly JobPostRepository _jobRep;
+
         private readonly UserAuthorityRepository _UserAuthorityRepository;
         private readonly UserAuthorityRepository _UserAuthorityRepository;
 
 
         public SystemController( CompanyRepository syscom, DepartmentRepository sysDepRep, UsersRepository userRep,
         public SystemController( CompanyRepository syscom, DepartmentRepository sysDepRep, UsersRepository userRep,
             IMapper mapper, SetDataRepository setDataRepository, CompanyRepository companyRepository,
             IMapper mapper, SetDataRepository setDataRepository, CompanyRepository companyRepository,
             SystemMenuPermissionRepository systemMenuPermissionRepository, PageFunctionPermissionRepository pageFunctionPermissionRepository,
             SystemMenuPermissionRepository systemMenuPermissionRepository, PageFunctionPermissionRepository pageFunctionPermissionRepository,
-            SystemMenuAndFunctionRepository systemMenuAndFunctionRepository, JobPostAuthorityRepository jobPostAuthorityRepository, JobPostRepository jobRep
-            , UserAuthorityRepository userAuthorityRepository)
+            SystemMenuAndFunctionRepository systemMenuAndFunctionRepository, JobPostAuthorityRepository jobPostAuthorityRepository, 
+            JobPostRepository jobRep,UserAuthorityRepository userAuthorityRepository, MessageRepository messageRep)
             
             
         {
         {
             _syscomRep = syscom;
             _syscomRep = syscom;
             _sysDepRep = sysDepRep;
             _sysDepRep = sysDepRep;
+            _messageRep = messageRep;
             _userRep = userRep;
             _userRep = userRep;
             _mapper = mapper;
             _mapper = mapper;
             _setDataRepository = setDataRepository;
             _setDataRepository = setDataRepository;
@@ -43,7 +48,117 @@ namespace OASystem.API.Controllers
             _SystemMenuAndFunctionRepository = systemMenuAndFunctionRepository;
             _SystemMenuAndFunctionRepository = systemMenuAndFunctionRepository;
             _JobPostAuthorityRepository = jobPostAuthorityRepository;
             _JobPostAuthorityRepository = jobPostAuthorityRepository;
             _UserAuthorityRepository = userAuthorityRepository;
             _UserAuthorityRepository = userAuthorityRepository;
+            _jobRep = jobRep;
         }
         }
+        #region 消息
+
+        /// <summary>
+        /// 获取消息列表
+        /// </summary>
+        /// <param name="dto"></param>
+        /// <returns></returns>
+        [HttpPost]
+        [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)]
+        public async Task<IActionResult> GetMsgList(MsgDto dto)
+        {
+            var msgData = await _messageRep.GetMsgList(dto);
+
+            if (msgData.Code != 0)
+            {
+                return Ok(JsonView(false, msgData.Msg));
+            }
+
+            return Ok(JsonView(true, msgData.Data));
+        }
+
+        /// <summary>
+        /// 获取消息详细信息
+        /// </summary>
+        /// <param name="dto"></param>
+        /// <returns></returns>
+        [HttpPost]
+        [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)]
+        public async Task<IActionResult> GetMsgInfo(MsgInfoDto dto)
+        {
+            var msgData = await _messageRep.GetMsgInfo(dto);
+
+            if (msgData.Code != 0)
+            {
+                return Ok(JsonView(false, msgData.Msg));
+            }
+
+            return Ok(JsonView(true, msgData.Data));
+        }
+
+        /// <summary>
+        /// 消息设置已读
+        /// </summary>
+        /// <param name="dto"></param>
+        /// <returns></returns>
+        [HttpPost]
+        [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)]
+        public async Task<IActionResult> SetMessageRead(MsgSetReadDto dto)
+        {
+            var msgData = await _messageRep.SetMsgRead(dto);
+
+            if (msgData.Code != 0)
+            {
+                return Ok(JsonView(false, msgData.Msg));
+            }
+
+            return Ok(JsonView(true, msgData.Data));
+        }
+
+        /// <summary>
+        /// 消息设置已读
+        /// </summary>
+        /// <param name="dto"></param>
+        /// <returns></returns>
+        [HttpPost]
+        [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)]
+        public async Task<IActionResult> DeleMsg(MsgDeleteDto dto)
+        {
+            var msgData = await _messageRep.DelMsg(dto);
+
+            if (msgData.Code != 0)
+            {
+                return Ok(JsonView(false, msgData.Msg));
+            }
+
+            return Ok(JsonView(true, msgData.Data));
+        }
+        #endregion
+
+        #region 类型表
+        /// <summary>
+        /// 查询类型数据
+        /// </summary>
+        /// <param name="dto"></param>
+        /// <returns></returns>
+        [HttpPost]
+        [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)]
+        public async Task<IActionResult> QuerSetData(SetDataDto dto)
+        {
+            try
+            {
+                if (dto.DataType==0)
+                {
+                    return Ok(JsonView(false, "请传类型Id!"));
+                }
+                var setData = _setDataRepository.QueryDto<Sys_SetData, SetDataView>(s=>s.STid==dto.DataType).ToList();
+                if (setData.Count == 0)
+                {
+                    return Ok(JsonView(false, "暂无数据!"));
+                }
+                return Ok(JsonView(true, "查询成功!",setData));
+            }
+            catch (Exception ex)
+            {
+                return Ok(JsonView(false, "程序错误!"));
+                throw;
+            }
+        }
+        #endregion
 
 
         #region 企业操作
         #region 企业操作
         /// <summary>
         /// <summary>
@@ -434,12 +549,28 @@ namespace OASystem.API.Controllers
             {
             {
                 if (dto.PortType == 1)
                 if (dto.PortType == 1)
                 {
                 {
-                    var result = _sysDepRep.QueryDto<Sys_JobPost, JobPostView>(s => s.CompanyId == dto.CompanyId && s.DepId == dto.DepId).ToList();
-                    if (result.Count == 0)
+                    string sqlWhere = string.Empty;
+                    if (dto.CompanyId != 0)
+                    {
+                        sqlWhere += string.Format(@" And jp.CompanyId={0}", dto.CompanyId);
+                    }
+                    if (dto.DepId != 0)
+                    {
+                        sqlWhere += string.Format(@" And jp.DepId={0}", dto.DepId);
+                    }
+                    if (!string.IsNullOrEmpty(sqlWhere.Trim()))
+                    {
+                        Regex r = new Regex("And");
+                        sqlWhere = r.Replace(sqlWhere, "Where", 1);
+                    }
+                    List<Sys_JobPostI> jobList = await _jobRep.QueryJobPost(sqlWhere);
+
+                    List<JobPostView> List = _mapper.Map<List<JobPostView>>(jobList);
+                    if (jobList.Count == 0)
                     {
                     {
                         return Ok(JsonView(false, "暂无数据!"));
                         return Ok(JsonView(false, "暂无数据!"));
                     }
                     }
-                    return Ok(JsonView(true, "查询成功!", result));
+                    return Ok(JsonView(true, "查询成功!", jobList));
                 }
                 }
                 else if (dto.PortType == 2)
                 else if (dto.PortType == 2)
                 {
                 {
@@ -603,14 +734,9 @@ namespace OASystem.API.Controllers
                     Regex r = new Regex("And");
                     Regex r = new Regex("And");
                     sqlWhere = r.Replace(sqlWhere, "Where", 1);
                     sqlWhere = r.Replace(sqlWhere, "Where", 1);
                 }
                 }
-                string userSqlWhere = string.Format(@"Select sc.CompanyName,sd.DepName,sjp.JobName,su.* From Sys_Users su 
-                                                        Inner Join Sys_Company sc On su.CompanyId = sc.Id
-                                                        Inner Join Sys_Department sd On su.DepId = sd.Id
-                                                        Inner Join Sys_JobPost sjp On su.JobPostId = sjp.Id {0}", sqlWhere);
-                var _userList =_userRep.GetListBySqlWithNolock(userSqlWhere);
+                List<UserInfo> _userList =await _userRep.QueryUser(sqlWhere);
                 if (_userList.Count == 0)
                 if (_userList.Count == 0)
                 {
                 {
-                    
                     return Ok(JsonView(false, "暂无数据!"));
                     return Ok(JsonView(false, "暂无数据!"));
                 }
                 }
                 List<UserInfoWebView> userList = _mapper.Map<List<UserInfoWebView>>(_userList);
                 List<UserInfoWebView> userList = _mapper.Map<List<UserInfoWebView>>(_userList);

+ 4 - 0
OASystem/OASystem.Api/GlobalUsings.cs

@@ -51,5 +51,9 @@ global using OASystem.Domain.Dtos.System;
 global using OASystem.Domain.Entities.System;
 global using OASystem.Domain.Entities.System;
 global using OASystem.Domain.ViewModels.System;
 global using OASystem.Domain.ViewModels.System;
 global using OASystem.Infrastructure.Repositories.System;
 global using OASystem.Infrastructure.Repositories.System;
+global using OASystem.Domain.Dtos.Resource;
+global using OASystem.Domain.Entities.Resource;
+global using OASystem.Domain.ViewModels.Resource;
+global using OASystem.Infrastructure.Repositories.Resource;
 
 
 
 

+ 24 - 0
OASystem/OASystem.Api/OAMethodLib/JsonConvertOverride.cs

@@ -48,4 +48,28 @@ namespace OASystem.API.OAMethodLib
 
 
     #endregion
     #endregion
 
 
+
+    #region String null值转换(读/写)
+
+
+    //public class Int32JsonConverter : System.Text.Json.Serialization.JsonConverter<int?>
+    //{
+    //    private readonly string Format;
+    //    public Int32JsonConverter(string format)
+    //    {
+    //        Format = format;
+    //    }
+    //    public override void Write(Utf8JsonWriter writer, int? value, JsonSerializerOptions options)
+    //    {
+    //        writer.WriteStringValue((value ?? 0).ToString());
+    //    }
+    //    public override int Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
+    //    {
+    //        return Convert.ToInt32(reader.GetString()) ?? 0; 
+    //    }
+
+    //}
+
+    #endregion
+
 }
 }

+ 11 - 0
OASystem/OASystem.Domain/AutoMappers/_baseMappingProfile.cs

@@ -1,10 +1,13 @@
 using OASystem.Domain.Dtos.Groups;
 using OASystem.Domain.Dtos.Groups;
+using OASystem.Domain.Dtos.Resource;
 using OASystem.Domain.Dtos.System;
 using OASystem.Domain.Dtos.System;
 using OASystem.Domain.Dtos.UserDto;
 using OASystem.Domain.Dtos.UserDto;
 using OASystem.Domain.Entities;
 using OASystem.Domain.Entities;
 using OASystem.Domain.Entities.Groups;
 using OASystem.Domain.Entities.Groups;
+using OASystem.Domain.Entities.Resource;
 using OASystem.Domain.Entities.System;
 using OASystem.Domain.Entities.System;
 using OASystem.Domain.ViewModels;
 using OASystem.Domain.ViewModels;
+using OASystem.Domain.ViewModels.Resource;
 using OASystem.Domain.ViewModels.System;
 using OASystem.Domain.ViewModels.System;
 
 
 namespace OASystem.Domain.AutoMappers
 namespace OASystem.Domain.AutoMappers
@@ -40,6 +43,7 @@ namespace OASystem.Domain.AutoMappers
             #region 岗位板块
             #region 岗位板块
             CreateMap<Sys_JobPost, JobPostView>();
             CreateMap<Sys_JobPost, JobPostView>();
             CreateMap<AddJobPostDto,Sys_JobPost>();
             CreateMap<AddJobPostDto,Sys_JobPost>();
+            CreateMap<Sys_JobPostI, JobPostView>();
             #endregion
             #endregion
 
 
             #region 用户板块
             #region 用户板块
@@ -55,6 +59,13 @@ namespace OASystem.Domain.AutoMappers
 
 
             CreateMap<GroupListDto, Grp_DelegationInfo>();
             CreateMap<GroupListDto, Grp_DelegationInfo>();
             #endregion
             #endregion
+
+            #region Resource
+            #region 车公司资料
+            CreateMap<Res_CarData, CarDataView>();
+            CreateMap<AddCarDataDto, Res_CarData>();
+            #endregion
+            #endregion
         }
         }
     }
     }
 }
 }

+ 1 - 1
OASystem/OASystem.Domain/Dtos/DtoBase.cs

@@ -15,7 +15,7 @@ namespace OASystem.Domain.Dtos
         /// 请求端口分类
         /// 请求端口分类
         /// 1 Web 2 Android 3 IOS
         /// 1 Web 2 Android 3 IOS
         /// </summary>
         /// </summary>
-        public int PortType { get; set; }
+        public int PortType { get; set; } = 1;
 
 
         public int PageIndex { get; set; }
         public int PageIndex { get; set; }
         public int PageSize { get; set; }
         public int PageSize { get; set; }

+ 24 - 6
OASystem/OASystem.Domain/Dtos/Groups/GroupListDto.cs

@@ -1,5 +1,7 @@
-using System;
+using Newtonsoft.Json;
+using System;
 using System.Collections.Generic;
 using System.Collections.Generic;
+using System.ComponentModel;
 using System.Linq;
 using System.Linq;
 using System.Text;
 using System.Text;
 using System.Threading.Tasks;
 using System.Threading.Tasks;
@@ -32,7 +34,9 @@ namespace OASystem.Domain.Dtos.Groups
     {
     {
         /// <summary>
         /// <summary>
         /// 操作状态
         /// 操作状态
-        /// 1 添加 2 修改
+        /// 1 添加 
+        /// 2 修改 
+        /// 3 删除
         /// </summary>
         /// </summary>
         public int Status { get; set; }
         public int Status { get; set; }
 
 
@@ -92,7 +96,7 @@ namespace OASystem.Domain.Dtos.Groups
         /// <summary>
         /// <summary>
         /// 出访时间
         /// 出访时间
         /// </summary>
         /// </summary>
-        public DateTime VisitDate { get; set; }
+        public string VisitDate { get; set; }
 
 
         /// <summary>
         /// <summary>
         /// 出访天数
         /// 出访天数
@@ -107,12 +111,12 @@ namespace OASystem.Domain.Dtos.Groups
         /// <summary>
         /// <summary>
         /// 合同时间
         /// 合同时间
         /// </summary>
         /// </summary>
-        public DateTime TontractTime { get; set; }
+        public string TontractTime { get; set; }
 
 
         /// <summary>
         /// <summary>
         /// 预付期限
         /// 预付期限
         /// </summary>
         /// </summary>
-        public DateTime PayDay { get; set; }
+        public int PayDay { get; set; }
 
 
         /// <summary>
         /// <summary>
         /// 支付款项(预付)
         /// 支付款项(预付)
@@ -165,5 +169,19 @@ namespace OASystem.Domain.Dtos.Groups
         public string Remark { get; set; }
         public string Remark { get; set; }
     }
     }
 
 
-    
+    /// <summary>
+    /// 团组信息删除
+    /// </summary>
+    public class GroupDelDto:DtoBase
+    {
+        /// <summary>
+        /// 团组Id
+        /// </summary>
+        public int Id { get; set; }
+
+        /// <summary>
+        /// 用户Id
+        /// </summary>
+        public int UserId { get; set; }
+    }
 }
 }

+ 311 - 0
OASystem/OASystem.Domain/Dtos/Resource/CarDataDto.cs

@@ -0,0 +1,311 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Text.RegularExpressions;
+using System.Threading.Tasks;
+
+namespace OASystem.Domain.Dtos.Resource
+{
+    /// <summary>
+    /// 添加车公司数据参数
+    /// </summary>
+    public class AddCarDataDto
+    {
+        /// <summary>
+        /// 区域
+        /// </summary>
+        public string UnitArea { get; set; }
+
+        /// <summary>
+        /// 公司名称
+        /// </summary>
+        public string UnitName { get; set; }
+
+        /// <summary>
+        /// 地址
+        /// </summary>
+        public string Address { get; set; }
+
+        /// <summary>
+        /// 联系人
+        /// </summary>
+        public string Contact { get; set; }
+
+        /// <summary>
+        /// 联系人手机号
+        /// </summary>
+        private string contactTel;
+        public string ContactTel
+        {
+            get
+            {
+                return contactTel;
+            }
+            set
+            {
+                if (Regex.IsMatch(value, @"^[1]+[2,3,4,5,6,7,8,9]+\d{9}"))
+                {
+                    contactTel = value;
+                }
+                else
+                {
+                    contactTel = "";
+                }
+
+            }
+        }
+
+        /// <summary>
+        /// 联系人邮箱
+        /// </summary>
+        public string ContactEmail { get; set; }
+
+        /// <summary>
+        /// 联系人传真
+        /// </summary>
+        public string ContactFax { get; set; }
+
+        /// <summary>
+        /// 车描述
+        /// </summary>
+        public string CarDes { get; set; }
+
+        /// <summary>
+        /// 车图片路径
+        /// 存储多个 使用/r/n
+        /// </summary>
+        public string CarPicPaths { get; set; }
+
+
+        /// <summary>
+        /// 其他信息
+        /// </summary>
+        public string OtherInfo { get; set; }
+
+        /// <summary>
+        /// 服务评分
+        /// </summary>
+        public int Score { get; set; }
+
+        /// <summary>
+        /// 相关的车辆资质
+        /// A B C  选择
+        /// </summary>
+        public string QualificationScore { get; set; }
+
+        /// <summary>
+        /// 车辆2-4年新,VIP及以上需要2年新
+        /// A B C  选择
+        /// </summary>
+        public string CarAgeScore { get; set; }
+
+        /// <summary>
+        /// 车身干净,无文字图片等
+        /// A B C  选择
+        /// </summary>
+        public string CleanImgScore { get; set; }
+
+        /// <summary>
+        /// 车内整洁、无异味
+        /// A B C  选择
+        /// </summary>
+        public string SmellScore { get; set; }
+
+        /// <summary>
+        /// 提前备水,纸巾等
+        /// A B C  选择
+        /// </summary>
+        public string WaterPaperScore { get; set; }
+
+        /// <summary>
+        /// 车辆配置高(皮座椅等)
+        /// A B C  选择
+        /// </summary>
+        public string HardwareScore { get; set; }
+
+        /// <summary>
+        /// 时间概念强
+        /// A B C  选择
+        /// </summary>
+        public string TimeScore { get; set; }
+
+        /// <summary>
+        /// 安全意识高
+        /// A B C  选择
+        /// </summary>
+        public string SafetyScore { get; set; }
+
+        /// <summary>
+        /// 司机驾龄时间长,提前熟悉路线
+        /// A B C  选择
+        /// </summary>
+        public string DrivingAgeScore { get; set; }
+        /// <summary>
+        /// 创建者Id
+        /// </summary>
+        public int CreateUserId { get; set; }
+        /// <summary>
+        /// 备注
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(500)")]
+        public string Remark { get; set; }
+    }
+    /// <summary>
+    /// 修改车公司数据参数
+    /// </summary>
+    public class UpCarDataDto
+    {
+        /// <summary>
+        /// Id
+        /// </summary>
+        public int Id { get; set; }
+        /// <summary>
+        /// 区域
+        /// </summary>
+        public string UnitArea { get; set; }
+
+        /// <summary>
+        /// 公司名称
+        /// </summary>
+        public string UnitName { get; set; }
+
+        /// <summary>
+        /// 地址
+        /// </summary>
+        public string Address { get; set; }
+
+        /// <summary>
+        /// 联系人
+        /// </summary>
+        public string Contact { get; set; }
+
+        /// <summary>
+        /// 联系人手机号
+        /// </summary>
+        private string contactTel;
+        public string ContactTel
+        {
+            get
+            {
+                return contactTel;
+            }
+            set
+            {
+                if (Regex.IsMatch(value, @"^[1]+[2,3,4,5,6,7,8,9]+\d{9}"))
+                {
+                    contactTel = value;
+                }
+                else
+                {
+                    contactTel = "";
+                }
+
+            }
+        }
+
+        /// <summary>
+        /// 联系人邮箱
+        /// </summary>
+        public string ContactEmail { get; set; }
+
+        /// <summary>
+        /// 联系人传真
+        /// </summary>
+        public string ContactFax { get; set; }
+
+        /// <summary>
+        /// 车描述
+        /// </summary>
+        public string CarDes { get; set; }
+
+        /// <summary>
+        /// 车图片路径
+        /// 存储多个 使用/r/n
+        /// </summary>
+        public string CarPicPaths { get; set; }
+
+
+        /// <summary>
+        /// 其他信息
+        /// </summary>
+        public string OtherInfo { get; set; }
+
+        /// <summary>
+        /// 服务评分
+        /// </summary>
+        public int Score { get; set; }
+
+        /// <summary>
+        /// 相关的车辆资质
+        /// A B C  选择
+        /// </summary>
+        public string QualificationScore { get; set; }
+
+        /// <summary>
+        /// 车辆2-4年新,VIP及以上需要2年新
+        /// A B C  选择
+        /// </summary>
+        public string CarAgeScore { get; set; }
+
+        /// <summary>
+        /// 车身干净,无文字图片等
+        /// A B C  选择
+        /// </summary>
+        public string CleanImgScore { get; set; }
+
+        /// <summary>
+        /// 车内整洁、无异味
+        /// A B C  选择
+        /// </summary>
+        public string SmellScore { get; set; }
+
+        /// <summary>
+        /// 提前备水,纸巾等
+        /// A B C  选择
+        /// </summary>
+        public string WaterPaperScore { get; set; }
+
+        /// <summary>
+        /// 车辆配置高(皮座椅等)
+        /// A B C  选择
+        /// </summary>
+        public string HardwareScore { get; set; }
+
+        /// <summary>
+        /// 时间概念强
+        /// A B C  选择
+        /// </summary>
+        public string TimeScore { get; set; }
+
+        /// <summary>
+        /// 安全意识高
+        /// A B C  选择
+        /// </summary>
+        public string SafetyScore { get; set; }
+
+        /// <summary>
+        /// 司机驾龄时间长,提前熟悉路线
+        /// A B C  选择
+        /// </summary>
+        public string DrivingAgeScore { get; set; }
+       
+        /// <summary>
+        /// 备注
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(500)")]
+        public string Remark { get; set; }
+    }
+
+    public class DelCarDataDto
+    {
+        /// <summary>
+        /// 删除Id
+        /// </summary>
+        public int Id { get; set; }
+        /// <summary>
+        /// 删除人Id
+        /// </summary>
+        public int DeleteUserId { get; set; }
+    }
+}

+ 61 - 0
OASystem/OASystem.Domain/Dtos/System/MsgDto.cs

@@ -0,0 +1,61 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace OASystem.Domain.Dtos.System
+{
+    /// <summary>
+    /// 消息列表
+    /// 请求dto
+    /// </summary>
+    public class MsgDto:DtoBase
+    {
+        /// <summary>
+        /// 用户ID
+        /// </summary>
+        public int UserId { get; set; }
+    }
+
+    /// <summary>
+    /// 消息详细信息
+    /// 请求dto
+    /// </summary>
+    public class MsgInfoDto : DtoBase
+    {
+        /// <summary>
+        /// 消息Id
+        /// </summary>
+        public int MsgId { get; set; }
+    }
+
+    /// <summary>
+    /// 消息设置已读
+    /// 请求dto
+    /// </summary>
+    public class MsgSetReadDto : DtoBase
+    {
+        /// <summary>
+        /// MsgAnthId
+        /// </summary>
+        public int MsgAnthId { get; set; }
+    }
+
+    /// <summary>
+    /// 消息删除
+    /// 请求dto
+    /// </summary>
+    public class MsgDeleteDto : DtoBase
+    {
+        /// <summary>
+        /// MsgId
+        /// </summary>
+        public int MsgId { get; set; }
+
+        /// <summary>
+        /// userId
+        /// </summary>
+        public int UserId { get; set; }
+    }
+}

+ 19 - 0
OASystem/OASystem.Domain/Dtos/System/SetDataDto.cs

@@ -0,0 +1,19 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace OASystem.Domain.Dtos.System
+{
+    /// <summary>
+    /// 类型表参数
+    /// </summary>
+    public class SetDataDto
+    {
+        /// <summary>
+        /// 数据类型
+        /// </summary>
+        public int DataType { get; set; }
+    }
+}

+ 1 - 1
OASystem/OASystem.Domain/Dtos/UserDto/LoginDto.cs

@@ -6,7 +6,7 @@ namespace OASystem.Domain.Dtos.UserDto;
 /// 用户登录
 /// 用户登录
 /// 提交DTO
 /// 提交DTO
 /// </summary>
 /// </summary>
-public class LoginDto
+public class LoginDto:DtoBase
 {
 {
     /// <summary>
     /// <summary>
     /// 登录账号
     /// 登录账号

+ 48 - 37
OASystem/OASystem.Domain/Entities/Customer/Crm_DeleClient.cs

@@ -13,36 +13,6 @@ namespace OASystem.Domain.Entities.Customer
     [SugarTable("Crm_DeleClient")]
     [SugarTable("Crm_DeleClient")]
     public class Crm_DeleClient:EntityBase
     public class Crm_DeleClient:EntityBase
     {
     {
-        /// <summary>
-        /// 客户公司表Id
-        /// </summary>
-        [SugarColumn(IsNullable =true,ColumnDataType ="int")]
-        public int CompanyId { get; set; }
-        /// <summary>
-        /// 机票喜好舱位
-        /// </summary>
-        [SugarColumn(IsNullable =true,ColumnDataType = "varchar(300)")]
-        public string AirType { get; set; }
-        /// <summary>
-        /// 是否靠窗
-        /// </summary>
-        [SugarColumn(IsNullable =true,ColumnDataType ="int")]
-        public int SeatPref { get; set; }
-        /// <summary>
-        /// 机票备注
-        /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(300)")]
-        public string AirRemark { get; set; }
-        /// <summary>
-        /// 酒店喜好房型
-        /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(300)")]
-        public string RoomType { get; set; }
-        /// <summary>
-        /// 酒店需求
-        /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(300)")]
-        public string RoomPref { get; set; }
         /// <summary>
         /// <summary>
         /// 中文姓名
         /// 中文姓名
         /// </summary>
         /// </summary>
@@ -69,11 +39,11 @@ namespace OASystem.Domain.Entities.Customer
         [SugarColumn(IsNullable = true, ColumnDataType = "int")]
         [SugarColumn(IsNullable = true, ColumnDataType = "int")]
         public int Sex { get; set; }
         public int Sex { get; set; }
         /// <summary>
         /// <summary>
-        /// 婚姻状况 0、1、2 (已婚、未婚、离异等)
+        /// 婚姻状况 0、1、2、3、4 (未设置、未婚、已婚、离异、丧偶)
         /// </summary>
         /// </summary>
         [SugarColumn(IsNullable = true, ColumnDataType = "int")]
         [SugarColumn(IsNullable = true, ColumnDataType = "int")]
         public int Marriage { get; set; }
         public int Marriage { get; set; }
-        /// <summary>
+
         /// 客户手机号
         /// 客户手机号
         /// </summary>
         /// </summary>
         [SugarColumn(IsNullable = true, ColumnDataType = "varchar(20)")]
         [SugarColumn(IsNullable = true, ColumnDataType = "varchar(20)")]
@@ -93,6 +63,33 @@ namespace OASystem.Domain.Entities.Customer
         /// </summary>
         /// </summary>
         [SugarColumn(IsNullable = true, ColumnDataType = "DateTime")]
         [SugarColumn(IsNullable = true, ColumnDataType = "DateTime")]
         public string BirthDay { get; set; }
         public string BirthDay { get; set; }
+
+        /// <summary>
+        /// 机票喜好舱位
+        /// </summary>
+        [SugarColumn(IsNullable =true,ColumnDataType = "varchar(300)")]
+        public string AirType { get; set; }
+        /// <summary>
+        /// 是否靠窗
+        /// </summary>
+        [SugarColumn(IsNullable =true,ColumnDataType ="int")]
+        public int SeatPref { get; set; }
+        /// <summary>
+        /// 机票备注
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(300)")]
+        public string AirRemark { get; set; }
+        /// <summary>
+        /// 酒店喜好房型
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(300)")]
+        public string RoomType { get; set; }
+        /// <summary>
+        /// 酒店需求
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(300)")]
+        public string RoomPref { get; set; }
+       
         /// <summary>
         /// <summary>
         /// 客户联系方式
         /// 客户联系方式
         /// </summary>
         /// </summary>
@@ -118,6 +115,13 @@ namespace OASystem.Domain.Entities.Customer
         /// </summary>
         /// </summary>
         [SugarColumn(IsNullable = true, ColumnDataType = "varchar(50)")]
         [SugarColumn(IsNullable = true, ColumnDataType = "varchar(50)")]
         public string PostCodes { get; set; }
         public string PostCodes { get; set; }
+
+        /// <summary>
+        /// 客户公司Id
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "int")]
+        public string CrmCompanyId { get; set; }
+
         /// <summary>
         /// <summary>
         /// 职位
         /// 职位
         /// </summary>
         /// </summary>
@@ -164,7 +168,8 @@ namespace OASystem.Domain.Entities.Customer
         [SugarColumn(IsNullable = true, ColumnDataType = "varchar(20)")]
         [SugarColumn(IsNullable = true, ColumnDataType = "varchar(20)")]
         public string ClientLeaderJob { get; set; }
         public string ClientLeaderJob { get; set; }
         /// <summary>
         /// <summary>
-        /// 是否有获批的申根签证 0否1是
+        /// 是否有获批的申根签证 
+        /// 0否1是
         /// </summary>
         /// </summary>
         [SugarColumn(IsNullable = true, ColumnDataType = "int")]
         [SugarColumn(IsNullable = true, ColumnDataType = "int")]
         public int IsGetSchengen { get; set; }
         public int IsGetSchengen { get; set; }
@@ -179,7 +184,8 @@ namespace OASystem.Domain.Entities.Customer
         [SugarColumn(IsNullable = true, ColumnDataType = "Datetime")]
         [SugarColumn(IsNullable = true, ColumnDataType = "Datetime")]
         public DateTime EndTime { get; set; }
         public DateTime EndTime { get; set; }
         /// <summary>
         /// <summary>
-        /// 申根是否在使馆有指纹记录 0否1是
+        /// 申根是否在使馆有指纹记录 
+        /// 0否1是
         /// </summary>
         /// </summary>
         [SugarColumn(IsNullable =true,ColumnDataType ="int")]
         [SugarColumn(IsNullable =true,ColumnDataType ="int")]
         public int IsFinger { get; set; }
         public int IsFinger { get; set; }
@@ -190,6 +196,7 @@ namespace OASystem.Domain.Entities.Customer
         public DateTime FingerDate { get; set; }
         public DateTime FingerDate { get; set; }
         /// <summary>
         /// <summary>
         /// 是否因公去过美国/加拿大
         /// 是否因公去过美国/加拿大
+        /// 0否1是
         /// </summary>
         /// </summary>
         [SugarColumn(IsNullable = true, ColumnDataType = "int")]
         [SugarColumn(IsNullable = true, ColumnDataType = "int")]
         public int IsVisitUC { get; set; }
         public int IsVisitUC { get; set; }
@@ -220,6 +227,7 @@ namespace OASystem.Domain.Entities.Customer
         public int IsUSAVia { get; set; }
         public int IsUSAVia { get; set; }
         /// <summary>
         /// <summary>
         /// 因公美国签证最近获得时间
         /// 因公美国签证最近获得时间
+        /// 0否1是
         /// </summary>
         /// </summary>
         [SugarColumn(IsNullable =true,ColumnDataType ="DateTime")]
         [SugarColumn(IsNullable =true,ColumnDataType ="DateTime")]
         public DateTime GetUSAVisaDate { get; set; }
         public DateTime GetUSAVisaDate { get; set; }
@@ -289,7 +297,8 @@ namespace OASystem.Domain.Entities.Customer
         [SugarColumn(IsNullable = true, ColumnDataType = "int")]
         [SugarColumn(IsNullable = true, ColumnDataType = "int")]
         public int IsUSAVisa { get; set; }
         public int IsUSAVisa { get; set; }
         /// <summary>
         /// <summary>
-        /// 夫/妻是否已在美国 0否1是
+        /// 夫/妻是否已在美国 
+        /// 0否1是
         /// </summary>
         /// </summary>
         [SugarColumn(IsNullable = true, ColumnDataType = "int")]
         [SugarColumn(IsNullable = true, ColumnDataType = "int")]
         public int MateUSA { get; set; }
         public int MateUSA { get; set; }
@@ -309,7 +318,8 @@ namespace OASystem.Domain.Entities.Customer
         [SugarColumn(IsNullable =true,ColumnDataType ="varchar(50)")]
         [SugarColumn(IsNullable =true,ColumnDataType ="varchar(50)")]
         public string WHIden { get; set; }
         public string WHIden { get; set; }
         /// <summary>
         /// <summary>
-        /// 父/母是否已在美国 0否1是
+        /// 父/母是否已在美国
+        /// 0否1是
         /// </summary>
         /// </summary>
         [SugarColumn(IsNullable = true, ColumnDataType = "int")]
         [SugarColumn(IsNullable = true, ColumnDataType = "int")]
         public int ParentUSA { get; set; }
         public int ParentUSA { get; set; }
@@ -344,7 +354,8 @@ namespace OASystem.Domain.Entities.Customer
         [SugarColumn(IsNullable = true, ColumnDataType = "varchar(500)")]
         [SugarColumn(IsNullable = true, ColumnDataType = "varchar(500)")]
         public string Social { get; set; }
         public string Social { get; set; }
         /// <summary> 
         /// <summary> 
-        /// 是否参军  0否1是
+        /// 是否参军  
+        /// 0否1是
         /// </summary>
         /// </summary>
         [SugarColumn(IsNullable = true, ColumnDataType = "int")]
         [SugarColumn(IsNullable = true, ColumnDataType = "int")]
         public string IsArmy { get; set; }
         public string IsArmy { get; set; }

+ 2 - 2
OASystem/OASystem.Domain/Entities/Groups/Grp_DelegationInfo.cs

@@ -192,8 +192,8 @@ namespace OASystem.Domain.Entities.Groups
         /// <summary>
         /// <summary>
         /// 预付期限
         /// 预付期限
         /// </summary>
         /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDataType = "DateTime")]
-        public DateTime PayDay { get; set; }
+        [SugarColumn(IsNullable = true, ColumnDataType = "int")]
+        public int PayDay { get; set; }
         /// <summary>
         /// <summary>
         /// 出国任务审批部门名称
         /// 出国任务审批部门名称
         /// </summary>
         /// </summary>

+ 9 - 0
OASystem/OASystem.Domain/Entities/System/Sys_JobPost.cs

@@ -24,5 +24,14 @@ namespace OASystem.Domain.Entities.System
         public string JobName { get; set; }
         public string JobName { get; set; }
        
        
     }
     }
+    #region 附加字段
+
+    #endregion
+    public class Sys_JobPostI:Sys_JobPost
+    {
+        public string CompanyName { get; set; }
+
+        public string DepName { get; set; }
+    }
 
 
 }
 }

+ 1 - 1
OASystem/OASystem.Domain/Result.cs

@@ -10,6 +10,6 @@ namespace OASystem.Domain
     {
     {
         public int Code { get; set; } = -1;
         public int Code { get; set; } = -1;
         public string Msg { get; set; } = "未知错误";
         public string Msg { get; set; } = "未知错误";
-        public dynamic Data { get; set; } = null;
+        public dynamic? Data { get; set; } = null;
     }
     }
 }
 }

+ 22 - 10
OASystem/OASystem.Domain/ViewModels/Group/DelegationInfoView.cs

@@ -1,7 +1,9 @@
-using OASystem.Domain.Dtos;
+using Newtonsoft.Json;
+using OASystem.Domain.Dtos;
 using OASystem.Domain.Entities.Groups;
 using OASystem.Domain.Entities.Groups;
 using System;
 using System;
 using System.Collections.Generic;
 using System.Collections.Generic;
+using System.ComponentModel;
 using System.Linq;
 using System.Linq;
 using System.Text;
 using System.Text;
 using System.Threading.Tasks;
 using System.Threading.Tasks;
@@ -15,7 +17,7 @@ namespace OASystem.Domain.ViewModels.Group
     public class DelegationInfoView : Grp_DelegationInfo { }
     public class DelegationInfoView : Grp_DelegationInfo { }
     
     
     /// <summary>
     /// <summary>
-    /// 接团信息列表
+    /// 接团信息详情
     /// 返回视图
     /// 返回视图
     /// </summary>
     /// </summary>
     public class DelegationInfoWebView
     public class DelegationInfoWebView
@@ -30,16 +32,22 @@ namespace OASystem.Domain.ViewModels.Group
         /// </summary>
         /// </summary>
         public string SalesQuoteNo { get; set; }
         public string SalesQuoteNo { get; set; }
 
 
+
         /// <summary>
         /// <summary>
-        /// 团组类型
+        /// 接团人ID
         /// </summary>
         /// </summary>
-        public int TeamDid { get; set; }
+        public int JietuanOperator { get; set; }
 
 
         /// <summary>
         /// <summary>
         /// 团组等级
         /// 团组等级
         /// </summary>
         /// </summary>
         public int TeamLevSId { get; set; }
         public int TeamLevSId { get; set; }
 
 
+        /// <summary>
+        /// 团组类型
+        /// </summary>
+        public int TeamDid { get; set; }
+
         /// <summary>
         /// <summary>
         /// 团组名称
         /// 团组名称
         /// </summary>
         /// </summary>
@@ -79,11 +87,10 @@ namespace OASystem.Domain.ViewModels.Group
         /// 合同时间
         /// 合同时间
         /// </summary>
         /// </summary>
         public DateTime TontractTime { get; set; }
         public DateTime TontractTime { get; set; }
-
         /// <summary>
         /// <summary>
-        /// 预付
+        /// 预付期
         /// </summary>
         /// </summary>
-        public DateTime PayDay { get; set; }
+        public int PayDay { get; set; }
 
 
         /// <summary>
         /// <summary>
         /// 预付金额
         /// 预付金额
@@ -137,7 +144,7 @@ namespace OASystem.Domain.ViewModels.Group
     /// 接团信息列表
     /// 接团信息列表
     /// 返回视图
     /// 返回视图
     /// </summary>
     /// </summary>
-    public class DelegationListView :DtoBase
+    public class DelegationListView 
     {
     {
         /// <summary>
         /// <summary>
         /// 主键Id
         /// 主键Id
@@ -149,6 +156,11 @@ namespace OASystem.Domain.ViewModels.Group
         /// </summary>
         /// </summary>
         public string SalesQuoteNo { get; set; }
         public string SalesQuoteNo { get; set; }
 
 
+        /// <summary>
+        /// 团号
+        /// </summary>
+        public string TourCode { get; set; }
+
         /// <summary>
         /// <summary>
         /// 接团操作人
         /// 接团操作人
         /// </summary>
         /// </summary>
@@ -157,12 +169,12 @@ namespace OASystem.Domain.ViewModels.Group
         /// <summary>
         /// <summary>
         /// 团组等级 
         /// 团组等级 
         /// </summary>
         /// </summary>
-        public int TeamLevSId { get; set; }
+        public string TeamLev { get; set; }
 
 
         /// <summary>
         /// <summary>
         /// 团组类型
         /// 团组类型
         /// </summary>
         /// </summary>
-        public int TeamDid { get; set; }
+        public string TeamType { get; set; }
 
 
         /// <summary>
         /// <summary>
         /// 团组名称
         /// 团组名称

+ 5 - 0
OASystem/OASystem.Domain/ViewModels/LoginView.cs

@@ -19,4 +19,9 @@ public class LoginView
     /// 返回用户信息
     /// 返回用户信息
     /// </summary>
     /// </summary>
     public object? UserInfo { get; set; }
     public object? UserInfo { get; set; }
+
+    /// <summary>
+    /// 返回用户权限信息
+    /// </summary>
+    public object? AuthData { get; set; }
 }
 }

+ 13 - 0
OASystem/OASystem.Domain/ViewModels/Resource/CarDataView.cs

@@ -0,0 +1,13 @@
+using OASystem.Domain.Entities.Resource;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace OASystem.Domain.ViewModels.Resource
+{
+    public class CarDataView:Res_CarData
+    {
+    }
+}

+ 15 - 0
OASystem/OASystem.Domain/ViewModels/System/JobPostView.cs

@@ -24,8 +24,23 @@ namespace OASystem.Domain.ViewModels.System
         /// </summary>
         /// </summary>
         public int CompanyId { get; set; }
         public int CompanyId { get; set; }
         /// <summary>
         /// <summary>
+        /// 公司名称
+        /// </summary>
+        public string CompanyName { get; set; }
+        /// <summary>
         /// 部门Id
         /// 部门Id
         /// </summary>
         /// </summary>
         public int DepId { get; set; }
         public int DepId { get; set; }
+        /// <summary>
+        /// 部门Id
+        /// </summary>
+        public string DepName { get; set; }
+
+        /// <summary>
+        /// 备注
+        /// </summary>
+        public string Remark { get; set; }
     }
     }
+
+
 }
 }

+ 54 - 0
OASystem/OASystem.Domain/ViewModels/System/MessageView.cs

@@ -67,4 +67,58 @@ namespace OASystem.Domain.ViewModels.System
         public DateTime? ReadTime { get; set; }
         public DateTime? ReadTime { get; set; }
     }
     }
 
 
+    public class MessageInfoView 
+    {
+        /// <summary>
+        /// 消息类型
+        /// </summary>
+        public int Type { get; set; }
+
+        /// <summary>
+        /// 公司名称
+        /// </summary>
+        public string CompanyName { get; set; }
+
+        /// <summary>
+        /// 部门名称
+        /// </summary>
+        public string DepName { get; set; }
+
+        /// <summary>
+        /// 岗位名称
+        /// </summary>
+        public string JobName { get; set; }
+
+        /// <summary>
+        /// 发布人
+        /// </summary>
+        public string CnName { get; set; }
+
+        /// <summary>
+        /// 发布时间
+        /// </summary>
+        public DateTime ReleaseTime { get; set; }
+
+        /// <summary>
+        /// 消息标题
+        /// </summary>
+        public string Title { get; set; }
+
+        /// <summary>
+        /// 消息内容
+        /// </summary>
+        public string Content { get; set; }
+
+        /// <summary>
+        /// 是否已读
+        /// 0 未读 1 已读
+        /// </summary>
+        public int IsRead { get; set; }
+
+        /// <summary>
+        /// 已读时间
+        /// 1990-01-01 00:00:000 未读
+        /// </summary>
+        public DateTime ReadTime { get; set; }
+    }
 }
 }

+ 5 - 5
OASystem/OASystem.Domain/ViewModels/System/UserInfoView.cs

@@ -94,10 +94,10 @@ namespace OASystem.Domain.ViewModels.System
     /// </summary>
     /// </summary>
     public class UserLoginInfoView
     public class UserLoginInfoView
     {
     {
-        ///// <summary>
-        ///// 工号
-        ///// </summary>
-        ////public string Number { get; set; }
+        /// <summary>
+        /// 工号
+        /// </summary>
+        //public string Number { get; set; }
 
 
         /// <summary>
         /// <summary>
         /// 用户Id
         /// 用户Id
@@ -127,7 +127,7 @@ namespace OASystem.Domain.ViewModels.System
         /// <summary>
         /// <summary>
         /// 邮箱
         /// 邮箱
         /// </summary>
         /// </summary>
-        public int DepId { get; set; }
+        public string Email { get; set; }
 
 
     }
     }
     /// <summary>
     /// <summary>

+ 11 - 0
OASystem/OASystem.Infrastructure/Repositories/BaseRepository.cs

@@ -177,6 +177,7 @@ namespace OASystem.Infrastructure.Repositories
             }).ExecuteCommandAsync();
             }).ExecuteCommandAsync();
             return result > 0;
             return result > 0;
         }
         }
+       
         public virtual async Task<bool> SoftDeleteAsync(Expression<Func<TEntity, bool>> wherexp)
         public virtual async Task<bool> SoftDeleteAsync(Expression<Func<TEntity, bool>> wherexp)
         {
         {
             var result = await _sqlSugar.Updateable<TEntity>().Where(wherexp).SetColumns(a => new TEntity()
             var result = await _sqlSugar.Updateable<TEntity>().Where(wherexp).SetColumns(a => new TEntity()
@@ -244,6 +245,16 @@ namespace OASystem.Infrastructure.Repositories
             }).ExecuteCommandAsync();
             }).ExecuteCommandAsync();
             return result > 0;
             return result > 0;
         }
         }
+        public virtual async Task<bool> SoftDeleteByIdAsync<T>(string id,int DeleteUserId) where T : EntityBase, new()
+        {
+            var result = await _sqlSugar.Updateable<TEntity>().Where(a => a.Id.Equals(id)).SetColumns(a => new TEntity()
+            {
+                IsDel = 1,
+                DeleteUserId = DeleteUserId,
+                DeleteTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")
+            }).ExecuteCommandAsync();
+            return result > 0;
+        }
         public virtual async Task<bool> SoftDeleteAsync<T>(Expression<Func<TEntity, bool>> wherexp) where T : EntityBase, new()
         public virtual async Task<bool> SoftDeleteAsync<T>(Expression<Func<TEntity, bool>> wherexp) where T : EntityBase, new()
         {
         {
             var result = await _sqlSugar.Updateable<TEntity>().Where(wherexp).SetColumns(a => new TEntity()
             var result = await _sqlSugar.Updateable<TEntity>().Where(wherexp).SetColumns(a => new TEntity()

+ 194 - 50
OASystem/OASystem.Infrastructure/Repositories/Groups/DelegationInfoRepository.cs

@@ -6,6 +6,7 @@ using OASystem.Domain.Entities.Groups;
 using OASystem.Domain.ViewModels.Group;
 using OASystem.Domain.ViewModels.Group;
 using OASystem.Infrastructure.Repositories.System;
 using OASystem.Infrastructure.Repositories.System;
 using Org.BouncyCastle.Utilities.Collections;
 using Org.BouncyCastle.Utilities.Collections;
+using Serilog;
 using SqlSugar;
 using SqlSugar;
 using System;
 using System;
 using System.Collections.Generic;
 using System.Collections.Generic;
@@ -22,9 +23,10 @@ namespace OASystem.Infrastructure.Repositories.Groups
     {
     {
         private readonly SetDataRepository _setDataRepository;
         private readonly SetDataRepository _setDataRepository;
         private readonly UsersRepository _usersRepository;
         private readonly UsersRepository _usersRepository;
+        //public readonly Logs _logs;
 
 
-        public DelegationInfoRepository(SqlSugarClient sqlSugar, SetDataRepository setDataRepository, UsersRepository usersRepository) 
-            : base(sqlSugar) 
+        public DelegationInfoRepository(SqlSugarClient sqlSugar, SetDataRepository setDataRepository, UsersRepository usersRepository)
+            : base(sqlSugar)
         {
         {
             this._setDataRepository = setDataRepository;
             this._setDataRepository = setDataRepository;
             this._usersRepository = usersRepository;
             this._usersRepository = usersRepository;
@@ -37,9 +39,9 @@ namespace OASystem.Infrastructure.Repositories.Groups
         /// <returns></returns>
         /// <returns></returns>
         public async Task<Result> GetGroupList(GroupListDto dto)
         public async Task<Result> GetGroupList(GroupListDto dto)
         {
         {
-            Result result = new Result() { Code = -2,Msg="未知错误" };
+            Result result = new Result() { Code = -2, Msg = "未知错误" };
 
 
-            if (dto.PortType == 1) //web
+            if (dto.PortType == 1 || dto.PortType == 2) //web
             {
             {
                 string sql = string.Format(@"Select gdi.Id,SalesQuoteNo,TourCode,ssd.Name TeamType,ssd1.Name TeamLev,TeamName,ClientName,
                 string sql = string.Format(@"Select gdi.Id,SalesQuoteNo,TourCode,ssd.Name TeamType,ssd1.Name TeamLev,TeamName,ClientName,
                                                     ClientUnit,VisitDate,VisitDays,VisitPNumber,su.CnName JietuanOperator,IsSure
                                                     ClientUnit,VisitDate,VisitDays,VisitPNumber,su.CnName JietuanOperator,IsSure
@@ -49,7 +51,7 @@ namespace OASystem.Infrastructure.Repositories.Groups
                                              Left Join Sys_Users su On gdi.JietuanOperator = su.Id
                                              Left Join Sys_Users su On gdi.JietuanOperator = su.Id
                                              Where gdi.IsDel = 0 
                                              Where gdi.IsDel = 0 
                                              Order By VisitDate Desc");
                                              Order By VisitDate Desc");
-                    
+
                 var _DelegationList = await _sqlSugar.SqlQueryable<DelegationListView>(sql).ToListAsync();
                 var _DelegationList = await _sqlSugar.SqlQueryable<DelegationListView>(sql).ToListAsync();
                 if (_DelegationList.Count > 0)
                 if (_DelegationList.Count > 0)
                 {
                 {
@@ -63,13 +65,11 @@ namespace OASystem.Infrastructure.Repositories.Groups
                 }
                 }
             }
             }
 
 
-            
-            
+
             return result;
             return result;
 
 
         }
         }
 
 
-
         /// <summary>
         /// <summary>
         /// 获取接团信息Info
         /// 获取接团信息Info
         /// </summary>
         /// </summary>
@@ -79,15 +79,15 @@ namespace OASystem.Infrastructure.Repositories.Groups
         {
         {
             Result result = new Result() { Code = -2, Msg = "未知错误" };
             Result result = new Result() { Code = -2, Msg = "未知错误" };
 
 
-            if (dto.PortType == 1) //web
+            if (dto.PortType == 1 || dto.PortType == 2) //web
             {
             {
                 string sql = string.Format(@"Select Id,SalesQuoteNo,JietuanOperator,TeamLevSId,TeamDid,TeamName,ClientName,
                 string sql = string.Format(@"Select Id,SalesQuoteNo,JietuanOperator,TeamLevSId,TeamDid,TeamName,ClientName,
 	                                                ClientUnit,VisitCountry,VisitDate,VisitDays,VisitPNumber,TontractTime,
 	                                                ClientUnit,VisitCountry,VisitDate,VisitDays,VisitPNumber,TontractTime,
 	                                                PayDay,PaymentMoney,VisitPurpose,SpecialNeeds,OtherNeeds,CGRWSPBMMC,CGRWSPWH,
 	                                                PayDay,PaymentMoney,VisitPurpose,SpecialNeeds,OtherNeeds,CGRWSPBMMC,CGRWSPWH,
 	                                                ZZSCBMMC,ZZSCSPWH,Remark,TellPhone
 	                                                ZZSCBMMC,ZZSCSPWH,Remark,TellPhone
-                                             From Grp_DelegationInfo Where Id = {0} And IsDel=0",dto.Id);
+                                             From Grp_DelegationInfo Where Id = {0} And IsDel = 0", dto.Id);
 
 
-                var _DelegationInfo = await _sqlSugar.SqlQueryable<DelegationInfoWebView>(sql).ToListAsync();
+                var _DelegationInfo = await _sqlSugar.SqlQueryable<DelegationInfoWebView>(sql).FirstAsync();
                 if (_DelegationInfo != null)
                 if (_DelegationInfo != null)
                 {
                 {
                     result.Code = 0;
                     result.Code = 0;
@@ -110,44 +110,54 @@ namespace OASystem.Infrastructure.Repositories.Groups
         /// </summary>
         /// </summary>
         /// <param name="dto"></param>
         /// <param name="dto"></param>
         /// <returns></returns>
         /// <returns></returns>
-        public async Task<Result> GetGroupEditBasicSource(GroupListDto dto)
+        public async Task<Result> GroupEditBasicSource(GroupListDto dto)
         {
         {
             Result result = new Result() { Code = -2, Msg = "未知错误" };
             Result result = new Result() { Code = -2, Msg = "未知错误" };
 
 
-            if (dto.PortType == 1) //web
+            try
             {
             {
-                dynamic? teamTypeData1 = null;
-                string teamTypeSql = string.Format(@"Select Id,Name From  Sys_SetData Where STid = {0} And IsDel = {1}", 10, 0);
-                var teamTypeData = await _sqlSugar.SqlQueryable<SetDataInfoView>(teamTypeSql).ToListAsync(); ;  //团组分类 10
-                if (teamTypeData.Count > 0)
+                if (dto.PortType == 1 || dto.PortType == 2) //web
                 {
                 {
-                    teamTypeData1 = teamTypeData;
-                }
+                    dynamic? teamTypeData1 = null;
+                    string teamTypeSql = string.Format(@"Select Id,Name From  Sys_SetData Where STid = {0} And IsDel = {1}", 10, 0);
+                    var teamTypeData = await _sqlSugar.SqlQueryable<SetDataInfoView>(teamTypeSql).ToListAsync(); ;  //团组分类 10
+                    if (teamTypeData.Count > 0)
+                    {
+                        teamTypeData1 = teamTypeData;
+                    }
 
 
-                dynamic? teamLevData1 = null;
-                string teamLevSql = string.Format(@"Select Id,Name From  Sys_SetData Where STid = {0} And IsDel = {1}", 56, 0);
-                var teamLevData = await _sqlSugar.SqlQueryable<SetDataInfoView>(teamLevSql).ToListAsync(); ;  //团组等级 56
-                if (teamLevData.Count > 0)
-                {
-                    teamLevData1 = teamLevData;
-                }
+                    dynamic? teamLevData1 = null;
+                    string teamLevSql = string.Format(@"Select Id,Name From  Sys_SetData Where STid = {0} And IsDel = {1}", 56, 0);
+                    var teamLevData = await _sqlSugar.SqlQueryable<SetDataInfoView>(teamLevSql).ToListAsync(); ;  //团组等级 56
+                    if (teamLevData.Count > 0)
+                    {
+                        teamLevData1 = teamLevData;
+                    }
 
 
-                dynamic? userData1 = null;
-                string userSql = string.Format(@"Select Id,CnName From  Sys_Users Where IsDel = {0}", 0);
-                var userData = await _sqlSugar.SqlQueryable<UserNameView>(userSql).ToListAsync(); ;
-                if (userData.Count > 0)
-                {
-                    userData1 = userData;
+                    dynamic? userData1 = null;
+                    string userSql = string.Format(@"Select Id,CnName From  Sys_Users Where IsDel = {0}", 0);
+                    var userData = await _sqlSugar.SqlQueryable<UserNameView>(userSql).ToListAsync(); ;
+                    if (userData.Count > 0)
+                    {
+                        userData1 = userData;
+                    }
+
+                    result.Code = 0;
+                    result.Msg = "成功!";
+                    result.Data = new
+                    {
+                        teamTypeData = teamTypeData1,
+                        teamLevData = teamLevData1,
+                        userData = userData1
+                    };
                 }
                 }
+            }
+            catch (Exception)
+            {
 
 
-                result.Code = 0;
-                result.Msg = "成功!";
-                result.Data = new {
-                    teamTypeData = teamTypeData1,
-                    teamLevData = teamLevData1,
-                    userData = userData1
-                };
+                throw;
             }
             }
+            
 
 
             return result;
             return result;
         }
         }
@@ -161,7 +171,7 @@ namespace OASystem.Infrastructure.Repositories.Groups
         {
         {
             Result result = new Result() { Code = -2, Msg = "未知错误" };
             Result result = new Result() { Code = -2, Msg = "未知错误" };
 
 
-            if (dto.PortType == 1) //web
+            if (dto.PortType == 1 || dto.PortType == 2) //web
             {
             {
                 Grp_DelegationInfo groupInfo = new Grp_DelegationInfo()
                 Grp_DelegationInfo groupInfo = new Grp_DelegationInfo()
                 {
                 {
@@ -171,7 +181,7 @@ namespace OASystem.Infrastructure.Repositories.Groups
                     ClientUnit = dto.ClientUnit,
                     ClientUnit = dto.ClientUnit,
                     TeamName = dto.TeamName,
                     TeamName = dto.TeamName,
                     TeamDid = dto.TeamDid,
                     TeamDid = dto.TeamDid,
-                    VisitDate = dto.VisitDate,
+                    VisitDate = Convert.ToDateTime(dto.VisitDate),
                     VisitCountry = dto.VisitCountry,
                     VisitCountry = dto.VisitCountry,
                     VisitPurpose = dto.VisitPurpose,
                     VisitPurpose = dto.VisitPurpose,
                     VisitDays = dto.VisitDays,
                     VisitDays = dto.VisitDays,
@@ -185,7 +195,7 @@ namespace OASystem.Infrastructure.Repositories.Groups
                     CGRWSPWH = dto.CGRWSPWH,
                     CGRWSPWH = dto.CGRWSPWH,
                     ZZSCBMMC = dto.ZZSCBMMC,
                     ZZSCBMMC = dto.ZZSCBMMC,
                     ZZSCSPWH = dto.ZZSCSPWH,
                     ZZSCSPWH = dto.ZZSCSPWH,
-                    TontractTime = dto.TontractTime,
+                    TontractTime = Convert.ToDateTime(dto.TontractTime),
                     PaymentMoney = dto.PaymentMoney,
                     PaymentMoney = dto.PaymentMoney,
                     PayDay = dto.PayDay
                     PayDay = dto.PayDay
                 };
                 };
@@ -199,7 +209,7 @@ namespace OASystem.Infrastructure.Repositories.Groups
                                                    And TeamName = '{1}'
                                                    And TeamName = '{1}'
                                                    And ClientName = '{2}'
                                                    And ClientName = '{2}'
                                                    And ClientUnit ='{3}'
                                                    And ClientUnit ='{3}'
-                                                   And VisitDate ='{4}'",dto.SalesQuoteNo,dto.TeamName,dto.ClientName,dto.ClientUnit,dto.VisitDate);
+                                                   And VisitDate ='{4}'", dto.SalesQuoteNo, dto.TeamName, dto.ClientName, dto.ClientUnit, dto.VisitDate);
                     var selectGroupInfo = await _sqlSugar.SqlQueryable<Grp_DelegationInfo>(selectSql).FirstAsync();
                     var selectGroupInfo = await _sqlSugar.SqlQueryable<Grp_DelegationInfo>(selectSql).FirstAsync();
                     if (selectGroupInfo != null)
                     if (selectGroupInfo != null)
                     {
                     {
@@ -208,13 +218,13 @@ namespace OASystem.Infrastructure.Repositories.Groups
                     }
                     }
 
 
                     string teamCodeSql = string.Format("Select TourCode From Grp_DelegationInfo");
                     string teamCodeSql = string.Format("Select TourCode From Grp_DelegationInfo");
-                   var teamCodeItem = await _sqlSugar.SqlQueryable<TeamCodeView>(teamCodeSql).FirstAsync();
+                    var teamCodeItem = await _sqlSugar.SqlQueryable<TeamCodeView>(teamCodeSql).ToListAsync();
 
 
                     string teamCode = "";
                     string teamCode = "";
                     while (true)
                     while (true)
                     {
                     {
-                        teamCode = Tools.CommonFun.GetRandomAllStr(6);
-                        
+                        teamCode = Tools.CommonFun.GetRandomStr(6);
+
                         if (!teamCodeItem.Equals(teamCode))
                         if (!teamCodeItem.Equals(teamCode))
                         {
                         {
                             break;
                             break;
@@ -249,10 +259,34 @@ namespace OASystem.Infrastructure.Repositories.Groups
                     }
                     }
 
 
 
 
-                }
-                else if (dto.Status == 2)  //修改
+                }  //增加
+                else if (dto.Status == 2)     //修改
                 {
                 {
-                    var updateStatus = await UpdateAsync(a => a.Id == dto.Id,a=> groupInfo);
+                    var updateStatus = await UpdateAsync(a => a.Id == dto.Id, a => new Grp_DelegationInfo {
+                        SalesQuoteNo = dto.SalesQuoteNo,
+                        TeamLevSId = dto.TeamLevSId,
+                        ClientName = dto.ClientName,
+                        ClientUnit = dto.ClientUnit,
+                        TeamName = dto.TeamName,
+                        TeamDid = dto.TeamDid,
+                        VisitDate = Convert.ToDateTime(dto.VisitDate),
+                        VisitCountry = dto.VisitCountry,
+                        VisitPurpose = dto.VisitPurpose,
+                        VisitDays = dto.VisitDays,
+                        VisitPNumber = dto.VisitPNumber,
+                        SpecialNeeds = dto.SpecialNeeds,
+                        OtherNeeds = dto.OtherNeeds,
+                        Remark = dto.Remark,
+                        JietuanOperator = dto.UserId,
+                        TellPhone = dto.TellPhone,
+                        CGRWSPBMMC = dto.CGRWSPBMMC,
+                        CGRWSPWH = dto.CGRWSPWH,
+                        ZZSCBMMC = dto.ZZSCBMMC,
+                        ZZSCSPWH = dto.ZZSCSPWH,
+                        TontractTime = Convert.ToDateTime(dto.TontractTime),
+                        PaymentMoney = dto.PaymentMoney,
+                        PayDay = dto.PayDay
+                    });
 
 
                     if (updateStatus)
                     if (updateStatus)
                     {
                     {
@@ -264,9 +298,119 @@ namespace OASystem.Infrastructure.Repositories.Groups
                         result.Msg = "修改失败!";
                         result.Msg = "修改失败!";
                     }
                     }
                 }
                 }
+                else if (dto.Status == 3)  //删除
+                {
+                    var deleteStatus = await UpdateAsync(a => a.Id == dto.Id, a => new Grp_DelegationInfo { 
+                        DeleteUserId = dto.UserId,
+                        DeleteTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"),
+                        IsDel = 1
+                    });
+
+                    if (deleteStatus)
+                    {
+                        result.Code = 0;
+                        result.Msg = "删除成功!";
+                    }
+                    else
+                    {
+                        result.Msg = "删除失败!";
+                    }
+                }
             }
             }
-            
+
+            return result;
+        }
+
+
+        /// <summary>
+        /// 团组信息操作
+        /// </summary>
+        /// <param name="dto"></param>
+        /// <returns></returns>
+        public async Task<Result> GroupDel(GroupDelDto dto)
+        {
+            Result result = new Result() { Code = -2, Msg = "未知错误" };
+
+            if (dto.PortType == 1 || dto.PortType == 2) //web
+            {
+                var deleteStatus = await UpdateAsync(a => a.Id == dto.Id, a => new Grp_DelegationInfo
+                {
+                    DeleteUserId = dto.UserId,
+                    DeleteTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"),
+                    IsDel = 1
+                });
+
+                if (deleteStatus)
+                {
+                    result.Code = 0;
+                    result.Msg = "删除成功!";
+                }
+                else
+                {
+                    result.Msg = "删除失败!";
+                }
+                
+            }
+
             return result;
             return result;
         }
         }
+
+        /// <summary>
+        /// 获取销售报价号
+        /// </summary>
+        /// <returns></returns>
+        public async Task<Result> GetGroupSalesQuoteNo()
+        {
+            Result result = new Result() { Code = -2, Msg = "未知错误" };
+
+            string teamCodeSql = string.Format("Select TourCode From Grp_DelegationInfo");
+            var teamCodeItem = await _sqlSugar.SqlQueryable<TeamCodeView>(teamCodeSql).ToListAsync();
+
+            string teamCode = "";
+            while (true)
+            {
+                teamCode = Tools.CommonFun.GetRandomAllStr(6);
+
+                if (!teamCodeItem.Equals(teamCode))
+                {
+                    break;
+                }
+            }
+
+            result.Code = 0;
+            result.Msg = "成功!";
+            result.Data = teamCode;
+            return result;
+        }
+
+        /// <summary>
+        /// 团组删除
+        /// </summary>
+        /// <returns></returns>
+        public async Task<Result> GroupDeleteById()
+        {
+            Result result = new Result() { Code = -2, Msg = "未知错误" };
+
+            string teamCodeSql = string.Format("Select TourCode From Grp_DelegationInfo");
+            var teamCodeItem = await _sqlSugar.SqlQueryable<TeamCodeView>(teamCodeSql).ToListAsync();
+
+            string teamCode = "";
+            while (true)
+            {
+                teamCode = Tools.CommonFun.GetRandomAllStr(6);
+
+                if (!teamCodeItem.Equals(teamCode))
+                {
+                    break;
+                }
+            }
+
+            result.Code = 0;
+            result.Msg = "成功!";
+            result.Data = teamCode;
+            return result;
+        }
+
+
     }
     }
 }
 }

+ 17 - 2
OASystem/OASystem.Infrastructure/Repositories/Login/LoginRepository.cs

@@ -57,6 +57,8 @@ namespace OASystem.Infrastructure.Repositories.Login
                 return result;
                 return result;
             }
             }
 
 
+            //portType 处理端口 
+            dynamic longinData = null;
 
 
             //员工数据
             //员工数据
             string sqlWhere = string.Format(" Where su.Id={0}", _entity.Id);
             string sqlWhere = string.Format(" Where su.Id={0}", _entity.Id);
@@ -65,11 +67,24 @@ namespace OASystem.Infrastructure.Repositories.Login
                                                   Inner Join Sys_Company sc On su.CompanyId = sc.Id
                                                   Inner Join Sys_Company sc On su.CompanyId = sc.Id
                                                   Inner Join Sys_Department sd On su.DepId = sd.Id
                                                   Inner Join Sys_Department sd On su.DepId = sd.Id
                                                   Inner Join Sys_JobPost sjp On su.JobPostId = sjp.Id {0}", sqlWhere);
                                                   Inner Join Sys_JobPost sjp On su.JobPostId = sjp.Id {0}", sqlWhere);
-            var _userBasicInfo = await _sqlSugar.SqlQueryable<UserLoginInfoView>(userSqlWhere).FirstAsync();
+           
+
+            if (loginDto.PortType == 1) //web
+            {
+                var _userBasicInfo = await _sqlSugar.SqlQueryable<UserLoginInfoView>(userSqlWhere).FirstAsync();
+
+                longinData = _userBasicInfo;
+
+            }
+            else if (loginDto.PortType == 2) // Android
+            {
+                var _userBasicInfo = await _sqlSugar.SqlQueryable<UserLoginInfoView>(userSqlWhere).FirstAsync();
+                longinData = _userBasicInfo;
+            }
 
 
             result.Code = 0;
             result.Code = 0;
             result.Msg = "登录成功!";
             result.Msg = "登录成功!";
-            result.Data = _userBasicInfo;
+            result.Data = longinData;
             return result;
             return result;
 
 
         }
         }

+ 12 - 0
OASystem/OASystem.Infrastructure/Repositories/Resource/CarDataRepository.cs

@@ -0,0 +1,12 @@
+using OASystem.Domain.Entities.Resource;
+using OASystem.Domain.ViewModels.Resource;
+namespace OASystem.Infrastructure.Repositories.Resource
+{
+    public class CarDataRepository: BaseRepository<Res_CarData, CarDataView>
+    {
+        public CarDataRepository(SqlSugarClient sqlSugar) : base(sqlSugar)
+        {
+
+        }
+    }
+}

+ 10 - 1
OASystem/OASystem.Infrastructure/Repositories/System/JobPostRepository.cs

@@ -1,4 +1,5 @@
 using OASystem.Domain.Dtos.System;
 using OASystem.Domain.Dtos.System;
+using SqlSugar;
 using System;
 using System;
 using System.Collections.Generic;
 using System.Collections.Generic;
 using System.Linq;
 using System.Linq;
@@ -7,11 +8,19 @@ using System.Threading.Tasks;
 
 
 namespace OASystem.Infrastructure.Repositories.System
 namespace OASystem.Infrastructure.Repositories.System
 {
 {
-    public class JobPostRepository : BaseRepository<Sys_JobPost, QueryJobPostDto>
+    public class JobPostRepository : BaseRepository<Sys_JobPost, JobPostView>
     {
     {
         public JobPostRepository(SqlSugarClient sqlSugar) : base(sqlSugar)
         public JobPostRepository(SqlSugarClient sqlSugar) : base(sqlSugar)
         {
         {
 
 
         }
         }
+
+        public async Task<List<Sys_JobPostI>> QueryJobPost(string sqlWhere)
+        {
+            string sql = string.Format(@"select jp.*,dep.DepName as 'DepName',cmp.CompanyName as 'CompanyName' from Sys_JobPost jp left join 
+                                                 Sys_Company cmp on jp.CompanyId=cmp.Id left join Sys_Department dep on jp.DepId=dep.Id  {0}", sqlWhere);
+            return await _sqlSugar.SqlQueryable<Sys_JobPostI>(sql).ToListAsync();
+        }
+
     }
     }
 }
 }

+ 130 - 20
OASystem/OASystem.Infrastructure/Repositories/System/MessageRepository.cs

@@ -3,6 +3,7 @@ using OASystem.Domain.Dtos.System;
 using System;
 using System;
 using System.Collections.Generic;
 using System.Collections.Generic;
 using System.Linq;
 using System.Linq;
+using System.Security.Cryptography;
 using System.Text;
 using System.Text;
 using System.Threading.Tasks;
 using System.Threading.Tasks;
 
 
@@ -12,7 +13,6 @@ namespace OASystem.Infrastructure.Repositories.System
     {
     {
         public MessageRepository(SqlSugarClient sqlSugar) : base(sqlSugar) { }
         public MessageRepository(SqlSugarClient sqlSugar) : base(sqlSugar) { }
 
 
-
         /// <summary>
         /// <summary>
         /// 发布消息
         /// 发布消息
         /// </summary>
         /// </summary>
@@ -86,34 +86,144 @@ namespace OASystem.Infrastructure.Repositories.System
         }
         }
 
 
         /// <summary>
         /// <summary>
-        /// 获取消息 List
+        /// 获取消息列表
         /// </summary>
         /// </summary>
         /// <param name="uId">可读用户Id</param>
         /// <param name="uId">可读用户Id</param>
         /// <returns></returns>
         /// <returns></returns>
-        public async Task<Result> GetMsgList(int uId)
+        public async Task<Result> GetMsgList(MsgDto dto)
         {
         {
             Result result = new Result() { Code = -1, Msg = "未知错误", Data = null };
             Result result = new Result() { Code = -1, Msg = "未知错误", Data = null };
 
 
-            string msgSqlWhere = string.Format(@"Select sm.Type,sm.Title,sm.Content,sd.DepName issuerDep,su.CnName issuerUser, 
-                                                        sm.ReleaseTime,smra.Id AuthId,smra.ReadableUId,smra.IsRead,smra.ReadTime 
-                                                 From Sys_Message sm 
-                                                 Inner Join Sys_MessageReadAuth smra On sm.Id = smra.MsgId
-                                                 Inner Join Sys_Users su On sm.IssuerId = su.Id
-                                                 Inner Join Sys_Department sd On su.DepId = sd.Id
-                                                 Inner Join Sys_Users suAuth On smra.ReadableUId = suAuth.Id
-                                                 Where sm.IsDel = 0
-                                                 And smra.IsDel = 0 
-                                                 And smra.ReadableUId = {0}", uId);
-            var _readableMsgList = await _sqlSugar.SqlQueryable<ReadbleMessageView>(msgSqlWhere).ToListAsync();
-            if (_readableMsgList.Count > 0)
+            if (dto.PortType == 1 || dto.PortType == 2)  // web/android
             {
             {
-                result.Code = 0;
-                result.Msg = "成功!";
-                result.Data = _readableMsgList;
+                string msgSqlWhere = string.Format(@"Select sm.Type,sm.Title,sm.Content,sd.DepName issuerDep,su.CnName issuerUser, 
+                                                            sm.ReleaseTime,smra.Id AuthId,smra.ReadableUId,smra.IsRead,smra.ReadTime 
+                                                     From Sys_Message sm 
+                                                     Inner Join Sys_MessageReadAuth smra On sm.Id = smra.MsgId
+                                                     Inner Join Sys_Users su On sm.IssuerId = su.Id
+                                                     Inner Join Sys_Department sd On su.DepId = sd.Id
+                                                     Inner Join Sys_Users suAuth On smra.ReadableUId = suAuth.Id
+                                                     Where sm.IsDel = 0
+                                                     And smra.IsDel = 0 
+                                                     And smra.ReadableUId = {0}
+                                                     Order By ReleaseTime Desc ", dto.UserId);
+                var _readableMsgList = await _sqlSugar.SqlQueryable<ReadbleMessageView>(msgSqlWhere).ToListAsync();
+                if (_readableMsgList.Count > 0)
+                {
+                    result.Code = 0;
+                    result.Msg = "成功!";
+                    result.Data = _readableMsgList;
+                }
+                else
+                {
+                    result.Msg = "暂无该用户的消息!";
+                }
             }
             }
-            else
+
+            return result;
+        }
+
+        /// <summary>
+        /// 获取消息详细
+        /// </summary>
+        /// <param name="dto">msgInfo请求dto</param>
+        /// <returns></returns>
+        public async Task<Result> GetMsgInfo(MsgInfoDto dto)
+        {
+            Result result = new Result() { Code = -1, Msg = "未知错误", Data = null };
+
+            if (dto.PortType == 1 || dto.PortType == 2)
             {
             {
-                result.Msg = "暂无该用户消息";
+                string msgSqlWhere = string.Format(@"Select sm.Type,sc.CompanyName,sd.DepName,sjp.JobName,su.CnName,sm.ReleaseTime,
+	                                                        sm.Title,sm.Content,smra.IsRead,smra.ReadTime
+                                                     From Sys_Message sm
+                                                     Inner Join Sys_MessageReadAuth smra On sm.Id = smra.MsgId
+                                                     Inner Join Sys_Users su On sm.IssuerId = su.id
+                                                     Inner Join Sys_JobPost sjp On su.JobPostId = sjp.Id
+                                                     Inner Join Sys_Department sd On su.DepId = sd.Id
+                                                     Inner Join Sys_Company sc On su.CompanyId = sc.Id
+                                                     Where sm.IsDel = 0 
+                                                     And sm.Id = {0}
+                                                     And smra.IsDel = 0", dto.MsgId);
+                var _readableMsgInfo = await _sqlSugar.SqlQueryable<MessageInfoView>(msgSqlWhere).FirstAsync();
+                if (_readableMsgInfo != null)
+                {
+                    result.Code = 0;
+                    result.Msg = "成功!";
+                    result.Data = _readableMsgInfo;
+                }
+                else
+                {
+                    result.Msg = "暂无该用户的消息!";
+                }
+            }
+
+            return result;
+        }
+
+        /// <summary>
+        /// 消息设置已读
+        /// </summary>
+        /// <param name="dto"></param>
+        /// <returns></returns>
+        public async Task<Result> SetMsgRead(MsgSetReadDto dto)
+        {
+            Result result = new Result() { Code = -1, Msg = "未知错误", Data = null };
+
+            if (dto.PortType == 1 || dto.PortType == 2)
+            {
+
+                  var msgReadStatus = await _sqlSugar.Updateable<Sys_MessageReadAuth>()
+                                      .Where(a => a.Id == dto.MsgAnthId)
+                                      .SetColumns(a => new Sys_MessageReadAuth
+                                      {
+                                          IsRead = 1
+                                      }).ExecuteCommandAsync();
+
+                if (msgReadStatus > 0)
+                {
+                    result.Code = 0;
+                    result.Msg = "成功!";
+                }
+                else
+                {
+                    result.Msg = "失败!";
+                }
+            }
+
+            return result;
+        }
+
+        /// <summary>
+        /// 消息设置已读
+        /// </summary>
+        /// <param name="dto"></param>
+        /// <returns></returns>
+        public async Task<Result> DelMsg(MsgDeleteDto dto)
+        {
+            Result result = new Result() { Code = -1, Msg = "未知错误", Data = null };
+
+            if (dto.PortType == 1 || dto.PortType == 2)
+            {
+
+                var msgReadStatus = await _sqlSugar.Updateable<Sys_Message>()
+                                    .Where(a => a.Id == dto.MsgId)
+                                    .SetColumns(a => new Sys_Message
+                                    {
+                                        IsDel = 1,
+                                        DeleteUserId = dto.UserId,
+                                        DeleteTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")
+                                    }).ExecuteCommandAsync();
+
+                if (msgReadStatus > 0)
+                {
+                    result.Code = 0;
+                    result.Msg = "成功!";
+                }
+                else
+                {
+                    result.Msg = "操作失败!";
+                }
             }
             }
 
 
             return result;
             return result;

+ 11 - 1
OASystem/OASystem.Infrastructure/Repositories/System/UsersRepository.cs

@@ -2,6 +2,7 @@
 using OASystem.Domain;
 using OASystem.Domain;
 using OASystem.Domain.Entities.System;
 using OASystem.Domain.Entities.System;
 using OASystem.Domain.ViewModels.System;
 using OASystem.Domain.ViewModels.System;
+using SqlSugar;
 using StackExchange.Redis;
 using StackExchange.Redis;
 using System;
 using System;
 using System.Collections.Generic;
 using System.Collections.Generic;
@@ -112,7 +113,7 @@ namespace OASystem.Infrastructure.Repositories.System
         {
         {
             Result result = new Result() { Code = -2 };
             Result result = new Result() { Code = -2 };
 
 
-            if (portType == 1) //web
+            if (portType == 1 || portType == 2) //web
             {
             {
                 string sql = string.Format(@"Select Id,CnName From  Sys_Users");
                 string sql = string.Format(@"Select Id,CnName From  Sys_Users");
                 var _userList = await _sqlSugar.SqlQueryable<UserNameView>(sql).ToListAsync();
                 var _userList = await _sqlSugar.SqlQueryable<UserNameView>(sql).ToListAsync();
@@ -142,5 +143,14 @@ namespace OASystem.Infrastructure.Repositories.System
 
 
             return result;
             return result;
         }
         }
+        public async Task<List<UserInfo>> QueryUser(string sqlWhere)
+        {
+            string sql = string.Format(@"Select sc.CompanyName,sd.DepName,sjp.JobName,su.* From Sys_Users su 
+                                                        Inner Join Sys_Company sc On su.CompanyId = sc.Id
+                                                        Inner Join Sys_Department sd On su.DepId = sd.Id
+                                                        Inner Join Sys_JobPost sjp On su.JobPostId = sjp.Id {0}", sqlWhere);
+            return await _sqlSugar.SqlQueryable<UserInfo>(sql).ToListAsync();
+
+        }
     }
     }
 }
 }