SVN r289
SVN-Revision: r289
This commit is contained in:
@@ -112,17 +112,17 @@ namespace Lskj.PubInvoiceOut
|
|||||||
token = SqlHelper.ExecuteScalar("select invoiceToken from p_systemtab") + "";
|
token = SqlHelper.ExecuteScalar("select invoiceToken from p_systemtab") + "";
|
||||||
}
|
}
|
||||||
ResultModel makeModel = new ResultModel();
|
ResultModel makeModel = new ResultModel();
|
||||||
if (MakeInvoice(makeModel, ref token) || makeModel.Message.Contains("开票中") || makeModel.Message.Contains("编号重复")|| makeModel.Message.Contains("编号重复") || makeModel.Message.Contains("手动重推") || makeModel.Message.Contains("开票完成"))
|
if (MakeInvoice(ref makeModel, ref token) || makeModel.Message.Contains("开票中") || makeModel.Message.Contains("编号重复") || makeModel.Message.Contains("编号重复") || makeModel.Message.Contains("手动重推") || makeModel.Message.Contains("开票完成"))
|
||||||
{
|
{
|
||||||
bool isMake = false;
|
bool isMake = false;
|
||||||
if (makeModel.Message.Contains("开票中") || makeModel.Message.Contains("编号重复") || makeModel.Message.Contains("手动重推"))
|
if (makeModel.Message.Contains("开票中") || makeModel.Message.Contains("编号重复") || makeModel.Message.Contains("手动重推"))
|
||||||
{
|
{
|
||||||
ResultModel refreshModel = new ResultModel();
|
ResultModel refreshModel = new ResultModel();
|
||||||
RefreshInvoiceResponse(refreshModel, ref token, true);
|
RefreshInvoiceResponse(ref refreshModel, ref token, true);
|
||||||
if (refreshModel.State.Equals("22"))
|
if (refreshModel.State.Equals("22"))
|
||||||
{
|
{
|
||||||
ResultModel retryModel = new ResultModel();
|
ResultModel retryModel = new ResultModel();
|
||||||
RetryInvoice(retryModel, ref token, true);
|
RetryInvoice(ref retryModel, ref token, true);
|
||||||
|
|
||||||
if (retryModel.Code.Equals("9999"))
|
if (retryModel.Code.Equals("9999"))
|
||||||
{
|
{
|
||||||
@@ -166,7 +166,7 @@ namespace Lskj.PubInvoiceOut
|
|||||||
while (true)
|
while (true)
|
||||||
{
|
{
|
||||||
ResultModel refreshModel = new ResultModel();
|
ResultModel refreshModel = new ResultModel();
|
||||||
RefreshInvoiceResponse(refreshModel, ref token);
|
RefreshInvoiceResponse(ref refreshModel, ref token);
|
||||||
if (refreshModel.Code.Equals("0000") && !refreshModel.State.Equals("2") && refreshModel.Message.Equals("获取成功") && refreshModel.Result.Contains("发票未生成"))
|
if (refreshModel.Code.Equals("0000") && !refreshModel.State.Equals("2") && refreshModel.Message.Equals("获取成功") && refreshModel.Result.Contains("发票未生成"))
|
||||||
{
|
{
|
||||||
if (isMake)
|
if (isMake)
|
||||||
@@ -637,7 +637,7 @@ namespace Lskj.PubInvoiceOut
|
|||||||
/// 蓝字发票开具
|
/// 蓝字发票开具
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
private bool MakeInvoice(ResultModel resultModel, ref string token, bool isNext = true)
|
private bool MakeInvoice(ref ResultModel resultModel, ref string token, bool isNext = true)
|
||||||
{
|
{
|
||||||
bool isLogin = false;
|
bool isLogin = false;
|
||||||
try
|
try
|
||||||
@@ -765,7 +765,7 @@ namespace Lskj.PubInvoiceOut
|
|||||||
if (isNext)
|
if (isNext)
|
||||||
{
|
{
|
||||||
resultModel = new ResultModel();
|
resultModel = new ResultModel();
|
||||||
isLogin = MakeInvoice(resultModel, ref token, false);
|
isLogin = MakeInvoice(ref resultModel, ref token, false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -782,7 +782,7 @@ namespace Lskj.PubInvoiceOut
|
|||||||
}
|
}
|
||||||
return isLogin;
|
return isLogin;
|
||||||
}
|
}
|
||||||
private bool RefreshInvoiceResponse(ResultModel resultModel, ref string token, bool isInvoice = false, bool isNext = true)
|
private bool RefreshInvoiceResponse(ref ResultModel resultModel, ref string token, bool isInvoice = false, bool isNext = true)
|
||||||
{
|
{
|
||||||
if (resultModel == null)
|
if (resultModel == null)
|
||||||
{
|
{
|
||||||
@@ -837,7 +837,12 @@ namespace Lskj.PubInvoiceOut
|
|||||||
resultModel.State = invoiceStatus;
|
resultModel.State = invoiceStatus;
|
||||||
if (resultModel.Code.Equals("0000"))
|
if (resultModel.Code.Equals("0000"))
|
||||||
{
|
{
|
||||||
if (!invoiceStatus.Equals("0") && !invoiceStatus.Equals("4"))
|
if (invoiceStatus.Equals("20"))//正在开票中
|
||||||
|
{
|
||||||
|
resultModel = new ResultModel();
|
||||||
|
isLogin = RefreshInvoiceResponse(ref resultModel, ref token, isInvoice);
|
||||||
|
}
|
||||||
|
else if (!invoiceStatus.Equals("0") && !invoiceStatus.Equals("4"))
|
||||||
{
|
{
|
||||||
JObject resultObj = (JsonConvert.DeserializeObject(resultModel.JResult["result"] + "") as JArray)[0] as JObject;
|
JObject resultObj = (JsonConvert.DeserializeObject(resultModel.JResult["result"] + "") as JArray)[0] as JObject;
|
||||||
if (isInvoice)
|
if (isInvoice)
|
||||||
@@ -846,7 +851,7 @@ namespace Lskj.PubInvoiceOut
|
|||||||
this.InvoiceId = id;
|
this.InvoiceId = id;
|
||||||
SqlHelper.ExecuteNonQuery(string.Format("update Acc_InvoiceMaintab set O_invoiceId = '{0}' where XMid = '{1}'", InvoiceId, PrimaryValue));
|
SqlHelper.ExecuteNonQuery(string.Format("update Acc_InvoiceMaintab set O_invoiceId = '{0}' where XMid = '{1}'", InvoiceId, PrimaryValue));
|
||||||
}
|
}
|
||||||
if (!invoiceStatus.Equals("22") && !invoiceStatus.Equals("24"))
|
if (invoiceStatus.Equals("2"))
|
||||||
{
|
{
|
||||||
isLogin = true;
|
isLogin = true;
|
||||||
string invoiceNr = resultObj["invoiceNr"] + "";
|
string invoiceNr = resultObj["invoiceNr"] + "";
|
||||||
@@ -882,7 +887,7 @@ namespace Lskj.PubInvoiceOut
|
|||||||
if (isNext)
|
if (isNext)
|
||||||
{
|
{
|
||||||
resultModel = new ResultModel();
|
resultModel = new ResultModel();
|
||||||
isLogin = RefreshInvoiceResponse(resultModel, ref token, isInvoice, false);
|
isLogin = RefreshInvoiceResponse(ref resultModel, ref token, isInvoice, false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -906,7 +911,7 @@ namespace Lskj.PubInvoiceOut
|
|||||||
/// <param name="token"></param>
|
/// <param name="token"></param>
|
||||||
/// <param name="isNext"></param>
|
/// <param name="isNext"></param>
|
||||||
/// <returns></returns>
|
/// <returns></returns>
|
||||||
private bool RetryInvoice(ResultModel resultModel, ref string token, bool isNext = true)
|
private bool RetryInvoice(ref ResultModel resultModel, ref string token, bool isNext = true)
|
||||||
{
|
{
|
||||||
if (resultModel == null)
|
if (resultModel == null)
|
||||||
{
|
{
|
||||||
@@ -961,7 +966,7 @@ namespace Lskj.PubInvoiceOut
|
|||||||
if (isNext)
|
if (isNext)
|
||||||
{
|
{
|
||||||
resultModel = new ResultModel();
|
resultModel = new ResultModel();
|
||||||
isLogin = RetryInvoice(resultModel, ref token, false);
|
isLogin = RetryInvoice(ref resultModel, ref token, false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1215,33 +1220,4 @@ namespace Lskj.PubInvoiceOut
|
|||||||
{
|
{
|
||||||
isLogin = true;
|
isLogin = true;
|
||||||
}
|
}
|
||||||
else if (resultModel.Code.Equals("500"))
|
else if (resultMode
|
||||||
{
|
|
||||||
resultModel.Message = resultJObject + "";
|
|
||||||
isLogin = false;
|
|
||||||
}
|
|
||||||
else if (resultModel.Code.Equals("1006") && resultModel.Message.Contains("token已失效"))
|
|
||||||
{
|
|
||||||
token = GetToken();
|
|
||||||
if (isNext)
|
|
||||||
{
|
|
||||||
resultModel = new ResultModel();
|
|
||||||
isLogin = MakeRedBill(resultModel, ref token, false);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
isLogin = false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
catch (Exception ex)
|
|
||||||
{
|
|
||||||
resultModel.Message = ex.Message;
|
|
||||||
isLogin = false;
|
|
||||||
}
|
|
||||||
return isLogin;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user