Esempio n. 1
0
        public void InsertTradeHistory(Table.TblTrade tblTrade, TcpMsg.TradeStatus status, Int64 buyeruuid, string buyernickName)
        {
            var repoTrade = TCGGameSrv.IocContainer.Resolve <Repository.ITrading>();

            if (!repoTrade.TradeDelete(tblTrade.seq))
            {
                logger.Warn($"Trade Delete fail seq={tblTrade.seq} status={status.ToString()}");
            }
            else
            {
                var tblTradeHistory = new Table.TblTradeHistory()
                {
                    seller_uuid     = tblTrade.uuid,
                    seller_nickname = tblTrade.nickname,
                    buyer_uuid      = buyeruuid,
                    buyer_nickname  = buyernickName,
                    tokenid         = $"{tblTrade.tokentype}{tblTrade.tokenidx}",
                    cardid          = tblTrade.cardid,
                    tokenidxnum     = tblTrade.tokenidxnum,
                    sale_price      = tblTrade.sale_price,
                    status          = (Int32)status,
                    comment         = tblTrade.comment,
                    regdate         = DateTime.Now
                };

                tblTradeHistory.seq = repoTrade.HistoryInsert(tblTradeHistory);
            }
        }
        public bool TradeUpdate(Int64 seq, TcpMsg.TradeStatus setstatus, TcpMsg.TradeStatus wherestatus)
        {
            Int32 ret = 0;

            using (IDbConnection conn = Database.GetDbConnection())
            {
                string qry = $"update {Table.TblTrade.Name} set status=@SETSTATUS where seq=@SEQ and status=@WHERESTATUS;";
                ret = conn.Execute(qry, new
                {
                    SETSTATUS   = (Int32)setstatus,
                    SEQ         = seq,
                    WHERESTATUS = (Int32)wherestatus
                });
            }

            return(ret > 0);
        }
        public Table.TblTrade GetTblTradeSeq(Int64 seq, TcpMsg.TradeStatus status = TcpMsg.TradeStatus.None)
        {
            Table.TblTrade ret = null;
            using (IDbConnection conn = Database.GetDbConnection())
            {
                string where = string.Empty;

                if (status != TcpMsg.TradeStatus.None)
                {
                    where = $"seq = {seq} and status = {(Int32)status}";
                }
                else
                {
                    where = $"seq = {seq}";
                }

                string qry = $"select * from {Table.TblTrade.Name} where {where};";
                ret = Dapper.SqlMapper.Query <Table.TblTrade>(conn, qry).FirstOrDefault();
            }
            return(ret);
        }
Esempio n. 4
0
        public Table.TblTrade GetTradeGoods(Int64 seq, TcpMsg.TradeStatus status = TcpMsg.TradeStatus.None)
        {
            var repoTrading = TCGGameSrv.IocContainer.Resolve <Repository.ITrading>();

            return(repoTrading.GetTblTradeSeq(seq, status));
        }