شروع سریع
در چند قدم ساده محیط تست یا نسخه نصبی را راهاندازی کنید (نسخه ابری نصب توسط تیم ما انجام میشود).
- پیشنیازها: .NET 9 SDK/Runtime، SQL Server / PostgreSQL، TLS 1.2+
- نصب (On-Premise): بسته نصبی یا Docker Compose برای محیط تست
- پیکربندی: اتصال DB، SMTP، تنظیمات شبکه
- ساخت ادمین: از طریق CLI یا پنل نصب
- فعالسازی ماژول: منابع انسانی، مالی، فروش و گزارشات
نصب و پیکربندی
نسخه ابری
نصب و نگهداری توسط تیم تصمیمساز انجام میشود؛ مشتری تنها دامنه و تنظیمات پایه را ارسال میکند.
نسخه نصبی (On-Premise)
برای محیطهای حساس و شبکه داخلی، از بسته نصبی یا کانتینر استفاده کنید:
# مثال اجرای docker-compose (در صورت وجود بسته کانتینری)
git clone https://git.example.com/decisionsaz/erp-deploy.git
cd erp-deploy
docker-compose up -d
تنظیمات امنیتی و رفع خطا
- فعالسازی HTTPS و HSTS
- محدودسازی دسترسی پنل ادمین با IP Whitelisting
- MFA برای ادمینها
مرجع API
نوع: REST — فرمت: JSON — احراز هویت: Bearer (JWT)
دریافت توکن
برای گرفتن توکن دسترسی، درخواست POST به endpoint زیر ارسال کنید:
POST /api/v1/auth/token
Content-Type: application/json
Body:
{
"username": "you@company.com",
"password": "your-password"
}
Response:
{
"access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6...",
"expires_in": 3600
}
ایجاد کارمند (Employees)
نمونهٔ ایجاد پرسنل:
POST /api/v1/employees
Headers: Authorization: Bearer {access_token}
Body:
{
"first_name": "علی",
"last_name": "رضایی",
"email": "ali@company.com",
"department_id": 12,
"position": "کارشناس"
}
Response 201:
{
"id": 132,
"first_name": "علی",
"last_name": "رضایی"
}
Rate Limit: پیشفرض ۱۰۰۰ درخواست در دقیقه — مقادیر قراردادی قابل تغییر است.
کُدهای رایج: ۲۰۰, ۲۰۱, ۴۰۰, ۴۰۱, ۴۰۳, ۴۲۹, ۵۰۰
نمونه کد — .NET 9 (C#)
نمونه سادهٔ کلاینت HttpClient با استفاده از Bearer Token.
using System;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Threading.Tasks;
public class DecisionsazErpClient : IDisposable
{
private readonly HttpClient _http;
public DecisionsazErpClient(string baseUrl, string token)
{
_http = new HttpClient { BaseAddress = new Uri(baseUrl) };
_http.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token);
_http.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
}
public async Task<string> GetEmployeeAsync(int id)
{
var resp = await _http.GetAsync($"/api/v1/employees/{id}");
resp.EnsureSuccessStatusCode();
return await resp.Content.ReadAsStringAsync();
}
public async Task<string> CreateEmployeeAsync(object payload)
{
var resp = await _http.PostAsJsonAsync("/api/v1/employees", payload);
resp.EnsureSuccessStatusCode();
return await resp.Content.ReadAsStringAsync();
}
public void Dispose() => _http?.Dispose();
}
// استفاده نمونه:
// var client = new DecisionsazErpClient("https://api.decisionsaz.com", "");
// var emp = await client.GetEmployeeAsync(132);
ساختار دادهها
Employee
id, first_name, last_name, email, department_id, position, status
Department
id, name, code, manager_id
Invoice
id, invoice_no, date, customer_id, total_amount, status
یکپارچهسازیها و Webhook
Webhook نمونه
POST https://your-system.example/webhook/invoice-created
Body:
{
"event": "invoice.created",
"data": { "id": 452, "invoice_no": "INV-2025-0001", "total_amount": 12500 }
}
AD / LDAP / SSO
پشتیبانی از همگامسازی گروهها و نقشدهی خودکار.
ماژولها
منابع انسانی
پرونده پرسنلی، حضور و غیاب، حقوق و دستمزد
حسابداری
دفتر کل، اسناد مالی، گزارشات
فروش
مدیریت سفارش، مشتریان و فاکتورها
امنیت و مجوزها
- احراز هویت: JWT / OAuth2
- نقشها: Admin / Manager / Employee / Guest
- رمزنگاری: دادههای حساس در DB رمزنگاری میشوند
- Audit Log: ذخیرهٔ لاگ عملیات مهم
تغییرات (Changelog)
نسخه ۲.۱.۰ — ۱۴ مهر ۱۴۰۴
- افزودن Webhook برای فاکتور
- بهبود عملکرد گزارشها
تماس با واحد فروش
- تلفن: ۰۴۱۳۳۸۶۶۶۳۶
- ایمیل فروش: sales@tasmimsaz.com

بزنید و سپس افزودن به صفحه اصلی
بزنید و سپس افزودن به صفحه اصلی