| PUT | /procurement/item/{Id} |
|---|
import 'package:servicestack/servicestack.dart';
class ProcurementItem implements IConvertible
{
int? id;
int? batchId;
int? departmentId;
int? equipmentId;
// @required()
// @StringLength(500)
String? productName;
String? technicalSpec;
// @StringLength(50)
String? unit;
int? quantity;
String? purpose;
String? note;
int? approvalStatus;
String? approvalNote;
DateTime? approvedAt;
int? approvedBy;
DateTime? createdAt;
int? createdBy;
DateTime? updatedAt;
int? updatedBy;
bool? isDeleted;
DateTime? deletedAt;
int? deletedBy;
// @ignore()
String? departmentName;
// @ignore()
String? createdByName;
// @ignore()
String? approvedByName;
ProcurementItem({this.id,this.batchId,this.departmentId,this.equipmentId,this.productName,this.technicalSpec,this.unit,this.quantity,this.purpose,this.note,this.approvalStatus,this.approvalNote,this.approvedAt,this.approvedBy,this.createdAt,this.createdBy,this.updatedAt,this.updatedBy,this.isDeleted,this.deletedAt,this.deletedBy,this.departmentName,this.createdByName,this.approvedByName});
ProcurementItem.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
id = json['id'];
batchId = json['batchId'];
departmentId = json['departmentId'];
equipmentId = json['equipmentId'];
productName = json['productName'];
technicalSpec = json['technicalSpec'];
unit = json['unit'];
quantity = json['quantity'];
purpose = json['purpose'];
note = json['note'];
approvalStatus = json['approvalStatus'];
approvalNote = json['approvalNote'];
approvedAt = JsonConverters.fromJson(json['approvedAt'],'DateTime',context!);
approvedBy = json['approvedBy'];
createdAt = JsonConverters.fromJson(json['createdAt'],'DateTime',context!);
createdBy = json['createdBy'];
updatedAt = JsonConverters.fromJson(json['updatedAt'],'DateTime',context!);
updatedBy = json['updatedBy'];
isDeleted = json['isDeleted'];
deletedAt = JsonConverters.fromJson(json['deletedAt'],'DateTime',context!);
deletedBy = json['deletedBy'];
departmentName = json['departmentName'];
createdByName = json['createdByName'];
approvedByName = json['approvedByName'];
return this;
}
Map<String, dynamic> toJson() => {
'id': id,
'batchId': batchId,
'departmentId': departmentId,
'equipmentId': equipmentId,
'productName': productName,
'technicalSpec': technicalSpec,
'unit': unit,
'quantity': quantity,
'purpose': purpose,
'note': note,
'approvalStatus': approvalStatus,
'approvalNote': approvalNote,
'approvedAt': JsonConverters.toJson(approvedAt,'DateTime',context!),
'approvedBy': approvedBy,
'createdAt': JsonConverters.toJson(createdAt,'DateTime',context!),
'createdBy': createdBy,
'updatedAt': JsonConverters.toJson(updatedAt,'DateTime',context!),
'updatedBy': updatedBy,
'isDeleted': isDeleted,
'deletedAt': JsonConverters.toJson(deletedAt,'DateTime',context!),
'deletedBy': deletedBy,
'departmentName': departmentName,
'createdByName': createdByName,
'approvedByName': approvedByName
};
getTypeName() => "ProcurementItem";
TypeContext? context = _ctx;
}
class UpdateProcurementItemRequest implements IConvertible
{
int? id;
int? equipmentId;
String? productName;
String? technicalSpec;
String? unit;
int? quantity;
String? purpose;
String? note;
UpdateProcurementItemRequest({this.id,this.equipmentId,this.productName,this.technicalSpec,this.unit,this.quantity,this.purpose,this.note});
UpdateProcurementItemRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
id = json['id'];
equipmentId = json['equipmentId'];
productName = json['productName'];
technicalSpec = json['technicalSpec'];
unit = json['unit'];
quantity = json['quantity'];
purpose = json['purpose'];
note = json['note'];
return this;
}
Map<String, dynamic> toJson() => {
'id': id,
'equipmentId': equipmentId,
'productName': productName,
'technicalSpec': technicalSpec,
'unit': unit,
'quantity': quantity,
'purpose': purpose,
'note': note
};
getTypeName() => "UpdateProcurementItemRequest";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'etc_api.vsmlab.vn', types: <String, TypeInfo> {
'ProcurementItem': TypeInfo(TypeOf.Class, create:() => ProcurementItem()),
'UpdateProcurementItemRequest': TypeInfo(TypeOf.Class, create:() => UpdateProcurementItemRequest()),
});
Dart UpdateProcurementItemRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
PUT /procurement/item/{Id} HTTP/1.1
Host: etc-api.vsmlab.vn
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<UpdateProcurementItemRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/tvpl.api.ServiceModel">
<EquipmentId>0</EquipmentId>
<Id>0</Id>
<Note>String</Note>
<ProductName>String</ProductName>
<Purpose>String</Purpose>
<Quantity>0</Quantity>
<TechnicalSpec>String</TechnicalSpec>
<Unit>String</Unit>
</UpdateProcurementItemRequest>
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: length <ProcurementItem xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/tvpl.data.Models"> <ApprovalNote>String</ApprovalNote> <ApprovalStatus>0</ApprovalStatus> <ApprovedAt>0001-01-01T00:00:00</ApprovedAt> <ApprovedBy>0</ApprovedBy> <ApprovedByName>String</ApprovedByName> <BatchId>0</BatchId> <CreatedAt>0001-01-01T00:00:00</CreatedAt> <CreatedBy>0</CreatedBy> <CreatedByName>String</CreatedByName> <DeletedAt>0001-01-01T00:00:00</DeletedAt> <DeletedBy>0</DeletedBy> <DepartmentId>0</DepartmentId> <DepartmentName>String</DepartmentName> <EquipmentId>0</EquipmentId> <Id>0</Id> <IsDeleted>false</IsDeleted> <Note>String</Note> <ProductName>String</ProductName> <Purpose>String</Purpose> <Quantity>0</Quantity> <TechnicalSpec>String</TechnicalSpec> <Unit>String</Unit> <UpdatedAt>0001-01-01T00:00:00</UpdatedAt> <UpdatedBy>0</UpdatedBy> </ProcurementItem>