示例#1
0
        /// <summary>
        /// 查询交易
        /// </summary>
        /// <param name="DeptNo"></param>
        /// <param name="saleFlow"></param>
        /// <param name="msg"></param>
        /// <returns></returns>
        public static bool QueryTrade(string PosNo, out ICollection <MSaleFlow> saleFlows, out string msg)
        {
            SqlDataReader rd = null;
            StringBuilder sb = new StringBuilder();

            sb.Append(" select a.sgroup,a.operater,a.serial_no,a.PosNo,a.code,b.Fname ");
            sb.Append(",a.Price,a.qty,a.pre_total,a.disc,a.TOTAL,a.real_total ");
            sb.Append(" ,a.sa_date,a.sa_time,a.Squadno ,a.RowNo");
            sb.Append("  from pos_Sales a left join pos_goods b on a.code=b.incode ");
            sb.AppendFormat(" where PosNo='{0}'", PosNo);
            try
            {
                if (!DBTool.ExecSql(sb.ToString(), out rd, out msg))
                {
                    saleFlows = null;
                    return(false);
                }
                else
                {
                    saleFlows = new List <MSaleFlow>();
                    while (rd.Read())
                    {
                        MSaleFlow saleFlow = new MSaleFlow();
                        saleFlow.DeptCode  = Convert.ToString(rd["sgroup"]);
                        saleFlow.Disc      = Convert.ToInt16(rd["disc"]);
                        saleFlow.Fname     = Convert.ToString(rd["Fname"]);
                        saleFlow.Incode    = Convert.ToString(rd["code"]);
                        saleFlow.Operater  = Convert.ToString(rd["operater"]);
                        saleFlow.PosNo     = Convert.ToString(rd["PosNo"]);
                        saleFlow.PreTotal  = Convert.ToDecimal(rd["pre_total"]);
                        saleFlow.Price     = Convert.ToDecimal(rd["Price"]);
                        saleFlow.Qty       = Convert.ToDecimal(rd["qty"]);
                        saleFlow.RealTotal = Convert.ToDecimal(rd["real_total"]);
                        saleFlow.RowNo     = Convert.ToInt16(rd["RowNo"]);
                        saleFlow.Sa_date   = Convert.ToDateTime(rd["sa_date"]);
                        saleFlow.Sa_time   = Convert.ToString(rd["sa_time"]);
                        saleFlow.SerialNo  = Convert.ToString(rd["serial_no"]);
                        saleFlow.SquadNO   = Convert.ToString(rd["Squadno"]);
                        saleFlow.Total     = Convert.ToDecimal(rd["TOTAL"]);
                        saleFlows.Add(saleFlow);
                    }
                    rd.Close();
                    if (saleFlows.Count > 0)
                    {
                        return(true);
                    }
                    else
                    {
                        msg = "未查询到流水";
                        return(false);
                    }
                }
            }
            catch (Exception ex)
            {
                if (rd != null && !rd.IsClosed)
                {
                    rd.Close();
                }
                msg       = "系统异常:" + ex.Message;
                saleFlows = null;
                return(false);
            }
        }