Browse Source

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

jiangjc 1 year ago
parent
commit
eba1c7a1d8

+ 2 - 1
OASystem/EntitySync/Program.cs

@@ -130,7 +130,8 @@ db.CodeFirst.SetStringDefaultLength(50).BackupTable().InitTables(new Type[]
     //typeof(Crm_TableOperationRecord), //表操作记录 
     //typeof(Crm_TableOperationRecord), //表操作记录 
     //typeof(Grp_InvertedList), //倒推表 
     //typeof(Grp_InvertedList), //倒推表 
     //typeof(Grp_InvertedListVisaCountry), //倒推表签证国家 
     //typeof(Grp_InvertedListVisaCountry), //倒推表签证国家 
-    typeof(Grp_VisaFeeInfo),  //签证费用info 
+    //typeof(Grp_VisaFeeInfo),  //签证费用info 
+    typeof(Grp_HotelInquiry),  //酒店询价 
 
 
 
 
 });
 });

+ 87 - 1
OASystem/OASystem.Api/Controllers/GroupsController.cs

@@ -117,6 +117,8 @@ namespace OASystem.API.Controllers
         private readonly VisaFeeInfoRepository _visaFeeInfoRep;
         private readonly VisaFeeInfoRepository _visaFeeInfoRep;
         private readonly TicketBlackCodeRepository _ticketBlackCodeRep;
         private readonly TicketBlackCodeRepository _ticketBlackCodeRep;
 
 
+        private readonly HotelInquiryRepository _hotelInquiryRep;
+
         public GroupsController(IMapper mapper, SqlSugarClient sqlSugar, GrpScheduleRepository grpScheduleRep, DelegationInfoRepository groupRepository,
         public GroupsController(IMapper mapper, SqlSugarClient sqlSugar, GrpScheduleRepository grpScheduleRep, DelegationInfoRepository groupRepository,
             TaskAssignmentRepository taskAssignmentRep, AirTicketResRepository airTicketResRep, DecreasePaymentsRepository decreasePaymentsRep,
             TaskAssignmentRepository taskAssignmentRep, AirTicketResRepository airTicketResRep, DecreasePaymentsRepository decreasePaymentsRep,
             InvitationOfficialActivitiesRepository InvitationOfficialActivitiesRep, DelegationEnDataRepository delegationEnDataRep, EnterExitCostRepository enterExitCostRep
             InvitationOfficialActivitiesRepository InvitationOfficialActivitiesRep, DelegationEnDataRepository delegationEnDataRep, EnterExitCostRepository enterExitCostRep
@@ -124,7 +126,7 @@ namespace OASystem.API.Controllers
             CheckBoxsRepository checkBoxs, GroupCostRepository GroupCostRepository, CostTypeHotelNumberRepository CostTypeHotelNumberRepository,
             CheckBoxsRepository checkBoxs, GroupCostRepository GroupCostRepository, CostTypeHotelNumberRepository CostTypeHotelNumberRepository,
             GroupCostParameterRepository GroupCostParameterRepository, HotelPriceRepository hotelPriceRep, CustomersRepository customersRep, SetDataRepository setDataRep,
             GroupCostParameterRepository GroupCostParameterRepository, HotelPriceRepository hotelPriceRep, CustomersRepository customersRep, SetDataRepository setDataRep,
             TourClientListRepository tourClientListRep, TeamRateRepository teamRateRep, IHubContext<ChatHub, IChatClient> hubContext, UsersRepository usersRep, IJuHeApiService juHeApi,
             TourClientListRepository tourClientListRep, TeamRateRepository teamRateRep, IHubContext<ChatHub, IChatClient> hubContext, UsersRepository usersRep, IJuHeApiService juHeApi,
-            InvertedListRepository invertedListRep, VisaFeeInfoRepository visaFeeInfoRep, TicketBlackCodeRepository ticketBlackCodeRep)
+            InvertedListRepository invertedListRep, VisaFeeInfoRepository visaFeeInfoRep, TicketBlackCodeRepository ticketBlackCodeRep, HotelInquiryRepository hotelInquiryRep)
         {
         {
             _mapper = mapper;
             _mapper = mapper;
             _grpScheduleRep = grpScheduleRep;
             _grpScheduleRep = grpScheduleRep;
@@ -161,6 +163,7 @@ namespace OASystem.API.Controllers
             _invertedListRep = invertedListRep;
             _invertedListRep = invertedListRep;
             _visaFeeInfoRep = visaFeeInfoRep;
             _visaFeeInfoRep = visaFeeInfoRep;
             _ticketBlackCodeRep = ticketBlackCodeRep;
             _ticketBlackCodeRep = ticketBlackCodeRep;
+            _hotelInquiryRep = hotelInquiryRep;
         }
         }
 
 
         #region 流程管控
         #region 流程管控
@@ -11513,6 +11516,89 @@ namespace OASystem.API.Controllers
         #endregion
         #endregion
 
 
 
 
+        #region 酒店询价
+        /// <summary>
+        /// 酒店询价
+        /// Init
+        /// </summary>
+        /// <param name="dto"></param>
+        /// <returns></returns>
+        [HttpPost]
+        [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)]
+        public async Task<IActionResult> PostHotelInquiryInit()
+        {
+            var res = await _hotelInquiryRep._Init();
+            if (res.Code != 0) return Ok(JsonView(false, res.Msg));
+            return Ok(JsonView(true, res.Msg, res.Data));
+        }
+
+        /// <summary>
+        /// 酒店询价
+        /// page Item
+        /// </summary>
+        /// <param name="_dto"></param>
+        /// <returns></returns>
+        [HttpPost]
+        [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)]
+        public async Task<IActionResult> PostHotelInquiryPageItem(HotelInquiryPageItemDto _dto)
+        {
+            var res = await _hotelInquiryRep._PageItem(_dto.PageIndex,_dto.PageSize,_dto.PortType,_dto.DiId);
+            if (res.Code != 0) return Ok(JsonView(false, res.Msg));
+            var view = res.Data as PageDataViewBase;
+            return Ok(JsonView(true, res.Msg, view.Data, view.Total));
+        }
+
+        /// <summary>
+        /// 酒店询价
+        /// info
+        /// </summary>
+        /// <param name="_dto"></param>
+        /// <returns></returns>
+        [HttpPost]
+        [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)]
+        public async Task<IActionResult> PostHotelInquiryInfo(HotelInquiryInfoDto _dto)
+        {
+            var res = await _hotelInquiryRep._Info(_dto.PortType, _dto.Id);
+            if (res.Code != 0) return Ok(JsonView(false, res.Msg));
+           
+            return Ok(JsonView(true, res.Msg, res.Data));
+        }
+
+        /// <summary>
+        /// 酒店询价
+        /// Add Or Edit
+        /// </summary>
+        /// <param name="_dto"></param>
+        /// <returns></returns>
+        [HttpPost]
+        [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)]
+        public async Task<IActionResult> PostHotelInquiryAddOrEdit(HotelInquiryAddOrEditDto _dto)
+        {
+            var res = await _hotelInquiryRep._AddOrEdit(_dto);
+            if (res.Code != 0) return Ok(JsonView(false, res.Msg));
+
+            return Ok(JsonView(true, res.Msg, res.Data));
+        }
+
+        /// <summary>
+        /// 酒店询价
+        /// Del
+        /// </summary>
+        /// <param name="_dto"></param>
+        /// <returns></returns>
+        [HttpPost]
+        [ProducesResponseType(typeof(JsonView), StatusCodes.Status200OK)]
+        public async Task<IActionResult> PostHotelInquiryDel(HotelInquiryDelDto _dto)
+        {
+            var res = await _hotelInquiryRep._Del(_dto.Id,_dto.DeleteUserId);
+            if (res.Code != 0) return Ok(JsonView(false, res.Msg));
+
+            return Ok(JsonView(true, res.Msg, res.Data));
+        }
+
+        #endregion
+
+
         //        /// <summary>
         //        /// <summary>
         //        /// 
         //        /// 
         //        /// </summary>
         //        /// </summary>

File diff suppressed because it is too large
+ 50 - 57
OASystem/OASystem.Api/Controllers/ResourceController.cs


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

@@ -271,6 +271,10 @@ namespace OASystem.Domain.AutoMappers
             CreateMap<InvertedListUpdateDto, Grp_InvertedList>();
             CreateMap<InvertedListUpdateDto, Grp_InvertedList>();
             CreateMap<VisaCountryInfo, Grp_InvertedListVisaCountry>();
             CreateMap<VisaCountryInfo, Grp_InvertedListVisaCountry>();
             #endregion
             #endregion
+
+            #region 酒店询价
+            CreateMap<HotelInquiryAddOrEditDto, Grp_HotelInquiry>();
+            #endregion
         }
         }
     }
     }
 }
 }

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

@@ -39,7 +39,6 @@ namespace OASystem.Domain.Dtos
     /// </summary>
     /// </summary>
     public class DelBaseDto:PortDtoBase
     public class DelBaseDto:PortDtoBase
     {
     {
-
         /// <summary>
         /// <summary>
         /// 删除的数据Id
         /// 删除的数据Id
         /// </summary>
         /// </summary>

+ 128 - 0
OASystem/OASystem.Domain/Dtos/Groups/HotelInquiryDto.cs

@@ -0,0 +1,128 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace OASystem.Domain.Dtos.Groups
+{
+    public class HotelInquiryDto
+    {
+    }
+
+    public class HotelInquiryPageItemDto : DtoBase
+    {
+        public int DiId { get; set; }
+    }
+
+    public class HotelInquiryInfoDto : PortDtoBase 
+    {
+        public int Id { get; set; }
+    }
+
+
+    public class HotelInquiryAddOrEditDto : OpBaseDto 
+    {
+        /// <summary>
+        /// 团组Id
+        /// </summary>
+        public int DiId { get; set; }
+
+        /// <summary>
+        /// 所在城市
+        /// </summary>
+        public string City { get; set; }
+
+        /// <summary>
+        /// 酒店名称
+        /// </summary>
+        public string Name { get; set; }
+
+        /// <summary>
+        /// 酒店地址
+        /// </summary>
+        public string Address { get; set; }
+
+        /// <summary>
+        /// 查询时间
+        /// </summary>
+        public string SelectDt { get; set; }
+
+        /// <summary>
+        /// 入住 日期
+        /// </summary>
+        public string CheckInDate { get; set; }
+
+        /// <summary>
+        /// 离店 日期
+        /// </summary>
+        public string CheckOutDate { get; set; }
+
+        /// <summary>
+        /// 单间 价格
+        /// </summary>
+        public decimal SinglePrice { get; set; }
+
+        /// <summary>
+        /// 单间 数量
+        /// </summary>
+        public int SingleQuantity { get; set; }
+
+        /// <summary>
+        /// 单间 币种 
+        /// 外键 币种Id
+        /// </summary>
+        public int SingleCurrency { get; set; }
+
+        /// <summary>
+        /// 双人间 价格
+        /// </summary>
+        public decimal DoublePrice { get; set; }
+
+        /// <summary>
+        /// 双人间 数量
+        /// </summary>
+        public int DoubleQuantity { get; set; }
+
+        /// <summary>
+        /// 双人间 币种 
+        /// 外键 币种Id
+        /// </summary>
+        public int DoubleCurrency { get; set; }
+
+        /// <summary>
+        /// 套房 价格
+        /// </summary>
+        public decimal SuitePrice { get; set; }
+
+        /// <summary>
+        /// 套房 数量
+        /// </summary>
+        public int SuiteQuantity { get; set; }
+
+        /// <summary>
+        /// 套房 币种 
+        /// 外键 币种Id
+        /// </summary>
+        public int SuiteCurrency { get; set; }
+
+        /// <summary>
+        /// 其他 价格
+        /// </summary>
+        public decimal OtherPrice { get; set; }
+
+        /// <summary>
+        /// 其他 数量
+        /// </summary>
+        public int OtherQuantity { get; set; }
+
+        /// <summary>
+        /// 单价 币种 
+        /// 外键 币种Id
+        /// </summary>
+        public int OtherCurrency { get; set; }
+    }
+
+    public class HotelInquiryDelDto : DelBaseDto
+    { }
+}

+ 135 - 0
OASystem/OASystem.Domain/Entities/Groups/Grp_HotelInquiry.cs

@@ -0,0 +1,135 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace OASystem.Domain.Entities.Groups
+{
+    /// <summary>
+    /// 酒店询价 entities
+    /// </summary>
+    [SugarTable("Grp_HotelInquiry")]
+    public class Grp_HotelInquiry:EntityBase
+    {
+        /// <summary>
+        /// 团组Id
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "int")]
+        public int DiId { get; set; }
+
+        /// <summary>
+        /// 所在城市
+        /// </summary>
+        [SugarColumn(IsNullable = true,ColumnDataType = "varchar(50)")]
+        public string City { get; set; }
+
+        /// <summary>
+        /// 酒店名称
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(100)")]
+        public string Name { get; set; }
+
+        /// <summary>
+        /// 酒店地址
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(200)")]
+        public string Address { get; set; }
+
+        /// <summary>
+        /// 查询时间
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "datetime")]
+        public DateTime  SelectDt { get; set; }
+
+        /// <summary>
+        /// 入住 日期
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "datetime")]
+        public DateTime CheckInDate{ get; set; }
+
+        /// <summary>
+        /// 离店 日期
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "datetime")]
+        public DateTime CheckOutDate { get; set; }
+
+
+        /// <summary>
+        /// 单间 价格
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "decimal(10,2)")]
+        public decimal SinglePrice { get; set; }
+
+        /// <summary>
+        /// 单间 数量
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "int")]
+        public int SingleQuantity { get; set; }
+
+        /// <summary>
+        /// 单间 币种 
+        /// 外键 币种Id
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "int")]
+        public int SingleCurrency { get; set; }
+
+        /// <summary>
+        /// 双人间 价格
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "decimal(10,2)")]
+        public decimal DoublePrice { get; set; }
+
+        /// <summary>
+        /// 双人间 数量
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "int")]
+        public int DoubleQuantity { get; set; }
+
+        /// <summary>
+        /// 双人间 币种 
+        /// 外键 币种Id
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "int")]
+        public int DoubleCurrency { get; set; }
+
+        /// <summary>
+        /// 套房 价格
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "decimal(10,2)")]
+        public decimal SuitePrice { get; set; }
+
+        /// <summary>
+        /// 套房 数量
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "int")]
+        public int SuiteQuantity { get; set; }
+
+        /// <summary>
+        /// 套房 币种 
+        /// 外键 币种Id
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "int")]
+        public int SuiteCurrency { get; set; }
+
+        /// <summary>
+        /// 其他 价格
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "decimal(10,2)")]
+        public decimal OtherPrice { get; set; }
+
+        /// <summary>
+        /// 其他 数量
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "int")]
+        public int OtherQuantity { get; set; }
+
+        /// <summary>
+        /// 单价 币种 
+        /// 外键 币种Id
+        /// </summary>
+        [SugarColumn(IsNullable = true, ColumnDataType = "int")]
+        public int OtherCurrency { get; set; }
+
+    }
+}

+ 14 - 14
OASystem/OASystem.Domain/Entities/Resource/Res_OfficialActivities.cs

@@ -26,19 +26,19 @@ namespace OASystem.Domain.Entities.Resource
         /// <summary>
         /// <summary>
         /// 所在国家
         /// 所在国家
         /// </summary>
         /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(100)")]
+        [SugarColumn(IsNullable = true, ColumnDataType = "nvarchar(100)")]
         public string Country { get; set; }
         public string Country { get; set; }
 
 
         /// <summary>
         /// <summary>
         /// 所在区域(城市)
         /// 所在区域(城市)
         /// </summary>
         /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(200)")]
+        [SugarColumn(IsNullable = true, ColumnDataType = "nvarchar(200)")]
         public string Area { get; set; }
         public string Area { get; set; }
 
 
         /// <summary>-
         /// <summary>-
         /// 公务单位
         /// 公务单位
         /// </summary>
         /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(MAX)")]
+        [SugarColumn(IsNullable = true, ColumnDataType = "nvarchar(MAX)")]
         public string Client { get; set; }
         public string Client { get; set; }
         /// <summary>
         /// <summary>
         /// 公务日期
         /// 公务日期
@@ -53,7 +53,7 @@ namespace OASystem.Domain.Entities.Resource
         /// <summary>
         /// <summary>
         /// 地址
         /// 地址
         /// </summary>
         /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(MAX)")]
+        [SugarColumn(IsNullable = true, ColumnDataType = "nvarchar(MAX)")]
         public string Address { get; set; }
         public string Address { get; set; }
         /// <summary>
         /// <summary>
         /// 联系人
         /// 联系人
@@ -64,12 +64,12 @@ namespace OASystem.Domain.Entities.Resource
         /// <summary>
         /// <summary>
         /// 联系人职务
         /// 联系人职务
         /// </summary>
         /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(50)")]
+        [SugarColumn(IsNullable = true, ColumnDataType = "nvarchar(50)")]
         public string Job { get; set; }
         public string Job { get; set; }
         /// <summary>
         /// <summary>
         /// 联系电话
         /// 联系电话
         /// </summary>
         /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(120)")]
+        [SugarColumn(IsNullable = true, ColumnDataType = "nvarchar(120)")]
         public string Tel { get; set; }
         public string Tel { get; set; }
         /// <summary>
         /// <summary>
         /// 公务形式
         /// 公务形式
@@ -81,29 +81,29 @@ namespace OASystem.Domain.Entities.Resource
         /// <summary>
         /// <summary>
         /// 公务方所属领域
         /// 公务方所属领域
         /// </summary>
         /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(100)")]
+        [SugarColumn(IsNullable = true, ColumnDataType = "nvarchar(100)")]
         public string Field { get; set; }
         public string Field { get; set; }
 
 
         /// <summary>
         /// <summary>
         /// 请示范例
         /// 请示范例
         /// </summary>
         /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(500)")]
+        [SugarColumn(IsNullable = true, ColumnDataType = "nvarchar(500)")]
         public string ReqSample { get; set; }
         public string ReqSample { get; set; }
 
 
         /// <summary>
         /// <summary>
         /// 公务方背景
         /// 公务方背景
         /// </summary>
         /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(MAX)")]
+        [SugarColumn(IsNullable = true, ColumnDataType = "nvarchar(MAX)")]
         public string Setting { get; set; }
         public string Setting { get; set; }
         /// <summary>
         /// <summary>
         /// 着装要求
         /// 着装要求
         /// </summary>
         /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(120)")]
+        [SugarColumn(IsNullable = true, ColumnDataType = "nvarchar(120)")]
         public string Dresscode { get; set; }
         public string Dresscode { get; set; }
         /// <summary>
         /// <summary>
         /// 参会人员
         /// 参会人员
         /// </summary>
         /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(MAX)")]
+        [SugarColumn(IsNullable = true, ColumnDataType = "nvarchar(MAX)")]
         public string Attendees { get; set; }
         public string Attendees { get; set; }
         /// <summary>
         /// <summary>
         /// 是否需要翻译
         /// 是否需要翻译
@@ -113,17 +113,17 @@ namespace OASystem.Domain.Entities.Resource
         /// <summary>
         /// <summary>
         /// 翻译人员
         /// 翻译人员
         /// </summary>
         /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(120)")]
+        [SugarColumn(IsNullable = true, ColumnDataType = "nvarchar(120)")]
         public string Translators { get; set; }
         public string Translators { get; set; }
         /// <summary>
         /// <summary>
         /// 翻译语种
         /// 翻译语种
         /// </summary>
         /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(120)")]
+        [SugarColumn(IsNullable = true, ColumnDataType = "nvarchar(120)")]
         public string language { get; set; }
         public string language { get; set; }
         /// <summary>
         /// <summary>
         /// 暂定行程
         /// 暂定行程
         /// </summary>
         /// </summary>
-        [SugarColumn(IsNullable = true, ColumnDataType = "varchar(MAX)")]
+        [SugarColumn(IsNullable = true, ColumnDataType = "nvarchar(MAX)")]
         public string Trip { get; set; }
         public string Trip { get; set; }
 
 
         /// <summary>
         /// <summary>

+ 41 - 3
OASystem/OASystem.Domain/Result.cs

@@ -15,14 +15,52 @@ namespace OASystem.Domain
 
 
 
 
     /// <summary>
     /// <summary>
-    /// 错误消息
+    /// 消息 Tips
     /// </summary>
     /// </summary>
-    public static class ErrorMsg 
+    public static class MsgTips 
     {
     {
+        /// <summary>
+        /// 成功 消息提示
+        /// </summary>
+        public static string Succeed = "操作成功!";
+
+        /// <summary>
+        /// 失败 消息提示
+        /// </summary>
+        public static string Fail = "操作失败!";
+
         /// <summary>
         /// <summary>
         /// 端口错误消息提示
         /// 端口错误消息提示
         /// </summary>
         /// </summary>
-        public static string Error_Port_Msg = "“portType”:1:WEB;2:ANDROID;3:IOS;请检查端口值是否正确!";
+        public static string Port = "请检查端口值是否正确!“portType”:1:WEB;2:ANDROID;3:IOS;";
+
+        /// <summary>
+        ///  PageIndex 错误消息提示
+        /// </summary>
+        public static string PageIndex = "请检查当前页面(pageIndex)是否正确!";
+
+        /// <summary>
+        /// PageSize 错误消息提示
+        /// </summary>
+        public static string PageSize = "请检查每页长度(pageSize)是否正确!";
+        /// <summary>
+        /// 团组Id错误消息提示
+        /// </summary>
+        public static string DiId = "请检查团组Id(diid)是否正确!";
+        /// <summary>
+        /// 数据Id错误消息提示
+        /// </summary>
+        public static string Id = "请检查数据Id(id)是否正确!";
+
+        /// <summary>
+        /// 数据Id错误消息提示
+        /// </summary>
+        public static string Status = "请检查状态Id(Status)是否正确!1 添加 2 修改";
+
+        /// <summary>
+        /// UserId错误消息提示
+        /// </summary>
+        public static string UserId = "请检查状态UserId是否正确!";
     }
     }
 
 
    
    

+ 5 - 0
OASystem/OASystem.Domain/ViewModels/Groups/Grp_CarTouristGuideGroundView.cs

@@ -129,5 +129,10 @@ namespace OASystem.Domain.ViewModels.Groups
         /// </summary>
         /// </summary>
         public string priceTypeStr { get; set; }
         public string priceTypeStr { get; set; }
         public int IsPay { get; set; }
         public int IsPay { get; set; }
+
+        /// <summary>
+        /// 费用名称
+        /// </summary>
+        public string priceName {  get; set; }
     }
     }
 }
 }

+ 43 - 0
OASystem/OASystem.Domain/ViewModels/Groups/HotelInquiryView.cs

@@ -0,0 +1,43 @@
+using OASystem.Domain.Entities.Groups;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace OASystem.Domain.ViewModels.Groups
+{
+    /// <summary>
+    /// 酒店询价 view
+    /// </summary>
+    public class HotelInquiryView:Grp_HotelInquiry
+    {
+    }
+
+    public class HotelInquiryItemView
+    {
+        public int id { get; set; }
+        public int diId { get; set; }
+        public string city { get; set; }
+        public string name { get; set; }
+        public DateTime selectDt { get; set; }
+        public DateTime checkInDate { get; set; }
+        public DateTime checkOutDate { get; set; }
+        public decimal singlePrice { get; set; }
+        public int singleQuantity { get; set; }
+        public string singleCurrency { get; set; }
+        public decimal doublePrice { get; set; }
+        public int doubleQuantity { get; set; }
+        public string doubleCurrency { get; set; }
+        public decimal suitePrice { get; set; }
+        public int suiteQuantity { get; set; }
+        public string suiteCurrency { get; set; }
+        public decimal otherPrice { get; set; }
+        public int otherQuantity { get; set; }
+        public string otherCurrency { get; set; }
+        public string remark { get; set; }
+        public string createUserName { get; set; }
+        public DateTime createTime { get; set; }
+    }
+
+}

+ 8 - 0
OASystem/OASystem.Domain/ViewModels/ViewBase.cs

@@ -93,4 +93,12 @@
         public int AuditAuth { get; set; } = 0;
         public int AuditAuth { get; set; } = 0;
 
 
     }
     }
+
+
+    public class PageDataViewBase
+    {
+        public dynamic Data { get; set; }
+
+        public int Total { get; set; }
+    }
 }
 }

+ 3 - 3
OASystem/OASystem.Infrastructure/Repositories/Groups/EnterExitCostRepository.cs

@@ -122,7 +122,7 @@ namespace OASystem.Infrastructure.Repositories.Groups
 
 
                 result.Data = enterExitCostInfoView;
                 result.Data = enterExitCostInfoView;
             }
             }
-            else result.Msg = ErrorMsg.Error_Port_Msg;
+            else result.Msg = MsgTips.Port;
 
 
 
 
 
 
@@ -307,7 +307,7 @@ namespace OASystem.Infrastructure.Repositories.Groups
                     result.Msg = ex.Message;
                     result.Msg = ex.Message;
                 }
                 }
             }
             }
-            else result.Msg = ErrorMsg.Error_Port_Msg;
+            else result.Msg = MsgTips.Port;
 
 
 
 
             return result;
             return result;
@@ -390,7 +390,7 @@ namespace OASystem.Infrastructure.Repositories.Groups
             {
             {
 
 
             }
             }
-            else result.Msg = ErrorMsg.Error_Port_Msg;
+            else result.Msg = MsgTips.Port;
 
 
             return result;
             return result;
         }
         }

+ 230 - 0
OASystem/OASystem.Infrastructure/Repositories/Groups/HotelInquiryRepository.cs

@@ -0,0 +1,230 @@
+using AutoMapper;
+using MySqlX.XDevAPI.Common;
+using OASystem.Domain;
+using OASystem.Domain.Dtos.Groups;
+using OASystem.Domain.Entities.Groups;
+using OASystem.Domain.ViewModels.Groups;
+using OASystem.Domain.ViewModels.QiYeWeChat;
+using OASystem.Infrastructure.Repositories.System;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using Result = OASystem.Domain.Result;
+
+namespace OASystem.Infrastructure.Repositories.Groups
+{
+    /// <summary>
+    /// 酒店询价 仓储
+    /// </summary>
+    public class HotelInquiryRepository:BaseRepository<Grp_HotelInquiry,HotelInquiryView>
+    {
+        private readonly IMapper _mapper;
+        private readonly SetDataRepository _setDataRep;
+
+        /// <summary>
+        /// Init
+        /// </summary>
+        /// <param name="sqlSugar"></param>
+        public HotelInquiryRepository(SqlSugarClient sqlSugar, IMapper mapper, SetDataRepository setDataRep) 
+            : base(sqlSugar)
+        {
+            _mapper = mapper;
+            _setDataRep = setDataRep;
+        }
+
+        /// <summary>
+        /// 酒店询价
+        /// 初始化数据
+        /// </summary>
+        /// <returns></returns>
+        public async Task<Result> _Init() 
+        {
+            var currDataResult = await _setDataRep.GetSetDataBySTId(_setDataRep, 66);
+            dynamic currDatas = null;
+            if (currDataResult.Code == 0) currDatas = currDataResult.Data;
+            var data = new { 
+                CurrData = currDatas
+            };
+            return new Result() { Code = 0 ,Msg="操作成功!",Data = data };
+        }
+
+        /// <summary>
+        /// 酒店询价
+        /// Page 列表
+        /// </summary>
+        /// <param name="portType"></param>
+        /// <param name="DiId"></param>
+        /// <returns></returns>
+        public async Task<Result> _PageItem(int pageIndex,int pageSize, int portType, int diId)
+        {
+            if (portType < 1 || portType > 3) return new Result() { Code = -1, Msg =  MsgTips.Port};
+            if (diId < 1) return new Result() { Code = -1, Msg = MsgTips.DiId };
+            if (pageIndex < 1) return new Result() { Code = -1, Msg = MsgTips.PageIndex };
+            if (pageIndex < 1) return new Result() { Code = -1, Msg = MsgTips.PageSize };
+
+            string sql = string.Format(@$"SELECT
+  hi.Id,
+  hi.DiId,
+  hi.City,
+  hi.[Name],
+  hi.[SelectDt],
+  hi.CheckInDate,
+  hi.CheckOutDate,
+  hi.SinglePrice,
+  hi.SingleQuantity,
+  sd1.[Name] AS SingleCurrency,
+  hi.DoublePrice,
+  hi.DoubleQuantity,
+  sd2.[Name] AS DoubleCurrency,
+  hi.SuitePrice,
+  hi.SuiteQuantity,
+  sd3.[Name] AS SuiteCurrency,
+  hi.OtherPrice,
+  hi.OtherQuantity,
+  sd4.[Name] AS OtherCurrency,
+  hi.Remark,
+  u.CnName AS CreateUserName,
+  hi.CreateTime
+FROM
+  Grp_HotelInquiry hi
+WITH
+  (NoLock)
+  LEFT JOIN Sys_Users u
+WITH
+  (NoLock) ON hi.CreateUserId = u.Id
+  LEFT JOIN Sys_SetData sd1
+WITH
+  (NoLock) ON hi.SingleCurrency = sd1.Id
+  LEFT JOIN Sys_SetData sd2
+WITH
+  (NoLock) ON hi.DoubleCurrency = sd2.Id
+  LEFT JOIN Sys_SetData sd3
+WITH
+  (NoLock) ON hi.SuiteCurrency = sd3.Id
+  LEFT JOIN Sys_SetData sd4
+WITH
+  (NoLock) ON hi.OtherCurrency = sd4.Id
+WHERE
+  hi.Isdel = 0
+  AND hi.DiId = {diId}");
+
+            if (portType == 1 || portType == 2 || portType == 3)
+            {
+                RefAsync<int> total = 0;
+                var eqquiryDatas = await _sqlSugar.SqlQueryable<HotelInquiryItemView>(sql).OrderBy(it => it.checkInDate).ToPageListAsync(pageIndex, pageSize, total);
+
+                return new Result() { Code = 0, Msg = MsgTips.Succeed, Data = new PageDataViewBase { Data = eqquiryDatas, Total = total } };
+            }
+
+            return new Result() { Code = -1, Msg = MsgTips.Fail  };
+        }
+        
+        /// <summary>
+        /// info 
+        /// </summary>
+        /// <param name="portType"></param>
+        /// <param name="id"></param>
+        /// <returns></returns>
+        public async Task<Result> _Info(int portType, int id)
+        {
+            if (portType < 1 || portType > 3) return new Result() { Code = -1, Msg = MsgTips.Port };
+            if (id < 1 ) return new Result() { Code = -1, Msg = MsgTips.Id };
+
+            var info = await _sqlSugar.Queryable<Grp_HotelInquiry>()
+                                      .Where(it => it.IsDel == 0 && it.Id == id)
+                                      .Select(it =>
+                                            new { 
+                                                it.Id,
+                                                it.DiId, 
+                                                it.City,
+                                                it.Name,
+                                                it.Address,
+                                                it.SelectDt,
+                                                it.CheckInDate,
+                                                it.CheckOutDate,
+                                                it.SinglePrice,
+                                                it.SingleQuantity,
+                                                it.SingleCurrency,
+                                                it.DoublePrice,
+                                                it.DoubleQuantity,
+                                                it.DoubleCurrency,
+                                                it.SuitePrice,
+                                                it.SuiteQuantity,
+                                                it.SuiteCurrency,
+                                                it.OtherPrice,
+                                                it.OtherQuantity,
+                                                it.OtherCurrency,
+                                                it.Remark,
+                                            })
+                                      .FirstAsync();
+
+            return new Result() { Code = 0, Msg = MsgTips.Succeed,Data = info };
+        }
+
+        /// <summary>
+        /// Add Or Edit
+        /// </summary>
+        /// <param name="_dto"></param>
+        /// <returns></returns>
+        public async Task<Result> _AddOrEdit(HotelInquiryAddOrEditDto _dto)
+        {
+            #region 参数验证
+            if (_dto.DiId < 1) return new Result() { Code = -1, Msg = MsgTips.DiId };
+            if (_dto.Status < 1 || _dto.Status > 2) return new Result() { Code = -1, Msg = MsgTips.Status };
+
+            #endregion
+
+            Grp_HotelInquiry _HotelInquiry = _mapper.Map<Grp_HotelInquiry>(_dto);
+
+            if (_dto.Status == 1)
+            {
+                var add = await _sqlSugar.Insertable(_HotelInquiry).ExecuteReturnIdentityAsync();
+                if (add >  0 ) return new Result() { Code = 0, Msg = MsgTips.Succeed };
+
+            }
+            else if (_dto.Status == 2)
+            {
+                var update = await _sqlSugar.Updateable(_HotelInquiry)
+                                            .IgnoreColumns(it =>
+                                                new
+                                                {
+                                                    it.CreateUserId,
+                                                    it.CreateTime,
+                                                    it.DeleteUserId,
+                                                    it.DeleteTime,
+                                                    it.IsDel
+                                                })
+                                            .WhereColumns(it =>
+                                                new
+                                                {
+                                                    it.Id
+                                                })
+                                            .ExecuteCommandAsync();
+                if (update > 0) return new Result() { Code = 0, Msg = MsgTips.Succeed };
+            }
+
+            return new Result() { Code = -1, Msg = MsgTips.Fail };
+        }
+
+        /// <summary>
+        /// Del
+        /// </summary>
+        /// <param name="_dto"></param>
+        /// <returns></returns>
+        public async Task<Result> _Del(int id,int userId)
+        {
+            #region 参数验证
+            if (id < 1) return new Result() { Code = -1, Msg = MsgTips.Id };
+            if (userId < 0) return new Result() { Code = -1, Msg = MsgTips.UserId };
+
+            #endregion
+
+            var del = await SoftDeleteByIdAsync<Grp_HotelInquiry>(id.ToString(), userId);
+            if (del) return new Result() { Code = 0, Msg = MsgTips.Succeed };
+
+            return new Result() { Code = -1, Msg = MsgTips.Fail };
+        }
+    }
+}