234 lines
15 KiB
C#
234 lines
15 KiB
C#
using System;
|
|
using System.Data;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Web;
|
|
using SuperMap.RealEstate.ServiceModel;
|
|
using SuperMap.RealEstate.FrameWork.Business;
|
|
using SRHSB = SuperMap.RealEstate.HighWay.SellData.Business;
|
|
using Business = SuperMap.RealEstate.HighWay.Storage.Business;
|
|
|
|
namespace SuperMap.RealEstate.HighWay.Handler.CommonInterface
|
|
{
|
|
public class RevenueData
|
|
{
|
|
#region 方法 -> 获取资金动态
|
|
public static string GetFundDynamics(Transaction _Transaction)
|
|
{
|
|
double FormatNumber, NextNumber, TotalFormatNumber = 0.00, TotalNextNumber = 0.00;
|
|
string RetString = "", WhereRunningSql = "", WhereStorageSql = "";
|
|
string _ENDACCOUNT_ID = CommonHelper.Request("ENDACCOUNT_ID");
|
|
|
|
try
|
|
{
|
|
#region 合计信息
|
|
/*SRHSB.ENDACCOUNT _ENDACCOUNT = new SRHSB.ENDACCOUNT(_Transaction);
|
|
SRHSB.ENDACCOUNT_TEMP _ENDACCOUNT_TEMP = new SRHSB.ENDACCOUNT_TEMP(_Transaction);
|
|
if (CurrObject != null && CurrObject.PropertyObject != null && CurrObject.ENDACCOUNT_ID != null)
|
|
{
|
|
//单品合计
|
|
if (CurrObject.FACTAMOUNT_SALE == null)
|
|
{
|
|
dt = CurrObject.ExecuteDataTable(string.Format(@"SELECT NVL(SUM(TRANSFER_THIRTEENTHDATAS),0),
|
|
NVL(SUM(TRANSFER_FOURTEENTHDATAS),0),NVL(SUM(TRANSFER_FIFTEENTHDATAS),0)
|
|
FROM (SELECT TRANSFER_THIRTEENTHDATAS,TRANSFER_FOURTEENTHDATAS,TRANSFER_FIFTEENTHDATAS
|
|
FROM HIGHWAY_EXCHANGE.T_TRANSFER_SALE A
|
|
WHERE A.SERVERPARTCODE = '{0}' AND A.SHOPCODE = '{1}' AND
|
|
A.MACHINECODE = '{2}' AND A.MACHINECODE IS NOT NULL AND
|
|
A.ENDDATE <= TO_DATE('{3}','YYYY-MM-DD HH24:MI:SS') AND
|
|
A.STARTDATE >= TO_DATE('{4}','YYYY-MM-DD HH24:MI:SS')
|
|
UNION ALL
|
|
SELECT TRANSFER_THIRTEENTHDATAS,TRANSFER_FOURTEENTHDATAS,TRANSFER_FIFTEENTHDATAS
|
|
FROM
|
|
HIGHWAY_EXCHANGE.T_TRANSFER_SALE A,
|
|
HIGHWAY_SELLDATA.T_PERSONSELL B
|
|
WHERE
|
|
A.ENDDATE = B.SELL_ENDDATE AND A.STARTDATE = B.SELL_STARTDATE AND
|
|
A.SERVERPARTCODE = B.SERVERPARTCODE AND A.SHOPCODE = B.SHOPCODE AND
|
|
A.SERVERPARTCODE = '{0}' AND A.SHOPCODE = '{1}' AND
|
|
B.MACHINECODE = '{2}' AND A.MACHINECODE IS NULL AND
|
|
A.ENDDATE <= TO_DATE('{3}','YYYY-MM-DD HH24:MI:SS') AND
|
|
A.STARTDATE >= TO_DATE('{4}','YYYY-MM-DD HH24:MI:SS'))",
|
|
CurrObject.SERVERPARTCODE, CurrObject.SHOPCODE, CurrObject.MACHINECODE,
|
|
CurrObject.ENDACCOUNT_DATE, CurrObject.ENDACCOUNT_STARTDATE));
|
|
if (dt.Rows.Count > 0)
|
|
{
|
|
TICKETCODE_SALE.Text = dt.Rows[0][0].ToString();
|
|
SELLCOUNT_SALE.Text = (decimal.Parse(dt.Rows[0][1].ToString()) +
|
|
(string.IsNullOrEmpty(_SALE_SELLCOUNT) ? 0 : decimal.Parse(_SALE_SELLCOUNT))).ToString();
|
|
FACTAMOUNT_SALE.Text = (decimal.Parse(dt.Rows[0][2].ToString()) +
|
|
(string.IsNullOrEmpty(_SALE_SUPPLEMENT) ? 0 : decimal.Parse(_SALE_SUPPLEMENT))).ToString();
|
|
}
|
|
else
|
|
{
|
|
#region 单品报表数据
|
|
try
|
|
{
|
|
dt = CurrObject.ExecuteDataTable(string.Format(@"SELECT
|
|
NVL(SUM(TICKETCOUNT),0),NVL(SUM(TOTALCOUNT),0),NVL(SUM(TOTALSELLAMOUNT),0)
|
|
FROM (SELECT A.TICKETCOUNT,A.TOTALCOUNT,A.TOTALSELLAMOUNT
|
|
FROM HIGHWAY_EXCHANGE.{0} A
|
|
WHERE
|
|
A.SERVERPARTCODE = '{1}' AND A.SHOPCODE = '{2}' AND
|
|
A.MACHINECODE = '{3}' AND A.MACHINECODE IS NOT NULL AND
|
|
A.ENDDATE <= TO_DATE('{5}','YYYY-MM-DD HH24:MI:SS') AND
|
|
A.STARTDATE >= TO_DATE('{6}','YYYY-MM-DD HH24:MI:SS')
|
|
UNION ALL
|
|
SELECT A.TICKETCOUNT,A.TOTALCOUNT,A.TOTALSELLAMOUNT
|
|
FROM
|
|
HIGHWAY_EXCHANGE.{0} A,
|
|
HIGHWAY_SELLDATA.T_PERSONSELL B
|
|
WHERE
|
|
A.ENDDATE = B.SELL_ENDDATE AND A.STARTDATE = B.SELL_STARTDATE AND
|
|
A.SERVERPARTCODE = B.SERVERPARTCODE AND A.SHOPCODE = B.SHOPCODE AND
|
|
A.SERVERPARTCODE = '{1}' AND A.SHOPCODE = '{2}' AND
|
|
B.MACHINECODE = '{3}' AND A.MACHINECODE IS NULL AND
|
|
B.SELL_ENDDATE <= TO_DATE('{5}','YYYY-MM-DD HH24:MI:SS') AND
|
|
B.SELL_STARTDATE >= TO_DATE('{6}','YYYY-MM-DD HH24:MI:SS'))",
|
|
Flag ? "T_COMMODITYSALE_TEMP" : "T_COMMODITYSALE", CurrObject.SERVERPARTCODE, CurrObject.SHOPCODE,
|
|
CurrObject.MACHINECODE, CurrObject.ENDACCOUNT_DATE, CurrObject.ENDACCOUNT_STARTDATE));
|
|
}
|
|
catch
|
|
{
|
|
dt = CurrObject.ExecuteDataTable(string.Format(@"SELECT
|
|
NVL(SUM(TICKETCOUNT),0),NVL(SUM(TOTALCOUNT),0),NVL(SUM(TOTALSELLAMOUNT),0)
|
|
FROM
|
|
HIGHWAY_EXCHANGE.{0} A,
|
|
HIGHWAY_SELLDATA.T_PERSONSELL B
|
|
WHERE
|
|
A.ENDDATE = B.SELL_ENDDATE AND A.STARTDATE = B.SELL_STARTDATE AND
|
|
A.SERVERPARTCODE = B.SERVERPARTCODE AND A.SHOPCODE = B.SHOPCODE AND
|
|
B.MACHINECODE = '" + CurrObject.MACHINECODE + "' AND A.ENDDATE <= TO_DATE('" +
|
|
CurrObject.ENDACCOUNT_DATE + "','YYYY-MM-DD HH24:MI:SS') AND A.STARTDATE >= TO_DATE('" +
|
|
CurrObject.ENDACCOUNT_STARTDATE + "','YYYY-MM-DD HH24:MI:SS') AND B.SERVERPART_ID = " +
|
|
CurrObject.SERVERPART_ID + " AND A.SHOPCODE = '" + CurrObject.SHOPCODE + "'",
|
|
Flag ? "T_COMMODITYSALE_TEMP" : "T_COMMODITYSALE"));
|
|
}
|
|
if (dt.Rows.Count > 0)
|
|
{
|
|
TICKETCODE_SALE.Text = dt.Rows[0][0].ToString();
|
|
SELLCOUNT_SALE.Text = (decimal.Parse(dt.Rows[0][1].ToString()) +
|
|
(string.IsNullOrEmpty(_SALE_SELLCOUNT) ? 0 : decimal.Parse(_SALE_SELLCOUNT))).ToString();
|
|
FACTAMOUNT_SALE.Text = (decimal.Parse(dt.Rows[0][2].ToString()) +
|
|
(string.IsNullOrEmpty(_SALE_SUPPLEMENT) ? 0 : decimal.Parse(_SALE_SUPPLEMENT))).ToString();
|
|
}
|
|
#endregion
|
|
}
|
|
}
|
|
else
|
|
{
|
|
if (!string.IsNullOrEmpty(Request["SELLCOUNT_SALE"]))
|
|
{
|
|
TICKETCODE_SALE.Text = Request["SELLCOUNT_SALE"].ToDecrypt();
|
|
}
|
|
if (!string.IsNullOrEmpty(Request["FACTAMOUNT_SALE"]))
|
|
{
|
|
FACTAMOUNT_SALE.Text = Request["FACTAMOUNT_SALE"].ToDecrypt();
|
|
}
|
|
}
|
|
SALEAMOUNT.Text = FACTAMOUNT_SALE.Text;
|
|
//香烟合计
|
|
if (CurrObject.TICKETCODE_CIGARETTE == null)
|
|
{
|
|
string _COMMODITY_TYPE = "", _COMMODITYTYPE_ID = "";
|
|
foreach (Storage.Business.COMMODITYTYPE _COMMODITYTYPE in new Storage.Business.COMMODITYTYPE(CurrObject).FillCollection(
|
|
"WHERE COMMODITYTYPE_CODE IN (" + CigaretteType + ")"))
|
|
{
|
|
_COMMODITY_TYPE += (_COMMODITY_TYPE == "" ? "" : ",") + "'" + _COMMODITYTYPE.COMMODITYTYPE_NAME + "'";
|
|
_COMMODITYTYPE_ID += (_COMMODITYTYPE_ID == "" ? "" : ",") + _COMMODITYTYPE.COMMODITYTYPE_ID;
|
|
}
|
|
if (!string.IsNullOrEmpty(_COMMODITY_TYPE) && new Storage.Business.COMMODITY(Transaction).FillCollection(
|
|
"WHERE SERVERPART_ID IN (" + CurrObject.SERVERPART_ID + "," + _UmiformCommodity.Split('|')[0] +
|
|
") AND COMMODITY_STATE = 1 AND PROVINCE_CODE = " + CurrObject.PROVINCE_CODE +
|
|
" AND BUSINESSTYPE IN (SELECT SHOPTRADE FROM HIGHWAY_STORAGE.T_SERVERPARTSHOP WHERE SERVERPART_ID = " +
|
|
CurrObject.SERVERPART_ID + " AND SHOPCODE = '" + CurrObject.SHOPCODE +
|
|
"' AND COMMODITY_TYPE IN (" + _COMMODITYTYPE_ID + "))").Count > 0)
|
|
{
|
|
#region 香烟报表数据
|
|
try
|
|
{
|
|
dt = CurrObject.ExecuteDataTable(string.Format(@"SELECT
|
|
NVL(SUM(TICKETCOUNT),0),NVL(SUM(TOTALCOUNT),0),NVL(SUM(TOTALSELLAMOUNT),0)
|
|
FROM (SELECT A.TICKETCOUNT,A.TOTALCOUNT,A.TOTALSELLAMOUNT
|
|
FROM HIGHWAY_EXCHANGE.{0} A
|
|
WHERE
|
|
A.SERVERPARTCODE = '{1}' AND A.SHOPCODE = '{2}' AND
|
|
A.MACHINECODE = '{3}' AND A.COMMODITY_TYPE IN ({4}) AND
|
|
A.ENDDATE <= TO_DATE('{5}','YYYY-MM-DD HH24:MI:SS') AND
|
|
A.STARTDATE >= TO_DATE('{6}','YYYY-MM-DD HH24:MI:SS') AND
|
|
A.MACHINECODE IS NOT NULL
|
|
UNION ALL
|
|
SELECT A.TICKETCOUNT,A.TOTALCOUNT,A.TOTALSELLAMOUNT
|
|
FROM
|
|
HIGHWAY_EXCHANGE.{0} A,
|
|
HIGHWAY_SELLDATA.T_PERSONSELL B
|
|
WHERE
|
|
A.ENDDATE = B.SELL_ENDDATE AND A.STARTDATE = B.SELL_STARTDATE AND
|
|
A.SERVERPARTCODE = B.SERVERPARTCODE AND A.SHOPCODE = B.SHOPCODE AND
|
|
A.SERVERPARTCODE = '{1}' AND A.SHOPCODE = '{2}' AND
|
|
B.MACHINECODE = '{3}' AND A.COMMODITY_TYPE IN ({4}) AND
|
|
B.SELL_ENDDATE <= TO_DATE('{5}','YYYY-MM-DD HH24:MI:SS') AND
|
|
B.SELL_STARTDATE >= TO_DATE('{6}','YYYY-MM-DD HH24:MI:SS') AND
|
|
A.MACHINECODE IS NULL)", Flag ? "T_COMMODITYSALE_TEMP" : "T_COMMODITYSALE",
|
|
CurrObject.SERVERPARTCODE, CurrObject.SHOPCODE, CurrObject.MACHINECODE,
|
|
_COMMODITY_TYPE, CurrObject.ENDACCOUNT_DATE, CurrObject.ENDACCOUNT_STARTDATE));
|
|
}
|
|
catch
|
|
{
|
|
dt = CurrObject.ExecuteDataTable(string.Format(@"SELECT
|
|
NVL(SUM(A.TICKETCOUNT),0),NVL(SUM(A.TOTALCOUNT),0),NVL(SUM(A.TOTALSELLAMOUNT),0)
|
|
FROM
|
|
HIGHWAY_EXCHANGE.{0} A,
|
|
HIGHWAY_SELLDATA.T_PERSONSELL B
|
|
WHERE
|
|
A.ENDDATE = B.SELL_ENDDATE AND A.STARTDATE = B.SELL_STARTDATE AND
|
|
A.SERVERPARTCODE = B.SERVERPARTCODE AND A.SHOPCODE = B.SHOPCODE AND
|
|
B.MACHINECODE = '" + CurrObject.MACHINECODE + "' AND A.ENDDATE <= TO_DATE('" +
|
|
CurrObject.ENDACCOUNT_DATE + "','YYYY-MM-DD HH24:MI:SS') AND A.STARTDATE >= TO_DATE('" +
|
|
CurrObject.ENDACCOUNT_STARTDATE + "','YYYY-MM-DD HH24:MI:SS') AND B.SERVERPART_ID = " +
|
|
CurrObject.SERVERPART_ID + " AND A.SHOPCODE = '" + CurrObject.SHOPCODE + "' AND COMMODITY_TYPE IN (" +
|
|
_COMMODITY_TYPE + ")", Flag ? "T_COMMODITYSALE_TEMP" : "T_COMMODITYSALE"));
|
|
}
|
|
#endregion
|
|
|
|
TICKETCODE_CIGARETTE.Text = dt.Rows[0][0].ToString();
|
|
SELLCOUNT_CIGARETTE.Text = (decimal.Parse(dt.Rows[0][1].ToString()) +
|
|
(string.IsNullOrEmpty(_CIGARETTE_SELLCOUNT) ? 0 : decimal.Parse(_CIGARETTE_SELLCOUNT))).ToString();
|
|
FACTAMOUNT_CIGARETTE.Text = (decimal.Parse(dt.Rows[0][2].ToString()) +
|
|
(string.IsNullOrEmpty(_CIGARETTE_SUPPLEMENT) ? 0 : decimal.Parse(_CIGARETTE_SUPPLEMENT))).ToString();
|
|
}
|
|
else
|
|
{
|
|
TICKETCODE_CIGARETTE.Text = "0";
|
|
SELLCOUNT_CIGARETTE.Text = "0";
|
|
FACTAMOUNT_CIGARETTE.Text = "0";
|
|
}
|
|
}
|
|
else
|
|
{
|
|
if (!string.IsNullOrEmpty(Request["SELLCOUNT_CIGARETTE"]))
|
|
{
|
|
TICKETCODE_SALE.Text = Request["SELLCOUNT_CIGARETTE"].ToDecrypt();
|
|
}
|
|
if (!string.IsNullOrEmpty(Request["FACTAMOUNT_CIGARETTE"]))
|
|
{
|
|
FACTAMOUNT_CIGARETTE.Text = Request["FACTAMOUNT_CIGARETTE"].ToDecrypt();
|
|
}
|
|
}
|
|
CIGARETTEAMOUNT.Text = FACTAMOUNT_CIGARETTE.Text;
|
|
}*/
|
|
#endregion
|
|
|
|
RetString += '|' + TotalFormatNumber.ToString("N") + '|' + TotalNextNumber.ToString("N") +
|
|
'|' + (TotalFormatNumber + TotalNextNumber).ToString("N");
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
SuperMap.RealEstate.Utility.ErrorLogHelper.Write(ex);
|
|
}
|
|
|
|
return RetString;
|
|
}
|
|
#endregion
|
|
}
|
|
} |