This commit is contained in:
MahanCh
2025-07-16 10:16:11 +03:30
4 changed files with 95 additions and 24 deletions

View File

@@ -3,6 +3,7 @@ using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using _0_Framework.Application;
using _0_Framework.Domain;
using CompanyManagment.App.Contracts.FinancilTransaction;
@@ -13,4 +14,15 @@ public interface IFinancialTransactionRepository : IRepository<long, FinancialTr
{
EditFinancialTransaction GetDetails(long id);
void RemoveFinancialTransaction(long id);
/// <summary>
/// ایجاد بدهی استند حضور غیاب برای اکسل
/// </summary>
/// <param name="contractingPartyId"></param>
/// <param name="transactionDate"></param>
/// <param name="debt"></param>
/// <param name="description"></param>
/// <returns></returns>
OperationResult CreateDebtFromExcel(long contractingPartyId, string transactionDate, double debt,
string description);
}

View File

@@ -1,8 +1,12 @@
using System.Linq;
using System;
using System.Linq;
using System.Threading.Tasks;
using _0_Framework.Application;
using _0_Framework.InfraStructure;
using Company.Domain.FinancialStatmentAgg;
using Company.Domain.FinancialTransactionAgg;
using CompanyManagment.App.Contracts.FinancilTransaction;
using static Microsoft.EntityFrameworkCore.DbLoggerCategory.Database;
namespace CompanyManagment.EFCore.Repository;
@@ -49,4 +53,55 @@ public class FinancialTransactionRepository : RepositoryBase<long, FinancialTran
}
}
public OperationResult CreateDebtFromExcel(long contractingPartyId, string transactionDate, double debt, string description)
{
var op = new OperationResult();
var now = DateTime.Now;
#region Validation
var contractingParty = _context.PersonalContractingParties.FirstOrDefault(x => x.id == contractingPartyId);
if (contractingParty == null)
return op.Failed("طرف حساب وجود ندارد");
var activeInstitutionContract = _context.InstitutionContractSet.FirstOrDefault(x => x.ContractingPartyId == contractingPartyId &&
x.IsActiveString == "true" && x.ContractStartGr <= now && x.ContractEndGr >= now);
if (activeInstitutionContract == null)
return op.Failed("قرارداد مالی فعال برای این طرف حساب وجود ندارد");
if (debt <= 0)
return op.Failed("مبلغ را وارد کنید");
#endregion
var descriptionOption = "بابت خرید استند حضور غیاب";
var financialStatment = _context.FinancialStatments.FirstOrDefault(x => x.ContractingPartyId == contractingPartyId);
if (financialStatment != null)
{
var transaction = new FinancialTransaction(financialStatment.id, now, now.ToFarsi(),
description,
"debt", descriptionOption, debt, 0, 0);
_context.FinancialTransactions.Add(transaction);
_context.SaveChanges();
return op.Succcedded();
}
else
{
var statement = new FinancialStatment(contractingPartyId, activeInstitutionContract.ContractingPartyName);
_context.FinancialStatments.Add(statement);
_context.SaveChanges();
var transaction = new FinancialTransaction(statement.id, now, now.ToFarsi(),
description,
"debt", descriptionOption, debt, 0, 0);
_context.FinancialTransactions.Add(transaction);
_context.SaveChanges();
return op.Succcedded();
}
}
}

View File

@@ -9,11 +9,13 @@ $(document).ready(function () {
<option class="debtOption" value = " بابت قراردادهای گذشته پرسنل" > بابت قراردادهای گذشته پرسنل </option>
<option class="debtOption" value = "بابت پرونده" > بابت پرونده</option>
<option class="debtOption" value = "بابت مبلغ بیمه کارگاه" > بابت مبلغ بیمه کارگاه </option>
<option class="debtOption" value = "بابت مبلغ بیمه خویش فرما " > بابت مبلغ بیمه خویش فرما </option>
<option class="debtOption" value = "بابت فیش کارگزاری " > بابت فیش کارگزاری </option>
<option class="debtOption" value = "بابت بدهی از قرارداد قبل " > بابت بدهی از قرارداد قبل </option>
<option class="debtOption" value = "بابت مبلغ بیمه خویش فرما" > بابت مبلغ بیمه خویش فرما </option>
<option class="debtOption" value = "بابت فیش کارگزاری" > بابت فیش کارگزاری </option>
<option class="debtOption" value = "بابت بدهی از قرارداد قبل" > بابت بدهی از قرارداد قبل </option>
<option class="debtOption" value = "بابت خرید" > بابت خرید </option>
<option class="debtOption" value = "بابت بدهی سایر " > بابت بدهی سایر </option>
<option class="debtOption" value = "بابت خرید استند حضور غیاب" > بابت خرید استند حضور غیاب </option>
<option class="debtOption" value = "بابت بدهی سایر" > بابت بدهی سایر </option>
`
);
const creditorOptions = $(
@@ -23,10 +25,10 @@ $(document).ready(function () {
<option class="creditOption" value = " بابت قراردادهای گذشته پرسنل" > بابت قراردادهای گذشته پرسنل </option>
<option class="creditOption" value = "بابت پرونده" > بابت پرونده</option>
<option class="creditOption" value = "بابت مبلغ بیمه کارگاه" > بابت مبلغ بیمه کارگاه </option>
<option class="creditOption" value = "بابت مبلغ بیمه خویش فرما " > بابت مبلغ بیمه خویش فرما </option>
<option class="creditOption" value = "بابت فیش کارگزاری " > بابت فیش کارگزاری </option>
<option class="creditOption" value = "بابت بدهی از قرارداد قبل " > بابت بدهی از قرارداد قبل </option>
<option class="creditOption" value = "بابت بدهی سایر " > بابت بدهی سایر </option>
<option class="creditOption" value = "بابت مبلغ بیمه خویش فرما" > بابت مبلغ بیمه خویش فرما </option>
<option class="creditOption" value = "بابت فیش کارگزاری" > بابت فیش کارگزاری </option>
<option class="creditOption" value = "بابت بدهی از قرارداد قبل" > بابت بدهی از قرارداد قبل </option>
<option class="creditOption" value = "بابت بدهی سایر" > بابت بدهی سایر </option>
<option class="creditOption" value = "بابت حق بیمه کارگاه" > بابت حق بیمه کارگاه </option>
<option class="creditOption" value = "بابت حق بیمه خویش فرما" > بابت حق بیمه خویش فرما </option>
<option class="creditOption" value = "بابت خرید" > بابت خرید </option>
@@ -74,11 +76,12 @@ let debtorOptions = $(
<option class="debtOption" value = " بابت قراردادهای گذشته پرسنل" > بابت قراردادهای گذشته پرسنل </option>
<option class="debtOption" value = "بابت پرونده" > بابت پرونده</option>
<option class="debtOption" value = "بابت مبلغ بیمه کارگاه" > بابت مبلغ بیمه کارگاه </option>
<option class="debtOption" value = "بابت مبلغ بیمه خویش فرما " > بابت مبلغ بیمه خویش فرما </option>
<option class="debtOption" value = "بابت فیش کارگزاری " > بابت فیش کارگزاری </option>
<option class="debtOption" value = "بابت بدهی از قرارداد قبل " > بابت بدهی از قرارداد قبل </option>
<option class="debtOption" value = "بابت مبلغ بیمه خویش فرما" > بابت مبلغ بیمه خویش فرما </option>
<option class="debtOption" value = "بابت فیش کارگزاری" > بابت فیش کارگزاری </option>
<option class="debtOption" value = "بابت بدهی از قرارداد قبل" > بابت بدهی از قرارداد قبل </option>
<option class="debtOption" value = "بابت خرید" > بابت خرید </option>
<option class="debtOption" value = "بابت بدهی سایر " > بابت بدهی سایر </option>
<option class="debtOption" value = "بابت خرید استند حضور غیاب" > بابت خرید استند حضور غیاب </option>
<option class="debtOption" value = "بابت بدهی سایر" > بابت بدهی سایر </option>
`
);
let creditorOptions = $(
@@ -88,9 +91,9 @@ let creditorOptions = $(
<option class="creditOption" value = " بابت قراردادهای گذشته پرسنل" > بابت قراردادهای گذشته پرسنل </option>
<option class="creditOption" value = "بابت پرونده" > بابت پرونده</option>
<option class="creditOption" value = "بابت مبلغ بیمه کارگاه" > بابت مبلغ بیمه کارگاه </option>
<option class="creditOption" value = "بابت مبلغ بیمه خویش فرما " > بابت مبلغ بیمه خویش فرما </option>
<option class="creditOption" value = "بابت فیش کارگزاری " > بابت فیش کارگزاری </option>
<option class="creditOption" value = "بابت بدهی از قرارداد قبل " > بابت بدهی از قرارداد قبل </option>
<option class="creditOption" value = "بابت مبلغ بیمه خویش فرما" > بابت مبلغ بیمه خویش فرما </option>
<option class="creditOption" value = "بابت فیش کارگزاری" > بابت فیش کارگزاری </option>
<option class="creditOption" value = "بابت بدهی از قرارداد قبل" > بابت بدهی از قرارداد قبل </option>
<option class="creditOption" value = "بابت بدهی سایر " > بابت بدهی سایر </option>
<option class="creditOption" value = "بابت حق بیمه کارگاه" > بابت حق بیمه کارگاه </option>
<option class="creditOption" value = "بابت حق بیمه خویش فرما" > بابت حق بیمه خویش فرما </option>

View File

@@ -167,11 +167,12 @@ let debtorOptions = $(
<option class="debtOption" value = " بابت قراردادهای گذشته پرسنل" > بابت قراردادهای گذشته پرسنل </option>
<option class="debtOption" value = "بابت پرونده" > بابت پرونده</option>
<option class="debtOption" value = "بابت مبلغ بیمه کارگاه" > بابت مبلغ بیمه کارگاه </option>
<option class="debtOption" value = "بابت مبلغ بیمه خویش فرما " > بابت مبلغ بیمه خویش فرما </option>
<option class="debtOption" value = "بابت فیش کارگزاری " > بابت فیش کارگزاری </option>
<option class="debtOption" value = "بابت بدهی از قرارداد قبل " > بابت بدهی از قرارداد قبل </option>
<option class="debtOption" value = "بابت مبلغ بیمه خویش فرما" > بابت مبلغ بیمه خویش فرما </option>
<option class="debtOption" value = "بابت فیش کارگزاری" > بابت فیش کارگزاری </option>
<option class="debtOption" value = "بابت بدهی از قرارداد قبل" > بابت بدهی از قرارداد قبل </option>
<option class="debtOption" value = "بابت خرید" > بابت خرید </option>
<option class="debtOption" value = "بابت بدهی سایر " > بابت بدهی سایر </option>
<option class="debtOption" value = "بابت خرید استند حضور غیاب" > بابت خرید استند حضور غیاب </option>
<option class="debtOption" value = "بابت بدهی سایر" > بابت بدهی سایر </option>
`
);
let creditorOptions = $(
@@ -181,10 +182,10 @@ let creditorOptions = $(
<option class="creditOption" value = " بابت قراردادهای گذشته پرسنل" > بابت قراردادهای گذشته پرسنل </option>
<option class="creditOption" value = "بابت پرونده" > بابت پرونده</option>
<option class="creditOption" value = "بابت مبلغ بیمه کارگاه" > بابت مبلغ بیمه کارگاه </option>
<option class="creditOption" value = "بابت مبلغ بیمه خویش فرما " > بابت مبلغ بیمه خویش فرما </option>
<option class="creditOption" value = "بابت فیش کارگزاری " > بابت فیش کارگزاری </option>
<option class="creditOption" value = "بابت بدهی از قرارداد قبل " > بابت بدهی از قرارداد قبل </option>
<option class="creditOption" value = "بابت بدهی سایر " > بابت بدهی سایر </option>
<option class="creditOption" value = "بابت مبلغ بیمه خویش فرما" > بابت مبلغ بیمه خویش فرما </option>
<option class="creditOption" value = "بابت فیش کارگزاری" > بابت فیش کارگزاری </option>
<option class="creditOption" value = "بابت بدهی از قرارداد قبل" > بابت بدهی از قرارداد قبل </option>
<option class="creditOption" value = "بابت بدهی سایر" > بابت بدهی سایر </option>
<option class="creditOption" value = "بابت حق بیمه کارگاه" > بابت حق بیمه کارگاه </option>
<option class="creditOption" value = "بابت حق بیمه خویش فرما" > بابت حق بیمه خویش فرما </option>
<option class="creditOption" value = "بابت خرید" > بابت خرید </option>