Commit 62b0b219 authored by 黄奎's avatar 黄奎

页面修改

parent 70c5f01f
...@@ -14,11 +14,14 @@ namespace Edu.Common.WeChatPayAPIv3 ...@@ -14,11 +14,14 @@ namespace Edu.Common.WeChatPayAPIv3
/// </summary> /// </summary>
public class AesGcmHelper public class AesGcmHelper
{ {
private static string ALGORITHM = "AES/GCM/NoPadding"; /// <summary>
private static int TAG_LENGTH_BIT = 128; /// 解密微信
private static int NONCE_LENGTH_BYTE = 12; /// </summary>
private static string AES_KEY = string.Empty; /// <param name="associatedData"></param>
/// <param name="nonce"></param>
/// <param name="ciphertext"></param>
/// <param name="APIV3Key"></param>
/// <returns></returns>
public static string AesGcmDecrypt(string associatedData, string nonce, string ciphertext, string APIV3Key) public static string AesGcmDecrypt(string associatedData, string nonce, string ciphertext, string APIV3Key)
{ {
GcmBlockCipher gcmBlockCipher = new GcmBlockCipher(new AesEngine()); GcmBlockCipher gcmBlockCipher = new GcmBlockCipher(new AesEngine());
......
...@@ -151,7 +151,6 @@ namespace Edu.Module.Course ...@@ -151,7 +151,6 @@ namespace Edu.Module.Course
/// </summary> /// </summary>
private readonly RB_PlatformAccountRepository platformAccountRepository = new RB_PlatformAccountRepository(); private readonly RB_PlatformAccountRepository platformAccountRepository = new RB_PlatformAccountRepository();
/// <summary> /// <summary>
/// 班级关联课程仓储层对象 /// 班级关联课程仓储层对象
/// </summary> /// </summary>
...@@ -220,6 +219,19 @@ namespace Edu.Module.Course ...@@ -220,6 +219,19 @@ namespace Edu.Module.Course
return list; return list;
} }
/// <summary>
/// 获取班级课程信息
/// </summary>
/// <param name="classId"></param>
/// <returns></returns>
public Dictionary<string,object> GetClassCourseListModule(int classId)
{
Dictionary<string, object> fileds = new Dictionary<string, object>();
var courseList = class_CourseRepository.GetClassCourseListRepository(new RB_Class_Course_Extend() { ClassId = classId });
return fileds;
}
/// <summary> /// <summary>
/// 获取班级名称 /// 获取班级名称
/// </summary> /// </summary>
...@@ -250,7 +262,7 @@ namespace Edu.Module.Course ...@@ -250,7 +262,7 @@ namespace Edu.Module.Course
/// <param name="userInfo"></param> /// <param name="userInfo"></param>
/// <returns></returns> /// <returns></returns>
[TransactionCallHandler] [TransactionCallHandler]
public bool SetClassOrder(RB_Order_ViewModel demodel, UserInfo userInfo,bool isEditOrder, out string message) public virtual bool SetClassOrder(RB_Order_ViewModel demodel, UserInfo userInfo,bool isEditOrder, out string message)
{ {
bool flag = false; bool flag = false;
message = ""; message = "";
...@@ -577,7 +589,7 @@ namespace Edu.Module.Course ...@@ -577,7 +589,7 @@ namespace Edu.Module.Course
/// <param name="userInfo"></param> /// <param name="userInfo"></param>
/// <returns></returns> /// <returns></returns>
[TransactionCallHandler] [TransactionCallHandler]
public bool SetStudyOrder(RB_Order_ViewModel demodel, UserInfo userInfo, out string message) public virtual bool SetStudyOrder(RB_Order_ViewModel demodel, UserInfo userInfo, out string message)
{ {
bool flag = false; bool flag = false;
message = ""; message = "";
...@@ -728,17 +740,7 @@ namespace Edu.Module.Course ...@@ -728,17 +740,7 @@ namespace Edu.Module.Course
/// </summary> /// </summary>
/// <param name="orderId"></param> /// <param name="orderId"></param>
/// <returns></returns> /// <returns></returns>
public RB_Order_ViewModel GetClassOrderInfo(int orderId) public RB_Order_ViewModel GetClassOrderInfoModule(int orderId)
{
return orderRepository.GetEntity<RB_Order_ViewModel>(orderId);
}
/// <summary>
/// 获取订单详情
/// </summary>
/// <param name="orderId"></param>
/// <returns></returns>
public RB_Order_ViewModel GetClassOrderInfo_V2(int orderId)
{ {
var model = orderRepository.GetEntity<RB_Order_ViewModel>(orderId); var model = orderRepository.GetEntity<RB_Order_ViewModel>(orderId);
if (model != null) if (model != null)
...@@ -755,6 +757,8 @@ namespace Edu.Module.Course ...@@ -755,6 +757,8 @@ namespace Edu.Module.Course
return model; return model;
} }
/// <summary> /// <summary>
/// 获取订单阶梯价格 /// 获取订单阶梯价格
/// </summary> /// </summary>
......
...@@ -149,7 +149,6 @@ LEFT JOIN rb_teacher AS T ON a.TeacherId=T.TId ...@@ -149,7 +149,6 @@ LEFT JOIN rb_teacher AS T ON a.TeacherId=T.TId
{ {
builder.AppendFormat(" AND A.{0} <='{1} 23:59:59' ", nameof(RB_Class_Plan_ViewModel.ClassDate), query.EndTime); builder.AppendFormat(" AND A.{0} <='{1} 23:59:59' ", nameof(RB_Class_Plan_ViewModel.ClassDate), query.EndTime);
} }
} }
return Get<RB_Class_Plan_ViewModel>(builder.ToString()).ToList(); return Get<RB_Class_Plan_ViewModel>(builder.ToString()).ToList();
} }
......
...@@ -59,16 +59,6 @@ WHERE 1=1 ...@@ -59,16 +59,6 @@ WHERE 1=1
return Get<RB_Class_Time_ViewModel>(builder.ToString()).ToList(); return Get<RB_Class_Time_ViewModel>(builder.ToString()).ToList();
} }
/// <summary>
/// 根据班级编号删除班级上课时间
/// </summary>
/// <param name="ClassId">班级编号</param>
/// <returns></returns>
public bool DeleteClassTimeRepository(int ClassId)
{
return base.DeleteOne(new VT.FW.DB.WhereHelper(nameof(RB_Class_Time_ViewModel.ClassId), ClassId));
}
/// <summary> /// <summary>
/// 根据上课计划编号删除上课计划 /// 根据上课计划编号删除上课计划
/// </summary> /// </summary>
......
...@@ -437,7 +437,7 @@ namespace Edu.WebApi.Controllers.Course ...@@ -437,7 +437,7 @@ namespace Edu.WebApi.Controllers.Course
return ApiResult.ParamIsNull(); return ApiResult.ParamIsNull();
} }
var model = orderModule.GetClassOrderInfo(OrderId); var model = orderModule.GetClassOrderInfoModule(OrderId);
if (model == null) { if (model == null) {
return ApiResult.Failed("订单不存在"); return ApiResult.Failed("订单不存在");
} }
...@@ -492,12 +492,11 @@ namespace Edu.WebApi.Controllers.Course ...@@ -492,12 +492,11 @@ namespace Edu.WebApi.Controllers.Course
{ {
return ApiResult.ParamIsNull(); return ApiResult.ParamIsNull();
} }
var model = orderModule.GetClassOrderInfo_V2(OrderId); var model = orderModule.GetClassOrderInfoModule(OrderId);
if (model == null) if (model == null)
{ {
return ApiResult.Failed("订单不存在"); return ApiResult.Failed("订单不存在");
} }
return ApiResult.Success("", new return ApiResult.Success("", new
{ {
model.OrderId, model.OrderId,
...@@ -1542,5 +1541,19 @@ namespace Edu.WebApi.Controllers.Course ...@@ -1542,5 +1541,19 @@ namespace Edu.WebApi.Controllers.Course
return flag ? ApiResult.Success(message: message) : ApiResult.Failed(message: message); return flag ? ApiResult.Success(message: message) : ApiResult.Failed(message: message);
} }
#endregion #endregion
#region 插班报入
/// <summary>
/// 获取插板报入配置信息
/// </summary>
/// <returns></returns>
public ApiResult GetChaClassInfo()
{
var ClassId = base.ParmJObj.GetInt("ClassId");
var otherClassList = orderModule.GetClassCourseListModule(ClassId);
return ApiResult.Success(data: otherClassList);
}
#endregion
} }
} }
...@@ -88,7 +88,7 @@ namespace Edu.WebApi.Controllers.WeChatPay ...@@ -88,7 +88,7 @@ namespace Edu.WebApi.Controllers.WeChatPay
[HttpPost] [HttpPost]
[HttpGet] [HttpGet]
[AllowAnonymous] [AllowAnonymous]
public async Task<WxPayCallbackRespModel> WxPayCallback(WxPayNotifyModel wxPayNotifyModel) public WxPayCallbackRespModel WxPayCallback(WxPayNotifyModel wxPayNotifyModel)
{ {
var viewModel = new WxPayCallbackRespModel(); var viewModel = new WxPayCallbackRespModel();
try try
...@@ -112,7 +112,6 @@ namespace Edu.WebApi.Controllers.WeChatPay ...@@ -112,7 +112,6 @@ namespace Edu.WebApi.Controllers.WeChatPay
} }
else else
{ {
if (payModel != null && payModel.trade_state == "SUCCESS")//生成财务单据 if (payModel != null && payModel.trade_state == "SUCCESS")//生成财务单据
{ //然后进行数据库更新处理……等等其他操作 { //然后进行数据库更新处理……等等其他操作
UpdateFinance(payModel);//生成财务单据以及生成支付记录 UpdateFinance(payModel);//生成财务单据以及生成支付记录
...@@ -123,6 +122,7 @@ namespace Edu.WebApi.Controllers.WeChatPay ...@@ -123,6 +122,7 @@ namespace Edu.WebApi.Controllers.WeChatPay
} }
catch (Exception ex) catch (Exception ex)
{ {
Common.Plugin.LogHelper.Write(ex, "WxPayCallback");
viewModel.code = "FAIL"; viewModel.code = "FAIL";
viewModel.message = "数据解密失败"; viewModel.message = "数据解密失败";
} }
...@@ -137,7 +137,7 @@ namespace Edu.WebApi.Controllers.WeChatPay ...@@ -137,7 +137,7 @@ namespace Edu.WebApi.Controllers.WeChatPay
/// <returns></returns> /// <returns></returns>
[AllowAnonymous] [AllowAnonymous]
public async Task UpdateFinance(WxPayResourceDecryptModel payModel) public void UpdateFinance(WxPayResourceDecryptModel payModel)
{ {
LogHelper.WriteInfo("我是回调" + System.DateTime.Now); LogHelper.WriteInfo("我是回调" + System.DateTime.Now);
int contractId = Convert.ToInt32(payModel.out_trade_no[17..]); int contractId = Convert.ToInt32(payModel.out_trade_no[17..]);
...@@ -158,7 +158,7 @@ namespace Edu.WebApi.Controllers.WeChatPay ...@@ -158,7 +158,7 @@ namespace Edu.WebApi.Controllers.WeChatPay
{ {
LogHelper.WriteInfo(payModel.out_trade_no + "我要新增财务单据啦...." + System.DateTime.Now); LogHelper.WriteInfo(payModel.out_trade_no + "我要新增财务单据啦...." + System.DateTime.Now);
var orderModle = educationContractModule.GetEducationContractModule(contractId); var orderModle = educationContractModule.GetEducationContractModule(contractId);
var orderModel = orderModule.GetClassOrderInfo(orderModle.OrderId); var orderModel = orderModule.GetClassOrderInfoModule(orderModle.OrderId);
var financeConfig = educationContractModule.GetFinanceConfigList(new Model.ViewModel.Course.RB_Finance_Config_ViewModel { Group_Id = orderModle.Group_Id, Type = Common.Enum.Course.FinanceConfigTypeEnum.Tuition }).FirstOrDefault(); var financeConfig = educationContractModule.GetFinanceConfigList(new Model.ViewModel.Course.RB_Finance_Config_ViewModel { Group_Id = orderModle.Group_Id, Type = Common.Enum.Course.FinanceConfigTypeEnum.Tuition }).FirstOrDefault();
if (financeConfig == null) if (financeConfig == null)
{ {
...@@ -183,15 +183,17 @@ namespace Edu.WebApi.Controllers.WeChatPay ...@@ -183,15 +183,17 @@ namespace Edu.WebApi.Controllers.WeChatPay
ServiceFee = OriginalFee ServiceFee = OriginalFee
}; };
#region 财务单据数据组装 #region 财务单据数据组装
var detailList = new List<object>(); var detailList = new List<object>
detailList.Add(new
{ {
CostTypeId = financeConfig?.CostTypeId ?? 533, new
Number = 1, {
OriginalMoney = Convert.ToDecimal(payModel.amount.payer_total) / 100, CostTypeId = financeConfig?.CostTypeId ?? 533,
UnitPrice = Convert.ToDecimal(payModel.amount.payer_total) / 100, Number = 1,
Remark = orderModle.StudentName + orderModle.CourseName + payModel.out_trade_no OriginalMoney = Convert.ToDecimal(payModel.amount.payer_total) / 100,
}); UnitPrice = Convert.ToDecimal(payModel.amount.payer_total) / 100,
Remark = orderModle.StudentName + orderModle.CourseName + payModel.out_trade_no
}
};
var financeObj = new var financeObj = new
{ {
...@@ -216,8 +218,8 @@ namespace Edu.WebApi.Controllers.WeChatPay ...@@ -216,8 +218,8 @@ namespace Edu.WebApi.Controllers.WeChatPay
RB_BranchName = userInfo.SchoolName, RB_BranchName = userInfo.SchoolName,
RB_GroupName = userInfo.GroupName, RB_GroupName = userInfo.GroupName,
FinanceType = 2, FinanceType = 2,
GuestId = orderModle.GuestId, orderModle.GuestId,
OrderId = orderModle.OrderId, orderModle.OrderId,
TCIDList = orderModel.ClassId > 0 ? new List<int>() { orderModel.ClassId } : new List<int>(), TCIDList = orderModel.ClassId > 0 ? new List<int>() { orderModel.ClassId } : new List<int>(),
}; };
#endregion #endregion
...@@ -363,7 +365,7 @@ namespace Edu.WebApi.Controllers.WeChatPay ...@@ -363,7 +365,7 @@ namespace Edu.WebApi.Controllers.WeChatPay
[HttpPost] [HttpPost]
[HttpGet] [HttpGet]
[AllowAnonymous] [AllowAnonymous]
public async Task<RefundsCallbackRespModel> RefundsCallback(RefundsCallbackModel wxPayNotifyModel) public RefundsCallbackRespModel RefundsCallback(RefundsCallbackModel wxPayNotifyModel)
{ {
//我没有使用官方的那种验证数据安全性的方法,我解密出来数据之后,直接拿着商户退款订单号再去查询一下订单状态,然后再更新到数据库中。我嫌麻烦…… //我没有使用官方的那种验证数据安全性的方法,我解密出来数据之后,直接拿着商户退款订单号再去查询一下订单状态,然后再更新到数据库中。我嫌麻烦……
var resource = wxPayNotifyModel?.resource ?? new RefundsCallbackResourceModel(); var resource = wxPayNotifyModel?.resource ?? new RefundsCallbackResourceModel();
...@@ -420,7 +422,7 @@ namespace Edu.WebApi.Controllers.WeChatPay ...@@ -420,7 +422,7 @@ namespace Edu.WebApi.Controllers.WeChatPay
[AllowAnonymous] [AllowAnonymous]
public async Task UpdateRefundsCallbackFinance(RefundsCallbackDecryptModel payModel) public void UpdateRefundsCallbackFinance(RefundsCallbackDecryptModel payModel)
{ {
int contractId = Convert.ToInt32(payModel.out_trade_no[17..]); int contractId = Convert.ToInt32(payModel.out_trade_no[17..]);
bool isAdd = false; bool isAdd = false;
...@@ -439,7 +441,7 @@ namespace Edu.WebApi.Controllers.WeChatPay ...@@ -439,7 +441,7 @@ namespace Edu.WebApi.Controllers.WeChatPay
if (isAdd) if (isAdd)
{ {
var orderModle = educationContractModule.GetEducationContractModule(contractId); var orderModle = educationContractModule.GetEducationContractModule(contractId);
var orderModel = orderModule.GetClassOrderInfo(orderModle.OrderId); var orderModel = orderModule.GetClassOrderInfoModule(orderModle.OrderId);
var payOrderRecordModel = educationContractModule.GetOrderRecordList(new RB_Finance_OrderRecord { ContractId = contractId, OutTradeNo = payModel.out_trade_no }).FirstOrDefault(); var payOrderRecordModel = educationContractModule.GetOrderRecordList(new RB_Finance_OrderRecord { ContractId = contractId, OutTradeNo = payModel.out_trade_no }).FirstOrDefault();
var userInfo = employeeModule.GetEmployeeListModule(new Model.ViewModel.User.Employee_ViewModel { Id = orderModel.EnterID, Group_Id = orderModel.Group_Id }).ToList().FirstOrDefault(); var userInfo = employeeModule.GetEmployeeListModule(new Model.ViewModel.User.Employee_ViewModel { Id = orderModel.EnterID, Group_Id = orderModel.Group_Id }).ToList().FirstOrDefault();
var OriginalFee = Math.Round(Convert.ToDecimal((Convert.ToDecimal(Config.SettlementRate) / 100) * (Convert.ToDecimal(payModel.amount.payer_total) / 100)), 2, MidpointRounding.AwayFromZero);//手续费 var OriginalFee = Math.Round(Convert.ToDecimal((Convert.ToDecimal(Config.SettlementRate) / 100) * (Convert.ToDecimal(payModel.amount.payer_total) / 100)), 2, MidpointRounding.AwayFromZero);//手续费
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment