移动系统liao
2025-01-02 63a83521fa76fbbbd39656d85ec5a251c46e0ed3
cylsg/cylsg.Application/Transfer/UserTransfer.cs
@@ -285,7 +285,7 @@
                SearchList = SearchList.And(x =>x.IsSetOK==param.IsSetOK);
            }
            if (param.HasSendOk == false)
                SearchList= SearchList.And(x => x.FailNum >0||x.BatchStatus!= "FINISHED");
                SearchList= SearchList.And(x =>( x.FailNum >0||x.BatchStatus!= "FINISHED")||(x.BatchStatus==null&&x.ErrorCode== "NOT_ENOUGH")); //NOT_ENOUGH 是账户没有钱
            else
                //有一笔大余0 的视为失败
                SearchList= SearchList.And(x => x.FailNum ==0&&x.BatchStatus=="FINISHED");
@@ -358,7 +358,7 @@
            {
                throw Oops.Oh("已经处理不再处理");
            }
           if(!(TOrder.ErrorCode== "INVALID_REQUEST"&&TOrder.ErrorMsg== "对应单号已超出重试期,请查单确认后决定是否换单请求"))
           if(!((TOrder.ErrorCode== "INVALID_REQUEST"&&TOrder.ErrorMsg== "对应单号已超出重试期,请查单确认后决定是否换单请求")|| (TOrder.ErrorCode == "NOT_ENOUGH")))
            {
                //不满足冲洗支付要求
                throw Oops.Oh("不满足重新支付要求");
@@ -366,7 +366,25 @@
                   
            var rs = new BaseRepository<UserWorker>();
            var userid = TOrder.UserID;
            var Money =  (TOrder.FailAmount??0)/100m;
            decimal Money = 0;
            if (TOrder.FailAmount==null)
            {
                decimal overTotal = 0;
                if (TOrder.BatchId == null)
                {
                    overTotal = 0;//没有支付单,证明没有支付
                }
                else
                    overTotal = (TOrder.SuccessAmount??0)/100m;
                //这个是没有创建提交单 按原价重新支付
                Money = ((TOrder.TotalAmount??0)/100m)-overTotal;
            }
            else
             Money =  (TOrder.FailAmount??0)/100m;
            if(Money<0.03m)
            {
                throw Oops.Oh("失败金额不足0.3元不能再次发起支付");
@@ -406,9 +424,9 @@
                    var UserTiXianDetailwork = new BaseRepository<UserTiXianDetail>();
                    var WeChatTransferOrderwork = new BaseRepository<WeChatTransferOrder>();
                    if ((uw != null) && (((uw.TiXianZonge ?? 0) - (uw.YiTiXianJine ?? 0)) >= Money))
                    if ((uw != null) && Money<= (uw.TiXianZonge ?? 0))
                    {
                        //满足条件,发起支付
                        //满足条件,发起支付 这里不判断支付金额大鱼可提现余额
                        var TransferOrder = new WeChatTransferOrder
                        {
@@ -509,7 +527,7 @@
                    }
                    else
                    {
                        throw Oops.Oh("系统错误");
                        throw Oops.Oh("没有工作资料或者是提现额度已经大余总额了");
                    }
                }