SerzatMetotları
SetSerZatOrderIdForOrder Metodu
İş Emrinin oluşturulan SerzartOrderId sini set eden metotdur.
Metod ismi = SerzatOrderIdUpdate
Api Url: https://customer.xyz/api/Serzat/SerzatOrderIdUpdate
Request:
{
"Id": 1,
"Filter": {
"OrderNo": "SORD120934",
"BranchCode": "134710",
"SplitCode": "01",
"LineNos": [
1000,
2,
3
]
},
"AuthTicket": "----------------------------"
}
AuthTicket: Erişim için kullanıcı adınız ve şifreniz ile alınan key
Id = OrderId numarasına
Filter.OrderNo = OrderNo numarasına
Filter.BranchCode = BranchCode numarasına
Filter.SplitCode = SplitCode numarasına Filter.LineNos= LineNos
denk gelen alanlardır.
Response:
{
"Results": [],
"Entity": true,
"HasResult": true,
"Count": 0,
"TotalCount": 0,
"Id": 0,
"Meta": null,
"MessageList": [
{
"Type": 2,
"Message": "İş Emrinin oluşturulan Serzat OrderId'si eklenmiştir."
}
],
"HasError": false,
"HasMessage": true,
"RrpTag": null
}
ClearOrderId Metodu
SerzartOrderId’yi iş emri üzerinden silen metotdur.
Metod ismi = SerzatOrderIdUpdate
Api Url: https://customer.xyz/api/Serzat/SerzatOrderIdUpdate
Request:
{
"Filter": {
"BranchCode": "134710",
"OrderId": "1"
},
"AuthTicket": "----------------------------"
}
Filter.BranchCode = BranchCode numarasına
Filter.OrderId= OrderId’ye
denk gelen alanlardır.
Response:
{
"Results": [],
"Entity": true,
"HasResult": true,
"Count": 0,
"TotalCount": 0,
"Id": 0,
"Meta": null,
"MessageList": [
{
"Type": 2,
"Message": "İş Emrinin oluşturulan Serzat OrderId'si 0 olarak setlenmiştir."
}
],
"HasError": false,
"HasMessage": true,
"RrpTag": null
}
SetRepairStatusForServiceJob Metodu
Service Job Line tablosunda “Repair Status ”, “Work Completed”,“Last Process Date“,”Start Date”,”WorkShop”,”ProcessedFromSerzat”,”Completion Date” alanlarını ve Service Line tablosunda : “WorkShop” alanını setleyen metotdur.
Metod ismi = SetRepairStatusForServiceJob
Api Url: https://customer.xyz/api/Serzat/SetRepairStatusForServiceJob
Request:
{
"Filter": {
"JobNo": 10000,
"OrderId": 1,
"RepairStatus": 2,
"LastProcessDate": "2023-01-01T00:00:00.123Z",
"FirstProcessDate": "2021-02-01T00:00:00.123Z",
"BranchCode": "134710" },
"AuthTicket": "----------------------------"
}
Response:
{
"Results": [],
"Entity": true,
"HasResult": true,
"Count": 0,
"TotalCount": 0,
"Id": 0,
"Meta": null,
"MessageList": [
{
"Type": 2,
"Message": "İş Emrinin tamir durumu bilgileri eklenmiştir."
}
],
"HasError": false,
"HasMessage": true,
"RrpTag": null
}
SetDamageDocumentNoForOrder Metodu
İş emri’ne DamageDocumentNo’yu setleyen metotdur.
Metod ismi = SetDamageDocumentNoForOrder
Api Url: https://customer.xyz/api/Serzat/SetDamageDocumentNoForOrder
Request:
{
"Filter": {
"OrderNo": "SORD120934",
"BranchCode": "134710",
"SplitCode": "01",
"DamageDocumentNo": "Test1"
},
"AuthTicket": "----------------------------"
}
Response:
{
"Results": [],
"Entity": true,
"HasResult": true,
"Count": 0,
"TotalCount": 0,
"Id": 0,
"Meta": null,
"MessageList": [
{
"Type": 2,
"Message": " İş Emrinin ağır hasarlı kaydı eklenmiştir."
}
],
"HasError": false,
"HasMessage": true,
"RrpTag": null
}
ReadyForInvoice Metodu
SerzatOrderId ye göre ilgili iş emrini faturaya hazır olarak işaretleyen metotdur.
Metod ismi = SetReadyStatusForInvoice
Api Url: https://customer.xyz/api/Serzat/SetReadyStatusForInvoice
Request:
{
"Filter": {
"OrderId": 1,
"BranchCode": "134710",
"ReadyForInvoice":1
},
"AuthTicket": "----------------------------"
}
ReadyForInvoice: Bu alan Metodun nasıl çalışacağını belirler 1(true) değer alması durumunda faturaya hazır olarak işaretlenir.
Response:
{
"Results": [],
"Entity": true,
"HasResult": true,
"Count": 0,
"TotalCount": 0,
"Id": 0,
"Meta": null,
"MessageList": [
{
"Type": 2,
"Message": "İş Emrinin incadea faturaya hazır olarak işaretlendi."
}
],
"HasError": false,
"HasMessage": true,
"RrpTag": null
}
CancelReadyForInvoice Metodu
SerzatOrderId ye göre ilgili iş emrini faturaya hazır değil olarak işaretleyen metotdur.
Metod ismi = SetReadyStatusForInvoice
Api Url: https://customer.xyz/api/Serzat/SetReadyStatusForInvoice
Request:
{
"Filter": {
"OrderId": 1,
"BranchCode": "134710",
"ReadyForInvoice":0
},
"AuthTicket": "----------------------------"
}
ReadyForInvoice: Bu alan Metodun nasıl çalışacağını belirler 0(false) değer alması durumunda faturaya hazır değil olarak işaretlenir.
Response:
{
"Results": [],
"Entity": true,
"HasResult": true,
"Count": 0,
"TotalCount": 0,
"Id": 0,
"Meta": null,
"MessageList": [
{
"Type": 2,
"Message": "İş Emrinin incadea faturaya hazır değil olarak işaretlendi."
}
],
"HasError": false,
"HasMessage": true,
"RrpTag": null
}
UpdateServiceHeaderMetodu
İş Emrini update eden metotdur.
Metod ismi = UpdateServiceHeader
Api Url: https:/customer.xyz/api/Serzat/UpdateServiceHeader
Request:
{
"Filter": {
"OrderNo": "SORD122687",
"BranchCode": "134710",
"Mileage":1,
"PickupDate":"2021-02-01T00:00:00.123Z",
"Description":"test",
"DocumentType":2
},
"AuthTicket": "----------------------------"
}
Filter. OrderNo= DocumentNo ya denk gelmektedir ve db’de kayıtlı veri bu numaraya göre sorgulanmaktadır.
Response:
{
"Results": [],
"Entity": true,
"HasResult": true,
"Count": 0,
"TotalCount": 0,
"Id": 0,
"Meta": null,
"MessageList": [
{
"Type": 2,
"Message": "İş Emri güncellendi."
}
],
"HasError": false,
"HasMessage": true,
"RrpTag": null
}
SetFixedCurrencyByOrderIdAsync Metodu
Serzat OrderId için kur sabitler.
Metod ismi = SetFixedCurrencyByOrderIdAsync
Api Url: https://customer.xyz/api/Serzat/SetFixedCurrencyByOrderIdAsync
Request:
{
"Filter": {
"OrderID": "1",
"BranchCode": "134710"
},
"AuthTicket": "----------------------------"
}
Response:
{
"Results": [],
"Entity": true,
"HasResult": true,
"Count": 0,
"TotalCount": 0,
"Id": 0,
"Meta": null,
"MessageList": [
{
"Type": 2,
"Message": "İş Emrine Sabit kur değeri verildi."
}
],
"HasError": false,
"HasMessage": true,
"RrpTag": null
}
GetOrderRemarks Metodu
VOR bilgisini döner.
Metod ismi = GetOrderRemarks
Api Url: https://customer.xyz/api/Serzat/GetOrderRemarks
Request:
{
"Filter": {
"CustomerNo": " XXXXXXXXXX ",
"VIN": " XXXXXXXXXX ",
"DocumentNo": "XXXXXXXXXX ",
"BranchCode": "134710"
},
"AuthTicket": "----------------------------"
}
Response:
{
"Results": [
{
"RemarkDescription": null,
"OrderNo": null,
"RemarkType": 13,
"RemarkSubType": 32,
"Date1": null,
"Date2": null,
"Int1": 0,
"Int2": 0,
"Text1": 0,
"Text2": 0
},
{
"RemarkDescription": null,
"OrderNo": null,
"RemarkType": 13,
"RemarkSubType": 32,
"Date1": null,
"Date2": null,
"Int1": 0,
"Int2": 0,
"Text1": 0,
"Text2": 0
}
],
"Entity": null,
"HasResult": true,
"Count": 614,
"TotalCount": 0,
"Id": 0,
"Meta": null,
"MessageList": [
{
"Type": 2,
"Message": "Vor Bulundu."
}
],
"HasError": false,
"HasMessage": true,
"RrpTag": null
}
AddVorRecordMetodu
Vor Kaydı yapar.
Metod ismi = AddVorRecord
Api Url: https://customer.xyz/api/Serzat/AddVorRecord
Request:
{
"Filter": {
"VIN": "XXXXXXX",
"Customer": "XXXXXX",
"DocumentNo": "XXXXX",
"Category":" XXXXX ",
"Subject":" XXXXX ",
"Reason":" XXXXX ",
"Notes":" XXXXX ",
"EventId":" XXXXX ",
"ChannelName":" XXXXX ",
"BranchCode": "134710"
}, "AuthTicket": "----------------------------"
}
Response:
{
"Results": [],
"Entity": null,
"HasResult": false,
"Count": 0,
"TotalCount": 0,
"Id": 0,
"Meta": null,
"MessageList": [
{
"Type": 2,
"Message": "VOR kaydı yapıldı."
}
],
"HasError": false,
"HasMessage": true,
"RrpTag": null
}
GetCustomerNoToken Metodu
Müşteri bilgisini döner.
Metod ismi = GetCustomerNoToken
Api Url: https://customer.xyz/api/Serzat/GetCustomerNoToken
Request:
{
"Filter": {
"CustomerNo": "XXXXX",
"BranchCode": "134710"
},
"AuthTicket": "----------------------------"
}
Response:
{
"Results": [],
"Entity": {
"CustomerNo": " XXXXXXXX ",
"CustomerName": " XXXXXXXX ",
"VehicleCount": 0,
"Address": " XXXXXXXX ",
"City": "ISTANBUL",
"CustomerType": XXXXXXXX,
"IdentityNo": null,
"SalesforceId": " XXXXXXXX ",
"CrmCustomerNo": "XXXXXXXX",
"VatRegistrationNo": "XXXXXXX",
"TaxAreaCode": "XXXXX",
"PhoneNo": null,
"County": null,
"Email": null,
"MobilePhoneNo": "XXXXXXXX",
"VatBusinessPostingGroup": null,
"GeneralBusinessPostingGroup": null,
"LaborPriceGroup": null,
"ItemSalesPriceGroup": null,
"IsEInvoice": true,
"DefaultSplitCode": null,
"ServiceGroup": null,
"HasDepartment": false,
"PostCode": null,
"HomeMobilePhoneNo": "XXXXXXX",
"IsEArchive": false
},
"HasResult": true,
"Count": 0,
"TotalCount": 0,
"Id": 0,
"Meta": null,
"MessageList": [
{
"Type": 2,
"Message": "Müşteri Bulundu."
}
],
"HasError": false,
"HasMessage": true,
"RrpTag": null
}
GetCustomerVehicle Metodu
Müşteri bilgisini döner.
Metod ismi = GetCustomerVehicle
Api Url: https://customer.xyz/api/Serzat/GetCustomerVehicle
Request:
{
"Filter": {
"LicenseNo": " XXXXXXXXXX ",
"VIN": " XXXXXXXXXX ",
"BranchCode": "134710"
},
"AuthTicket": "----------------------------"
}
Response:
{
"Results": [],
"Entity": {
"SfId": null,
"BoNo": " XXXXXXXXXX ",
"KeyNo": " XXXXXXXXXX ",
"KosNo": " XXXXXXXXXX ",
"TekNo": null,
"VIN": " XXXXXXXXXX ",
"AccountName": " XXXXXXXXXX ",
"Phone": null,
"Fax": " XXXXXXXXXX ",
"Gsm": null,
"PCGsm": " XXXXXXXXXX ",
"City": null,
"Town": null,
"MakeCode": "BMW",
"ModelCode": null,
"ModelDescription": null,
"ModelYear": "2004",
"Visibility": null,
"LicenseNo": " XXXXXXXXXX ",
"Mileage": 165110,
"Email": "XXXXXXXXXX",
"IsDefaultUser": 0
},
"HasResult": true,
"Count": 0,
"TotalCount": 0,
"Id": 0,
"Meta": null,
"MessageList": [
{
"Type": 2,
"Message": "Araç ve tanımlı olduğu müşteri bulundu."
}
],
"HasError": false,
"HasMessage": true,
"RrpTag": null
}
SaveServiceLine Metodu
Service Line Ekleme ve Güncelleme yapar. LineNo Var ise günceller yok ise ekler.
Metod ismi = SaveServiceLine
Api Url: https://customer.xyz/api/Serzat/SaveServiceLine
Request:
{
"Filter": {
"UserName":" XXXXXXXX ",
"DocumentNo": "XXXXXXXX",
"BranchCode": XXXXXXXX,
"Mileage":1,
"PickupDate":"2021-02-01T00:00:00.123Z",
"Description":"test",
"DocumentType":0,
"LineNo": XXXXXXXX,
"JobNo": XXXXXXXX,
"Description":" ",
"Description2":" ",
"FcCode":"",
“No”:”XX”,
“LineType”:XX,
"LineDiscount":1,
"Quantity": XXXXXXXX,
"UnitPrice": XXXXXXXX,
"JLRMenuPricingJobId":" XXXXXXXX ",
"IsAbk":1,
"IsAdditionalJob":0,
"IsWashing":2
},
"AuthTicket": " XXXXXXXX "
}
Response:
{
"Results": [],
"Entity": true,
"HasResult": false,
"Count": 0,
"TotalCount": 0,
"Id": 0,
"Meta": null,
"MessageList": [
{
"Type": 2,
"Message": ""
}
],
"HasError": false,
"HasMessage": true,
"RrpTag": null
}
Başarılı Kayıt işlemlerinden sonra bu metot için response.Entity=True döner.
Başarısız işlemler için response.HasMessage = True döner.
DeleteServiceLine Metodu
Serzatta iş emrindeki ilgili pozisyonu siler.
Metod ismi = DeleteServiceLine
Api Url: https://customer.xyz/api/Serzat/DeleteServiceLine
Request:
{
"Filter": {
"UserName":" XXXXXXXX ",
"DocumentNo": "XXXXXXXX",
"BranchCode": XXXXXXXX,
"Mileage":1,
"PickupDate":"2021-02-01T00:00:00.123Z",
"Description":"test",
"DocumentType":0,
"LineNo": XXXXXXXX,
"JobNo": XXXXXXXX,
"Description":" ",
"Description2":" ",
"FcCode":"",
"LineDiscount":1,
"Quantity": XXXXXXXX,
"UnitPrice": XXXXXXXX,
"JLRMenuPricingJobId":" XXXXXXXX ",
"IsAbk":1,
"IsAdditionalJob":0,
"IsWashing":2
},
"AuthTicket": " XXXXXXXX "
}
Response:
{
"Results": [],
"Entity": true,
"HasResult": false,
"Count": 0,
"TotalCount": 0,
"Id": 0,
"Meta": null,
"MessageList": [
{
"Type": 2,
"Message": ""
}
],
"HasError": false,
"HasMessage": true,
"RrpTag": null
}
Başarılı Kayıt işlemlerinden sonra bu metot için response.Entity=True döner.
Başarısız işlemler için response.HasMessage = True döner.
GetRoleUsersNoToken Metodu
Kullanıcı grubu ismi altındaki kullanıcıları listeleyen metotdur.
GetRoleByName metotunun serzat endpointi ile verilmiş halidir.
Metod ismi = GetRoleUsersNoToken
Api Url: https:/customer.xyz/api/Serzat/GetRoleUsersNoToken
Request:
{
"Filter":{
"Id":"2"
},
"AuthTicket": " XXXXXXXX "
}
Response:
{
"Results": [
{
"Company": null,
"DefaultBranchCode": " XXXXXXXX ",
"DefaultBranchName": " XXXXXXXX ",
"DistinguishedName": "test",
"IsInternalDomainUser": true,
"Description": " XXXXXXXX ",
"Email": "",
"FullName": " XXXXXXXX XXXXXXXX ",
"IsActive": true,
"Phone": " XXXXXXXX ",
"Name": null,
"Surname": "ADMIN",
"UserPhoto": null
},
{
"Company": null,
"DefaultBranchCode": " XXXXXXXX ",
"DefaultBranchName": " XXXXXXXX ",
"DistinguishedName": "test",
"IsInternalDomainUser": true,
"Description": " XXXXXXXX ",
"Email": " XXXXXXXX ",
"FullName": " XXXXXXXX ",
"IsActive": true,
"Phone": " XXXXXXXX ",
"Name": null,
"Surname": " XXXXXXXX ",
"UserPhoto": null
}
],
"Entity": null,
"HasResult": true,
"Count": 2,
"TotalCount": 0,
"Id": 0,
"Meta": null,
"MessageList": [],
"HasError": false,
"HasMessage": false,
"RrpTag": null
}
GetServiceHeaderForSerzat Metodu
Serzata özel filtre ve sadece serzatı ilgilendiren alanları dönen fonskiyon ServisHeader listesi döner. Filtreye göre ServiceJob ve ServiceLine listelerini de doldurur,Arşivide kontol eder. vb.
Metod ismi = GetServiceHeaderForSerzat
Api Url: https:/customer.xyz/api/Serzat/GetServiceHeaderForSerzat
Request:
{
"Filter": {
"UserName":"XXXXX",
"BranchCode": 134710,
"ServiceAdvisor":"XXXXX",
"WithServiceJob":1,
"WithArchive":0,
"WithServiceLine":1,
"DocumentNoList":["XXXXX"]
}, "AuthTicket": " XXXXXXXX "
}
Response:
{
"Results": [
{
"No": "",
"SellToCustomerNo": "XXXXXXXXX",
"SellToCustomerName": null,
"MakeCode": "XXX",
"LicenseNo": "XX XXX XXX",
"VIN": "XXXXXXXXXXXXXXXX",
"OrderDate": "2022-10-25T14:39:16.557",
"OrderTime": "2022-10-25T14:39:16.557",
"PickupDate": "2022-10-25T17:00:00",
"PickupTime": "2022-10-25T17:00:00",
"Mileage": 50000.00,
"InitialRegistration": null,
"Description": null,
"VehicleEntryNo": "XXXXX",
"SellToCustomerName2": "XXXX XXXXX",
"DifferenceDate": 0,
"RepeatRepair": false,
"ServiceAdvisor": "XXXXXXXX",
"IsAdditionalServiceJob": false,
"Details": [
{
"DocumentNo": "XXXXXXXXXX",
"DocumentType": "TEKLİF",
"LineNo": 10000,
"LineType": "Labor",
"PositionNo": 1,
"No": "XXXXXXX",
"Description": "Diyagnoz sisteminde arıza hafızasınınsorgulanması",
"Description2": "Diyagnoz sisteminde arıza hafızasınınsorgulanması",
"ServiceJobNo": 0,
"FCCode": "00",
"LineDiscount": 0.00,
"Quantity": 2.000000,
"UnitPrice": 2.649000,
"StandartTime": 0.000000,
"ReadyForInvoice": false,
"Inventory": null,
"AvailableInventory": null,
"QuantityShipped": 0.000000,
"FooterText": null,
"ReservationStatus": 0.0,
"IsWashing": 0,
"UnitOfMeasureCode": "AW",
"IsDiagnosisLabor": false,
"Id": 0,
"IsActive": false,
"Text": null
}],
"Groups": [
{
"DocumentNo": "XXXXXXXXXX",
"ServiceAdvisorNo": "XXXXXXXX",
"LineNo": 10000,
"BillToCustomerNo": "XXXXXXXX",
"SplitCode": "16",
"WorkCompleted": false,
"CompletionDate": null,
"WorkShop": null,
"WorkshopID": null,
"SerzatOrderId": 0,
"Complaint": null,
"ComplaintMainGroup": null,
"ComplaintSubGroup": null,
"LastProcessDate": null,
"Id": 0,
"IsActive": false,
"Text": null
}],
"IsArchived": false,
"Id": 0,
"IsActive": false,
"Text": null
}
"Entity": null,
"HasResult": true,
"Count": 2,
"TotalCount": 0,
"Id": 0,
"Meta": null,
"MessageList": [],
"HasError": false,
"HasMessage": false,
"RrpTag": null
}
NOT: Arşiv yapısı henüz aktif olmadığı için Arşiv datası dönülmemektedir. ReservationStatus, Inventory ve AvailableInventory Fieldları Item ve Item Master yapısını oturması gerekmektedir. Sonradan dahil edilecektir.
SetTransferedFlagForInvoice Metodu
Metot : SetTransferedFlagForInvoice
Requestten gelen fatura numarasına göre filtreleme yaparak döküman tipi invoice olan ilgili faturanın IsTransfered fieldını true yapar.
Url : https://dev-borusan-api.licrus.com.tr/api/ Serzat/SetTransferedFlagForInvoice
Request:
{
"Filter":{
"InvoiceNumber":"XX1010XX"
},
"AuthTicket": "demodemodemodemodemodemo"
}
Response:
{
"Results": [],
"Entity": {
"IsSuccess": true
},
"HasResult": true,
"Count": 0,
"TotalCount": 0,
"Id": 0,
"Meta": null,
"MessageList": [],
"HasError": false,
"HasMessage": false,
"RrpTag": null
}
SetTransferedFlagForCancelledInvoice Metodu
Metot : SetTransferedFlagForCancelledInvoice
Requestten gelen fatura numarasına göre filtreleme yaparak döküman tipi credit memo(alacaklı dekontu) olan ilgili faturanın IsTransfered fieldını true yapar.
Url : https://dev-borusan-api.licrus.com.tr/api/ Serzat/ SetTransferedFlagForCancelledInvoice
Request:
{
"Filter":{
"InvoiceNumber":"XXXX000XXX"
},
"AuthTicket": "demodemodemodemodemodemodemo"
}
Response:
{
"Results": [],
"Entity": {
"IsSuccess": true
},
"HasResult": true,
"Count": 0,
"TotalCount": 0,
"Id": 0,
"Meta": null,
"MessageList": [],
"HasError": false,
"HasMessage": false,
"RrpTag": null
}
AuthTicket İçin Gerekli Metot
Önemli Not: Yukarıdaki metotlara erişimsağlayabilmeniz için ticket almanız gerekmektedir. Bu ticketlara kullanıcıbazlı erişim sağlayabilirsiniz. Aşağıdaki metoda kullanıcı adınız ve şifrenizigirerek AuthTicket alabilirsiniz.
Metod ismi = Login
Api Url : https://customer.xyz/api/account/login
{
"Name": "test",
"Password": "test"
}
Name = Kullanıcı Adı
Parola = Kullanıcı Parolası
İnsomia aracılığıyla test işlemleri gerçekleştirilmiştir.
Leave a Reply