راهنمای استفاده

رابط کاربری (Api) نرم افزار جامع آرین سیستم


  • Version: API Version : 1.0.0.37
  • System Type: 64 bits
  • Release Date:1403/10/26
  • Places :11362 Places

در صورت نیاز به راهنمایی بیشتر میتوانید با واحد پشتیبانی آرین سیستم تماس بگیرید


معماری رابط کاربری

معماری رابط کاری آرین سیستم Api بدین شکل است

  • API Type :
    • Rest
  • Content-Type :
    • application/x-www-form-urlencoded
    • application/json
  • Response Type :
    • JSON
  • Api Method :
    • POST

در تمامی Json های حاصل شده از درخواست ها ، فیلد مربوط به خطاها ، Err می باشد.در صورت پر بودن این فیلد ، متن خطا در آن قرار خواهد داشت.


احراز هویت (Login)

  • Address Url :
    • http://SomeAddress/API/Login
  • Params :
  • User :
    • نام کاربری
  • Pass :
    • کلمه عبور
  • Place :
    • محل تابعه

ارسال درخواست

پاسخ

Token دریافت شده از خروجی ، تا زمان اتمام سشن (قابل تنظیم - مقدار پیش فرض : 6 ساعت) معتبر می باشد و ارسال آن به عنوان یکی از پارامترها برای درخواست های دیگر (دریافت داده ، درج ، ویرایش ، حذف) ، در Header الزامی می باشد :

  • autt = Token مقدار

دریافت اطلاعات

  • Address Url :
    • http://SomeAddress/API/Select
  • Id :
    • مورد نظر RequestId
  •  
  • Params :
    • به ازای درخواست های مختلف ، متفاوت می باشد

تعدادی پارامتر اختیاری عمومی با کاربردهای خاص در نظر گرفته شده است که در صورت نیاز می تون آنها را نیز ارسال کرد

  • PageNum :
    • شماره صفحه درخواستی از نتیجه بازگشتی
  • RowsCount :
    • تعداد سطرهای درخواستی از نتیجه بازگشتی
  • IsStruct :
    • :( colsاگر با مقدار 1 فرستاده شود ، اطلاعات ستون های جدول را نیز بر میگرداند (در فیلد
  • IsReqFields :
    • :(ReqFields اگر با مقدار 1 فرستاده شود ، فیلدهای اجباری جهت ذخیره داده ها را بر میگرداند (در فیلد
  • DetStruct :
    • :(defcolsاگر با مقدار 1 فرستاده شود ، ستون های مورد نیاز جهت ذخیره (ردیف - آرتیکل - جزییات) را بر میگرداند (در فیلد

ارسال درخواست

دریافت لیست مقاطع آموزشی

پاسخ

فیلدهای خروجی

  • TotalCount :
    • تعداد سطرهای جدول بازگشتی
  • rows :
    • سطرهای جدول بازگشتی (داده ها)
  • cols :
    • اطلاعات ستون های جدول بازگشتی
  • key :
    • نام ستون کلید جدول بازگشتی (مورد نیاز در هنگام ذخیره سازی)
  • ReqFields :
    • فیلدهای (ستونها) اجباری جهت ذخیره داده ها

نمونه

ارسال درخواست دریافت لیست بانک
حالت application/json

حالت application/x-www-form-urlencoded

پاسخ

ارسال درخواست دریافت اشخاص و شرکت ها
حالت application/json

حالت application/x-www-form-urlencoded

پاسخ


درج طلاعات

  • Address Url :
    • http://SomeAddress/API/Insert
  • Id :
    • مورد نظر RequestId
  • Params :
    • به ازای درخواست های مختلف ، متفاوت می باشد

نمونه

درخواست درج اطلاعات اشخاص شرکت ها
حالت application/json

حالت application/x-www-form-urlencoded

پاسخ

در صورت ارسال پارامتر isrow ، داده های سطر درج شده در نتیجه درخواست برگردانده می شود.(در فیلد rows)

مقدار برگشتی در فیلد Id ، کلید رکورد درج شده می باشد (مورد استفاده در هنگام ویرایش و حذف)


ویرایش طلاعات

  • Address Url :
    • http://SomeAddress/API/Update
  • Id :
    • مورد نظر RequestId
  • [Key] * :
    • ستون کلید که در جدول های مختلف متفاوت است
    • PersonId or .....
  • Params :
    • به ازای درخواست های مختلف ، متفاوت می باشد

نمونه

ارسال درخواست ویرایش اطلاعات اشخاص و شرکت ها
حالت application/json

حالت application/x-www-form-urlencoded

پاسخ


حذف طلاعات

  • Address Url :
    • http://SomeAddress/API/Delete
  • Id :
    • مورد نظر RequestId
  • [Key] :
    • ستون کلید که در جدول های مختلف متفاوت است
    • PersonId or .....
  • سایر پارامترها در صورت لزوم
    • VoucherId or .....

نمونه

ارسال درخواست حذف اطلاعات در اشخاص و شرکت ها
حالت application/json

حالت application/x-www-form-urlencoded

پاسخ

مقدار برگشتی در فیلد Ids ، کلید رکورد حذف شده می باشد.


نمونه احراز هوبت

نمونه کد احراز هویت (Login) به زبان C#

حالت application/x-www-form-urlencoded
                        
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Text;
using System.Threading.Tasks;

namespace Api_Test
    {
        class Program
            {
            public class Login
                {
                public string Err { get; set; }
                public string Token { get; set; }
                public bool PassWrong { get; set; }
                }
            static void Main(string[] args)
                {

                WebClient client = new WebClient();

                client.Encoding = System.Text.Encoding.UTF8;

                client.Headers.Add("X-Requested-With", "XMLHttpRequest");
                client.Headers[HttpRequestHeader.ContentType] = "application/x-www-form-urlencoded";

                client.QueryString.Add("user", "نام کاربری");
                client.QueryString.Add("pass", "کلمه عبور");
                client.QueryString.Add("place", "محل تابعه");

                var res = System.Text.Encoding.UTF8.GetString(client.UploadData("http://localhost:1568/API/Login", "POST", new byte[] { }));

                var json = Newtonsoft.Json.JsonConvert.DeserializeObject
                    (res);
                    var Token = json.Token;
                }
        }
    }
    
حالت application/json

using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Text;
using System.Threading.Tasks;

namespace Api_Test
    {
        class Program
            {

            public class Login
                {
                    public string Err { get; set; }
                    public string Token { get; set; }
                    public bool PassWrong { get; set; }
                }

            static void Main(string[] args)
                {

                     WebClient client = new WebClient();

                    client.Encoding = System.Text.Encoding.UTF8;

                    client.Headers.Add("X-Requested-With", "XMLHttpRequest");
                    client.Headers[HttpRequestHeader.ContentType] = "application/json";

                    var data = @"{
                                    'user':'نام کاربری',
                                    'pass' : 'کلمه عبور' ,
                                    'place' : 'محل تابعه'
                                 }";

                    var bytes = System.Text.Encoding.UTF8.GetBytes(data);

                    var res = System.Text.Encoding.UTF8.GetString(client.UploadData("http://localhost:1568/API/Login", "POST", bytes));
                    var json= Newtonsoft.Json.JsonConvert.DeserializeObject
                        (res);
                        var Token = json.Token;
                    }
            }
    }


نمونه دریافت اطلاعات

نمونه کد دریافت اطلاعات (Select) به زبان C#


    public class Select
    {
        public string Err { get; set; }
        public int TotalCount { get; set; }
        public List
        rows { get; set; }
        public List
        cols { get; set; }
        public string key { get; set; }
        public List
        ReqFields { get; set; }
        public List
        AutoNumbers { get; set; }
    }

    public class Web_ColInfo
    {
        public string Name { get; set; }
        public string Caption { get; set; }
        public int Width { get; set; }
        public bool Visible { get; set; }
        public int DisplayIndex { get; set; }
        public int FloatingCount { get; set; }
        public bool IsThreeDigit { get; set; }
        public string SumMode { get; set; }
        public string ColumnTypeStr { get; set; }
    }

حالت application/json

WebClient client1 = new WebClient();
client1.Encoding = System.Text.Encoding.UTF8;

client1.Headers.Add("X-Requested-With", "XMLHttpRequest");
client1.Headers[HttpRequestHeader.ContentType] = "application/json";


client1.Headers.Add("autt", Token);  // Token : توکن دریافتی از لاگین

data = @"{
            'id':'Person',
               'Params':[
                            {'Name':'RowsCount' ,'Value':'10' } ,
                            {'Name':'IsStruct' ,'Value':'1' } 
                        ]
          }";

bytes = System.Text.Encoding.UTF8.GetBytes(data);
var SelectRes = System.Text.Encoding.UTF8.GetString(client1.UploadData("http://localhost:1568/API/Select", "POST", bytes));
var SelectJson = Newtonsoft.Json.JsonConvert.DeserializeObject<select>(SelectRes);
// SelectJson : نتیجه دریافتی در این متغیر قرار می گیرد

حالت application/x-www-form-urlencoded

WebClient client1 = new WebClient();
client1.Encoding = System.Text.Encoding.UTF8;

client1.Headers.Add("X-Requested-With", "XMLHttpRequest");
client1.Headers.Add("autt", Token);  // Token : توکن دریافتی از لاگین
client1.Headers[HttpRequestHeader.ContentType] = "application/x-www-form-urlencoded";

client1.QueryString.Add("Id", "Person");
client1.QueryString.Add("Params[0].Name", "RowsCount");
client1.QueryString.Add("Params[0].Value", "10");

client1.QueryString.Add("Params[1].Name", "IsStruct");
client1.QueryString.Add("Params[1].Value", "1");

var SelectRes = System.Text.Encoding.UTF8.GetString(client1.UploadData("http://localhost:1568/API/Select", "POST", new byte[] { }));


var SelectJson = Newtonsoft.Json.JsonConvert.DeserializeObject<select>(SelectRes);
    // SelectJson : نتیجه دریافتی در این متغیر قرار می گیرد

نمونه درج اطلاعات

نمونه کد درج اطلاعات (Insert) به زبان C#


public class Insert
    {
        public string Err { get; set; }
        public int Id { get; set; }
        public List
        row { get; set; }
    }
WebClient client1 = new WebClient();
client1.Encoding = System.Text.Encoding.UTF8;
client1.Headers.Add("X-Requested-With", "XMLHttpRequest");
client1.Headers.Add("autt", Token); // Token : توکن دریافتی از لاگین

client1.Headers[HttpRequestHeader.ContentType] = "application/json";
data = @"{
            'id':'SaleFactor',
            'Params':[
                        {'Name':'SaleTypeID' ,'Value':'1' } ,
                        {'Name':'CustomerId' ,'Value':'2' } ,
                        {'Name':'VoucherDate' ,'Value':'1400/01/01' } ,
                        {'Name':'[Inserted]' ,'Array_Value': ['123','456','test','test2'] } ,
                        {'Name':'[Inserted]' ,'Array_Value': ['78','89','test3','test4'] }
                    ]
           }";

bytes = System.Text.Encoding.UTF8.GetBytes(data);

var InserttRes = System.Text.Encoding.UTF8.GetString(client1.UploadData("http://localhost:1568/API/Insert", "POST", bytes));

var InsertJson = Newtonsoft.Json.JsonConvert.DeserializeObject(InserttRes);

پارامترهای [Inserted] جهت درج داده های جزییات (ردیف - آرتیکل) فرستاده شوند (به ازای هر سطر ، یک پارامتر).تعداد و ترتیب ستونهایی که باید ارسال شوند را باید هنگام Select ، با ارسال پارامتر DetStruct دریافت نموده (در فیلد defcols) و طبق آن الگو داده های سطر ها را ارسال نمایید.

پس از درج داده های جزییات ، در صورتی که نیاز به ویرایش یا حذف آنها بود ، داده های سطرها را با نام پارامتر [Updated] (جهت ویرایش) و یا [Deleteds] (جهت حذف) ارسال نمایید.


تغییرات سند

موارد جدید اضافه شده ، تغییر یافته ، اصلاح شده ، اصلاح شده یا به روز شده در آخرین نسخه ها را مشاهده کنید.

Version 1 (1400 / 02 / 30)

  • Added ایجاد سند راهنما