Browse Source

导游地接资料(加密解密--> CRUD、其他相关接口代码更改、测试(本地、生产环境))

LEIYI 3 months ago
parent
commit
489e95c05d

+ 48 - 80
OASystem/OASystem.Api/Controllers/ResourceController.cs

@@ -237,6 +237,19 @@ namespace OASystem.API.Controllers
         #endregion
 
         #region 导游地接资料板块
+
+        [HttpPost]
+        [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)]
+        public async Task<IActionResult> LocalGuideBatchEncryption()
+        {
+            var infos = await _sqlSugar.Queryable<Res_LocalGuideData>().ToListAsync();
+            foreach (var item in infos) EncryptionProcessor.EncryptProperties(item);
+
+            var updTotal = await _sqlSugar.Updateable(infos).ExecuteCommandAsync();
+
+            return Ok(JsonView(true));
+        }
+
         /// <summary>
         /// 导游地接资料查询
         /// </summary>
@@ -246,26 +259,13 @@ namespace OASystem.API.Controllers
         [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)]
         public async Task<IActionResult> QueryLocalGuide(QueryLocalGuide dto)
         {
-            try
-            {
-                Result LocalGuide = await _localGuideDataRep.QueryLocalGuide(dto);
-                if (LocalGuide.Code == 0)
-                {
-                    return Ok(JsonView(true, "查询成功", LocalGuide.Data));
-                }
-                else
-                {
-                    return Ok(JsonView(false, LocalGuide.Msg));
-                }
-
-            }
-            catch (Exception ex)
+            Result LocalGuide = await _localGuideDataRep.QueryLocalGuide(dto);
+            if (LocalGuide.Code == 0)
             {
-                return Ok(JsonView(false, "程序错误!"));
-                throw;
+                return Ok(JsonView(true, "查询成功", LocalGuide.Data));
             }
-
-
+            
+            return Ok(JsonView(false, LocalGuide.Msg));
         }
 
         /// <summary>
@@ -276,31 +276,26 @@ namespace OASystem.API.Controllers
         [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)]
         public async Task<IActionResult> QueryLocalGuideSelect()
         {
-            try
+            var localGuides = _carDataRep.QueryDto<Res_LocalGuideData, QueryLocalGuideSelectView>().ToList();
+            if (localGuides.Count == 0)
             {
-                var LocalGuide = _carDataRep.QueryDto<Res_LocalGuideData, QueryLocalGuideSelectView>().ToList();
-                if (LocalGuide.Count == 0)
-                {
-                    return Ok(JsonView(false, "暂无数据!"));
-                }
-                LocalGuide.Add(new QueryLocalGuideSelectView { Id = 0, UnitArea = "全部" });
-                LocalGuide = LocalGuide.Where((x, i) => LocalGuide.FindIndex(z => z.UnitArea == x.UnitArea && z.UnitArea != "") == i).ToList();
-                LocalGuide = LocalGuide.OrderBy(x => x.Id).ToList();
-                List<QueryLocalGuideSelectView> data = new List<QueryLocalGuideSelectView>();
-                foreach (QueryLocalGuideSelectView Local in LocalGuide)
-                {
-                    if (!string.IsNullOrWhiteSpace(Local.UnitArea))
-                    {
-                        data.Add(Local);
-                    }
-                }
-                return Ok(JsonView(true, "查询成功", data));
+                return Ok(JsonView(false, "暂无数据!"));
             }
-            catch (Exception)
+
+            foreach (var item in localGuides) EncryptionProcessor.DecryptProperties(item);
+
+            localGuides.Add(new QueryLocalGuideSelectView { Id = 0, UnitArea = "全部" });
+            localGuides = localGuides.Where((x, i) => localGuides.FindIndex(z => z.UnitArea == x.UnitArea && !string.IsNullOrEmpty(z.UnitArea)) == i).ToList();
+            localGuides = localGuides.OrderBy(x => x.Id).ToList();
+            var data = new List<QueryLocalGuideSelectView>();
+            foreach (QueryLocalGuideSelectView Local in localGuides)
             {
-                return Ok(JsonView(false, "程序错误!"));
-                throw;
+                if (!string.IsNullOrWhiteSpace(Local.UnitArea))
+                {
+                    data.Add(Local);
+                }
             }
+            return Ok(JsonView(true, "查询成功", data));
         }
 
         /// <summary>
@@ -312,11 +307,12 @@ namespace OASystem.API.Controllers
         public async Task<IActionResult> QueryLocalGuideDetailById(QueryLocalGuideDetailDto dto)
         {
             string sql = string.Format(@" Select * From Res_LocalGuideData With(Nolock) Where Id = {0} ", dto.Id);
-            LocalGuideDetailDataView info = _resItemInfoRep._sqlSugar.SqlQueryable<LocalGuideDetailDataView>(sql).First();
+            var info = _resItemInfoRep._sqlSugar.SqlQueryable<LocalGuideDetailDataView>(sql).First();
             if (info == null)
             {
                 return Ok(JsonView(false, "未找到相关数据!"));
             }
+            EncryptionProcessor.DecryptProperties(info);
 
             return Ok(JsonView(true, "查询成功", info));
         }
@@ -329,37 +325,17 @@ namespace OASystem.API.Controllers
         [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)]
         public async Task<IActionResult> OperationLocalGuide(LocalGuideOperationDto 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, "请检查联系方式是否填写正确!"));
-                }
+            if (string.IsNullOrEmpty(dto.UnitArea)) return Ok(JsonView(false, "请检查单位区域是否填写!"));
+            if (string.IsNullOrEmpty(dto.UnitName)) return Ok(JsonView(false, "请检查单位名称是否填写!"));
+            if (string.IsNullOrEmpty(dto.Contact)) return Ok(JsonView(false, "请检查单位联系人是否填写!"));
+            if (string.IsNullOrEmpty(dto.ContactTel)) return Ok(JsonView(false, "请检查联系方式是否填写正确!"));
 
-                Result result = await _localGuideDataRep.LocalGuideOperation(dto);
-                if (result.Code != 0)
-                {
-                    return Ok(JsonView(false, result.Msg));
-                }
-                return Ok(JsonView(true, result.Msg));
-            }
-            catch (Exception ex)
+            Result result = await _localGuideDataRep.LocalGuideOperation(dto);
+            if (result.Code != 0)
             {
-                return Ok(JsonView(false, "程序错误!"));
-                throw;
+                return Ok(JsonView(false, result.Msg));
             }
+            return Ok(JsonView(true, result.Msg));
         }
 
         /// <summary>
@@ -370,20 +346,12 @@ namespace OASystem.API.Controllers
         [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)]
         public async Task<IActionResult> DelLocalGuide(LocalGuideDelDto dto)
         {
-            try
-            {
-                var res = await _localGuideDataRep.SoftDeleteByIdAsync<Res_LocalGuideData>(dto.Id.ToString(), dto.DeleteUserId);
-                if (!res)
-                {
-                    return Ok(JsonView(false, "删除失败"));
-                }
-                return Ok(JsonView(true, "删除成功!"));
-            }
-            catch (Exception ex)
+            var res = await _localGuideDataRep.SoftDeleteByIdAsync<Res_LocalGuideData>(dto.Id.ToString(), dto.DeleteUserId);
+            if (!res)
             {
-                return Ok(JsonView(false, "程序错误!"));
-                throw;
+                return Ok(JsonView(false, "删除失败"));
             }
+            return Ok(JsonView(true, "删除成功!"));
         }
         #endregion
 

+ 10 - 10
OASystem/OASystem.Domain/Entities/Resource/Res_CarData.cs

@@ -24,7 +24,7 @@ namespace OASystem.Domain.Entities.Resource
         /// 公司名称
         /// </summary>
         [Encrypted]
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(100)")]
+        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(300)")]
         public string UnitName { get; set; }
 
         /// <summary>
@@ -95,7 +95,7 @@ namespace OASystem.Domain.Entities.Resource
         /// A B C  选择
         /// </summary>
         [Encrypted]
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(10)")]
+        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(50)")]
         public string QualificationScore { get; set; }
 
         /// <summary>
@@ -103,7 +103,7 @@ namespace OASystem.Domain.Entities.Resource
         /// A B C  选择
         /// </summary>
         [Encrypted]
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(10)")]
+        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(50)")]
         public string CarAgeScore { get; set; }
 
         /// <summary>
@@ -111,7 +111,7 @@ namespace OASystem.Domain.Entities.Resource
         /// A B C  选择
         /// </summary>
         [Encrypted]
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(10)")]
+        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(50)")]
         public string CleanImgScore { get; set; }
 
         /// <summary>
@@ -119,7 +119,7 @@ namespace OASystem.Domain.Entities.Resource
         /// A B C  选择
         /// </summary>
         [Encrypted]
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(10)")]
+        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(50)")]
         public string SmellScore { get; set; }
 
         /// <summary>
@@ -127,7 +127,7 @@ namespace OASystem.Domain.Entities.Resource
         /// A B C  选择
         /// </summary>
         [Encrypted]
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(10)")]
+        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(50)")]
         public string WaterPaperScore { get; set; }
 
         /// <summary>
@@ -135,7 +135,7 @@ namespace OASystem.Domain.Entities.Resource
         /// A B C  选择
         /// </summary>
         [Encrypted]
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(10)")]
+        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(50)")]
         public string HardwareScore { get; set; }
 
         /// <summary>
@@ -143,7 +143,7 @@ namespace OASystem.Domain.Entities.Resource
         /// A B C  选择
         /// </summary>
         [Encrypted]
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(10)")]
+        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(50)")]
         public string TimeScore { get; set; }
 
         /// <summary>
@@ -151,7 +151,7 @@ namespace OASystem.Domain.Entities.Resource
         /// A B C  选择
         /// </summary>
         [Encrypted]
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(10)")]
+        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(50)")]
         public string SafetyScore { get; set; }
 
         /// <summary>
@@ -159,7 +159,7 @@ namespace OASystem.Domain.Entities.Resource
         /// A B C  选择
         /// </summary>
         [Encrypted]
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(10)")]
+        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(50)")]
         public string DrivingAgeScore { get; set; }
     }
 }

+ 33 - 17
OASystem/OASystem.Domain/Entities/Resource/Res_LocalGuideData.cs

@@ -1,4 +1,5 @@
-using System;
+using OASystem.Domain.Attributes;
+using System;
 using System.Collections.Generic;
 using System.Linq;
 using System.Text;
@@ -16,49 +17,57 @@ namespace OASystem.Domain.Entities.Resource
         /// <summary>
         /// 区域
         /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(100)")]
+        [Encrypted]
+        [SugarColumn(IsNullable = true, ColumnDataType = "nvarchar(200)")]
         public string UnitArea { get; set; }
 
         /// <summary>
         /// 公司名称
         /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(100)")]
+        [Encrypted]
+        [SugarColumn(IsNullable = true, ColumnDataType = "nvarchar(200)")]
         public string UnitName { get; set; }
 
         /// <summary>
         /// 地址
         /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(225)")]
+        [Encrypted]
+        [SugarColumn(IsNullable = true, ColumnDataType = "nvarchar(500)")]
         public string Address { get; set; }
 
         /// <summary>
         /// 联系人
         /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(50)")]
+        [Encrypted]
+        [SugarColumn(IsNullable = true, ColumnDataType = "nvarchar(100)")]
         public string Contact { get; set; }
 
         /// <summary>
         /// 联系人手机号
         /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(50)")]
+        [Encrypted]
+        [SugarColumn(IsNullable = true, ColumnDataType = "nvarchar(100)")]
         public string ContactTel { get; set; }
 
         /// <summary>
         /// 联系人邮箱
         /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(50)")]
+        [Encrypted]
+        [SugarColumn(IsNullable = true, ColumnDataType = "nvarchar(100)")]
         public string ContactEmail { get; set; }
 
         /// <summary>
         /// 联系人传真
         /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(50)")]
+        [Encrypted]
+        [SugarColumn(IsNullable = true, ColumnDataType = "nvarchar(100)")]
         public string ContactFax { get; set; }
 
         /// <summary>
         /// 其他信息
         /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(500)")]
+        [Encrypted]
+        [SugarColumn(IsNullable = true, ColumnDataType = "nvarchar(max)")]
         public string OtherInfo { get; set; }
 
         /// <summary>
@@ -71,49 +80,56 @@ namespace OASystem.Domain.Entities.Resource
         /// 着装得体
         /// A B C  选择
         /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(10)")]
+        [Encrypted]
+        [SugarColumn(IsNullable = true, ColumnDataType = "nvarchar(50)")]
         public string SuitScore { get; set; }
 
         /// <summary>
         /// 服务意识强度
         /// A B C  选择
         /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(10)")]
+        [Encrypted]
+        [SugarColumn(IsNullable = true, ColumnDataType = "nvarchar(50)")]
         public string ServeScore { get; set; }
 
         /// <summary>
         /// 讲解水平专业
         /// A B C  选择
         /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(10)")]
+        [Encrypted]
+        [SugarColumn(IsNullable = true, ColumnDataType = "nvarchar(50)")]
         public string TalkProScore { get; set; }
 
         /// <summary>
         /// 时间概念强度
         /// A B C  选择
         /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(10)")]
+        [Encrypted]
+        [SugarColumn(IsNullable = true, ColumnDataType = "nvarchar(50)")]
         public string TimeScore { get; set; }
 
         /// <summary>
         /// 配合能力强,服从安排
         /// A B C  选择
         /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(10)")]
+        [Encrypted]
+        [SugarColumn(IsNullable = true, ColumnDataType = "nvarchar(50)")]
         public string FitScore { get; set; }
 
         /// <summary>
         /// 应变能力强
         /// A B C  选择
         /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(10)")]
+        [Encrypted]
+        [SugarColumn(IsNullable = true, ColumnDataType = "nvarchar(50)")]
         public string StrainScore { get; set; }
 
         /// <summary>
         /// 当地语言和中文表达流畅
         /// A B C  选择
         /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(10)")]
+        [Encrypted]
+        [SugarColumn(IsNullable = true, ColumnDataType = "nvarchar(50)")]
         public string LocalAndChineseScore { get; set; }
 
         /// <summary>
@@ -123,6 +139,6 @@ namespace OASystem.Domain.Entities.Resource
         public int StaffType { get; set; }
 
         [SugarColumn(IsNullable = true, ColumnDataType = "dateTime")]
-        public DateTime LastUpdate { get; set; }
+        public DateTime LastUpdate { get; set; } = DateTime.Now;
     }
 }

+ 18 - 1
OASystem/OASystem.Domain/ViewModels/Resource/LocalGuideDataView.cs

@@ -1,4 +1,5 @@
-using OASystem.Domain.Entities.Resource;
+using OASystem.Domain.Attributes;
+using OASystem.Domain.Entities.Resource;
 using System;
 using System.Collections.Generic;
 using System.Linq;
@@ -13,6 +14,7 @@ namespace OASystem.Domain.ViewModels.Resource
     public class QueryLocalGuideSelectView
     {
         public int Id { get; set; }
+        [Encrypted]
         public string UnitArea { get; set; }
     }
 
@@ -33,83 +35,98 @@ namespace OASystem.Domain.ViewModels.Resource
         /// <summary>
         /// 区域
         /// </summary>
+        [Encrypted]
         public string UnitArea { get; set; }
 
         /// <summary>
         /// 公司名称
         /// </summary>
+        [Encrypted]
         public string UnitName { get; set; }
 
         /// <summary>
         /// 地址
         /// </summary>
+        [Encrypted]
         public string Address { get; set; }
 
         /// <summary>
         /// 联系人
         /// </summary>
+        [Encrypted]
         public string Contact { get; set; }
 
         /// <summary>
         /// 联系人手机号
         /// </summary>
+        [Encrypted]
         public string ContactTel { get; set; }
 
         /// <summary>
         /// 联系人邮箱
         /// </summary>
+        [Encrypted]
         public string ContactEmail { get; set; }
 
         /// <summary>
         /// 联系人传真
         /// </summary>
+        [Encrypted]
         public string ContactFax { get; set; }
 
         /// <summary>
         /// 其他信息
         /// </summary>
+        [Encrypted]
         public string OtherInfo { get; set; }
 
         /// <summary>
         /// 着装得体
         /// A B C  选择
         /// </summary>
+        [Encrypted]
         public string SuitScore { get; set; }
 
         /// <summary>
         /// 服务意识强度
         /// A B C  选择
         /// </summary>
+        [Encrypted]
         public string ServeScore { get; set; }
 
         /// <summary>
         /// 讲解水平专业
         /// A B C  选择
         /// </summary>
+        [Encrypted]
         public string TalkProScore { get; set; }
 
         /// <summary>
         /// 时间概念强度
         /// A B C  选择
         /// </summary>
+        [Encrypted]
         public string TimeScore { get; set; }
 
         /// <summary>
         /// 配合能力强,服从安排
         /// A B C  选择
         /// </summary>
+        [Encrypted]
         public string FitScore { get; set; }
 
         /// <summary>
         /// 应变能力强
         /// A B C  选择
         /// </summary>
+        [Encrypted]
         public string StrainScore { get; set; }
 
         /// <summary>
         /// 当地语言和中文表达流畅
         /// A B C  选择
         /// </summary>
+        [Encrypted]
         public string LocalAndChineseScore { get; set; }
     }
 }

+ 6 - 1
OASystem/OASystem.Domain/ViewModels/Resource/Res_LocalGuideData_ListItemView.cs

@@ -1,4 +1,5 @@
-using System;
+using OASystem.Domain.Attributes;
+using System;
 using System.Collections.Generic;
 using System.Linq;
 using System.Text;
@@ -16,21 +17,25 @@ namespace OASystem.Domain.ViewModels.Resource
         /// <summary>
         /// 单位区域
         /// </summary>
+        [Encrypted]
         public string UnitArea { get; set; }
 
         /// <summary>
         /// 单位名称
         /// </summary>
+        [Encrypted]
         public string UnitName { get; set; }
 
         /// <summary>
         /// 联系人
         /// </summary>
+        [Encrypted]
         public string Contact { get; set; }
 
         /// <summary>
         /// 联系电话
         /// </summary>
+        [Encrypted]
         public string ContactTel { get; set; }
 
         /// <summary>

+ 161 - 218
OASystem/OASystem.Infrastructure/Repositories/Resource/LocalGuideDataRepository.cs

@@ -1,5 +1,6 @@
 using AutoMapper;
 using OASystem.Domain;
+using OASystem.Domain.AesEncryption;
 using OASystem.Domain.Dtos.Resource;
 using OASystem.Domain.Entities.Groups;
 using OASystem.Domain.Entities.Resource;
@@ -22,268 +23,210 @@ namespace OASystem.Infrastructure.Repositories.Resource
         }
         public async Task<Result> LocalGuideOperation(LocalGuideOperationDto dto)
         {
-            Result result = new Result() { Code = -2, Msg = "未知错误" };
-            try
-            {
-                if (dto.Status == 1)//添加
-                {
-                    string selectSql = string.Format(@"select * from Res_LocalGuideData where UnitArea='{0}' and UnitName='{1}' and Contact='{2}' and ContactTel='{3}'"
-                                                       , dto.UnitArea, dto.UnitName, dto.Contact, dto.ContactTel);
-                    var LocalGuideData = await _sqlSugar.SqlQueryable<Res_LocalGuideData>(selectSql).FirstAsync();//查询是否存在
-                    if (LocalGuideData != null)
-                    {
-                        return result = new Result() { Code = -1, Msg = "该信息已存在,请勿重复添加!" };
-
-                    }
-                    else//不存在,可添加
-                    {
-                        Res_LocalGuideData _LocalGuideDat = _mapper.Map<Res_LocalGuideData>(dto);
-                        _LocalGuideDat.LastUpdate = DateTime.Now;
-                        int id = await AddAsyncReturnId(_LocalGuideDat);
-                        if (id == 0)
-                        {
-                            return result = new Result() { Code = -1, Msg = "添加失败!" };
+            var localGuideDat = _mapper.Map<Res_LocalGuideData>(dto);
+            localGuideDat.LastUpdate = DateTime.Now;
+            EncryptionProcessor.EncryptProperties(localGuideDat);
 
-                        }
-                        result = new Result() { Code = 0, Msg = "添加成功!", Data = new { Id = id } };
-                    }
-                }
-                else if (dto.Status == 2)//修改
-                {
-                    DateTime dtLastUpdate = DateTime.Now;
-                    bool res = await UpdateAsync(a => a.Id == dto.Id, a => new Res_LocalGuideData
-                    {
-                        UnitArea = dto.UnitArea,
-                        UnitName = dto.UnitName,
-                        Address = dto.Address,
-                        Contact = dto.Contact,
-                        ContactTel = dto.ContactTel,
-                        ContactEmail = dto.ContactEmail,
-                        ContactFax = dto.ContactFax,
-                        OtherInfo = dto.OtherInfo,
-                        Score = dto.Score,
-                        SuitScore = dto.SuitScore,
-                        ServeScore = dto.ServeScore,
-                        TalkProScore = dto.TalkProScore,
-                        TimeScore = dto.TimeScore,
-                        FitScore = dto.FitScore,
-                        StrainScore = dto.StrainScore,
-                        LocalAndChineseScore = dto.LocalAndChineseScore,
-                        StaffType = dto.StaffType,
-                        Remark = dto.Remark,
-                        LastUpdate = dtLastUpdate
-                    });
-                    if (!res)
-                    {
-                        return result = new Result() { Code = -1, Msg = "修改失败!" };
-                    }
-                    result = new Result() { Code = 0, Msg = "修改成功!" };
-                }
-                else
+            if (dto.Status == 1)//添加
+            {
+                string selectSql = string.Format(@"select * from Res_LocalGuideData where UnitArea='{0}' and UnitName='{1}' and Contact='{2}' and ContactTel='{3}'",
+                                                   AesEncryptionHelper.Encrypt(dto.UnitArea),
+                                                   AesEncryptionHelper.Encrypt(dto.UnitName),
+                                                   AesEncryptionHelper.Encrypt(dto.Contact),
+                                                   AesEncryptionHelper.Encrypt(dto.ContactTel));
+                var LocalGuideData = await _sqlSugar.SqlQueryable<Res_LocalGuideData>(selectSql).FirstAsync();//查询是否存在
+                if (LocalGuideData != null) return new Result() { Code = -1, Msg = "该信息已存在,请勿重复添加!" };
+                else//不存在,可添加
                 {
-                    return result = new Result() { Code = -1, Msg = "请传入Status参数,1添加 2修改!" };
+                    int id = await AddAsyncReturnId(localGuideDat);
+                    if (id == 0) return new Result() { Code = -1, Msg = "添加失败!" };
+                    return new Result() { Code = 0, Msg = "添加成功!", Data = new { Id = id } };
                 }
             }
-            catch (Exception ex)
+            else if (dto.Status == 2)//修改
             {
-                return result = new Result() { Code = -2, Msg = "程序错误!" };
+                var res = await _sqlSugar.Updateable(localGuideDat).IgnoreColumns(x => new { x.IsDel, x.CreateUserId, x.CreateTime, x.DeleteUserId, x.DeleteTime }).ExecuteCommandAsync();
+
+                if (res < 1)
+                {
+                    return new Result() { Code = -1, Msg = "修改失败!" };
+                }
+                return new Result() { Code = 0, Msg = "修改成功!" };
             }
-            return result;
+
+            return new Result() { Code = -1, Msg = "请传入Status参数,1添加 2修改!" };
         }
 
         public async Task<Result> QueryLocalGuide(QueryLocalGuide dto)
         {
             Result result = new Result() { Code = -2, Msg = "未知错误" };
-            try
+            string sqlWhere = string.Empty;
+            if (!string.IsNullOrWhiteSpace(dto.UnitName)) sqlWhere += string.Format(@" And UnitName like '%{0}%'", dto.UnitName);
+            if (!string.IsNullOrWhiteSpace(dto.UnitArea) && dto.UnitArea != "全部") sqlWhere += string.Format(@" And UnitArea like '%{0}%'", dto.UnitArea);
+            if (!string.IsNullOrWhiteSpace(dto.Contact)) sqlWhere += string.Format(@" And Contact like '%{0}%'", dto.Contact);
+            if (!string.IsNullOrWhiteSpace(dto.ContactTel)) sqlWhere += string.Format(@" And ContactTel like '%{0}%'", dto.ContactTel);
+            sqlWhere += string.Format(@" And IsDel={0}", 0);
+            if (!string.IsNullOrEmpty(sqlWhere.Trim()))
             {
-                string sqlWhere = string.Empty;
-                if (!string.IsNullOrWhiteSpace(dto.UnitName))
-                {
-                    sqlWhere += string.Format(@" And UnitName like '%{0}%'", dto.UnitName);
-                }
-                if (!string.IsNullOrWhiteSpace(dto.UnitArea) && dto.UnitArea != "全部")
-                {
-                    sqlWhere += string.Format(@" And UnitArea like '%{0}%'", dto.UnitArea);
-                }
-                if (!string.IsNullOrWhiteSpace(dto.Contact))
-                {
-                    sqlWhere += string.Format(@" And Contact like '%{0}%'", dto.Contact);
-                }
-                if (!string.IsNullOrWhiteSpace(dto.ContactTel))
+                Regex r = new Regex("And");
+                sqlWhere = r.Replace(sqlWhere, "Where", 1);
+            }
+            if (dto.PortType == 1)
+            {
+                string sql = string.Format(@"select * from Res_LocalGuideData {0}", sqlWhere);
+                var localGuideData = await _sqlSugar.SqlQueryable<Res_LocalGuideData>(sql).ToListAsync();
+                if (localGuideData.Count == 0)
                 {
-                    sqlWhere += string.Format(@" And ContactTel like '%{0}%'", dto.ContactTel);
+                    return result = new Result() { Code = 0, Msg = "暂无数据" };
                 }
-                sqlWhere += string.Format(@" And IsDel={0}", 0);
-                if (!string.IsNullOrEmpty(sqlWhere.Trim()))
+                localGuideData = localGuideData.OrderByDescending(x => x.CreateTime).ToList();
+
+                if (dto.PageSize == 0 || dto.PageIndex == 0)
                 {
-                    Regex r = new Regex("And");
-                    sqlWhere = r.Replace(sqlWhere, "Where", 1);
+                    foreach (var item in localGuideData) EncryptionProcessor.DecryptProperties(item);
+
+                    return result = new Result()
+                    {
+                        Code = 0,
+                        Msg = "查询成功",
+                        Data = localGuideData,
+                    };
                 }
-                if (dto.PortType == 1)
+                else
                 {
-                    string sql = string.Format(@"select * from Res_LocalGuideData {0}", sqlWhere);
-                    List<Res_LocalGuideData> LocalGuideData = await _sqlSugar.SqlQueryable<Res_LocalGuideData>(sql).ToListAsync();
-                    if (LocalGuideData.Count == 0)
-                    {
-                        return result = new Result() { Code = 0, Msg = "暂无数据" };
-                    }
-                    LocalGuideData = LocalGuideData.OrderByDescending(x => x.CreateTime).ToList();
+                    int count = localGuideData.Count;
+                    float totalPage = (float)count / dto.PageSize;//总页数
+                    if (totalPage == 0) totalPage = 1;
+                    else totalPage = (int)Math.Ceiling((double)totalPage);
 
-                    if (dto.PageSize == 0 || dto.PageIndex == 0)
+                    List<Res_LocalGuideData> ListData = new List<Res_LocalGuideData>();
+                    for (int i = 0; i < dto.PageSize; i++)
                     {
-                        return result = new Result()
+                        var RowIndex = i + (dto.PageIndex - 1) * dto.PageSize;
+                        if (RowIndex < localGuideData.Count)
                         {
-                            Code = 0,
-                            Msg = "查询成功",
-                            Data = LocalGuideData,
-                        };
+                            EncryptionProcessor.DecryptProperties(localGuideData[RowIndex]);
+                            ListData.Add(localGuideData[RowIndex]);
+                        }
+                        else break;
                     }
-                    else
+                    return result = new Result()
                     {
-                        int count = LocalGuideData.Count;
-                        float totalPage = (float)count / dto.PageSize;//总页数
-                        if (totalPage == 0) totalPage = 1;
-                        else totalPage = (int)Math.Ceiling((double)totalPage);
+                        Code = 0,
+                        Msg = "查询成功",
+                        Data = new { pageCount = count, totalPage = (int)totalPage, pageIndex = dto.PageIndex, pageSize = dto.PageSize, pageSource = ListData },
+                    };
+                }
 
-                        List<Res_LocalGuideData> ListData = new List<Res_LocalGuideData>();
-                        for (int i = 0; i < dto.PageSize; i++)
-                        {
-                            var RowIndex = i + (dto.PageIndex - 1) * dto.PageSize;
-                            if (RowIndex < LocalGuideData.Count)
-                            {
-                                ListData.Add(LocalGuideData[RowIndex]);
-                            }
-                            else
-                            {
-                                break;
-                            }
-                        }
-                        return result = new Result()
-                        {
-                            Code = 0,
-                            Msg = "查询成功",
-                            Data = new { pageCount = count, totalPage = (int)totalPage, pageIndex = dto.PageIndex, pageSize = dto.PageSize, pageSource = ListData },
-                        };
-                    }
+            }
+            else if (dto.PortType == 2)
+            {
+                string sql = string.Format(@"select * from Res_LocalGuideData {0}", sqlWhere);
+                var localGuideData = await _sqlSugar.SqlQueryable<Res_LocalGuideData>(sql).ToListAsync();
+                //2024-05-11 修改,取消该判断,避免前端报错
+                //if (LocalGuideData.Count == 0)
+                //{
+                //    return result = new Result() { Code = 0, Msg = "暂无数据" };
+                //}
+                localGuideData = localGuideData.OrderByDescending(x => x.CreateTime).ToList();
 
+                if (dto.PageSize == 0 && dto.PageIndex == 0)
+                {
+                    foreach (var item in localGuideData) EncryptionProcessor.DecryptProperties(item);
+                    return result = new Result()
+                    {
+                        Code = 0,
+                        Msg = "查询成功",
+                        Data = localGuideData,
+                    };
                 }
-                else if (dto.PortType == 2)
+                else
                 {
-                    string sql = string.Format(@"select * from Res_LocalGuideData {0}", sqlWhere);
-                    List<Res_LocalGuideData> LocalGuideData = await _sqlSugar.SqlQueryable<Res_LocalGuideData>(sql).ToListAsync();
-                    //2024-05-11 修改,取消该判断,避免前端报错
-                    //if (LocalGuideData.Count == 0)
-                    //{
-                    //    return result = new Result() { Code = 0, Msg = "暂无数据" };
-                    //}
-                    LocalGuideData = LocalGuideData.OrderByDescending(x => x.CreateTime).ToList();
+                    int count = localGuideData.Count;
+                    float totalPage = (float)count / dto.PageSize;//总页数
+                    if (totalPage == 0) totalPage = 1;
+                    else totalPage = (int)Math.Ceiling((double)totalPage);
 
-                    if (dto.PageSize == 0 && dto.PageIndex == 0)
-                    {
-                        return result = new Result()
-                        {
-                            Code = 0,
-                            Msg = "查询成功",
-                            Data = LocalGuideData,
-                        };
-                    }
-                    else
+                    List<Res_LocalGuideData> ListData = new List<Res_LocalGuideData>();
+                    for (int i = 0; i < dto.PageSize; i++)
                     {
-                        int count = LocalGuideData.Count;
-                        float totalPage = (float)count / dto.PageSize;//总页数
-                        if (totalPage == 0) totalPage = 1;
-                        else totalPage = (int)Math.Ceiling((double)totalPage);
-
-                        List<Res_LocalGuideData> ListData = new List<Res_LocalGuideData>();
-                        for (int i = 0; i < dto.PageSize; i++)
+                        var RowIndex = i + (dto.PageIndex - 1) * dto.PageSize;
+                        if (RowIndex < localGuideData.Count)
                         {
-                            var RowIndex = i + (dto.PageIndex - 1) * dto.PageSize;
-                            if (RowIndex < LocalGuideData.Count)
-                            {
-                                ListData.Add(LocalGuideData[RowIndex]);
-                            }
-                            else
-                            {
-                                break;
-                            }
+                            EncryptionProcessor.DecryptProperties(localGuideData[RowIndex]);
+                            ListData.Add(localGuideData[RowIndex]);
                         }
-                        return result = new Result()
+                        else
                         {
-                            Code = 0,
-                            Msg = "查询成功",
-                            Data = new { pageCount = count, totalPage = (int)totalPage, pageIndex = dto.PageIndex, pageSize = dto.PageSize, pageSource = ListData },
-                        };
+                            break;
+                        }
                     }
+                    return result = new Result()
+                    {
+                        Code = 0,
+                        Msg = "查询成功",
+                        Data = new { pageCount = count, totalPage = (int)totalPage, pageIndex = dto.PageIndex, pageSize = dto.PageSize, pageSource = ListData },
+                    };
                 }
-                else if (dto.PortType == 3)
+            }
+            else if (dto.PortType == 3)
+            {
+                string sql = string.Format(@"select Id,UnitArea,UnitName,Contact,ContactTel,Score,LastUpdate from Res_LocalGuideData {0}", sqlWhere);
+                var localGuideData = await _sqlSugar.SqlQueryable<Res_LocalGuideData>(sql).ToListAsync();
+                if (localGuideData.Count == 0)
                 {
-                    string sql = string.Format(@"select Id,UnitArea,UnitName,Contact,ContactTel,Score,LastUpdate from Res_LocalGuideData {0}", sqlWhere);
-                    List<Res_LocalGuideData> LocalGuideData = await _sqlSugar.SqlQueryable<Res_LocalGuideData>(sql).ToListAsync();
-                    if (LocalGuideData.Count == 0)
-                    {
-                        return result = new Result() { Code = 0, Msg = "暂无数据" };
-                    }
-                    LocalGuideData = LocalGuideData.OrderByDescending(x => x.CreateTime).ToList();
+                    return result = new Result() { Code = 0, Msg = "暂无数据" };
+                }
+                localGuideData = localGuideData.OrderByDescending(x => x.CreateTime).ToList();
 
-                    if (dto.PageSize == 0 && dto.PageIndex == 0)
-                    {
-                        return result = new Result()
-                        {
-                            Code = 0,
-                            Msg = "查询成功",
-                            Data = LocalGuideData,
-                        };
-                    }
-                    else
+                if (dto.PageSize == 0 && dto.PageIndex == 0)
+                {
+                    foreach (var item in localGuideData) EncryptionProcessor.DecryptProperties(item);
+                    return result = new Result()
                     {
-                        int count = LocalGuideData.Count;
-                        float totalPage = (float)count / dto.PageSize;//总页数
-                        if (totalPage == 0) totalPage = 1;
-                        else totalPage = (int)Math.Ceiling((double)totalPage);
+                        Code = 0,
+                        Msg = "查询成功",
+                        Data = localGuideData,
+                    };
+                }
+                else
+                {
+                    int count = localGuideData.Count;
+                    float totalPage = (float)count / dto.PageSize;//总页数
+                    if (totalPage == 0) totalPage = 1;
+                    else totalPage = (int)Math.Ceiling((double)totalPage);
 
-                        List<Res_LocalGuideData_ListItemView> ListData = new List<Res_LocalGuideData_ListItemView>();
-                        for (int i = 0; i < dto.PageSize; i++)
+                    var ListData = new List<Res_LocalGuideData_ListItemView>();
+                    for (int i = 0; i < dto.PageSize; i++)
+                    {
+                        var RowIndex = i + (dto.PageIndex - 1) * dto.PageSize;
+                        if (RowIndex < localGuideData.Count)
                         {
-                            var RowIndex = i + (dto.PageIndex - 1) * dto.PageSize;
-                            if (RowIndex < LocalGuideData.Count)
+                            var temp = new Res_LocalGuideData_ListItemView()
                             {
-                                Res_LocalGuideData_ListItemView temp = new Res_LocalGuideData_ListItemView()
-                                {
-                                    Contact = LocalGuideData[RowIndex].Contact,
-                                    ContactTel = LocalGuideData[RowIndex].ContactTel,
-                                    Id = LocalGuideData[RowIndex].Id,
-                                    Score = LocalGuideData[RowIndex].Score,
-                                    UnitArea = LocalGuideData[RowIndex].UnitArea,
-                                    UnitName = LocalGuideData[RowIndex].UnitName
-                                };
-                                temp.LastUpdateStr = LocalGuideData[RowIndex].CreateTime.ToString("yyyy-MM-dd");
-
-                                ListData.Add(temp);
-                            }
-                            else
-                            {
-                                break;
-                            }
+                                Contact = localGuideData[RowIndex].Contact,
+                                ContactTel = localGuideData[RowIndex].ContactTel,
+                                Id = localGuideData[RowIndex].Id,
+                                Score = localGuideData[RowIndex].Score,
+                                UnitArea = localGuideData[RowIndex].UnitArea,
+                                UnitName = localGuideData[RowIndex].UnitName
+                            };
+                            temp.LastUpdateStr = localGuideData[RowIndex].CreateTime.ToString("yyyy-MM-dd");
+                            EncryptionProcessor.DecryptProperties(temp);
+                            ListData.Add(temp);
                         }
-                        return result = new Result()
-                        {
-                            Code = 0,
-                            Msg = "查询成功",
-                            Data = new { pageCount = count, totalPage = (int)totalPage, pageIndex = dto.PageIndex, pageSize = dto.PageSize, pageSource = ListData },
-                        };
+                        else break;
                     }
+                    return result = new Result()
+                    {
+                        Code = 0,
+                        Msg = "查询成功",
+                        Data = new { pageCount = count, totalPage = (int)totalPage, pageIndex = dto.PageIndex, pageSize = dto.PageSize, pageSource = ListData },
+                    };
                 }
-                else
-                {
-                    return result = new Result() { Code = -2, Msg = "请传入PortType参数!1:Web,2:Android,3:IOS" };
-                }
-            }
-            catch (Exception)
-            {
-                return result;
-                throw;
             }
 
+            return result = new Result() { Code = -2, Msg = "请传入PortType参数!1:Web,2:Android,3:IOS" };
         }
 
     }