Javascript: fix the constructFromObject issue

Closes #1721
Also fixed indentations in models
This commit is contained in:
xhh 2015-12-17 21:29:05 +08:00
parent a58f755a6a
commit 1b0294dac0
6 changed files with 288 additions and 270 deletions

View File

@ -12,33 +12,36 @@ if (typeof module === 'object' && module.exports) {
//export module
if ( typeof define === "function" && define.amd ) {
define('{{classname}}', ['jquery'{{#vars}}{{^isPrimitiveType}}{{^-last}}, {{/-last}}'{{datatypeWithEnum}}'{{/isPrimitiveType}}{{/vars}}],
function(${{#vars}}{{^isPrimitiveType}}{{^-last}}, {{/-last}}{{datatypeWithEnum}}{{/isPrimitiveType}}{{/vars}}) {
return {{classname}};
});
define('{{classname}}', ['jquery'{{#vars}}{{^isPrimitiveType}}{{^-last}}, {{/-last}}'{{datatypeWithEnum}}'{{/isPrimitiveType}}{{/vars}}],
function(${{#vars}}{{^isPrimitiveType}}{{^-last}}, {{/-last}}{{datatypeWithEnum}}{{/isPrimitiveType}}{{/vars}}) {
return {{classname}};
});
}
{{#description}}/**
* {{description}}
**/{{/description}}
var {{classname}} = function {{classname}}({{#mandatory}}{{this}}{{^-last}}, {{/-last}}{{/mandatory}}) { {{#parent}}/* extends {{{parent}}}*/{{/parent}}
var self = this;
{{#vars}}
/**{{#description}}
* {{{description}}}{{/description}}
* datatype: {{{datatypeWithEnum}}}{{#required}}
* required{{/required}}{{#minimum}}
* minimum: {{minimum}}{{/minimum}}{{#maximum}}
* maximum: {{maximum}}{{/maximum}}
**/
self.{{name}} = {{#required}}{{name}}{{/required}}{{^required}}{{{defaultValue}}}{{/required}};
{{/vars}}
var self = this;
{{#vars}}
/**{{#description}}
* {{{description}}}{{/description}}
* datatype: {{{datatypeWithEnum}}}{{#required}}
* required{{/required}}{{#minimum}}
* minimum: {{minimum}}{{/minimum}}{{#maximum}}
* maximum: {{maximum}}{{/maximum}}
**/
self.{{name}} = {{#required}}{{name}}{{/required}}{{^required}}{{{defaultValue}}}{{/required}};
{{/vars}}
self.constructFromObject = function(data) {
{{#vars}}
self.{{name}}{{{defaultValueWithParam}}}
{{/vars}}
}
self.constructFromObject = function(data) {
if (!data) {
return;
}
{{#vars}}
self.{{name}}{{{defaultValueWithParam}}}
{{/vars}}
}
{{#vars}}
/**{{#description}}
@ -61,7 +64,7 @@ var {{classname}} = function {{classname}}({{#mandatory}}{{this}}{{^-last}}, {{/
{{/vars}}
self.toJson = function () {
return JSON.stringify(self);
return JSON.stringify(self);
}
}

View File

@ -9,34 +9,37 @@ if (typeof module === 'object' && module.exports) {
//export module
if ( typeof define === "function" && define.amd ) {
define('Category', ['jquery'],
function($) {
return Category;
});
define('Category', ['jquery'],
function($) {
return Category;
});
}
var Category = function Category() {
var self = this;
var self = this;
/**
* datatype: Integer
**/
self.id = null;
/**
* datatype: Integer
**/
self.id = null;
/**
* datatype: String
**/
self.name = null;
/**
* datatype: String
**/
self.name = null;
self.constructFromObject = function(data) {
self.constructFromObject = function(data) {
if (!data) {
return;
}
self.id = data.id;
self.id = data.id;
self.name = data.name;
self.name = data.name;
}
}
/**
@ -69,7 +72,7 @@ var Category = function Category() {
self.toJson = function () {
return JSON.stringify(self);
return JSON.stringify(self);
}
}

View File

@ -37,63 +37,66 @@ var StatusEnum = function StatusEnum() {
//export module
if ( typeof define === "function" && define.amd ) {
define('Order', ['jquery'],
function($) {
return Order;
});
define('Order', ['jquery'],
function($) {
return Order;
});
}
var Order = function Order() {
var self = this;
var self = this;
/**
* datatype: Integer
**/
self.id = null;
/**
* datatype: Integer
**/
self.id = null;
/**
* datatype: Integer
**/
self.petId = null;
/**
* datatype: Integer
**/
self.petId = null;
/**
* datatype: Integer
**/
self.quantity = null;
/**
* datatype: Integer
**/
self.quantity = null;
/**
* datatype: Date
**/
self.shipDate = null;
/**
* datatype: Date
**/
self.shipDate = null;
/**
* Order Status
* datatype: StatusEnum
**/
self.status = null;
/**
* Order Status
* datatype: StatusEnum
**/
self.status = null;
/**
* datatype: Boolean
**/
self.complete = null;
/**
* datatype: Boolean
**/
self.complete = null;
self.constructFromObject = function(data) {
self.constructFromObject = function(data) {
if (!data) {
return;
}
self.id = data.id;
self.id = data.id;
self.petId = data.petId;
self.petId = data.petId;
self.quantity = data.quantity;
self.quantity = data.quantity;
self.shipDate = data.shipDate;
self.shipDate = data.shipDate;
self.status = data.status;
self.status = data.status;
self.complete = data.complete;
self.complete = data.complete;
}
}
/**
@ -184,7 +187,7 @@ var Order = function Order() {
self.toJson = function () {
return JSON.stringify(self);
return JSON.stringify(self);
}
}

View File

@ -39,65 +39,68 @@ var StatusEnum = function StatusEnum() {
//export module
if ( typeof define === "function" && define.amd ) {
define('Pet', ['jquery', 'Category', 'Array'],
function($, Category, Array) {
return Pet;
});
define('Pet', ['jquery', 'Category', 'Array'],
function($, Category, Array) {
return Pet;
});
}
var Pet = function Pet(photoUrls, name) {
var self = this;
var self = this;
/**
* datatype: Integer
**/
self.id = null;
/**
* datatype: Integer
**/
self.id = null;
/**
* datatype: Category
**/
self.category = new Category();
/**
* datatype: Category
**/
self.category = new Category();
/**
* datatype: String
* required
**/
self.name = name;
/**
* datatype: String
* required
**/
self.name = name;
/**
* datatype: Array
* required
**/
self.photoUrls = photoUrls;
/**
* datatype: Array
* required
**/
self.photoUrls = photoUrls;
/**
* datatype: Array
**/
self.tags = [];
/**
* datatype: Array
**/
self.tags = [];
/**
* pet status in the store
* datatype: StatusEnum
**/
self.status = null;
/**
* pet status in the store
* datatype: StatusEnum
**/
self.status = null;
self.constructFromObject = function(data) {
self.constructFromObject = function(data) {
if (!data) {
return;
}
self.id = data.id;
self.id = data.id;
self.category.constructFromObject(data.category);
self.category.constructFromObject(data.category);
self.name = data.name;
self.name = data.name;
self.photoUrls = new Array();
self.photoUrls = new Array();
self.tags = new Array();
self.tags = new Array();
self.status = data.status;
self.status = data.status;
}
}
/**
@ -188,7 +191,7 @@ var Pet = function Pet(photoUrls, name) {
self.toJson = function () {
return JSON.stringify(self);
return JSON.stringify(self);
}
}

View File

@ -9,34 +9,37 @@ if (typeof module === 'object' && module.exports) {
//export module
if ( typeof define === "function" && define.amd ) {
define('Tag', ['jquery'],
function($) {
return Tag;
});
define('Tag', ['jquery'],
function($) {
return Tag;
});
}
var Tag = function Tag() {
var self = this;
var self = this;
/**
* datatype: Integer
**/
self.id = null;
/**
* datatype: Integer
**/
self.id = null;
/**
* datatype: String
**/
self.name = null;
/**
* datatype: String
**/
self.name = null;
self.constructFromObject = function(data) {
self.constructFromObject = function(data) {
if (!data) {
return;
}
self.id = data.id;
self.id = data.id;
self.name = data.name;
self.name = data.name;
}
}
/**
@ -69,7 +72,7 @@ var Tag = function Tag() {
self.toJson = function () {
return JSON.stringify(self);
return JSON.stringify(self);
}
}

View File

@ -9,77 +9,80 @@ if (typeof module === 'object' && module.exports) {
//export module
if ( typeof define === "function" && define.amd ) {
define('User', ['jquery'],
function($) {
return User;
});
define('User', ['jquery'],
function($) {
return User;
});
}
var User = function User() {
var self = this;
var self = this;
/**
* datatype: Integer
**/
self.id = null;
/**
* datatype: Integer
**/
self.id = null;
/**
* datatype: String
**/
self.username = null;
/**
* datatype: String
**/
self.username = null;
/**
* datatype: String
**/
self.firstName = null;
/**
* datatype: String
**/
self.firstName = null;
/**
* datatype: String
**/
self.lastName = null;
/**
* datatype: String
**/
self.lastName = null;
/**
* datatype: String
**/
self.email = null;
/**
* datatype: String
**/
self.email = null;
/**
* datatype: String
**/
self.password = null;
/**
* datatype: String
**/
self.password = null;
/**
* datatype: String
**/
self.phone = null;
/**
* datatype: String
**/
self.phone = null;
/**
* User Status
* datatype: Integer
**/
self.userStatus = null;
/**
* User Status
* datatype: Integer
**/
self.userStatus = null;
self.constructFromObject = function(data) {
self.constructFromObject = function(data) {
if (!data) {
return;
}
self.id = data.id;
self.id = data.id;
self.username = data.username;
self.username = data.username;
self.firstName = data.firstName;
self.firstName = data.firstName;
self.lastName = data.lastName;
self.lastName = data.lastName;
self.email = data.email;
self.email = data.email;
self.password = data.password;
self.password = data.password;
self.phone = data.phone;
self.phone = data.phone;
self.userStatus = data.userStatus;
self.userStatus = data.userStatus;
}
}
/**
@ -198,7 +201,7 @@ var User = function User() {
self.toJson = function () {
return JSON.stringify(self);
return JSON.stringify(self);
}
}