docker
This commit is contained in:
@@ -6,18 +6,10 @@ using Microsoft.AspNetCore.Http;
|
||||
using Microsoft.AspNetCore.Http.HttpResults;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Newtonsoft.Json;
|
||||
using Org.BouncyCastle.Asn1.Cmp;
|
||||
using Org.BouncyCastle.Ocsp;
|
||||
using Org.BouncyCastle.Utilities;
|
||||
|
||||
using Shared.DTOs;
|
||||
using Shared.DTOs.Serch;
|
||||
using System;
|
||||
using System.Security.Cryptography;
|
||||
using TaxCollectData.Library.Dto.Content;
|
||||
using TaxCollectData.Library.Dto.Transfer;
|
||||
using static Shared.DTOs._TaxPayer;
|
||||
using static System.Collections.Specialized.BitVector32;
|
||||
|
||||
namespace Back.Controllers
|
||||
{
|
||||
@@ -152,326 +144,326 @@ namespace Back.Controllers
|
||||
[HttpGet("SendInvoice/{InvoiceID}")]
|
||||
public async Task<ActionResult<bool>> SendInvoice(int InvoiceID)
|
||||
{
|
||||
//return BadRequest(new List<string> { "در حال حاضر سامانه مودیان در دسترس نمی باشد" });
|
||||
return BadRequest(new List<string> { "در حال حاضر سامانه مودیان در دسترس نمی باشد" });
|
||||
|
||||
var claim = HttpContext.User.Claims.First(c => c.Type == "UserID");
|
||||
var UserID = claim.Value;
|
||||
var user = await _servUser.GetUserByUserID(Convert.ToInt32(UserID));
|
||||
if (!await _actionTaxPayer.login(user.RolUsers.First().CompanyID))
|
||||
return BadRequest(new List<string> { "خطا در احراز هویت سازمان مالیاتی" });
|
||||
//var claim = HttpContext.User.Claims.First(c => c.Type == "UserID");
|
||||
//var UserID = claim.Value;
|
||||
//var user = await _servUser.GetUserByUserID(Convert.ToInt32(UserID));
|
||||
//if (!await _actionTaxPayer.login(user.RolUsers.First().CompanyID))
|
||||
// return BadRequest(new List<string> { "خطا در احراز هویت سازمان مالیاتی" });
|
||||
|
||||
var result = await _servTaxPayer.GetInvoice(user.RolUsers.First().CompanyID, InvoiceID);
|
||||
if (result == null)
|
||||
return BadRequest(new List<string> { "صورتحساب یافت نشد" });
|
||||
//var result = await _servTaxPayer.GetInvoice(user.RolUsers.First().CompanyID, InvoiceID);
|
||||
//if (result == null)
|
||||
// return BadRequest(new List<string> { "صورتحساب یافت نشد" });
|
||||
|
||||
else
|
||||
{
|
||||
if (!result.PatternID.HasValue)
|
||||
return BadRequest(new List<string> { "ابتدا برای این صورتحساب الگو در نظر بگیرید" });
|
||||
//else
|
||||
//{
|
||||
// if (!result.PatternID.HasValue)
|
||||
// return BadRequest(new List<string> { "ابتدا برای این صورتحساب الگو در نظر بگیرید" });
|
||||
|
||||
if (result.invoiceType == InvoiceType.Bidding)
|
||||
return BadRequest(new List<string> { "صورتحساب در وضعیت پیش نویس نمیتواند ارسال شود" });
|
||||
// if (result.invoiceType == InvoiceType.Bidding)
|
||||
// return BadRequest(new List<string> { "صورتحساب در وضعیت پیش نویس نمیتواند ارسال شود" });
|
||||
|
||||
if (await _servTaxPayer.ExistSuccessfulorSendorpendingInvoice(result))
|
||||
return BadRequest(new List<string> { "این صورتحساب قبلا به سازمان ارسال شده" });
|
||||
// if (await _servTaxPayer.ExistSuccessfulorSendorpendingInvoice(result))
|
||||
// return BadRequest(new List<string> { "این صورتحساب قبلا به سازمان ارسال شده" });
|
||||
|
||||
if ((result.invoiceType == InvoiceType.BackFrmSale || result.invoiceType == InvoiceType.Repair)
|
||||
&& !result.BillReference.HasValue)
|
||||
return BadRequest(new List<string> { "در وضعیت برگشت از فروش و اصلاحی باید صورتحساب مرجع وجود داشته باشد" });
|
||||
// if ((result.invoiceType == InvoiceType.BackFrmSale || result.invoiceType == InvoiceType.Repair)
|
||||
// && !result.BillReference.HasValue)
|
||||
// return BadRequest(new List<string> { "در وضعیت برگشت از فروش و اصلاحی باید صورتحساب مرجع وجود داشته باشد" });
|
||||
|
||||
|
||||
if ((result.invoiceType == InvoiceType.BackFrmSale || result.invoiceType == InvoiceType.Repair)
|
||||
&& !await _servTaxPayer.ExistSuccessfulorSendorpendingInvoice(result.invoice))
|
||||
return BadRequest(new List<string> { "در وضعیت برگشت از فروش و اصلاحی باید صورتحساب مرجع به سامانه مودیان ارسال شده باشد" });
|
||||
// if ((result.invoiceType == InvoiceType.BackFrmSale || result.invoiceType == InvoiceType.Repair)
|
||||
// && !await _servTaxPayer.ExistSuccessfulorSendorpendingInvoice(result.invoice))
|
||||
// return BadRequest(new List<string> { "در وضعیت برگشت از فروش و اصلاحی باید صورتحساب مرجع به سامانه مودیان ارسال شده باشد" });
|
||||
|
||||
if (result.invoiceType == InvoiceType.Cancellation && string.IsNullOrEmpty(result.taxid))
|
||||
{
|
||||
return BadRequest(new List<string> { "صورتحساب در وضعیت ابطالی باید صورتحساب مرجع آن به سامانه مودیان ارسال شده باشد" });
|
||||
// if (result.invoiceType == InvoiceType.Cancellation && string.IsNullOrEmpty(result.taxid))
|
||||
// {
|
||||
// return BadRequest(new List<string> { "صورتحساب در وضعیت ابطالی باید صورتحساب مرجع آن به سامانه مودیان ارسال شده باشد" });
|
||||
|
||||
}
|
||||
#region Inital Send
|
||||
InvoiceHeaderDto header = new InvoiceHeaderDto();
|
||||
PreparationHeaderTaxInvoice preparation = new PreparationHeaderTaxInvoice(result, _actionTaxPayer);
|
||||
// }
|
||||
// #region Inital Send
|
||||
// InvoiceHeaderDto header = new InvoiceHeaderDto();
|
||||
// PreparationHeaderTaxInvoice preparation = new PreparationHeaderTaxInvoice(result, _actionTaxPayer);
|
||||
|
||||
|
||||
int level = result.pattern.ID;
|
||||
// int level = result.pattern.ID;
|
||||
|
||||
//header
|
||||
#region header
|
||||
header = new InvoiceHeaderDto
|
||||
{
|
||||
//شماره منحصر به فرد مالیاتی
|
||||
Taxid = preparation.Taxid,
|
||||
//زمان صدور
|
||||
Indatim = preparation.Indatim,
|
||||
//زمان ایجاد
|
||||
Indati2m = preparation.Indati2m,
|
||||
// صورتحساب نوع *
|
||||
Inty = preparation.Inty,
|
||||
//سریال صورت حساب
|
||||
Inno = preparation.Inno,
|
||||
//شماره منحصر به فرد مالیاتی صورتحساب مرجع
|
||||
Irtaxid = preparation.Irtaxid,
|
||||
//الگوی صورتحساب *
|
||||
Inp = preparation.Inp,
|
||||
//موضوع صورتحساب *
|
||||
Ins = preparation.Ins,
|
||||
//شماره اقتصادی فروشنده به جاش شناسه ملی داده شد
|
||||
Tins = preparation.Tins,
|
||||
//نوع شخص خریدار
|
||||
Tob = preparation.Tob,
|
||||
//شماره/شناسه ملی/شناسه مشارکت مدنی / کد فراگیر
|
||||
Bid = preparation.Bid,
|
||||
//شماره اقتصادی خریدار
|
||||
Tinb = preparation.Tinb,
|
||||
//کد شعبه فروشنده
|
||||
Sbc = preparation.Sbc,
|
||||
//کد پستی خریدار
|
||||
Bpc = preparation.Bpc,
|
||||
//کد شعبه خریدار
|
||||
Bbc = preparation.Bbc,
|
||||
//نوع پرواز
|
||||
Ft = preparation.Ft,
|
||||
//شماره گذرنامه خریدار
|
||||
Bpn = preparation.Bpn,
|
||||
//شماره پروانه گمرکی
|
||||
Scln = preparation.Scln,
|
||||
//کد گمرک محل اظهار فروشنده
|
||||
Scc = preparation.Scc,
|
||||
//شماره کدتاژ اظهارنامه گمرکی
|
||||
Cdcn = preparation.Cdcn,
|
||||
//تاریخ کوتاژ اظهارنامه گمرکی
|
||||
Cdcd = preparation.Cdcd,
|
||||
//شناسه یکتای ثبت قزارداد فروشنده
|
||||
Crn = preparation.Crn,
|
||||
//شماره اشتراک/شناسه قبض بهره بردار
|
||||
Billid = preparation.Billid,
|
||||
//مجموع مبلغ قبل از کسر تخفیف
|
||||
Tprdis = preparation.Tprdis,
|
||||
//مجموع تخفیفات
|
||||
Tdis = preparation.Tdis,
|
||||
// مجموع مبلغ پس از کسر تخفیف
|
||||
Tadis = preparation.Tadis,
|
||||
//مجموع مالیات بر ارزش افزوده
|
||||
Tvam = preparation.Tvam,
|
||||
// مجموع سایر مالیات، عوارض و وجوه قانونی
|
||||
Todam = preparation.Todam,
|
||||
//صورتحساب مجموع
|
||||
Tbill = preparation.Tbill,
|
||||
//مجموع وزن خالض
|
||||
Tonw = preparation.Tonw,
|
||||
//مجموع ارزش ریالی
|
||||
Torv = preparation.Torv,
|
||||
//مجموع ارزش ارزی
|
||||
Tocv = preparation.Tocv,
|
||||
// تسویه روش
|
||||
Setm = preparation.Setm,
|
||||
//نقدی پرداختی مبلغ
|
||||
Cap = preparation.Cap,
|
||||
//پرداختی نسیه
|
||||
Insp = preparation.Insp,
|
||||
//مجموع سهم مالیات بر ارزش افزوده از پرداخت
|
||||
Tvop = preparation.Tvop,
|
||||
//مالیات موضوع 17
|
||||
Tax17 = preparation.Tax17,
|
||||
//شماره اقتصادی آژانس
|
||||
Tinc = preparation.Tinc,
|
||||
//تاریخ اعلامیه فروش
|
||||
Asd=null,
|
||||
//شماره اعلامیه فروش
|
||||
Asn = null,
|
||||
//شماره ناوگان
|
||||
Cno=null,
|
||||
//شهر مقصد
|
||||
Dci = null,
|
||||
//کشور مقصد
|
||||
Dco = null,
|
||||
//کد ملی/ کد فراگیر اتباع غیر ایرانی راننده) در حمل و نقل جاده ای(
|
||||
Did = null,
|
||||
//شماره بارنامه
|
||||
Lno = null,
|
||||
//شماره بارنامه مرجع
|
||||
Lrno = null,
|
||||
//نوع بارنامه/ نوع حمل
|
||||
Lt = null,
|
||||
//شهر مبدا
|
||||
Oci = null,
|
||||
//کشور مبدا
|
||||
Ocu = null,
|
||||
//شناسه ملی/ شماره ملی/ شناسه مشارکت مدنی/ کد فراگیر اتباع غیر ایرانی گیرنده
|
||||
Rid = null,
|
||||
//کالاهای حمل شده
|
||||
Sg = new List<ShippingGoodDto>(),
|
||||
//شناسه ملی/ شماره ملی/ شناسه مشارکت مدنی / کد فراگیر اتباع غیر ایرانی فرستنده
|
||||
Tid =null
|
||||
// //header
|
||||
// #region header
|
||||
// header = new InvoiceHeaderDto
|
||||
// {
|
||||
// //شماره منحصر به فرد مالیاتی
|
||||
// Taxid = preparation.Taxid,
|
||||
// //زمان صدور
|
||||
// Indatim = preparation.Indatim,
|
||||
// //زمان ایجاد
|
||||
// Indati2m = preparation.Indati2m,
|
||||
// // صورتحساب نوع *
|
||||
// Inty = preparation.Inty,
|
||||
// //سریال صورت حساب
|
||||
// Inno = preparation.Inno,
|
||||
// //شماره منحصر به فرد مالیاتی صورتحساب مرجع
|
||||
// Irtaxid = preparation.Irtaxid,
|
||||
// //الگوی صورتحساب *
|
||||
// Inp = preparation.Inp,
|
||||
// //موضوع صورتحساب *
|
||||
// Ins = preparation.Ins,
|
||||
// //شماره اقتصادی فروشنده به جاش شناسه ملی داده شد
|
||||
// Tins = preparation.Tins,
|
||||
// //نوع شخص خریدار
|
||||
// Tob = preparation.Tob,
|
||||
// //شماره/شناسه ملی/شناسه مشارکت مدنی / کد فراگیر
|
||||
// Bid = preparation.Bid,
|
||||
// //شماره اقتصادی خریدار
|
||||
// Tinb = preparation.Tinb,
|
||||
// //کد شعبه فروشنده
|
||||
// Sbc = preparation.Sbc,
|
||||
// //کد پستی خریدار
|
||||
// Bpc = preparation.Bpc,
|
||||
// //کد شعبه خریدار
|
||||
// Bbc = preparation.Bbc,
|
||||
// //نوع پرواز
|
||||
// Ft = preparation.Ft,
|
||||
// //شماره گذرنامه خریدار
|
||||
// Bpn = preparation.Bpn,
|
||||
// //شماره پروانه گمرکی
|
||||
// Scln = preparation.Scln,
|
||||
// //کد گمرک محل اظهار فروشنده
|
||||
// Scc = preparation.Scc,
|
||||
// //شماره کدتاژ اظهارنامه گمرکی
|
||||
// Cdcn = preparation.Cdcn,
|
||||
// //تاریخ کوتاژ اظهارنامه گمرکی
|
||||
// Cdcd = preparation.Cdcd,
|
||||
// //شناسه یکتای ثبت قزارداد فروشنده
|
||||
// Crn = preparation.Crn,
|
||||
// //شماره اشتراک/شناسه قبض بهره بردار
|
||||
// Billid = preparation.Billid,
|
||||
// //مجموع مبلغ قبل از کسر تخفیف
|
||||
// Tprdis = preparation.Tprdis,
|
||||
// //مجموع تخفیفات
|
||||
// Tdis = preparation.Tdis,
|
||||
// // مجموع مبلغ پس از کسر تخفیف
|
||||
// Tadis = preparation.Tadis,
|
||||
// //مجموع مالیات بر ارزش افزوده
|
||||
// Tvam = preparation.Tvam,
|
||||
// // مجموع سایر مالیات، عوارض و وجوه قانونی
|
||||
// Todam = preparation.Todam,
|
||||
// //صورتحساب مجموع
|
||||
// Tbill = preparation.Tbill,
|
||||
// //مجموع وزن خالض
|
||||
// Tonw = preparation.Tonw,
|
||||
// //مجموع ارزش ریالی
|
||||
// Torv = preparation.Torv,
|
||||
// //مجموع ارزش ارزی
|
||||
// Tocv = preparation.Tocv,
|
||||
// // تسویه روش
|
||||
// Setm = preparation.Setm,
|
||||
// //نقدی پرداختی مبلغ
|
||||
// Cap = preparation.Cap,
|
||||
// //پرداختی نسیه
|
||||
// Insp = preparation.Insp,
|
||||
// //مجموع سهم مالیات بر ارزش افزوده از پرداخت
|
||||
// Tvop = preparation.Tvop,
|
||||
// //مالیات موضوع 17
|
||||
// Tax17 = preparation.Tax17,
|
||||
// //شماره اقتصادی آژانس
|
||||
// Tinc = preparation.Tinc,
|
||||
// //تاریخ اعلامیه فروش
|
||||
// Asd=null,
|
||||
// //شماره اعلامیه فروش
|
||||
// Asn = null,
|
||||
// //شماره ناوگان
|
||||
// Cno=null,
|
||||
// //شهر مقصد
|
||||
// Dci = null,
|
||||
// //کشور مقصد
|
||||
// Dco = null,
|
||||
// //کد ملی/ کد فراگیر اتباع غیر ایرانی راننده) در حمل و نقل جاده ای(
|
||||
// Did = null,
|
||||
// //شماره بارنامه
|
||||
// Lno = null,
|
||||
// //شماره بارنامه مرجع
|
||||
// Lrno = null,
|
||||
// //نوع بارنامه/ نوع حمل
|
||||
// Lt = null,
|
||||
// //شهر مبدا
|
||||
// Oci = null,
|
||||
// //کشور مبدا
|
||||
// Ocu = null,
|
||||
// //شناسه ملی/ شماره ملی/ شناسه مشارکت مدنی/ کد فراگیر اتباع غیر ایرانی گیرنده
|
||||
// Rid = null,
|
||||
// //کالاهای حمل شده
|
||||
// Sg = new List<ShippingGoodDto>(),
|
||||
// //شناسه ملی/ شماره ملی/ شناسه مشارکت مدنی / کد فراگیر اتباع غیر ایرانی فرستنده
|
||||
// Tid =null
|
||||
|
||||
};
|
||||
#endregion header
|
||||
// };
|
||||
// #endregion header
|
||||
|
||||
|
||||
|
||||
|
||||
//body
|
||||
List<InvoiceBodyDto> InvoiceBody = new List<InvoiceBodyDto>();
|
||||
foreach (var bitem in result.invoiceDetails)
|
||||
{
|
||||
InvoiceBodyDto item = new InvoiceBodyDto();
|
||||
PreparationBodyTaxInvoice preparationBody = new PreparationBodyTaxInvoice(bitem, level);
|
||||
#region body
|
||||
// //body
|
||||
// List<InvoiceBodyDto> InvoiceBody = new List<InvoiceBodyDto>();
|
||||
// foreach (var bitem in result.invoiceDetails)
|
||||
// {
|
||||
// InvoiceBodyDto item = new InvoiceBodyDto();
|
||||
// PreparationBodyTaxInvoice preparationBody = new PreparationBodyTaxInvoice(bitem, level);
|
||||
// #region body
|
||||
|
||||
item = new InvoiceBodyDto
|
||||
{
|
||||
//شناسه کالا / خدمت
|
||||
Sstid = preparationBody.Sstid,
|
||||
//شرح کاال/خدمت
|
||||
Sstt = preparationBody.Sstt,
|
||||
// تعداد
|
||||
Am = preparationBody.Am,
|
||||
//واحد اندازه گیری
|
||||
Mu = preparationBody.Mu,
|
||||
//وزن خالص
|
||||
Nw= preparationBody.Nw,
|
||||
// مبلغ واحد
|
||||
Fee = preparationBody.Fee,
|
||||
//میزان ارز
|
||||
Cfee = preparationBody.Cfee ,
|
||||
//نوع ارز
|
||||
Cut = preparationBody.Cut,
|
||||
//نرخ برابری ارز با ریال
|
||||
Exr = preparationBody.Exr,
|
||||
// ارزش ریالی کاا
|
||||
Ssrv= preparationBody.Ssrv,
|
||||
// ارزش ارزی کاا
|
||||
Sscv= preparationBody.Sscv,
|
||||
//مبلغ قبل از تخفیف
|
||||
Prdis = preparationBody.Prdis,
|
||||
//مبلغ تخفیف
|
||||
Dis = preparationBody.Dis,
|
||||
//مبلغ بعد از تخفیف
|
||||
Adis = preparationBody.Adis,
|
||||
//نرخ مالیات بر ارزش افزوده
|
||||
Vra = preparationBody.Vra,
|
||||
//مبلغ مالیات بر ارزش افزوده
|
||||
Vam = preparationBody.Vam,
|
||||
//موضوع سایر مالیات و عوارض
|
||||
Odt = preparationBody.Odt,
|
||||
//نرخ سایر مالیات و عوارض
|
||||
Odr = preparationBody.Odr,
|
||||
//مبلغ سایر مالیات و عوارض
|
||||
Odam = preparationBody.Odam,
|
||||
//موضوع سایر وجوه قانونی
|
||||
Olt = preparationBody.Olt,
|
||||
//نرخ سایر وجوه قانونی
|
||||
Olr = preparationBody.Olr,
|
||||
//مبلغ سایر وجوه قانونی
|
||||
Olam = preparationBody.Olam,
|
||||
//اجرت ساخت
|
||||
Consfee = preparationBody.Consfee,
|
||||
// سود فروشنده
|
||||
Spro= preparationBody.Spro,
|
||||
//حقالعمل
|
||||
Bros= preparationBody.Bros,
|
||||
//جمع کل اجرت، حقالعمل و سود
|
||||
Tcpbs= preparationBody.Tcpbs,
|
||||
//سهم نقدی از پرداخت
|
||||
Cop = preparationBody.Cop,
|
||||
//سهم مالیات بر لرزش افزوده از پرداخت
|
||||
Vop = preparationBody.Vop,
|
||||
//شناسه یکتای ثبت قرارداد حق العمل کاری
|
||||
Bsrn = preparationBody.Bsrn,
|
||||
// مبلغ کل کالا / خدمت
|
||||
Tsstam = preparationBody.Tsstam,
|
||||
//عیار
|
||||
Cui = preparationBody.Cui,
|
||||
// نرخ خرید ارز
|
||||
Cpr = preparationBody.Cpr,
|
||||
//ماخذ مالیات بر ارزش افزوده در الگوی فروش ارز
|
||||
Sovat = preparationBody.Sovat
|
||||
};
|
||||
#endregion
|
||||
InvoiceBody.Add(item);
|
||||
}
|
||||
// item = new InvoiceBodyDto
|
||||
// {
|
||||
// //شناسه کالا / خدمت
|
||||
// Sstid = preparationBody.Sstid,
|
||||
// //شرح کاال/خدمت
|
||||
// Sstt = preparationBody.Sstt,
|
||||
// // تعداد
|
||||
// Am = preparationBody.Am,
|
||||
// //واحد اندازه گیری
|
||||
// Mu = preparationBody.Mu,
|
||||
// //وزن خالص
|
||||
// Nw= preparationBody.Nw,
|
||||
// // مبلغ واحد
|
||||
// Fee = preparationBody.Fee,
|
||||
// //میزان ارز
|
||||
// Cfee = preparationBody.Cfee ,
|
||||
// //نوع ارز
|
||||
// Cut = preparationBody.Cut,
|
||||
// //نرخ برابری ارز با ریال
|
||||
// Exr = preparationBody.Exr,
|
||||
// // ارزش ریالی کاا
|
||||
// Ssrv= preparationBody.Ssrv,
|
||||
// // ارزش ارزی کاا
|
||||
// Sscv= preparationBody.Sscv,
|
||||
// //مبلغ قبل از تخفیف
|
||||
// Prdis = preparationBody.Prdis,
|
||||
// //مبلغ تخفیف
|
||||
// Dis = preparationBody.Dis,
|
||||
// //مبلغ بعد از تخفیف
|
||||
// Adis = preparationBody.Adis,
|
||||
// //نرخ مالیات بر ارزش افزوده
|
||||
// Vra = preparationBody.Vra,
|
||||
// //مبلغ مالیات بر ارزش افزوده
|
||||
// Vam = preparationBody.Vam,
|
||||
// //موضوع سایر مالیات و عوارض
|
||||
// Odt = preparationBody.Odt,
|
||||
// //نرخ سایر مالیات و عوارض
|
||||
// Odr = preparationBody.Odr,
|
||||
// //مبلغ سایر مالیات و عوارض
|
||||
// Odam = preparationBody.Odam,
|
||||
// //موضوع سایر وجوه قانونی
|
||||
// Olt = preparationBody.Olt,
|
||||
// //نرخ سایر وجوه قانونی
|
||||
// Olr = preparationBody.Olr,
|
||||
// //مبلغ سایر وجوه قانونی
|
||||
// Olam = preparationBody.Olam,
|
||||
// //اجرت ساخت
|
||||
// Consfee = preparationBody.Consfee,
|
||||
// // سود فروشنده
|
||||
// Spro= preparationBody.Spro,
|
||||
// //حقالعمل
|
||||
// Bros= preparationBody.Bros,
|
||||
// //جمع کل اجرت، حقالعمل و سود
|
||||
// Tcpbs= preparationBody.Tcpbs,
|
||||
// //سهم نقدی از پرداخت
|
||||
// Cop = preparationBody.Cop,
|
||||
// //سهم مالیات بر لرزش افزوده از پرداخت
|
||||
// Vop = preparationBody.Vop,
|
||||
// //شناسه یکتای ثبت قرارداد حق العمل کاری
|
||||
// Bsrn = preparationBody.Bsrn,
|
||||
// // مبلغ کل کالا / خدمت
|
||||
// Tsstam = preparationBody.Tsstam,
|
||||
// //عیار
|
||||
// Cui = preparationBody.Cui,
|
||||
// // نرخ خرید ارز
|
||||
// Cpr = preparationBody.Cpr,
|
||||
// //ماخذ مالیات بر ارزش افزوده در الگوی فروش ارز
|
||||
// Sovat = preparationBody.Sovat
|
||||
// };
|
||||
// #endregion
|
||||
// InvoiceBody.Add(item);
|
||||
// }
|
||||
|
||||
|
||||
//Pay
|
||||
List<PaymentDto> InvoicePay = new List<PaymentDto>();
|
||||
if (result.setm==1 || result.setm == 3)
|
||||
{
|
||||
if (level != 10)
|
||||
foreach (var pitem in result.payments)
|
||||
{
|
||||
// //Pay
|
||||
// List<PaymentDto> InvoicePay = new List<PaymentDto>();
|
||||
// if (result.setm==1 || result.setm == 3)
|
||||
// {
|
||||
// if (level != 10)
|
||||
// foreach (var pitem in result.payments)
|
||||
// {
|
||||
|
||||
PaymentDto payment = new PaymentDto();
|
||||
payment = new PaymentDto
|
||||
{
|
||||
Iinn = pitem.iinn,
|
||||
Acn = pitem.acn,
|
||||
Trmn = pitem.trmn,
|
||||
Pmt = pitem.pmt,
|
||||
Trn = pitem.trn,
|
||||
Pcn = pitem.pcn,
|
||||
Pid = pitem.pid,
|
||||
Pdt = pitem.pdt,
|
||||
Pv = pitem.pv,
|
||||
// PaymentDto payment = new PaymentDto();
|
||||
// payment = new PaymentDto
|
||||
// {
|
||||
// Iinn = pitem.iinn,
|
||||
// Acn = pitem.acn,
|
||||
// Trmn = pitem.trmn,
|
||||
// Pmt = pitem.pmt,
|
||||
// Trn = pitem.trn,
|
||||
// Pcn = pitem.pcn,
|
||||
// Pid = pitem.pid,
|
||||
// Pdt = pitem.pdt,
|
||||
// Pv = pitem.pv,
|
||||
|
||||
};
|
||||
// };
|
||||
|
||||
InvoicePay.Add(payment);
|
||||
}
|
||||
}
|
||||
// InvoicePay.Add(payment);
|
||||
// }
|
||||
// }
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
var responseModel = await _actionTaxPayer.SendInvoice(user.RolUsers.First().CompanyID, header, InvoiceBody, InvoicePay);
|
||||
if (responseModel == null)
|
||||
{
|
||||
return BadRequest(new List<string> { "خطا در ورود به سامانه مودیان" });
|
||||
}
|
||||
else if (responseModel.Status == 200 && (responseModel.Body.Errors == null || responseModel.Body.Errors.Count == 0))
|
||||
{
|
||||
foreach (var item in responseModel.Body.Result)
|
||||
{
|
||||
// var responseModel = await _actionTaxPayer.SendInvoice(user.RolUsers.First().CompanyID, header, InvoiceBody, InvoicePay);
|
||||
// if (responseModel == null)
|
||||
// {
|
||||
// return BadRequest(new List<string> { "خطا در ورود به سامانه مودیان" });
|
||||
// }
|
||||
// else if (responseModel.Status == 200 && (responseModel.Body.Errors == null || responseModel.Body.Errors.Count == 0))
|
||||
// {
|
||||
// foreach (var item in responseModel.Body.Result)
|
||||
// {
|
||||
|
||||
|
||||
var ressenttax = new SentTax
|
||||
{
|
||||
InvoiceID = result.ID,
|
||||
Date = DateTime.Now.ConvertMiladiToShamsi(),
|
||||
Time = $"{DateTime.Now.Hour}:{DateTime.Now.Minute}:{DateTime.Now.Second}",
|
||||
InvoiceType = result.invoiceType,
|
||||
ReferenceNumber = item.ReferenceNumber,
|
||||
uId = item.Uid,
|
||||
SentStatus = SentStatus.Send,
|
||||
InvoiceModel = JsonConvert.SerializeObject(result, Formatting.Indented, new JsonSerializerSettings
|
||||
{
|
||||
PreserveReferencesHandling = PreserveReferencesHandling.Objects
|
||||
}),
|
||||
ResponseModel = JsonConvert.SerializeObject(responseModel)
|
||||
// var ressenttax = new SentTax
|
||||
// {
|
||||
// InvoiceID = result.ID,
|
||||
// Date = DateTime.Now.ConvertMiladiToShamsi(),
|
||||
// Time = $"{DateTime.Now.Hour}:{DateTime.Now.Minute}:{DateTime.Now.Second}",
|
||||
// InvoiceType = result.invoiceType,
|
||||
// ReferenceNumber = item.ReferenceNumber,
|
||||
// uId = item.Uid,
|
||||
// SentStatus = SentStatus.Send,
|
||||
// InvoiceModel = JsonConvert.SerializeObject(result, Formatting.Indented, new JsonSerializerSettings
|
||||
// {
|
||||
// PreserveReferencesHandling = PreserveReferencesHandling.Objects
|
||||
// }),
|
||||
// ResponseModel = JsonConvert.SerializeObject(responseModel)
|
||||
|
||||
};
|
||||
await _servTaxPayer.AddSentTax(ressenttax);
|
||||
}
|
||||
result.taxid = header.Taxid;
|
||||
result.irtaxid = header.Irtaxid;
|
||||
return Ok(await _servTaxPayer.UpdateInvoice(result));
|
||||
}
|
||||
else
|
||||
{
|
||||
string errors = "";
|
||||
foreach (var item in responseModel.Body.Errors)
|
||||
errors += '\n' + $"{item.ErrorCode}:{item.Detail}";
|
||||
// };
|
||||
// await _servTaxPayer.AddSentTax(ressenttax);
|
||||
// }
|
||||
// result.taxid = header.Taxid;
|
||||
// result.irtaxid = header.Irtaxid;
|
||||
// return Ok(await _servTaxPayer.UpdateInvoice(result));
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// string errors = "";
|
||||
// foreach (var item in responseModel.Body.Errors)
|
||||
// errors += '\n' + $"{item.ErrorCode}:{item.Detail}";
|
||||
|
||||
return BadRequest(new List<string> { errors });
|
||||
}
|
||||
// return BadRequest(new List<string> { errors });
|
||||
// }
|
||||
|
||||
|
||||
#endregion
|
||||
// #endregion
|
||||
|
||||
|
||||
}
|
||||
//}
|
||||
}
|
||||
[HttpPost("GetAllSentTax")]
|
||||
public async Task<ActionResult<PagingDto<SentTaxDto>>> GetSentTax([FromBody] ItemSerchGetSentTax item)
|
||||
@@ -484,88 +476,90 @@ namespace Back.Controllers
|
||||
[HttpGet("GetResult/{ID}")]
|
||||
public async Task<ActionResult<DataInSendTaxDto>> GetResultByUid(int ID)
|
||||
{
|
||||
try
|
||||
{
|
||||
var claim = HttpContext.User.Claims.First(c => c.Type == "UserID");
|
||||
var UserID = claim.Value;
|
||||
var user = await _servUser.GetUserByUserID(Convert.ToInt32(UserID));
|
||||
var item = await _servTaxPayer.GetSentTax(user.RolUsers.First().CompanyID, ID);
|
||||
if (item == null)
|
||||
return BadRequest(new List<string> { "یافت نشد" });
|
||||
return BadRequest(new List<string> { "در حال حاضر سامانه مودیان در دسترس نمی باشد" });
|
||||
|
||||
if (string.IsNullOrEmpty(item.uId))
|
||||
return BadRequest(new List<string> { "کد پیگیری یافت نشد" });
|
||||
//try
|
||||
//{
|
||||
// var claim = HttpContext.User.Claims.First(c => c.Type == "UserID");
|
||||
// var UserID = claim.Value;
|
||||
// var user = await _servUser.GetUserByUserID(Convert.ToInt32(UserID));
|
||||
// var item = await _servTaxPayer.GetSentTax(user.RolUsers.First().CompanyID, ID);
|
||||
// if (item == null)
|
||||
// return BadRequest(new List<string> { "یافت نشد" });
|
||||
|
||||
if (!await _actionTaxPayer.login(user.RolUsers.First().CompanyID))
|
||||
return BadRequest(new List<string> { "خطا در احراز هویت سازمان مالیاتی" });
|
||||
// if (string.IsNullOrEmpty(item.uId))
|
||||
// return BadRequest(new List<string> { "کد پیگیری یافت نشد" });
|
||||
|
||||
DataInSendTaxDto desData = new DataInSendTaxDto();
|
||||
// if (!await _actionTaxPayer.login(user.RolUsers.First().CompanyID))
|
||||
// return BadRequest(new List<string> { "خطا در احراز هویت سازمان مالیاتی" });
|
||||
|
||||
// DataInSendTaxDto desData = new DataInSendTaxDto();
|
||||
|
||||
|
||||
if (item.SentStatus == SentStatus.Unsuccessful && !string.IsNullOrEmpty(item.ErrorsModel))
|
||||
{
|
||||
List<MessageInSendTaxDto> inquiryerrorResult = JsonConvert.DeserializeObject<List<MessageInSendTaxDto>>(item.ErrorsModel);
|
||||
// if (item.SentStatus == SentStatus.Unsuccessful && !string.IsNullOrEmpty(item.ErrorsModel))
|
||||
// {
|
||||
// List<MessageInSendTaxDto> inquiryerrorResult = JsonConvert.DeserializeObject<List<MessageInSendTaxDto>>(item.ErrorsModel);
|
||||
|
||||
InquiryResultModel inquiryResult = JsonConvert.DeserializeObject<InquiryResultModel>(item.InquiryResultModel);
|
||||
if (inquiryResult.Data != null)
|
||||
{
|
||||
// InquiryResultModel inquiryResult = JsonConvert.DeserializeObject<InquiryResultModel>(item.InquiryResultModel);
|
||||
// if (inquiryResult.Data != null)
|
||||
// {
|
||||
|
||||
desData = new DataInSendTaxDto();
|
||||
desData.SentStatus = SentStatus.Unsuccessful;
|
||||
desData.error = inquiryerrorResult;
|
||||
// desData = new DataInSendTaxDto();
|
||||
// desData.SentStatus = SentStatus.Unsuccessful;
|
||||
// desData.error = inquiryerrorResult;
|
||||
|
||||
|
||||
|
||||
}
|
||||
return Ok(desData);
|
||||
}
|
||||
else if (item.SentStatus == SentStatus.Send
|
||||
|| item.SentStatus == SentStatus.pending
|
||||
|| item.SentStatus == SentStatus.IN_PROGRESS
|
||||
|| item.SentStatus == SentStatus.Unsuccessful)
|
||||
{
|
||||
// }
|
||||
// return Ok(desData);
|
||||
// }
|
||||
// else if (item.SentStatus == SentStatus.Send
|
||||
// || item.SentStatus == SentStatus.pending
|
||||
// || item.SentStatus == SentStatus.IN_PROGRESS
|
||||
// || item.SentStatus == SentStatus.Unsuccessful)
|
||||
// {
|
||||
|
||||
//ta imja
|
||||
var result = await _actionTaxPayer.GetResultByUid(user.RolUsers.First().CompanyID, item.uId);
|
||||
if (result == null)
|
||||
return BadRequest(new List<string> { "پاسخی از سازمان دریافت نشد" });
|
||||
// //ta imja
|
||||
// var result = await _actionTaxPayer.GetResultByUid(user.RolUsers.First().CompanyID, item.uId);
|
||||
// if (result == null)
|
||||
// return BadRequest(new List<string> { "پاسخی از سازمان دریافت نشد" });
|
||||
|
||||
else
|
||||
{
|
||||
item.InquiryResultModel = JsonConvert.SerializeObject(result);
|
||||
if (result.Data != null)
|
||||
{
|
||||
desData = JsonConvert.DeserializeObject<DataInSendTaxDto>(result.Data.ToString());
|
||||
if (desData == null)
|
||||
{
|
||||
desData = new DataInSendTaxDto();
|
||||
desData.error = JsonConvert.DeserializeObject<List<MessageInSendTaxDto>>(result.Data.ToString());
|
||||
}
|
||||
}
|
||||
// else
|
||||
// {
|
||||
// item.InquiryResultModel = JsonConvert.SerializeObject(result);
|
||||
// if (result.Data != null)
|
||||
// {
|
||||
// desData = JsonConvert.DeserializeObject<DataInSendTaxDto>(result.Data.ToString());
|
||||
// if (desData == null)
|
||||
// {
|
||||
// desData = new DataInSendTaxDto();
|
||||
// desData.error = JsonConvert.DeserializeObject<List<MessageInSendTaxDto>>(result.Data.ToString());
|
||||
// }
|
||||
// }
|
||||
|
||||
desData.SentStatus = item.SentStatus =
|
||||
result.Status == "FAILED" ? SentStatus.Unsuccessful
|
||||
: result.Status == "PENDING" ? SentStatus.pending
|
||||
: result.Status == "SUCCESS" ? SentStatus.Successful
|
||||
: result.Status == "NOT_FOUND" ? SentStatus.NOT_FOUND
|
||||
: result.Status == "IN_PROGRESS" ? SentStatus.IN_PROGRESS
|
||||
: SentStatus.Unknown;
|
||||
// desData.SentStatus = item.SentStatus =
|
||||
// result.Status == "FAILED" ? SentStatus.Unsuccessful
|
||||
// : result.Status == "PENDING" ? SentStatus.pending
|
||||
// : result.Status == "SUCCESS" ? SentStatus.Successful
|
||||
// : result.Status == "NOT_FOUND" ? SentStatus.NOT_FOUND
|
||||
// : result.Status == "IN_PROGRESS" ? SentStatus.IN_PROGRESS
|
||||
// : SentStatus.Unknown;
|
||||
|
||||
if (item.SentStatus == SentStatus.Unsuccessful)
|
||||
item.ErrorsModel = JsonConvert.SerializeObject(desData.error);
|
||||
}
|
||||
// if (item.SentStatus == SentStatus.Unsuccessful)
|
||||
// item.ErrorsModel = JsonConvert.SerializeObject(desData.error);
|
||||
// }
|
||||
|
||||
|
||||
if (await _servTaxPayer.UpdateSentTax(item)) return Ok(desData);
|
||||
// if (await _servTaxPayer.UpdateSentTax(item)) return Ok(desData);
|
||||
|
||||
else return BadRequest(new List<string> { "خطای در ذخیره سازی" });
|
||||
}
|
||||
return BadRequest(new List<string> { "در این وضعیت امکان پذیر نمی باشد" });
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
return BadRequest(new List<string> { "خطای ناشناخته" });
|
||||
}
|
||||
// else return BadRequest(new List<string> { "خطای در ذخیره سازی" });
|
||||
// }
|
||||
// return BadRequest(new List<string> { "در این وضعیت امکان پذیر نمی باشد" });
|
||||
//}
|
||||
//catch (Exception ex)
|
||||
//{
|
||||
// return BadRequest(new List<string> { "خطای ناشناخته" });
|
||||
//}
|
||||
}
|
||||
[HttpGet("GetBillTypes")]
|
||||
public async Task<ActionResult<List<IdName<int>>>> GetBillTypes()
|
||||
@@ -585,26 +579,30 @@ namespace Back.Controllers
|
||||
[HttpGet("EconomicCodeInformation")]
|
||||
public async Task<ActionResult<EconomicCodeModelDto>> GetEconomicCodeInformation(string item)
|
||||
{
|
||||
var claim = HttpContext.User.Claims.First(c => c.Type == "UserID");
|
||||
var UserID = claim.Value;
|
||||
var user = await _servUser.GetUserByUserID(Convert.ToInt32(UserID));
|
||||
if (!await _actionTaxPayer.login(user.RolUsers.First().CompanyID))
|
||||
return BadRequest(new List<string> { "خطا در احراز هویت سازمان مالیاتی" });
|
||||
var result=await _actionTaxPayer.GetEconomicCodeInformation(item);
|
||||
if (result == null) return NotFound();
|
||||
return Ok(result);
|
||||
return BadRequest(new List<string> { "در حال حاضر سامانه مودیان در دسترس نمی باشد" });
|
||||
|
||||
//var claim = HttpContext.User.Claims.First(c => c.Type == "UserID");
|
||||
//var UserID = claim.Value;
|
||||
//var user = await _servUser.GetUserByUserID(Convert.ToInt32(UserID));
|
||||
//if (!await _actionTaxPayer.login(user.RolUsers.First().CompanyID))
|
||||
// return BadRequest(new List<string> { "خطا در احراز هویت سازمان مالیاتی" });
|
||||
//var result=await _actionTaxPayer.GetEconomicCodeInformation(item);
|
||||
//if (result == null) return NotFound();
|
||||
//return Ok(result);
|
||||
}
|
||||
[HttpGet("FiscalInformation")]
|
||||
public async Task<ActionResult<FiscalInformationModelDto>> GetFiscalInformation(string item)
|
||||
{
|
||||
var claim = HttpContext.User.Claims.First(c => c.Type == "UserID");
|
||||
var UserID = claim.Value;
|
||||
var user = await _servUser.GetUserByUserID(Convert.ToInt32(UserID));
|
||||
if (!await _actionTaxPayer.login(user.RolUsers.First().CompanyID))
|
||||
return BadRequest(new List<string> { "خطا در احراز هویت سازمان مالیاتی" });
|
||||
var result=await _actionTaxPayer.GetFiscalInformation(item);
|
||||
if (result == null) return NotFound();
|
||||
return Ok(result);
|
||||
return BadRequest(new List<string> { "در حال حاضر سامانه مودیان در دسترس نمی باشد" });
|
||||
|
||||
//var claim = HttpContext.User.Claims.First(c => c.Type == "UserID");
|
||||
//var UserID = claim.Value;
|
||||
//var user = await _servUser.GetUserByUserID(Convert.ToInt32(UserID));
|
||||
//if (!await _actionTaxPayer.login(user.RolUsers.First().CompanyID))
|
||||
// return BadRequest(new List<string> { "خطا در احراز هویت سازمان مالیاتی" });
|
||||
//var result=await _actionTaxPayer.GetFiscalInformation(item);
|
||||
//if (result == null) return NotFound();
|
||||
//return Ok(result);
|
||||
}
|
||||
[HttpGet("CodInTaxPayerHaveBeenSentSuccessfully/{CODID}")]
|
||||
public async Task<ActionResult<bool>> CodInTaxPayerHaveBeenSentSuccessfully(int CODID)
|
||||
|
Reference in New Issue
Block a user