@ -77,7 +77,7 @@ namespace POSV.Utils
}
}
catch ( Exception ex )
catch ( Exception ex )
{
{
logger . Error ( ex , "初始化消息中心异常" ) ;
logger . Error ( ex , "初始化消息中心异常" ) ;
}
}
}
}
@ -85,7 +85,7 @@ namespace POSV.Utils
/// 检测消息中心是否正常。1)没有配置消息中心;2)启用了消息中心是否连接;
/// 检测消息中心是否正常。1)没有配置消息中心;2)启用了消息中心是否连接;
/// </summary>
/// </summary>
/// <returns></returns>
/// <returns></returns>
public Tuple < bool , bool > IsAvailable ( )
public Tuple < bool , bool > IsAvailable ( )
{
{
bool enabled = false ;
bool enabled = false ;
bool connected = false ;
bool connected = false ;
@ -95,7 +95,7 @@ namespace POSV.Utils
Stopwatch watch = Stopwatch . StartNew ( ) ;
Stopwatch watch = Stopwatch . StartNew ( ) ;
//是否启用消息中心
//是否启用消息中心
bool enabledMessageCenter = Global . Instance . GlobalConfigBoolValue ( ConfigConstant . DEVICE_SERVICECENTER_ENABLE , false ) ;
bool enabledMessageCenter = Global . Instance . GlobalConfigBoolValue ( ConfigConstant . DEVICE_SERVICECENTER_ENABLE , false ) ;
if ( enabledMessageCenter )
if ( enabledMessageCenter )
{
{
enabled = true ;
enabled = true ;
@ -110,8 +110,8 @@ namespace POSV.Utils
logger . Info ( "开始检测服务中心是否通畅耗时" ) ;
logger . Info ( "开始检测服务中心是否通畅耗时" ) ;
//获取配置的参数
//获取配置的参数
string host = Global . Instance . GlobalConfigStringValue ( ConfigConstant . DEVICE_SERVICECENTER_IP , string . Empty ) ;
string host = Global . Instance . GlobalConfigStringValue ( ConfigConstant . DEVICE_SERVICECENTER_IP , string . Empty ) ;
int port = Global . Instance . GlobalConfigIntValue ( ConfigConstant . DEVICE_SERVICECENTER_PORT , 0 ) ;
int port = Global . Instance . GlobalConfigIntValue ( ConfigConstant . DEVICE_SERVICECENTER_PORT , 0 ) ;
//IP和端口配置错误
//IP和端口配置错误
if ( string . IsNullOrEmpty ( host ) | | port = = 0 )
if ( string . IsNullOrEmpty ( host ) | | port = = 0 )
@ -121,8 +121,8 @@ namespace POSV.Utils
else
else
{
{
//检测IP和端口是否通畅
//检测IP和端口是否通畅
var url = string . Format ( "{0}{1}" , this . _baseUrl , "/amok" ) ;
var url = string . Format ( "{0}{1}" , this . _baseUrl , "/amok" ) ;
HttpResult hr = this . _httpManager . Get ( url , null , 2000 ) ;
HttpResult hr = this . _httpManager . Get ( url , null , 2000 ) ;
connected = ( hr . Code = = 200 ) ;
connected = ( hr . Code = = 200 ) ;
}
}
@ -131,17 +131,17 @@ namespace POSV.Utils
{
{
connected = false ;
connected = false ;
}
}
logger . Info ( "检测服务中心是否通畅 耗时<{0}>" , watch . ElapsedMilliseconds ) ;
logger . Info ( "检测服务中心是否通畅 [{0}]耗时<{1}>", connected , watch . ElapsedMilliseconds ) ;
}
}
catch ( Exception ex )
catch ( Exception ex )
{
{
logger . Error ( ex , "连接消息中心失败" ) ;
logger . Error ( ex , "连接消息中心失败" ) ;
enabled = false ;
enabled = false ;
connected = false ;
connected = false ;
}
}
return new Tuple < bool , bool > ( enabled , connected ) ;
return new Tuple < bool , bool > ( enabled , connected ) ;
}
}
@ -153,7 +153,7 @@ namespace POSV.Utils
get
get
{
{
//是否启用共享沽清
//是否启用共享沽清
var enableSaleClear = Global . Instance . GlobalConfigBoolValue ( ConfigConstant . DEVICE_SALECLEAR_ENABLE , false ) ;
var enableSaleClear = Global . Instance . GlobalConfigBoolValue ( ConfigConstant . DEVICE_SALECLEAR_ENABLE , false ) ;
//1)启用消息中心;2)消息中心连接正常;3)参数配置中设置了共享沽清
//1)启用消息中心;2)消息中心连接正常;3)参数配置中设置了共享沽清
return Global . Instance . MessageCenterOnline . Item1 & & Global . Instance . MessageCenterOnline . Item2 & & enableSaleClear ;
return Global . Instance . MessageCenterOnline . Item1 & & Global . Instance . MessageCenterOnline . Item2 & & enableSaleClear ;
@ -166,7 +166,7 @@ namespace POSV.Utils
/// </summary>
/// </summary>
/// <param name="length"></param>
/// <param name="length"></param>
/// <returns></returns>
/// <returns></returns>
public Tuple < bool , string , string > GetGlobalTicketNo ( int length = 4 )
public Tuple < bool , string , string > GetGlobalTicketNo ( int length = 4 )
{
{
lock ( Global . Instance . CacheLock )
lock ( Global . Instance . CacheLock )
{
{
@ -174,29 +174,29 @@ namespace POSV.Utils
{
{
if ( ! string . IsNullOrEmpty ( this . _baseUrl ) )
if ( ! string . IsNullOrEmpty ( this . _baseUrl ) )
{
{
var url = string . Format ( "{0}{1}{2}" , this . _baseUrl , "/trade/" , length ) ;
var url = string . Format ( "{0}{1}{2}" , this . _baseUrl , "/trade/" , length ) ;
HttpResult hr = this . _httpManager . Get ( url , null ) ;
HttpResult hr = this . _httpManager . Get ( url , null ) ;
if ( hr . Code = = 200 )
if ( hr . Code = = 200 )
{
{
return new Tuple < bool , string , string > ( true , string . Format ( "获取到全局票号成功<{0}>" , hr . Text ) , hr . Text ) ;
return new Tuple < bool , string , string > ( true , string . Format ( "获取到全局票号成功<{0}>" , hr . Text ) , hr . Text ) ;
}
}
else
else
{
{
return new Tuple < bool , string , string > ( false , string . Format ( "获取到全局票号失败<{0}>" , hr . Text ) , hr . Text ) ;
return new Tuple < bool , string , string > ( false , string . Format ( "获取到全局票号失败<{0}>" , hr . Text ) , hr . Text ) ;
}
}
}
}
else
else
{
{
return new Tuple < bool , string , string > ( false , this . _message , string . Empty ) ;
return new Tuple < bool , string , string > ( false , this . _message , string . Empty ) ;
}
}
}
}
catch ( Exception ex )
catch ( Exception ex )
{
{
logger . Error ( ex , "获取全局票号异常" ) ;
logger . Error ( ex , "获取全局票号异常" ) ;
return new Tuple < bool , string , string > ( false , "获取全局票号失败" , string . Empty ) ;
return new Tuple < bool , string , string > ( false , "获取全局票号失败" , string . Empty ) ;
}
}
}
}
}
}
@ -207,37 +207,37 @@ namespace POSV.Utils
/// <param name="length"></param>
/// <param name="length"></param>
/// <param name="initialValue"></param>
/// <param name="initialValue"></param>
/// <returns></returns>
/// <returns></returns>
public Tuple < bool , string , string > GetGlobalOrderNo ( int length = 2 , int initialValue = 0 )
public Tuple < bool , string , string > GetGlobalOrderNo ( int length = 2 , int initialValue = 0 )
{
{
lock ( Global . Instance . CacheLock )
lock ( Global . Instance . CacheLock )
{
{
try
try
{
{
if ( ! string . IsNullOrEmpty ( this . _baseUrl ) )
if ( ! string . IsNullOrEmpty ( this . _baseUrl ) )
{
{
var url = string . Format ( "{0}{1}{2}/{3}" , this . _baseUrl , "/order/" , length , initialValue ) ;
var url = string . Format ( "{0}{1}{2}/{3}" , this . _baseUrl , "/order/" , length , initialValue ) ;
HttpResult hr = this . _httpManager . Get ( url , null ) ;
HttpResult hr = this . _httpManager . Get ( url , null ) ;
if ( hr . Code = = 200 )
if ( hr . Code = = 200 )
{
{
return new Tuple < bool , string , string > ( true , string . Format ( "获取到全局序号成功<{0}>" , hr . Text ) , hr . Text ) ;
return new Tuple < bool , string , string > ( true , string . Format ( "获取到全局序号成功<{0}>" , hr . Text ) , hr . Text ) ;
}
}
else
else
{
{
return new Tuple < bool , string , string > ( false , string . Format ( "获取到全局序号失败<{0}>" , hr . Text ) , hr . Text ) ;
return new Tuple < bool , string , string > ( false , string . Format ( "获取到全局序号失败<{0}>" , hr . Text ) , hr . Text ) ;
}
}
}
}
else
else
{
{
return new Tuple < bool , string , string > ( false , this . _message , string . Empty ) ;
return new Tuple < bool , string , string > ( false , this . _message , string . Empty ) ;
}
}
}
}
catch ( Exception ex )
catch ( Exception ex )
{
{
logger . Error ( ex , "获取全局序号异常" ) ;
logger . Error ( ex , "获取全局序号异常" ) ;
return new Tuple < bool , string , string > ( false , "获取全局序号失败" , string . Empty ) ;
return new Tuple < bool , string , string > ( false , "获取全局序号失败" , string . Empty ) ;
}
}
}
}
}
}
@ -247,13 +247,13 @@ namespace POSV.Utils
/// </summary>
/// </summary>
/// <param name="dateTimer"></param>
/// <param name="dateTimer"></param>
/// <returns></returns>
/// <returns></returns>
public Tuple < bool , string , List < SaleClear > > GetGlobalAvailableSaleClear ( )
public Tuple < bool , string , List < SaleClear > > GetGlobalAvailableSaleClear ( )
{
{
try
try
{
{
var url = string . Format ( "{0}{1}" , this . _baseUrl , "/sale/clear" ) ;
var url = string . Format ( "{0}{1}" , this . _baseUrl , "/sale/clear" ) ;
HttpResult hr = this . _httpManager . PostJson ( url , "{}" , null ) ;
HttpResult hr = this . _httpManager . PostJson ( url , "{}" , null ) ;
if ( hr . Code = = 200 )
if ( hr . Code = = 200 )
{
{
logger . Info ( hr . Text ) ;
logger . Info ( hr . Text ) ;
@ -264,36 +264,36 @@ namespace POSV.Utils
if ( obj . Status = = 1 )
if ( obj . Status = = 1 )
{
{
return new Tuple < bool , string , List < SaleClear > > ( true , obj . Message , obj . Data ) ;
return new Tuple < bool , string , List < SaleClear > > ( true , obj . Message , obj . Data ) ;
}
}
else
else
{
{
return new Tuple < bool , string , List < SaleClear > > ( false , obj . Message , new List < SaleClear > ( ) ) ;
return new Tuple < bool , string , List < SaleClear > > ( false , obj . Message , new List < SaleClear > ( ) ) ;
}
}
}
}
else
else
{
{
return new Tuple < bool , string , List < SaleClear > > ( false , "获取沽清数据错误" , new List < SaleClear > ( ) ) ;
return new Tuple < bool , string , List < SaleClear > > ( false , "获取沽清数据错误" , new List < SaleClear > ( ) ) ;
}
}
}
}
catch ( Exception ex )
catch ( Exception ex )
{
{
logger . Error ( ex , "获取沽清数据异常" ) ;
logger . Error ( ex , "获取沽清数据异常" ) ;
return new Tuple < bool , string , List < SaleClear > > ( false , "获取沽清数据异常" , new List < SaleClear > ( ) ) ;
return new Tuple < bool , string , List < SaleClear > > ( false , "获取沽清数据异常" , new List < SaleClear > ( ) ) ;
}
}
}
}
public Tuple < bool , string , List < SaleClear > > GetSaleClearList ( string dateTimer = null )
public Tuple < bool , string , List < SaleClear > > GetSaleClearList ( string dateTimer = null )
{
{
try
try
{
{
if ( ! string . IsNullOrEmpty ( this . _baseUrl ) )
if ( ! string . IsNullOrEmpty ( this . _baseUrl ) )
{
{
var url = string . Format ( "{0}{1}" , this . _baseUrl , "/sale/clear/list" ) ;
var url = string . Format ( "{0}{1}" , this . _baseUrl , "/sale/clear/list" ) ;
//构建POST的JSON参数, date为空标识今日沽清
//构建POST的JSON参数, date为空标识今日沽清
var body = new Dictionary < string , string > ( ) ;
var body = new Dictionary < string , string > ( ) ;
body [ "date" ] = string . Empty ;
body [ "date" ] = string . Empty ;
//指定日期的沽清
//指定日期的沽清
@ -302,7 +302,7 @@ namespace POSV.Utils
body [ "date" ] = dateTimer ;
body [ "date" ] = dateTimer ;
}
}
HttpResult hr = this . _httpManager . PostJson ( url , JsonUtils . Serialize ( body ) , null ) ;
HttpResult hr = this . _httpManager . PostJson ( url , JsonUtils . Serialize ( body ) , null ) ;
if ( hr . Code = = 200 )
if ( hr . Code = = 200 )
{
{
var obj = JsonUtils . Deserialize < TransportResponse < List < SaleClear > > > ( hr . Text ) ;
var obj = JsonUtils . Deserialize < TransportResponse < List < SaleClear > > > ( hr . Text ) ;
@ -311,33 +311,33 @@ namespace POSV.Utils
{
{
var data = obj . Data as List < SaleClear > ;
var data = obj . Data as List < SaleClear > ;
return new Tuple < bool , string , List < SaleClear > > ( true , obj . Message , data ) ;
return new Tuple < bool , string , List < SaleClear > > ( true , obj . Message , data ) ;
}
}
else
else
{
{
return new Tuple < bool , string , List < SaleClear > > ( false , obj . Message , new List < SaleClear > ( ) ) ;
return new Tuple < bool , string , List < SaleClear > > ( false , obj . Message , new List < SaleClear > ( ) ) ;
}
}
}
}
else
else
{
{
return new Tuple < bool , string , List < SaleClear > > ( false , "获取沽清列表数据错误" , new List < SaleClear > ( ) ) ;
return new Tuple < bool , string , List < SaleClear > > ( false , "获取沽清列表数据错误" , new List < SaleClear > ( ) ) ;
}
}
}
}
else
else
{
{
return new Tuple < bool , string , List < SaleClear > > ( false , this . _message , new List < SaleClear > ( ) ) ;
return new Tuple < bool , string , List < SaleClear > > ( false , this . _message , new List < SaleClear > ( ) ) ;
}
}
}
}
catch ( Exception ex )
catch ( Exception ex )
{
{
logger . Error ( ex , "获取沽清列表数据异常" ) ;
logger . Error ( ex , "获取沽清列表数据异常" ) ;
return new Tuple < bool , string , List < SaleClear > > ( false , "获取沽清列表数据异常" , new List < SaleClear > ( ) ) ;
return new Tuple < bool , string , List < SaleClear > > ( false , "获取沽清列表数据异常" , new List < SaleClear > ( ) ) ;
}
}
}
}
public Tuple < bool , string > ChangeSaleClear ( SaleClear saleClear )
public Tuple < bool , string > ChangeSaleClear ( SaleClear saleClear )
{
{
lock ( Global . Instance . CacheLock )
lock ( Global . Instance . CacheLock )
{
{
@ -345,12 +345,12 @@ namespace POSV.Utils
{
{
if ( ! string . IsNullOrEmpty ( this . _baseUrl ) )
if ( ! string . IsNullOrEmpty ( this . _baseUrl ) )
{
{
var url = string . Format ( "{0}{1}" , this . _baseUrl , "/sale/clear/change" ) ;
var url = string . Format ( "{0}{1}" , this . _baseUrl , "/sale/clear/change" ) ;
//将沽清对象序列化, 传递到http
//将沽清对象序列化, 传递到http
var body = JsonUtils . Serialize ( saleClear ) ;
var body = JsonUtils . Serialize ( saleClear ) ;
HttpResult hr = this . _httpManager . PostJson ( url , body , null ) ;
HttpResult hr = this . _httpManager . PostJson ( url , body , null ) ;
if ( hr . Code = = 200 )
if ( hr . Code = = 200 )
{
{
logger . Info ( "变更沽清信息,服务中心的应答" ) ;
logger . Info ( "变更沽清信息,服务中心的应答" ) ;
@ -361,23 +361,23 @@ namespace POSV.Utils
SaleClearUtils . Instance . SaveOrUpdateNoChanged ( obj . Data ) ;
SaleClearUtils . Instance . SaveOrUpdateNoChanged ( obj . Data ) ;
return new Tuple < bool , string > ( true , "获取沽清列表数据错误" ) ;
return new Tuple < bool , string > ( true , "获取沽清列表数据错误" ) ;
}
}
else
else
{
{
return new Tuple < bool , string > ( false , "获取沽清列表数据错误" ) ;
return new Tuple < bool , string > ( false , "获取沽清列表数据错误" ) ;
}
}
}
}
else
else
{
{
return new Tuple < bool , string > ( false , this . _message ) ;
return new Tuple < bool , string > ( false , this . _message ) ;
}
}
}
}
catch ( Exception ex )
catch ( Exception ex )
{
{
logger . Error ( ex , "获取沽清列表数据异常" ) ;
logger . Error ( ex , "获取沽清列表数据异常" ) ;
return new Tuple < bool , string > ( false , "获取沽清列表数据异常" ) ;
return new Tuple < bool , string > ( false , "获取沽清列表数据异常" ) ;
}
}
}
}
}
}