|
@@ -28,6 +28,8 @@ using AlibabaCloud.OpenApiClient.Models;
|
|
|
using System;
|
|
|
using NPOI.HPSF;
|
|
|
using SqlSugar;
|
|
|
+using System.Collections;
|
|
|
+using Org.BouncyCastle.Ocsp;
|
|
|
|
|
|
namespace OASystem.API.Controllers
|
|
|
{
|
|
@@ -51,6 +53,12 @@ namespace OASystem.API.Controllers
|
|
|
private readonly CarTouristGuideGroundRepository _carTouristGuideGroundRep;
|
|
|
private readonly MessageRepository _message;
|
|
|
private readonly SqlSugarClient _sqlSugar;
|
|
|
+ #region 成本相关
|
|
|
+ private readonly CheckBoxsRepository _checkBoxs;
|
|
|
+ private readonly GroupCostRepository _GroupCostRepository;
|
|
|
+ private readonly CostTypeHotelNumberRepository _CostTypeHotelNumberRepository;
|
|
|
+ private readonly GroupCostParameterRepository _GroupCostParameterRepository;
|
|
|
+ #endregion
|
|
|
private string url;
|
|
|
private string path;
|
|
|
|
|
@@ -59,7 +67,8 @@ namespace OASystem.API.Controllers
|
|
|
public GroupsController(IMapper mapper, SqlSugarClient sqlSugar, GrpScheduleRepository grpScheduleRep, DelegationInfoRepository groupRepository,
|
|
|
TaskAssignmentRepository taskAssignmentRep, AirTicketResRepository airTicketResRep, DecreasePaymentsRepository decreasePaymentsRep,
|
|
|
InvitationOfficialActivitiesRepository InvitationOfficialActivitiesRep, DelegationEnDataRepository delegationEnDataRep, EnterExitCostRepository enterExitCostRep
|
|
|
- , DelegationVisaRepository delegationVisaRep, MessageRepository message,VisaPriceRepository visaPriceRep,CarTouristGuideGroundRepository carTouristGuideGroundRep)
|
|
|
+ , DelegationVisaRepository delegationVisaRep, MessageRepository message,VisaPriceRepository visaPriceRep,CarTouristGuideGroundRepository carTouristGuideGroundRep,CheckBoxsRepository checkBoxs, GroupCostRepository GroupCostRepository, CostTypeHotelNumberRepository CostTypeHotelNumberRepository,
|
|
|
+ GroupCostParameterRepository GroupCostParameterRepository)
|
|
|
{
|
|
|
_mapper = mapper;
|
|
|
_grpScheduleRep = grpScheduleRep;
|
|
@@ -81,6 +90,10 @@ namespace OASystem.API.Controllers
|
|
|
_message = message;
|
|
|
_visaPriceRep= visaPriceRep;
|
|
|
_carTouristGuideGroundRep= carTouristGuideGroundRep;
|
|
|
+ _checkBoxs = checkBoxs;
|
|
|
+ _GroupCostRepository = GroupCostRepository;
|
|
|
+ _CostTypeHotelNumberRepository = CostTypeHotelNumberRepository;
|
|
|
+ _GroupCostParameterRepository = GroupCostParameterRepository;
|
|
|
}
|
|
|
|
|
|
|
|
@@ -3057,6 +3070,7 @@ namespace OASystem.API.Controllers
|
|
|
return Ok(JsonView(false, "程序错误!"));
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
/// <summary>
|
|
|
/// op费用删除
|
|
|
/// </summary>
|
|
@@ -3079,7 +3093,7 @@ namespace OASystem.API.Controllers
|
|
|
DeleteUserId = dto.DeleteUserId,
|
|
|
DeleteTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")
|
|
|
}).ExecuteCommandAsync();
|
|
|
- var resultC = await _sqlSugar.Updateable<Grp_CreditCardPayment>().Where(a => a.CId == dto.Id && a.IsDel == 0 && a.CTable==79).SetColumns(a => new Grp_CreditCardPayment()
|
|
|
+ var resultC = await _sqlSugar.Updateable<Grp_CreditCardPayment>().Where(a => a.CId == dto.Id && a.IsDel == 0 && a.CTable == 79).SetColumns(a => new Grp_CreditCardPayment()
|
|
|
{
|
|
|
IsDel = 1,
|
|
|
DeleteUserId = dto.DeleteUserId,
|
|
@@ -3183,5 +3197,86 @@ namespace OASystem.API.Controllers
|
|
|
}
|
|
|
}
|
|
|
#endregion
|
|
|
+
|
|
|
+ #region 团组成本
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 团组成本数据初始化
|
|
|
+ /// </summary>
|
|
|
+ /// <param name="dto"></param>
|
|
|
+ /// <returns></returns>
|
|
|
+ [HttpPost]
|
|
|
+ public async Task<IActionResult> GroupCostInit(GroupCostInItDto dto)
|
|
|
+ {
|
|
|
+ var groupList = _sqlSugar.SqlQueryable<DelegationInfoAndIsTrueView>($@"
|
|
|
+ Select a.Id,TeamName GroupName,b.isTrue From Grp_DelegationInfo a left join (select top 100 percent Diid, CASE
|
|
|
+ WHEN COUNT(*) >= 0 THEN 'True'
|
|
|
+ ELSE 'False' END as isTrue from Grp_GroupCost where Isdel = 0 and date != '' group by Diid) b on a.Id = b.Diid
|
|
|
+ Where TeamName != '' And IsDel = 0 Order By a.Id Desc
|
|
|
+ ").ToList(); //团组列表
|
|
|
+ int diid = dto.Diid == - 1 ? groupList.First().Id : dto.Diid;
|
|
|
+ var groupInfo = await _groupRepository.PostShareGroupInfo(new ShareGroupInfoDto { PortType = 1 , Id = diid }); //团组信息
|
|
|
+ var groupChecks = _checkBoxs.GetCheckBoxsByDiid(diid); //团组选中信息 可枚举
|
|
|
+ var groupCost = _GroupCostRepository.GetAllByDiid(diid); //团组列表信息
|
|
|
+ var groupCostMap = _mapper.Map<List<Grp_GroupCostDto>>(groupCost);
|
|
|
+ var hotelNumber = _CostTypeHotelNumberRepository.GetCostTypeHotelNumberByDiid(diid); //酒店数量 可枚举
|
|
|
+ var GroupCostParameter = _GroupCostParameterRepository.GetGroupCostParameterListByDiid(diid); //成本系数 可枚举
|
|
|
+
|
|
|
+ //GroupCostParameter.Add(new
|
|
|
+ // Grp_GroupCostParameter());
|
|
|
+ var GroupCostParameterMap = _mapper.Map<List<Grp_GroupCostParameterDto>>(GroupCostParameter);
|
|
|
+
|
|
|
+ return Ok(JsonView(new {
|
|
|
+ groupList,
|
|
|
+ groupInfo,
|
|
|
+ groupChecks,
|
|
|
+ groupCost = groupCostMap,
|
|
|
+ hotelNumber,
|
|
|
+ GroupCostParameter = GroupCostParameterMap,
|
|
|
+ }));
|
|
|
+ }
|
|
|
+
|
|
|
+ /// <summary>
|
|
|
+ /// 团组成本信息保存
|
|
|
+ /// </summary>
|
|
|
+ /// <param name="dto"></param>
|
|
|
+ /// <returns></returns>
|
|
|
+ [HttpPost]
|
|
|
+ public async Task<IActionResult> SaveGroupCost(GroupCostSavaDto dto)
|
|
|
+ {
|
|
|
+ JsonView jw = null;
|
|
|
+ bool isTrue = false;
|
|
|
+ var Grp_groups = _mapper.Map<List<Grp_GroupCost>>(dto.GroupCosts);
|
|
|
+ Grp_groups.ForEach(x => { x.CreateUserId = dto.Userid; x.CreateTime = DateTime.Now;}); //.ToString("yyyy-MM-dd HH:mm:ss")
|
|
|
+ var Grp_CheckBoxs = _mapper.Map<List<Grp_CheckBoxs>>(dto.CheckBoxs);
|
|
|
+ Grp_CheckBoxs.ForEach(x => { x.CreateUserId = dto.Userid; x.CreateTime = DateTime.Now; });
|
|
|
+ var Grp_HotelNumber = _mapper.Map<List<Grp_CostTypeHotelNumber>>(dto.CostTypeHotelNumbers);
|
|
|
+ var Grp_CostParameters = _mapper.Map<List<Grp_GroupCostParameter>>(dto.GroupCostParameters);
|
|
|
+
|
|
|
+ try
|
|
|
+ {
|
|
|
+ _sqlSugar.BeginTran();
|
|
|
+ isTrue = await _GroupCostRepository.SaveGroupCostList(Grp_groups,dto.Diid); //列表
|
|
|
+ isTrue = await _checkBoxs.SaveCheckBoxs(Grp_CheckBoxs,dto.Diid); //选中项
|
|
|
+ isTrue = await _CostTypeHotelNumberRepository.SaveHotelNumber(Grp_HotelNumber,dto.Diid); //酒店房间数量
|
|
|
+ isTrue = await _GroupCostParameterRepository.SaveAsync(Grp_CostParameters, dto.Diid); //系数
|
|
|
+
|
|
|
+ _sqlSugar.CommitTran();
|
|
|
+ jw = JsonView(true,"保存成功!",isTrue);
|
|
|
+ }
|
|
|
+ catch (Exception)
|
|
|
+ {
|
|
|
+ _sqlSugar.RollbackTran();
|
|
|
+ jw = JsonView(false);
|
|
|
+ }
|
|
|
+
|
|
|
+ return Ok(jw);
|
|
|
+ }
|
|
|
+
|
|
|
+ #endregion
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
}
|
|
|
}
|