Пример #1
0
        /// <summary>修改订单支付状态(不插入异常数据)
        /// </summary>
        /// <param name="saleFilialeId"></param>
        /// <param name="orderId">订单id</param>
        /// <param name="payState">支付状态</param>
        /// <param name="state">GoodsOrderPayState订单状态</param>
        public static bool UpdatePayStateByOrderIdAndStateBool(Guid saleFilialeId, Guid orderId, PayState payState, GoodsOrderPayState state)
        {
            var pushDataId = Guid.NewGuid();

            using (var client = ClientProxy.CreateB2CWcfClient(saleFilialeId))
            {
                var result = client.Instance.UpdatePayStateByOrderIdAndState(pushDataId, orderId, (Int32)payState, (Int32)state);
                if (result == null || result.IsAccomplishExecuted == false)
                {
                    return(false);
                }
                return(true);
            }
        }
Пример #2
0
        /// <summary>获取一条支付流水记录
        /// </summary>
        /// <param name="orderId">订单ID</param>
        /// <param name="gopstate">商品订单支付状态枚举</param>
        /// <param name="saleFilialeId"></param>
        /// <returns></returns>
        internal GoodsOrderPayInfo GetGoodsOrderPayInfoByOrderIdStatePayState(Guid saleFilialeId, Guid orderId, GoodsOrderPayState gopstate)
        {
            IList<GoodsOrderPayInfo> infos = OrderSao.GetGoodsOrderPayListByOrderId(saleFilialeId, orderId);

            IList<GoodsOrderPayInfo> gopinfos =
                infos.Where(d => d.PayState == (int)PayState.NoPay && d.State == (int)gopstate).ToList();
            if (gopinfos.Count > 0)
            {
                return gopinfos[0];
            }
            IList<GoodsOrderPayInfo> ginfos =
                infos.Where(d => d.PayState == (int)PayState.Wait && d.State == (int)gopstate).ToList();
            if (ginfos.Count > 0)
            {
                return ginfos[0];
            }

            if (infos.Count > 0)
            {
                return new GoodsOrderPayInfo();
            }
            return null;
        }