Merge branch 'test' of https://gitea.verdnatura.es/verdnatura/salix into test
gitea/salix/pipeline/head This commit looks good Details

This commit is contained in:
Juan Ferrer 2021-09-27 14:42:26 +02:00
commit 6c391bb1cc
599 changed files with 21527 additions and 11611 deletions

8
Jenkinsfile vendored
View File

@ -40,7 +40,7 @@ pipeline {
NODE_ENV = "" NODE_ENV = ""
} }
steps { steps {
nodejs('node-v12') { nodejs('node-v14') {
sh 'npm install --no-audit --prefer-offline' sh 'npm install --no-audit --prefer-offline'
sh 'gulp install --ci' sh 'gulp install --ci'
} }
@ -57,14 +57,14 @@ pipeline {
parallel { parallel {
stage('Frontend') { stage('Frontend') {
steps { steps {
nodejs('node-v12') { nodejs('node-v14') {
sh 'jest --ci --reporters=default --reporters=jest-junit --maxWorkers=2' sh 'jest --ci --reporters=default --reporters=jest-junit --maxWorkers=2'
} }
} }
} }
// stage('Backend') { // stage('Backend') {
// steps { // steps {
// nodejs('node-v12') { // nodejs('node-v14') {
// sh 'gulp launchBackTest --ci' // sh 'gulp launchBackTest --ci'
// } // }
// } // }
@ -80,7 +80,7 @@ pipeline {
CREDENTIALS = credentials('docker-registry') CREDENTIALS = credentials('docker-registry')
} }
steps { steps {
nodejs('node-v12') { nodejs('node-v14') {
sh 'gulp build' sh 'gulp build'
} }

View File

@ -6,7 +6,7 @@ describe('Chat sendCheckingPresence()', () => {
const ctx = {req: {accessToken: {userId: 1}}}; const ctx = {req: {accessToken: {userId: 1}}};
const chatModel = app.models.Chat; const chatModel = app.models.Chat;
const departmentId = 23; const departmentId = 23;
const workerId = 107; const workerId = 1107;
it(`should call send() method with the worker name if he's currently working then return a response`, async() => { it(`should call send() method with the worker name if he's currently working then return a response`, async() => {
spyOn(chatModel, 'send').and.callThrough(); spyOn(chatModel, 'send').and.callThrough();

View File

@ -3,7 +3,7 @@ module.exports = Self => {
description: 'Get pending collections from a worker', description: 'Get pending collections from a worker',
accessType: 'READ', accessType: 'READ',
returns: { returns: {
type: 'Object', type: 'object',
root: true root: true
}, },
http: { http: {

View File

@ -1,9 +1,9 @@
const app = require('vn-loopback/server/server'); const models = require('vn-loopback/server/server').models;
describe('getCollection()', () => { describe('ticket getCollection()', () => {
it('return list of collection', async() => { it('should return a list of collections', async() => {
let ctx = {req: {accessToken: {userId: 106}}}; let ctx = {req: {accessToken: {userId: 1106}}};
let response = await app.models.Collection.getCollection(ctx); let response = await models.Collection.getCollection(ctx);
expect(response.length).toBeGreaterThan(0); expect(response.length).toBeGreaterThan(0);
expect(response[0].collectionFk).toEqual(1); expect(response[0].collectionFk).toEqual(1);

View File

@ -2,10 +2,10 @@ const app = require('vn-loopback/server/server');
describe('newCollection()', () => { describe('newCollection()', () => {
it('return a new collection', async() => { it('return a new collection', async() => {
let ctx = {req: {accessToken: {userId: 106}}}; let ctx = {req: {accessToken: {userId: 1106}}};
let response = await app.models.Collection.newCollection(ctx, 1, 1, 1); let response = await app.models.Collection.newCollection(ctx, 1, 1, 1);
expect(response.length).toBeGreaterThan(0); expect(response.length).toBeGreaterThan(0);
expect(response[0].ticketFk).toEqual(1); expect(response[0].ticketFk).toEqual(2);
}); });
}); });

View File

@ -3,7 +3,7 @@ const app = require('vn-loopback/server/server');
describe('updateCollectionSale()', () => { describe('updateCollectionSale()', () => {
it('should return a new collection', async() => { it('should return a new collection', async() => {
const sectorOneWarehouseID = 1; const sectorOneWarehouseID = 1;
let ctx = {req: {accessToken: {userId: 106}}}; let ctx = {req: {accessToken: {userId: 1106}}};
ctx.args = { ctx.args = {
sale: 1, sale: 1,
originalQuantity: 5, originalQuantity: 5,

View File

@ -21,8 +21,9 @@ module.exports = Self => {
}); });
Self.removeFile = async(ctx, id, options) => { Self.removeFile = async(ctx, id, options) => {
const models = Self.app.models;
let tx; let tx;
let myOptions = {}; const myOptions = {};
if (typeof options == 'object') if (typeof options == 'object')
Object.assign(myOptions, options); Object.assign(myOptions, options);
@ -33,7 +34,6 @@ module.exports = Self => {
} }
try { try {
const models = Self.app.models;
const dms = await models.Dms.findById(id, null, myOptions); const dms = await models.Dms.findById(id, null, myOptions);
const trashDmsType = await models.DmsType.findOne({ const trashDmsType = await models.DmsType.findOne({
where: {code: 'trash'} where: {code: 'trash'}

View File

@ -4,7 +4,7 @@ describe('dms downloadFile()', () => {
let dmsId = 1; let dmsId = 1;
it('should return a response for an employee with text content-type', async() => { it('should return a response for an employee with text content-type', async() => {
let workerId = 107; let workerId = 1107;
let ctx = {req: {accessToken: {userId: workerId}}}; let ctx = {req: {accessToken: {userId: workerId}}};
const result = await app.models.Dms.downloadFile(ctx, dmsId); const result = await app.models.Dms.downloadFile(ctx, dmsId);
@ -12,7 +12,7 @@ describe('dms downloadFile()', () => {
}); });
it('should return an error for a user without enough privileges', async() => { it('should return an error for a user without enough privileges', async() => {
let clientId = 101; let clientId = 1101;
let ctx = {req: {accessToken: {userId: clientId}}}; let ctx = {req: {accessToken: {userId: clientId}}};
let error; let error;

View File

@ -4,7 +4,7 @@ describe('dms removeFile()', () => {
let dmsId = 1; let dmsId = 1;
it(`should return an error for a user without enough privileges`, async() => { it(`should return an error for a user without enough privileges`, async() => {
let clientId = 101; let clientId = 1101;
let ctx = {req: {accessToken: {userId: clientId}}}; let ctx = {req: {accessToken: {userId: clientId}}};
let error; let error;

View File

@ -2,7 +2,7 @@ const app = require('vn-loopback/server/server');
describe('dms updateFile()', () => { describe('dms updateFile()', () => {
it(`should return an error for a user without enough privileges`, async() => { it(`should return an error for a user without enough privileges`, async() => {
let clientId = 101; let clientId = 1101;
let companyId = 442; let companyId = 442;
let warehouseId = 1; let warehouseId = 1;
let dmsTypeId = 14; let dmsTypeId = 14;

View File

@ -2,7 +2,7 @@ const app = require('vn-loopback/server/server');
describe('dms uploadFile()', () => { describe('dms uploadFile()', () => {
it(`should return an error for a user without enough privileges`, async() => { it(`should return an error for a user without enough privileges`, async() => {
let clientId = 101; let clientId = 1101;
let ticketDmsTypeId = 14; let ticketDmsTypeId = 14;
let ctx = {req: {accessToken: {userId: clientId}}, args: {dmsTypeId: ticketDmsTypeId}}; let ctx = {req: {accessToken: {userId: clientId}}, args: {dmsTypeId: ticketDmsTypeId}};

View File

@ -15,7 +15,7 @@ describe('image download()', () => {
}); });
it(`should return false if the user doesn't have image`, async() => { it(`should return false if the user doesn't have image`, async() => {
const userId = 110; const userId = 1110;
const image = await app.models.Image.download(ctx, collection, size, userId); const image = await app.models.Image.download(ctx, collection, size, userId);
expect(image).toBeFalse(); expect(image).toBeFalse();

View File

@ -3,7 +3,7 @@ const app = require('vn-loopback/server/server');
describe('image upload()', () => { describe('image upload()', () => {
describe('as buyer', () => { describe('as buyer', () => {
const buyerId = 35; const buyerId = 35;
const workerId = 106; const workerId = 1106;
const itemId = 4; const itemId = 4;
it('should try to upload a file for the collection "catalog" and throw a privileges error', async() => { it('should try to upload a file for the collection "catalog" and throw a privileges error', async() => {
@ -45,7 +45,7 @@ describe('image upload()', () => {
describe('as marketing', () => { describe('as marketing', () => {
const marketingId = 51; const marketingId = 51;
const workerId = 106; const workerId = 1106;
const itemId = 4; const itemId = 4;
it('should be able to call to the TempContainer upload method for the collection "user"', async() => { it('should be able to call to the TempContainer upload method for the collection "user"', async() => {
@ -87,7 +87,7 @@ describe('image upload()', () => {
describe('as hhrr', () => { describe('as hhrr', () => {
const hhrrId = 37; const hhrrId = 37;
const workerId = 106; const workerId = 1106;
const itemId = 4; const itemId = 4;
it('should upload a file for the collection "user" and call to the TempContainer upload method', async() => { it('should upload a file for the collection "user" and call to the TempContainer upload method', async() => {

View File

@ -12,18 +12,22 @@ module.exports = function(Self) {
} }
}); });
Self.getUserConfig = async ctx => { Self.getUserConfig = async(ctx, options) => {
const models = Self.app.models; const models = Self.app.models;
const myOptions = {};
if (typeof options == 'object')
Object.assign(myOptions, options);
let userConfig = await models.UserConfig.findOne({ let userConfig = await models.UserConfig.findOne({
where: {userFk: ctx.req.accessToken.userId} where: {userFk: ctx.req.accessToken.userId}
}); }, myOptions);
const companyFilter = {where: {code: 'VNL'}}; const companyFilter = {where: {code: 'VNL'}};
const company = await models.Company.findOne(companyFilter); const company = await models.Company.findOne(companyFilter, myOptions);
const warehouseFilter = {where: {code: 'ALG'}}; const warehouseFilter = {where: {code: 'ALG'}};
const warehouse = await models.Warehouse.findOne(warehouseFilter); const warehouse = await models.Warehouse.findOne(warehouseFilter, myOptions);
if (!userConfig) { if (!userConfig) {
let newConfig = { let newConfig = {
@ -32,7 +36,7 @@ module.exports = function(Self) {
userFk: ctx.req.accessToken.userId userFk: ctx.req.accessToken.userId
}; };
userConfig = await models.UserConfig.create(newConfig); userConfig = await models.UserConfig.create(newConfig, myOptions);
} }
return userConfig; return userConfig;
}; };

View File

@ -1,10 +1,21 @@
const app = require('vn-loopback/server/server'); const models = require('vn-loopback/server/server').models;
describe('userConfig getUserConfig()', () => { describe('userConfig getUserConfig()', () => {
it(`should return the configuration data of a given user`, async() => { it(`should return the configuration data of a given user`, async() => {
const result = await app.models.UserConfig.getUserConfig({req: {accessToken: {userId: 9}}}); const tx = await models.Item.beginTransaction({});
const options = {transaction: tx};
try {
const ctx = {req: {accessToken: {userId: 9}}};
const result = await models.UserConfig.getUserConfig(ctx, options);
expect(result.warehouseFk).toEqual(1); expect(result.warehouseFk).toEqual(1);
expect(result.companyFk).toEqual(442); expect(result.companyFk).toEqual(442);
await tx.rollback();
} catch (e) {
await tx.rollback();
throw e;
}
}); });
}); });

View File

@ -65,6 +65,9 @@
"Province": { "Province": {
"dataSource": "vn" "dataSource": "vn"
}, },
"Autonomy": {
"dataSource": "vn"
},
"Payment": { "Payment": {
"dataSource": "vn" "dataSource": "vn"
}, },

View File

@ -80,13 +80,15 @@
"principalType": "ROLE", "principalType": "ROLE",
"principalId": "$everyone", "principalId": "$everyone",
"permission": "ALLOW" "permission": "ALLOW"
}, { },
{
"property": "logout", "property": "logout",
"accessType": "EXECUTE", "accessType": "EXECUTE",
"principalType": "ROLE", "principalType": "ROLE",
"principalId": "$authenticated", "principalId": "$authenticated",
"permission": "ALLOW" "permission": "ALLOW"
}, { },
{
"property": "validateToken", "property": "validateToken",
"accessType": "EXECUTE", "accessType": "EXECUTE",
"principalType": "ROLE", "principalType": "ROLE",

43
back/models/autonomy.json Normal file
View File

@ -0,0 +1,43 @@
{
"name": "Autonomy",
"description": "Autonomies of every country",
"base": "VnModel",
"options": {
"mysql": {
"table": "autonomy"
}
},
"properties": {
"id": {
"type": "Number",
"id": true,
"description": "Identifier"
},
"name": {
"type": "string",
"required": true
}
},
"relations": {
"country": {
"type": "belongsTo",
"model": "Country",
"foreignKey": "countryFk"
}
},
"scopes": {
"location": {
"include": {
"relation": "country"
}
}
},
"acls": [
{
"accessType": "READ",
"principalType": "ROLE",
"principalId": "$everyone",
"permission": "ALLOW"
}
]
}

View File

@ -9,7 +9,7 @@
}, },
"properties": { "properties": {
"id": { "id": {
"type": "Number", "type": "number",
"id": true, "id": true,
"description": "Identifier" "description": "Identifier"
}, },
@ -24,6 +24,11 @@
"model": "Country", "model": "Country",
"foreignKey": "countryFk" "foreignKey": "countryFk"
}, },
"autonomy": {
"type": "belongsTo",
"model": "Autonomy",
"foreignKey": "autonomyFk"
},
"warehouse": { "warehouse": {
"type": "belongsTo", "type": "belongsTo",
"model": "Warehouse", "model": "Warehouse",

View File

@ -6,6 +6,9 @@
"table": "sage.TiposRetencion" "table": "sage.TiposRetencion"
} }
}, },
"log": {
"showField": "withholding"
},
"properties": { "properties": {
"id": { "id": {
"type": "Number", "type": "Number",

View File

@ -36,14 +36,14 @@ describe('Dms', () => {
describe('checkRole()', () => { describe('checkRole()', () => {
const dmsId = 1; const dmsId = 1;
it('should return a true for an employee with permission', async() => { it('should return a true for an employee with permission', async() => {
let ctx = {req: {accessToken: {userId: 107}}}; let ctx = {req: {accessToken: {userId: 1107}}};
const result = await Dms.checkRole(ctx, dmsId); const result = await Dms.checkRole(ctx, dmsId);
expect(result).toBeTruthy(); expect(result).toBeTruthy();
}); });
it('should return false for an employee without permission', async() => { it('should return false for an employee without permission', async() => {
let ctx = {req: {accessToken: {userId: 101}}}; let ctx = {req: {accessToken: {userId: 1101}}};
const result = await Dms.checkRole(ctx, dmsId); const result = await Dms.checkRole(ctx, dmsId);
expect(result).toBeFalsy(); expect(result).toBeFalsy();

View File

@ -1,4 +0,0 @@
INSERT INTO salix.ACL (model, property, accessType, permission, principalType, principalId)
VALUES
('SupplierAddress', '*', '*', 'ALLOW', 'ROLE', 'employee'),
('SalesMonitor', '*', '*', 'ALLOW', 'ROLE', 'employee');

View File

@ -1 +0,0 @@
INSERT INTO salix.module (code) VALUES ('Monitors');

View File

@ -1,3 +0,0 @@
UPDATE salix.ACL
SET principalId = "salesAssistant"
WHERE model = 'Client' AND property = 'createReceipt';

View File

@ -1,18 +0,0 @@
CREATE TABLE `vn`.`supplierAddress`
(
id INT NULL AUTO_INCREMENT,
supplierFk INT NULL,
nickname VARCHAR(40) NULL,
street VARCHAR(255) NULL,
provinceFk SMALLINT(6) UNSIGNED NULL,
postalCode VARCHAR(10) NULL,
city VARCHAR(50) NULL,
phone VARCHAR(15) NULL,
mobile VARCHAR(15) NULL,
CONSTRAINT supplierAddress_pk
PRIMARY KEY (id),
CONSTRAINT supplierAddress_province_fk
FOREIGN KEY (provinceFk) REFERENCES province (id)
ON UPDATE CASCADE
);

View File

@ -1,30 +0,0 @@
DROP PROCEDURE IF EXISTS `vn`.`sale_getProblemsByTicket`;
DELIMITER $$
$$
CREATE
DEFINER = root@`%` PROCEDURE `vn`.`sale_getProblemsByTicket`(IN vTicketFk INT, IN vIsTodayRelative TINYINT(1))
BEGIN
/**
* Calcula los problemas de cada venta
* para un conjunto de tickets.
*
* @return Problems result
*/
DROP TEMPORARY TABLE IF EXISTS tmp.sale_getProblems;
CREATE TEMPORARY TABLE tmp.sale_getProblems
(INDEX (ticketFk))
ENGINE = MEMORY
SELECT t.id ticketFk, t.clientFk, t.warehouseFk, t.shipped
FROM ticket t
WHERE t.id = vTicketFk;
CALL sale_getProblems(vIsTodayRelative);
SELECT * FROM tmp.sale_problems;
DROP TEMPORARY TABLE
tmp.sale_getProblems,
tmp.sale_problems;
END;;$$
DELIMITER ;

View File

@ -1,187 +0,0 @@
DROP PROCEDURE IF EXISTS `vn`.`ticketGetProblems`;
DELIMITER $$
$$
CREATE
DEFINER = root@`%` PROCEDURE `vn`.`ticketGetProblems`(IN vIsTodayRelative TINYINT(1))
BEGIN
/**
* @deprecated Use ticket_getProblems() instead
*
*/
DECLARE vWarehouse INT;
DECLARE vDate DATE;
DECLARE vAvailableCache INT;
DECLARE vDone INT DEFAULT 0;
DECLARE vComponentCount INT;
DECLARE vCursor CURSOR FOR
SELECT DISTINCT tt.warehouseFk, IF(vIsTodayRelative, CURDATE(), date(tt.shipped))
FROM tmp.ticketGetProblems tt
WHERE DATE(tt.shipped) BETWEEN CURDATE()
AND TIMESTAMPADD(DAY, IF(vIsTodayRelative, 9.9, 1.9), CURDATE());
DECLARE CONTINUE HANDLER FOR NOT FOUND SET vDone = 1;
DROP TEMPORARY TABLE IF EXISTS tmp.ticketProblems;
CREATE TEMPORARY TABLE tmp.ticketProblems (
ticketFk INT(11) PRIMARY KEY,
isFreezed INTEGER(1) DEFAULT 0,
risk DECIMAL(10,2) DEFAULT 0,
hasTicketRequest INTEGER(1) DEFAULT 0,
isAvailable INTEGER(1) DEFAULT 1,
itemShortage VARCHAR(250),
isTaxDataChecked INTEGER(1) DEFAULT 1,
itemDelay VARCHAR(250),
componentLack INTEGER(1)
) ENGINE = MEMORY;
DROP TEMPORARY TABLE IF EXISTS tmp.ticketList;
CREATE TEMPORARY TABLE tmp.ticketList
(PRIMARY KEY (ticketFk))
ENGINE = MEMORY
SELECT tp.ticketFk, c.id clientFk
FROM tmp.ticketGetProblems tp
JOIN vn.client c ON c.id = tp.clientFk;
SELECT COUNT(*) INTO vComponentCount
FROM vn.component c
WHERE c.isRequired;
INSERT INTO tmp.ticketProblems(ticketFk, componentLack)
SELECT tl.ticketFk, (COUNT(DISTINCT s.id) * vComponentCount > COUNT(c.id))
FROM tmp.ticketList tl
JOIN vn.sale s ON s.ticketFk = tl.ticketFk
LEFT JOIN vn.saleComponent sc ON sc.saleFk = s.id
LEFT JOIN vn.component c ON c.id = sc.componentFk AND c.isRequired
GROUP BY tl.ticketFk;
INSERT INTO tmp.ticketProblems(ticketFk, isFreezed)
SELECT DISTINCT tl.ticketFk, 1
FROM tmp.ticketList tl
JOIN vn.client c ON c.id = tl.clientFk
WHERE c.isFreezed
ON DUPLICATE KEY UPDATE
isFreezed = c.isFreezed;
DROP TEMPORARY TABLE IF EXISTS tmp.clientGetDebt;
CREATE TEMPORARY TABLE tmp.clientGetDebt
(PRIMARY KEY (clientFk))
ENGINE = MEMORY
SELECT DISTINCT clientFk
FROM tmp.ticketList;
CALL clientGetDebt(CURDATE());
INSERT INTO tmp.ticketProblems(ticketFk, risk)
SELECT DISTINCT tl.ticketFk, r.risk
FROM tmp.ticketList tl
JOIN vn.ticket t ON t.id = tl.ticketFk
JOIN vn.agencyMode a ON t.agencyModeFk = a.id
JOIN tmp.risk r ON r.clientFk = t.clientFk
JOIN vn.client c ON c.id = t.clientFk
JOIN vn.clientConfig cc
WHERE r.risk - cc.riskTolerance > c.credit + 10
AND a.isRiskFree = FALSE
ON DUPLICATE KEY UPDATE
risk = r.risk;
INSERT INTO tmp.ticketProblems(ticketFk, hasTicketRequest)
SELECT DISTINCT tl.ticketFk, 1
FROM tmp.ticketList tl
JOIN vn.ticketRequest tr ON tr.ticketFk = tl.ticketFk
WHERE tr.isOK IS NULL AND tr.saleFk IS NOT NULL
ON DUPLICATE KEY UPDATE
hasTicketRequest = 1;
OPEN vCursor;
WHILE NOT vDone
DO
FETCH vCursor INTO vWarehouse, vDate;
CALL cache.available_refresh(vAvailableCache, FALSE, vWarehouse, vDate);
INSERT INTO tmp.ticketProblems(ticketFk, isAvailable)
SELECT tl.ticketFk, 0
FROM tmp.ticketList tl
JOIN vn.ticket t ON t.id = tl.ticketFk
JOIN vn.sale s ON s.ticketFk = t.id
JOIN vn.item i ON i.id = s.itemFk
JOIN vn.itemType it on it.id = i.typeFk
LEFT JOIN cache.available av ON av.item_id = i.id
AND av.calc_id = vAvailableCache
WHERE date(t.shipped) = vDate
AND it.categoryFk != 6
AND IFNULL(av.available, 0) < 0
AND s.isPicked = FALSE
AND NOT i.generic
AND vWarehouse = t.warehouseFk
GROUP BY tl.ticketFk
ON DUPLICATE KEY UPDATE
isAvailable = 0;
INSERT INTO tmp.ticketProblems(ticketFk, itemShortage)
SELECT ticketFk, problem
FROM (
SELECT tl.ticketFk, CONCAT('F: ',GROUP_CONCAT(i.id, ' ', i.longName, ' ')) problem
FROM tmp.ticketList tl
JOIN vn.ticket t ON t.id = tl.ticketFk
JOIN vn.sale s ON s.ticketFk = t.id
JOIN vn.item i ON i.id = s.itemFk
JOIN vn.itemType it on it.id = i.typeFk
LEFT JOIN vn.itemShelvingStock_byWarehouse issw ON issw.itemFk = i.id AND issw.warehouseFk = t.warehouseFk
LEFT JOIN cache.available av ON av.item_id = i.id AND av.calc_id = vAvailableCache
WHERE IFNULL(av.available, 0) < 0
AND s.quantity > IFNULL(issw.visible, 0)
AND s.quantity > 0
AND s.isPicked = FALSE
AND s.reserved = FALSE
AND it.categoryFk != 6
AND IF(vIsTodayRelative, TRUE, date(t.shipped) = vDate)
AND NOT i.generic
AND CURDATE() = vDate
AND t.warehouseFk = vWarehouse
GROUP BY tl.ticketFk) sub
ON DUPLICATE KEY UPDATE
itemShortage = sub.problem;
INSERT INTO tmp.ticketProblems(ticketFk, itemDelay)
SELECT ticketFk, problem
FROM (
SELECT tl.ticketFk, GROUP_CONCAT('I: ',i.id, ' ', i.longName, ' ') problem
FROM tmp.ticketList tl
JOIN vn.ticket t ON t.id = tl.ticketFk
JOIN vn.sale s ON s.ticketFk = t.id
JOIN vn.item i ON i.id = s.itemFk
JOIN vn.itemType it on it.id = i.typeFk
LEFT JOIN vn.itemShelvingStock_byWarehouse issw ON issw.itemFk = i.id AND issw.warehouseFk = t.warehouseFk
WHERE s.quantity > IFNULL(issw.visible, 0)
AND s.quantity > 0
AND s.isPicked = FALSE
AND s.reserved = FALSE
AND it.categoryFk != 6
AND IF(vIsTodayRelative, TRUE, date(t.shipped) = vDate)
AND NOT i.generic
AND CURDATE() = vDate
AND t.warehouseFk = vWarehouse
GROUP BY tl.ticketFk) sub
ON DUPLICATE KEY UPDATE
itemDelay = sub.problem;
END WHILE;
CLOSE vCursor;
INSERT INTO tmp.ticketProblems(ticketFk, isTaxDataChecked)
SELECT DISTINCT tl.ticketFk, FALSE
FROM tmp.ticketList tl
JOIN vn.client c ON c.id = tl.clientFk
WHERE c.isTaxDataChecked= FALSE
ON DUPLICATE KEY UPDATE
isTaxDataChecked = FALSE;
DROP TEMPORARY TABLE
tmp.clientGetDebt,
tmp.ticketList;
END;;$$
DELIMITER ;

View File

@ -1,92 +0,0 @@
DROP PROCEDURE `vn`.`ticket_componentMakeUpdate`;
DELIMITER $$
$$
CREATE
DEFINER = root@`%` PROCEDURE `vn`.`ticket_componentMakeUpdate`(IN vTicketFk INT, IN vClientFk INT, IN vAgencyModeFk INT,
IN vAddressFk INT, IN vZoneFk INT, IN vWarehouseFk TINYINT,
IN vCompanyFk SMALLINT, IN vShipped DATETIME,
IN vLanded DATE, IN vIsDeleted TINYINT(1),
IN vHasToBeUnrouted TINYINT(1), IN vOption INT)
BEGIN
/**
* Modifica en el ticket los campos que se le pasan por parámetro
* y cambia sus componentes.
* Este procedimiento es transacionado en Salix
*
* @param vTicketFk Id del ticket a modificar
* @param vClientFk nuevo cliente
* @param vAgencyModeFk nueva agencia
* @param vAddressFk nuevo consignatario
* @param vZoneFk nueva zona
* @param vWarehouseFk nuevo almacen
* @param vCompanyFk nueva empresa
* @param vShipped nueva fecha del envio de mercancia
* @param vLanded nueva fecha de recepcion de mercancia
* @param vIsDeleted si se borra el ticket
* @param vHasToBeUnrouted si se le elimina la ruta al ticket
* @param vOption opcion para el case del proc ticketComponentUpdateSale
*/
DECLARE vPrice DECIMAL(10,2);
DECLARE vBonus DECIMAL(10,2);
CALL ticket_componentPreview (vTicketFk, vLanded, vAddressFk, vZoneFk, vWarehouseFk);
IF (SELECT addressFk FROM ticket WHERE id = vTicketFk) <> vAddressFk THEN
UPDATE ticket t
JOIN address a ON a.id = vAddressFk
SET t.nickname = a.nickname
WHERE t.id = vTicketFk;
END IF;
CALL zone_getShippedWarehouse(vlanded, vAddressFk, vAgencyModeFk);
SELECT zoneFk, price, bonus INTO vZoneFk, vPrice, vBonus
FROM tmp.zoneGetShipped
WHERE shipped BETWEEN DATE(vShipped) AND util.dayEnd(vShipped) AND warehouseFk = vWarehouseFk LIMIT 1;
UPDATE ticket t
SET
t.clientFk = vClientFk,
t.agencyModeFk = vAgencyModeFk,
t.addressFk = vAddressFk,
t.zoneFk = vZoneFk,
t.zonePrice = vPrice,
t.zoneBonus = vBonus,
t.warehouseFk = vWarehouseFk,
t.companyFk = vCompanyFk,
t.landed = vLanded,
t.shipped = vShipped,
t.isDeleted = vIsDeleted
WHERE
t.id = vTicketFk;
IF vHasToBeUnrouted THEN
UPDATE ticket t SET t.routeFk = NULL
WHERE t.id = vTicketFk;
END IF;
IF vOption <> 8 THEN
DROP TEMPORARY TABLE IF EXISTS tmp.sale;
CREATE TEMPORARY TABLE tmp.sale
(PRIMARY KEY (saleFk))
ENGINE = MEMORY
SELECT id AS saleFk, vWarehouseFk warehouseFk
FROM sale s WHERE s.ticketFk = vTicketFk;
DROP TEMPORARY TABLE IF EXISTS tmp.ticketComponent;
CREATE TEMPORARY TABLE tmp.ticketComponent
SELECT * FROM tmp.ticketComponentPreview;
CALL ticketComponentUpdateSale (vOption);
DROP TEMPORARY TABLE tmp.sale;
DROP TEMPORARY TABLE IF EXISTS tmp.ticketComponent;
END IF;
DROP TEMPORARY TABLE tmp.zoneGetShipped, tmp.ticketComponentPreview;
END;;$$
DELIMITER ;

View File

@ -1,4 +0,0 @@
ALTER TABLE `vn`.`warehouse`
ADD `code` VARCHAR(3) NULL AFTER name;
UPDATE `vn`.`warehouse` SET `code` = 'ALG' WHERE `id` = 60;

View File

@ -1,9 +0,0 @@
ALTER TABLE `vn`.`starredModule`
ADD `position` INT NOT NULL AFTER `moduleFk`;
SET @count:=0;
UPDATE `vn`.`starredModule` sm
JOIN (
SELECT sm.id, IF(@workerFk = sm.workerFk, @count:=@count+1, @count:=1) AS position, @workerFk:=sm.workerFk
FROM `vn`.`starredModule` sm ORDER BY workerFk, moduleFk ASC) AS smt ON smt.id = sm.id
SET sm.position = smt.position;

View File

@ -0,0 +1,15 @@
DELETE FROM `salix`.`ACL` WHERE id = 189;
DELETE FROM `salix`.`ACL` WHERE id = 188;
UPDATE `salix`.`ACL` tdms SET tdms.accessType = '*'
WHERE tdms.id = 165;
INSERT INTO `salix`.`ACL` (model, principalId, property, accessType)
VALUES
('InvoiceInTax','administrative', '*', '*'),
('InvoiceInLog','administrative', '*', 'READ');
INSERT INTO `salix`.`ACL` (model, property, accessType, permission, principalType, principalId)
VALUES
('InvoiceOut', 'createManualInvoice', 'WRITE', 'ALLOW', 'ROLE', 'invoicing'),
('InvoiceOut', 'globalInvoicing', 'WRITE', 'ALLOW', 'ROLE', 'invoicing');

View File

@ -0,0 +1,14 @@
create table `vn`.`itemMatchProperties`
(
itemFk int not null,
name varchar(80) not null,
producer varchar(80) not null,
size int not null,
constraint itemMatchProperties_pk
primary key (itemFk, name, producer, size),
constraint itemFk___fk
foreign key (itemFk) references item (id)
on update cascade on delete cascade
)
comment 'Propiedades para encontrar articulos equivalentes en verdnatura';

View File

@ -0,0 +1,21 @@
drop procedure `vn`.`invoiceFromClient`;
DELIMITER $$
$$
create
definer = root@`%` procedure `vn`.`invoiceFromClient`(IN vMaxTicketDate datetime, IN vClientFk INT, IN vCompanyFk INT)
BEGIN
DECLARE vMinTicketDate DATE DEFAULT TIMESTAMPADD(YEAR, -3, CURDATE());
SET vMaxTicketDate = util.dayend(vMaxTicketDate);
DROP TEMPORARY TABLE IF EXISTS `ticketToInvoice`;
CREATE TEMPORARY TABLE `ticketToInvoice`
(PRIMARY KEY (`id`))
ENGINE = MEMORY
SELECT id FROM ticket t
WHERE t.clientFk = vClientFk
AND t.refFk IS NULL
AND t.companyFk = vCompanyFk
AND (t.shipped BETWEEN vMinTicketDate AND vMaxTicketDate);
END;;$$
DELIMITER ;

View File

@ -0,0 +1,45 @@
drop procedure `vn`.`invoiceOut_newFromClient`;
DELIMITER $$
$$
create
definer = root@`%` procedure `vn`.`invoiceOut_newFromClient`(IN vClientFk int, IN vSerial char(2), IN vMaxShipped date,
IN vCompanyFk int, IN vTaxArea varchar(25),
IN vRef varchar(25), OUT vInvoiceId int)
BEGIN
/**
* Factura los tickets de un cliente hasta una fecha dada
* @param vClientFk Id del cliente a facturar
* @param vSerial Serie de factura
* @param vMaxShipped Fecha hasta la cual cogera tickets para facturar
* @param vCompanyFk Id de la empresa desde la que se factura
* @param vTaxArea Tipo de iva en relacion a la empresa y al cliente, NULL por defecto
* @param vRef Referencia de la factura en caso que se quiera forzar, NULL por defecto
* @return vInvoiceId factura
*/
DECLARE vIsRefEditable BOOLEAN;
IF vRef IS NOT NULL THEN
SELECT isRefEditable INTO vIsRefEditable
FROM invoiceOutSerial
WHERE code = vSerial;
IF NOT vIsRefEditable THEN
CALL util.throw('serial non editable');
END IF;
END IF;
CALL invoiceFromClient(vMaxShipped, vClientFk, vCompanyFk);
CALL invoiceOut_new(vSerial, CURDATE(), vTaxArea, vInvoiceId);
UPDATE invoiceOut
SET `ref` = vRef
WHERE id = vInvoiceId
AND vRef IS NOT NULL;
IF vSerial <> 'R' AND NOT ISNULL(vInvoiceId) AND vInvoiceId <> 0 THEN
CALL invoiceOutBooking(vInvoiceId);
END IF;
END;;$$
DELIMITER ;

View File

@ -0,0 +1,38 @@
drop procedure `vn`.`invoiceOut_newFromTicket`;
DELIMITER $$
$$
create
definer = root@`%` procedure `vn`.`invoiceOut_newFromTicket`(IN vTicketFk int, IN vSerial char(2), IN vTaxArea varchar(25),
IN vRef varchar(25), OUT vInvoiceId int)
BEGIN
/**
* Factura un ticket
* @param vTicketFk Id del ticket
* @param vSerial Serie de factura
* @param vTaxArea Area de la factura en caso de querer forzarlo,
* en la mayoria de los casos poner NULL
* @return vInvoiceId
*/
DECLARE vIsRefEditable BOOLEAN;
CALL invoiceFromTicket(vTicketFk);
CALL invoiceOut_new(vSerial, CURDATE(), vTaxArea, vInvoiceId);
IF vRef IS NOT NULL THEN
SELECT isRefEditable INTO vIsRefEditable
FROM invoiceOutSerial
WHERE code = vSerial;
IF NOT vIsRefEditable THEN
CALL util.throw('serial non editable');
END IF;
UPDATE invoiceOut
SET `ref` = vRef
WHERE id = vInvoiceId;
END IF;
IF vSerial <> 'R' AND NOT ISNULL(vInvoiceId) AND vInvoiceId <> 0 THEN
CALL invoiceOutBooking(vInvoiceId);
END IF;
END;;$$
DELIMITER ;

View File

@ -0,0 +1,7 @@
ALTER TABLE `vn`.`sample` ADD COLUMN
(`datepickerEnabled` TINYINT(1) NOT NULL DEFAULT 0);
ALTER TABLE `vn`.`sample` MODIFY code VARCHAR(25) charset utf8 NOT NULL;
INSERT INTO `vn`.`sample` (code, description, isVisible, hasCompany, hasPreview, datepickerEnabled)
VALUES ('client-debt-statement', 'Extracto del cliente', 1, 0, 1, 1);

View File

@ -0,0 +1,109 @@
drop procedure `vn`.`ticket_close`;
DELIMITER $$
$$
create
definer = root@`%` procedure `vn`.`ticket_close`()
BEGIN
/**
* Realiza el cierre de todos los
* tickets de la tabla tmp.ticket_close.
*
* @table tmp.ticket_close(ticketFk) Identificadores de los tickets a cerrar
*/
DECLARE vDone BOOL;
DECLARE vClientFk INT;
DECLARE vCurTicketFk INT;
DECLARE vIsTaxDataChecked BOOL;
DECLARE vCompanyFk INT;
DECLARE vShipped DATE;
DECLARE vNewInvoiceId INT;
DECLARE vHasDailyInvoice BOOL;
DECLARE vWithPackage BOOL;
DECLARE vHasToInvoice BOOL;
DECLARE cur CURSOR FOR
SELECT ticketFk FROM tmp.ticket_close;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET vDone = TRUE;
DECLARE EXIT HANDLER FOR SQLEXCEPTION BEGIN
RESIGNAL;
END;
OPEN cur;
proc: LOOP
SET vDone = FALSE;
FETCH cur INTO vCurTicketFk;
IF vDone THEN
LEAVE proc;
END IF;
-- Fetch ticket data
SELECT
c.id,
c.isTaxDataChecked,
t.companyFk,
t.shipped,
co.hasDailyInvoice,
w.isManaged,
c.hasToInvoice
INTO vClientFk,
vIsTaxDataChecked,
vCompanyFk,
vShipped,
vHasDailyInvoice,
vWithPackage,
vHasToInvoice
FROM ticket t
JOIN `client` c ON c.id = t.clientFk
JOIN province p ON p.id = c.provinceFk
JOIN country co ON co.id = p.countryFk
JOIN warehouse w ON w.id = t.warehouseFk
WHERE t.id = vCurTicketFk;
INSERT INTO ticketPackaging (ticketFk, packagingFk, quantity)
(SELECT vCurTicketFk, p.id, COUNT(*)
FROM expedition e
JOIN packaging p ON p.itemFk = e.itemFk
WHERE e.ticketFk = vCurTicketFk AND p.isPackageReturnable
AND vWithPackage
GROUP BY p.itemFk);
-- No retornables o no catalogados
INSERT INTO sale (itemFk, ticketFk, concept, quantity, price, isPriceFixed)
(SELECT e.itemFk, vCurTicketFk, i.name, COUNT(*) AS amount, getSpecialPrice(e.itemFk, vClientFk), 1
FROM expedition e
JOIN item i ON i.id = e.itemFk
LEFT JOIN packaging p ON p.itemFk = i.id
WHERE e.ticketFk = vCurTicketFk AND IFNULL(p.isPackageReturnable, 0) = 0
AND getSpecialPrice(e.itemFk, vClientFk) > 0
GROUP BY e.itemFk);
CALL vn.zonePromo_Make();
IF(vHasDailyInvoice) AND vHasToInvoice THEN
-- Facturacion rapida
CALL ticketTrackingAdd(vCurTicketFk, 'DELIVERED', NULL);
-- Facturar si está contabilizado
IF vIsTaxDataChecked THEN
CALL invoiceOut_newFromClient(
vClientFk,
(SELECT invoiceSerial(vClientFk, vCompanyFk, 'M')),
vShipped,
vCompanyFk,
NULL,
NULL,
vNewInvoiceId);
END IF;
ELSE
CALL ticketTrackingAdd(vCurTicketFk, (SELECT vn.getAlert3State(vCurTicketFk)), NULL);
END IF;
END LOOP;
CLOSE cur;
END;;$$
DELIMITER ;

View File

@ -0,0 +1,118 @@
drop procedure `vn`.`ticket_closeAll`;
DELIMITER $$
$$
create definer = root@`%` procedure `vn`.`ticket_closeAll__`()
BEGIN
/**
* Realiza el cierre de todos los
* tickets de la tabla tmp.ticketClosure.
*
* @param vTicketFk Id del ticket
*/
DECLARE vDone BOOL;
DECLARE vClientFk INT;
DECLARE vCurTicketFk INT;
DECLARE vIsTaxDataChecked BOOL;
DECLARE vCompanyFk INT;
DECLARE vShipped DATE;
DECLARE vNewInvoiceId INT;
DECLARE vHasDailyInvoice BOOL;
DECLARE vWithPackage BOOL;
DECLARE vHasToInvoice BOOL;
DECLARE cur CURSOR FOR
SELECT ticketFk FROM tmp.ticketClosure;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET vDone = TRUE;
DECLARE EXIT HANDLER FOR SQLEXCEPTION BEGIN
RESIGNAL;
END;
DROP TEMPORARY TABLE IF EXISTS tmp.ticketClosure2;
CREATE TEMPORARY TABLE tmp.ticketClosure2
SELECT ticketFk FROM tmp.ticketClosure;
INSERT INTO tmp.ticketClosure
SELECT id FROM stowaway s
JOIN tmp.ticketClosure2 tc ON s.shipFk = tc.ticketFk;
OPEN cur;
proc: LOOP
SET vDone = FALSE;
FETCH cur INTO vCurTicketFk;
IF vDone THEN
LEAVE proc;
END IF;
-- ticketClosure start
SELECT
c.id,
c.isTaxDataChecked,
t.companyFk,
t.shipped,
co.hasDailyInvoice,
w.isManaged,
c.hasToInvoice
INTO vClientFk,
vIsTaxDataChecked,
vCompanyFk,
vShipped,
vHasDailyInvoice,
vWithPackage,
vHasToInvoice
FROM ticket t
JOIN `client` c ON c.id = t.clientFk
JOIN province p ON p.id = c.provinceFk
JOIN country co ON co.id = p.countryFk
JOIN warehouse w ON w.id = t.warehouseFk
WHERE t.id = vCurTicketFk;
INSERT INTO ticketPackaging (ticketFk, packagingFk, quantity)
(SELECT vCurTicketFk, p.id, COUNT(*)
FROM expedition e
JOIN packaging p ON p.itemFk = e.itemFk
WHERE e.ticketFk = vCurTicketFk AND p.isPackageReturnable
AND vWithPackage
GROUP BY p.itemFk);
-- No retornables o no catalogados
INSERT INTO sale (itemFk, ticketFk, concept, quantity, price, isPriceFixed)
(SELECT e.itemFk, vCurTicketFk, i.name, COUNT(*) AS amount, getSpecialPrice(e.itemFk, vClientFk), 1
FROM expedition e
JOIN item i ON i.id = e.itemFk
LEFT JOIN packaging p ON p.itemFk = i.id
WHERE e.ticketFk = vCurTicketFk AND IFNULL(p.isPackageReturnable, 0) = 0
AND getSpecialPrice(e.itemFk, vClientFk) > 0
GROUP BY e.itemFk);
CALL vn.zonePromo_Make();
IF(vHasDailyInvoice) AND vHasToInvoice THEN
-- Facturacion rapida
CALL ticketTrackingAdd(vCurTicketFk, 'DELIVERED', NULL);
-- Facturar si está contabilizado
IF vIsTaxDataChecked THEN
CALL invoiceOut_newFromClient(
vClientFk,
(SELECT invoiceSerial(vClientFk, vCompanyFk, 'M')),
vShipped,
vCompanyFk,
NULL,
NULL,
vNewInvoiceId);
END IF;
ELSE
CALL ticketTrackingAdd(vCurTicketFk, (SELECT vn.getAlert3State(vCurTicketFk)), NULL);
END IF;
END LOOP;
CLOSE cur;
DROP TEMPORARY TABLE IF EXISTS tmp.ticketClosure;
END;;$$
DELIMITER ;

View File

@ -0,0 +1,34 @@
drop procedure `vn`.`ticket_closeByTicket`;
DELIMITER $$
$$
create
definer = root@`%` procedure `vn`.`ticket_closeByTicket`(IN vTicketFk int)
BEGIN
/**
* Inserta el ticket en la tabla temporal
* para ser cerrado.
*
* @param vTicketFk Id del ticket
*/
DROP TEMPORARY TABLE IF EXISTS tmp.ticket_close;
CREATE TEMPORARY TABLE tmp.ticket_close ENGINE = MEMORY (
SELECT
t.id AS ticketFk
FROM expedition e
INNER JOIN ticket t ON t.id = e.ticketFk
LEFT JOIN ticketState ts ON ts.ticketFk = t.id
JOIN alertLevel al ON al.id = ts.alertLevel
WHERE
al.code = 'PACKED'
AND t.id = vTicketFk
AND t.refFk IS NULL
GROUP BY e.ticketFk);
CALL ticket_close();
DROP TEMPORARY TABLE tmp.ticket_close;
END;;$$
DELIMITER ;

View File

@ -0,0 +1,2 @@
INSERT INTO `vn`.`sample` (`code`, `description`, `isVisible`, `hasCompany`, `hasPreview`)
VALUES ('credit-request', 'Solicitud de crédito', 1, 1, 1);

View File

@ -0,0 +1 @@
DROP TRIGGER vn.supplierAccount_AfterInsert;

View File

@ -0,0 +1,33 @@
DROP TRIGGER IF EXISTS vn.ticket_afterUpdate;
DELIMITER $$
$$
CREATE DEFINER=`root`@`%` TRIGGER vn.`ticket_afterUpdate`
AFTER UPDATE ON `ticket`
FOR EACH ROW
BEGIN
IF !(NEW.id <=> OLD.id)
OR !(NEW.warehouseFk <=> OLD.warehouseFk)
OR !(NEW.shipped <=> OLD.shipped) THEN
CALL stock.log_add('ticket', NEW.id, OLD.id);
END IF;
IF !(NEW.clientFk <=> OLD.clientFk)
OR !(NEW.addressFk <=> OLD.addressFk)
OR !(NEW.companyFk <=> OLD.companyFk) THEN
CALL ticket_requestRecalc(NEW.id);
END IF;
IF NEW.clientFk = 2067 AND !(NEW.clientFk <=> OLD.clientFk) THEN
-- Fallo que se insertan no se sabe como tickets en este cliente
INSERT INTO vn.mail SET
`sender` = 'jgallego@verdnatura.es',
`replyTo` = 'jgallego@verdnatura.es',
`subject` = 'Modificado ticket al cliente 2067',
`body` = CONCAT(account.myUserGetName(), ' ha modificado el ticket ',
NEW.id);
END IF;
END$$
DELIMITER ;

View File

@ -0,0 +1,4 @@
DELETE FROM `salix`.`ACL` WHERE id = 48;
DELETE FROM `salix`.`ACL` WHERE id = 49;
DELETE FROM `salix`.`ACL` WHERE id = 50;
DELETE FROM `salix`.`ACL` WHERE id = 107;

View File

@ -1,9 +1,9 @@
DROP PROCEDURE IF EXISTS `vn`.`sale_getProblems`; drop procedure `vn`.`sale_getProblems`;
DELIMITER $$ DELIMITER $$
$$ $$
CREATE create
DEFINER = root@`%` PROCEDURE `vn`.`sale_getProblems`(IN vIsTodayRelative TINYINT(1)) definer = root@`%` procedure `vn`.`sale_getProblems`(IN vIsTodayRelative tinyint(1))
BEGIN BEGIN
/** /**
* Calcula los problemas de cada venta * Calcula los problemas de cada venta
@ -32,6 +32,7 @@ BEGIN
saleFk INT(11), saleFk INT(11),
isFreezed INTEGER(1) DEFAULT 0, isFreezed INTEGER(1) DEFAULT 0,
risk DECIMAL(10,2) DEFAULT 0, risk DECIMAL(10,2) DEFAULT 0,
hasHighRisk TINYINT(1) DEFAULT 0,
hasTicketRequest INTEGER(1) DEFAULT 0, hasTicketRequest INTEGER(1) DEFAULT 0,
isAvailable INTEGER(1) DEFAULT 1, isAvailable INTEGER(1) DEFAULT 1,
itemShortage VARCHAR(250), itemShortage VARCHAR(250),
@ -59,6 +60,10 @@ BEGIN
JOIN vn.sale s ON s.ticketFk = tl.ticketFk JOIN vn.sale s ON s.ticketFk = tl.ticketFk
LEFT JOIN vn.saleComponent sc ON sc.saleFk = s.id LEFT JOIN vn.saleComponent sc ON sc.saleFk = s.id
LEFT JOIN vn.component c ON c.id = sc.componentFk AND c.isRequired LEFT JOIN vn.component c ON c.id = sc.componentFk AND c.isRequired
JOIN vn.ticket t ON t.id = tl.ticketFk
JOIN vn.agencyMode am ON am.id = t.agencyModeFk
JOIN vn.deliveryMethod dm ON dm.id = am.deliveryMethodFk
WHERE dm.code IN('AGENCY','DELIVERY','PICKUP')
GROUP BY tl.ticketFk, s.id; GROUP BY tl.ticketFk, s.id;
INSERT INTO tmp.sale_problems(ticketFk, isFreezed) INSERT INTO tmp.sale_problems(ticketFk, isFreezed)
@ -78,18 +83,18 @@ BEGIN
CALL clientGetDebt(CURDATE()); CALL clientGetDebt(CURDATE());
INSERT INTO tmp.sale_problems(ticketFk, risk) INSERT INTO tmp.sale_problems(ticketFk, risk, hasHighRisk)
SELECT DISTINCT tl.ticketFk, r.risk SELECT DISTINCT tl.ticketFk, r.risk, ((r.risk - cc.riskTolerance) > c.credit + 10)
FROM tmp.ticket_list tl FROM tmp.ticket_list tl
JOIN vn.ticket t ON t.id = tl.ticketFk JOIN vn.ticket t ON t.id = tl.ticketFk
JOIN vn.agencyMode a ON t.agencyModeFk = a.id JOIN vn.agencyMode a ON t.agencyModeFk = a.id
JOIN tmp.risk r ON r.clientFk = t.clientFk JOIN tmp.risk r ON r.clientFk = t.clientFk
JOIN vn.client c ON c.id = t.clientFk JOIN vn.client c ON c.id = t.clientFk
JOIN vn.clientConfig cc JOIN vn.clientConfig cc
WHERE r.risk - cc.riskTolerance > c.credit + 10 WHERE r.risk > c.credit + 10
AND a.isRiskFree = FALSE AND a.isRiskFree = FALSE
ON DUPLICATE KEY UPDATE ON DUPLICATE KEY UPDATE
risk = r.risk; risk = r.risk, hasHighRisk = ((r.risk - cc.riskTolerance) > c.credit + 10);
INSERT INTO tmp.sale_problems(ticketFk, hasTicketRequest) INSERT INTO tmp.sale_problems(ticketFk, hasTicketRequest)
SELECT DISTINCT tl.ticketFk, TRUE SELECT DISTINCT tl.ticketFk, TRUE
@ -124,7 +129,7 @@ BEGIN
AND vWarehouse = t.warehouseFk AND vWarehouse = t.warehouseFk
GROUP BY tl.ticketFk GROUP BY tl.ticketFk
ON DUPLICATE KEY UPDATE ON DUPLICATE KEY UPDATE
isAvailable = FALSE, saleFk = VALUE(saleFk); isAvailable = FALSE, saleFk = VALUES(saleFk);
INSERT INTO tmp.sale_problems(ticketFk, itemShortage, saleFk) INSERT INTO tmp.sale_problems(ticketFk, itemShortage, saleFk)
SELECT ticketFk, problem, saleFk SELECT ticketFk, problem, saleFk
@ -190,4 +195,3 @@ BEGIN
tmp.ticket_list; tmp.ticket_list;
END;;$$ END;;$$
DELIMITER ; DELIMITER ;

View File

@ -1,9 +1,9 @@
DROP PROCEDURE IF EXISTS `vn`.`ticket_getProblems`; drop procedure `vn`.`ticket_getProblems`;
DELIMITER $$ DELIMITER $$
$$ $$
CREATE create
DEFINER = root@`%` PROCEDURE `vn`.`ticket_getProblems`(IN vIsTodayRelative TINYINT(1)) definer = root@`%` procedure `vn`.`ticket_getProblems`(IN vIsTodayRelative tinyint(1))
BEGIN BEGIN
/** /**
* Calcula los problemas para un conjunto de tickets. * Calcula los problemas para un conjunto de tickets.
@ -22,14 +22,26 @@ BEGIN
ticketFk, ticketFk,
MAX(p.isFreezed) AS isFreezed, MAX(p.isFreezed) AS isFreezed,
MAX(p.risk) AS risk, MAX(p.risk) AS risk,
MAX(p.hasHighRisk) AS hasHighRisk,
MAX(p.hasTicketRequest) AS hasTicketRequest, MAX(p.hasTicketRequest) AS hasTicketRequest,
MIN(p.isAvailable) AS isAvailable, MIN(p.isAvailable) AS isAvailable,
MAX(p.itemShortage) AS itemShortage, MAX(p.itemShortage) AS itemShortage,
MIN(p.isTaxDataChecked) AS isTaxDataChecked, MIN(p.isTaxDataChecked) AS isTaxDataChecked,
MAX(p.hasComponentLack) AS hasComponentLack MAX(p.hasComponentLack) AS hasComponentLack,
0 AS totalProblems
FROM tmp.sale_problems p FROM tmp.sale_problems p
GROUP BY ticketFk; GROUP BY ticketFk;
UPDATE tmp.ticket_problems tp
SET tp.totalProblems = (
(tp.isFreezed) +
IF(tp.risk, TRUE, FALSE) +
(tp.hasTicketRequest) +
(tp.isAvailable = 0) +
(tp.isTaxDataChecked = 0) +
(tp.hasComponentLack)
);
DROP TEMPORARY TABLE DROP TEMPORARY TABLE
tmp.sale_problems; tmp.sale_problems;
END;;$$ END;;$$

View File

@ -0,0 +1 @@
alter table `vn`.`travelThermograph` modify `temperature` enum('COOL', 'WARM') null;

File diff suppressed because one or more lines are too long

View File

@ -6,6 +6,11 @@ ALTER TABLE `vn`.`address` AUTO_INCREMENT = 1;
ALTER TABLE `vn`.`zoneGeo` AUTO_INCREMENT = 1; ALTER TABLE `vn`.`zoneGeo` AUTO_INCREMENT = 1;
ALTER TABLE `vn`.`ticket` AUTO_INCREMENT = 1; ALTER TABLE `vn`.`ticket` AUTO_INCREMENT = 1;
INSERT INTO `salix`.`AccessToken` (`id`, `ttl`, `created`, `userId`)
VALUES
('TOTALLY_SECURE_TOKEN', '1209600', CURDATE(), 66);
INSERT INTO `vn`.`ticketConfig` (`id`, `scopeDays`) INSERT INTO `vn`.`ticketConfig` (`id`, `scopeDays`)
VALUES VALUES
('1', '6'); ('1', '6');
@ -53,18 +58,18 @@ INSERT INTO `hedera`.`tpvConfig`(`id`, `currency`, `terminal`, `transactionType`
INSERT INTO `account`.`user`(`id`,`name`,`nickname`, `password`,`role`,`active`,`email`,`lang`, `image`) INSERT INTO `account`.`user`(`id`,`name`,`nickname`, `password`,`role`,`active`,`email`,`lang`, `image`)
VALUES VALUES
(101, 'BruceWayne', 'Bruce Wayne', 'ac754a330530832ba1bf7687f577da91', 2, 1, 'BruceWayne@mydomain.com', 'es', 'e7723f0b24ff05b32ed09d95196f2f29'), (1101, 'BruceWayne', 'Bruce Wayne', 'ac754a330530832ba1bf7687f577da91', 2, 1, 'BruceWayne@mydomain.com', 'es', 'e7723f0b24ff05b32ed09d95196f2f29'),
(102, 'PetterParker', 'Petter Parker', 'ac754a330530832ba1bf7687f577da91', 2, 1, 'PetterParker@mydomain.com', 'en', 'e7723f0b24ff05b32ed09d95196f2f29'), (1102, 'PetterParker', 'Petter Parker', 'ac754a330530832ba1bf7687f577da91', 2, 1, 'PetterParker@mydomain.com', 'en', 'e7723f0b24ff05b32ed09d95196f2f29'),
(103, 'ClarkKent', 'Clark Kent', 'ac754a330530832ba1bf7687f577da91', 2, 1, 'ClarkKent@mydomain.com', 'fr', 'e7723f0b24ff05b32ed09d95196f2f29'), (1103, 'ClarkKent', 'Clark Kent', 'ac754a330530832ba1bf7687f577da91', 2, 1, 'ClarkKent@mydomain.com', 'fr', 'e7723f0b24ff05b32ed09d95196f2f29'),
(104, 'TonyStark', 'Tony Stark', 'ac754a330530832ba1bf7687f577da91', 2, 1, 'TonyStark@mydomain.com', 'es', 'e7723f0b24ff05b32ed09d95196f2f29'), (1104, 'TonyStark', 'Tony Stark', 'ac754a330530832ba1bf7687f577da91', 2, 1, 'TonyStark@mydomain.com', 'es', 'e7723f0b24ff05b32ed09d95196f2f29'),
(105, 'MaxEisenhardt', 'Max Eisenhardt', 'ac754a330530832ba1bf7687f577da91', 2, 1, 'MaxEisenhardt@mydomain.com', 'pt', 'e7723f0b24ff05b32ed09d95196f2f29'), (1105, 'MaxEisenhardt', 'Max Eisenhardt', 'ac754a330530832ba1bf7687f577da91', 2, 1, 'MaxEisenhardt@mydomain.com', 'pt', 'e7723f0b24ff05b32ed09d95196f2f29'),
(106, 'DavidCharlesHaller', 'David Charles Haller', 'ac754a330530832ba1bf7687f577da91', 1, 1, 'DavidCharlesHaller@mydomain.com', 'en', 'e7723f0b24ff05b32ed09d95196f2f29'), (1106, 'DavidCharlesHaller', 'David Charles Haller', 'ac754a330530832ba1bf7687f577da91', 1, 1, 'DavidCharlesHaller@mydomain.com', 'en', 'e7723f0b24ff05b32ed09d95196f2f29'),
(107, 'HankPym', 'Hank Pym', 'ac754a330530832ba1bf7687f577da91', 1, 1, 'HankPym@mydomain.com', 'en', 'e7723f0b24ff05b32ed09d95196f2f29'), (1107, 'HankPym', 'Hank Pym', 'ac754a330530832ba1bf7687f577da91', 1, 1, 'HankPym@mydomain.com', 'en', 'e7723f0b24ff05b32ed09d95196f2f29'),
(108, 'CharlesXavier', 'Charles Xavier', 'ac754a330530832ba1bf7687f577da91', 1, 1, 'CharlesXavier@mydomain.com', 'en', 'e7723f0b24ff05b32ed09d95196f2f29'), (1108, 'CharlesXavier', 'Charles Xavier', 'ac754a330530832ba1bf7687f577da91', 1, 1, 'CharlesXavier@mydomain.com', 'en', 'e7723f0b24ff05b32ed09d95196f2f29'),
(109, 'BruceBanner', 'Bruce Banner', 'ac754a330530832ba1bf7687f577da91', 1, 1, 'BruceBanner@mydomain.com', 'en', 'e7723f0b24ff05b32ed09d95196f2f29'), (1109, 'BruceBanner', 'Bruce Banner', 'ac754a330530832ba1bf7687f577da91', 1, 1, 'BruceBanner@mydomain.com', 'en', 'e7723f0b24ff05b32ed09d95196f2f29'),
(110, 'JessicaJones', 'Jessica Jones', 'ac754a330530832ba1bf7687f577da91', 1, 1, 'JessicaJones@mydomain.com', 'en', NULL), (1110, 'JessicaJones', 'Jessica Jones', 'ac754a330530832ba1bf7687f577da91', 1, 1, 'JessicaJones@mydomain.com', 'en', NULL),
(111, 'Missing', 'Missing', 'ac754a330530832ba1bf7687f577da91', 2, 0, NULL, 'en', NULL), (1111, 'Missing', 'Missing', 'ac754a330530832ba1bf7687f577da91', 2, 0, NULL, 'en', NULL),
(112, 'Trash', 'Trash', 'ac754a330530832ba1bf7687f577da91', 2, 0, NULL, 'en', NULL); (1112, 'Trash', 'Trash', 'ac754a330530832ba1bf7687f577da91', 2, 0, NULL, 'en', NULL);
INSERT INTO `account`.`mailAlias`(`id`, `alias`, `description`, `isPublic`) INSERT INTO `account`.`mailAlias`(`id`, `alias`, `description`, `isPublic`)
VALUES VALUES
@ -86,11 +91,11 @@ INSERT INTO `account`.`mailForward`(`account`, `forwardTo`)
INSERT INTO `vn`.`worker`(`id`, `code`, `firstName`, `lastName`, `userFk`,`bossFk`, `phone`) INSERT INTO `vn`.`worker`(`id`, `code`, `firstName`, `lastName`, `userFk`,`bossFk`, `phone`)
VALUES VALUES
(106, 'LGN', 'David Charles', 'Haller', 106, 19, 432978106), (1106, 'LGN', 'David Charles', 'Haller', 1106, 19, 432978106),
(107, 'ANT', 'Hank' , 'Pym' , 107, 19, 432978107), (1107, 'ANT', 'Hank' , 'Pym' , 1107, 19, 432978107),
(108, 'DCX', 'Charles' , 'Xavier', 108, 19, 432978108), (1108, 'DCX', 'Charles' , 'Xavier', 1108, 19, 432978108),
(109, 'HLK', 'Bruce' , 'Banner', 109, 19, 432978109), (1109, 'HLK', 'Bruce' , 'Banner', 1109, 19, 432978109),
(110, 'JJJ', 'Jessica' , 'Jones' , 110, 19, 432978110); (1110, 'JJJ', 'Jessica' , 'Jones' , 1110, 19, 432978110);
INSERT INTO `vn`.`currency`(`id`, `code`, `name`, `ratio`) INSERT INTO `vn`.`currency`(`id`, `code`, `name`, `ratio`)
VALUES VALUES
@ -125,13 +130,14 @@ INSERT INTO `vn`.`warehouseAlias`(`id`, `name`)
(1, 'Main Warehouse'), (1, 'Main Warehouse'),
(2, 'Silla'); (2, 'Silla');
INSERT INTO `vn`.`warehouse`(`id`, `name`, `code`, `isComparative`, `isInventory`, `hasAvailable`, `isManaged`, `hasStowaway`, `hasDms`, `hasComission`, `aliasFk`, `countryFk`) INSERT INTO `vn`.`warehouse`(`id`, `name`, `code`, `isComparative`, `isInventory`, `hasAvailable`, `isManaged`, `hasStowaway`, `hasDms`, `hasComission`, `aliasFk`, `countryFk`, `hasProduction`)
VALUES VALUES
(1, 'Warehouse One', 'ALG', 1, 1, 1, 1, 1, 1, 1, 2, 1), (1, 'Warehouse One', 'ALG', 1, 1, 1, 1, 1, 1, 1, 2, 1, 1),
(2, 'Warehouse Two', NULL, 1, 1, 1, 1, 0, 0, 1, 2, 13), (2, 'Warehouse Two', NULL, 1, 1, 1, 1, 0, 0, 1, 2, 13, 1),
(3, 'Warehouse Three', NULL, 1, 1, 1, 1, 0, 0, 0, 2, 1), (3, 'Warehouse Three', NULL, 1, 1, 1, 1, 0, 0, 0, 2, 1, 1),
(4, 'Warehouse Four', NULL, 1, 1, 1, 1, 0, 0, 0, 2, 1), (4, 'Warehouse Four', NULL, 1, 1, 1, 1, 0, 0, 0, 2, 1, 1),
(5, 'Warehouse Five', NULL, 1, 1, 1, 1, 0, 0, 0, 2, 1); (5, 'Warehouse Five', NULL, 1, 1, 1, 1, 0, 0, 0, 2, 1, 1),
(13, 'Inventory', NULL, 1, 1, 1, 0, 0, 0, 0, 2, 1, 0);
INSERT INTO `vn`.`sector`(`id`, `description`, `warehouseFk`, `isPreviousPreparedByPacking`, `code`, `pickingPlacement`, `path`) INSERT INTO `vn`.`sector`(`id`, `description`, `warehouseFk`, `isPreviousPreparedByPacking`, `code`, `pickingPlacement`, `path`)
VALUES VALUES
@ -145,8 +151,8 @@ INSERT INTO `vn`.`parking` (`id`, `column`, `row`, `sectorFk`, `code`, `pickingO
INSERT INTO `vn`.`shelving` (`code`, `parkingFk`, `isPrinted`, `priority`, `parked`, `userFk`) INSERT INTO `vn`.`shelving` (`code`, `parkingFk`, `isPrinted`, `priority`, `parked`, `userFk`)
VALUES VALUES
('GVC', '1', '0', '1', '0', '106'), ('GVC', '1', '0', '1', '0', '1106'),
('HEJ', '2', '0', '1', '0', '106'); ('HEJ', '2', '0', '1', '0', '1106');
INSERT INTO `vn`.`accountingType`(`id`, `description`, `receiptDescription`,`code`) INSERT INTO `vn`.`accountingType`(`id`, `description`, `receiptDescription`,`code`)
VALUES VALUES
@ -207,7 +213,7 @@ UPDATE `vn`.`agencyMode` SET `deliveryMethodFk` = 1 WHERE `id` = 8;
UPDATE `vn`.`agencyMode` SET `deliveryMethodFk` = 4 WHERE `id` = 23; UPDATE `vn`.`agencyMode` SET `deliveryMethodFk` = 4 WHERE `id` = 23;
UPDATE `vn`.`agencyMode` SET `deliveryMethodFk` = 1 WHERE `id` = 10; UPDATE `vn`.`agencyMode` SET `deliveryMethodFk` = 1 WHERE `id` = 10;
UPDATE `vn`.`agencyMode` SET `web` = 1; UPDATE `vn`.`agencyMode` SET `web` = 1, `reportMail` = 'no-reply@gothamcity.com';
UPDATE `vn`.`agencyMode` SET `code` = 'refund' WHERE `id` = 23; UPDATE `vn`.`agencyMode` SET `code` = 'refund' WHERE `id` = 23;
@ -217,20 +223,29 @@ INSERT INTO `vn`.`payMethod`(`id`,`code`, `name`, `graceDays`, `outstandingDebt
(2, NULL, 'PayMethod two', 10, 001, 0), (2, NULL, 'PayMethod two', 10, 001, 0),
(3, 'compensation', 'PayMethod three', 0, 001, 0), (3, 'compensation', 'PayMethod three', 0, 001, 0),
(4, NULL, 'PayMethod with IBAN', 0, 001, 1), (4, NULL, 'PayMethod with IBAN', 0, 001, 1),
(5, NULL, 'PayMethod five', 10, 001, 0); (5, NULL, 'PayMethod five', 10, 001, 0),
(8,'wireTransfer', 'WireTransfer', 5, 001, 1);
INSERT INTO `vn`.`payDem`(`id`, `payDem`) INSERT INTO `vn`.`payDem`(`id`, `payDem`)
VALUES VALUES
(1, 10), (1, 10),
(2, 20); (2, 20);
INSERT INTO `vn`.`province`(`id`, `name`, `countryFk`, `warehouseFk`) INSERT INTO `vn`.`autonomy`(`id`, `name`, `countryFk`)
VALUES VALUES
(1, 'Province one', 1, NULL), (1, 'Autonomy one', 1),
(2, 'Province two', 1, NULL), (2, 'Autonomy two', 1),
(3, 'Province three', 1, NULL), (3, 'Autonomy three', 2),
(4, 'Province four', 2, NULL), (4, 'Autonomy four', 13);
(5, 'Province five', 13, NULL);
INSERT INTO `vn`.`province`(`id`, `name`, `countryFk`, `autonomyFk`, `warehouseFk`)
VALUES
(1, 'Province one', 1, 1, NULL),
(2, 'Province two', 1, 1, NULL),
(3, 'Province three', 1, 2, NULL),
(4, 'Province four', 2, 3, NULL),
(5, 'Province five', 13, 4, NULL);
INSERT INTO `vn`.`town`(`id`, `name`, `provinceFk`) INSERT INTO `vn`.`town`(`id`, `name`, `provinceFk`)
VALUES VALUES
@ -267,20 +282,20 @@ INSERT INTO `vn`.`contactChannel`(`id`, `name`)
(4, 'GCN Channel'), (4, 'GCN Channel'),
(5, 'The Newspaper'); (5, 'The Newspaper');
INSERT INTO `vn`.`client`(`id`,`name`,`fi`,`socialName`,`contact`,`street`,`city`,`postcode`,`phone`,`mobile`,`fax`,`isRelevant`,`email`,`iban`,`dueDay`,`accountingAccount`,`isEqualizated`,`provinceFk`,`hasToInvoice`,`credit`,`countryFk`,`isActive`,`gestdocFk`,`quality`,`payMethodFk`,`created`,`isToBeMailed`,`contactChannelFk`,`hasSepaVnl`,`hasCoreVnl`,`hasCoreVnh`,`riskCalculated`,`clientTypeFk`,`mailAddress`,`cplusTerIdNifFk`,`hasToInvoiceByAddress`,`isTaxDataChecked`,`isFreezed`,`creditInsurance`,`isCreatedAsServed`,`hasInvoiceSimplified`,`salesPersonFk`,`isVies`,`eypbc`) INSERT INTO `vn`.`client`(`id`,`name`,`fi`,`socialName`,`contact`,`street`,`city`,`postcode`,`phone`,`mobile`,`isRelevant`,`email`,`iban`,`dueDay`,`accountingAccount`,`isEqualizated`,`provinceFk`,`hasToInvoice`,`credit`,`countryFk`,`isActive`,`gestdocFk`,`quality`,`payMethodFk`,`created`,`isToBeMailed`,`contactChannelFk`,`hasSepaVnl`,`hasCoreVnl`,`hasCoreVnh`,`riskCalculated`,`clientTypeFk`,`mailAddress`,`hasToInvoiceByAddress`,`isTaxDataChecked`,`isFreezed`,`creditInsurance`,`isCreatedAsServed`,`hasInvoiceSimplified`,`salesPersonFk`,`isVies`,`eypbc`, `businessTypeFk`)
VALUES VALUES
(101, 'Bruce Wayne', '84612325V', 'Batman', 'Alfred', '1007 Mountain Drive, Gotham', 'Silla', 46460, 1111111111, 222222222, 333333333, 1, 'BruceWayne@mydomain.com', NULL, 0, 1234567890, 0, 1, 1, 300, 1, 1, NULL, 10, 5,CURDATE(), 1, 5, 1, 1, 1, '0000-00-00', 1, NULL, 1, 1, 1, 0, NULL, 0, 0, 18, 0, 1), (1101, 'Bruce Wayne', '84612325V', 'Batman', 'Alfred', '1007 Mountain Drive, Gotham', 'Silla', 46460, 1111111111, 222222222, 1, 'BruceWayne@mydomain.com', NULL, 0, 1234567890, 0, 1, 1, 300, 1, 1, NULL, 10, 5,CURDATE(), 1, 5, 1, 1, 1, '0000-00-00', 1, 1, 1, 1, 0, NULL, 0, 0, 18, 0, 1, 'florist'),
(102, 'Petter Parker', '87945234L', 'Spider man', 'Aunt May', '20 Ingram Street, Queens, USA', 'Silla', 46460, 1111111111, 222222222, 333333333, 1, 'PetterParker@mydomain.com', NULL, 0, 1234567890, 0, 1, 1, 300, 1, 1, NULL, 10, 5,CURDATE(), 1, 5, 1, 1, 1, '0000-00-00', 1, NULL, 1, 1, 1, 0, NULL, 0, 0, 18, 0, 1), (1102, 'Petter Parker', '87945234L', 'Spider man', 'Aunt May', '20 Ingram Street, Queens, USA', 'Silla', 46460, 1111111111, 222222222, 1, 'PetterParker@mydomain.com', NULL, 0, 1234567890, 0, 1, 1, 300, 1, 1, NULL, 10, 5,CURDATE(), 1, 5, 1, 1, 1, '0000-00-00', 1, 1, 1, 1, 0, NULL, 0, 0, 18, 0, 1, 'florist'),
(103, 'Clark Kent', '06815934E', 'Super man', 'lois lane', '344 Clinton Street, Apartament 3-D', 'Silla', 46460, 1111111111, 222222222, 333333333, 1, 'ClarkKent@mydomain.com', NULL, 0, 1234567890, 0, 1, 1, 0, 19, 1, NULL, 10, 5,CURDATE(), 1, 5, 1, 1, 1, '0000-00-00', 1, NULL, 1, 1, 1, 0, NULL, 0, 0, 18, 0, 1), (1103, 'Clark Kent', '06815934E', 'Super man', 'lois lane', '344 Clinton Street, Apartament 3-D', 'Silla', 46460, 1111111111, 222222222, 1, 'ClarkKent@mydomain.com', NULL, 0, 1234567890, 0, 1, 1, 0, 19, 1, NULL, 10, 5,CURDATE(), 1, 5, 1, 1, 1, '0000-00-00', 1, 1, 1, 1, 0, NULL, 0, 0, 18, 0, 1, 'florist'),
(104, 'Tony Stark', '06089160W', 'Iron man', 'Pepper Potts', '10880 Malibu Point, 90265', 'Silla', 46460, 1111111111, 222222222, 333333333, 1, 'TonyStark@mydomain.com', NULL, 0, 1234567890, 0, 1, 1, 300, 1, 1, NULL, 10, 5,CURDATE(), 1, 5, 1, 1, 1, '0000-00-00', 1, NULL, 1, 1, 1, 0, NULL, 0, 0, 18, 0, 1), (1104, 'Tony Stark', '06089160W', 'Iron man', 'Pepper Potts', '10880 Malibu Point, 90265', 'Silla', 46460, 1111111111, 222222222, 1, 'TonyStark@mydomain.com', NULL, 0, 1234567890, 0, 1, 1, 300, 1, 1, NULL, 10, 5,CURDATE(), 1, 5, 1, 1, 1, '0000-00-00', 1, 1, 1, 1, 0, NULL, 0, 0, 18, 0, 1, 'florist'),
(105, 'Max Eisenhardt', '251628698', 'Magneto', 'Rogue', 'Unknown Whereabouts', 'Silla', 46460, 1111111111, 222222222, 333333333, 1, 'MaxEisenhardt@mydomain.com', NULL, 0, 1234567890, 0, 1, 1, 300, 8, 1, NULL, 10, 5,CURDATE(), 1, 5, 1, 1, 1, '0000-00-00', 1, NULL, 1, 1, 1, 1, NULL, 0, 0, 18, 0, 1), (1105, 'Max Eisenhardt', '251628698', 'Magneto', 'Rogue', 'Unknown Whereabouts', 'Silla', 46460, 1111111111, 222222222, 1, 'MaxEisenhardt@mydomain.com', NULL, 0, 1234567890, 0, 1, 1, 300, 8, 1, NULL, 10, 5,CURDATE(), 1, 5, 1, 1, 1, '0000-00-00', 1, 1, 1, 1, 1, NULL, 0, 0, 18, 0, 1, 'florist'),
(106, 'DavidCharlesHaller', '53136686Q', 'Legion', 'Charles Xavier', 'City of New York, New York, USA', 'Silla', 46460, 1111111111, 222222222, 333333333, 1, 'DavidCharlesHaller@mydomain.com', NULL, 0, 1234567890, 0, 1, 1, 300, 1, 0, NULL, 10, 5,CURDATE(), 1, 5, 1, 1, 1, '0000-00-00', 1, NULL, 1, 1, 1, 0, NULL, 0, 0, 19, 0, 1), (1106, 'DavidCharlesHaller', '53136686Q', 'Legion', 'Charles Xavier', 'City of New York, New York, USA', 'Silla', 46460, 1111111111, 222222222, 1, 'DavidCharlesHaller@mydomain.com', NULL, 0, 1234567890, 0, 1, 1, 300, 1, 0, NULL, 10, 5,CURDATE(), 1, 5, 1, 1, 1, '0000-00-00', 1, 1, 1, 1, 0, NULL, 0, 0, 19, 0, 1, 'florist'),
(107, 'Hank Pym', '09854837G', 'Ant man', 'Hawk', 'Anthill, San Francisco, California', 'Silla', 46460, 1111111111, 222222222, 333333333, 1, 'HankPym@mydomain.com', NULL, 0, 1234567890, 0, 1, 1, 300, 1, 1, NULL, 10, 5,CURDATE(), 1, 5, 1, 1, 1, '0000-00-00', 1, NULL, 1, 1, 0, 0, NULL, 0, 0, 19, 0, 1), (1107, 'Hank Pym', '09854837G', 'Ant man', 'Hawk', 'Anthill, San Francisco, California', 'Silla', 46460, 1111111111, 222222222, 1, 'HankPym@mydomain.com', NULL, 0, 1234567890, 0, 1, 1, 300, 1, 1, NULL, 10, 5,CURDATE(), 1, 5, 1, 1, 1, '0000-00-00', 1, 1, 1, 0, 0, NULL, 0, 0, 19, 0, 1, 'florist'),
(108, 'Charles Xavier', '22641921P', 'Professor X', 'Beast', '3800 Victory Pkwy, Cincinnati, OH 45207, USA', 'Silla', 46460, 1111111111, 222222222, 333333333, 1, 'CharlesXavier@mydomain.com', NULL, 0, 1234567890, 0, 1, 1, 300, 1, 1, NULL, 10, 5,CURDATE(), 1, 5, 1, 1, 1, '0000-00-00', 1, NULL, 1, 1, 1, 1, NULL, 0, 0, 19, 0, 1), (1108, 'Charles Xavier', '22641921P', 'Professor X', 'Beast', '3800 Victory Pkwy, Cincinnati, OH 45207, USA', 'Silla', 46460, 1111111111, 222222222, 1, 'CharlesXavier@mydomain.com', NULL, 0, 1234567890, 0, 1, 1, 300, 1, 1, NULL, 10, 5,CURDATE(), 1, 5, 1, 1, 1, '0000-00-00', 1, 1, 1, 1, 1, NULL, 0, 0, 19, 0, 1, 'florist'),
(109, 'Bruce Banner', '16104829E', 'Hulk', 'Black widow', 'Somewhere in New York', 'Silla', 46460, 1111111111, 222222222, 333333333, 1, 'BruceBanner@mydomain.com', NULL, 0, 1234567890, 0, 1, 1, 300, 1, 1, NULL, 10, 5,CURDATE(), 1, 5, 1, 1, 1, '0000-00-00', 1, NULL, 1, 1, 0, 0, NULL, 0, 0, 9, 0, 1), (1109, 'Bruce Banner', '16104829E', 'Hulk', 'Black widow', 'Somewhere in New York', 'Silla', 46460, 1111111111, 222222222, 1, 'BruceBanner@mydomain.com', NULL, 0, 1234567890, 0, 1, 1, 300, 1, 1, NULL, 10, 5,CURDATE(), 1, 5, 1, 1, 1, '0000-00-00', 1, 1, 1, 0, 0, NULL, 0, 0, 9, 0, 1, 'florist'),
(110, 'Jessica Jones', '58282869H', 'Jessica Jones', 'Luke Cage', 'NYCC 2015 Poster', 'Silla', 46460, 1111111111, 222222222, 333333333, 1, 'JessicaJones@mydomain.com', NULL, 0, 1234567890, 0, 1, 1, 300, 1, 1, NULL, 10, 5,CURDATE(), 1, 5, 1, 1, 1, '0000-00-00', 1, NULL, 1, 1, 0, 0, NULL, 0, 0, NULL, 0, 1), (1110, 'Jessica Jones', '58282869H', 'Jessica Jones', 'Luke Cage', 'NYCC 2015 Poster', 'Silla', 46460, 1111111111, 222222222, 1, 'JessicaJones@mydomain.com', NULL, 0, 1234567890, 0, 1, 1, 300, 1, 1, NULL, 10, 5,CURDATE(), 1, 5, 1, 1, 1, '0000-00-00', 1, 1, 1, 0, 0, NULL, 0, 0, NULL, 0, 1, 'florist'),
(111, 'Missing', NULL, 'Missing man', 'Anton', 'The space, Universe far away', 'Silla', 46460, 1111111111, 222222222, 333333333, 1, NULL, NULL, 0, 1234567890, 0, 1, 1, 300, 1, 1, NULL, 10, 5,CURDATE(), 1, 5, 1, 1, 1, '0000-00-00', 4, NULL, 1, 0, 1, 0, NULL, 1, 0, NULL, 0, 1), (1111, 'Missing', NULL, 'Missing man', 'Anton', 'The space, Universe far away', 'Silla', 46460, 1111111111, 222222222, 1, NULL, NULL, 0, 1234567890, 0, 1, 1, 300, 1, 1, NULL, 10, 5,CURDATE(), 1, 5, 1, 1, 1, '0000-00-00', 4, 1, 0, 1, 0, NULL, 1, 0, NULL, 0, 1, NULL),
(112, 'Trash', NULL, 'Garbage man', 'Unknown name', 'New York city, Underground', 'Silla', 46460, 1111111111, 222222222, 333333333, 1, NULL, NULL, 0, 1234567890, 0, 1, 1, 300, 1, 1, NULL, 10, 5,CURDATE(), 1, 5, 1, 1, 1, '0000-00-00', 4, NULL, 1, 0, 1, 0, NULL, 1, 0, NULL, 0, 1); (1112, 'Trash', NULL, 'Garbage man', 'Unknown name', 'New York city, Underground', 'Silla', 46460, 1111111111, 222222222, 1, NULL, NULL, 0, 1234567890, 0, 1, 1, 300, 1, 1, NULL, 10, 5,CURDATE(), 1, 5, 1, 1, 1, '0000-00-00', 4, 1, 0, 1, 0, NULL, 1, 0, NULL, 0, 1, NULL);
INSERT INTO `vn`.`client`(`id`, `name`, `fi`, `socialName`, `contact`, `street`, `city`, `postcode`, `isRelevant`, `email`, `iban`,`dueDay`,`accountingAccount`, `isEqualizated`, `provinceFk`, `hasToInvoice`, `credit`, `countryFk`, `isActive`, `gestdocFk`, `quality`, `payMethodFk`,`created`, `isTaxDataChecked`) INSERT INTO `vn`.`client`(`id`, `name`, `fi`, `socialName`, `contact`, `street`, `city`, `postcode`, `isRelevant`, `email`, `iban`,`dueDay`,`accountingAccount`, `isEqualizated`, `provinceFk`, `hasToInvoice`, `credit`, `countryFk`, `isActive`, `gestdocFk`, `quality`, `payMethodFk`,`created`, `isTaxDataChecked`)
SELECT id, name, CONCAT(RPAD(CONCAT(id,9),8,id),'A'), CONCAT(name, 'Social'), CONCAT(name, 'Contact'), CONCAT(name, 'Street'), 'SILLA', 46460, 1, CONCAT(name,'@mydomain.com'), NULL, 0, 1234567890, 0, 1, 1, 300, 1, 1,NULL, 10, 5, CURDATE(), 1 SELECT id, name, CONCAT(RPAD(CONCAT(id,9),8,id),'A'), CONCAT(name, 'Social'), CONCAT(name, 'Contact'), CONCAT(name, 'Street'), 'SILLA', 46460, 1, CONCAT(name,'@mydomain.com'), NULL, 0, 1234567890, 0, 1, 1, 300, 1, 1,NULL, 10, 5, CURDATE(), 1
@ -289,10 +304,10 @@ INSERT INTO `vn`.`client`(`id`, `name`, `fi`, `socialName`, `contact`, `street`,
INSERT INTO `vn`.`clientManaCache`(`clientFk`, `mana`, `dated`) INSERT INTO `vn`.`clientManaCache`(`clientFk`, `mana`, `dated`)
VALUES VALUES
(101, 50, DATE_ADD(CURDATE(), INTERVAL -1 MONTH)), (1101, 50, DATE_ADD(CURDATE(), INTERVAL -1 MONTH)),
(102, 100, DATE_ADD(CURDATE(), INTERVAL -1 MONTH)), (1102, 100, DATE_ADD(CURDATE(), INTERVAL -1 MONTH)),
(103, 0, DATE_ADD(CURDATE(), INTERVAL -1 MONTH)), (1103, 0, DATE_ADD(CURDATE(), INTERVAL -1 MONTH)),
(104, -30, DATE_ADD(CURDATE(), INTERVAL -1 MONTH)); (1104, -30, DATE_ADD(CURDATE(), INTERVAL -1 MONTH));
INSERT INTO `vn`.`clientConfig`(`riskTolerance`) INSERT INTO `vn`.`clientConfig`(`riskTolerance`)
VALUES VALUES
@ -300,64 +315,64 @@ INSERT INTO `vn`.`clientConfig`(`riskTolerance`)
INSERT INTO `vn`.`address`(`id`, `nickname`, `street`, `city`, `postalCode`, `provinceFk`, `phone`, `mobile`, `isActive`, `clientFk`, `agencyModeFk`, `longitude`, `latitude`, `isEqualizated`, `isDefaultAddress`) INSERT INTO `vn`.`address`(`id`, `nickname`, `street`, `city`, `postalCode`, `provinceFk`, `phone`, `mobile`, `isActive`, `clientFk`, `agencyModeFk`, `longitude`, `latitude`, `isEqualizated`, `isDefaultAddress`)
VALUES VALUES
(1, 'Bruce Wayne', '1007 Mountain Drive, Gotham', 'Silla', 46460, 1, 1111111111, 222222222, 1, 101, 2, NULL, NULL, 0, 1), (1, 'Bruce Wayne', '1007 Mountain Drive, Gotham', 'Silla', 46460, 1, 1111111111, 222222222, 1, 1101, 2, NULL, NULL, 0, 1),
(2, 'Petter Parker', '20 Ingram Street', 'Silla', 46460, 1, 1111111111, 222222222, 1, 102, 2, NULL, NULL, 0, 1), (2, 'Petter Parker', '20 Ingram Street', 'Silla', 46460, 1, 1111111111, 222222222, 1, 1102, 2, NULL, NULL, 0, 1),
(3, 'Clark Kent', '344 Clinton Street', 'Silla', 46460, 1, 1111111111, 222222222, 1, 103, 2, NULL, NULL, 0, 1), (3, 'Clark Kent', '344 Clinton Street', 'Silla', 46460, 1, 1111111111, 222222222, 1, 1103, 2, NULL, NULL, 0, 1),
(4, 'Tony Stark', '10880 Malibu Point', 'Silla', 46460, 1, 1111111111, 222222222, 1, 104, 2, NULL, NULL, 0, 1), (4, 'Tony Stark', '10880 Malibu Point', 'Silla', 46460, 1, 1111111111, 222222222, 1, 1104, 2, NULL, NULL, 0, 1),
(5, 'Max Eisenhardt', 'Unknown Whereabouts', 'Silla', 46460, 1, 1111111111, 222222222, 1, 105, 2, NULL, NULL, 0, 1), (5, 'Max Eisenhardt', 'Unknown Whereabouts', 'Silla', 46460, 1, 1111111111, 222222222, 1, 1105, 2, NULL, NULL, 0, 1),
(6, 'DavidCharlesHaller', 'Evil hideout', 'Silla', 46460, 1, 1111111111, 222222222, 1, 106, 2, NULL, NULL, 0, 1), (6, 'DavidCharlesHaller', 'Evil hideout', 'Silla', 46460, 1, 1111111111, 222222222, 1, 1106, 2, NULL, NULL, 0, 1),
(7, 'Hank Pym', 'Anthill', 'Silla', 46460, 1, 1111111111, 222222222, 1, 107, 2, NULL, NULL, 0, 1), (7, 'Hank Pym', 'Anthill', 'Silla', 46460, 1, 1111111111, 222222222, 1, 1107, 2, NULL, NULL, 0, 1),
(8, 'Charles Xavier', '3800 Victory Pkwy, Cincinnati, OH 45207, USA', 'Silla', 46460, 1, 1111111111, 222222222, 1, 108, 2, NULL, NULL, 0, 1), (8, 'Charles Xavier', '3800 Victory Pkwy, Cincinnati, OH 45207, USA', 'Silla', 46460, 1, 1111111111, 222222222, 1, 1108, 2, NULL, NULL, 0, 1),
(9, 'Bruce Banner', 'Somewhere in New York', 'Silla', 46460, 1, 1111111111, 222222222, 1, 109, 2, NULL, NULL, 0, 1), (9, 'Bruce Banner', 'Somewhere in New York', 'Silla', 46460, 1, 1111111111, 222222222, 1, 1109, 2, NULL, NULL, 0, 1),
(10, 'Jessica Jones', 'NYCC 2015 Poster', 'Silla', 46460, 1, 1111111111, 222222222, 1, 110, 2, NULL, NULL, 0, 1), (10, 'Jessica Jones', 'NYCC 2015 Poster', 'Silla', 46460, 1, 1111111111, 222222222, 1, 1110, 2, NULL, NULL, 0, 1),
(11, 'Missing', 'The space', 'Silla', 46460, 1, 1111111111, 222222222, 1, 111, 10, NULL, NULL, 0, 1), (11, 'Missing', 'The space', 'Silla', 46460, 1, 1111111111, 222222222, 1, 1111, 10, NULL, NULL, 0, 1),
(12, 'Trash', 'New York city', 'Silla', 46460, 1, 1111111111, 222222222, 1, 112, 10, NULL, NULL, 0, 1), (12, 'Trash', 'New York city', 'Silla', 46460, 1, 1111111111, 222222222, 1, 1112, 10, NULL, NULL, 0, 1),
(101, 'Somewhere in Thailand', 'address 01', 'Silla', 46460, 1, 1111111111, 222222222, 1, 109, 2, NULL, NULL, 0, 0), (101, 'Somewhere in Thailand', 'address 01', 'Silla', 46460, 1, 1111111111, 222222222, 1, 1109, 2, NULL, NULL, 0, 0),
(102, 'Somewhere in Poland', 'address 02', 'Silla', 46460, 1, 3333333333, 444444444, 1, 109, 2, NULL, NULL, 0, 0), (102, 'Somewhere in Poland', 'address 02', 'Silla', 46460, 1, 3333333333, 444444444, 1, 1109, 2, NULL, NULL, 0, 0),
(103, 'Somewhere in Japan', 'address 03', 'Silla', 46460, 1, 3333333333, 444444444, 1, 109, 2, NULL, NULL, 0, 0), (103, 'Somewhere in Japan', 'address 03', 'Silla', 46460, 1, 3333333333, 444444444, 1, 1109, 2, NULL, NULL, 0, 0),
(104, 'Somewhere in Spain', 'address 04', 'Silla', 46460, 1, 3333333333, 444444444, 1, 109, 2, NULL, NULL, 0, 0), (104, 'Somewhere in Spain', 'address 04', 'Silla', 46460, 1, 3333333333, 444444444, 1, 1109, 2, NULL, NULL, 0, 0),
(105, 'Somewhere in Potugal', 'address 05', 'Silla', 46460, 1, 5555555555, 666666666, 1, 109, 2, NULL, NULL, 0, 0), (105, 'Somewhere in Potugal', 'address 05', 'Silla', 46460, 1, 5555555555, 666666666, 1, 1109, 2, NULL, NULL, 0, 0),
(106, 'Somewhere in UK', 'address 06', 'Silla', 46460, 1, 5555555555, 666666666, 1, 109, 2, NULL, NULL, 0, 0), (106, 'Somewhere in UK', 'address 06', 'Silla', 46460, 1, 5555555555, 666666666, 1, 1109, 2, NULL, NULL, 0, 0),
(107, 'Somewhere in Valencia', 'address 07', 'Silla', 46460, 1, 5555555555, 666666666, 1, 109, 2, NULL, NULL, 0, 0), (107, 'Somewhere in Valencia', 'address 07', 'Silla', 46460, 1, 5555555555, 666666666, 1, 1109, 2, NULL, NULL, 0, 0),
(108, 'Somewhere in Silla', 'address 08', 'Silla', 46460, 1, 5555555555, 666666666, 1, 109, 2, NULL, NULL, 0, 0), (108, 'Somewhere in Silla', 'address 08', 'Silla', 46460, 1, 5555555555, 666666666, 1, 1109, 2, NULL, NULL, 0, 0),
(109, 'Somewhere in London', 'address 09', 'Silla', 46460, 1, 1111111111, 222222222, 1, 109, 2, NULL, NULL, 0, 0), (109, 'Somewhere in London', 'address 09', 'Silla', 46460, 1, 1111111111, 222222222, 1, 1109, 2, NULL, NULL, 0, 0),
(110, 'Somewhere in Algemesi', 'address 10', 'Silla', 46460, 1, 1111111111, 222222222, 1, 109, 2, NULL, NULL, 0, 0), (110, 'Somewhere in Algemesi', 'address 10', 'Silla', 46460, 1, 1111111111, 222222222, 1, 1109, 2, NULL, NULL, 0, 0),
(111, 'Somewhere in Carlet', 'address 11', 'Silla', 46460, 1, 1111111111, 222222222, 1, 109, 2, NULL, NULL, 0, 0), (111, 'Somewhere in Carlet', 'address 11', 'Silla', 46460, 1, 1111111111, 222222222, 1, 1109, 2, NULL, NULL, 0, 0),
(112, 'Somewhere in Campanar', 'address 12', 'Silla', 46460, 1, 1111111111, 222222222, 1, 109, 2, NULL, NULL, 0, 0), (112, 'Somewhere in Campanar', 'address 12', 'Silla', 46460, 1, 1111111111, 222222222, 1, 1109, 2, NULL, NULL, 0, 0),
(113, 'Somewhere in Malilla', 'address 13', 'Silla', 46460, 1, 1111111111, 222222222, 1, 109, 2, NULL, NULL, 0, 0), (113, 'Somewhere in Malilla', 'address 13', 'Silla', 46460, 1, 1111111111, 222222222, 1, 1109, 2, NULL, NULL, 0, 0),
(114, 'Somewhere in France', 'address 14', 'Silla', 46460, 1, 1111111111, 222222222, 1, 109, 2, NULL, NULL, 0, 0), (114, 'Somewhere in France', 'address 14', 'Silla', 46460, 1, 1111111111, 222222222, 1, 1109, 2, NULL, NULL, 0, 0),
(115, 'Somewhere in Birmingham', 'address 15', 'Silla', 46460, 1, 1111111111, 222222222, 1, 109, 2, NULL, NULL, 0, 0), (115, 'Somewhere in Birmingham', 'address 15', 'Silla', 46460, 1, 1111111111, 222222222, 1, 1109, 2, NULL, NULL, 0, 0),
(116, 'Somewhere in Scotland', 'address 16', 'Silla', 46460, 1, 1111111111, 222222222, 1, 109, 2, NULL, NULL, 0, 0), (116, 'Somewhere in Scotland', 'address 16', 'Silla', 46460, 1, 1111111111, 222222222, 1, 1109, 2, NULL, NULL, 0, 0),
(117, 'Somewhere in nowhere', 'address 17', 'Silla', 46460, 1, 1111111111, 222222222, 1, 109, 2, NULL, NULL, 0, 0), (117, 'Somewhere in nowhere', 'address 17', 'Silla', 46460, 1, 1111111111, 222222222, 1, 1109, 2, NULL, NULL, 0, 0),
(118, 'Somewhere over the rainbow', 'address 18', 'Silla', 46460, 1, 1111111111, 222222222, 1, 109, 2, NULL, NULL, 0, 0), (118, 'Somewhere over the rainbow', 'address 18', 'Silla', 46460, 1, 1111111111, 222222222, 1, 1109, 2, NULL, NULL, 0, 0),
(119, 'Somewhere in Alberic', 'address 19', 'Silla', 46460, 1, 1111111111, 222222222, 1, 109, 2, NULL, NULL, 0, 0), (119, 'Somewhere in Alberic', 'address 19', 'Silla', 46460, 1, 1111111111, 222222222, 1, 1109, 2, NULL, NULL, 0, 0),
(120, 'Somewhere in Montortal', 'address 20', 'Silla', 46460, 1, 1111111111, 222222222, 1, 109, 2, NULL, NULL, 0, 0), (120, 'Somewhere in Montortal', 'address 20', 'Silla', 46460, 1, 1111111111, 222222222, 1, 1109, 2, NULL, NULL, 0, 0),
(121, 'the bat cave', 'address 21', 'Silla', 46460, 1, 1111111111, 222222222, 1, 101, 2, NULL, NULL, 0, 0), (121, 'the bat cave', 'address 21', 'Silla', 46460, 1, 1111111111, 222222222, 1, 1101, 2, NULL, NULL, 0, 0),
(122, 'NY roofs', 'address 22', 'Silla', 46460, 1, 1111111111, 222222222, 1, 102, 2, NULL, NULL, 0, 0), (122, 'NY roofs', 'address 22', 'Silla', 46460, 1, 1111111111, 222222222, 1, 1102, 2, NULL, NULL, 0, 0),
(123, 'The phone box', 'address 23', 'Silla', 46460, 1, 1111111111, 222222222, 1, 103, 2, NULL, NULL, 0, 0), (123, 'The phone box', 'address 23', 'Silla', 46460, 1, 1111111111, 222222222, 1, 1103, 2, NULL, NULL, 0, 0),
(124, 'Stark tower Silla', 'address 24', 'Silla', 46460, 1, 1111111111, 222222222, 1, 104, 2, NULL, NULL, 0, 0), (124, 'Stark tower Silla', 'address 24', 'Silla', 46460, 1, 1111111111, 222222222, 1, 1104, 2, NULL, NULL, 0, 0),
(125, 'The plastic cell', 'address 25', 'Silla', 46460, 1, 1111111111, 222222222, 1, 105, 2, NULL, NULL, 0, 0), (125, 'The plastic cell', 'address 25', 'Silla', 46460, 1, 1111111111, 222222222, 1, 1105, 2, NULL, NULL, 0, 0),
(126, 'Many places', 'address 26', 'Silla', 46460, 1, 1111111111, 222222222, 1, 106, 2, NULL, NULL, 0, 0), (126, 'Many places', 'address 26', 'Silla', 46460, 1, 1111111111, 222222222, 1, 1106, 2, NULL, NULL, 0, 0),
(127, 'Your pocket', 'address 27', 'Silla', 46460, 1, 1111111111, 222222222, 1, 107, 2, NULL, NULL, 0, 0), (127, 'Your pocket', 'address 27', 'Silla', 46460, 1, 1111111111, 222222222, 1, 1107, 2, NULL, NULL, 0, 0),
(128, 'Cerebro', 'address 28', 'Silla', 46460, 1, 1111111111, 222222222, 1, 108, 2, NULL, NULL, 0, 0), (128, 'Cerebro', 'address 28', 'Silla', 46460, 1, 1111111111, 222222222, 1, 1108, 2, NULL, NULL, 0, 0),
(129, 'Luke Cages Bar', 'address 29', 'Silla', 46460, 1, 1111111111, 222222222, 1, 110, 2, NULL, NULL, 0, 0), (129, 'Luke Cages Bar', 'address 29', 'Silla', 46460, 1, 1111111111, 222222222, 1, 1110, 2, NULL, NULL, 0, 0),
(130, 'Non valid address', 'address 30', 'Silla', 46460, 1, 1111111111, 222222222, 0, 101, 2, NULL, NULL, 0, 0); (130, 'Non valid address', 'address 30', 'Silla', 46460, 1, 1111111111, 222222222, 0, 1101, 2, NULL, NULL, 0, 0);
INSERT INTO `vn`.`address`( `nickname`, `street`, `city`, `postalCode`, `provinceFk`, `isActive`, `clientFk`, `agencyModeFk`, `isDefaultAddress`) INSERT INTO `vn`.`address`( `nickname`, `street`, `city`, `postalCode`, `provinceFk`, `isActive`, `clientFk`, `agencyModeFk`, `isDefaultAddress`)
SELECT name, CONCAT(name, 'Street'), 'SILLA', 46460, 1, 1, id, 2, 1 SELECT name, CONCAT(name, 'Street'), 'SILLA', 46460, 1, 1, id, 2, 1
FROM `account`.`role` `r` FROM `account`.`role` `r`
WHERE `r`.`hasLogin` = 1; WHERE `r`.`hasLogin` = 1;
UPDATE `vn`.`client` SET defaultAddressFk = 1 WHERE id = 101; UPDATE `vn`.`client` SET defaultAddressFk = 1 WHERE id = 1101;
UPDATE `vn`.`client` SET defaultAddressFk = 2 WHERE id = 102; UPDATE `vn`.`client` SET defaultAddressFk = 2 WHERE id = 1102;
UPDATE `vn`.`client` SET defaultAddressFk = 3 WHERE id = 103; UPDATE `vn`.`client` SET defaultAddressFk = 3 WHERE id = 1103;
UPDATE `vn`.`client` SET defaultAddressFk = 4 WHERE id = 104; UPDATE `vn`.`client` SET defaultAddressFk = 4 WHERE id = 1104;
UPDATE `vn`.`client` SET defaultAddressFk = 5 WHERE id = 105; UPDATE `vn`.`client` SET defaultAddressFk = 5 WHERE id = 1105;
UPDATE `vn`.`client` SET defaultAddressFk = 6 WHERE id = 106; UPDATE `vn`.`client` SET defaultAddressFk = 6 WHERE id = 1106;
UPDATE `vn`.`client` SET defaultAddressFk = 7 WHERE id = 107; UPDATE `vn`.`client` SET defaultAddressFk = 7 WHERE id = 1107;
UPDATE `vn`.`client` SET defaultAddressFk = 8 WHERE id = 108; UPDATE `vn`.`client` SET defaultAddressFk = 8 WHERE id = 1108;
UPDATE `vn`.`client` SET defaultAddressFk = 9 WHERE id = 109; UPDATE `vn`.`client` SET defaultAddressFk = 9 WHERE id = 1109;
UPDATE `vn`.`client` SET defaultAddressFk = 10 WHERE id = 110; UPDATE `vn`.`client` SET defaultAddressFk = 10 WHERE id = 1110;
UPDATE `vn`.`client` SET defaultAddressFk = 11 WHERE id = 200; UPDATE `vn`.`client` SET defaultAddressFk = 11 WHERE id = 200;
UPDATE `vn`.`client` SET defaultAddressFk = 12 WHERE id = 400; UPDATE `vn`.`client` SET defaultAddressFk = 12 WHERE id = 400;
@ -374,20 +389,20 @@ DROP TEMPORARY TABLE tmp.address;
INSERT INTO `vn`.`clientCredit`(`id`, `clientFk`, `workerFk`, `amount`, `created`) INSERT INTO `vn`.`clientCredit`(`id`, `clientFk`, `workerFk`, `amount`, `created`)
VALUES VALUES
(1 , 101, 5, 300, DATE_ADD(CURDATE(), INTERVAL -1 MONTH)), (1 , 1101, 5, 300, DATE_ADD(CURDATE(), INTERVAL -1 MONTH)),
(2 , 101, 5, 900, DATE_ADD(CURDATE(), INTERVAL -2 MONTH)), (2 , 1101, 5, 900, DATE_ADD(CURDATE(), INTERVAL -2 MONTH)),
(3 , 101, 5, 800, DATE_ADD(CURDATE(), INTERVAL -3 MONTH)), (3 , 1101, 5, 800, DATE_ADD(CURDATE(), INTERVAL -3 MONTH)),
(4 , 101, 5, 700, DATE_ADD(CURDATE(), INTERVAL -4 MONTH)), (4 , 1101, 5, 700, DATE_ADD(CURDATE(), INTERVAL -4 MONTH)),
(5 , 101, 5, 600, DATE_ADD(CURDATE(), INTERVAL -5 MONTH)), (5 , 1101, 5, 600, DATE_ADD(CURDATE(), INTERVAL -5 MONTH)),
(6 , 101, 5, 500, DATE_ADD(CURDATE(), INTERVAL -6 MONTH)), (6 , 1101, 5, 500, DATE_ADD(CURDATE(), INTERVAL -6 MONTH)),
(7 , 101, 5, 400, DATE_ADD(CURDATE(), INTERVAL -7 MONTH)), (7 , 1101, 5, 400, DATE_ADD(CURDATE(), INTERVAL -7 MONTH)),
(8 , 101, 9, 300, DATE_ADD(CURDATE(), INTERVAL -8 MONTH)), (8 , 1101, 9, 300, DATE_ADD(CURDATE(), INTERVAL -8 MONTH)),
(9 , 101, 9, 200, DATE_ADD(CURDATE(), INTERVAL -9 MONTH)), (9 , 1101, 9, 200, DATE_ADD(CURDATE(), INTERVAL -9 MONTH)),
(10, 101, 9, 100, DATE_ADD(CURDATE(), INTERVAL -10 MONTH)), (10, 1101, 9, 100, DATE_ADD(CURDATE(), INTERVAL -10 MONTH)),
(11, 101, 9, 50 , DATE_ADD(CURDATE(), INTERVAL -11 MONTH)), (11, 1101, 9, 50 , DATE_ADD(CURDATE(), INTERVAL -11 MONTH)),
(12, 102, 9, 800, CURDATE()), (12, 1102, 9, 800, CURDATE()),
(14, 104, 9, 90 , CURDATE()), (14, 1104, 9, 90 , CURDATE()),
(15, 105, 9, 90 , CURDATE()); (15, 1105, 9, 90 , CURDATE());
INSERT INTO `vn`.`clientCreditLimit`(`id`, `maxAmount`, `roleFk`) INSERT INTO `vn`.`clientCreditLimit`(`id`, `maxAmount`, `roleFk`)
VALUES VALUES
@ -397,16 +412,16 @@ INSERT INTO `vn`.`clientCreditLimit`(`id`, `maxAmount`, `roleFk`)
INSERT INTO `vn`.`clientObservation`(`id`, `clientFk`, `workerFk`, `text`, `created`) INSERT INTO `vn`.`clientObservation`(`id`, `clientFk`, `workerFk`, `text`, `created`)
VALUES VALUES
(1, 101, 1, 'Madness, as you know, is like gravity, all it takes is a little push', CURDATE()), (1, 1101, 1, 'Madness, as you know, is like gravity, all it takes is a little push', CURDATE()),
(2, 102, 1, 'With great power, comes great responsibility', CURDATE()), (2, 1102, 1, 'With great power, comes great responsibility', CURDATE()),
(3, 103, 3, 'this is a job for Super-Man!', CURDATE()), (3, 1103, 3, 'this is a job for Super-Man!', CURDATE()),
(4, 104, 3, 'yes... I am Iron-Man', CURDATE()), (4, 1104, 3, 'yes... I am Iron-Man', CURDATE()),
(5, 105, 5, 'They do understand. Our mutant powers make us superior', CURDATE()), (5, 1105, 5, 'They do understand. Our mutant powers make us superior', CURDATE()),
(6, 106, 5, 'My name is Legion, for we are many!', CURDATE()), (6, 1106, 5, 'My name is Legion, for we are many!', CURDATE()),
(7, 107, 9, 'I think our first move should be calling the Avengers..', CURDATE()), (7, 1107, 9, 'I think our first move should be calling the Avengers..', CURDATE()),
(8, 108, 9, 'Just because someone stumbles and loses their path, does not mean they are lost forever.', CURDATE()), (8, 1108, 9, 'Just because someone stumbles and loses their path, does not mean they are lost forever.', CURDATE()),
(9, 109, 18, 'HULK SMASH! ...', CURDATE()), (9, 1109, 18, 'HULK SMASH! ...', CURDATE()),
(10, 110, 18, 'They say everyone is born a hero. But if you let it, life will push you over the line until you are the villain.', CURDATE()); (10, 1110, 18, 'They say everyone is born a hero. But if you let it, life will push you over the line until you are the villain.', CURDATE());
INSERT INTO `vn`.`observationType`(`id`,`description`, `code`) INSERT INTO `vn`.`observationType`(`id`,`description`, `code`)
VALUES VALUES
@ -426,11 +441,11 @@ INSERT INTO `vn`.`addressObservation`(`id`,`addressFk`,`observationTypeFk`,`desc
INSERT INTO `vn`.`creditClassification`(`id`, `client`, `dateStart`, `dateEnd`) INSERT INTO `vn`.`creditClassification`(`id`, `client`, `dateStart`, `dateEnd`)
VALUES VALUES
(1, 101, CURDATE(), CURDATE()), (1, 1101, CURDATE(), CURDATE()),
(2, 102, CURDATE(), CURDATE()), (2, 1102, CURDATE(), CURDATE()),
(3, 103, CURDATE(), CURDATE()), (3, 1103, CURDATE(), CURDATE()),
(4, 104, CURDATE(), CURDATE()), (4, 1104, CURDATE(), CURDATE()),
(5, 105, CURDATE(), CURDATE()); (5, 1105, CURDATE(), CURDATE());
INSERT INTO `vn`.`creditInsurance`(`id`, `creditClassification`, `credit`, `creationDate`, `grade`) INSERT INTO `vn`.`creditInsurance`(`id`, `creditClassification`, `credit`, `creationDate`, `grade`)
VALUES VALUES
@ -474,11 +489,11 @@ INSERT INTO `vn`.`invoiceOutSerial` (`code`, `description`, `isTaxed`, `taxAreaF
INSERT INTO `vn`.`invoiceOut`(`id`, `serial`, `amount`, `issued`,`clientFk`, `created`, `companyFk`, `dued`, `booked`, `bankFk`, `hasPdf`) INSERT INTO `vn`.`invoiceOut`(`id`, `serial`, `amount`, `issued`,`clientFk`, `created`, `companyFk`, `dued`, `booked`, `bankFk`, `hasPdf`)
VALUES VALUES
(1, 'T', 1014.24, CURDATE(), 101, CURDATE(), 442, CURDATE(), CURDATE(), 1, 1), (1, 'T', 1014.24, CURDATE(), 1101, CURDATE(), 442, CURDATE(), CURDATE(), 1, 1),
(2, 'T', 121.36, CURDATE(), 102, CURDATE(), 442, CURDATE(), CURDATE(), 1, 1), (2, 'T', 121.36, CURDATE(), 1102, CURDATE(), 442, CURDATE(), CURDATE(), 1, 1),
(3, 'T', 8.88, CURDATE(), 103, CURDATE(), 442, CURDATE(), CURDATE(), 1, 1), (3, 'T', 8.88, CURDATE(), 1103, CURDATE(), 442, CURDATE(), CURDATE(), 1, 1),
(4, 'T', 8.88, CURDATE(), 103, CURDATE(), 442, CURDATE(), CURDATE(), 1, 1), (4, 'T', 8.88, CURDATE(), 1103, CURDATE(), 442, CURDATE(), CURDATE(), 1, 1),
(5, 'A', 8.88, DATE_ADD(CURDATE(), INTERVAL -1 MONTH), 103, DATE_ADD(CURDATE(), INTERVAL -1 MONTH), 442, DATE_ADD(CURDATE(), INTERVAL -1 MONTH), DATE_ADD(CURDATE(), INTERVAL -1 MONTH), 1, 1); (5, 'A', 8.88, DATE_ADD(CURDATE(), INTERVAL -1 MONTH), 1103, DATE_ADD(CURDATE(), INTERVAL -1 MONTH), 442, DATE_ADD(CURDATE(), INTERVAL -1 MONTH), DATE_ADD(CURDATE(), INTERVAL -1 MONTH), 1, 1);
UPDATE `vn`.`invoiceOut` SET ref = 'T1111111' WHERE id = 1; UPDATE `vn`.`invoiceOut` SET ref = 'T1111111' WHERE id = 1;
UPDATE `vn`.`invoiceOut` SET ref = 'T2222222' WHERE id = 2; UPDATE `vn`.`invoiceOut` SET ref = 'T2222222' WHERE id = 2;
@ -579,30 +594,30 @@ INSERT INTO `vn`.`route`(`id`, `time`, `workerFk`, `created`, `vehicleFk`, `agen
INSERT INTO `vn`.`ticket`(`id`, `priority`, `agencyModeFk`,`warehouseFk`,`routeFk`, `shipped`, `landed`, `clientFk`,`nickname`, `addressFk`, `refFk`, `isDeleted`, `zoneFk`, `zonePrice`, `zoneBonus`, `created`) INSERT INTO `vn`.`ticket`(`id`, `priority`, `agencyModeFk`,`warehouseFk`,`routeFk`, `shipped`, `landed`, `clientFk`,`nickname`, `addressFk`, `refFk`, `isDeleted`, `zoneFk`, `zonePrice`, `zoneBonus`, `created`)
VALUES VALUES
(1 , 3, 1, 1, 1, DATE_ADD(CURDATE(), INTERVAL -1 MONTH), DATE_ADD(DATE_ADD(CURDATE(),INTERVAL -1 MONTH), INTERVAL +1 DAY), 101, 'Bat cave', 121, 'T1111111', 0, 1, 5, 1, DATE_ADD(CURDATE(), INTERVAL -1 MONTH)), (1 , 3, 1, 1, 1, DATE_ADD(CURDATE(), INTERVAL -1 MONTH), DATE_ADD(DATE_ADD(CURDATE(),INTERVAL -1 MONTH), INTERVAL +1 DAY), 1101, 'Bat cave', 121, 'T1111111', 0, 1, 5, 1, DATE_ADD(CURDATE(), INTERVAL -1 MONTH)),
(2 , 1, 1, 1, 1, DATE_ADD(CURDATE(), INTERVAL -1 MONTH), DATE_ADD(DATE_ADD(CURDATE(),INTERVAL -1 MONTH), INTERVAL +1 DAY), 104, 'Stark tower', 124, 'T1111111', 0, 1, 5, 1, DATE_ADD(CURDATE(), INTERVAL -1 MONTH)), (2 , 1, 1, 1, 1, DATE_ADD(CURDATE(), INTERVAL -1 MONTH), DATE_ADD(DATE_ADD(CURDATE(),INTERVAL -1 MONTH), INTERVAL +1 DAY), 1104, 'Stark tower', 124, 'T1111111', 0, 1, 5, 1, DATE_ADD(CURDATE(), INTERVAL -1 MONTH)),
(3 , 1, 7, 1, 6, DATE_ADD(CURDATE(), INTERVAL -2 MONTH), DATE_ADD(DATE_ADD(CURDATE(),INTERVAL -2 MONTH), INTERVAL +1 DAY), 104, 'Stark tower', 124, 'T2222222', 0, 3, 5, 1, DATE_ADD(CURDATE(), INTERVAL -2 MONTH)), (3 , 1, 7, 1, 6, DATE_ADD(CURDATE(), INTERVAL -2 MONTH), DATE_ADD(DATE_ADD(CURDATE(),INTERVAL -2 MONTH), INTERVAL +1 DAY), 1104, 'Stark tower', 124, 'T2222222', 0, 3, 5, 1, DATE_ADD(CURDATE(), INTERVAL -2 MONTH)),
(4 , 3, 2, 1, 2, DATE_ADD(CURDATE(), INTERVAL -3 MONTH), DATE_ADD(DATE_ADD(CURDATE(),INTERVAL -3 MONTH), INTERVAL +1 DAY), 104, 'Stark tower', 124, 'T3333333', 0, 9, 5, 1, DATE_ADD(CURDATE(), INTERVAL -3 MONTH)), (4 , 3, 2, 1, 2, DATE_ADD(CURDATE(), INTERVAL -3 MONTH), DATE_ADD(DATE_ADD(CURDATE(),INTERVAL -3 MONTH), INTERVAL +1 DAY), 1104, 'Stark tower', 124, 'T3333333', 0, 9, 5, 1, DATE_ADD(CURDATE(), INTERVAL -3 MONTH)),
(5 , 3, 3, 3, 3, DATE_ADD(CURDATE(), INTERVAL -4 MONTH), DATE_ADD(DATE_ADD(CURDATE(),INTERVAL -4 MONTH), INTERVAL +1 DAY), 104, 'Stark tower', 124, 'T4444444', 0, 10, 5, 1, DATE_ADD(CURDATE(), INTERVAL -4 MONTH)), (5 , 3, 3, 3, 3, DATE_ADD(CURDATE(), INTERVAL -4 MONTH), DATE_ADD(DATE_ADD(CURDATE(),INTERVAL -4 MONTH), INTERVAL +1 DAY), 1104, 'Stark tower', 124, 'T4444444', 0, 10, 5, 1, DATE_ADD(CURDATE(), INTERVAL -4 MONTH)),
(6 , 1, 3, 3, 3, DATE_ADD(CURDATE(), INTERVAL -1 MONTH), DATE_ADD(DATE_ADD(CURDATE(),INTERVAL -1 MONTH), INTERVAL +1 DAY), 101, 'Mountain Drive Gotham', 1, 'A1111111', 0, 10, 5, 1, DATE_ADD(CURDATE(), INTERVAL -1 MONTH)), (6 , 1, 3, 3, 3, DATE_ADD(CURDATE(), INTERVAL -1 MONTH), DATE_ADD(DATE_ADD(CURDATE(),INTERVAL -1 MONTH), INTERVAL +1 DAY), 1101, 'Mountain Drive Gotham', 1, 'A1111111', 0, 10, 5, 1, DATE_ADD(CURDATE(), INTERVAL -1 MONTH)),
(7 , NULL, 7, 1, 6, CURDATE(), DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 101, 'Mountain Drive Gotham', 1, NULL, 0, 3, 5, 1, CURDATE()), (7 , NULL, 7, 1, 6, CURDATE(), DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 1101, 'Mountain Drive Gotham', 1, NULL, 0, 3, 5, 1, CURDATE()),
(8 , NULL, 7, 1, 6, CURDATE(), DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 101, 'Bat cave', 121, NULL, 0, 3, 5, 1, CURDATE()), (8 , NULL, 7, 1, 6, CURDATE(), DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 1101, 'Bat cave', 121, NULL, 0, 3, 5, 1, CURDATE()),
(9 , NULL, 7, 1, 6, CURDATE(), DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 104, 'Stark tower', 124, NULL, 0, 3, 5, 1, CURDATE()), (9 , NULL, 7, 1, 6, CURDATE(), DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 1104, 'Stark tower', 124, NULL, 0, 3, 5, 1, CURDATE()),
(10, 1, 1, 5, 1, CURDATE(), DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 102, 'Ingram Street', 2, NULL, 0, 1, 5, 1, CURDATE()), (10, 1, 1, 5, 1, CURDATE(), DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 1102, 'Ingram Street', 2, NULL, 0, 1, 5, 1, CURDATE()),
(11, 1, 7, 1, 6, CURDATE(), DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 102, 'NY roofs', 122, NULL, 0, 3, 5, 1, CURDATE()), (11, 1, 7, 1, 6, CURDATE(), DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 1102, 'NY roofs', 122, NULL, 0, 3, 5, 1, CURDATE()),
(12, 1, 1, 1, 1, CURDATE(), DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 103, 'Phone Box', 123, NULL, 0, 1, 5, 1, CURDATE()), (12, 1, 1, 1, 1, CURDATE(), DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 1103, 'Phone Box', 123, NULL, 0, 1, 5, 1, CURDATE()),
(13, 1, 7, 1, 6, CURDATE(), DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 103, 'Phone Box', 123, NULL, 0, 3, 5, 1, CURDATE()), (13, 1, 7, 1, 6, CURDATE(), DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 1103, 'Phone Box', 123, NULL, 0, 3, 5, 1, CURDATE()),
(14, 1, 2, 1, NULL, CURDATE(), CURDATE(), 104, 'Malibu Point', 4, NULL, 0, 9, 5, 1, CURDATE()), (14, 1, 2, 1, NULL, CURDATE(), CURDATE(), 1104, 'Malibu Point', 4, NULL, 0, 9, 5, 1, CURDATE()),
(15, 1, 7, 1, 6, CURDATE(), DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 105, 'An incredibly long alias for testing purposes', 125, NULL, 0, 3, 5, 1, CURDATE()), (15, 1, 7, 1, 6, CURDATE(), DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 1105, 'An incredibly long alias for testing purposes', 125, NULL, 0, 3, 5, 1, CURDATE()),
(16, 1, 7, 1, 6, CURDATE(), DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 106, 'Many Places', 126, NULL, 0, 3, 5, 1, CURDATE()), (16, 1, 7, 1, 6, CURDATE(), DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 1106, 'Many Places', 126, NULL, 0, 3, 5, 1, CURDATE()),
(17, 1, 7, 2, 6, CURDATE(), DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 106, 'Many Places', 126, NULL, 0, 3, 5, 1, CURDATE()), (17, 1, 7, 2, 6, CURDATE(), DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 1106, 'Many Places', 126, NULL, 0, 3, 5, 1, CURDATE()),
(18, 1, 4, 4, 4, CURDATE(), DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 108, 'Cerebro', 128, NULL, 0, 12, 5, 1, CURDATE()), (18, 1, 4, 4, 4, CURDATE(), DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 1108, 'Cerebro', 128, NULL, 0, 12, 5, 1, CURDATE()),
(19, 1, 5, 5, NULL, CURDATE(), DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 109, 'Somewhere in Thailand', 129, NULL, 1, NULL, 5, 1, CURDATE()), (19, 1, 5, 5, NULL, CURDATE(), DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 1109, 'Somewhere in Thailand', 129, NULL, 1, NULL, 5, 1, CURDATE()),
(20, 1, 5, 5, 3, DATE_ADD(CURDATE(), INTERVAL +1 MONTH), DATE_ADD(DATE_ADD(CURDATE(),INTERVAL +1 MONTH), INTERVAL +1 DAY), 109, 'Somewhere in Thailand', 129, NULL, 0, 13, 5, 1, DATE_ADD(CURDATE(), INTERVAL +1 MONTH)), (20, 1, 5, 5, 3, DATE_ADD(CURDATE(), INTERVAL +1 MONTH), DATE_ADD(DATE_ADD(CURDATE(),INTERVAL +1 MONTH), INTERVAL +1 DAY), 1109, 'Somewhere in Thailand', 129, NULL, 0, 13, 5, 1, DATE_ADD(CURDATE(), INTERVAL +1 MONTH)),
(21, NULL, 5, 5, 5, DATE_ADD(CURDATE(), INTERVAL +1 MONTH), DATE_ADD(DATE_ADD(CURDATE(),INTERVAL +1 MONTH), INTERVAL +1 DAY), 109, 'Somewhere in Holland', 102, NULL, 0, 13, 5, 1, DATE_ADD(CURDATE(), INTERVAL +1 MONTH)), (21, NULL, 5, 5, 5, DATE_ADD(CURDATE(), INTERVAL +1 MONTH), DATE_ADD(DATE_ADD(CURDATE(),INTERVAL +1 MONTH), INTERVAL +1 DAY), 1109, 'Somewhere in Holland', 102, NULL, 0, 13, 5, 1, DATE_ADD(CURDATE(), INTERVAL +1 MONTH)),
(22, NULL, 5, 5, 5, DATE_ADD(CURDATE(), INTERVAL +1 MONTH), DATE_ADD(DATE_ADD(CURDATE(),INTERVAL +1 MONTH), INTERVAL +1 DAY), 109, 'Somewhere in Japan', 103, NULL, 0, 13, 5, 1, DATE_ADD(CURDATE(), INTERVAL +1 MONTH)), (22, NULL, 5, 5, 5, DATE_ADD(CURDATE(), INTERVAL +1 MONTH), DATE_ADD(DATE_ADD(CURDATE(),INTERVAL +1 MONTH), INTERVAL +1 DAY), 1109, 'Somewhere in Japan', 103, NULL, 0, 13, 5, 1, DATE_ADD(CURDATE(), INTERVAL +1 MONTH)),
(23, NULL, 8, 1, 7, CURDATE(), DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 101, 'address 21', 121, NULL, 0, 5, 5, 1, CURDATE()), (23, NULL, 8, 1, 7, CURDATE(), DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 1101, 'address 21', 121, NULL, 0, 5, 5, 1, CURDATE()),
(24 ,NULL, 8, 1, 7, CURDATE(), CURDATE(), 101, 'Bruce Wayne', 1, NULL, 0, 5, 5, 1, CURDATE()); (24 ,NULL, 8, 1, 7, CURDATE(), CURDATE(), 1101, 'Bruce Wayne', 1, NULL, 0, 5, 5, 1, CURDATE());
INSERT INTO `vn`.`ticketObservation`(`id`, `ticketFk`, `observationTypeFk`, `description`) INSERT INTO `vn`.`ticketObservation`(`id`, `ticketFk`, `observationTypeFk`, `description`)
VALUES VALUES
@ -682,18 +697,18 @@ INSERT INTO `vn`.`greugeType`(`id`, `name`, `code`)
INSERT INTO `vn`.`greuge`(`id`, `clientFk`, `description`, `amount`, `shipped`, `created`, `greugeTypeFk`, `ticketFk`) INSERT INTO `vn`.`greuge`(`id`, `clientFk`, `description`, `amount`, `shipped`, `created`, `greugeTypeFk`, `ticketFk`)
VALUES VALUES
(1, 101, 'some diff charges', -19.99, DATE_ADD(CURDATE(), INTERVAL 1 MONTH), CURDATE(), 1, 1), (1, 1101, 'some diff charges', -19.99, DATE_ADD(CURDATE(), INTERVAL 1 MONTH), CURDATE(), 1, 1),
(2, 101, 'more diff charges', 60, DATE_ADD(CURDATE(), INTERVAL 1 MONTH), CURDATE(), 2, 1), (2, 1101, 'more diff charges', 60, DATE_ADD(CURDATE(), INTERVAL 1 MONTH), CURDATE(), 2, 1),
(3, 101, 'even more! diff charges', -9.99, DATE_ADD(CURDATE(), INTERVAL 1 MONTH), CURDATE(), 3, 1), (3, 1101, 'even more! diff charges', -9.99, DATE_ADD(CURDATE(), INTERVAL 1 MONTH), CURDATE(), 3, 1),
(4, 101, 'insane diff charges', 60, DATE_ADD(CURDATE(), INTERVAL 1 MONTH), CURDATE(), 4, 1), (4, 1101, 'insane diff charges', 60, DATE_ADD(CURDATE(), INTERVAL 1 MONTH), CURDATE(), 4, 1),
(5, 101, 'gargantuous diff charges', -9.99, DATE_ADD(CURDATE(), INTERVAL 1 MONTH), CURDATE(), 5, 1), (5, 1101, 'gargantuous diff charges', -9.99, DATE_ADD(CURDATE(), INTERVAL 1 MONTH), CURDATE(), 5, 1),
(6, 101, 'diff charges', 88.30, DATE_ADD(CURDATE(), INTERVAL 1 MONTH), CURDATE(), 6, 1), (6, 1101, 'diff charges', 88.30, DATE_ADD(CURDATE(), INTERVAL 1 MONTH), CURDATE(), 6, 1),
(7, 101, 'unaffordable diff charges', -39.12, DATE_ADD(CURDATE(), INTERVAL 1 MONTH), CURDATE(), 1, 1), (7, 1101, 'unaffordable diff charges', -39.12, DATE_ADD(CURDATE(), INTERVAL 1 MONTH), CURDATE(), 1, 1),
(8, 101, 'some recovery charges', 29.35, DATE_ADD(CURDATE(), INTERVAL 1 MONTH), CURDATE(), 2, 1), (8, 1101, 'some recovery charges', 29.35, DATE_ADD(CURDATE(), INTERVAL 1 MONTH), CURDATE(), 2, 1),
(9, 101, 'some manna charges', -9.99, DATE_ADD(CURDATE(), INTERVAL 1 MONTH), CURDATE(), 3, 1), (9, 1101, 'some manna charges', -9.99, DATE_ADD(CURDATE(), INTERVAL 1 MONTH), CURDATE(), 3, 1),
(10, 101, 'some claim charges', 13.13, DATE_ADD(CURDATE(), INTERVAL 1 MONTH), CURDATE(), 4, 1), (10, 1101, 'some claim charges', 13.13, DATE_ADD(CURDATE(), INTERVAL 1 MONTH), CURDATE(), 4, 1),
(11, 101, 'some heritage charges', -15.99, DATE_ADD(CURDATE(), INTERVAL 1 MONTH), CURDATE(), 5, 1), (11, 1101, 'some heritage charges', -15.99, DATE_ADD(CURDATE(), INTERVAL 1 MONTH), CURDATE(), 5, 1),
(12, 101, 'some miscellaneous charges', 58.00, DATE_ADD(CURDATE(), INTERVAL 1 MONTH), CURDATE(), 6, 1); (12, 1101, 'some miscellaneous charges', 58.00, DATE_ADD(CURDATE(), INTERVAL 1 MONTH), CURDATE(), 6, 1);
INSERT INTO `vn`.`mandateType`(`id`, `name`) INSERT INTO `vn`.`mandateType`(`id`, `name`)
VALUES VALUES
@ -703,7 +718,7 @@ INSERT INTO `vn`.`mandateType`(`id`, `name`)
INSERT INTO `vn`.`mandate`(`id`, `clientFk`, `companyFk`, `code`, `created`, `mandateTypeFk`) INSERT INTO `vn`.`mandate`(`id`, `clientFk`, `companyFk`, `code`, `created`, `mandateTypeFk`)
VALUES VALUES
(1, 102, 442, '1-1', CURDATE(), 2); (1, 1102, 442, '1-1', CURDATE(), 2);
INSERT INTO `vn`.`itemCategory`(`id`, `name`, `display`, `color`, `icon`, `code`) INSERT INTO `vn`.`itemCategory`(`id`, `name`, `display`, `color`, `icon`, `code`)
VALUES VALUES
@ -780,25 +795,29 @@ INSERT INTO `vn`.`itemFamily`(`code`, `description`)
('SER', 'Services'), ('SER', 'Services'),
('VT', 'Sales'); ('VT', 'Sales');
INSERT INTO `vn`.`item`(`id`, `typeFk`, `size`, `inkFk`, `stems`, `originFk`, `description`, `producerFk`, `intrastatFk`, `isOnOffer`, `expenceFk`, `isBargain`, `comment`, `relevancy`, `image`, `taxClassFk`, `subName`, `minPrice`, `stars`, `family`) INSERT INTO `vn`.`item`(`id`, `typeFk`, `size`, `inkFk`, `stems`, `originFk`, `description`, `producerFk`, `intrastatFk`, `isOnOffer`, `expenceFk`, `isBargain`, `comment`, `relevancy`, `image`, `subName`, `minPrice`, `stars`, `family`)
VALUES VALUES
(1, 2, 70, 'YEL', 1, 1, NULL, 1, 06021010, 0, 2000000000, 0, NULL, 0, '1', 1, NULL, 0, 1, 'VT'), (1, 2, 70, 'YEL', 1, 1, NULL, 1, 06021010, 0, 2000000000, 0, NULL, 0, '1', NULL, 0, 1, 'VT'),
(2, 2, 70, 'BLU', 1, 2, NULL, 1, 06021010, 0, 2000000000, 0, NULL, 0, '2', 1, NULL, 0, 2, 'VT'), (2, 2, 70, 'BLU', 1, 2, NULL, 1, 06021010, 0, 2000000000, 0, NULL, 0, '2', NULL, 0, 2, 'VT'),
(3, 1, 60, 'YEL', 1, 3, NULL, 1, 05080000, 0, 4751000000, 0, NULL, 0, '3', 1, NULL, 0, 5, 'VT'), (3, 1, 60, 'YEL', 1, 3, NULL, 1, 05080000, 0, 4751000000, 0, NULL, 0, '3', NULL, 0, 5, 'VT'),
(4, 1, 60, 'YEL', 1, 1, 'Increases block', 1, 05080000, 1, 4751000000, 0, NULL, 0, '4', 2, NULL, 0, 3, 'VT'), (4, 1, 60, 'YEL', 1, 1, 'Increases block', 1, 05080000, 1, 4751000000, 0, NULL, 0, '4', NULL, 0, 3, 'VT'),
(5, 3, 30, 'RED', 1, 2, NULL, 2, 06021010, 1, 4751000000, 0, NULL, 0, '5', 2, NULL, 0, 3, 'VT'), (5, 3, 30, 'RED', 1, 2, NULL, 2, 06021010, 1, 4751000000, 0, NULL, 0, '5', NULL, 0, 3, 'VT'),
(6, 5, 30, 'RED', 1, 2, NULL, NULL, 06021010, 0, 4751000000, 0, NULL, 0, '6', 2, NULL, 0, 4, 'VT'), (6, 5, 30, 'RED', 1, 2, NULL, NULL, 06021010, 0, 4751000000, 0, NULL, 0, '6', NULL, 0, 4, 'VT'),
(7, 5, 90, 'BLU', 1, 2, NULL, NULL, 06021010, 0, 4751000000, 0, NULL, 0, '7', 2, NULL, 0, 4, 'VT'), (7, 5, 90, 'BLU', 1, 2, NULL, NULL, 06021010, 0, 4751000000, 0, NULL, 0, '7', NULL, 0, 4, 'VT'),
(8, 2, 70, 'YEL', 1, 1, NULL, 1, 06021010, 0, 2000000000, 0, NULL, 0, '8', 1, NULL, 0, 5, 'VT'), (8, 2, 70, 'YEL', 1, 1, NULL, 1, 06021010, 0, 2000000000, 0, NULL, 0, '8', NULL, 0, 5, 'VT'),
(9, 2, 70, 'BLU', 1, 2, NULL, 1, 06021010, 0, 2000000000, 0, NULL, 0, '9', 1, NULL, 0, 4, 'VT'), (9, 2, 70, 'BLU', 1, 2, NULL, 1, 06021010, 0, 2000000000, 0, NULL, 0, '9', NULL, 0, 4, 'VT'),
(10, 1, 60, 'YEL', 1, 3, NULL, 1, 05080000, 0, 4751000000, 0, NULL, 0, '10', 1, NULL, 0, 4, 'VT'), (10, 1, 60, 'YEL', 1, 3, NULL, 1, 05080000, 0, 4751000000, 0, NULL, 0, '10', NULL, 0, 4, 'VT'),
(11, 1, 60, 'YEL', 1, 1, NULL, 1, 05080000, 1, 4751000000, 0, NULL, 0, '11', 2, NULL, 0, 4, 'VT'), (11, 1, 60, 'YEL', 1, 1, NULL, 1, 05080000, 1, 4751000000, 0, NULL, 0, '11', NULL, 0, 4, 'VT'),
(12, 3, 30, 'RED', 1, 2, NULL, 2, 06021010, 1, 4751000000, 0, NULL, 0, '12', 2, NULL, 0, 3, 'VT'), (12, 3, 30, 'RED', 1, 2, NULL, 2, 06021010, 1, 4751000000, 0, NULL, 0, '12', NULL, 0, 3, 'VT'),
(13, 5, 30, 'RED', 1, 2, NULL, NULL, 06021010, 0, 4751000000, 0, NULL, 0, '13', 2, NULL, 0, 2, 'VT'), (13, 5, 30, 'RED', 1, 2, NULL, NULL, 06021010, 0, 4751000000, 0, NULL, 0, '13', NULL, 0, 2, 'VT'),
(14, 5, 90, 'BLU', 1, 2, NULL, NULL, 06021010, 0, 4751000000, 0, NULL, 0, '', 2, NULL, 0, 4, 'VT'), (14, 5, 90, 'BLU', 1, 2, NULL, NULL, 06021010, 0, 4751000000, 0, NULL, 0, '', NULL, 0, 4, 'VT'),
(15, 4, NULL, NULL, NULL, 1, NULL, NULL, 06021010, 0, 4751000000, 0, NULL, 0, '', 2, NULL, 0, 0, 'EMB'), (15, 4, NULL, NULL, NULL, 1, NULL, NULL, 06021010, 0, 4751000000, 0, NULL, 0, '', NULL, 0, 0, 'EMB'),
(16, 4, NULL, NULL, NULL, 1, NULL, NULL, 06021010, 0, 4751000000, 0, NULL, 0, '', 2, NULL, 0, 0, 'EMB'), (16, 4, NULL, NULL, NULL, 1, NULL, NULL, 06021010, 0, 4751000000, 0, NULL, 0, '', NULL, 0, 0, 'EMB'),
(71, 4, NULL, NULL, NULL, 1, NULL, NULL, 06021010, 1, 4751000000, 0, NULL, 0, '', 2, NULL, 0, 0, 'VT'); (71, 4, NULL, NULL, NULL, 1, NULL, NULL, 06021010, 1, 4751000000, 0, NULL, 0, '', NULL, 0, 0, 'VT');
-- Update the taxClass after insert of the items
UPDATE `vn`.`itemTaxCountry` SET `taxClassFk` = 2
WHERE `itemFk` IN(4, 5, 6, 7, 11, 12, 13, 14, 15, 16, 71);
INSERT INTO `vn`.`priceFixed`(`id`, `itemFk`, `rate0`, `rate1`, `rate2`, `rate3`, `started`, `ended`, `bonus`, `warehouseFk`, `created`) INSERT INTO `vn`.`priceFixed`(`id`, `itemFk`, `rate0`, `rate1`, `rate2`, `rate3`, `started`, `ended`, `bonus`, `warehouseFk`, `created`)
VALUES VALUES
@ -832,7 +851,7 @@ INSERT INTO `vn`.`expedition`(`id`, `agencyModeFk`, `ticketFk`, `isBox`, `create
(7, 2, 4, 71, DATE_ADD(CURDATE(), INTERVAL -3 MONTH), NULL, 1, 1, 18, NULL, 94), (7, 2, 4, 71, DATE_ADD(CURDATE(), INTERVAL -3 MONTH), NULL, 1, 1, 18, NULL, 94),
(8, 3, 5, 71, DATE_ADD(CURDATE(), INTERVAL -4 MONTH), NULL, 1, 1, 18, NULL, 94), (8, 3, 5, 71, DATE_ADD(CURDATE(), INTERVAL -4 MONTH), NULL, 1, 1, 18, NULL, 94),
(9, 3, 6, 71, DATE_ADD(CURDATE(), INTERVAL -1 MONTH), NULL, 1, 1, 18, NULL, 94), (9, 3, 6, 71, DATE_ADD(CURDATE(), INTERVAL -1 MONTH), NULL, 1, 1, 18, NULL, 94),
(10, 7, 7, 71, CURDATE(), NULL, 1, 1, 18, NULL, 94); (10, 7, 7, 71, NOW(), NULL, 1, 1, 18, NULL, 94);
INSERT INTO `vn`.`ticketPackaging`(`id`, `ticketFk`, `packagingFk`, `quantity`, `created`, `pvp`) INSERT INTO `vn`.`ticketPackaging`(`id`, `ticketFk`, `packagingFk`, `quantity`, `created`, `pvp`)
VALUES VALUES
@ -1017,15 +1036,15 @@ INSERT INTO `vn`.`saleComponent`(`saleFk`, `componentFk`, `value`)
INSERT INTO `vn`.`itemShelving` (`id`, `itemFk`, `shelvingFk`, `shelve`, `deep`, `quantity`, `visible`, `available`, `grouping`, `packing`, `level`, `userFk`) INSERT INTO `vn`.`itemShelving` (`id`, `itemFk`, `shelvingFk`, `shelve`, `deep`, `quantity`, `visible`, `available`, `grouping`, `packing`, `level`, `userFk`)
VALUES VALUES
('1', '2', 'GVC', 'A', '0', '1', '1', '1', '1', '1', '1', '106'), ('1', '2', 'GVC', 'A', '0', '1', '1', '1', '1', '1', '1', '1106'),
('2', '4', 'HEJ', 'A', '0', '2', '1', '1', '1', '1', '1', '106'); ('2', '4', 'HEJ', 'A', '0', '2', '1', '1', '1', '1', '1', '1106');
INSERT INTO `vn`.`itemShelvingSale` (`itemShelvingFk`, `saleFk`, `quantity`, `created`, `userFk`) INSERT INTO `vn`.`itemShelvingSale` (`itemShelvingFk`, `saleFk`, `quantity`, `created`, `userFk`)
VALUES VALUES
('1', '1', '1', '', '106'), ('1', '1', '1', '', '1106'),
('2', '2', '5', '', '106'), ('2', '2', '5', '', '1106'),
('1', '7', '1', '', '106'), ('1', '7', '1', '', '1106'),
('2', '8', '5', '', '106'); ('2', '8', '5', '', '1106');
INSERT INTO `vncontrol`.`accion`(`accion_id`, `accion`) INSERT INTO `vncontrol`.`accion`(`accion_id`, `accion`)
VALUES VALUES
@ -1054,10 +1073,15 @@ INSERT INTO `vn`.`itemPlacement`(`id`, `itemFk`, `warehouseFk`, `code`)
(4, 2, 1, 'A44'); (4, 2, 1, 'A44');
INSERT INTO `vn`.`collection`(`id`, `workerFk`, `stateFk`) INSERT INTO `vn`.`collection`(`id`, `workerFk`, `stateFk`, `created`)
VALUES VALUES
(1, 106, 5), (1, 1106, 5, DATE_ADD(CURDATE(),INTERVAL +1 DAY)),
(2, 106, 14); (2, 1106, 14, CURDATE());
INSERT INTO `vn`.`ticketCollection`(`id`, `ticketFk`, `collectionFk`)
VALUES
(2, 2, 1),
(3, 3, 2);
INSERT INTO `vn`.`parking` (`column`, `row`, `sectorFk`, `code`, `pickingOrder`) INSERT INTO `vn`.`parking` (`column`, `row`, `sectorFk`, `code`, `pickingOrder`)
VALUES VALUES
@ -1065,11 +1089,11 @@ INSERT INTO `vn`.`parking` (`column`, `row`, `sectorFk`, `code`, `pickingOrder`)
INSERT INTO `vn`.`shelving` (`code`, `parkingFk`, `priority`, `userFk`) INSERT INTO `vn`.`shelving` (`code`, `parkingFk`, `priority`, `userFk`)
VALUES VALUES
('UXN', 1, 1, 106); ('UXN', 1, 1, 1106);
INSERT INTO `vn`.`itemShelving` (`itemFk`, `shelvingFk`, `shelve`, `deep`, `quantity`, `visible`, `available`, `grouping`, `packing`, `level`, `userFk`) INSERT INTO `vn`.`itemShelving` (`itemFk`, `shelvingFk`, `shelve`, `deep`, `quantity`, `visible`, `available`, `grouping`, `packing`, `level`, `userFk`)
VALUES VALUES
(1, 'UXN', 'A', 2, 12, 12, 12, 12, 12, 1, 106); (1, 'UXN', 'A', 2, 12, 12, 12, 12, 12, 1, 1106);
INSERT INTO `vn`.`ticketCollection` (`ticketFk`, `collectionFk`, `level`) INSERT INTO `vn`.`ticketCollection` (`ticketFk`, `collectionFk`, `level`)
VALUES VALUES
@ -1093,7 +1117,7 @@ INSERT INTO `vn`.`itemBotanical`(`itemFk`, `genusFk`, `specieFk`)
(1, 1, 1), (1, 1, 1),
(2, 2, 2), (2, 2, 2),
(3, 2, NULL), (3, 2, NULL),
(4, NULL, NULL); (4, 2, 1);
INSERT INTO `vn`.`tag`(`id`, `code`, `name`, `isFree`, `isQuantitatif`, `sourceTable`, `unit`, `ediTypeFk`, `overwrite`) INSERT INTO `vn`.`tag`(`id`, `code`, `name`, `isFree`, `isQuantitatif`, `sourceTable`, `unit`, `ediTypeFk`, `overwrite`)
VALUES VALUES
@ -1231,18 +1255,18 @@ INSERT INTO `vn`.`itemLog` (`id`, `originFk`, `userFk`, `action`, `description`)
INSERT INTO `vn`.`recovery`(`id`, `clientFk`, `started`, `finished`, `amount`, `period`) INSERT INTO `vn`.`recovery`(`id`, `clientFk`, `started`, `finished`, `amount`, `period`)
VALUES VALUES
(1, 101, DATE_ADD(CURDATE(),INTERVAL -7 MONTH), DATE_ADD(CURDATE(),INTERVAL -3 MONTH), 50, 7), (1, 1101, DATE_ADD(CURDATE(),INTERVAL -7 MONTH), DATE_ADD(CURDATE(),INTERVAL -3 MONTH), 50, 7),
(2, 102, DATE_ADD(CURDATE(),INTERVAL -5 MONTH), CURDATE(), 100, 1), (2, 1102, DATE_ADD(CURDATE(),INTERVAL -5 MONTH), CURDATE(), 100, 1),
(3, 102, CURDATE(), DATE_ADD(CURDATE(),INTERVAL 1 MONTH), 50, 7), (3, 1102, CURDATE(), DATE_ADD(CURDATE(),INTERVAL 1 MONTH), 50, 7),
(4, 103, CURDATE(), NULL, 50, 7); (4, 1103, CURDATE(), NULL, 50, 7);
INSERT INTO `vn`.`annualAverageInvoiced`(`clientFk`, `invoiced`) INSERT INTO `vn`.`annualAverageInvoiced`(`clientFk`, `invoiced`)
VALUES VALUES
(101, 1500), (1101, 1500),
(102, 100), (1102, 100),
(103, 1000), (1103, 1000),
(104, 500), (1104, 500),
(105, 5000); (1105, 5000);
INSERT INTO `vn`.`supplierActivity`(`code`, `name`) INSERT INTO `vn`.`supplierActivity`(`code`, `name`)
VALUES VALUES
@ -1311,10 +1335,10 @@ INSERT INTO `vn`.`entry`(`id`, `supplierFk`, `created`, `travelFk`, `isConfirmed
INSERT INTO `vn`.`claimRatio`(`clientFk`, `yearSale`, `claimAmount`, `claimingRate`, `priceIncreasing`, `packingRate`) INSERT INTO `vn`.`claimRatio`(`clientFk`, `yearSale`, `claimAmount`, `claimingRate`, `priceIncreasing`, `packingRate`)
VALUES VALUES
(101, 500, NULL, 0.00, 0.00, 1.00), (1101, 500, NULL, 0.00, 0.00, 1.00),
(102, 1000, 2.00, 0.01, 0.05, 1.00), (1102, 1000, 2.00, 0.01, 0.05, 1.00),
(103, 2000, 0.00, 0.00, 0.02, 1.00), (1103, 2000, 0.00, 0.00, 0.02, 1.00),
(104, 2500, 150.00, 0.02, 0.10, 1.00); (1104, 2500, 150.00, 0.02, 0.10, 1.00);
INSERT INTO `bs`.`waste`(`buyer`, `year`, `week`, `family`, `itemFk`, `itemTypeFk`, `saleTotal`, `saleWaste`, `rate`) INSERT INTO `bs`.`waste`(`buyer`, `year`, `week`, `family`, `itemFk`, `itemTypeFk`, `saleTotal`, `saleWaste`, `rate`)
VALUES VALUES
@ -1354,28 +1378,28 @@ INSERT INTO `vn`.`buy`(`id`,`entryFk`,`itemFk`,`buyingValue`,`quantity`,`package
INSERT INTO `hedera`.`order`(`id`, `date_send`, `customer_id`, `delivery_method_id`, `agency_id`, `address_id`, `company_id`, `note`, `source_app`, `confirmed`,`total`, `date_make`, `first_row_stamp`, `confirm_date`) INSERT INTO `hedera`.`order`(`id`, `date_send`, `customer_id`, `delivery_method_id`, `agency_id`, `address_id`, `company_id`, `note`, `source_app`, `confirmed`,`total`, `date_make`, `first_row_stamp`, `confirm_date`)
VALUES VALUES
(1, DATE_ADD(DATE_ADD(CURDATE(),INTERVAL -1 MONTH), INTERVAL +1 DAY), 101, 3, 1, 121, 442, NULL, 'TPV', 1,'155.89', DATE_ADD(CURDATE(), INTERVAL -1 MONTH), DATE_ADD(CURDATE(), INTERVAL -1 MONTH), DATE_ADD(CURDATE(), INTERVAL -1 MONTH)), (1, DATE_ADD(DATE_ADD(CURDATE(),INTERVAL -1 MONTH), INTERVAL +1 DAY), 1101, 3, 1, 121, 442, NULL, 'TPV', 1,'155.89', DATE_ADD(CURDATE(), INTERVAL -1 MONTH), DATE_ADD(CURDATE(), INTERVAL -1 MONTH), DATE_ADD(CURDATE(), INTERVAL -1 MONTH)),
(2, DATE_ADD(DATE_ADD(CURDATE(),INTERVAL -1 MONTH), INTERVAL +1 DAY), 104, 3, 1, 124, 442, NULL, 'WEB', 1,'100.10', DATE_ADD(CURDATE(), INTERVAL -1 MONTH), DATE_ADD(CURDATE(), INTERVAL -1 MONTH), DATE_ADD(CURDATE(), INTERVAL -1 MONTH)), (2, DATE_ADD(DATE_ADD(CURDATE(),INTERVAL -1 MONTH), INTERVAL +1 DAY), 1104, 3, 1, 124, 442, NULL, 'WEB', 1,'100.10', DATE_ADD(CURDATE(), INTERVAL -1 MONTH), DATE_ADD(CURDATE(), INTERVAL -1 MONTH), DATE_ADD(CURDATE(), INTERVAL -1 MONTH)),
(3, DATE_ADD(DATE_ADD(CURDATE(),INTERVAL -2 MONTH), INTERVAL +1 DAY), 104, 1, 2, 124, 442, NULL, 'ANDROID', 1,'107.25', DATE_ADD(CURDATE(), INTERVAL -2 MONTH), DATE_ADD(CURDATE(), INTERVAL -2 MONTH), DATE_ADD(CURDATE(), INTERVAL -2 MONTH)), (3, DATE_ADD(DATE_ADD(CURDATE(),INTERVAL -2 MONTH), INTERVAL +1 DAY), 1104, 1, 2, 124, 442, NULL, 'ANDROID', 1,'107.25', DATE_ADD(CURDATE(), INTERVAL -2 MONTH), DATE_ADD(CURDATE(), INTERVAL -2 MONTH), DATE_ADD(CURDATE(), INTERVAL -2 MONTH)),
(4, DATE_ADD(DATE_ADD(CURDATE(),INTERVAL -3 MONTH), INTERVAL +1 DAY), 104, 1, 2, 124, 442, NULL, 'SALIX', 1,'10.01', DATE_ADD(CURDATE(), INTERVAL -3 MONTH), DATE_ADD(CURDATE(), INTERVAL -3 MONTH), DATE_ADD(CURDATE(), INTERVAL -3 MONTH)), (4, DATE_ADD(DATE_ADD(CURDATE(),INTERVAL -3 MONTH), INTERVAL +1 DAY), 1104, 1, 2, 124, 442, NULL, 'SALIX', 1,'10.01', DATE_ADD(CURDATE(), INTERVAL -3 MONTH), DATE_ADD(CURDATE(), INTERVAL -3 MONTH), DATE_ADD(CURDATE(), INTERVAL -3 MONTH)),
(5, DATE_ADD(DATE_ADD(CURDATE(),INTERVAL -4 MONTH), INTERVAL +1 DAY), 104, 1, 3, 124, 442, NULL, 'SALIX', 1,'10.01', DATE_ADD(CURDATE(), INTERVAL -4 MONTH), DATE_ADD(CURDATE(), INTERVAL -4 MONTH), DATE_ADD(CURDATE(), INTERVAL -4 MONTH)), (5, DATE_ADD(DATE_ADD(CURDATE(),INTERVAL -4 MONTH), INTERVAL +1 DAY), 1104, 1, 3, 124, 442, NULL, 'SALIX', 1,'10.01', DATE_ADD(CURDATE(), INTERVAL -4 MONTH), DATE_ADD(CURDATE(), INTERVAL -4 MONTH), DATE_ADD(CURDATE(), INTERVAL -4 MONTH)),
(6, DATE_ADD(DATE_ADD(CURDATE(),INTERVAL -1 MONTH), INTERVAL +1 DAY), 101, 1, 3, 1, 442, NULL, 'SALIX', 1,'10.01', DATE_ADD(CURDATE(), INTERVAL -1 MONTH), DATE_ADD(CURDATE(), INTERVAL -1 MONTH), DATE_ADD(CURDATE(), INTERVAL -1 MONTH)), (6, DATE_ADD(DATE_ADD(CURDATE(),INTERVAL -1 MONTH), INTERVAL +1 DAY), 1101, 1, 3, 1, 442, NULL, 'SALIX', 1,'10.01', DATE_ADD(CURDATE(), INTERVAL -1 MONTH), DATE_ADD(CURDATE(), INTERVAL -1 MONTH), DATE_ADD(CURDATE(), INTERVAL -1 MONTH)),
(7, DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 101, 2, 7, 1, 442, NULL, 'SALIX', 0,'10.01', CURDATE(), CURDATE(), CURDATE()), (7, DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 1101, 2, 7, 1, 442, NULL, 'SALIX', 0,'10.01', CURDATE(), CURDATE(), CURDATE()),
(8, DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 101, 2, 7, 121, 442, NULL, 'SALIX', 0,'123.53', CURDATE(), CURDATE(), CURDATE()), (8, DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 1101, 2, 7, 121, 442, NULL, 'SALIX', 0,'123.53', CURDATE(), CURDATE(), CURDATE()),
(9, DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 104, 2, 7, 124, 442, NULL, 'SALIX', 0,'10.01', CURDATE(), CURDATE(), CURDATE()), (9, DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 1104, 2, 7, 124, 442, NULL, 'SALIX', 0,'10.01', CURDATE(), CURDATE(), CURDATE()),
(10, DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 102, 3, 1, 2, 442, NULL, 'SALIX', 0,'10.01', CURDATE(), CURDATE(), CURDATE()), (10, DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 1102, 3, 1, 2, 442, NULL, 'SALIX', 0,'10.01', CURDATE(), CURDATE(), CURDATE()),
(11, DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 102, 2, 7, 122, 442, NULL, 'SALIX', 0,'60.90', CURDATE(), CURDATE(), CURDATE()), (11, DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 1102, 2, 7, 122, 442, NULL, 'SALIX', 0,'60.90', CURDATE(), CURDATE(), CURDATE()),
(12, DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 103, 3, 1, 3, 442, NULL, 'SALIX', 0,'72.60', CURDATE(), CURDATE(), CURDATE()), (12, DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 1103, 3, 1, 3, 442, NULL, 'SALIX', 0,'72.60', CURDATE(), CURDATE(), CURDATE()),
(13, DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 103, 1, 2, 123, 442, NULL, 'SALIX', 0,'72.60', CURDATE(), CURDATE(), CURDATE()), (13, DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 1103, 1, 2, 123, 442, NULL, 'SALIX', 0,'72.60', CURDATE(), CURDATE(), CURDATE()),
(14, DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 104, 1, 2, 4, 442, NULL, 'SALIX', 0,'72.60', CURDATE(), CURDATE(), CURDATE()), (14, DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 1104, 1, 2, 4, 442, NULL, 'SALIX', 0,'72.60', CURDATE(), CURDATE(), CURDATE()),
(15, DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 105, 1, 3, 125, 442, NULL, 'SALIX', 0,'72.60', CURDATE(), CURDATE(), CURDATE()), (15, DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 1105, 1, 3, 125, 442, NULL, 'SALIX', 0,'72.60', CURDATE(), CURDATE(), CURDATE()),
(16, DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 106, 2, 7, 126, 442, NULL, 'SALIX', 0,'155.89', CURDATE(), CURDATE(), CURDATE()), (16, DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 1106, 2, 7, 126, 442, NULL, 'SALIX', 0,'155.89', CURDATE(), CURDATE(), CURDATE()),
(17, DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 107, 1, 4, 127, 442, NULL, 'SALIX', 0,'72.60', CURDATE(), CURDATE(), CURDATE()), (17, DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 1107, 1, 4, 127, 442, NULL, 'SALIX', 0,'72.60', CURDATE(), CURDATE(), CURDATE()),
(18, DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 108, 1, 4, 128, 442, NULL, 'SALIX', 0,'72.60', CURDATE(), CURDATE(), CURDATE()), (18, DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 1108, 1, 4, 128, 442, NULL, 'SALIX', 0,'72.60', CURDATE(), CURDATE(), CURDATE()),
(19, DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 109, 1, 5, 129, 442, NULL, 'SALIX', 0,'16.50', CURDATE(), CURDATE(), CURDATE()), (19, DATE_ADD(CURDATE(), INTERVAL + 1 DAY), 1109, 1, 5, 129, 442, NULL, 'SALIX', 0,'16.50', CURDATE(), CURDATE(), CURDATE()),
(20, DATE_ADD(DATE_ADD(CURDATE(),INTERVAL +1 MONTH), INTERVAL +1 DAY), 109, 1, 5, 101, 442, NULL, 'SALIX', 0,'21.45', DATE_ADD(CURDATE(), INTERVAL +1 MONTH), DATE_ADD(CURDATE(), INTERVAL +1 MONTH), DATE_ADD(CURDATE(), INTERVAL +1 MONTH)), (20, DATE_ADD(DATE_ADD(CURDATE(),INTERVAL +1 MONTH), INTERVAL +1 DAY), 1109, 1, 5, 101, 442, NULL, 'SALIX', 0,'21.45', DATE_ADD(CURDATE(), INTERVAL +1 MONTH), DATE_ADD(CURDATE(), INTERVAL +1 MONTH), DATE_ADD(CURDATE(), INTERVAL +1 MONTH)),
(21, DATE_ADD(DATE_ADD(CURDATE(),INTERVAL +1 MONTH), INTERVAL +1 DAY), 109, 1, 5, 102, 442, NULL, 'SALIX', 0,'0.00', DATE_ADD(CURDATE(), INTERVAL +1 MONTH), DATE_ADD(CURDATE(), INTERVAL +1 MONTH), DATE_ADD(CURDATE(), INTERVAL +1 MONTH)), (21, DATE_ADD(DATE_ADD(CURDATE(),INTERVAL +1 MONTH), INTERVAL +1 DAY), 1109, 1, 5, 102, 442, NULL, 'SALIX', 0,'0.00', DATE_ADD(CURDATE(), INTERVAL +1 MONTH), DATE_ADD(CURDATE(), INTERVAL +1 MONTH), DATE_ADD(CURDATE(), INTERVAL +1 MONTH)),
(22, DATE_ADD(DATE_ADD(CURDATE(),INTERVAL +1 MONTH), INTERVAL +1 DAY), 109, 1, 5, 103, 442, NULL, 'SALIX', 0,'148.50', DATE_ADD(CURDATE(), INTERVAL +1 MONTH), DATE_ADD(CURDATE(), INTERVAL +1 MONTH), DATE_ADD(CURDATE(), INTERVAL +1 MONTH)); (22, DATE_ADD(DATE_ADD(CURDATE(),INTERVAL +1 MONTH), INTERVAL +1 DAY), 1109, 1, 5, 103, 442, NULL, 'SALIX', 0,'148.50', DATE_ADD(CURDATE(), INTERVAL +1 MONTH), DATE_ADD(CURDATE(), INTERVAL +1 MONTH), DATE_ADD(CURDATE(), INTERVAL +1 MONTH));
INSERT INTO `hedera`.`orderRow`(`id`, `orderFk`, `itemFk`, `warehouseFk`, `shipment`, `amount`, `price`, `rate`, `created`, `saleFk`) INSERT INTO `hedera`.`orderRow`(`id`, `orderFk`, `itemFk`, `warehouseFk`, `shipment`, `amount`, `price`, `rate`, `created`, `saleFk`)
VALUES VALUES
@ -1604,15 +1628,15 @@ INSERT INTO `hedera`.`visitAccess`(`id`, `agentFk`, `stamp`)
INSERT INTO `hedera`.`visitUser`(`id`, `accessFk`, `userFk`, `stamp`) INSERT INTO `hedera`.`visitUser`(`id`, `accessFk`, `userFk`, `stamp`)
VALUES VALUES
(1, 1, 101, CURDATE()), (1, 1, 1101, CURDATE()),
(2, 2, 101, CURDATE()), (2, 2, 1101, CURDATE()),
(3, 3, 101, CURDATE()), (3, 3, 1101, CURDATE()),
(4, 4, 102, CURDATE()), (4, 4, 1102, CURDATE()),
(5, 5, 102, CURDATE()), (5, 5, 1102, CURDATE()),
(6, 6, 102, CURDATE()), (6, 6, 1102, CURDATE()),
(7, 7, 103, CURDATE()), (7, 7, 1103, CURDATE()),
(8, 8, 103, CURDATE()), (8, 8, 1103, CURDATE()),
(9, 9, 103, CURDATE()); (9, 9, 1103, CURDATE());
INSERT INTO `hedera`.`userSession`(`created`, `lastUpdate`, `ssid`, `data`, `userVisitFk`) INSERT INTO `hedera`.`userSession`(`created`, `lastUpdate`, `ssid`, `data`, `userVisitFk`)
VALUES VALUES
@ -1628,10 +1652,10 @@ INSERT INTO `hedera`.`userSession`(`created`, `lastUpdate`, `ssid`, `data`, `use
INSERT INTO `vn`.`clientContact`(`id`, `clientFk`, `name`, `phone`) INSERT INTO `vn`.`clientContact`(`id`, `clientFk`, `name`, `phone`)
VALUES VALUES
(1, 101, 'contact 1', 666777888), (1, 1101, 'contact 1', 666777888),
(2, 101, 'contact 2', 111222333), (2, 1101, 'contact 2', 111222333),
(3, 101, 'contact 3', 222333444), (3, 1101, 'contact 3', 222333444),
(4, 102, 'contact 1', 876543219); (4, 1102, 'contact 1', 876543219);
INSERT INTO `vn`.`workerManaExcluded`(`workerFk`) INSERT INTO `vn`.`workerManaExcluded`(`workerFk`)
VALUES VALUES
@ -1648,11 +1672,11 @@ call vn.manaSpellersRequery(18);
INSERT INTO `vn`.`clientSample`(`id`, `clientFk`, `typeFk`, `created`, `workerFk`, `userFk`, `companyFk`) INSERT INTO `vn`.`clientSample`(`id`, `clientFk`, `typeFk`, `created`, `workerFk`, `userFk`, `companyFk`)
VALUES VALUES
(1, 101, 1, CURDATE(), 18, 18, 442), (1, 1101, 1, CURDATE(), 18, 18, 442),
(2, 101, 1, CURDATE(), 18, 18, 442), (2, 1101, 1, CURDATE(), 18, 18, 442),
(3, 101, 2, CURDATE(), 18, 18, 442), (3, 1101, 2, CURDATE(), 18, 18, 442),
(4, 102, 2, CURDATE(), 18, 18, 567), (4, 1102, 2, CURDATE(), 18, 18, 567),
(5, 102, 3, CURDATE(), 19, 19, 567); (5, 1102, 3, CURDATE(), 19, 19, 567);
INSERT INTO `vn`.`claimState`(`id`, `code`, `description`, `roleFk`, `priority`) INSERT INTO `vn`.`claimState`(`id`, `code`, `description`, `roleFk`, `priority`)
VALUES VALUES
@ -1666,10 +1690,10 @@ INSERT INTO `vn`.`claimState`(`id`, `code`, `description`, `roleFk`, `priority`)
INSERT INTO `vn`.`claim`(`id`, `ticketCreated`, `claimStateFk`, `observation`, `clientFk`, `workerFk`, `responsibility`, `isChargedToMana`, `created` ) INSERT INTO `vn`.`claim`(`id`, `ticketCreated`, `claimStateFk`, `observation`, `clientFk`, `workerFk`, `responsibility`, `isChargedToMana`, `created` )
VALUES VALUES
(1, CURDATE(), 1, 'observation one', 101, 18, 3, 0, CURDATE()), (1, CURDATE(), 1, 'observation one', 1101, 18, 3, 0, CURDATE()),
(2, CURDATE(), 2, 'observation two', 101, 18, 3, 0, CURDATE()), (2, CURDATE(), 2, 'observation two', 1101, 18, 3, 0, CURDATE()),
(3, CURDATE(), 3, 'observation three', 101, 18, 1, 1, CURDATE()), (3, CURDATE(), 3, 'observation three', 1101, 18, 1, 1, CURDATE()),
(4, CURDATE(), 3, 'observation four', 104, 18, 5, 0, CURDATE()); (4, CURDATE(), 3, 'observation four', 1104, 18, 5, 0, CURDATE());
INSERT INTO `vn`.`claimBeginning`(`id`, `claimFk`, `saleFk`, `quantity`) INSERT INTO `vn`.`claimBeginning`(`id`, `claimFk`, `saleFk`, `quantity`)
VALUES VALUES
@ -1706,12 +1730,12 @@ INSERT INTO `hedera`.`tpvMerchant`(`id`, `description`, `companyFk`, `bankFk`, `
INSERT INTO `hedera`.`tpvTransaction`(`id`,`merchantFk`, `clientFk`,`receiptFk`, `amount`, `response`, `errorCode`, `status`, `created`) INSERT INTO `hedera`.`tpvTransaction`(`id`,`merchantFk`, `clientFk`,`receiptFk`, `amount`, `response`, `errorCode`, `status`, `created`)
VALUES VALUES
(1, 1, 101, NULL, 2000, NULL, 'SIS0042', 'ok', CURDATE()), (1, 1, 1101, NULL, 2000, NULL, 'SIS0042', 'ok', CURDATE()),
(2, 1, 101, NULL, 1000, NULL, 'SIS0051', 'started', CURDATE()), (2, 1, 1101, NULL, 1000, NULL, 'SIS0051', 'started', CURDATE()),
(3, 2, 101, NULL, 7268, NULL, NULL, 'ok', CURDATE()), (3, 2, 1101, NULL, 7268, NULL, NULL, 'ok', CURDATE()),
(4, 2, 101, NULL, 4698, NULL, NULL, 'started', CURDATE()), (4, 2, 1101, NULL, 4698, NULL, NULL, 'started', CURDATE()),
(5, 1, 104, NULL, 2000, NULL, 'SIS0043', 'ok', CURDATE()), (5, 1, 1104, NULL, 2000, NULL, 'SIS0043', 'ok', CURDATE()),
(6, 2, 104, NULL, 4000, NULL, 'SIS0044', 'started', CURDATE()); (6, 2, 1104, NULL, 4000, NULL, 'SIS0044', 'started', CURDATE());
INSERT INTO `vn`.`orderTicket`(`orderFk`, `ticketFk`) INSERT INTO `vn`.`orderTicket`(`orderFk`, `ticketFk`)
VALUES VALUES
@ -1747,20 +1771,20 @@ INSERT INTO `vn`.`userConfig` (`userFk`, `warehouseFk`, `companyFk`)
INSERT INTO `vn`.`receipt`(`id`, `invoiceFk`, `amountPaid`, `amountUnpaid`, `payed`, `workerFk`, `bankFk`, `clientFk`, `created`, `companyFk`, `isConciliate`) INSERT INTO `vn`.`receipt`(`id`, `invoiceFk`, `amountPaid`, `amountUnpaid`, `payed`, `workerFk`, `bankFk`, `clientFk`, `created`, `companyFk`, `isConciliate`)
VALUES VALUES
(1, 'Cobro web', 100.50, 0.00, CURDATE(), 9, 1, 101, CURDATE(), 442, 1), (1, 'Cobro web', 100.50, 0.00, CURDATE(), 9, 1, 1101, CURDATE(), 442, 1),
(2, 'Cobro web', 200.50, 0.00, DATE_ADD(CURDATE(), INTERVAL -5 DAY), 9, 1, 101, DATE_ADD(CURDATE(), INTERVAL -5 DAY), 442, 1), (2, 'Cobro web', 200.50, 0.00, DATE_ADD(CURDATE(), INTERVAL -5 DAY), 9, 1, 1101, DATE_ADD(CURDATE(), INTERVAL -5 DAY), 442, 1),
(3, 'Cobro en efectivo', 300.00, 100.00, DATE_ADD(CURDATE(), INTERVAL -10 DAY), 9, 1, 102, DATE_ADD(CURDATE(), INTERVAL -10 DAY), 442, 0), (3, 'Cobro en efectivo', 300.00, 100.00, DATE_ADD(CURDATE(), INTERVAL -10 DAY), 9, 1, 1102, DATE_ADD(CURDATE(), INTERVAL -10 DAY), 442, 0),
(4, 'Cobro en efectivo', 400.00, -50.00, DATE_ADD(CURDATE(), INTERVAL -15 DAY), 9, 1, 103, DATE_ADD(CURDATE(), INTERVAL -15 DAY), 442, 0); (4, 'Cobro en efectivo', 400.00, -50.00, DATE_ADD(CURDATE(), INTERVAL -15 DAY), 9, 1, 1103, DATE_ADD(CURDATE(), INTERVAL -15 DAY), 442, 0);
INSERT INTO `vn`.`workerTeam`(`id`, `team`, `workerFk`) INSERT INTO `vn`.`workerTeam`(`id`, `team`, `workerFk`)
VALUES VALUES
(1, 1, 9), (1, 1, 9),
(2, 2, 18), (2, 2, 18),
(3, 2, 19), (3, 2, 19),
(4, 3, 101), (4, 3, 1101),
(5, 3, 102), (5, 3, 1102),
(6, 4, 103), (6, 4, 1103),
(7, 4, 104); (7, 4, 1104);
INSERT INTO `vn`.`ticketRequest`(`id`, `description`, `requesterFk`, `attenderFk`, `quantity`, `itemFk`, `price`, `isOk`, `saleFk`, `ticketFk`, `created`) INSERT INTO `vn`.`ticketRequest`(`id`, `description`, `requesterFk`, `attenderFk`, `quantity`, `itemFk`, `price`, `isOk`, `saleFk`, `ticketFk`, `created`)
VALUES VALUES
@ -1819,7 +1843,7 @@ UPDATE `postgresql`.`business_labour` bl
JOIN `postgresql`.`profile` pr ON pr.profile_id = b.client_id JOIN `postgresql`.`profile` pr ON pr.profile_id = b.client_id
JOIN `postgresql`.`person` p ON p.person_id = pr.person_id JOIN `postgresql`.`person` p ON p.person_id = pr.person_id
SET bl.`professional_category_id` = 31 SET bl.`professional_category_id` = 31
WHERE p.`Id_trabajador` = 110; WHERE p.`Id_trabajador` = 1110;
UPDATE `postgresql`.`business_labour` bl UPDATE `postgresql`.`business_labour` bl
SET bl.`department_id` = 43 SET bl.`department_id` = 43
@ -1832,8 +1856,8 @@ INSERT INTO `postgresql`.`media`(`media_id`, `media_type_id`, `value`, `sort`)
INSERT INTO `postgresql`.`profile_media`(`profile_media_id`, `profile_id`, `media_id`) INSERT INTO `postgresql`.`profile_media`(`profile_media_id`, `profile_id`, `media_id`)
VALUES VALUES
(1, 106, 1), (1, 1106, 1),
(2, 107, 2); (2, 1107, 2);
INSERT INTO `vn`.`workCenter` (`id`, `name`, `warehouseFk`) INSERT INTO `vn`.`workCenter` (`id`, `name`, `warehouseFk`)
VALUES VALUES
@ -1857,20 +1881,20 @@ INSERT INTO `postgresql`.`calendar_state` (`calendar_state_id`, `type`, `rgb`, `
INSERT INTO `postgresql`.`calendar_employee` (`business_id`, `calendar_state_id`, `date`) INSERT INTO `postgresql`.`calendar_employee` (`business_id`, `calendar_state_id`, `date`)
VALUES VALUES
(106, 1, IF(MONTH(CURDATE()) = 12 AND DAY(CURDATE()) > 10, DATE_ADD(CURDATE(), INTERVAL -10 DAY), DATE_ADD(CURDATE(), INTERVAL 10 DAY))), (1106, 1, IF(MONTH(CURDATE()) = 12 AND DAY(CURDATE()) > 10, DATE_ADD(CURDATE(), INTERVAL -10 DAY), DATE_ADD(CURDATE(), INTERVAL 10 DAY))),
(106, 1, IF(MONTH(CURDATE()) = 12 AND DAY(CURDATE()) > 10, DATE_ADD(CURDATE(), INTERVAL -11 DAY), DATE_ADD(CURDATE(), INTERVAL 11 DAY))), (1106, 1, IF(MONTH(CURDATE()) = 12 AND DAY(CURDATE()) > 10, DATE_ADD(CURDATE(), INTERVAL -11 DAY), DATE_ADD(CURDATE(), INTERVAL 11 DAY))),
(106, 1, IF(MONTH(CURDATE()) = 12 AND DAY(CURDATE()) > 10, DATE_ADD(CURDATE(), INTERVAL -12 DAY), DATE_ADD(CURDATE(), INTERVAL 12 DAY))), (1106, 1, IF(MONTH(CURDATE()) = 12 AND DAY(CURDATE()) > 10, DATE_ADD(CURDATE(), INTERVAL -12 DAY), DATE_ADD(CURDATE(), INTERVAL 12 DAY))),
(106, 1, IF(MONTH(CURDATE()) = 12 AND DAY(CURDATE()) > 10, DATE_ADD(CURDATE(), INTERVAL -20 DAY), DATE_ADD(CURDATE(), INTERVAL 20 DAY))), (1106, 1, IF(MONTH(CURDATE()) = 12 AND DAY(CURDATE()) > 10, DATE_ADD(CURDATE(), INTERVAL -20 DAY), DATE_ADD(CURDATE(), INTERVAL 20 DAY))),
(106, 2, IF(MONTH(CURDATE()) >= 1 AND DAY(CURDATE()) > 20, DATE_ADD(CURDATE(), INTERVAL -13 DAY), DATE_ADD(CURDATE(), INTERVAL 8 DAY))), (1106, 2, IF(MONTH(CURDATE()) >= 1 AND DAY(CURDATE()) > 20, DATE_ADD(CURDATE(), INTERVAL -13 DAY), DATE_ADD(CURDATE(), INTERVAL 8 DAY))),
(106, 1, IF(MONTH(CURDATE()) >= 1 AND DAY(CURDATE()) > 20, DATE_ADD(CURDATE(), INTERVAL -14 DAY), DATE_ADD(CURDATE(), INTERVAL 9 DAY))), (1106, 1, IF(MONTH(CURDATE()) >= 1 AND DAY(CURDATE()) > 20, DATE_ADD(CURDATE(), INTERVAL -14 DAY), DATE_ADD(CURDATE(), INTERVAL 9 DAY))),
(106, 2, IF(MONTH(CURDATE()) >= 1 AND DAY(CURDATE()) > 20, DATE_ADD(CURDATE(), INTERVAL -15 DAY), DATE_ADD(CURDATE(), INTERVAL 7 DAY))), (1106, 2, IF(MONTH(CURDATE()) >= 1 AND DAY(CURDATE()) > 20, DATE_ADD(CURDATE(), INTERVAL -15 DAY), DATE_ADD(CURDATE(), INTERVAL 7 DAY))),
(107, 1, IF(MONTH(CURDATE()) = 12 AND DAY(CURDATE()) > 10, DATE_ADD(CURDATE(), INTERVAL -10 DAY), DATE_ADD(CURDATE(), INTERVAL 10 DAY))), (1107, 1, IF(MONTH(CURDATE()) = 12 AND DAY(CURDATE()) > 10, DATE_ADD(CURDATE(), INTERVAL -10 DAY), DATE_ADD(CURDATE(), INTERVAL 10 DAY))),
(107, 1, IF(MONTH(CURDATE()) = 12 AND DAY(CURDATE()) > 10, DATE_ADD(CURDATE(), INTERVAL -11 DAY), DATE_ADD(CURDATE(), INTERVAL 11 DAY))), (1107, 1, IF(MONTH(CURDATE()) = 12 AND DAY(CURDATE()) > 10, DATE_ADD(CURDATE(), INTERVAL -11 DAY), DATE_ADD(CURDATE(), INTERVAL 11 DAY))),
(107, 1, IF(MONTH(CURDATE()) = 12 AND DAY(CURDATE()) > 10, DATE_ADD(CURDATE(), INTERVAL -12 DAY), DATE_ADD(CURDATE(), INTERVAL 12 DAY))), (1107, 1, IF(MONTH(CURDATE()) = 12 AND DAY(CURDATE()) > 10, DATE_ADD(CURDATE(), INTERVAL -12 DAY), DATE_ADD(CURDATE(), INTERVAL 12 DAY))),
(107, 1, IF(MONTH(CURDATE()) = 12 AND DAY(CURDATE()) > 10, DATE_ADD(CURDATE(), INTERVAL -20 DAY), DATE_ADD(CURDATE(), INTERVAL 20 DAY))), (1107, 1, IF(MONTH(CURDATE()) = 12 AND DAY(CURDATE()) > 10, DATE_ADD(CURDATE(), INTERVAL -20 DAY), DATE_ADD(CURDATE(), INTERVAL 20 DAY))),
(107, 2, IF(MONTH(CURDATE()) >= 1 AND DAY(CURDATE()) > 20, DATE_ADD(CURDATE(), INTERVAL -13 DAY), DATE_ADD(CURDATE(), INTERVAL 8 DAY))), (1107, 2, IF(MONTH(CURDATE()) >= 1 AND DAY(CURDATE()) > 20, DATE_ADD(CURDATE(), INTERVAL -13 DAY), DATE_ADD(CURDATE(), INTERVAL 8 DAY))),
(107, 1, IF(MONTH(CURDATE()) >= 1 AND DAY(CURDATE()) > 20, DATE_ADD(CURDATE(), INTERVAL -14 DAY), DATE_ADD(CURDATE(), INTERVAL 9 DAY))), (1107, 1, IF(MONTH(CURDATE()) >= 1 AND DAY(CURDATE()) > 20, DATE_ADD(CURDATE(), INTERVAL -14 DAY), DATE_ADD(CURDATE(), INTERVAL 9 DAY))),
(107, 2, IF(MONTH(CURDATE()) >= 1 AND DAY(CURDATE()) > 20, DATE_ADD(CURDATE(), INTERVAL -15 DAY), DATE_ADD(CURDATE(), INTERVAL 7 DAY))); (1107, 2, IF(MONTH(CURDATE()) >= 1 AND DAY(CURDATE()) > 20, DATE_ADD(CURDATE(), INTERVAL -15 DAY), DATE_ADD(CURDATE(), INTERVAL 7 DAY)));
INSERT INTO `vn`.`smsConfig` (`id`, `uri`, `title`) INSERT INTO `vn`.`smsConfig` (`id`, `uri`, `title`)
VALUES VALUES
@ -1878,8 +1902,8 @@ INSERT INTO `vn`.`smsConfig` (`id`, `uri`, `title`)
INSERT INTO `vn`.`sharingClient`(`id`, `workerFk`, `started`, `ended`, `clientFk`) INSERT INTO `vn`.`sharingClient`(`id`, `workerFk`, `started`, `ended`, `clientFk`)
VALUES VALUES
(1, 19, DATE_ADD(CURDATE(), INTERVAL -5 DAY), DATE_ADD(CURDATE(), INTERVAL +15 DAY), 101), (1, 19, DATE_ADD(CURDATE(), INTERVAL -5 DAY), DATE_ADD(CURDATE(), INTERVAL +15 DAY), 1101),
(2, 18, DATE_ADD(CURDATE(), INTERVAL -5 DAY), DATE_ADD(CURDATE(), INTERVAL +15 DAY), 106); (2, 18, DATE_ADD(CURDATE(), INTERVAL -5 DAY), DATE_ADD(CURDATE(), INTERVAL +15 DAY), 1106);
INSERT INTO `vn`.`sharingCart`(`id`, `workerFk`, `started`, `ended`, `workerSubstitute`, `created`) INSERT INTO `vn`.`sharingCart`(`id`, `workerFk`, `started`, `ended`, `workerSubstitute`, `created`)
VALUES VALUES
@ -1921,7 +1945,7 @@ INSERT INTO `vn`.`zoneIncluded` (`zoneFk`, `geoFk`, `isIncluded`)
(8, 4, 0), (8, 4, 0),
(8, 5, 0), (8, 5, 0),
(8, 1, 1), (8, 1, 1),
(10, 10, 1); (10, 14, 1);
INSERT INTO `vn`.`zoneEvent`(`zoneFk`, `type`, `dated`) INSERT INTO `vn`.`zoneEvent`(`zoneFk`, `type`, `dated`)
VALUES VALUES
@ -2138,10 +2162,10 @@ INSERT INTO `vn`.`zoneEvent`(`zoneFk`, `type`, `weekDays`)
INSERT INTO `vn`.`workerTimeControl`(`userFk`, `timed`, `manual`, `direction`) INSERT INTO `vn`.`workerTimeControl`(`userFk`, `timed`, `manual`, `direction`)
VALUES VALUES
(106, CONCAT(CURDATE(), ' 07:00'), TRUE, 'in'), (1106, CONCAT(CURDATE(), ' 07:00'), TRUE, 'in'),
(106, CONCAT(CURDATE(), ' 10:00'), TRUE, 'middle'), (1106, CONCAT(CURDATE(), ' 10:00'), TRUE, 'middle'),
(106, CONCAT(CURDATE(), ' 10:10'), TRUE, 'middle'), (1106, CONCAT(CURDATE(), ' 10:10'), TRUE, 'middle'),
(106, CONCAT(CURDATE(), ' 15:00'), TRUE, 'out'); (1106, CONCAT(CURDATE(), ' 15:00'), TRUE, 'out');
INSERT INTO `vn`.`dmsType`(`id`, `name`, `path`, `readRoleFk`, `writeRoleFk`, `code`) INSERT INTO `vn`.`dmsType`(`id`, `name`, `path`, `readRoleFk`, `writeRoleFk`, `code`)
VALUES VALUES
@ -2182,13 +2206,13 @@ INSERT INTO `vn`.`ticketDms`(`ticketFk`, `dmsFk`)
INSERT INTO `vn`.`clientDms`(`clientFk`, `dmsFk`) INSERT INTO `vn`.`clientDms`(`clientFk`, `dmsFk`)
VALUES VALUES
(104, 2), (1104, 2),
(104, 3); (1104, 3);
INSERT INTO `vn`.`workerDocument`(`id`, `worker`, `document`,`isReadableByWorker`) INSERT INTO `vn`.`workerDocument`(`id`, `worker`, `document`,`isReadableByWorker`)
VALUES VALUES
(1, 106, 4, TRUE), (1, 1106, 4, TRUE),
(2, 107, 3, FALSE); (2, 1107, 3, FALSE);
INSERT INTO `vn`.`device` (`sn`, `model`, `userFk`) INSERT INTO `vn`.`device` (`sn`, `model`, `userFk`)
VALUES VALUES
@ -2206,6 +2230,11 @@ INSERT INTO `vn`.`workerTimeControlParams` (`id`, `dayBreak`, `weekBreak`, `week
INSERT IGNORE INTO `vn`.`greugeConfig` (`id`, `freightPickUpPrice`) VALUES ('1', '11'); INSERT IGNORE INTO `vn`.`greugeConfig` (`id`, `freightPickUpPrice`) VALUES ('1', '11');
INSERT INTO `vn`.`temperature`(`code`, `name`, `description`)
VALUES
('WARM', 'Warm', 'Warm'),
('COOL', 'Cool', 'Cool');
INSERT INTO `vn`.`thermograph`(`id`, `model`) INSERT INTO `vn`.`thermograph`(`id`, `model`)
VALUES VALUES
('TMM190901395', 'TEMPMATE'), ('TMM190901395', 'TEMPMATE'),
@ -2213,7 +2242,8 @@ INSERT INTO `vn`.`thermograph`(`id`, `model`)
('TZ1905012010', 'DISPOSABLE'), ('TZ1905012010', 'DISPOSABLE'),
('138350-0', 'DISPOSABLE'); ('138350-0', 'DISPOSABLE');
INSERT INTO `vn`.`travelThermograph`(`thermographFk`, `created`, `warehouseFk`, `travelFk`, `temperature`, `result`, `dmsFk`)
INSERT INTO `vn`.`travelThermograph`(`thermographFk`, `created`, `warehouseFk`, `travelFk`, `temperatureFk`, `result`, `dmsFk`)
VALUES VALUES
('TMM190901395', CURDATE(), 1, 1, 'WARM', 'Ok', NULL), ('TMM190901395', CURDATE(), 1, 1, 'WARM', 'Ok', NULL),
('TL.BBA85422', DATE_ADD(CURDATE(), INTERVAL -1 MONTH), 2, 2, 'COOL', 'Ok', NULL), ('TL.BBA85422', DATE_ADD(CURDATE(), INTERVAL -1 MONTH), 2, 2, 'COOL', 'Ok', NULL),
@ -2282,7 +2312,7 @@ INSERT INTO `vn`.`awb` (id, code, package, weight, created, amount, transitoryFk
(9, '99610289193', 302, 2972, CURDATE(), 3871, 442, 1), (9, '99610289193', 302, 2972, CURDATE(), 3871, 442, 1),
(10, '07546500856', 185, 2364, CURDATE(), 5321, 442, 1); (10, '07546500856', 185, 2364, CURDATE(), 5321, 442, 1);
REPLACE INTO vn.dua (id, code, awbFk, issued, operated, booked, bookEntried, gestdocFk, customsValue, companyFk) INSERT INTO `vn`.`dua` (id, code, awbFk, issued, operated, booked, bookEntried, gestdocFk, customsValue, companyFk)
VALUES VALUES
(1, '19ES0028013A481523', 1, CURDATE(), CURDATE(), CURDATE(), CURDATE(), 1, 11276.95, 442), (1, '19ES0028013A481523', 1, CURDATE(), CURDATE(), CURDATE(), CURDATE(), 1, 11276.95, 442),
(2, '21ES00280136115760', 2, CURDATE(), CURDATE(), CURDATE(), CURDATE(), 2, 1376.20, 442), (2, '21ES00280136115760', 2, CURDATE(), CURDATE(), CURDATE(), CURDATE(), 2, 1376.20, 442),
@ -2291,9 +2321,9 @@ REPLACE INTO vn.dua (id, code, awbFk, issued, operated, booked, bookEntried, ges
(5, '19ES00280132022070', 5, CURDATE(), CURDATE(), CURDATE(), CURDATE(), 2, 10012.49, 442), (5, '19ES00280132022070', 5, CURDATE(), CURDATE(), CURDATE(), CURDATE(), 2, 10012.49, 442),
(6, '19ES00280132032308', 6, CURDATE(), CURDATE(), CURDATE(), CURDATE(), 2, 19914.25, 442), (6, '19ES00280132032308', 6, CURDATE(), CURDATE(), CURDATE(), CURDATE(), 2, 19914.25, 442),
(7, '19ES00280132025489', 7, DATE_ADD(CURDATE(), INTERVAL -1 MONTH), CURDATE(), CURDATE(), CURDATE(), 2, 1934.06, 442), (7, '19ES00280132025489', 7, DATE_ADD(CURDATE(), INTERVAL -1 MONTH), CURDATE(), CURDATE(), CURDATE(), 2, 1934.06, 442),
(8, '19ES00280132025489', 8, DATE_ADD(CURDATE(), INTERVAL -1 MONTH), CURDATE(), CURDATE(), CURDATE(), 2, 3618.52, 442), (8, '19ES00280132025490', 8, DATE_ADD(CURDATE(), INTERVAL -1 MONTH), CURDATE(), CURDATE(), CURDATE(), 2, 3618.52, 442),
(9, '19ES00280132025489', 9, DATE_ADD(CURDATE(), INTERVAL -1 MONTH), CURDATE(), CURDATE(), CURDATE(), 2, 7126.23, 442), (9, '19ES00280132025491', 9, DATE_ADD(CURDATE(), INTERVAL -1 MONTH), CURDATE(), CURDATE(), CURDATE(), 2, 7126.23, 442),
(10, '19ES00280132025489', 10, DATE_ADD(CURDATE(), INTERVAL -1 MONTH), CURDATE(), CURDATE(), CURDATE(), 2, 4631.45, 442); (10, '19ES00280132025492', 10, DATE_ADD(CURDATE(), INTERVAL -1 MONTH), CURDATE(), CURDATE(), CURDATE(), 2, 4631.45, 442);
REPLACE INTO `vn`.`invoiceIn`(`id`, `serialNumber`,`serial`, `supplierFk`, `issued`, `created`, `supplierRef`, `isBooked`, `companyFk`, `docFk`) REPLACE INTO `vn`.`invoiceIn`(`id`, `serialNumber`,`serial`, `supplierFk`, `issued`, `created`, `supplierRef`, `isBooked`, `companyFk`, `docFk`)
VALUES VALUES
@ -2335,6 +2365,21 @@ INSERT INTO `vn`.`duaInvoiceIn`(`id`, `duaFk`, `invoiceInFk`)
(9, 9, 9), (9, 9, 9),
(10, 10, 10); (10, 10, 10);
INSERT INTO `vn`.`invoiceInTax` (`invoiceInFk`, `taxableBase`, `expenceFk`, `foreignValue`, `taxTypeSageFk`, `transactionTypeSageFk`)
VALUES
(1, 99.99, '2000000000', null, null, null),
(2, 999.99, '2000000000', null, null, null),
(3, 1000.50, '2000000000', null, null, null),
(4, 0.50, '2000000000', null, null, null),
(5, 150.50, '2000000000', null, null, null),
(1, 252.25, '4751000000', NULL, 7, 61),
(2, 223.17, '6210000567', NULL, 8, 20),
(3, 95.60, '7001000000', NULL, 8, 35),
(4, 446.63, '7001000000', NULL, 6, 61),
(5, 64.23, '6210000567', NULL, 8, 20),
(6, 29.95, '7001000000', NULL, 7, 20),
(7, 58.64, '6210000567', NULL, 8, 20);
INSERT INTO `vn`.`ticketRecalc`(`ticketFk`) INSERT INTO `vn`.`ticketRecalc`(`ticketFk`)
SELECT `id` SELECT `id`
FROM `vn`.`ticket` t FROM `vn`.`ticket` t
@ -2370,3 +2415,5 @@ INSERT INTO `vn`.`expeditionScan` (`id`, `expeditionFk`, `scanned`, `palletFk`)
(8, 8, CURDATE(), 1), (8, 8, CURDATE(), 1),
(9, 9, CURDATE(), 1), (9, 9, CURDATE(), 1),
(10, 10, CURDATE(), 1); (10, 10, CURDATE(), 1);
CALL `cache`.`last_buy_refresh`(FALSE);

File diff suppressed because it is too large Load Diff

View File

@ -40,6 +40,7 @@ TABLES=(
vn vn
alertLevel alertLevel
bookingPlanner bookingPlanner
businessType
cplusInvoiceType472 cplusInvoiceType472
cplusInvoiceType477 cplusInvoiceType477
cplusRectificationType cplusRectificationType

View File

@ -3,22 +3,18 @@ const ParameterizedSQL = require('loopback-connector').ParameterizedSQL;
describe('last_buy_refresh()', () => { describe('last_buy_refresh()', () => {
it(`should store some data on cache.last_buy`, async() => { it(`should store some data on cache.last_buy`, async() => {
let stmts = []; const stmts = [];
let stmt;
stmts.push('START TRANSACTION'); stmts.push('START TRANSACTION');
stmt = new ParameterizedSQL('CALL cache.last_buy_refresh(true)'); const lastBuyTableIndex = stmts.push(`SELECT * FROM cache.last_buy ORDER BY item_id ASC`) - 1;
stmts.push(stmt);
let lastBuyTableIndex = stmts.push(`SELECT * FROM cache.last_buy ORDER BY item_id ASC`) - 1;
stmts.push('ROLLBACK'); stmts.push('ROLLBACK');
let sql = ParameterizedSQL.join(stmts, ';'); const sql = ParameterizedSQL.join(stmts, ';');
let result = await app.models.Ticket.rawStmt(sql); const result = await app.models.Ticket.rawStmt(sql);
let lastBuyTable = result[lastBuyTableIndex]; const lastBuyTable = result[lastBuyTableIndex];
expect(lastBuyTable.length).toEqual(12); expect(lastBuyTable.length).toEqual(12);

View File

@ -10,7 +10,7 @@ describe('ticket ticketCalculateClon()', () => {
stmts.push('START TRANSACTION'); stmts.push('START TRANSACTION');
let params = { let params = {
clientFk: 101, clientFk: 1101,
shipped: today, shipped: today,
warehouseFk: 1, warehouseFk: 1,
companyFk: 442, companyFk: 442,
@ -59,7 +59,7 @@ describe('ticket ticketCalculateClon()', () => {
stmts.push('START TRANSACTION'); stmts.push('START TRANSACTION');
let params = { let params = {
clientFk: 101, clientFk: 1101,
shipped: today, shipped: today,
warehouseFk: 1, warehouseFk: 1,
companyFk: 442, companyFk: 442,

View File

@ -10,7 +10,7 @@ describe('ticket ticketCreateWithUser()', () => {
stmts.push('START TRANSACTION'); stmts.push('START TRANSACTION');
let params = { let params = {
clientFk: 101, clientFk: 1101,
shipped: today, shipped: today,
warehouseFk: 1, warehouseFk: 1,
companyFk: 442, companyFk: 442,
@ -59,7 +59,7 @@ describe('ticket ticketCreateWithUser()', () => {
stmts.push('START TRANSACTION'); stmts.push('START TRANSACTION');
let params = { let params = {
clientFk: 101, clientFk: 1101,
shipped: today, shipped: today,
warehouseFk: 1, warehouseFk: 1,
companyFk: 442, companyFk: 442,
@ -109,7 +109,7 @@ describe('ticket ticketCreateWithUser()', () => {
stmts.push('START TRANSACTION'); stmts.push('START TRANSACTION');
let params = { let params = {
clientFk: 101, clientFk: 1101,
shipped: today, shipped: today,
warehouseFk: 1, warehouseFk: 1,
companyFk: 442, companyFk: 442,
@ -156,7 +156,7 @@ describe('ticket ticketCreateWithUser()', () => {
stmts.push('START TRANSACTION'); stmts.push('START TRANSACTION');
let params = { let params = {
clientFk: 101, clientFk: 1101,
shipped: today, shipped: today,
warehouseFk: 1, warehouseFk: 1,
companyFk: 442, companyFk: 442,

View File

@ -9,7 +9,7 @@ xdescribe('ticket_componentMakeUpdate()', () => {
let params = { let params = {
ticketId: 11, ticketId: 11,
clientId: 102, clientId: 1102,
agencyModeId: 2, agencyModeId: 2,
addressId: 122, addressId: 122,
zoneId: 3, zoneId: 3,
@ -68,7 +68,7 @@ xdescribe('ticket_componentMakeUpdate()', () => {
let params = { let params = {
ticketId: 11, ticketId: 11,
clientId: 102, clientId: 1102,
agencyModeId: 2, agencyModeId: 2,
addressId: 122, addressId: 122,
zoneId: 3, zoneId: 3,

View File

@ -14,7 +14,7 @@ describe('timeBusiness_calculateByUser()', () => {
stmts.push('START TRANSACTION'); stmts.push('START TRANSACTION');
let params = { let params = {
workerID: 106, workerID: 1106,
start: start, start: start,
end: end end: end
}; };

View File

@ -23,7 +23,7 @@ describe('timeControl_calculateByUser()', () => {
`); `);
let params = { let params = {
workerID: 106, workerID: 1106,
start: start, start: start,
end: end end: end
}; };
@ -71,7 +71,7 @@ describe('timeControl_calculateByUser()', () => {
tmp.timeBusinessCalculate tmp.timeBusinessCalculate
`); `);
const workerID = 107; const workerID = 1107;
stmt = new ParameterizedSQL(` stmt = new ParameterizedSQL(`
INSERT INTO vn.workerTimeControl(userFk, timed, manual, direction) INSERT INTO vn.workerTimeControl(userFk, timed, manual, direction)

View File

@ -6,7 +6,7 @@ xdescribe('worker workerTimeControl_check()', () => {
it(`should throw an error if the worker can't sign on that tablet`, async() => { it(`should throw an error if the worker can't sign on that tablet`, async() => {
let stmts = []; let stmts = [];
let stmt; let stmt;
const workerId = 110; const workerId = 1110;
const tabletId = 2; const tabletId = 2;
let err; let err;
stmts.push('START TRANSACTION'); stmts.push('START TRANSACTION');
@ -31,7 +31,7 @@ xdescribe('worker workerTimeControl_check()', () => {
it('should check that the worker can sign on that tablet', async() => { it('should check that the worker can sign on that tablet', async() => {
let stmts = []; let stmts = [];
let stmt; let stmt;
const workerId = 110; const workerId = 1110;
const tabletId = 1; const tabletId = 1;
let err; let err;
stmts.push('START TRANSACTION'); stmts.push('START TRANSACTION');
@ -55,7 +55,7 @@ xdescribe('worker workerTimeControl_check()', () => {
it('should throw an error if the worker with a special category has not finished the 9h break', async() => { it('should throw an error if the worker with a special category has not finished the 9h break', async() => {
// dayBreak to 9h in postgresql.professional_category // dayBreak to 9h in postgresql.professional_category
const workerId = 110; const workerId = 1110;
const tabletId = 1; const tabletId = 1;
let stmts = []; let stmts = [];
let stmt; let stmt;
@ -92,7 +92,7 @@ xdescribe('worker workerTimeControl_check()', () => {
it('should check f the worker with a special category has finished the 9h break', async() => { it('should check f the worker with a special category has finished the 9h break', async() => {
// dayBreak to 9h in postgresql.professional_category // dayBreak to 9h in postgresql.professional_category
const workerId = 110; const workerId = 1110;
const tabletId = 1; const tabletId = 1;
let stmts = []; let stmts = [];
let stmt; let stmt;
@ -127,7 +127,7 @@ xdescribe('worker workerTimeControl_check()', () => {
}); });
it('should throw an error if the worker has not finished the 12h break', async() => { it('should throw an error if the worker has not finished the 12h break', async() => {
const workerId = 109; const workerId = 1109;
const tabletId = 1; const tabletId = 1;
let stmts = []; let stmts = [];
let stmt; let stmt;
@ -163,7 +163,7 @@ xdescribe('worker workerTimeControl_check()', () => {
}); });
it('should throw an error if the worker has finished the 12h break', async() => { it('should throw an error if the worker has finished the 12h break', async() => {
const workerId = 109; const workerId = 1109;
const tabletId = 1; const tabletId = 1;
let stmts = []; let stmts = [];
let stmt; let stmt;
@ -198,7 +198,7 @@ xdescribe('worker workerTimeControl_check()', () => {
}); });
it('should throw an error if the worker has odd entry records', async() => { it('should throw an error if the worker has odd entry records', async() => {
const workerId = 109; const workerId = 1109;
const tabletId = 1; const tabletId = 1;
let stmts = []; let stmts = [];
let stmt; let stmt;
@ -231,7 +231,7 @@ xdescribe('worker workerTimeControl_check()', () => {
}); });
it('should throw an error if the worker try to sign on a holiday day', async() => { it('should throw an error if the worker try to sign on a holiday day', async() => {
const workerId = 109; const workerId = 1109;
const tabletId = 1; const tabletId = 1;
let stmts = []; let stmts = [];
let stmt; let stmt;
@ -274,7 +274,7 @@ xdescribe('worker workerTimeControl_check()', () => {
}); });
it('should throw an error if the worker try to sign with your contract ended', async() => { it('should throw an error if the worker try to sign with your contract ended', async() => {
const workerId = 109; const workerId = 1109;
const tabletId = 1; const tabletId = 1;
let stmts = []; let stmts = [];
let stmt; let stmt;
@ -316,7 +316,7 @@ xdescribe('worker workerTimeControl_check()', () => {
}); });
it('should throw an error if the worker has not finished the 36h weekly break', async() => { it('should throw an error if the worker has not finished the 36h weekly break', async() => {
const workerId = 109; const workerId = 1109;
const tabletId = 1; const tabletId = 1;
let stmts = []; let stmts = [];
let stmt; let stmt;
@ -377,7 +377,7 @@ xdescribe('worker workerTimeControl_check()', () => {
}); });
it('should check if the worker has finished the 36h weekly break', async() => { it('should check if the worker has finished the 36h weekly break', async() => {
const workerId = 109; const workerId = 1109;
const tabletId = 1; const tabletId = 1;
let stmts = []; let stmts = [];
let stmt; let stmt;
@ -423,7 +423,7 @@ xdescribe('worker workerTimeControl_check()', () => {
}); });
it('should throw an error if the worker has not finished the 72h biweekly break', async() => { it('should throw an error if the worker has not finished the 72h biweekly break', async() => {
const workerId = 109; const workerId = 1109;
const tabletId = 1; const tabletId = 1;
let stmts = []; let stmts = [];
let stmt; let stmt;
@ -505,7 +505,7 @@ xdescribe('worker workerTimeControl_check()', () => {
}); });
it('should check if the worker has finished the 72h biweekly break', async() => { it('should check if the worker has finished the 72h biweekly break', async() => {
const workerId = 109; const workerId = 1109;
const tabletId = 1; const tabletId = 1;
let stmts = []; let stmts = [];
let stmt; let stmt;

View File

@ -123,6 +123,7 @@ export default {
addProvince: 'vn-autocomplete[ng-model="$ctrl.location.provinceFk"] vn-icon-button[icon="add_circle"]', addProvince: 'vn-autocomplete[ng-model="$ctrl.location.provinceFk"] vn-icon-button[icon="add_circle"]',
addCity: 'vn-autocomplete[ng-model="$ctrl.location.townFk"] vn-icon-button[icon="add_circle"]', addCity: 'vn-autocomplete[ng-model="$ctrl.location.townFk"] vn-icon-button[icon="add_circle"]',
newProvinceName: 'vn-textfield[ng-model="$ctrl.province.name"]', newProvinceName: 'vn-textfield[ng-model="$ctrl.province.name"]',
newProvinceAutonomy: 'vn-autocomplete[ng-model="$ctrl.province.autonomyFk"]',
newCityName: 'vn-textfield[ng-model="$ctrl.city.name"]', newCityName: 'vn-textfield[ng-model="$ctrl.city.name"]',
newCityProvince: 'vn-autocomplete[ng-model="$ctrl.city.provinceFk"]', newCityProvince: 'vn-autocomplete[ng-model="$ctrl.city.provinceFk"]',
newPostcode: 'vn-textfield[ng-model="$ctrl.location.code"]', newPostcode: 'vn-textfield[ng-model="$ctrl.location.code"]',
@ -130,7 +131,6 @@ export default {
city: 'vn-client-create vn-datalist[ng-model="$ctrl.client.city"]', city: 'vn-client-create vn-datalist[ng-model="$ctrl.client.city"]',
province: 'vn-autocomplete[ng-model="$ctrl.client.provinceFk"]', province: 'vn-autocomplete[ng-model="$ctrl.client.provinceFk"]',
country: 'vn-client-create vn-autocomplete[ng-model="$ctrl.client.countryFk"]', country: 'vn-client-create vn-autocomplete[ng-model="$ctrl.client.countryFk"]',
dialogCountry: 'vn-autocomplete[ng-model="$ctrl.province.countryFk"]',
userName: 'vn-client-create vn-textfield[ng-model="$ctrl.client.userName"]', userName: 'vn-client-create vn-textfield[ng-model="$ctrl.client.userName"]',
email: 'vn-client-create vn-textfield[ng-model="$ctrl.client.email"]', email: 'vn-client-create vn-textfield[ng-model="$ctrl.client.email"]',
salesPerson: 'vn-client-create vn-autocomplete[ng-model="$ctrl.client.salesPersonFk"]', salesPerson: 'vn-client-create vn-autocomplete[ng-model="$ctrl.client.salesPersonFk"]',
@ -152,6 +152,7 @@ export default {
salesPerson: 'vn-client-basic-data vn-autocomplete[ng-model="$ctrl.client.salesPersonFk"]', salesPerson: 'vn-client-basic-data vn-autocomplete[ng-model="$ctrl.client.salesPersonFk"]',
channel: 'vn-client-basic-data vn-autocomplete[ng-model="$ctrl.client.contactChannelFk"]', channel: 'vn-client-basic-data vn-autocomplete[ng-model="$ctrl.client.contactChannelFk"]',
transferor: 'vn-client-basic-data vn-autocomplete[ng-model="$ctrl.client.transferorFk"]', transferor: 'vn-client-basic-data vn-autocomplete[ng-model="$ctrl.client.transferorFk"]',
businessType: 'vn-client-basic-data vn-autocomplete[ng-model="$ctrl.client.businessTypeFk"]',
saveButton: 'vn-client-basic-data button[type=submit]' saveButton: 'vn-client-basic-data button[type=submit]'
}, },
clientFiscalData: { clientFiscalData: {
@ -185,9 +186,10 @@ export default {
receivedB2BVNLCheckbox: 'vn-client-billing-data vn-check[label="Received B2B VNL"]', receivedB2BVNLCheckbox: 'vn-client-billing-data vn-check[label="Received B2B VNL"]',
swiftBic: 'vn-client-billing-data vn-autocomplete[ng-model="$ctrl.client.bankEntityFk"]', swiftBic: 'vn-client-billing-data vn-autocomplete[ng-model="$ctrl.client.bankEntityFk"]',
newBankEntityButton: 'vn-client-billing-data vn-icon-button[vn-tooltip="New bank entity"] > button', newBankEntityButton: 'vn-client-billing-data vn-icon-button[vn-tooltip="New bank entity"] > button',
newBankEntityName: '.vn-dialog.shown vn-textfield[ng-model="$ctrl.newBankEntity.name"]', newBankEntityName: '.vn-dialog.shown vn-textfield[ng-model="$ctrl.data.name"]',
newBankEntityBIC: '.vn-dialog.shown vn-textfield[ng-model="$ctrl.newBankEntity.bic"]', newBankEntityBIC: '.vn-dialog.shown vn-textfield[ng-model="$ctrl.data.bic"]',
newBankEntityCode: '.vn-dialog.shown vn-textfield[ng-model="$ctrl.newBankEntity.id"]', newBankEntityCountry: '.vn-dialog.shown vn-autocomplete[ng-model="$ctrl.data.countryFk"]',
newBankEntityCode: '.vn-dialog.shown vn-textfield[ng-model="$ctrl.data.id"]',
acceptBankEntityButton: '.vn-dialog.shown button[response="accept"]', acceptBankEntityButton: '.vn-dialog.shown button[response="accept"]',
saveButton: 'vn-client-billing-data button[type=submit]', saveButton: 'vn-client-billing-data button[type=submit]',
watcher: 'vn-client-billing-data vn-watcher' watcher: 'vn-client-billing-data vn-watcher'
@ -257,7 +259,9 @@ export default {
}, },
clientLog: { clientLog: {
lastModificationPreviousValue: 'vn-client-log vn-table vn-td.before', lastModificationPreviousValue: 'vn-client-log vn-table vn-td.before',
lastModificationCurrentValue: 'vn-client-log vn-table vn-td.after' lastModificationCurrentValue: 'vn-client-log vn-table vn-td.after',
penultimateModificationPreviousValue: 'vn-client-log vn-table vn-tr:nth-child(2) vn-td.before',
penultimateModificationCurrentValue: 'vn-client-log vn-table vn-tr:nth-child(2) vn-td.after'
}, },
clientBalance: { clientBalance: {
@ -320,7 +324,6 @@ export default {
idCheckbox: '.vn-popover.shown vn-horizontal:nth-child(1) > vn-check', idCheckbox: '.vn-popover.shown vn-horizontal:nth-child(1) > vn-check',
stemsCheckbox: '.vn-popover.shown vn-horizontal:nth-child(2) > vn-check', stemsCheckbox: '.vn-popover.shown vn-horizontal:nth-child(2) > vn-check',
sizeCheckbox: '.vn-popover.shown vn-horizontal:nth-child(3) > vn-check', sizeCheckbox: '.vn-popover.shown vn-horizontal:nth-child(3) > vn-check',
nicheCheckbox: '.vn-popover.shown vn-horizontal:nth-child(4) > vn-check',
typeCheckbox: '.vn-popover.shown vn-horizontal:nth-child(5) > vn-check', typeCheckbox: '.vn-popover.shown vn-horizontal:nth-child(5) > vn-check',
categoryCheckbox: '.vn-popover.shown vn-horizontal:nth-child(6) > vn-check', categoryCheckbox: '.vn-popover.shown vn-horizontal:nth-child(6) > vn-check',
intrastadCheckbox: '.vn-popover.shown vn-horizontal:nth-child(7) > vn-check', intrastadCheckbox: '.vn-popover.shown vn-horizontal:nth-child(7) > vn-check',
@ -417,17 +420,6 @@ export default {
submitBarcodesButton: 'vn-item-barcode button[type=submit]', submitBarcodesButton: 'vn-item-barcode button[type=submit]',
firstCodeRemoveButton: 'vn-item-barcode vn-horizontal:nth-child(1) vn-icon[icon="delete"]' firstCodeRemoveButton: 'vn-item-barcode vn-horizontal:nth-child(1) vn-icon[icon="delete"]'
}, },
itemNiches: {
addNicheButton: 'vn-item-niche vn-icon[icon="add_circle"]',
firstWarehouse: 'vn-item-niche vn-autocomplete[ng-model="niche.warehouseFk"]',
firstCode: 'vn-item-niche vn-horizontal:nth-child(1) vn-textfield[ng-model="niche.code"]',
secondWarehouse: 'vn-item-niche vn-horizontal:nth-child(2) > vn-autocomplete[ng-model="niche.warehouseFk"]',
secondCode: 'vn-item-niche vn-horizontal:nth-child(2) vn-textfield[ng-model="niche.code"]',
secondNicheRemoveButton: 'vn-item-niche vn-horizontal:nth-child(2) > vn-none > vn-icon-button[icon="delete"]',
thirdWarehouse: 'vn-item-niche vn-horizontal:nth-child(3) > vn-autocomplete[ng-model="niche.warehouseFk"]',
thirdCode: 'vn-item-niche vn-horizontal:nth-child(3) vn-textfield[ng-model="niche.code"]',
submitNichesButton: 'vn-item-niche button[type=submit]'
},
itemBotanical: { itemBotanical: {
genus: 'vn-item-botanical vn-autocomplete[ng-model="$ctrl.botanical.genusFk"]', genus: 'vn-item-botanical vn-autocomplete[ng-model="$ctrl.botanical.genusFk"]',
species: 'vn-item-botanical vn-autocomplete[ng-model="$ctrl.botanical.specieFk"]', species: 'vn-item-botanical vn-autocomplete[ng-model="$ctrl.botanical.specieFk"]',
@ -437,7 +429,6 @@ export default {
basicData: 'vn-item-summary [name="basicData"]', basicData: 'vn-item-summary [name="basicData"]',
vat: 'vn-item-summary [name="tax"]', vat: 'vn-item-summary [name="tax"]',
tags: 'vn-item-summary [name="tags"]', tags: 'vn-item-summary [name="tags"]',
niche: 'vn-item-summary [name="niche"]',
botanical: 'vn-item-summary [name="botanical"]', botanical: 'vn-item-summary [name="botanical"]',
barcode: 'vn-item-summary [name="barcode"]' barcode: 'vn-item-summary [name="barcode"]'
}, },
@ -461,8 +452,8 @@ export default {
itemDescriptorPopover: '.vn-popover.shown vn-item-descriptor', itemDescriptorPopover: '.vn-popover.shown vn-item-descriptor',
itemDescriptorPopoverItemDiaryButton: 'vn-item-descriptor a[href="#!/item/2/diary?warehouseFk=5&lineFk=16"]', itemDescriptorPopoverItemDiaryButton: 'vn-item-descriptor a[href="#!/item/2/diary?warehouseFk=5&lineFk=16"]',
popoverDiaryButton: '.vn-popover.shown vn-item-descriptor vn-icon[icon="icon-transaction"]', popoverDiaryButton: '.vn-popover.shown vn-item-descriptor vn-icon[icon="icon-transaction"]',
firstSaleQuantity: 'vn-ticket-summary [name="sales"] vn-table > div > vn-tbody > vn-tr > vn-td:nth-child(4)', firstSaleQuantity: 'vn-ticket-summary [name="sales"] vn-table > div > vn-tbody > vn-tr > vn-td:nth-child(5)',
firstSaleDiscount: 'vn-ticket-summary [name="sales"] vn-table > div > vn-tbody > vn-tr > vn-td:nth-child(7)', firstSaleDiscount: 'vn-ticket-summary [name="sales"] vn-table > div > vn-tbody > vn-tr > vn-td:nth-child(8)',
invoiceOutRef: 'vn-ticket-summary > vn-card > vn-horizontal > vn-one:nth-child(1) > vn-label-value:nth-child(7) > section > span', invoiceOutRef: 'vn-ticket-summary > vn-card > vn-horizontal > vn-one:nth-child(1) > vn-label-value:nth-child(7) > section > span',
setOk: 'vn-ticket-summary vn-button[label="SET OK"] > button', setOk: 'vn-ticket-summary vn-button[label="SET OK"] > button',
descriptorTicketId: 'vn-ticket-descriptor > vn-descriptor-content > div > div.body > div.top > div' descriptorTicketId: 'vn-ticket-descriptor > vn-descriptor-content > div > div.body > div.top > div'
@ -481,7 +472,7 @@ export default {
thirdTicketCheckbox: 'vn-ticket-index vn-tbody > a:nth-child(3) > vn-td:nth-child(1) > vn-check', thirdTicketCheckbox: 'vn-ticket-index vn-tbody > a:nth-child(3) > vn-td:nth-child(1) > vn-check',
sixthTicketCheckbox: 'vn-ticket-index vn-tbody > a:nth-child(6) > vn-td:nth-child(1) > vn-check', sixthTicketCheckbox: 'vn-ticket-index vn-tbody > a:nth-child(6) > vn-td:nth-child(1) > vn-check',
payoutButton: 'vn-ticket-index vn-button[icon="icon-recovery"]', payoutButton: 'vn-ticket-index vn-button[icon="icon-recovery"]',
payoutCompany: '.vn-dialog vn-autocomplete[ng-model="$ctrl.receipt.companyFk"]', payoutCompany: '.vn-dialog vn-autocomplete[ng-model="$ctrl.companyFk"]',
payoutBank: '.vn-dialog vn-autocomplete[ng-model="$ctrl.bankFk"]', payoutBank: '.vn-dialog vn-autocomplete[ng-model="$ctrl.bankFk"]',
payoutDescription: 'vn-textfield[ng-model="$ctrl.receipt.description"]', payoutDescription: 'vn-textfield[ng-model="$ctrl.receipt.description"]',
submitPayout: '.vn-dialog button[response="accept"]', submitPayout: '.vn-dialog button[response="accept"]',
@ -565,13 +556,13 @@ export default {
moreMenuUpdateDiscountInput: 'vn-input-number[ng-model="$ctrl.edit.discount"] input', moreMenuUpdateDiscountInput: 'vn-input-number[ng-model="$ctrl.edit.discount"] input',
transferQuantityInput: '.vn-popover.shown vn-table > div > vn-tbody > vn-tr > vn-td-editable > span > text', transferQuantityInput: '.vn-popover.shown vn-table > div > vn-tbody > vn-tr > vn-td-editable > span > text',
transferQuantityCell: '.vn-popover.shown vn-table > div > vn-tbody > vn-tr > vn-td-editable', transferQuantityCell: '.vn-popover.shown vn-table > div > vn-tbody > vn-tr > vn-td-editable',
firstSaleId: 'vn-ticket-sale vn-tbody > vn-tr:nth-child(1) > vn-td:nth-child(5) > span', firstSaleId: 'vn-ticket-sale vn-tbody > vn-tr:nth-child(1) > vn-td:nth-child(6) > span',
firstSaleClaimIcon: 'vn-ticket-sale vn-table vn-tbody > vn-tr:nth-child(1) vn-icon[icon="icon-claims"]', firstSaleClaimIcon: 'vn-ticket-sale vn-table vn-tbody > vn-tr:nth-child(1) vn-icon[icon="icon-claims"]',
firstSaleDescriptorImage: '.vn-popover.shown vn-item-descriptor img', firstSaleDescriptorImage: '.vn-popover.shown vn-item-descriptor img',
firstSaleThumbnailImage: 'vn-ticket-sale:nth-child(1) vn-tr:nth-child(1) vn-td:nth-child(3) > img', firstSaleThumbnailImage: 'vn-ticket-sale:nth-child(1) vn-tr:nth-child(1) vn-td:nth-child(3) > img',
firstSaleZoomedImage: 'body > div > div > img', firstSaleZoomedImage: 'body > div > div > img',
firstSaleQuantity: 'vn-ticket-sale [ng-model="sale.quantity"]', firstSaleQuantity: 'vn-ticket-sale [ng-model="sale.quantity"]',
firstSaleQuantityCell: 'vn-ticket-sale vn-tr:nth-child(1) > vn-td-editable:nth-child(6)', firstSaleQuantityCell: 'vn-ticket-sale vn-tr:nth-child(1) > vn-td-editable:nth-child(7)',
firstSalePrice: 'vn-ticket-sale vn-table vn-tr:nth-child(1) > vn-td:nth-child(9) > span', firstSalePrice: 'vn-ticket-sale vn-table vn-tr:nth-child(1) > vn-td:nth-child(9) > span',
firstSalePriceInput: '.vn-popover.shown input[ng-model="$ctrl.field"]', firstSalePriceInput: '.vn-popover.shown input[ng-model="$ctrl.field"]',
firstSaleDiscount: 'vn-ticket-sale vn-table vn-tr:nth-child(1) > vn-td:nth-child(10) > span', firstSaleDiscount: 'vn-ticket-sale vn-table vn-tr:nth-child(1) > vn-td:nth-child(10) > span',
@ -584,8 +575,8 @@ export default {
secondSaleId: 'vn-ticket-sale:nth-child(2) vn-td-editable:nth-child(4) text > span', secondSaleId: 'vn-ticket-sale:nth-child(2) vn-td-editable:nth-child(4) text > span',
secondSaleIdAutocomplete: 'vn-ticket-sale vn-tr:nth-child(2) vn-autocomplete[ng-model="sale.itemFk"]', secondSaleIdAutocomplete: 'vn-ticket-sale vn-tr:nth-child(2) vn-autocomplete[ng-model="sale.itemFk"]',
secondSaleQuantity: 'vn-ticket-sale vn-table vn-tr:nth-child(2) vn-input-number', secondSaleQuantity: 'vn-ticket-sale vn-table vn-tr:nth-child(2) vn-input-number',
secondSaleQuantityCell: 'vn-ticket-sale > div > vn-card > vn-table > div > vn-tbody > vn-tr:nth-child(2) > vn-td-editable:nth-child(6)', secondSaleQuantityCell: 'vn-ticket-sale > div > vn-card > vn-table > div > vn-tbody > vn-tr:nth-child(2) > vn-td-editable:nth-child(7)',
secondSaleConceptCell: 'vn-ticket-sale vn-tbody > :nth-child(2) > :nth-child(7)', secondSaleConceptCell: 'vn-ticket-sale vn-tbody > :nth-child(2) > :nth-child(8)',
secondSaleConceptInput: 'vn-ticket-sale vn-tbody > :nth-child(2) > vn-td-editable.ng-isolate-scope.selected vn-textfield', secondSaleConceptInput: 'vn-ticket-sale vn-tbody > :nth-child(2) > vn-td-editable.ng-isolate-scope.selected vn-textfield',
totalImport: 'vn-ticket-sale vn-one.taxes > p:nth-child(3) > strong', totalImport: 'vn-ticket-sale vn-one.taxes > p:nth-child(3) > strong',
selectAllSalesCheckbox: 'vn-ticket-sale vn-thead vn-check', selectAllSalesCheckbox: 'vn-ticket-sale vn-thead vn-check',
@ -646,6 +637,12 @@ export default {
saveServiceButton: 'button[type=submit]', saveServiceButton: 'button[type=submit]',
saveServiceTypeButton: '.vn-dialog.shown tpl-buttons > button' saveServiceTypeButton: '.vn-dialog.shown tpl-buttons > button'
}, },
ticketDms: {
import: 'vn-ticket-dms-index vn-button[icon="file_copy"]',
document: 'vn-autocomplete[ng-model="$ctrl.dmsId"]',
saveImport: 'button[response="accept"]',
anyDocument: 'vn-ticket-dms-index > vn-data-viewer vn-tbody vn-tr'
},
createStateView: { createStateView: {
state: 'vn-autocomplete[ng-model="$ctrl.stateFk"]', state: 'vn-autocomplete[ng-model="$ctrl.stateFk"]',
worker: 'vn-autocomplete[ng-model="$ctrl.workerFk"]', worker: 'vn-autocomplete[ng-model="$ctrl.workerFk"]',
@ -906,6 +903,19 @@ export default {
invoiceOutIndex: { invoiceOutIndex: {
topbarSearch: 'vn-searchbar', topbarSearch: 'vn-searchbar',
searchResult: 'vn-invoice-out-index vn-card > vn-table > div > vn-tbody > a.vn-tr', searchResult: 'vn-invoice-out-index vn-card > vn-table > div > vn-tbody > a.vn-tr',
createInvoice: 'vn-invoice-out-index > div > vn-vertical > vn-button > button vn-icon[icon="add"]',
createManualInvoice: 'vn-item[name="manualInvoice"]',
createGlobalInvoice: 'vn-item[name="globalInvoice"]',
manualInvoiceForm: '.vn-invoice-out-manual',
manualInvoiceTicket: 'vn-autocomplete[ng-model="$ctrl.invoice.ticketFk"]',
manualInvoiceClient: 'vn-autocomplete[ng-model="$ctrl.invoice.clientFk"]',
manualInvoiceSerial: 'vn-autocomplete[ng-model="$ctrl.invoice.serial"]',
manualInvoiceTaxArea: 'vn-autocomplete[ng-model="$ctrl.invoice.taxArea"]',
saveInvoice: 'button[response="accept"]',
globalInvoiceForm: '.vn-invoice-out-global-invoicing',
globalInvoiceDate: '[ng-model="$ctrl.invoice.invoiceDate"]',
globalInvoiceFromClient: '[ng-model="$ctrl.invoice.fromClientId"]',
globalInvoiceToClient: '[ng-model="$ctrl.invoice.toClientId"]',
}, },
invoiceOutDescriptor: { invoiceOutDescriptor: {
moreMenu: 'vn-invoice-out-descriptor vn-icon-button[icon=more_vert]', moreMenu: 'vn-invoice-out-descriptor vn-icon-button[icon=more_vert]',
@ -924,12 +934,15 @@ export default {
ticketTwo: 'vn-invoice-out-summary > vn-card > vn-horizontal > vn-auto > vn-table > div > vn-tbody > vn-tr:nth-child(2)' ticketTwo: 'vn-invoice-out-summary > vn-card > vn-horizontal > vn-auto > vn-table > div > vn-tbody > vn-tr:nth-child(2)'
}, },
invoiceInSummary: { invoiceInSummary: {
totalTaxableBase: 'vn-invoice-in-summary > vn-card > vn-horizontal > vn-auto > vn-horizontal > vn-one.taxes > span',
supplierRef: 'vn-invoice-in-summary vn-label-value:nth-child(2) > section > span' supplierRef: 'vn-invoice-in-summary vn-label-value:nth-child(2) > section > span'
}, },
invoiceInDescriptor: { invoiceInDescriptor: {
summaryIcon: 'vn-invoice-in-descriptor a[title="Preview"]',
moreMenu: 'vn-invoice-in-descriptor vn-icon-button[icon=more_vert]', moreMenu: 'vn-invoice-in-descriptor vn-icon-button[icon=more_vert]',
moreMenuDeleteInvoiceIn: '.vn-menu [name="deleteInvoice"]', moreMenuDeleteInvoiceIn: '.vn-menu [name="deleteInvoice"]',
acceptDeleteButton: '.vn-confirm.shown button[response="accept"]' moreMenuCloneInvoiceIn: '.vn-menu [name="cloneInvoice"]',
acceptButton: '.vn-confirm.shown button[response="accept"]'
}, },
invoiceInBasicData: { invoiceInBasicData: {
issued: 'vn-invoice-in-basic-data vn-date-picker[ng-model="$ctrl.invoiceIn.issued"]', issued: 'vn-invoice-in-basic-data vn-date-picker[ng-model="$ctrl.invoiceIn.issued"]',
@ -942,6 +955,17 @@ export default {
company: 'vn-invoice-in-basic-data vn-autocomplete[ng-model="$ctrl.invoiceIn.companyFk"]', company: 'vn-invoice-in-basic-data vn-autocomplete[ng-model="$ctrl.invoiceIn.companyFk"]',
save: 'vn-invoice-in-basic-data button[type=submit]' save: 'vn-invoice-in-basic-data button[type=submit]'
}, },
invoiceInTax: {
addTaxButton: 'vn-invoice-in-tax vn-icon-button[icon="add_circle"]',
thirdExpence: 'vn-invoice-in-tax vn-horizontal:nth-child(3) > vn-autocomplete[ng-model="invoiceInTax.expenseFk"]',
thirdTaxableBase: 'vn-invoice-in-tax vn-horizontal:nth-child(3) > vn-input-number[ng-model="invoiceInTax.taxableBase"]',
thirdTaxType: 'vn-invoice-in-tax vn-horizontal:nth-child(3) > vn-autocomplete[ng-model="invoiceInTax.taxTypeSageFk"]',
thirdTransactionType: 'vn-invoice-in-tax vn-horizontal:nth-child(3) > vn-autocomplete[ng-model="invoiceInTax.transactionTypeSageFk"]',
thirdRate: 'vn-invoice-in-tax > form > vn-card > vn-horizontal:nth-child(3) > vn-textfield',
thirdDeleteButton: 'vn-invoice-in-tax vn-horizontal:nth-child(3) vn-icon[icon="delete"]',
saveButton: 'vn-invoice-in-tax vn-submit',
},
travelIndex: { travelIndex: {
anySearchResult: 'vn-travel-index vn-tbody > a', anySearchResult: 'vn-travel-index vn-tbody > a',
firstSearchResult: 'vn-travel-index vn-tbody > a:nth-child(1)', firstSearchResult: 'vn-travel-index vn-tbody > a:nth-child(1)',
@ -982,7 +1006,7 @@ export default {
newThermographId: 'vn-textfield[ng-model="$ctrl.newThermograph.thermographId"]', newThermographId: 'vn-textfield[ng-model="$ctrl.newThermograph.thermographId"]',
newThermographModel: 'vn-autocomplete[ng-model="$ctrl.newThermograph.model"]', newThermographModel: 'vn-autocomplete[ng-model="$ctrl.newThermograph.model"]',
newThermographWarehouse: 'vn-autocomplete[ng-model="$ctrl.newThermograph.warehouseId"]', newThermographWarehouse: 'vn-autocomplete[ng-model="$ctrl.newThermograph.warehouseId"]',
newThermographTemperature: 'vn-autocomplete[ng-model="$ctrl.newThermograph.temperature"]', newThermographTemperature: 'vn-autocomplete[ng-model="$ctrl.newThermograph.temperatureFk"]',
createThermographButton: 'form button[response="accept"]', createThermographButton: 'form button[response="accept"]',
uploadIcon: 'vn-travel-thermograph-create vn-icon[icon="icon-attach"]', uploadIcon: 'vn-travel-thermograph-create vn-icon[icon="icon-attach"]',
createdThermograph: 'vn-travel-thermograph-index vn-tbody > vn-tr', createdThermograph: 'vn-travel-thermograph-index vn-tbody > vn-tr',

View File

@ -42,7 +42,7 @@ describe('Client create path', () => {
await page.waitToClick(selectors.createClientView.addPostCode); await page.waitToClick(selectors.createClientView.addPostCode);
await page.waitToClick(selectors.createClientView.addProvince); await page.waitToClick(selectors.createClientView.addProvince);
await page.write(selectors.createClientView.newProvinceName, 'Massachusetts'); await page.write(selectors.createClientView.newProvinceName, 'Massachusetts');
await page.autocompleteSearch(selectors.createClientView.dialogCountry, 'España'); await page.autocompleteSearch(selectors.createClientView.newProvinceAutonomy, 'Autonomy one');
await page.waitToClick(selectors.createClientView.saveNewProvicenButton); await page.waitToClick(selectors.createClientView.saveNewProvicenButton);
const message = await page.waitForSnackbar(); const message = await page.waitForSnackbar();

View File

@ -35,6 +35,7 @@ describe('Client Edit basicData path', () => {
await page.write(selectors.clientBasicData.email, 'PWallace@verdnatura.es'); await page.write(selectors.clientBasicData.email, 'PWallace@verdnatura.es');
await page.autocompleteSearch(selectors.clientBasicData.channel, 'Rumors on the streets'); await page.autocompleteSearch(selectors.clientBasicData.channel, 'Rumors on the streets');
await page.autocompleteSearch(selectors.clientBasicData.transferor, 'Max Eisenhardt'); await page.autocompleteSearch(selectors.clientBasicData.transferor, 'Max Eisenhardt');
await page.autocompleteSearch(selectors.clientBasicData.businessType, 'Eventos');
await page.waitToClick(selectors.clientBasicData.saveButton); await page.waitToClick(selectors.clientBasicData.saveButton);
const message = await page.waitForSnackbar(); const message = await page.waitForSnackbar();
@ -55,6 +56,13 @@ describe('Client Edit basicData path', () => {
expect(result).toEqual('David Haller'); expect(result).toEqual('David Haller');
}); });
it('should confirm the business type have been edited', async() => {
const result = await page
.waitToGetProperty(selectors.clientBasicData.businessType, 'value');
expect(result).toEqual('Eventos');
});
it('should confirm the email have been edited', async() => { it('should confirm the email have been edited', async() => {
const result = await page const result = await page
.waitToGetProperty(selectors.clientBasicData.email, 'value'); .waitToGetProperty(selectors.clientBasicData.email, 'value');

View File

@ -31,12 +31,12 @@ describe('Client Edit billing data path', () => {
expect(message.text).toContain('That payment method requires an IBAN'); expect(message.text).toContain('That payment method requires an IBAN');
}); });
// 2256: Windows (hidden mode): Entity code doesn't get the focus, '9999' is written in entity name. it(`should create a new BIC code`, async() => {
xit(`should create a new BIC code`, async() => {
await page.waitToClick(selectors.clientBillingData.newBankEntityButton); await page.waitToClick(selectors.clientBillingData.newBankEntityButton);
await page.write(selectors.clientBillingData.newBankEntityName, 'Gotham City Bank'); await page.write(selectors.clientBillingData.newBankEntityName, 'Gotham City Bank');
await page.write(selectors.clientBillingData.newBankEntityCode, '9999');
await page.write(selectors.clientBillingData.newBankEntityBIC, 'GTHMCT'); await page.write(selectors.clientBillingData.newBankEntityBIC, 'GTHMCT');
await page.autocompleteSearch(selectors.clientBillingData.newBankEntityCountry, 'España');
await page.write(selectors.clientBillingData.newBankEntityCode, '9999');
await page.waitToClick(selectors.clientBillingData.acceptBankEntityButton); await page.waitToClick(selectors.clientBillingData.acceptBankEntityButton);
await page.waitForTextInField(selectors.clientBillingData.swiftBic, 'Gotham City Bank'); await page.waitForTextInField(selectors.clientBillingData.swiftBic, 'Gotham City Bank');
const newcode = await page.waitToGetProperty(selectors.clientBillingData.swiftBic, 'value'); const newcode = await page.waitToGetProperty(selectors.clientBillingData.swiftBic, 'value');
@ -44,7 +44,7 @@ describe('Client Edit billing data path', () => {
expect(newcode).toEqual('GTHMCT Gotham City Bank'); expect(newcode).toEqual('GTHMCT Gotham City Bank');
}); });
xit(`should confirm the IBAN pay method was sucessfully saved`, async() => { it(`should confirm the IBAN pay method was sucessfully saved`, async() => {
const payMethod = await page.waitToGetProperty(selectors.clientBillingData.payMethod, 'value'); const payMethod = await page.waitToGetProperty(selectors.clientBillingData.payMethod, 'value');
expect(payMethod).toEqual('PayMethod with IBAN'); expect(payMethod).toEqual('PayMethod with IBAN');

View File

@ -16,8 +16,15 @@ describe('Client Edit web access path', () => {
await browser.close(); await browser.close();
}); });
it(`should uncheck the Enable web access checkbox and update the name`, async() => { it('should uncheck the Enable web access checkbox', async() => {
await page.waitToClick(selectors.clientWebAccess.enableWebAccessCheckbox); await page.waitToClick(selectors.clientWebAccess.enableWebAccessCheckbox);
await page.waitToClick(selectors.clientWebAccess.saveButton);
const message = await page.waitForSnackbar();
expect(message.text).toContain('Data saved!');
});
it(`should update the name`, async() => {
await page.clearInput(selectors.clientWebAccess.userName); await page.clearInput(selectors.clientWebAccess.userName);
await page.write(selectors.clientWebAccess.userName, 'Hulk'); await page.write(selectors.clientWebAccess.userName, 'Hulk');
await page.waitToClick(selectors.clientWebAccess.saveButton); await page.waitToClick(selectors.clientWebAccess.saveButton);
@ -26,9 +33,8 @@ describe('Client Edit web access path', () => {
expect(message.text).toContain('Data saved!'); expect(message.text).toContain('Data saved!');
}); });
it('should confirm web access is now unchecked', async() => { it('should reload the section and confirm web access is now unchecked', async() => {
await page.accessToSection('client.card.basicData'); await page.reloadSection('client.card.webAccess');
await page.accessToSection('client.card.webAccess');
const result = await page.checkboxState(selectors.clientWebAccess.enableWebAccessCheckbox); const result = await page.checkboxState(selectors.clientWebAccess.enableWebAccessCheckbox);
expect(result).toBe('unchecked'); expect(result).toBe('unchecked');
@ -44,13 +50,23 @@ describe('Client Edit web access path', () => {
await page.accessToSection('client.card.log'); await page.accessToSection('client.card.log');
}); });
it(`should confirm the log is showing the updated data for the client`, async() => { it(`should confirm the last log is showing the updated client name and no modifications on the active checkbox`, async() => {
let lastModificationPreviousValue = await page let lastModificationPreviousValue = await page
.waitToGetProperty(selectors.clientLog.lastModificationPreviousValue, 'innerText'); .waitToGetProperty(selectors.clientLog.lastModificationPreviousValue, 'innerText');
let lastModificationCurrentValue = await page let lastModificationCurrentValue = await page
.waitToGetProperty(selectors.clientLog.lastModificationCurrentValue, 'innerText'); .waitToGetProperty(selectors.clientLog.lastModificationCurrentValue, 'innerText');
expect(lastModificationPreviousValue).toEqual('name BruceBanner active true'); expect(lastModificationPreviousValue).toEqual('name BruceBanner active false');
expect(lastModificationCurrentValue).toEqual('name Hulk active false'); expect(lastModificationCurrentValue).toEqual('name Hulk active false');
}); });
it(`should confirm the penultimate log is showing the updated avtive field and no modifications on the client name`, async() => {
let penultimateModificationPreviousValue = await page
.waitToGetProperty(selectors.clientLog.penultimateModificationPreviousValue, 'innerText');
let penultimateModificationCurrentValue = await page
.waitToGetProperty(selectors.clientLog.penultimateModificationCurrentValue, 'innerText');
expect(penultimateModificationPreviousValue).toEqual('name BruceBanner active true');
expect(penultimateModificationCurrentValue).toEqual('name BruceBanner active false');
});
}); });

View File

@ -40,13 +40,6 @@ describe('Item summary path', () => {
expect(result).toContain('Brown'); expect(result).toContain('Brown');
}); });
it(`should check the item summary preview shows fields from niche`, async() => {
await page.waitForTextInElement(selectors.itemSummary.niche, 'A1');
const result = await page.waitToGetProperty(selectors.itemSummary.niche, 'innerText');
expect(result).toContain('A1');
});
it(`should check the item summary preview shows fields from botanical`, async() => { it(`should check the item summary preview shows fields from botanical`, async() => {
await page.waitForTextInElement(selectors.itemSummary.botanical, 'Abelia'); await page.waitForTextInElement(selectors.itemSummary.botanical, 'Abelia');
const result = await page.waitToGetProperty(selectors.itemSummary.botanical, 'innerText'); const result = await page.waitToGetProperty(selectors.itemSummary.botanical, 'innerText');
@ -126,12 +119,6 @@ describe('Item summary path', () => {
expect(result).toContain('Silver'); expect(result).toContain('Silver');
}); });
it(`should check the item summary shows fields from niches section`, async() => {
const result = await page.waitToGetProperty(selectors.itemSummary.niche, 'innerText');
expect(result).toContain('One A4');
});
it(`should check the item summary shows fields from botanical section`, async() => { it(`should check the item summary shows fields from botanical section`, async() => {
const result = await page.waitToGetProperty(selectors.itemSummary.botanical, 'innerText'); const result = await page.waitToGetProperty(selectors.itemSummary.botanical, 'innerText');

View File

@ -1,66 +0,0 @@
import selectors from '../../helpers/selectors.js';
import getBrowser from '../../helpers/puppeteer';
describe('Item create niche path', () => {
let browser;
let page;
beforeAll(async() => {
browser = await getBrowser();
page = browser.page;
await page.loginAndModule('buyer', 'item');
await page.accessToSearchResult('Ranged weapon longbow 2m');
await page.accessToSection('item.card.niche');
});
afterAll(async() => {
await browser.close();
});
it(`should click create a new niche and delete a former one`, async() => {
await page.waitForTextInField(selectors.itemNiches.firstWarehouse, 'Warehouse One');
await page.waitToClick(selectors.itemNiches.addNicheButton);
await page.waitToClick(selectors.itemNiches.secondNicheRemoveButton);
await page.autocompleteSearch(selectors.itemNiches.thirdWarehouse, 'Warehouse Two');
await page.write(selectors.itemNiches.thirdCode, 'A44');
await page.waitToClick(selectors.itemNiches.submitNichesButton);
const message = await page.waitForSnackbar();
expect(message.text).toContain('Data saved!');
});
it(`should confirm the first niche is the expected one`, async() => {
await page.reloadSection('item.card.niche');
await page.waitForTextInField(selectors.itemNiches.firstWarehouse, 'Warehouse One');
let result = await page
.waitToGetProperty(selectors.itemNiches.firstWarehouse, 'value');
expect(result).toEqual('Warehouse One');
result = await page
.waitToGetProperty(selectors.itemNiches.firstCode, 'value');
expect(result).toEqual('A11');
});
it(`should confirm the second niche is the expected one`, async() => {
let result = await page
.waitToGetProperty(selectors.itemNiches.secondWarehouse, 'value');
expect(result).toEqual('Warehouse Three');
result = await page
.waitToGetProperty(selectors.itemNiches.secondCode, 'value');
expect(result).toEqual('A33');
});
it(`should confirm the third niche is the expected one`, async() => {
let result = await page
.waitToGetProperty(selectors.itemNiches.thirdWarehouse, 'value');
expect(result).toEqual('Warehouse Two');
result = await page
.waitToGetProperty(selectors.itemNiches.thirdCode, 'value');
expect(result).toEqual('A44');
});
});

View File

@ -26,7 +26,6 @@ describe('Item index path', () => {
await page.waitToClick(selectors.itemsIndex.idCheckbox); await page.waitToClick(selectors.itemsIndex.idCheckbox);
await page.waitToClick(selectors.itemsIndex.stemsCheckbox); await page.waitToClick(selectors.itemsIndex.stemsCheckbox);
await page.waitToClick(selectors.itemsIndex.sizeCheckbox); await page.waitToClick(selectors.itemsIndex.sizeCheckbox);
await page.waitToClick(selectors.itemsIndex.nicheCheckbox);
await page.waitToClick(selectors.itemsIndex.typeCheckbox); await page.waitToClick(selectors.itemsIndex.typeCheckbox);
await page.waitToClick(selectors.itemsIndex.categoryCheckbox); await page.waitToClick(selectors.itemsIndex.categoryCheckbox);
await page.waitToClick(selectors.itemsIndex.intrastadCheckbox); await page.waitToClick(selectors.itemsIndex.intrastadCheckbox);
@ -59,7 +58,6 @@ describe('Item index path', () => {
await page.waitToClick(selectors.itemsIndex.idCheckbox); await page.waitToClick(selectors.itemsIndex.idCheckbox);
await page.waitToClick(selectors.itemsIndex.stemsCheckbox); await page.waitToClick(selectors.itemsIndex.stemsCheckbox);
await page.waitToClick(selectors.itemsIndex.sizeCheckbox); await page.waitToClick(selectors.itemsIndex.sizeCheckbox);
await page.waitToClick(selectors.itemsIndex.nicheCheckbox);
await page.waitToClick(selectors.itemsIndex.typeCheckbox); await page.waitToClick(selectors.itemsIndex.typeCheckbox);
await page.waitToClick(selectors.itemsIndex.categoryCheckbox); await page.waitToClick(selectors.itemsIndex.categoryCheckbox);
await page.waitToClick(selectors.itemsIndex.intrastadCheckbox); await page.waitToClick(selectors.itemsIndex.intrastadCheckbox);

View File

@ -26,7 +26,7 @@ describe('Ticket Summary path', () => {
const result = await page.waitToGetProperty(selectors.ticketSummary.header, 'innerText'); const result = await page.waitToGetProperty(selectors.ticketSummary.header, 'innerText');
expect(result).toContain(`Ticket #${ticketId}`); expect(result).toContain(`Ticket #${ticketId}`);
expect(result).toContain('Bruce Banner (109)'); expect(result).toContain('Bruce Banner (1109)');
expect(result).toContain('Somewhere in Thailand'); expect(result).toContain('Somewhere in Thailand');
}); });

View File

@ -31,7 +31,7 @@ describe('Ticket index payout path', () => {
it('should search for tickets of the same client then open the payout form', async() => { it('should search for tickets of the same client then open the payout form', async() => {
await page.waitToClick(selectors.ticketsIndex.openAdvancedSearchButton); await page.waitToClick(selectors.ticketsIndex.openAdvancedSearchButton);
await page.write(selectors.ticketsIndex.advancedSearchClient, '101'); await page.write(selectors.ticketsIndex.advancedSearchClient, '1101');
await page.keyboard.press('Enter'); await page.keyboard.press('Enter');
await page.waitForNumberOfElements(selectors.ticketsIndex.anySearchResult, 6); await page.waitForNumberOfElements(selectors.ticketsIndex.anySearchResult, 6);
await page.waitToClick(selectors.ticketsIndex.firstTicketCheckbox); await page.waitToClick(selectors.ticketsIndex.firstTicketCheckbox);
@ -56,7 +56,7 @@ describe('Ticket index payout path', () => {
it('should navigate to the client balance section and check a new balance line was entered', async() => { it('should navigate to the client balance section and check a new balance line was entered', async() => {
await page.waitToClick(selectors.globalItems.homeButton); await page.waitToClick(selectors.globalItems.homeButton);
await page.selectModule('client'); await page.selectModule('client');
await page.accessToSearchResult('101'); await page.accessToSearchResult('1101');
await page.accessToSection('client.card.balance.index'); await page.accessToSection('client.card.balance.index');
await page.waitForSelector('vn-client-balance-index vn-tbody > vn-tr'); await page.waitForSelector('vn-client-balance-index vn-tbody > vn-tr');
let result = await page.countElement('vn-client-balance-index vn-tbody > vn-tr'); let result = await page.countElement('vn-client-balance-index vn-tbody > vn-tr');

View File

@ -0,0 +1,49 @@
import selectors from '../../helpers/selectors.js';
import getBrowser from '../../helpers/puppeteer';
describe('Ticket DMS path', () => {
let browser;
let page;
beforeAll(async() => {
browser = await getBrowser();
page = browser.page;
await page.loginAndModule('employee', 'ticket');
await page.accessToSearchResult('1');
await page.accessToSection('ticket.card.dms.index');
});
afterAll(async() => {
await browser.close();
});
it('should import a document', async() => {
await page.waitToClick(selectors.ticketDms.import);
await page.autocompleteSearch(selectors.ticketDms.document, '1');
await page.waitToClick(selectors.ticketDms.saveImport);
const message = await page.waitForSnackbar();
expect(message.text).toContain('Data saved!');
});
it(`should check there's a listed document now`, async() => {
const result = await page.countElement(selectors.ticketDms.anyDocument);
expect(result).toEqual(1);
});
it('should attempt to import an existing document on this ticket', async() => {
await page.waitToClick(selectors.ticketDms.import);
await page.autocompleteSearch(selectors.ticketDms.document, '1');
await page.waitToClick(selectors.ticketDms.saveImport);
const message = await page.waitForSnackbar();
expect(message.text).toContain('This document already exists on this ticket');
});
it(`should check there's still one document`, async() => {
const result = await page.countElement(selectors.ticketDms.anyDocument);
expect(result).toEqual(1);
});
});

View File

@ -76,7 +76,7 @@ describe('Order edit basic data path', () => {
it('should be able to modify all the properties', async() => { it('should be able to modify all the properties', async() => {
await page.autocompleteSearch(selectors.orderBasicData.client, 'Tony Stark'); await page.autocompleteSearch(selectors.orderBasicData.client, 'Tony Stark');
await page.autocompleteSearch(selectors.orderBasicData.address, 'Tony Stark'); await page.autocompleteSearch(selectors.orderBasicData.address, 'Tony Stark');
await page.autocompleteSearch(selectors.orderBasicData.agency, 'Silla247'); await page.autocompleteSearch(selectors.orderBasicData.agency, 'Other agency');
await page.write(selectors.orderBasicData.observation, 'my observation'); await page.write(selectors.orderBasicData.observation, 'my observation');
await page.waitToClick(selectors.orderBasicData.saveButton); await page.waitToClick(selectors.orderBasicData.saveButton);
const message = await page.waitForSnackbar(); const message = await page.waitForSnackbar();
@ -89,14 +89,14 @@ describe('Order edit basic data path', () => {
const result = await page const result = await page
.waitToGetProperty(selectors.orderBasicData.client, 'value'); .waitToGetProperty(selectors.orderBasicData.client, 'value');
expect(result).toEqual('104: Tony Stark'); expect(result).toEqual('1104: Tony Stark');
}); });
it('should now confirm the agency have been edited', async() => { it('should now confirm the agency have been edited', async() => {
const result = await page const result = await page
.waitToGetProperty(selectors.orderBasicData.agency, 'value'); .waitToGetProperty(selectors.orderBasicData.agency, 'value');
expect(result).toEqual('7: Silla247'); expect(result).toEqual('Other agency');
}); });
it('should now confirm the observations have been edited', async() => { it('should now confirm the observations have been edited', async() => {

View File

@ -10,16 +10,30 @@ describe('InvoiceIn descriptor path', () => {
page = browser.page; page = browser.page;
await page.loginAndModule('administrative', 'invoiceIn'); await page.loginAndModule('administrative', 'invoiceIn');
await page.accessToSearchResult('10'); await page.accessToSearchResult('10');
await page.accessToSection('invoiceIn.card.basicData');
}); });
afterAll(async() => { afterAll(async() => {
await browser.close(); await browser.close();
}); });
it('should delete the invoiceIn using the descriptor more menu', async() => { it('should clone the invoiceIn using the descriptor more menu', async() => {
await page.waitToClick(selectors.invoiceInDescriptor.moreMenu);
await page.waitToClick(selectors.invoiceInDescriptor.moreMenuCloneInvoiceIn);
await page.waitToClick(selectors.invoiceInDescriptor.acceptButton);
const message = await page.waitForSnackbar();
expect(message.text).toContain('InvoiceIn cloned');
});
it('should have been redirected to the created invoiceIn summary', async() => {
await page.waitForState('invoiceIn.card.summary');
});
it('should delete the cloned invoiceIn using the descriptor more menu', async() => {
await page.waitToClick(selectors.invoiceInDescriptor.moreMenu); await page.waitToClick(selectors.invoiceInDescriptor.moreMenu);
await page.waitToClick(selectors.invoiceInDescriptor.moreMenuDeleteInvoiceIn); await page.waitToClick(selectors.invoiceInDescriptor.moreMenuDeleteInvoiceIn);
await page.waitToClick(selectors.invoiceInDescriptor.acceptDeleteButton); await page.waitToClick(selectors.invoiceInDescriptor.acceptButton);
const message = await page.waitForSnackbar(); const message = await page.waitForSnackbar();
expect(message.text).toContain('InvoiceIn deleted'); expect(message.text).toContain('InvoiceIn deleted');

View File

@ -26,7 +26,7 @@ describe('InvoiceIn basic data path', () => {
await page.write(selectors.invoiceInBasicData.supplierRef, '9999'); await page.write(selectors.invoiceInBasicData.supplierRef, '9999');
await page.pickDate(selectors.invoiceInBasicData.bookEntried, now); await page.pickDate(selectors.invoiceInBasicData.bookEntried, now);
await page.pickDate(selectors.invoiceInBasicData.booked, now); await page.pickDate(selectors.invoiceInBasicData.booked, now);
await page.autocompleteSearch(selectors.invoiceInBasicData.currency, 'Dollar USA'); await page.autocompleteSearch(selectors.invoiceInBasicData.currency, 'USD');
await page.autocompleteSearch(selectors.invoiceInBasicData.company, 'ORN'); await page.autocompleteSearch(selectors.invoiceInBasicData.company, 'ORN');
await page.waitToClick(selectors.invoiceInBasicData.save); await page.waitToClick(selectors.invoiceInBasicData.save);
const message = await page.waitForSnackbar(); const message = await page.waitForSnackbar();
@ -52,7 +52,7 @@ describe('InvoiceIn basic data path', () => {
const result = await page const result = await page
.waitToGetProperty(selectors.invoiceInBasicData.currency, 'value'); .waitToGetProperty(selectors.invoiceInBasicData.currency, 'value');
expect(result).toEqual('Dollar USA'); expect(result).toEqual('USD');
}); });
it(`should confirm the invoiceIn company was edited`, async() => { it(`should confirm the invoiceIn company was edited`, async() => {

View File

@ -0,0 +1,78 @@
import selectors from '../../helpers/selectors.js';
import getBrowser from '../../helpers/puppeteer';
describe('InvoiceIn tax path', () => {
let browser;
let page;
beforeAll(async() => {
browser = await getBrowser();
page = browser.page;
await page.loginAndModule('developer', 'invoiceIn');
await page.accessToSearchResult('2');
await page.accessToSection('invoiceIn.card.tax');
});
afterAll(async() => {
await browser.close();
});
it('should add a new tax', async() => {
await page.waitToClick(selectors.invoiceInTax.addTaxButton);
await page.autocompleteSearch(selectors.invoiceInTax.thirdExpence, '6210000567');
await page.write(selectors.invoiceInTax.thirdTaxableBase, '100');
await page.autocompleteSearch(selectors.invoiceInTax.thirdTaxType, '6');
await page.autocompleteSearch(selectors.invoiceInTax.thirdTransactionType, 'Operaciones exentas');
await page.waitToClick(selectors.invoiceInTax.saveButton);
const message = await page.waitForSnackbar();
expect(message.text).toContain('Data saved!');
});
it('should navigate to the summary and check the taxable base sum is correct', async() => {
await page.waitToClick(selectors.invoiceInDescriptor.summaryIcon);
await page.waitForState('invoiceIn.card.summary');
const result = await page.waitToGetProperty(selectors.invoiceInSummary.totalTaxableBase, 'innerText');
expect(result).toEqual('Taxable base €1,323.16');
});
it('should navigate back to the tax section and check the reciently added line contains the expected expense', async() => {
await page.accessToSection('invoiceIn.card.tax');
const result = await page.waitToGetProperty(selectors.invoiceInTax.thirdExpence, 'value');
expect(result).toEqual('6210000567: Alquiler VNH');
});
it('should check the reciently added line contains the expected taxable base', async() => {
const result = await page.waitToGetProperty(selectors.invoiceInTax.thirdTaxableBase, 'value');
expect(result).toEqual('100');
});
it('should check the reciently added line contains the expected tax type', async() => {
const result = await page.waitToGetProperty(selectors.invoiceInTax.thirdTaxType, 'value');
expect(result).toEqual('6: H.P. IVA 4% CEE');
});
it('should check the reciently added line contains the expected transaction type', async() => {
const result = await page.waitToGetProperty(selectors.invoiceInTax.thirdTransactionType, 'value');
expect(result).toEqual('37: Operaciones exentas');
});
it('should check the reciently added line contains the expected rate', async() => {
const result = await page.waitToGetProperty(selectors.invoiceInTax.thirdRate, 'value');
expect(result).toEqual('€4.00');
});
it('should delete the added line', async() => {
await page.waitToClick(selectors.invoiceInTax.thirdDeleteButton);
await page.waitToClick(selectors.invoiceInTax.saveButton);
const message = await page.waitForSnackbar();
expect(message.text).toContain('Data saved!');
});
});

View File

@ -0,0 +1,65 @@
import selectors from '../../helpers/selectors.js';
import getBrowser from '../../helpers/puppeteer';
describe('InvoiceOut manual invoice path', () => {
let browser;
let page;
beforeAll(async() => {
browser = await getBrowser();
page = browser.page;
await page.loginAndModule('administrative', 'invoiceOut');
});
afterAll(async() => {
await browser.close();
});
it('should open the manual invoice form', async() => {
await page.waitToClick(selectors.invoiceOutIndex.createInvoice);
await page.waitToClick(selectors.invoiceOutIndex.createManualInvoice);
await page.waitForSelector(selectors.invoiceOutIndex.manualInvoiceForm);
});
it('should create an invoice from a ticket', async() => {
await page.autocompleteSearch(selectors.invoiceOutIndex.manualInvoiceTicket, '7');
await page.autocompleteSearch(selectors.invoiceOutIndex.manualInvoiceSerial, 'Global nacional');
await page.autocompleteSearch(selectors.invoiceOutIndex.manualInvoiceTaxArea, 'national');
await page.waitToClick(selectors.invoiceOutIndex.saveInvoice);
const message = await page.waitForSnackbar();
expect(message.text).toContain('Data saved!');
});
it(`should have been redirected to the created invoice summary`, async() => {
await page.waitForState('invoiceOut.card.summary');
});
it(`should navigate back to the invoiceOut index`, async() => {
await page.waitToClick(selectors.globalItems.applicationsMenuButton);
await page.waitForSelector(selectors.globalItems.applicationsMenuVisible);
await page.waitToClick(selectors.globalItems.invoiceOutButton);
await page.waitForSelector(selectors.invoiceOutIndex.topbarSearch);
await page.waitForState('invoiceOut.index');
});
it('should now open the manual invoice form', async() => {
await page.waitToClick(selectors.invoiceOutIndex.createInvoice);
await page.waitToClick(selectors.invoiceOutIndex.createManualInvoice);
await page.waitForSelector(selectors.invoiceOutIndex.manualInvoiceForm);
});
it('should create an invoice from a client', async() => {
await page.autocompleteSearch(selectors.invoiceOutIndex.manualInvoiceClient, 'Charles Xavier');
await page.autocompleteSearch(selectors.invoiceOutIndex.manualInvoiceSerial, 'Global nacional');
await page.autocompleteSearch(selectors.invoiceOutIndex.manualInvoiceTaxArea, 'national');
await page.waitToClick(selectors.invoiceOutIndex.saveInvoice);
const message = await page.waitForSnackbar();
expect(message.text).toContain('Data saved!');
});
it(`should have been redirected to the created invoice summary`, async() => {
await page.waitForState('invoiceOut.card.summary');
});
});

View File

@ -0,0 +1,51 @@
import selectors from '../../helpers/selectors.js';
import getBrowser from '../../helpers/puppeteer';
describe('InvoiceOut global invoice path', () => {
let browser;
let page;
beforeAll(async() => {
browser = await getBrowser();
page = browser.page;
await page.loginAndModule('administrative', 'invoiceOut');
await page.waitToClick('[icon="search"]');
await page.waitForTimeout(1000); // index search needs time to return results
});
afterAll(async() => {
await browser.close();
});
let invoicesBefore;
it('should count the amount of invoices listed before globla invoces are made', async() => {
invoicesBefore = await page.countElement(selectors.invoiceOutIndex.searchResult);
expect(invoicesBefore).toBeGreaterThanOrEqual(4);
});
it('should open the global invoice form', async() => {
await page.waitToClick(selectors.invoiceOutIndex.createInvoice);
await page.waitToClick(selectors.invoiceOutIndex.createGlobalInvoice);
await page.waitForSelector(selectors.invoiceOutIndex.globalInvoiceForm);
});
it('should create a global invoice for charles xavier today', async() => {
await page.pickDate(selectors.invoiceOutIndex.globalInvoiceDate);
await page.autocompleteSearch(selectors.invoiceOutIndex.globalInvoiceFromClient, 'Petter Parker');
await page.autocompleteSearch(selectors.invoiceOutIndex.globalInvoiceToClient, 'Petter Parker');
await page.waitToClick(selectors.invoiceOutIndex.saveInvoice);
const message = await page.waitForSnackbar();
expect(message.text).toContain('Data saved!');
});
it('should count the amount of invoices listed after globla invocing', async() => {
await page.waitToClick('[icon="search"]');
await page.waitForTimeout(1000); // index search needs time to return results
const currentInvoices = await page.countElement(selectors.invoiceOutIndex.searchResult);
expect(currentInvoices).toBeGreaterThan(invoicesBefore);
});
});

View File

@ -119,7 +119,7 @@ describe('Travel descriptor path', () => {
await page.waitToClick(selectors.travelDescriptor.acceptClonation); await page.waitToClick(selectors.travelDescriptor.acceptClonation);
const message = await page.waitForSnackbar(); const message = await page.waitForSnackbar();
expect(message.text).toContain('A travel with this data already exists'); expect(message.text).toContain('Unable to clone this travel');
}); });
it('should update the landed date to a future date to enable cloneWithEntries', async() => { it('should update the landed date to a future date to enable cloneWithEntries', async() => {

View File

@ -32,7 +32,7 @@ describe('Travel thermograph path', () => {
await page.write(selectors.travelThermograph.newThermographId, thermographName); await page.write(selectors.travelThermograph.newThermographId, thermographName);
await page.autocompleteSearch(selectors.travelThermograph.newThermographModel, 'TEMPMATE'); await page.autocompleteSearch(selectors.travelThermograph.newThermographModel, 'TEMPMATE');
await page.autocompleteSearch(selectors.travelThermograph.newThermographWarehouse, 'Warehouse Two'); await page.autocompleteSearch(selectors.travelThermograph.newThermographWarehouse, 'Warehouse Two');
await page.autocompleteSearch(selectors.travelThermograph.newThermographTemperature, 'WARM'); await page.autocompleteSearch(selectors.travelThermograph.newThermographTemperature, 'Warm');
await page.waitToClick(selectors.travelThermograph.createThermographButton); await page.waitToClick(selectors.travelThermograph.createThermographButton);
}); });

View File

@ -29,9 +29,6 @@ describe('Entry import, create and edit buys path', () => {
}); });
it('should fill the form, import the designated JSON file and select items for each import and confirm import', async() => { it('should fill the form, import the designated JSON file and select items for each import and confirm import', async() => {
await page.write(selectors.entryBuys.ref, 'a reference');
await page.write(selectors.entryBuys.observation, 'an observation');
let currentDir = process.cwd(); let currentDir = process.cwd();
let filePath = `${currentDir}/e2e/assets/07_import_buys.json`; let filePath = `${currentDir}/e2e/assets/07_import_buys.json`;
@ -41,6 +38,9 @@ describe('Entry import, create and edit buys path', () => {
]); ]);
await fileChooser.accept([filePath]); await fileChooser.accept([filePath]);
await page.waitForTextInField(selectors.entryBuys.ref, '200573095, 200573106, 200573117, 200573506');
await page.waitForTextInField(selectors.entryBuys.observation, '729-6340 2846');
await page.autocompleteSearch(selectors.entryBuys.firstImportedItem, 'Ranged Reinforced weapon pistol 9mm'); await page.autocompleteSearch(selectors.entryBuys.firstImportedItem, 'Ranged Reinforced weapon pistol 9mm');
await page.autocompleteSearch(selectors.entryBuys.secondImportedItem, 'Melee Reinforced weapon heavy shield 1x0.5m'); await page.autocompleteSearch(selectors.entryBuys.secondImportedItem, 'Melee Reinforced weapon heavy shield 1x0.5m');
await page.autocompleteSearch(selectors.entryBuys.thirdImportedItem, 'Container medical box 1m'); await page.autocompleteSearch(selectors.entryBuys.thirdImportedItem, 'Container medical box 1m');

View File

@ -19,6 +19,8 @@
ng-if="$ctrl.displayControls"> ng-if="$ctrl.displayControls">
</vn-button> </vn-button>
</div> </div>
<div id="days-header" ng-class="{'hide-weeks': $ctrl.hideWeeks}">
<div class="week-numbers" ng-if="!$ctrl.hideWeeks"></div>
<div class="weekdays"> <div class="weekdays">
<section <section
ng-repeat="day in ::$ctrl.weekDays" ng-repeat="day in ::$ctrl.weekDays"
@ -27,6 +29,17 @@
<span>{{::day.localeChar}}</span> <span>{{::day.localeChar}}</span>
</section> </section>
</div> </div>
</div>
<div id="days-container" ng-class="{'hide-weeks': $ctrl.hideWeeks}">
<div class="weeks" ng-if="!$ctrl.hideWeeks">
<section ng-repeat="week in $ctrl.weekNumbers"
class="day">
<div class="day-number">
{{::week}}
</div>
</section>
</div>
<div <div
class="days" class="days"
ng-class="{'hide-contiguous': $ctrl.hideContiguous}"> ng-class="{'hide-contiguous': $ctrl.hideContiguous}">
@ -43,4 +56,5 @@
</div> </div>
</section> </section>
</div> </div>
</div>
</div> </div>

View File

@ -12,11 +12,12 @@ import './style.scss';
* @event move Emitted when month changes * @event move Emitted when month changes
*/ */
export default class Calendar extends FormInput { export default class Calendar extends FormInput {
constructor($element, $scope, vnWeekDays) { constructor($element, $scope, vnWeekDays, moment) {
super($element, $scope); super($element, $scope);
this.weekDays = vnWeekDays.locales; this.weekDays = vnWeekDays.locales;
this.defaultDate = new Date(); this.defaultDate = new Date();
this.displayControls = true; this.displayControls = true;
this.moment = moment;
} }
/** /**
@ -54,15 +55,23 @@ export default class Calendar extends FormInput {
); );
} }
lastDay() {
return new Date(
this.defaultDate.getFullYear(),
this.defaultDate.getMonth() + 1,
0
).getDate();
}
/** /**
* Repaints the calendar. * Repaints the calendar.
*/ */
repaint() { repaint() {
const firstWeekday = this.firstDay(this.defaultDate).getDay() - 1; const firstWeekday = this.firstDay(this.defaultDate).getDay() - 1;
let weekdayOffset = firstWeekday >= 0 ? firstWeekday : 6; this.weekdayOffset = firstWeekday >= 0 ? firstWeekday : 6;
let dayIndex = new Date(this.defaultDate.getTime()); let dayIndex = new Date(this.defaultDate.getTime());
dayIndex.setDate(1 - weekdayOffset); dayIndex.setDate(1 - this.weekdayOffset);
this.days = []; this.days = [];
@ -70,27 +79,55 @@ export default class Calendar extends FormInput {
this.days.push(new Date(dayIndex.getTime())); this.days.push(new Date(dayIndex.getTime()));
dayIndex.setDate(dayIndex.getDate() + 1); dayIndex.setDate(dayIndex.getDate() + 1);
} }
this.getWeekdays();
}
getWeekdays() {
if (!this.moment) return;
const totalSlots = this.lastDay() + this.weekdayOffset;
const weeks = Math.ceil(totalSlots / 7);
const dated = this.moment(this.defaultDate);
const firstWeekNumber = dated.set('date', 1).isoWeek();
const weekNumbers = [];
for (let w = 0; w < weeks; w++) {
let weekNumber = firstWeekNumber;
if (dated.get('month') == 0 && firstWeekNumber > 1 && w > 0)
weekNumber = 0;
weekNumbers.push(weekNumber + w);
}
this.weekNumbers = weekNumbers;
} }
/** /**
* Gets CSS classes to apply to the specified day. * Gets CSS classes to apply to the specified day.
* *
* @param {Date} day The day * @param {Date} date The date
* @return {Object} The CSS classes to apply * @return {Object} The CSS classes to apply
*/ */
getDayClasses(day) { getDayClasses(date) {
let wday = day.getDay(); let day = date.getDate();
let month = day.getMonth(); let wday = date.getDay();
let month = date.getMonth();
const currentDay = new Date().getDate();
const currentMonth = new Date().getMonth();
let classes = { let classes = {
today: day === currentDay && month === currentMonth,
weekend: wday === 6 || wday === 0, weekend: wday === 6 || wday === 0,
previous: month < this.month, previous: month < this.month,
current: month == this.month, current: month == this.month,
next: month > this.month, next: month > this.month,
event: this.hasEvents({$day: day}) event: this.hasEvents({$day: date})
}; };
let userClass = this.getClass({$day: day}); let userClass = this.getClass({$day: date});
if (userClass) classes[userClass] = true; if (userClass) classes[userClass] = true;
return classes; return classes;
@ -181,7 +218,7 @@ export default class Calendar extends FormInput {
} }
} }
} }
Calendar.$inject = ['$element', '$scope', 'vnWeekDays']; Calendar.$inject = ['$element', '$scope', 'vnWeekDays', 'moment'];
ngModule.vnComponent('vnCalendar', { ngModule.vnComponent('vnCalendar', {
template: require('./index.html'), template: require('./index.html'),
@ -193,6 +230,7 @@ ngModule.vnComponent('vnCalendar', {
formatDay: '&?', formatDay: '&?',
displayControls: '<?', displayControls: '<?',
hideYear: '<?', hideYear: '<?',
hideContiguous: '<?' hideContiguous: '<?',
hideWeeks: '<?'
} }
}); });

View File

@ -19,7 +19,14 @@
color: inherit; color: inherit;
} }
} }
& > .weekdays { & #days-header {
flex-direction: row;
display: flex
}
& #days-header > .week-numbers {
width: 10%
}
& #days-header > .weekdays {
display: flex; display: flex;
color: $color-font-secondary; color: $color-font-secondary;
margin-bottom: 8px; margin-bottom: 8px;
@ -27,17 +34,49 @@
font-weight: bold; font-weight: bold;
font-size: .8rem; font-size: .8rem;
text-align: center; text-align: center;
width: 90%;
& > section { & > section {
width: 14.28%; width: 14.28%;
cursor: pointer; cursor: pointer;
} }
} }
& > .days { & #days-header.hide-weeks {
& > .weekdays {
width: 100%
}
}
& > #days-container {
flex-direction: row;
display: flex
}
& > #days-container > .weeks {
display: flex;
flex-direction: column;
color: $color-font-secondary;
font-weight: bold;
font-size: .8rem;
width: 10%;
& > .day {
height: 40px;
display: flex; display: flex;
justify-content: center; justify-content: center;
align-items: center; align-items: center;
}
}
& #days-container.hide-weeks {
& > .days {
width: 100%
}
}
#days-container > .days {
display: flex;
flex-direction: row;
justify-content: center;
align-items: center;
flex-wrap: wrap; flex-wrap: wrap;
width: 90%;
& > .day { & > .day {
width: 14.28%; width: 14.28%;
@ -46,6 +85,17 @@
justify-content: center; justify-content: center;
align-items: center; align-items: center;
&.today {
color: $color-font-bg;
& > .day-number {
border: 2px solid $color-font-link;
&:hover {
background-color: lighten($color-font-link, 20%);
opacity: .8
}
}
}
&.weekend { &.weekend {
color: $color-font-secondary; color: $color-font-secondary;
} }

View File

@ -1,10 +1,9 @@
<div ng-if="$ctrl.model.moreRows"> <div ng-if="$ctrl.model.moreRows">
<vn-icon-button <vn-button
ng-if="!$ctrl.model.isPaging" ng-if="!$ctrl.model.isPaging"
icon="more_horiz" label="Load more results"
vn-tooltip="Load more"
ng-click="$ctrl.onLoadClick()"> ng-click="$ctrl.onLoadClick()">
</vn-icon-button> </vn-button>
<vn-spinner <vn-spinner
ng-if="$ctrl.model.isPaging" ng-if="$ctrl.model.isPaging"
enable="::true"> enable="::true">

View File

@ -62,5 +62,5 @@ Go up: Ir arriba
Loading...: Cargando... Loading...: Cargando...
No results found: Sin resultados No results found: Sin resultados
No data: Sin datos No data: Sin datos
Load more: Cargar más
Undo changes: Deshacer cambios Undo changes: Deshacer cambios
Load more results: Cargar más resultados

View File

@ -239,9 +239,6 @@
.icon-mandatory:before { .icon-mandatory:before {
content: "\e921"; content: "\e921";
} }
.icon-niche:before {
content: "\e922";
}
.icon-no036:before { .icon-no036:before {
content: "\e923"; content: "\e923";
} }

View File

@ -8,7 +8,7 @@
<missing-glyph horiz-adv-x="1024" /> <missing-glyph horiz-adv-x="1024" />
<glyph unicode="&#x20;" horiz-adv-x="512" d="" /> <glyph unicode="&#x20;" horiz-adv-x="512" d="" />
<glyph unicode="&#xe900;" glyph-name="actions" d="M354.133 558.933v183.467c0 68.267 55.467 123.733 123.733 123.733s119.467-59.733 119.467-123.733v-183.467c59.733 38.4 98.133 106.667 98.133 183.467 0 119.467-98.133 217.6-221.867 217.6s-217.6-98.133-217.6-217.6c0-76.8 38.4-145.067 98.133-183.467zM832 332.8l-221.867 110.933c-8.533 4.267-17.067 4.267-25.6 4.267h-38.4v294.4c0 38.4-34.133 72.533-72.533 72.533s-72.533-34.133-72.533-72.533v-524.8l-166.4 34.133c-4.267 0-8.533 0-12.8 0-17.067 0-29.867-4.267-38.4-17.067l-38.4-38.4 238.933-238.933c12.8-12.8 29.867-21.333 51.2-21.333h332.8c38.4 0 64 25.6 68.267 64l38.4 256c0 4.267 0 8.533 0 8.533 4.267 29.867-17.067 55.467-42.667 68.267z" /> <glyph unicode="&#xe900;" glyph-name="actions" d="M354.133 558.933v183.467c0 68.267 55.467 123.733 123.733 123.733s119.467-59.733 119.467-123.733v-183.467c59.733 38.4 98.133 106.667 98.133 183.467 0 119.467-98.133 217.6-221.867 217.6s-217.6-98.133-217.6-217.6c0-76.8 38.4-145.067 98.133-183.467zM832 332.8l-221.867 110.933c-8.533 4.267-17.067 4.267-25.6 4.267h-38.4v294.4c0 38.4-34.133 72.533-72.533 72.533s-72.533-34.133-72.533-72.533v-524.8l-166.4 34.133c-4.267 0-8.533 0-12.8 0-17.067 0-29.867-4.267-38.4-17.067l-38.4-38.4 238.933-238.933c12.8-12.8 29.867-21.333 51.2-21.333h332.8c38.4 0 64 25.6 68.267 64l38.4 256c0 4.267 0 8.533 0 8.533 4.267 29.867-17.067 55.467-42.667 68.267z" />
<glyph unicode="&#xe901;" glyph-name="basketadd" d="M197.973 505.173c-15.787-2.987-25.6-15.787-25.6-32l15.787-261.973c0-12.8 12.8-25.6 25.6-22.187h2.987c15.787 2.987 25.6 15.787 25.6 32l-12.8 258.987c-2.56 12.373-18.773 25.173-31.573 25.173zM284.587 479.573v-261.973c0-19.2 12.8-28.587 28.587-28.587s28.587 12.8 28.587 28.587v261.973c0 15.787-12.8 28.587-28.587 28.587s-28.587-12.8-28.587-28.587zM359.68 182.187h-203.093l-44.8 348.16h384.427c61.44 47.36 137.813 75.52 220.587 75.52 39.68 0 78.080-6.4 113.92-18.347v35.84c0 15.787-12.8 28.587-32 32h-140.8l-115.2 226.987c6.4 6.4 6.4 19.2 6.4 28.587-6.4 32-34.987 54.187-64 47.787-32-6.4-54.187-32-47.787-64s34.987-54.187 64-47.787l89.6-197.973h-354.56l89.6 197.973c32-6.4 60.587 19.2 64 47.787 2.987 28.587-19.2 57.6-47.787 64-32 6.4-60.587-19.2-64-47.787 0-9.387 2.987-19.2 6.4-28.587l-115.2-233.387h-140.8c-15.787 0-28.587-12.8-28.587-28.587v-64c0-15.787 12.8-28.587 28.587-28.587h22.613l51.2-377.173c2.987-12.8 15.787-22.187 28.587-22.187h242.347c-5.973 17.067-10.667 35.413-13.653 53.76zM444.16 481.707v0.853c0 12.8-12.8 25.6-28.587 25.6s-28.587-12.8-28.587-28.587v-87.040c14.507 32.853 34.133 62.72 57.173 89.173zM716.8 550.4c-169.813 0-307.2-137.387-307.2-307.2s137.387-307.2 307.2-307.2c169.813 0 307.2 137.387 307.2 307.2s-137.387 307.2-307.2 307.2zM897.28 287.573v-89.173h-135.68v-135.68h-89.173v136.107h-135.68v89.173h135.68v135.68h89.173v-135.68h135.68v-0.427z" /> <glyph unicode="&#xe901;" glyph-name="addperson" d="M201.6 755.2c0 115.2 89.6 204.8 201.6 204.8s201.6-89.6 201.6-204.8-89.6-204.8-201.6-204.8c-112 0-201.6 92.8-201.6 204.8zM387.2 153.6v208h214.4v108.8c-70.4 22.4-147.2 32-198.4 32-134.4 0-403.2-70.4-403.2-204.8v-153.6h387.2v9.6zM1024 297.6v-144h-214.4v-214.4h-144v214.4h-214.4v144h214.4v214.4h144v-214.4h214.4z" />
<glyph unicode="&#xe902;" glyph-name="albaran" d="M819.2 960h-622.933c-55.467 0-102.4-46.933-102.4-102.4v-819.2c0-55.467 46.933-102.4 102.4-102.4h622.933c55.467 0 102.4 46.933 102.4 102.4v819.2c0 55.467-46.933 102.4-102.4 102.4zM358.4 174.933h-102.4v102.4h503.467v-102.4h-401.067zM256 379.733v102.4h503.467v-102.4h-503.467zM759.467 584.533h-503.467v102.4h503.467v-102.4z" /> <glyph unicode="&#xe902;" glyph-name="albaran" d="M819.2 960h-622.933c-55.467 0-102.4-46.933-102.4-102.4v-819.2c0-55.467 46.933-102.4 102.4-102.4h622.933c55.467 0 102.4 46.933 102.4 102.4v819.2c0 55.467-46.933 102.4-102.4 102.4zM358.4 174.933h-102.4v102.4h503.467v-102.4h-401.067zM256 379.733v102.4h503.467v-102.4h-503.467zM759.467 584.533h-503.467v102.4h503.467v-102.4z" />
<glyph unicode="&#xe903;" glyph-name="artificial" d="M310.4-35.2c0 41.6 0 80 0 128-32-16-54.4-32-76.8-44.8-19.2-12.8-35.2-12.8-48 12.8-51.2 96-105.6 185.6-156.8 281.6-9.6 12.8-12.8 28.8-22.4 44.8 32 22.4 64 41.6 102.4 64-38.4 22.4-70.4 44.8-105.6 67.2 22.4 38.4 44.8 76.8 64 115.2 41.6 70.4 83.2 140.8 121.6 211.2 9.6 16 19.2 19.2 35.2 9.6 25.6-16 51.2-28.8 86.4-48 0 44.8 0 83.2 0 124.8 137.6 0 272 0 406.4 0 0-41.6 0-83.2 0-128 38.4 22.4 73.6 41.6 108.8 60.8 19.2-32 38.4-64 57.6-96 41.6-76.8 86.4-153.6 131.2-230.4 9.6-19.2 6.4-28.8-9.6-38.4-25.6-16-51.2-32-83.2-51.2 35.2-22.4 67.2-44.8 105.6-67.2-67.2-118.4-131.2-233.6-198.4-348.8-35.2 19.2-70.4 38.4-108.8 60.8 0-44.8 0-83.2 0-124.8-140.8-3.2-275.2-3.2-409.6-3.2zM796.8 745.6c-57.6-32-108.8-64-166.4-96 0 67.2 0 128 0 192-76.8 0-153.6 0-233.6 0 0-64 0-124.8 0-192-51.2 32-96 57.6-140.8 83.2-9.6 3.2-28.8 3.2-32-3.2-38.4-60.8-70.4-121.6-108.8-185.6 57.6-32 108.8-64 163.2-96-54.4-32-108.8-64-163.2-96 28.8-54.4 57.6-105.6 86.4-153.6 28.8-51.2 32-51.2 80-22.4 35.2 19.2 73.6 41.6 115.2 67.2 0-67.2 0-131.2 0-192 80 0 156.8 0 236.8 0 0 64 0 121.6 0 185.6 54.4-32 105.6-60.8 160-89.6 35.2 64 73.6 124.8 105.6 188.8 3.2 6.4-6.4 22.4-12.8 25.6-35.2 22.4-70.4 41.6-105.6 64-28.8 16-28.8 25.6 0 41.6 35.2 22.4 73.6 41.6 108.8 67.2 6.4 3.2 12.8 19.2 9.6 25.6-32 60.8-67.2 121.6-102.4 185.6zM387.2 323.2c0 86.4 0 166.4 0 252.8 83.2 0 163.2 0 246.4 0 0-83.2 0-166.4 0-252.8-83.2 0-163.2 0-246.4 0zM553.6 409.6c0 28.8 0 51.2 0 76.8-25.6 0-51.2 0-76.8 0 0-25.6 0-51.2 0-76.8 25.6 0 51.2 0 76.8 0z" /> <glyph unicode="&#xe903;" glyph-name="artificial" d="M310.4-35.2c0 41.6 0 80 0 128-32-16-54.4-32-76.8-44.8-19.2-12.8-35.2-12.8-48 12.8-51.2 96-105.6 185.6-156.8 281.6-9.6 12.8-12.8 28.8-22.4 44.8 32 22.4 64 41.6 102.4 64-38.4 22.4-70.4 44.8-105.6 67.2 22.4 38.4 44.8 76.8 64 115.2 41.6 70.4 83.2 140.8 121.6 211.2 9.6 16 19.2 19.2 35.2 9.6 25.6-16 51.2-28.8 86.4-48 0 44.8 0 83.2 0 124.8 137.6 0 272 0 406.4 0 0-41.6 0-83.2 0-128 38.4 22.4 73.6 41.6 108.8 60.8 19.2-32 38.4-64 57.6-96 41.6-76.8 86.4-153.6 131.2-230.4 9.6-19.2 6.4-28.8-9.6-38.4-25.6-16-51.2-32-83.2-51.2 35.2-22.4 67.2-44.8 105.6-67.2-67.2-118.4-131.2-233.6-198.4-348.8-35.2 19.2-70.4 38.4-108.8 60.8 0-44.8 0-83.2 0-124.8-140.8-3.2-275.2-3.2-409.6-3.2zM796.8 745.6c-57.6-32-108.8-64-166.4-96 0 67.2 0 128 0 192-76.8 0-153.6 0-233.6 0 0-64 0-124.8 0-192-51.2 32-96 57.6-140.8 83.2-9.6 3.2-28.8 3.2-32-3.2-38.4-60.8-70.4-121.6-108.8-185.6 57.6-32 108.8-64 163.2-96-54.4-32-108.8-64-163.2-96 28.8-54.4 57.6-105.6 86.4-153.6 28.8-51.2 32-51.2 80-22.4 35.2 19.2 73.6 41.6 115.2 67.2 0-67.2 0-131.2 0-192 80 0 156.8 0 236.8 0 0 64 0 121.6 0 185.6 54.4-32 105.6-60.8 160-89.6 35.2 64 73.6 124.8 105.6 188.8 3.2 6.4-6.4 22.4-12.8 25.6-35.2 22.4-70.4 41.6-105.6 64-28.8 16-28.8 25.6 0 41.6 35.2 22.4 73.6 41.6 108.8 67.2 6.4 3.2 12.8 19.2 9.6 25.6-32 60.8-67.2 121.6-102.4 185.6zM387.2 323.2c0 86.4 0 166.4 0 252.8 83.2 0 163.2 0 246.4 0 0-83.2 0-166.4 0-252.8-83.2 0-163.2 0-246.4 0zM553.6 409.6c0 28.8 0 51.2 0 76.8-25.6 0-51.2 0-76.8 0 0-25.6 0-51.2 0-76.8 25.6 0 51.2 0 76.8 0z" />
<glyph unicode="&#xe904;" glyph-name="barcode" d="M0 857.6h102.4v-819.2h-102.4v819.2zM307.2 857.6h153.6v-819.2h-153.6v819.2zM768 857.6h51.2v-819.2h-51.2v819.2zM204.8 857.6h51.2v-819.2h-51.2v819.2zM921.6 857.6h102.4v-819.2h-102.4v819.2zM563.2 857.6h102.4v-819.2h-102.4v819.2z" /> <glyph unicode="&#xe904;" glyph-name="barcode" d="M0 857.6h102.4v-819.2h-102.4v819.2zM307.2 857.6h153.6v-819.2h-153.6v819.2zM768 857.6h51.2v-819.2h-51.2v819.2zM204.8 857.6h51.2v-819.2h-51.2v819.2zM921.6 857.6h102.4v-819.2h-102.4v819.2zM563.2 857.6h102.4v-819.2h-102.4v819.2z" />
@ -34,18 +34,17 @@
<glyph unicode="&#xe918;" glyph-name="greuge" d="M921.6 729.6h-204.8v102.4c0 55.467-46.933 102.4-102.4 102.4h-204.8c-55.467 0-102.4-46.933-102.4-102.4v-102.4h-204.8c-55.467 0-102.4-46.933-102.4-102.4v-563.2c0-55.467 46.933-102.4 102.4-102.4h819.2c55.467 0 102.4 46.933 102.4 102.4v563.2c0 55.467-46.933 102.4-102.4 102.4zM614.4 729.6h-204.8v102.4h204.8v-102.4z" /> <glyph unicode="&#xe918;" glyph-name="greuge" d="M921.6 729.6h-204.8v102.4c0 55.467-46.933 102.4-102.4 102.4h-204.8c-55.467 0-102.4-46.933-102.4-102.4v-102.4h-204.8c-55.467 0-102.4-46.933-102.4-102.4v-563.2c0-55.467 46.933-102.4 102.4-102.4h819.2c55.467 0 102.4 46.933 102.4 102.4v563.2c0 55.467-46.933 102.4-102.4 102.4zM614.4 729.6h-204.8v102.4h204.8v-102.4z" />
<glyph unicode="&#xe919;" glyph-name="grid" d="M0 704h256v256h-256v-256zM384-64h256v256h-256v-256zM0-64h256v256h-256v-256zM0 320h256v256h-256v-256zM384 320h256v256h-256v-256zM768 960v-256h256v256h-256zM384 704h256v256h-256v-256zM768 320h256v256h-256v-256zM768-64h256v256h-256v-256z" /> <glyph unicode="&#xe919;" glyph-name="grid" d="M0 704h256v256h-256v-256zM384-64h256v256h-256v-256zM0-64h256v256h-256v-256zM0 320h256v256h-256v-256zM384 320h256v256h-256v-256zM768 960v-256h256v256h-256zM384 704h256v256h-256v-256zM768 320h256v256h-256v-256zM768-64h256v256h-256v-256z" />
<glyph unicode="&#xe91a;" glyph-name="history" d="M554.667 934.4c-260.267 0-469.333-209.067-469.333-469.333h-85.333l136.533-209.067 140.8 209.067h-85.333c0 200.533 162.133 362.667 362.667 362.667s362.667-162.133 362.667-362.667-162.133-362.667-362.667-362.667c-98.133 0-192 42.667-251.733 106.667l-72.533-72.533c85.333-85.333 200.533-136.533 332.8-136.533 260.267 0 465.067 209.067 465.067 465.067s-217.6 469.333-473.6 469.333zM503.467 674.133v-260.267l221.867-132.267 34.133 64-179.2 106.667v221.867h-76.8z" /> <glyph unicode="&#xe91a;" glyph-name="history" d="M554.667 934.4c-260.267 0-469.333-209.067-469.333-469.333h-85.333l136.533-209.067 140.8 209.067h-85.333c0 200.533 162.133 362.667 362.667 362.667s362.667-162.133 362.667-362.667-162.133-362.667-362.667-362.667c-98.133 0-192 42.667-251.733 106.667l-72.533-72.533c85.333-85.333 200.533-136.533 332.8-136.533 260.267 0 465.067 209.067 465.067 465.067s-217.6 469.333-473.6 469.333zM503.467 674.133v-260.267l221.867-132.267 34.133 64-179.2 106.667v221.867h-76.8z" />
<glyph unicode="&#xe91b;" glyph-name="disabled" d="M1012.48 3.413c15.36-15.36 15.36-40.107 0-55.893-7.68-7.68-17.92-11.52-27.733-11.52-10.24 0-20.053 3.84-27.733 11.52l-945.493 945.067c-15.36 15.36-15.36 40.107 0 55.893 7.68 7.68 17.92 11.52 27.733 11.52 10.24 0 20.053-3.84 27.733-11.52l945.493-945.067zM938.667 140.8v37.973c0 87.467-105.813 148.48-220.16 183.040l220.16-221.013zM608 471.893c69.547 35.84 117.333 107.52 117.333 192.427 0 119.893-96 215.893-213.333 215.893-84.053 0-156.16-49.493-190.72-121.6l286.72-286.72zM449.707 390.827c-149.333-16.213-364.373-87.040-364.373-212.053v-162.56h738.987l-374.613 374.613z" /> <glyph unicode="&#xe91b;" glyph-name="disabled" d="M98.133 174.933v17.067c0 76.8 81.067 128 179.2 162.133l-179.2-179.2zM247.467 42.667h678.4v149.333c0 110.933-183.467 179.2-328.533 200.533l-349.867-349.867zM686.933 763.733c-38.4 55.467-102.4 89.6-174.933 89.6-115.2 0-209.067-89.6-209.067-204.8 0-68.267 38.4-132.267 98.133-170.667l285.867 285.867zM0-4.267l59.733-59.733 964.267 964.267-59.733 59.733-964.267-964.267z" />
<glyph unicode="&#xe91c;" glyph-name="invoices" d="M320 576h341.333c12.8 0 21.333 8.533 21.333 21.333s-8.533 21.333-21.333 21.333h-341.333c-12.8 0-21.333-8.533-21.333-21.333s8.533-21.333 21.333-21.333zM320 469.333h341.333c12.8 0 21.333 8.533 21.333 21.333s-8.533 21.333-21.333 21.333h-341.333c-12.8 0-21.333-8.533-21.333-21.333s8.533-21.333 21.333-21.333zM320 358.4h128c12.8 0 21.333 8.533 21.333 21.333s-8.533 21.333-21.333 21.333h-128c-12.8 0-21.333-8.533-21.333-21.333s8.533-21.333 21.333-21.333zM917.333 960h-682.667c-59.733 0-106.667-46.933-106.667-106.667v-682.667c0-12.8 8.533-21.333 21.333-21.333s21.333 8.533 21.333 21.333v682.667c0 34.133 29.867 64 64 64h597.333c-12.8-17.067-21.333-38.4-21.333-64v-810.667c0-34.133-29.867-64-64-64s-64 29.867-64 64v42.667c0 12.8-8.533 21.333-21.333 21.333h-640c-12.8 0-21.333-8.533-21.333-21.333v-42.667c0-59.733 46.933-106.667 106.667-106.667h640c59.733 0 106.667 46.933 106.667 106.667v810.667c0 34.133 29.867 64 64 64s64-29.867 64-64v-42.667h-64c-12.8 0-21.333-8.533-21.333-21.333s8.533-21.333 21.333-21.333h85.333c12.8 0 21.333 8.533 21.333 21.333v64c0 59.733-46.933 106.667-106.667 106.667zM42.667 42.667v21.333h597.333v-21.333c0-25.6 8.533-46.933 21.333-64h-554.667c-34.133 0-64 29.867-64 64zM720.64 231.68c-3.413-8.533-8.96-16.213-15.36-22.613-6.827-6.4-14.080-11.947-22.613-16.64-8.533-4.267-17.493-7.68-26.88-10.24s-18.773-3.413-28.16-3.413c-12.373 0-24.32 2.133-35.413 6.4s-20.907 9.813-29.867 17.067c-8.96 7.253-16.64 15.36-23.040 25.173-6.4 9.387-11.52 19.627-14.933 30.72h-33.28l9.813 23.467h17.92c-0.427 4.267-0.853 8.96-0.853 14.080v2.133h-22.187l9.387 23.467h15.787c2.56 11.52 6.827 22.613 12.8 32.853 5.973 10.667 13.653 19.627 23.040 27.733s20.053 14.507 32 19.2c12.373 4.693 25.6 7.253 40.533 7.253 20.907 0 38.827-4.693 54.187-13.653s26.453-20.907 34.133-35.84l-33.707-23.467c-2.987 6.4-6.827 11.947-10.667 16.213-4.267 4.267-8.96 7.68-13.653 10.24s-9.813 4.267-15.36 5.547c-5.547 1.28-10.667 1.707-15.787 1.707-8.107 0-15.787-1.28-22.613-3.84s-12.8-5.973-17.92-10.24c-5.12-4.267-9.387-9.387-13.227-15.36s-6.4-11.947-8.107-18.773h81.92l-9.387-23.467h-76.373v-3.413c0-4.267 0.427-8.533 0.853-12.8h74.667l-9.387-23.467h-58.453c5.547-11.947 13.227-21.76 23.467-29.013s21.76-11.093 35.413-11.093c5.12 0 10.24 0.427 15.787 1.707s10.667 3.413 15.787 5.973c5.12 2.987 9.387 6.4 14.080 10.667 4.267 4.267 7.68 9.813 10.24 15.787l35.413-20.053z" /> <glyph unicode="&#xe91c;" glyph-name="invoices" d="M345.6 174.933h-89.6v102.4h81.067c4.267 34.133 8.533 68.267 21.333 102.4h-102.4v102.4h162.133c34.133 42.667 72.533 76.8 119.467 102.4h-281.6v102.4h520.533v-55.467c4.267 0 12.8 0 17.067 0 42.667 0 85.333-4.267 128-17.067v243.2c0 55.467-46.933 102.4-102.4 102.4h-622.933c-55.467 0-102.4-46.933-102.4-102.4v-819.2c0-55.467 46.933-102.4 102.4-102.4h302.933c-81.067 55.467-136.533 140.8-153.6 238.933zM942.933 119.467l85.333-81.067c-25.6-34.133-59.733-59.733-102.4-76.8s-85.333-25.6-136.533-25.6c-46.933 0-93.867 8.533-132.267 25.6s-76.8 42.667-106.667 72.533c-29.867 29.867-51.2 68.267-64 110.933h-93.867v68.267h81.067c0 4.267 0 12.8 0 21.333s0 17.067 0 21.333h-81.067v68.267h93.867c12.8 42.667 34.133 76.8 64 110.933 29.867 29.867 64 55.467 106.667 72.533s85.333 25.6 132.267 25.6c51.2 0 93.867-8.533 136.533-25.6s76.8-42.667 102.4-76.8l-85.333-81.067c-38.4 46.933-89.6 68.267-145.067 68.267-38.4 0-68.267-8.533-98.133-25.6s-51.2-38.4-68.267-68.267h209.067v-68.267h-230.4c0-4.267 0-12.8 0-21.333s0-17.067 0-21.333h230.4v-68.267h-209.067c17.067-29.867 38.4-51.2 68.267-68.267s59.733-25.6 98.133-25.6c55.467 0 102.4 21.333 145.067 68.267z" />
<glyph unicode="&#xe91d;" glyph-name="languaje" d="M512 960c-281.6 0-512-230.4-512-512s230.4-512 512-512c281.6 0 512 230.4 512 512s-230.4 512-512 512zM866.133 652.8h-149.333c-17.067 64-38.4 123.733-72.533 183.467 93.867-34.133 174.933-98.133 221.867-183.467zM512 857.6c42.667-59.733 76.8-128 98.133-204.8h-196.267c21.333 72.533 55.467 140.8 98.133 204.8zM115.2 345.6c-8.533 34.133-12.8 68.267-12.8 102.4s4.267 68.267 12.8 102.4h174.933c-4.267-34.133-8.533-68.267-8.533-102.4s4.267-68.267 8.533-102.4h-174.933zM157.867 243.2h149.333c17.067-64 38.4-123.733 72.533-183.467-93.867 34.133-174.933 98.133-221.867 183.467zM307.2 652.8h-149.333c51.2 85.333 128 149.333 221.867 183.467-29.867-59.733-55.467-119.467-72.533-183.467zM512 38.4c-42.667 59.733-76.8 128-98.133 204.8h196.267c-21.333-72.533-55.467-140.8-98.133-204.8zM631.467 345.6h-238.933c-4.267 34.133-8.533 68.267-8.533 102.4s4.267 68.267 8.533 102.4h238.933c4.267-34.133 8.533-68.267 8.533-102.4s-4.267-68.267-8.533-102.4zM644.267 59.733c29.867 55.467 55.467 119.467 72.533 183.467h149.333c-46.933-85.333-128-149.333-221.867-183.467zM733.867 345.6c4.267 34.133 8.533 68.267 8.533 102.4s-4.267 68.267-8.533 102.4h174.933c8.533-34.133 12.8-68.267 12.8-102.4s-4.267-68.267-12.8-102.4h-174.933z" /> <glyph unicode="&#xe91d;" glyph-name="languaje" d="M512 960c-281.6 0-512-230.4-512-512s230.4-512 512-512c281.6 0 512 230.4 512 512s-230.4 512-512 512zM866.133 652.8h-149.333c-17.067 64-38.4 123.733-72.533 183.467 93.867-34.133 174.933-98.133 221.867-183.467zM512 857.6c42.667-59.733 76.8-128 98.133-204.8h-196.267c21.333 72.533 55.467 140.8 98.133 204.8zM115.2 345.6c-8.533 34.133-12.8 68.267-12.8 102.4s4.267 68.267 12.8 102.4h174.933c-4.267-34.133-8.533-68.267-8.533-102.4s4.267-68.267 8.533-102.4h-174.933zM157.867 243.2h149.333c17.067-64 38.4-123.733 72.533-183.467-93.867 34.133-174.933 98.133-221.867 183.467zM307.2 652.8h-149.333c51.2 85.333 128 149.333 221.867 183.467-29.867-59.733-55.467-119.467-72.533-183.467zM512 38.4c-42.667 59.733-76.8 128-98.133 204.8h196.267c-21.333-72.533-55.467-140.8-98.133-204.8zM631.467 345.6h-238.933c-4.267 34.133-8.533 68.267-8.533 102.4s4.267 68.267 8.533 102.4h238.933c4.267-34.133 8.533-68.267 8.533-102.4s-4.267-68.267-8.533-102.4zM644.267 59.733c29.867 55.467 55.467 119.467 72.533 183.467h149.333c-46.933-85.333-128-149.333-221.867-183.467zM733.867 345.6c4.267 34.133 8.533 68.267 8.533 102.4s-4.267 68.267-8.533 102.4h174.933c8.533-34.133 12.8-68.267 12.8-102.4s-4.267-68.267-12.8-102.4h-174.933z" />
<glyph unicode="&#xe91e;" glyph-name="lines" d="M0 814.933h1024v-149.333h-1024v149.333zM0 524.8h1024v-149.333h-1024v149.333zM0 230.4h1024v-149.333h-1024v149.333z" /> <glyph unicode="&#xe91e;" glyph-name="lines" d="M0 814.933h1024v-149.333h-1024v149.333zM0 524.8h1024v-149.333h-1024v149.333zM0 230.4h1024v-149.333h-1024v149.333z" />
<glyph unicode="&#xe91f;" glyph-name="logout" d="M405.333 243.2l81.067-81.067 281.6 285.867-285.867 285.867-76.8-81.067 145.067-149.333h-550.4v-115.2h550.4l-145.067-145.067zM908.8 960h-793.6c-64 0-115.2-51.2-115.2-115.2v-226.133h115.2v226.133h797.867v-797.867h-797.867v230.4h-115.2v-226.133c0-64 51.2-115.2 115.2-115.2h797.867c64 0 115.2 51.2 115.2 115.2v793.6c-4.267 64-55.467 115.2-119.467 115.2z" /> <glyph unicode="&#xe91f;" glyph-name="logout" d="M405.333 243.2l81.067-81.067 281.6 285.867-285.867 285.867-76.8-81.067 145.067-149.333h-550.4v-115.2h550.4l-145.067-145.067zM908.8 960h-793.6c-64 0-115.2-51.2-115.2-115.2v-226.133h115.2v226.133h797.867v-797.867h-797.867v230.4h-115.2v-226.133c0-64 51.2-115.2 115.2-115.2h797.867c64 0 115.2 51.2 115.2 115.2v793.6c-4.267 64-55.467 115.2-119.467 115.2z" />
<glyph unicode="&#xe920;" glyph-name="mana" d="M529.067 494.933c0 17.067 12.8 29.867 29.867 29.867s29.867-12.8 29.867-29.867c0-17.067-12.8-29.867-29.867-29.867s-29.867 12.8-29.867 29.867zM614.4 324.267c21.333 0 38.4 17.067 38.4 38.4s-17.067 38.4-38.4 38.4c-21.333 0-38.4-17.067-38.4-38.4 0-17.067 17.067-38.4 38.4-38.4zM473.6 614.4c12.8 0 25.6 12.8 25.6 25.6s-12.8 25.6-25.6 25.6-25.6-12.8-25.6-25.6c0-17.067 12.8-25.6 25.6-25.6zM802.133 302.933v-4.267c-4.267-157.867-132.267-285.867-290.133-285.867s-285.867 128-290.133 285.867v4.267h580.267zM584.533 238.933c0 17.067-12.8 29.867-29.867 29.867s-29.867-12.8-29.867-29.867 12.8-29.867 29.867-29.867c17.067 0 29.867 12.8 29.867 29.867zM401.067 264.533c-25.6 0-46.933-21.333-46.933-46.933s21.333-46.933 46.933-46.933c25.6 0 46.933 21.333 46.933 46.933s-21.333 46.933-46.933 46.933zM456.533 354.133c25.6 0 46.933 21.333 46.933 46.933s-21.333 46.933-46.933 46.933c-25.6 0-46.933-21.333-46.933-46.933s21.333-46.933 46.933-46.933zM878.933 302.933c0-200.533-162.133-366.933-366.933-366.933s-366.933 162.133-366.933 366.933c0 136.533 72.533 260.267 192 324.267v187.733c-21.333 4.267-38.4 21.333-38.4 42.667v59.733c0 25.6 21.333 42.667 42.667 42.667h332.8c25.6 0 42.667-21.333 42.667-42.667v-55.467c0-21.333-17.067-42.667-38.4-42.667v-192c123.733-68.267 200.533-192 200.533-324.267zM840.533 302.933c0 128-76.8 243.2-192 298.667h-4.267v256h34.133c4.267 0 4.267 4.267 4.267 4.267v55.467c0 4.267-4.267 4.267-4.267 4.267h-332.8c-4.267 0-8.533-4.267-8.533-4.267v-55.467c0-4.267 4.267-4.267 4.267-4.267h34.133v-256h-4.267c-115.2-51.2-192-170.667-192-298.667 0-179.2 145.067-328.533 328.533-328.533s332.8 145.067 332.8 328.533z" /> <glyph unicode="&#xe920;" glyph-name="mana" d="M529.067 494.933c0 17.067 12.8 29.867 29.867 29.867s29.867-12.8 29.867-29.867c0-17.067-12.8-29.867-29.867-29.867s-29.867 12.8-29.867 29.867zM614.4 324.267c21.333 0 38.4 17.067 38.4 38.4s-17.067 38.4-38.4 38.4c-21.333 0-38.4-17.067-38.4-38.4 0-17.067 17.067-38.4 38.4-38.4zM473.6 614.4c12.8 0 25.6 12.8 25.6 25.6s-12.8 25.6-25.6 25.6-25.6-12.8-25.6-25.6c0-17.067 12.8-25.6 25.6-25.6zM802.133 302.933v-4.267c-4.267-157.867-132.267-285.867-290.133-285.867s-285.867 128-290.133 285.867v4.267h580.267zM584.533 238.933c0 17.067-12.8 29.867-29.867 29.867s-29.867-12.8-29.867-29.867 12.8-29.867 29.867-29.867c17.067 0 29.867 12.8 29.867 29.867zM401.067 264.533c-25.6 0-46.933-21.333-46.933-46.933s21.333-46.933 46.933-46.933c25.6 0 46.933 21.333 46.933 46.933s-21.333 46.933-46.933 46.933zM456.533 354.133c25.6 0 46.933 21.333 46.933 46.933s-21.333 46.933-46.933 46.933c-25.6 0-46.933-21.333-46.933-46.933s21.333-46.933 46.933-46.933zM878.933 302.933c0-200.533-162.133-366.933-366.933-366.933s-366.933 162.133-366.933 366.933c0 136.533 72.533 260.267 192 324.267v187.733c-21.333 4.267-38.4 21.333-38.4 42.667v59.733c0 25.6 21.333 42.667 42.667 42.667h332.8c25.6 0 42.667-21.333 42.667-42.667v-55.467c0-21.333-17.067-42.667-38.4-42.667v-192c123.733-68.267 200.533-192 200.533-324.267zM840.533 302.933c0 128-76.8 243.2-192 298.667h-4.267v256h34.133c4.267 0 4.267 4.267 4.267 4.267v55.467c0 4.267-4.267 4.267-4.267 4.267h-332.8c-4.267 0-8.533-4.267-8.533-4.267v-55.467c0-4.267 4.267-4.267 4.267-4.267h34.133v-256h-4.267c-115.2-51.2-192-170.667-192-298.667 0-179.2 145.067-328.533 328.533-328.533s332.8 145.067 332.8 328.533z" />
<glyph unicode="&#xe921;" glyph-name="mandatory" d="M981.333 725.333v-618.667c0-93.867-76.8-170.667-170.667-170.667h-311.467c-46.933 0-89.6 17.067-119.467 51.2l-337.067 341.333c0 0 55.467 51.2 55.467 55.467 8.533 8.533 21.333 12.8 34.133 12.8 8.533 0 17.067-4.267 25.6-8.533 0 0 183.467-106.667 183.467-106.667v507.733c0 34.133 29.867 64 64 64s64-29.867 64-64v-298.667h42.667v405.333c0 34.133 29.867 64 64 64s64-29.867 64-64v-405.333h42.667v362.667c0 34.133 29.867 64 64 64s64-29.867 64-64v-362.667h42.667v234.667c0 34.133 29.867 64 64 64s64-29.867 64-64z" /> <glyph unicode="&#xe921;" glyph-name="mandatory" d="M981.333 725.333v-618.667c0-93.867-76.8-170.667-170.667-170.667h-311.467c-46.933 0-89.6 17.067-119.467 51.2l-337.067 341.333c0 0 55.467 51.2 55.467 55.467 8.533 8.533 21.333 12.8 34.133 12.8 8.533 0 17.067-4.267 25.6-8.533 0 0 183.467-106.667 183.467-106.667v507.733c0 34.133 29.867 64 64 64s64-29.867 64-64v-298.667h42.667v405.333c0 34.133 29.867 64 64 64s64-29.867 64-64v-405.333h42.667v362.667c0 34.133 29.867 64 64 64s64-29.867 64-64v-362.667h42.667v234.667c0 34.133 29.867 64 64 64s64-29.867 64-64z" />
<glyph unicode="&#xe922;" glyph-name="niche" d="M512 960c-196.267 0-358.4-162.133-358.4-358.4 0-268.8 358.4-665.6 358.4-665.6s358.4 396.8 358.4 665.6c0 196.267-162.133 358.4-358.4 358.4zM512 473.6c-72.533 0-128 55.467-128 128s55.467 128 128 128 128-55.467 128-128-55.467-128-128-128z" /> <glyph unicode="&#xe923;" glyph-name="no036" d="M89.6 145.067v627.2c0 46.933 29.867 85.333 72.533 98.133v-46.933c-17.067-12.8-29.867-29.867-29.867-51.2v-584.533l-42.667-42.667zM409.6 465.067h-46.933v85.333h132.267l123.733 123.733h-46.933v226.133l136.533-136.533 51.2 51.2-149.333 145.067h-332.8c-42.667 0-81.067-38.4-81.067-81.067v-627.2l213.333 213.333zM686.933 51.2h-452.267l-42.667-42.667c0 0 0 0 0 0h494.933c51.2 0 93.867 38.4 102.4 85.333h-42.667c-8.533-25.6-34.133-42.667-59.733-42.667zM691.2 507.733v-42.667h-42.667l-81.067-81.067h123.733v-81.067h-204.8l-166.4-166.4h452.267c42.667 0 81.067 38.4 81.067 81.067v452.267l-162.133-162.133zM59.733-64l-59.733 59.733 964.267 964.267 59.733-59.733-964.267-964.267z" />
<glyph unicode="&#xe923;" glyph-name="no036" d="M39.253 960c-9.813 0-20.053-3.84-27.733-11.52-15.36-15.787-15.36-40.533 0-55.893l945.493-945.067c7.68-7.68 17.493-11.52 27.733-11.52 9.813 0 20.053 3.84 27.733 11.52 15.36 15.787 15.36 40.533 0 55.893l-945.493 945.067c-7.68 7.68-17.493 11.52-27.733 11.52zM555.947 520.107h116.907c19.627 0 35.413-15.787 35.413-35.413s-15.787-35.413-35.413-35.413h-46.080l52.053-52.053c14.933-2.56 26.453-14.080 29.013-29.013l145.92-145.92c4.267 9.813 6.827 20.48 6.827 32v355.413c0 20.48-8.107 40.533-22.613 54.613l-188.16 187.307c-14.933 14.933-34.56 23.040-55.467 23.040h-240.213c-42.24 0-76.373-33.707-77.653-75.52l279.467-279.040zM587.947 816.64l214.613-213.333h-175.36c-21.333 0-38.827 17.493-38.827 38.827v174.507zM353.707 176.64h313.6l-150.187 150.187h-58.027c-19.627 0-35.413 15.787-35.413 35.413 0 15.787 10.24 29.013 24.32 33.707l-171.52 171.52-0.427-313.173c0-43.093 34.987-77.653 77.653-77.653zM627.2 98.987h-389.973c-21.333 0-38.827 17.493-38.827 38.827v465.493c0 21.333-17.493 38.827-38.827 38.827s-38.827-17.493-38.827-38.827v-504.32c0-42.667 34.987-77.653 78.080-77.653h428.373c21.333 0 38.827 17.493 38.827 38.827s-17.493 38.827-38.827 38.827z" />
<glyph unicode="&#xe924;" glyph-name="notes" d="M614.4 960h-413.867c-59.733 0-106.667-46.933-106.667-102.4v-819.2c0-55.467 46.933-102.4 102.4-102.4h627.2c55.467 0 102.4 46.933 102.4 102.4v614.4l-311.467 307.2zM563.2 601.6v281.6l290.133-281.6h-290.133z" /> <glyph unicode="&#xe924;" glyph-name="notes" d="M614.4 960h-413.867c-59.733 0-106.667-46.933-106.667-102.4v-819.2c0-55.467 46.933-102.4 102.4-102.4h627.2c55.467 0 102.4 46.933 102.4 102.4v614.4l-311.467 307.2zM563.2 601.6v281.6l290.133-281.6h-290.133z" />
<glyph unicode="&#xe925;" glyph-name="noweb" d="M39.253 960c-9.813 0-20.053-3.84-27.733-11.52-15.36-15.787-15.36-40.533 0-55.893l945.493-945.067c7.68-7.68 17.493-11.52 27.733-11.52 9.813 0 20.053 3.84 27.733 11.52 15.36 15.787 15.36 40.533 0 55.893l-945.493 945.067c-7.68 7.68-17.493 11.52-27.733 11.52zM873.387 202.667c40.107 32.427 65.28 81.92 65.28 138.667 0 92.587-71.253 170.667-163.413 177.92-24.747 120.747-131.413 213.333-263.253 213.333-48.64 0-94.293-12.8-133.547-34.987l494.933-494.933zM256.853 587.093c-98.133-20.907-171.52-106.24-171.52-210.347 0-117.333 96-213.333 213.333-213.333h381.867l-423.68 423.68z" /> <glyph unicode="&#xe925;" glyph-name="noweb" d="M0 362.667c0 132.267 98.133 238.933 226.133 256 55.467 102.4 162.133 170.667 285.867 170.667 64 0 119.467-17.067 170.667-51.2l-580.267-580.267c-64 46.933-102.4 123.733-102.4 204.8zM823.467 533.333c-4.267 29.867-17.067 55.467-25.6 81.067l-507.733-507.733h520.533c119.467 0 213.333 93.867 213.333 213.333 0 110.933-85.333 204.8-200.533 213.333zM1024 900.267l-59.733 59.733-964.267-964.267 59.733-59.733 964.267 964.267z" />
<glyph unicode="&#xe926;" glyph-name="onlinepayment" d="M721.067 541.867c-166.4 0-298.667-136.533-298.667-302.933s132.267-302.933 298.667-302.933 298.667 136.533 298.667 302.933c0 170.667-132.267 302.933-298.667 302.933zM773.12 287.573v-28.16h-166.4c-0.853-6.4-1.707-13.227-1.707-20.48 0-6.827 0.427-14.080 1.707-20.48h166.4v-28.16h-159.147c9.387-26.027 25.6-46.933 48.64-62.72s49.92-23.467 80.213-23.467c39.68 0 72.533 14.080 99.413 42.24l32-31.573c-15.787-17.92-34.987-32-58.453-40.96-23.040-9.387-48.213-14.080-75.947-14.080-29.013 0-55.893 5.547-80.64 16.213s-45.653 26.027-62.72 46.080c-17.067 19.627-29.013 42.667-36.267 68.693h-56.747v28.16h52.053c-0.853 8.533-0.853 15.36-0.853 20.48s0.427 11.947 0.853 20.48h-52.053v28.16h57.173c6.827 26.027 19.2 49.067 36.267 68.693s37.973 34.987 62.72 46.080c24.747 10.667 51.627 16.213 80.64 16.213 27.733 0 53.333-4.693 75.947-14.080 23.040-9.387 42.24-23.040 58.027-40.533l-32-31.573c-26.453 27.733-59.733 41.813-99.413 41.813-30.293 0-57.173-7.68-80.213-23.467s-39.253-36.693-48.64-62.72h159.147zM874.667 810.667c-98.133 98.133-226.133 149.333-362.667 149.333 0 0 0 0-4.267 0-136.533 0-260.267-55.467-358.4-149.333-98.133-98.133-149.333-226.133-149.333-362.667 0-281.6 230.4-512 512-512 8.533 0 12.8 0 21.333 0-21.333 12.8-42.667 29.867-59.733 46.933-68.267 21.333-132.267 98.133-166.4 204.8 21.333 4.267 42.667 8.533 59.733 12.8 0 12.8-4.267 25.6-4.267 38.4-21.333 0-46.933-4.267-68.267-8.533-17.067 59.733-25.6 128-29.867 196.267h153.6c8.533 12.8 17.067 29.867 29.867 42.667h-183.467c0 81.067 12.8 153.6 34.133 221.867 59.733-12.8 123.733-21.333 187.733-21.333v-153.6c12.8 12.8 25.6 21.333 42.667 29.867v119.467c68.267 0 132.267 12.8 192 25.6 8.533-29.867 17.067-64 25.6-93.867 12.8 0 29.867-4.267 42.667-4.267-8.533 38.4-17.067 76.8-25.6 110.933 42.667 12.8 81.067 25.6 110.933 42.667 59.733-72.533 98.133-166.4 106.667-260.267 17.067-17.067 29.867-38.4 42.667-55.467 0 4.267 0 12.8 0 17.067 0 136.533-55.467 264.533-149.333 362.667zM145.067 742.4c34.133-17.067 72.533-29.867 115.2-38.4-21.333-68.267-34.133-149.333-38.4-230.4h-179.2c4.267 93.867 38.4 187.733 102.4 268.8zM132.267 170.667c-51.2 72.533-85.333 162.133-89.6 256h179.2c0-76.8 12.8-145.067 29.867-209.067-42.667-12.8-85.333-29.867-119.467-46.933zM268.8 179.2c21.333-76.8 59.733-136.533 102.4-179.2-81.067 25.6-153.6 72.533-209.067 136.533 29.867 17.067 68.267 29.867 106.667 42.667zM273.067 738.133c-34.133 12.8-68.267 21.333-98.133 34.133 0 4.267 4.267 4.267 4.267 8.533 55.467 55.467 119.467 93.867 192 115.2-25.6-21.333-46.933-55.467-68.267-89.6-8.533-21.333-21.333-42.667-29.867-68.267zM490.667 708.267h-4.267c-55.467 0-115.2 8.533-174.933 21.333 12.8 21.333 21.333 38.4 29.867 55.467 42.667 76.8 93.867 119.467 149.333 132.267v-209.067zM529.067 708.267v209.067c59.733-8.533 110.933-55.467 153.6-132.267 8.533-17.067 17.067-34.133 25.6-51.2-55.467-12.8-115.2-21.333-179.2-25.6zM746.667 742.4c-8.533 21.333-17.067 42.667-29.867 59.733-21.333 38.4-42.667 68.267-68.267 89.6 76.8-17.067 140.8-55.467 196.267-110.933-25.6-12.8-59.733-25.6-98.133-38.4z" /> <glyph unicode="&#xe926;" glyph-name="onlinepayment" d="M1024 448c0 136.533-55.467 264.533-149.333 362.667-98.133 98.133-226.133 149.333-362.667 149.333 0 0 0 0 0 0s0 0 0 0 0 0-4.267 0c0 0 0 0 0 0s0 0 0 0c-136.533 0-260.267-55.467-358.4-149.333-98.133-98.133-149.333-226.133-149.333-362.667 0-281.6 230.4-512 512-512 0 0 0 0 0 0s0 0 0 0c8.533 0 12.8 0 21.333 0-21.333 12.8-42.667 29.867-59.733 46.933-68.267 21.333-132.267 98.133-166.4 204.8 21.333 4.267 42.667 8.533 59.733 12.8 0 12.8-4.267 25.6-4.267 38.4 0 0 0 0 0 0-21.333 0-46.933-4.267-68.267-8.533-17.067 59.733-25.6 128-29.867 196.267h153.6c8.533 12.8 17.067 29.867 29.867 42.667h-183.467c0 81.067 12.8 153.6 34.133 221.867 59.733-12.8 123.733-21.333 187.733-21.333v-153.6c12.8 12.8 25.6 21.333 42.667 29.867v119.467c68.267 0 132.267 12.8 192 25.6 8.533-29.867 17.067-64 25.6-93.867 12.8 0 29.867-4.267 42.667-4.267-8.533 38.4-17.067 76.8-25.6 110.933 42.667 12.8 81.067 25.6 110.933 42.667 59.733-72.533 98.133-166.4 106.667-260.267 17.067-17.067 29.867-38.4 42.667-55.467 0 4.267 0 12.8 0 17.067 0 0 0 0 0 0s0 0 0 0 0 0 0 0zM145.067 742.4c34.133-17.067 72.533-29.867 115.2-38.4-21.333-68.267-34.133-149.333-38.4-230.4h-179.2c4.267 93.867 38.4 187.733 102.4 268.8zM132.267 170.667c-51.2 72.533-85.333 162.133-89.6 256h179.2c0-76.8 12.8-145.067 29.867-209.067-42.667-12.8-85.333-29.867-119.467-46.933zM371.2 0c-81.067 25.6-153.6 72.533-209.067 136.533 29.867 17.067 68.267 29.867 106.667 42.667 21.333-76.8 59.733-136.533 102.4-179.2zM273.067 738.133c-34.133 12.8-68.267 21.333-98.133 34.133 0 4.267 4.267 4.267 4.267 8.533 55.467 55.467 119.467 93.867 192 115.2-25.6-21.333-46.933-55.467-68.267-89.6-8.533-21.333-21.333-42.667-29.867-68.267zM486.4 708.267c-55.467 0-115.2 8.533-174.933 21.333 12.8 21.333 21.333 38.4 29.867 55.467 42.667 76.8 93.867 119.467 149.333 132.267v-209.067zM529.067 708.267v209.067c59.733-8.533 110.933-55.467 153.6-132.267 8.533-17.067 17.067-34.133 25.6-51.2-55.467-12.8-115.2-21.333-179.2-25.6zM746.667 742.4c-8.533 21.333-17.067 42.667-29.867 59.733-21.333 38.4-42.667 68.267-68.267 89.6 76.8-17.067 140.8-55.467 196.267-110.933 0 0 0 0 0 0-25.6-12.8-59.733-25.6-98.133-38.4zM721.067 541.867c-166.4 0-298.667-136.533-298.667-302.933s132.267-302.933 298.667-302.933c166.4 0 298.667 136.533 298.667 302.933 0 170.667-132.267 302.933-298.667 302.933zM853.333 110.933c-8.533-8.533-21.333-17.067-34.133-25.6s-25.6-12.8-42.667-17.067c-12.8-4.267-29.867-4.267-42.667-4.267-17.067 0-38.4 4.267-51.2 8.533-17.067 8.533-29.867 17.067-46.933 25.6-12.8 12.8-25.6 25.6-34.133 38.4s-17.067 29.867-21.333 46.933h-51.2l12.8 34.133h25.6c0 8.533 0 12.8 0 21.333v4.267h-34.133l12.8 34.133h25.6c4.267 17.067 8.533 34.133 21.333 51.2 8.533 17.067 21.333 29.867 34.133 42.667s29.867 21.333 46.933 29.867c17.067 8.533 38.4 12.8 59.733 12.8 29.867 0 59.733-8.533 81.067-21.333s38.4-29.867 51.2-55.467l-51.2-34.133c-4.267 8.533-8.533 17.067-17.067 25.6s-12.8 12.8-21.333 17.067c-8.533 4.267-17.067 8.533-21.333 8.533-8.533 0-17.067 4.267-25.6 4.267-12.8 0-25.6 0-34.133-4.267s-17.067-8.533-25.6-17.067c-8.533-8.533-12.8-12.8-21.333-21.333-4.267-8.533-8.533-17.067-12.8-29.867h123.733l-12.8-34.133h-115.2v-4.267c0-8.533 0-12.8 0-21.333h110.933l-12.8-34.133h-89.6c8.533-17.067 21.333-34.133 34.133-42.667 17.067-12.8 34.133-17.067 51.2-17.067 8.533 0 17.067 0 25.6 4.267 8.533 0 17.067 4.267 25.6 8.533s12.8 8.533 21.333 17.067c8.533 8.533 12.8 12.8 17.067 25.6l55.467-29.867c0-25.6-8.533-34.133-17.067-46.933z" />
<glyph unicode="&#xe927;" glyph-name="package" d="M512 580.267l-448 204.8 448 174.933 448-174.933-448-204.8zM46.933 755.2l448-204.8v-614.4l-448 238.933v580.267zM977.067 174.933l-448-238.933v614.4l448 204.8v-580.267z" /> <glyph unicode="&#xe927;" glyph-name="package" d="M512 580.267l-448 204.8 448 174.933 448-174.933-448-204.8zM46.933 755.2l448-204.8v-614.4l-448 238.933v580.267zM977.067 174.933l-448-238.933v614.4l448 204.8v-580.267z" />
<glyph unicode="&#xe928;" glyph-name="payment" d="M823.467 162.133c-12.8-59.733-64-81.067-115.2-98.133-38.4-17.067-81.067-21.333-123.733-25.6-29.867 0-59.733-4.267-89.6-4.267-68.267 0-132.267 12.8-192 34.133-42.667 17.067-81.067 42.667-102.4 85.333-29.867 4.267-55.467 8.533-81.067 17.067s-51.2 17.067-72.533 29.867c-29.867 17.067-46.933 42.667-46.933 81.067 0 149.333 0 294.4 0 439.467 0 34.133 12.8 59.733 38.4 76.8 38.4 29.867 85.333 38.4 136.533 46.933s102.4 8.533 149.333 4.267c59.733-4.267 119.467-17.067 170.667-51.2 4.267 0 4.267-4.267 8.533-4.267 59.733 46.933 128 59.733 200.533 64 38.4 4.267 76.8 0 115.2-4.267 51.2-4.267 102.4-17.067 149.333-42.667 38.4-17.067 55.467-46.933 55.467-89.6 0-140.8 0-281.6 0-418.133 0-42.667-21.333-72.533-55.467-93.867-29.867-17.067-64-29.867-98.133-34.133-12.8-8.533-29.867-8.533-46.933-12.8zM507.733 448c68.267 0 132.267 8.533 196.267 29.867 102.4 34.133 42.667 85.333 17.067 98.133-46.933 21.333-98.133 34.133-149.333 38.4-55.467 4.267-110.933 4.267-166.4-4.267-42.667-8.533-89.6-21.333-128-42.667-34.133-21.333-34.133-42.667-4.267-64 21.333-17.067 51.2-29.867 76.8-34.133 55.467-12.8 106.667-21.333 157.867-21.333zM251.733 273.067c0-29.867 0-55.467 0-81.067s8.533-42.667 29.867-51.2c25.6-12.8 46.933-21.333 72.533-29.867 64-21.333 128-21.333 192-21.333 51.2 0 98.133 8.533 145.067 25.6 25.6 8.533 51.2 17.067 68.267 38.4 4.267 4.267 12.8 12.8 12.8 21.333 0 29.867 0 59.733 0 93.867-132.267-72.533-388.267-72.533-520.533 4.267zM251.733 448c0-29.867 0-55.467 0-85.333 0-12.8 4.267-25.6 12.8-34.133 17.067-12.8 38.4-25.6 55.467-29.867 55.467-21.333 115.2-29.867 174.933-29.867 46.933 0 93.867 4.267 136.533 12.8 38.4 4.267 76.8 17.067 106.667 42.667 12.8 8.533 25.6 21.333 25.6 34.133 0 29.867 0 59.733 0 89.6-166.4-72.533-337.067-72.533-512 0zM968.533 733.867c-4.267 21.333-17.067 29.867-25.6 34.133-38.4 21.333-81.067 29.867-128 34.133-68.267 8.533-136.533 4.267-204.8-17.067-29.867-8.533-55.467-21.333-72.533-46.933 12.8-25.6 34.133-34.133 55.467-42.667 42.667-17.067 85.333-25.6 132.267-25.6 38.4 0 76.8 0 115.2 8.533 34.133 4.267 68.267 12.8 98.133 34.133 12.8 4.267 21.333 12.8 29.867 21.333zM273.067 665.6c12.8 0 29.867 0 42.667 0 46.933 4.267 89.6 12.8 132.267 34.133 8.533 4.267 21.333 12.8 29.867 21.333 12.8 8.533 8.533 21.333 0 34.133-8.533 4.267-17.067 12.8-25.6 17.067-64 29.867-128 34.133-196.267 34.133-29.867 0-59.733-4.267-85.333-12.8-38.4-8.533-72.533-17.067-102.4-42.667-12.8-12.8-17.067-21.333 0-34.133 12.8-8.533 25.6-17.067 42.667-21.333 46.933-25.6 102.4-34.133 162.133-29.867zM772.267 614.4c34.133-21.333 51.2-51.2 55.467-89.6 42.667 8.533 85.333 17.067 119.467 38.4 8.533 4.267 17.067 17.067 17.067 25.6 0 21.333 4.267 46.933 0 68.267-59.733-25.6-123.733-38.4-192-42.667zM55.467 652.8c0-21.333 0-42.667 0-59.733s8.533-29.867 21.333-38.4c29.867-21.333 68.267-29.867 102.4-34.133 4.267 0 8.533 0 17.067 0 0 38.4 17.067 64 42.667 89.6-64 0-123.733 12.8-183.467 42.667zM823.467 221.867c42.667 0 98.133 17.067 128 38.4 4.267 4.267 12.8 12.8 12.8 17.067 0 25.6 4.267 46.933 0 72.533-46.933-12.8-93.867-25.6-140.8-38.4 0-29.867 0-55.467 0-89.6zM968.533 503.467c-51.2-12.8-93.867-25.6-145.067-38.4 0-12.8 0-29.867 0-42.667 0-17.067-4.267-29.867 4.267-46.933 17.067 4.267 34.133 4.267 51.2 8.533 25.6 8.533 46.933 21.333 72.533 29.867 8.533 4.267 17.067 12.8 17.067 29.867-4.267 17.067 0 38.4 0 59.733zM196.267 209.067c0 34.133 0 68.267 0 98.133-46.933 8.533-93.867 17.067-136.533 38.4 0-17.067 0-34.133 0-51.2-4.267-29.867 8.533-46.933 34.133-59.733 8.533-4.267 17.067-8.533 29.867-12.8 21.333 0 42.667-4.267 72.533-12.8zM55.467 494.933c0-21.333 0-38.4 0-59.733 0-12.8 4.267-21.333 17.067-29.867 8.533-4.267 21.333-12.8 29.867-17.067 29.867-12.8 59.733-21.333 93.867-21.333 0 34.133 0 64 0 93.867-46.933 8.533-93.867 21.333-140.8 34.133z" /> <glyph unicode="&#xe928;" glyph-name="payment" d="M823.467 162.133c-12.8-59.733-64-81.067-115.2-98.133-38.4-17.067-81.067-21.333-123.733-25.6-29.867 0-59.733-4.267-89.6-4.267-68.267 0-132.267 12.8-192 34.133-42.667 17.067-81.067 42.667-102.4 85.333-29.867 4.267-55.467 8.533-81.067 17.067s-51.2 17.067-72.533 29.867c-29.867 17.067-46.933 42.667-46.933 81.067 0 149.333 0 294.4 0 439.467 0 34.133 12.8 59.733 38.4 76.8 38.4 29.867 85.333 38.4 136.533 46.933s102.4 8.533 149.333 4.267c59.733-4.267 119.467-17.067 170.667-51.2 4.267 0 4.267-4.267 8.533-4.267 59.733 46.933 128 59.733 200.533 64 38.4 4.267 76.8 0 115.2-4.267 51.2-4.267 102.4-17.067 149.333-42.667 38.4-17.067 55.467-46.933 55.467-89.6 0-140.8 0-281.6 0-418.133 0-42.667-21.333-72.533-55.467-93.867-29.867-17.067-64-29.867-98.133-34.133-12.8-8.533-29.867-8.533-46.933-12.8zM507.733 448c68.267 0 132.267 8.533 196.267 29.867 102.4 34.133 42.667 85.333 17.067 98.133-46.933 21.333-98.133 34.133-149.333 38.4-55.467 4.267-110.933 4.267-166.4-4.267-42.667-8.533-89.6-21.333-128-42.667-34.133-21.333-34.133-42.667-4.267-64 21.333-17.067 51.2-29.867 76.8-34.133 55.467-12.8 106.667-21.333 157.867-21.333zM251.733 273.067c0-29.867 0-55.467 0-81.067s8.533-42.667 29.867-51.2c25.6-12.8 46.933-21.333 72.533-29.867 64-21.333 128-21.333 192-21.333 51.2 0 98.133 8.533 145.067 25.6 25.6 8.533 51.2 17.067 68.267 38.4 4.267 4.267 12.8 12.8 12.8 21.333 0 29.867 0 59.733 0 93.867-132.267-72.533-388.267-72.533-520.533 4.267zM251.733 448c0-29.867 0-55.467 0-85.333 0-12.8 4.267-25.6 12.8-34.133 17.067-12.8 38.4-25.6 55.467-29.867 55.467-21.333 115.2-29.867 174.933-29.867 46.933 0 93.867 4.267 136.533 12.8 38.4 4.267 76.8 17.067 106.667 42.667 12.8 8.533 25.6 21.333 25.6 34.133 0 29.867 0 59.733 0 89.6-166.4-72.533-337.067-72.533-512 0zM968.533 733.867c-4.267 21.333-17.067 29.867-25.6 34.133-38.4 21.333-81.067 29.867-128 34.133-68.267 8.533-136.533 4.267-204.8-17.067-29.867-8.533-55.467-21.333-72.533-46.933 12.8-25.6 34.133-34.133 55.467-42.667 42.667-17.067 85.333-25.6 132.267-25.6 38.4 0 76.8 0 115.2 8.533 34.133 4.267 68.267 12.8 98.133 34.133 12.8 4.267 21.333 12.8 29.867 21.333zM273.067 665.6c12.8 0 29.867 0 42.667 0 46.933 4.267 89.6 12.8 132.267 34.133 8.533 4.267 21.333 12.8 29.867 21.333 12.8 8.533 8.533 21.333 0 34.133-8.533 4.267-17.067 12.8-25.6 17.067-64 29.867-128 34.133-196.267 34.133-29.867 0-59.733-4.267-85.333-12.8-38.4-8.533-72.533-17.067-102.4-42.667-12.8-12.8-17.067-21.333 0-34.133 12.8-8.533 25.6-17.067 42.667-21.333 46.933-25.6 102.4-34.133 162.133-29.867zM772.267 614.4c34.133-21.333 51.2-51.2 55.467-89.6 42.667 8.533 85.333 17.067 119.467 38.4 8.533 4.267 17.067 17.067 17.067 25.6 0 21.333 4.267 46.933 0 68.267-59.733-25.6-123.733-38.4-192-42.667zM55.467 652.8c0-21.333 0-42.667 0-59.733s8.533-29.867 21.333-38.4c29.867-21.333 68.267-29.867 102.4-34.133 4.267 0 8.533 0 17.067 0 0 38.4 17.067 64 42.667 89.6-64 0-123.733 12.8-183.467 42.667zM823.467 221.867c42.667 0 98.133 17.067 128 38.4 4.267 4.267 12.8 12.8 12.8 17.067 0 25.6 4.267 46.933 0 72.533-46.933-12.8-93.867-25.6-140.8-38.4 0-29.867 0-55.467 0-89.6zM968.533 503.467c-51.2-12.8-93.867-25.6-145.067-38.4 0-12.8 0-29.867 0-42.667 0-17.067-4.267-29.867 4.267-46.933 17.067 4.267 34.133 4.267 51.2 8.533 25.6 8.533 46.933 21.333 72.533 29.867 8.533 4.267 17.067 12.8 17.067 29.867-4.267 17.067 0 38.4 0 59.733zM196.267 209.067c0 34.133 0 68.267 0 98.133-46.933 8.533-93.867 17.067-136.533 38.4 0-17.067 0-34.133 0-51.2-4.267-29.867 8.533-46.933 34.133-59.733 8.533-4.267 17.067-8.533 29.867-12.8 21.333 0 42.667-4.267 72.533-12.8zM55.467 494.933c0-21.333 0-38.4 0-59.733 0-12.8 4.267-21.333 17.067-29.867 8.533-4.267 21.333-12.8 29.867-17.067 29.867-12.8 59.733-21.333 93.867-21.333 0 34.133 0 64 0 93.867-46.933 8.533-93.867 21.333-140.8 34.133z" />
<glyph unicode="&#xe929;" glyph-name="person" d="M512 960c-140.8 0-256-115.2-256-259.2s115.2-259.2 256-259.2 256 115.2 256 259.2c0 144-115.2 259.2-256 259.2zM512 377.6c-169.6 0-512-86.4-512-259.2v-195.2h1024v195.2c0 172.8-342.4 259.2-512 259.2z" /> <glyph unicode="&#xe929;" glyph-name="person" d="M512 960c-140.8 0-256-115.2-256-259.2s115.2-259.2 256-259.2 256 115.2 256 259.2c0 144-115.2 259.2-256 259.2zM512 377.6c-169.6 0-512-86.4-512-259.2v-195.2h1024v195.2c0 172.8-342.4 259.2-512 259.2z" />
@ -55,13 +54,13 @@
<glyph unicode="&#xe92d;" glyph-name="recovery" d="M746.667 477.867c68.267 0 140.8-21.333 196.267-72.533 110.933-102.4 115.2-277.333 8.533-384s-277.333-115.2-384-8.533c-93.867 85.333-110.933 221.867-51.2 328.533l51.2-46.933c-34.133-76.8-17.067-170.667 46.933-230.4 81.067-76.8 209.067-72.533 290.133 8.533 76.8 81.067 72.533 209.067-8.533 290.133-42.667 38.4-93.867 55.467-145.067 55.467l4.267-153.6-170.667 162.133 162.133 170.667v-119.467zM337.067 209.067c0 0 0 0 0 0-17.067 8.533-38.4 17.067-55.467 25.6-21.333 8.533-29.867 25.6-29.867 51.2s0 51.2 0 81.067c29.867-17.067 64-29.867 102.4-38.4 4.267 17.067 12.8 34.133 21.333 51.2-17.067 4.267-34.133 8.533-51.2 17.067-21.333 8.533-38.4 21.333-55.467 29.867-12.8 8.533-17.067 17.067-12.8 34.133 0 29.867 0 55.467 0 85.333 68.267-29.867 132.267-46.933 200.533-51.2 17.067 21.333 38.4 38.4 64 55.467 0 0-4.267 0-4.267 0-51.2 0-106.667 4.267-157.867 21.333-34.133 0-59.733 12.8-81.067 29.867-29.867 21.333-29.867 42.667 4.267 64 38.4 25.6 81.067 34.133 128 42.667 55.467 8.533 110.933 8.533 166.4 4.267 51.2-4.267 102.4-17.067 149.333-38.4 12.8-4.267 42.667-29.867 38.4-55.467 55.467 0 106.667-12.8 153.6-34.133 17.067 4.267 29.867 8.533 46.933 12.8 0-12.8 0-25.6 0-38.4 21.333-12.8 38.4-25.6 55.467-42.667 0 98.133 0 200.533 0 298.667 0 42.667-17.067 72.533-51.2 93.867-46.933 29.867-98.133 38.4-149.333 42.667-34.133 8.533-72.533 8.533-110.933 8.533-72.533-4.267-140.8-21.333-200.533-64-4.267 0-8.533 4.267-8.533 4.267-51.2 34.133-110.933 46.933-170.667 51.2-51.2 0-102.4 0-153.6-8.533-46.933-8.533-93.867-17.067-136.533-46.933-25.6-21.333-38.4-42.667-38.4-76.8 0-145.067 0-294.4 0-439.467 0-38.4 17.067-64 46.933-81.067 21.333-12.8 46.933-25.6 72.533-29.867 25.6-8.533 51.2-12.8 81.067-17.067 17.067-46.933 55.467-68.267 102.4-85.333 12.8-4.267 29.867-8.533 42.667-12.8-4.267 17.067-8.533 34.133-8.533 55.467zM964.267 686.933c0-8.533-8.533-21.333-17.067-25.6-34.133-21.333-76.8-34.133-119.467-38.4-4.267 38.4-17.067 68.267-55.467 89.6 68.267 0 128 12.8 192 42.667 4.267-25.6 4.267-46.933 0-68.267zM610.133 883.2c68.267 17.067 136.533 25.6 204.8 17.067 42.667-4.267 85.333-12.8 128-34.133 12.8-8.533 21.333-12.8 25.6-34.133-8.533-8.533-17.067-17.067-25.6-21.333-29.867-17.067-64-29.867-98.133-34.133-38.4-4.267-76.8-8.533-115.2-8.533-46.933 0-89.6 8.533-132.267 25.6-21.333 8.533-42.667 17.067-55.467 42.667 12.8 29.867 38.4 42.667 68.267 46.933zM68.267 844.8c25.6 25.6 64 34.133 98.133 38.4 29.867 4.267 59.733 12.8 85.333 12.8 68.267 0 132.267-4.267 196.267-34.133 8.533-4.267 17.067-8.533 25.6-17.067 12.8-8.533 12.8-21.333 0-34.133-8.533-8.533-17.067-12.8-29.867-21.333-42.667-21.333-85.333-29.867-132.267-34.133-17.067 0-29.867 0-42.667 0-55.467 4.267-110.933 12.8-162.133 29.867-12.8 4.267-29.867 12.8-42.667 21.333-12.8 17.067-8.533 25.6 4.267 38.4zM196.267 307.2c-25.6 8.533-51.2 12.8-72.533 21.333-8.533 4.267-21.333 8.533-29.867 12.8-25.6 12.8-38.4 29.867-34.133 59.733 0 17.067 0 29.867 0 51.2 46.933-25.6 89.6-34.133 136.533-38.4 0-42.667 0-72.533 0-106.667zM55.467 529.067c0 21.333 0 42.667 0 59.733 46.933-12.8 93.867-21.333 140.8-34.133 0-29.867 0-59.733 0-93.867-34.133 4.267-64 12.8-93.867 21.333-8.533 4.267-21.333 12.8-29.867 17.067-12.8 8.533-17.067 17.067-17.067 29.867zM196.267 618.667c-4.267 0-12.8-4.267-17.067 0-34.133 0-68.267 12.8-102.4 29.867-12.8 8.533-21.333 21.333-21.333 38.4s0 38.4 0 59.733c59.733-25.6 115.2-38.4 179.2-42.667-21.333-25.6-42.667-51.2-38.4-85.333z" /> <glyph unicode="&#xe92d;" glyph-name="recovery" d="M746.667 477.867c68.267 0 140.8-21.333 196.267-72.533 110.933-102.4 115.2-277.333 8.533-384s-277.333-115.2-384-8.533c-93.867 85.333-110.933 221.867-51.2 328.533l51.2-46.933c-34.133-76.8-17.067-170.667 46.933-230.4 81.067-76.8 209.067-72.533 290.133 8.533 76.8 81.067 72.533 209.067-8.533 290.133-42.667 38.4-93.867 55.467-145.067 55.467l4.267-153.6-170.667 162.133 162.133 170.667v-119.467zM337.067 209.067c0 0 0 0 0 0-17.067 8.533-38.4 17.067-55.467 25.6-21.333 8.533-29.867 25.6-29.867 51.2s0 51.2 0 81.067c29.867-17.067 64-29.867 102.4-38.4 4.267 17.067 12.8 34.133 21.333 51.2-17.067 4.267-34.133 8.533-51.2 17.067-21.333 8.533-38.4 21.333-55.467 29.867-12.8 8.533-17.067 17.067-12.8 34.133 0 29.867 0 55.467 0 85.333 68.267-29.867 132.267-46.933 200.533-51.2 17.067 21.333 38.4 38.4 64 55.467 0 0-4.267 0-4.267 0-51.2 0-106.667 4.267-157.867 21.333-34.133 0-59.733 12.8-81.067 29.867-29.867 21.333-29.867 42.667 4.267 64 38.4 25.6 81.067 34.133 128 42.667 55.467 8.533 110.933 8.533 166.4 4.267 51.2-4.267 102.4-17.067 149.333-38.4 12.8-4.267 42.667-29.867 38.4-55.467 55.467 0 106.667-12.8 153.6-34.133 17.067 4.267 29.867 8.533 46.933 12.8 0-12.8 0-25.6 0-38.4 21.333-12.8 38.4-25.6 55.467-42.667 0 98.133 0 200.533 0 298.667 0 42.667-17.067 72.533-51.2 93.867-46.933 29.867-98.133 38.4-149.333 42.667-34.133 8.533-72.533 8.533-110.933 8.533-72.533-4.267-140.8-21.333-200.533-64-4.267 0-8.533 4.267-8.533 4.267-51.2 34.133-110.933 46.933-170.667 51.2-51.2 0-102.4 0-153.6-8.533-46.933-8.533-93.867-17.067-136.533-46.933-25.6-21.333-38.4-42.667-38.4-76.8 0-145.067 0-294.4 0-439.467 0-38.4 17.067-64 46.933-81.067 21.333-12.8 46.933-25.6 72.533-29.867 25.6-8.533 51.2-12.8 81.067-17.067 17.067-46.933 55.467-68.267 102.4-85.333 12.8-4.267 29.867-8.533 42.667-12.8-4.267 17.067-8.533 34.133-8.533 55.467zM964.267 686.933c0-8.533-8.533-21.333-17.067-25.6-34.133-21.333-76.8-34.133-119.467-38.4-4.267 38.4-17.067 68.267-55.467 89.6 68.267 0 128 12.8 192 42.667 4.267-25.6 4.267-46.933 0-68.267zM610.133 883.2c68.267 17.067 136.533 25.6 204.8 17.067 42.667-4.267 85.333-12.8 128-34.133 12.8-8.533 21.333-12.8 25.6-34.133-8.533-8.533-17.067-17.067-25.6-21.333-29.867-17.067-64-29.867-98.133-34.133-38.4-4.267-76.8-8.533-115.2-8.533-46.933 0-89.6 8.533-132.267 25.6-21.333 8.533-42.667 17.067-55.467 42.667 12.8 29.867 38.4 42.667 68.267 46.933zM68.267 844.8c25.6 25.6 64 34.133 98.133 38.4 29.867 4.267 59.733 12.8 85.333 12.8 68.267 0 132.267-4.267 196.267-34.133 8.533-4.267 17.067-8.533 25.6-17.067 12.8-8.533 12.8-21.333 0-34.133-8.533-8.533-17.067-12.8-29.867-21.333-42.667-21.333-85.333-29.867-132.267-34.133-17.067 0-29.867 0-42.667 0-55.467 4.267-110.933 12.8-162.133 29.867-12.8 4.267-29.867 12.8-42.667 21.333-12.8 17.067-8.533 25.6 4.267 38.4zM196.267 307.2c-25.6 8.533-51.2 12.8-72.533 21.333-8.533 4.267-21.333 8.533-29.867 12.8-25.6 12.8-38.4 29.867-34.133 59.733 0 17.067 0 29.867 0 51.2 46.933-25.6 89.6-34.133 136.533-38.4 0-42.667 0-72.533 0-106.667zM55.467 529.067c0 21.333 0 42.667 0 59.733 46.933-12.8 93.867-21.333 140.8-34.133 0-29.867 0-59.733 0-93.867-34.133 4.267-64 12.8-93.867 21.333-8.533 4.267-21.333 12.8-29.867 17.067-12.8 8.533-17.067 17.067-17.067 29.867zM196.267 618.667c-4.267 0-12.8-4.267-17.067 0-34.133 0-68.267 12.8-102.4 29.867-12.8 8.533-21.333 21.333-21.333 38.4s0 38.4 0 59.733c59.733-25.6 115.2-38.4 179.2-42.667-21.333-25.6-42.667-51.2-38.4-85.333z" />
<glyph unicode="&#xe92e;" glyph-name="regentry" d="M554.667 913.067c-260.267 0-469.333-209.067-469.333-469.333h-85.333l136.533-209.067 140.8 209.067h-85.333c0 200.533 162.133 362.667 362.667 362.667s362.667-162.133 362.667-362.667-162.133-362.667-362.667-362.667c-98.133 0-192 42.667-251.733 106.667l-72.533-72.533c85.333-85.333 200.533-136.533 332.8-136.533 251.733 4.267 460.8 213.333 460.8 473.6s-213.333 460.8-469.333 460.8zM332.8 234.667h430.933v179.2h-110.933v-68.267l-106.667 102.4 102.4 102.4v-68.267h110.933v179.2h-426.667v-426.667z" /> <glyph unicode="&#xe92e;" glyph-name="regentry" d="M554.667 913.067c-260.267 0-469.333-209.067-469.333-469.333h-85.333l136.533-209.067 140.8 209.067h-85.333c0 200.533 162.133 362.667 362.667 362.667s362.667-162.133 362.667-362.667-162.133-362.667-362.667-362.667c-98.133 0-192 42.667-251.733 106.667l-72.533-72.533c85.333-85.333 200.533-136.533 332.8-136.533 251.733 4.267 460.8 213.333 460.8 473.6s-213.333 460.8-469.333 460.8zM332.8 234.667h430.933v179.2h-110.933v-68.267l-106.667 102.4 102.4 102.4v-68.267h110.933v179.2h-426.667v-426.667z" />
<glyph unicode="&#xe92f;" glyph-name="reserve" d="M841.6 864c48 0 86.4-38.4 86.4-86.4v-662.4c0-48-38.4-86.4-86.4-86.4h-659.2c-48 3.2-86.4 41.6-86.4 89.6v659.2c0 48 38.4 86.4 86.4 86.4h659.2zM841.6 960h-659.2c-99.2 0-182.4-83.2-182.4-182.4v-662.4c0-96 83.2-179.2 182.4-179.2h662.4c99.2 0 182.4 83.2 182.4 182.4v659.2c-3.2 99.2-86.4 182.4-185.6 182.4v0zM611.2 192l-99.2 144h-108.8v-144h-118.4v512h220.8c44.8 0 83.2-6.4 118.4-22.4 32-16 57.6-35.2 76.8-64s25.6-60.8 25.6-99.2c0-38.4-9.6-70.4-28.8-99.2s-44.8-48-76.8-64l115.2-163.2h-124.8zM582.4 585.6c-19.2 16-44.8 22.4-80 22.4h-96v-179.2h96c35.2 0 64 6.4 80 22.4 19.2 16 28.8 38.4 28.8 67.2-3.2 28.8-9.6 51.2-28.8 67.2z" /> <glyph unicode="&#xe92f;" glyph-name="reserve" d="M841.6 864c48 0 86.4-38.4 86.4-86.4v-662.4c0-48-38.4-86.4-86.4-86.4h-659.2c-48 3.2-86.4 41.6-86.4 89.6v659.2c0 48 38.4 86.4 86.4 86.4h659.2zM841.6 960h-659.2c-99.2 0-182.4-83.2-182.4-182.4v-662.4c0-96 83.2-179.2 182.4-179.2h662.4c99.2 0 182.4 83.2 182.4 182.4v659.2c-3.2 99.2-86.4 182.4-185.6 182.4v0zM611.2 192l-99.2 144h-108.8v-144h-118.4v512h220.8c44.8 0 83.2-6.4 118.4-22.4 32-16 57.6-35.2 76.8-64s25.6-60.8 25.6-99.2c0-38.4-9.6-70.4-28.8-99.2s-44.8-48-76.8-64l115.2-163.2h-124.8zM582.4 585.6c-19.2 16-44.8 22.4-80 22.4h-96v-179.2h96c35.2 0 64 6.4 80 22.4 19.2 16 28.8 38.4 28.8 67.2-3.2 28.8-9.6 51.2-28.8 67.2z" />
<glyph unicode="&#xe930;" glyph-name="risk" d="M700.587 143.36c-20.48-3.84-42.24-5.973-64.427-5.973-69.973 0-131.84 17.92-184.747 54.187s-90.453 84.48-112.213 144.213h168.533l-64.853 64.853h-119.467c-2.133 15.36-3.413 31.147-3.413 47.36 0 17.067 1.28 32.853 3.413 47.36h25.173l-114.773 114.773c-6.4-16.213-12.373-32.853-17.067-49.92h-131.413v-64.853h119.893c-1.707-20.053-2.133-35.84-2.133-47.36s0.853-27.307 2.133-47.36h-119.893v-64.853h131.84c16.213-60.16 43.947-112.64 83.2-158.293 39.253-45.227 87.467-80.64 144.213-105.813s119.040-37.547 186.027-37.547c55.467 0 106.667 8.107 154.453 24.747l-84.48 84.48zM580.693 495.36h124.587v64.853h-189.44zM407.467 668.16c13.227 13.227 27.733 25.173 43.947 35.84 52.907 36.267 114.773 54.187 184.747 54.187 91.733 0 167.68-32 228.693-96l73.813 72.533c-36.267 40.96-80.64 72.107-133.547 93.44s-110.933 32.427-174.933 32.427c-66.987 0-128.853-12.373-186.027-37.547-43.52-18.347-82.347-43.947-115.627-75.52l78.933-79.36zM39.253 960c10.24 0 20.053-3.84 27.733-11.52l945.493-945.067c15.36-15.36 15.36-40.107 0-55.893-7.68-7.68-17.92-11.52-27.733-11.52-10.24 0-20.053 3.84-27.733 11.52l-945.493 945.067c-15.36 15.36-15.36 40.107 0 55.893 7.68 7.68 17.92 11.52 27.733 11.52z" /> <glyph unicode="&#xe930;" glyph-name="risk" d="M640 320v85.333h-51.2l-85.333-85.333h136.533zM362.667 422.4c0 8.533 0 17.067 0 25.6 0 12.8 0 29.867 4.267 42.667h68.267l85.333 85.333h-128c46.933 89.6 140.8 149.333 247.467 149.333 8.533 0 17.067 0 25.6-4.267l89.6 89.6c-34.133 12.8-76.8 21.333-115.2 21.333-166.4 0-307.2-106.667-362.667-256h-149.333v-85.333h132.267c-4.267-12.8-4.267-29.867-4.267-42.667s0-29.867 4.267-42.667h-132.267v-85.333h136.533l98.133 102.4zM640 170.667c-76.8 0-149.333 34.133-200.533 85.333l-76.8-76.8c72.533-72.533 170.667-115.2 277.333-115.2 98.133 0 187.733 38.4 256 98.133l-76.8 76.8c-46.933-42.667-110.933-68.267-179.2-68.267zM1024 900.267l-59.733 59.733-964.267-964.267 59.733-59.733 964.267 964.267z" />
<glyph unicode="&#xe931;" glyph-name="settings" d="M891.733 396.8c0 17.067 4.267 34.133 4.267 51.2s0 34.133-4.267 51.2l106.667 85.333c8.533 8.533 12.8 21.333 4.267 34.133l-102.4 179.2c-4.267 12.8-21.333 17.067-29.867 12.8l-128-51.2c-25.6 21.333-55.467 38.4-85.333 51.2l-17.067 128c0 12.8-12.8 21.333-25.6 21.333h-204.8c-12.8 0-25.6-8.533-25.6-21.333l-17.067-136.533c-34.133-12.8-59.733-29.867-89.6-51.2l-128 51.2c-8.533 4.267-21.333 0-29.867-8.533l-102.4-179.2c-4.267-8.533-4.267-25.6 8.533-29.867l106.667-85.333c-4.267-17.067-4.267-34.133-4.267-51.2s0-34.133 4.267-51.2l-106.667-85.333c-8.533-8.533-12.8-21.333-4.267-34.133l102.4-179.2c4.267-12.8 21.333-17.067 29.867-12.8l128 51.2c25.6-21.333 55.467-38.4 85.333-51.2l17.067-128c0-12.8 12.8-21.333 25.6-21.333h204.8c12.8 0 25.6 8.533 25.6 21.333l21.333 136.533c29.867 12.8 59.733 29.867 85.333 51.2l128-51.2c12.8-4.267 25.6 0 29.867 12.8l102.4 179.2c4.267 12.8 4.267 25.6-4.267 34.133l-110.933 76.8zM512 268.8c-98.133 0-179.2 81.067-179.2 179.2s81.067 179.2 179.2 179.2 179.2-81.067 179.2-179.2-81.067-179.2-179.2-179.2z" /> <glyph unicode="&#xe931;" glyph-name="settings" d="M891.733 396.8c0 17.067 4.267 34.133 4.267 51.2s0 34.133-4.267 51.2l106.667 85.333c8.533 8.533 12.8 21.333 4.267 34.133l-102.4 179.2c-4.267 12.8-21.333 17.067-29.867 12.8l-128-51.2c-25.6 21.333-55.467 38.4-85.333 51.2l-17.067 128c0 12.8-12.8 21.333-25.6 21.333h-204.8c-12.8 0-25.6-8.533-25.6-21.333l-17.067-136.533c-34.133-12.8-59.733-29.867-89.6-51.2l-128 51.2c-8.533 4.267-21.333 0-29.867-8.533l-102.4-179.2c-4.267-8.533-4.267-25.6 8.533-29.867l106.667-85.333c-4.267-17.067-4.267-34.133-4.267-51.2s0-34.133 4.267-51.2l-106.667-85.333c-8.533-8.533-12.8-21.333-4.267-34.133l102.4-179.2c4.267-12.8 21.333-17.067 29.867-12.8l128 51.2c25.6-21.333 55.467-38.4 85.333-51.2l17.067-128c0-12.8 12.8-21.333 25.6-21.333h204.8c12.8 0 25.6 8.533 25.6 21.333l21.333 136.533c29.867 12.8 59.733 29.867 85.333 51.2l128-51.2c12.8-4.267 25.6 0 29.867 12.8l102.4 179.2c4.267 12.8 4.267 25.6-4.267 34.133l-110.933 76.8zM512 268.8c-98.133 0-179.2 81.067-179.2 179.2s81.067 179.2 179.2 179.2 179.2-81.067 179.2-179.2-81.067-179.2-179.2-179.2z" />
<glyph unicode="&#xe932;" glyph-name="sms" d="M896 729.6h-443.733c-29.867 0-55.467-25.6-55.467-55.467v-332.8c0-29.867 25.6-55.467 55.467-55.467h443.733c29.867 0 55.467 25.6 55.467 55.467v332.8c0 29.867-25.6 55.467-55.467 55.467zM896 618.667l-221.867-140.8-221.867 140.8v55.467l221.867-140.8 221.867 140.8v-55.467zM640 221.867v-55.467h-486.4v652.8h486.4v-25.6h85.333v25.6c0 76.8-64 140.8-140.8 140.8h-371.2c-81.067 0-140.8-64-140.8-140.8v-746.667c0-72.533 59.733-136.533 140.8-136.533h371.2c76.8 0 140.8 64 140.8 140.8v145.067h-85.333zM490.667 29.867h-187.733v46.933h187.733v-46.933z" /> <glyph unicode="&#xe932;" glyph-name="sms" d="M896 729.6h-443.733c-29.867 0-55.467-25.6-55.467-55.467v-332.8c0-29.867 25.6-55.467 55.467-55.467h443.733c29.867 0 55.467 25.6 55.467 55.467v332.8c0 29.867-25.6 55.467-55.467 55.467zM896 618.667l-221.867-140.8-221.867 140.8v55.467l221.867-140.8 221.867 140.8v-55.467zM640 221.867v-55.467h-486.4v652.8h486.4v-25.6h85.333v25.6c0 76.8-64 140.8-140.8 140.8h-371.2c-81.067 0-140.8-64-140.8-140.8v-746.667c0-72.533 59.733-136.533 140.8-136.533h371.2c76.8 0 140.8 64 140.8 140.8v145.067h-85.333zM490.667 29.867h-187.733v46.933h187.733v-46.933z" />
<glyph unicode="&#xe933;" glyph-name="solclaim" d="M1024 917.333v-938.667h-938.667v68.267h234.667v51.2h38.4c8.533-4.267 17.067-4.267 29.867-4.267h298.667c42.667 0 76.8 34.133 76.8 76.8 0 0 0 0 0 0 29.867 12.8 46.933 38.4 46.933 72.533 0 0 0 0 0 0 29.867 12.8 46.933 38.4 46.933 72.533s-21.333 59.733-46.933 72.533c0 0 0 0 0 0 0 42.667-34.133 76.8-76.8 76.8h-106.667c21.333 21.333 29.867 55.467 17.067 89.6-12.8 25.6-38.4 42.667-68.267 42.667-12.8 0-21.333-4.267-34.133-8.533l-217.6-98.133v29.867h-238.933v396.8h362.667v-209.067h209.067v209.067h366.933zM0 89.6h281.6v51.2h89.6c4.267-4.267 12.8-4.267 17.067-4.267h298.667c21.333 0 34.133 12.8 34.133 34.133s-12.8 34.133-34.133 34.133h-136.533v12.8h183.467c21.333 0 34.133 12.8 34.133 29.867 0 21.333-12.8 29.867-34.133 29.867h-179.2v12.8h234.667c21.333 0 34.133 8.533 34.133 29.867s-12.8 29.867-34.133 29.867h-230.4v12.8h183.467c21.333 0 29.867 12.8 29.867 34.133s-12.8 34.133-34.133 34.133h-230.4l93.867 64c12.8 8.533 21.333 29.867 12.8 46.933s-29.867 25.6-51.2 17.067l-251.733-119.467c-4.267 0-4.267-4.267-8.533-4.267-4.267-4.267-8.533-8.533-12.8-12.8h-8.533v55.467h-281.6v-388.267z" /> <glyph unicode="&#xe933;" glyph-name="solclaim" d="M1024 917.333v-938.667h-938.667v68.267h234.667v51.2h38.4c8.533-4.267 17.067-4.267 29.867-4.267h298.667c42.667 0 76.8 34.133 76.8 76.8 0 0 0 0 0 0 29.867 12.8 46.933 38.4 46.933 72.533 0 0 0 0 0 0 29.867 12.8 46.933 38.4 46.933 72.533s-21.333 59.733-46.933 72.533c0 0 0 0 0 0 0 42.667-34.133 76.8-76.8 76.8h-106.667c21.333 21.333 29.867 55.467 17.067 89.6-12.8 25.6-38.4 42.667-68.267 42.667-12.8 0-21.333-4.267-34.133-8.533l-217.6-98.133v29.867h-238.933v396.8h362.667v-209.067h209.067v209.067h366.933zM0 89.6h281.6v51.2h89.6c4.267-4.267 12.8-4.267 17.067-4.267h298.667c21.333 0 34.133 12.8 34.133 34.133s-12.8 34.133-34.133 34.133h-136.533v12.8h183.467c21.333 0 34.133 12.8 34.133 29.867 0 21.333-12.8 29.867-34.133 29.867h-179.2v12.8h234.667c21.333 0 34.133 8.533 34.133 29.867s-12.8 29.867-34.133 29.867h-230.4v12.8h183.467c21.333 0 29.867 12.8 29.867 34.133s-12.8 34.133-34.133 34.133h-230.4l93.867 64c12.8 8.533 21.333 29.867 12.8 46.933s-29.867 25.6-51.2 17.067l-251.733-119.467c-4.267 0-4.267-4.267-8.533-4.267-4.267-4.267-8.533-8.533-12.8-12.8h-8.533v55.467h-281.6v-388.267z" />
<glyph unicode="&#xe934;" glyph-name="solunion" d="M759.467 870.4v-136.533h-601.6c0 0-128-341.333 106.667-341.333s469.333 0 469.333 0 34.133 0 34.133-34.133-8.533-98.133-8.533-98.133h-541.867c0 0-247.467 29.867-204.8 320 0 0 8.533 140.8 72.533 298.667 0 0 21.333-8.533 85.333-8.533h588.8zM853.333 25.6c64 0 85.333-8.533 85.333-8.533 64 153.6 72.533 298.667 72.533 298.667 42.667 290.133-204.8 320-204.8 320h-541.867c0 0-8.533-64-8.533-98.133s34.133-34.133 34.133-34.133 238.933 0 469.333 0 106.667-341.333 106.667-341.333h-601.6v-136.533h588.8z" /> <glyph unicode="&#xe934;" glyph-name="solunion" d="M759.467 870.4v-136.533h-601.6c0 0-128-341.333 106.667-341.333s469.333 0 469.333 0 34.133 0 34.133-34.133-8.533-98.133-8.533-98.133h-541.867c0 0-247.467 29.867-204.8 320 0 0 8.533 140.8 72.533 298.667 0 0 21.333-8.533 85.333-8.533h588.8zM853.333 25.6c64 0 85.333-8.533 85.333-8.533 64 153.6 72.533 298.667 72.533 298.667 42.667 290.133-204.8 320-204.8 320h-541.867c0 0-8.533-64-8.533-98.133s34.133-34.133 34.133-34.133 238.933 0 469.333 0 106.667-341.333 106.667-341.333h-601.6v-136.533h588.8z" />
<glyph unicode="&#xe935;" glyph-name="splur" d="M640 960l145.067-145.067-183.467-183.467 89.6-89.6 183.467 183.467 149.333-149.333v384h-384zM384 960h-384v-384l145.067 145.067 302.933-302.933v-482.133h128v537.6l-337.067 341.333 145.067 145.067z" /> <glyph unicode="&#xe935;" glyph-name="splur" d="M640 960l145.067-145.067-183.467-183.467 89.6-89.6 183.467 183.467 149.333-149.333v384h-384zM384 960h-384v-384l145.067 145.067 302.933-302.933v-482.133h128v537.6l-337.067 341.333 145.067 145.067z" />
<glyph unicode="&#xe936;" glyph-name="supplier" d="M797.867 405.333l98.133 34.133 21.333-59.733-98.133-34.133-21.333 59.733zM1019.733 341.333c-4.267-8.533-8.533-12.8-17.067-17.067l-332.8-119.467c4.267-4.267 8.533-12.8 12.8-17.067l277.333 102.4 21.333-59.733-277.333-102.4c0-8.533 4.267-12.8 4.267-21.333 0-85.333-68.267-157.867-157.867-157.867-85.333 0-157.867 68.267-157.867 157.867 0 55.467 29.867 106.667 72.533 132.267l-217.6 610.133c-8.533 25.6-38.4 42.667-68.267 29.867l-157.867-55.467-21.333 59.733 157.867 59.733c59.733 17.067 123.733-12.8 149.333-72.533l221.867-614.4c8.533 0 12.8 0 21.333 4.267l-119.467 332.8c-4.267 17.067 4.267 34.133 17.067 38.4l136.533 51.2c0 0 0 0 0 0l115.2 42.667c0 0 0 0 0 0l136.533 51.2c8.533 4.267 17.067 4.267 25.6 0s12.8-8.533 17.067-17.067l145.067-396.8c0-4.267 0-12.8-4.267-21.333zM695.467 657.067l-59.733-21.333 8.533-21.333 59.733 21.333-8.533 21.333zM644.267 106.667c0 51.2-42.667 93.867-93.867 93.867s-93.867-42.667-93.867-93.867c0-51.2 42.667-93.867 93.867-93.867s93.867 38.4 93.867 93.867zM951.467 371.2l-119.467 332.8-76.8-29.867 17.067-51.2c4.267-8.533 4.267-17.067 0-25.6s-8.533-12.8-17.067-17.067l-115.2-42.667c-4.267 0-8.533 0-12.8 0-12.8 0-25.6 8.533-29.867 21.333l-17.067 51.2-76.8-29.867 119.467-332.8 328.533 123.733z" /> <glyph unicode="&#xe936;" glyph-name="supplier" d="M1011.2 503.467c0 0 0 0 0 0s0 0 0 0c0 4.267 0 4.267 0 4.267s0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0-4.267 0c0 0 0 0 0 0s0 0-4.267 0c0 0 0 0 0 0s0 0 0 0 0 0 0 0h-145.067l4.267 4.267c4.267 4.267 8.533 8.533 8.533 17.067v409.6c0 0 0 0 0 0s0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0-4.267 0c0 0 0 0 0 0s0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0h-392.533c-4.267 0-8.533 0-12.8-4.267l-221.867-132.267c0 0 0 0 0 0s0 0 0 0 0 0-4.267-4.267c0 0 0 0 0 0s0 0 0-4.267c0 0 0 0 0 0s0 0 0-4.267c0 0 0 0 0 0s0 0 0-4.267c0 0 0 0 0 0v-153.6c-4.267 0-8.533 0-12.8-4.267l-196.267-153.6c0 0 0 0 0 0s0 0 0 0 0 0-4.267-4.267c0 0 0 0 0 0s0 0 0-4.267c0 0 0 0 0 0s0 0 0-4.267c0 0 0 0 0 0s0 0 0-4.267c0 0 0 0 0 0v-392.533c0-12.8 8.533-21.333 21.333-21.333h349.867v-85.333c0-12.8 8.533-21.333 21.333-21.333h392.533c0 0 4.267 0 4.267 0s0 0 0 0 0 0 4.267 0c0 0 0 0 0 0s0 0 0 0 0 0 0 0 0 0 0 0l196.267 153.6c4.267 4.267 8.533 8.533 8.533 17.067l-8.533 396.8c0 0 0 0 0 0zM968.533 302.933l-76.8-59.733v153.6l76.8 59.733v-153.6zM55.467 435.2h162.133v-162.133h-162.133v162.133zM776.533 917.333l-42.667-34.133c0 0 0 0-4.267 0h-153.6l38.4 34.133h162.133zM802.133 384l-17.067-12.8h-145.067c0 0 4.267 0 4.267 0s0 0 0 0 0 0 4.267 0c0 0 0 0 0 0s0 0 4.267 0c0 0 0 0 0 0s0 0 0 0l64 51.2h136.533l-51.2-38.4zM273.067 580.267h162.133v-162.133h-162.133v162.133zM665.6 439.467v153.6l55.467 42.667v-153.6c0 0 0 0 0 0l-55.467-42.667zM665.6 618.667v157.867l51.2 42.667v-157.867l-51.2-42.667zM622.933 601.6h-162.133v162.133h162.133v-162.133zM622.933 580.267v-162.133h-162.133v162.133h162.133zM742.4 499.2v153.6l76.8 59.733v-153.6l-76.8-59.733zM814.933 738.133l-76.8-59.733v157.867l76.8 59.733v-157.867zM704 861.867l-42.667-34.133-25.6-21.333h-145.067l64 55.467h149.333zM435.2 601.6h-162.133v162.133h162.133v-162.133zM238.933 375.467c4.267 0 8.533-4.267 12.8-4.267h145.067l-4.267-4.267c0 0 0 0 0 0s0 0 0 0 0 0-4.267-4.267c0 0 0 0 0 0s0 0 0-4.267c0 0 0 0 0 0s0 0 0-4.267c0 0 0 0 0 0s0 0 0-4.267c0 0 0 0 0 0v-76.8h-149.333v102.4zM426.667 328.533h162.133v-162.133h-162.133v162.133zM610.133 328.533h162.133v-162.133h-162.133v162.133zM772.267 145.067v-166.4h-162.133v162.133h162.133zM814.933 341.333l25.6 21.333 29.867 21.333v-153.6l-55.467-42.667v153.6zM925.867 482.133l-42.667-34.133h-136.533l42.667 34.133h136.533zM452.267 917.333h123.733l-38.4-34.133h-128l42.667 34.133zM384 861.867h132.267l-64-55.467h-136.533l68.267 55.467zM230.4 584.533v-25.6h-34.133l34.133 25.6zM166.4 533.333h64v-55.467h-132.267l68.267 55.467zM55.467 251.733h162.133v-162.133h-162.133v162.133zM238.933 89.6v162.133h140.8v-162.133h-140.8zM426.667 145.067h162.133v-166.4h-162.133v166.4zM814.933 157.867l55.467 42.667v-153.6c0 0 0 0 0 0l-55.467-42.667v153.6zM891.733 59.733v153.6l76.8 59.733v-153.6l-76.8-59.733z" />
<glyph unicode="&#xe937;" glyph-name="tags" d="M729.6 960c-42.667 0-89.6 0-132.267 0-21.333 0-38.4-8.533-51.2-21.333-140.8-140.8-281.6-281.6-422.4-422.4-25.6-25.6-25.6-51.2 0-76.8 93.867-93.867 187.733-187.733 281.6-281.6 25.6-25.6 51.2-25.6 76.8 0 140.8 140.8 281.6 281.6 422.4 422.4 17.067 12.8 21.333 29.867 21.333 51.2 0 93.867 0 183.467 0 277.333 0 34.133-17.067 51.2-51.2 51.2-51.2 0-98.133 0-145.067 0zM682.667 763.733c0 25.6 17.067 46.933 42.667 46.933s46.933-21.333 46.933-46.933c0-25.6-21.333-46.933-46.933-46.933-21.333 0-42.667 21.333-42.667 46.933zM878.933 482.133c4.267-12.8 0-21.333-8.533-29.867-34.133-51.2-64-98.133-98.133-149.333-76.8-115.2-153.6-234.667-230.4-349.867-12.8-17.067-21.333-21.333-38.4-8.533-115.2 76.8-226.133 149.333-337.067 226.133-17.067 8.533-17.067 21.333-8.533 38.4 12.8 21.333 29.867 46.933 42.667 68.267 8.533 12.8 8.533 12.8 17.067 0 55.467-55.467 115.2-115.2 170.667-170.667 8.533-8.533 17.067-17.067 29.867-21.333 29.867-12.8 55.467-4.267 76.8 21.333 123.733 123.733 247.467 247.467 371.2 371.2 4.267 4.267 4.267 8.533 8.533 12.8 0-8.533 0-8.533 4.267-8.533z" /> <glyph unicode="&#xe937;" glyph-name="tags" d="M729.6 960c-42.667 0-89.6 0-132.267 0-21.333 0-38.4-8.533-51.2-21.333-140.8-140.8-281.6-281.6-422.4-422.4-25.6-25.6-25.6-51.2 0-76.8 93.867-93.867 187.733-187.733 281.6-281.6 25.6-25.6 51.2-25.6 76.8 0 140.8 140.8 281.6 281.6 422.4 422.4 17.067 12.8 21.333 29.867 21.333 51.2 0 93.867 0 183.467 0 277.333 0 34.133-17.067 51.2-51.2 51.2-51.2 0-98.133 0-145.067 0zM682.667 763.733c0 25.6 17.067 46.933 42.667 46.933s46.933-21.333 46.933-46.933c0-25.6-21.333-46.933-46.933-46.933-21.333 0-42.667 21.333-42.667 46.933zM878.933 482.133c4.267-12.8 0-21.333-8.533-29.867-34.133-51.2-64-98.133-98.133-149.333-76.8-115.2-153.6-234.667-230.4-349.867-12.8-17.067-21.333-21.333-38.4-8.533-115.2 76.8-226.133 149.333-337.067 226.133-17.067 8.533-17.067 21.333-8.533 38.4 12.8 21.333 29.867 46.933 42.667 68.267 8.533 12.8 8.533 12.8 17.067 0 55.467-55.467 115.2-115.2 170.667-170.667 8.533-8.533 17.067-17.067 29.867-21.333 29.867-12.8 55.467-4.267 76.8 21.333 123.733 123.733 247.467 247.467 371.2 371.2 4.267 4.267 4.267 8.533 8.533 12.8 0-8.533 0-8.533 4.267-8.533z" />
<glyph unicode="&#xe938;" glyph-name="tax" d="M448 192c0 174.933 145.067 320 320 320 76.8 0 145.067-25.6 196.267-68.267v324.267c4.267 51.2-38.4 98.133-93.867 98.133h-204.8c-21.333 55.467-72.533 93.867-136.533 93.867s-115.2-38.4-136.533-98.133h-209.067c-55.467 0-98.133-42.667-98.133-93.867v-674.133c0-51.2 42.667-98.133 98.133-98.133h332.8c-42.667 55.467-68.267 123.733-68.267 196.267zM529.067 861.867c29.867 0 46.933-21.333 46.933-46.933 0-29.867-25.6-46.933-46.933-46.933-29.867 0-46.933 21.333-46.933 46.933-4.267 29.867 17.067 46.933 46.933 46.933zM708.267 247.467c-8.533 0-12.8 4.267-17.067 8.533s-8.533 8.533-8.533 17.067v17.067c0 8.533 0 12.8 4.267 17.067s8.533 8.533 17.067 8.533c8.533 0 12.8-4.267 17.067-8.533s4.267-12.8 4.267-17.067v-12.8c4.267-21.333-4.267-29.867-17.067-29.867zM870.4 132.267c4.267-4.267 4.267-12.8 4.267-17.067v-21.333c0-12.8-8.533-21.333-21.333-21.333-8.533 0-12.8 4.267-17.067 8.533s-8.533 12.8-8.533 17.067v17.067c0 8.533 4.267 12.8 8.533 17.067s8.533 8.533 17.067 8.533c8.533 0 12.8-4.267 17.067-8.533zM768 448c-140.8 0-256-115.2-256-256s115.2-256 256-256 256 115.2 256 256-115.2 256-256 256zM635.733 273.067v17.067c0 21.333 4.267 34.133 17.067 46.933s29.867 17.067 51.2 17.067c21.333 0 38.4-4.267 51.2-17.067s17.067-29.867 17.067-46.933v-17.067c0-21.333-4.267-34.133-17.067-46.933s-29.867-17.067-51.2-17.067c-21.333 0-38.4 4.267-51.2 17.067-8.533 12.8-17.067 29.867-17.067 46.933zM721.067 59.733l-34.133 17.067 153.6 243.2 34.133-17.067-153.6-243.2zM925.867 98.133c0-21.333-4.267-34.133-17.067-46.933s-29.867-17.067-51.2-17.067c-21.333 0-38.4 4.267-51.2 17.067s-21.333 25.6-21.333 46.933v17.067c0 21.333 4.267 34.133 17.067 46.933s29.867 17.067 51.2 17.067c21.333 0 38.4-4.267 51.2-17.067s17.067-29.867 17.067-46.933v-17.067z" /> <glyph unicode="&#xe938;" glyph-name="tax" d="M448 192c0 174.933 145.067 320 320 320 76.8 0 145.067-25.6 196.267-68.267v324.267c4.267 51.2-38.4 98.133-93.867 98.133h-204.8c-21.333 55.467-72.533 93.867-136.533 93.867s-115.2-38.4-136.533-98.133h-209.067c-55.467 0-98.133-42.667-98.133-93.867v-674.133c0-51.2 42.667-98.133 98.133-98.133h332.8c-42.667 55.467-68.267 123.733-68.267 196.267zM529.067 861.867c29.867 0 46.933-21.333 46.933-46.933 0-29.867-25.6-46.933-46.933-46.933-29.867 0-46.933 21.333-46.933 46.933-4.267 29.867 17.067 46.933 46.933 46.933zM708.267 247.467c-8.533 0-12.8 4.267-17.067 8.533s-8.533 8.533-8.533 17.067v17.067c0 8.533 0 12.8 4.267 17.067s8.533 8.533 17.067 8.533c8.533 0 12.8-4.267 17.067-8.533s4.267-12.8 4.267-17.067v-12.8c4.267-21.333-4.267-29.867-17.067-29.867zM870.4 132.267c4.267-4.267 4.267-12.8 4.267-17.067v-21.333c0-12.8-8.533-21.333-21.333-21.333-8.533 0-12.8 4.267-17.067 8.533s-8.533 12.8-8.533 17.067v17.067c0 8.533 4.267 12.8 8.533 17.067s8.533 8.533 17.067 8.533c8.533 0 12.8-4.267 17.067-8.533zM768 448c-140.8 0-256-115.2-256-256s115.2-256 256-256 256 115.2 256 256-115.2 256-256 256zM635.733 273.067v17.067c0 21.333 4.267 34.133 17.067 46.933s29.867 17.067 51.2 17.067c21.333 0 38.4-4.267 51.2-17.067s17.067-29.867 17.067-46.933v-17.067c0-21.333-4.267-34.133-17.067-46.933s-29.867-17.067-51.2-17.067c-21.333 0-38.4 4.267-51.2 17.067-8.533 12.8-17.067 29.867-17.067 46.933zM721.067 59.733l-34.133 17.067 153.6 243.2 34.133-17.067-153.6-243.2zM925.867 98.133c0-21.333-4.267-34.133-17.067-46.933s-29.867-17.067-51.2-17.067c-21.333 0-38.4 4.267-51.2 17.067s-21.333 25.6-21.333 46.933v17.067c0 21.333 4.267 34.133 17.067 46.933s29.867 17.067 51.2 17.067c21.333 0 38.4-4.267 51.2-17.067s17.067-29.867 17.067-46.933v-17.067z" />
<glyph unicode="&#xe939;" glyph-name="ticket" d="M200.533 311.467c12.8 38.4 25.6 76.8 38.4 115.2 8.533 25.6 17.067 55.467 29.867 81.067 29.867 81.067 55.467 166.4 85.333 247.467 21.333 55.467 38.4 110.933 59.733 166.4 4.267 12.8 8.533 21.333 12.8 34.133 0 4.267 4.267 4.267 8.533 4.267 59.733-12.8 115.2-21.333 174.933-34.133 81.067-17.067 157.867-34.133 238.933-46.933 55.467-12.8 110.933-21.333 170.667-34.133 4.267-4.267 4.267-4.267 4.267-12.8-29.867-89.6-59.733-179.2-89.6-264.533-21.333-64-42.667-128-64-187.733-25.6-68.267-46.933-140.8-76.8-209.067-17.067-51.2-38.4-98.133-59.733-145.067-12.8-25.6-25.6-51.2-46.933-68.267-17.067-17.067-34.133-21.333-59.733-12.8-59.733 17.067-93.867 59.733-106.667 119.467-4.267 25.6-8.533 51.2-8.533 76.8 0 12.8 0 25.6 0 38.4s-8.533 21.333-17.067 25.6c-76.8 29.867-153.6 64-234.667 93.867-25.6 0-42.667 4.267-59.733 12.8zM554.667 550.4c-17.067 0-29.867-4.267-29.867-17.067-4.267-12.8 4.267-25.6 17.067-29.867 59.733-21.333 123.733-42.667 183.467-59.733 12.8-4.267 25.6 0 29.867 8.533 8.533 17.067 4.267 29.867-12.8 38.4-46.933 17.067-98.133 34.133-145.067 46.933-17.067 4.267-34.133 8.533-42.667 12.8zM477.867 375.467c-4.267 0-8.533 0-12.8-4.267-8.533-4.267-12.8-12.8-12.8-21.333 0-12.8 8.533-21.333 21.333-25.6 59.733-21.333 119.467-38.4 183.467-59.733 17.067-4.267 29.867 0 34.133 12.8s-4.267 25.6-17.067 29.867c-42.667 12.8-85.333 29.867-132.267 42.667-25.6 12.8-46.933 21.333-64 25.6zM806.4 631.467c21.333 0 29.867 4.267 34.133 21.333 4.267 8.533-8.533 21.333-21.333 25.6-21.333 4.267-42.667 12.8-68.267 17.067-38.4 12.8-76.8 21.333-119.467 34.133-17.067 4.267-34.133-8.533-29.867-25.6 0-12.8 12.8-17.067 25.6-21.333 42.667-12.8 89.6-25.6 132.267-38.4 17.067-4.267 34.133-8.533 46.933-12.8zM516.267 746.667c0 12.8-12.8 25.6-25.6 25.6-17.067 0-25.6-8.533-25.6-21.333s12.8-25.6 29.867-25.6c12.8-4.267 21.333 4.267 21.333 21.333zM426.667 541.867c12.8 0 25.6 8.533 25.6 21.333s-12.8 25.6-25.6 25.6c-17.067 0-29.867-8.533-25.6-21.333-4.267-12.8 4.267-25.6 25.6-25.6zM354.133 422.4c-17.067 0-25.6-8.533-25.6-25.6s12.8-25.6 29.867-25.6c12.8 0 25.6 8.533 25.6 21.333-4.267 17.067-17.067 29.867-29.867 29.867zM4.267 341.333c25.6-12.8 55.467-21.333 81.067-34.133 59.733-25.6 119.467-46.933 174.933-72.533 51.2-21.333 102.4-42.667 157.867-64 8.533-4.267 17.067-8.533 25.6-12.8s12.8-8.533 12.8-17.067c0-42.667 4.267-89.6 21.333-128 8.533-17.067 17.067-38.4 25.6-55.467-12.8 4.267-29.867 8.533-42.667 17.067-46.933 17.067-93.867 38.4-145.067 55.467-42.667 17.067-85.333 38.4-128 55.467-29.867 12.8-59.733 25.6-89.6 38.4s-55.467 38.4-72.533 64c-21.333 42.667-25.6 85.333-25.6 132.267 0 4.267 4.267 12.8 4.267 21.333z" /> <glyph unicode="&#xe939;" glyph-name="ticket" d="M200.533 311.467c12.8 38.4 25.6 76.8 38.4 115.2 8.533 25.6 17.067 55.467 29.867 81.067 29.867 81.067 55.467 166.4 85.333 247.467 21.333 55.467 38.4 110.933 59.733 166.4 4.267 12.8 8.533 21.333 12.8 34.133 0 4.267 4.267 4.267 8.533 4.267 59.733-12.8 115.2-21.333 174.933-34.133 81.067-17.067 157.867-34.133 238.933-46.933 55.467-12.8 110.933-21.333 170.667-34.133 4.267-4.267 4.267-4.267 4.267-12.8-29.867-89.6-59.733-179.2-89.6-264.533-21.333-64-42.667-128-64-187.733-25.6-68.267-46.933-140.8-76.8-209.067-17.067-51.2-38.4-98.133-59.733-145.067-12.8-25.6-25.6-51.2-46.933-68.267-17.067-17.067-34.133-21.333-59.733-12.8-59.733 17.067-93.867 59.733-106.667 119.467-4.267 25.6-8.533 51.2-8.533 76.8 0 12.8 0 25.6 0 38.4s-8.533 21.333-17.067 25.6c-76.8 29.867-153.6 64-234.667 93.867-25.6 0-42.667 4.267-59.733 12.8zM554.667 550.4c-17.067 0-29.867-4.267-29.867-17.067-4.267-12.8 4.267-25.6 17.067-29.867 59.733-21.333 123.733-42.667 183.467-59.733 12.8-4.267 25.6 0 29.867 8.533 8.533 17.067 4.267 29.867-12.8 38.4-46.933 17.067-98.133 34.133-145.067 46.933-17.067 4.267-34.133 8.533-42.667 12.8zM477.867 375.467c-4.267 0-8.533 0-12.8-4.267-8.533-4.267-12.8-12.8-12.8-21.333 0-12.8 8.533-21.333 21.333-25.6 59.733-21.333 119.467-38.4 183.467-59.733 17.067-4.267 29.867 0 34.133 12.8s-4.267 25.6-17.067 29.867c-42.667 12.8-85.333 29.867-132.267 42.667-25.6 12.8-46.933 21.333-64 25.6zM806.4 631.467c21.333 0 29.867 4.267 34.133 21.333 4.267 8.533-8.533 21.333-21.333 25.6-21.333 4.267-42.667 12.8-68.267 17.067-38.4 12.8-76.8 21.333-119.467 34.133-17.067 4.267-34.133-8.533-29.867-25.6 0-12.8 12.8-17.067 25.6-21.333 42.667-12.8 89.6-25.6 132.267-38.4 17.067-4.267 34.133-8.533 46.933-12.8zM516.267 746.667c0 12.8-12.8 25.6-25.6 25.6-17.067 0-25.6-8.533-25.6-21.333s12.8-25.6 29.867-25.6c12.8-4.267 21.333 4.267 21.333 21.333zM426.667 541.867c12.8 0 25.6 8.533 25.6 21.333s-12.8 25.6-25.6 25.6c-17.067 0-29.867-8.533-25.6-21.333-4.267-12.8 4.267-25.6 25.6-25.6zM354.133 422.4c-17.067 0-25.6-8.533-25.6-25.6s12.8-25.6 29.867-25.6c12.8 0 25.6 8.533 25.6 21.333-4.267 17.067-17.067 29.867-29.867 29.867zM4.267 341.333c25.6-12.8 55.467-21.333 81.067-34.133 59.733-25.6 119.467-46.933 174.933-72.533 51.2-21.333 102.4-42.667 157.867-64 8.533-4.267 17.067-8.533 25.6-12.8s12.8-8.533 12.8-17.067c0-42.667 4.267-89.6 21.333-128 8.533-17.067 17.067-38.4 25.6-55.467-12.8 4.267-29.867 8.533-42.667 17.067-46.933 17.067-93.867 38.4-145.067 55.467-42.667 17.067-85.333 38.4-128 55.467-29.867 12.8-59.733 25.6-89.6 38.4s-55.467 38.4-72.533 64c-21.333 42.667-25.6 85.333-25.6 132.267 0 4.267 4.267 12.8 4.267 21.333z" />
@ -79,7 +78,7 @@
<glyph unicode="&#xe945;" glyph-name="linesplit" d="M686.933 217.6h-119.467l-268.8 230.4 268.8 230.4h119.467v-153.6l337.067 196.267-337.067 238.933v-153.6h-153.6l-290.133-251.733h-243.2v-213.333h243.2l290.133-251.733h153.6v-153.6l337.067 238.933-337.067 196.267z" /> <glyph unicode="&#xe945;" glyph-name="linesplit" d="M686.933 217.6h-119.467l-268.8 230.4 268.8 230.4h119.467v-153.6l337.067 196.267-337.067 238.933v-153.6h-153.6l-290.133-251.733h-243.2v-213.333h243.2l290.133-251.733h153.6v-153.6l337.067 238.933-337.067 196.267z" />
<glyph unicode="&#xe946;" glyph-name="linedelete" d="M354.133 192l-98.133 98.133 157.867 153.6-157.867 157.867 98.133 102.4 157.867-157.867 157.867 153.6 98.133-98.133-157.867-157.867 157.867-153.6-98.133-98.133-157.867 157.867-157.867-157.867zM780.8 507.733l-64-64 59.733-55.467h247.467v119.467h-243.2zM307.2 443.733l-64 64h-243.2v-119.467h251.733l55.467 55.467z" /> <glyph unicode="&#xe946;" glyph-name="linedelete" d="M354.133 192l-98.133 98.133 157.867 153.6-157.867 157.867 98.133 102.4 157.867-157.867 157.867 153.6 98.133-98.133-157.867-157.867 157.867-153.6-98.133-98.133-157.867 157.867-157.867-157.867zM780.8 507.733l-64-64 59.733-55.467h247.467v119.467h-243.2zM307.2 443.733l-64 64h-243.2v-119.467h251.733l55.467 55.467z" />
<glyph unicode="&#xe947;" glyph-name="exit" d="M405.333 243.2l81.067-81.067 281.6 285.867-285.867 285.867-76.8-81.067 145.067-149.333h-550.4v-115.2h550.4l-145.067-145.067zM908.8 960h-793.6c-64 0-115.2-51.2-115.2-115.2v-226.133h115.2v226.133h797.867v-797.867h-797.867v230.4h-115.2v-226.133c0-64 51.2-115.2 115.2-115.2h797.867c64 0 115.2 51.2 115.2 115.2v793.6c-4.267 64-55.467 115.2-119.467 115.2z" /> <glyph unicode="&#xe947;" glyph-name="exit" d="M405.333 243.2l81.067-81.067 281.6 285.867-285.867 285.867-76.8-81.067 145.067-149.333h-550.4v-115.2h550.4l-145.067-145.067zM908.8 960h-793.6c-64 0-115.2-51.2-115.2-115.2v-226.133h115.2v226.133h797.867v-797.867h-797.867v230.4h-115.2v-226.133c0-64 51.2-115.2 115.2-115.2h797.867c64 0 115.2 51.2 115.2 115.2v793.6c-4.267 64-55.467 115.2-119.467 115.2z" />
<glyph unicode="&#xe948;" glyph-name="invoice-in-create" d="M153.6 443.733c85.333 0 153.6 68.267 153.6 153.6s-68.267 153.6-153.6 153.6-153.6-68.267-153.6-153.6 68.267-153.6 153.6-153.6zM64 605.867h81.067v42.667c0 8.533 4.267 12.8 12.8 8.533l98.133-55.467c8.533-4.267 8.533-12.8 0-17.067l-98.133-55.467c-8.533-4.267-12.8 0-12.8 8.533v42.667h-81.067c-12.8 0-17.067 8.533-17.067 8.533 0 8.533 8.533 17.067 17.067 17.067zM153.6 405.333c5.547 0 11.52 0.427 17.067 0.853v-235.52c0-12.8-8.533-21.333-21.333-21.333s-21.333 8.533-21.333 21.333v236.373c8.533-1.28 17.067-1.707 25.6-1.707zM344.32 576c0.853 6.827 1.28 14.080 1.28 21.333s-0.427 14.507-1.28 21.333h317.013c12.8 0 21.333-8.533 21.333-21.333s-8.533-21.333-21.333-21.333h-317.013zM917.333 810.667c-12.8 0-21.333-8.533-21.333-21.333s8.533-21.333 21.333-21.333h85.333c12.8 0 21.333 8.533 21.333 21.333v64c0 59.733-46.933 106.667-106.667 106.667h-682.667c-59.733 0-106.667-46.933-106.667-106.667v-65.707c8.533 1.28 17.067 1.707 25.6 1.707 5.547 0 11.52-0.427 17.067-0.853v64.853c0 34.133 29.867 64 64 64h597.333c-12.8-17.067-21.333-38.4-21.333-64v-317.44c-29.44 9.387-61.013 14.507-93.867 14.507-53.76 0-104.533-14.080-148.907-38.4h-241.92c-5.973-12.373-13.653-24.32-22.613-35.413 3.84-4.693 9.387-7.253 16.64-7.253h189.013c-21.76-20.053-40.533-43.093-55.893-68.693-1.707 0.427-3.413 0.427-5.12 0.427h-128c-12.8 0-21.333-8.533-21.333-21.333s8.533-21.333 21.333-21.333h112.213c-14.507-35.413-22.613-74.24-22.613-115.2 0-49.067 11.52-95.573 32-136.533h-420.267c-12.8 0-21.333-8.533-21.333-21.333v-42.667c0-59.733 46.933-106.667 106.667-106.667h640c15.36 0 29.867 2.987 43.093 8.96 134.4 32.853 234.24 154.027 234.24 298.24 0 120.747-69.547 224.853-170.667 275.2v334.933c0 34.133 29.867 64 64 64s64-29.867 64-64v-42.667h-64zM128-21.333h-21.333c-34.133 0-64 29.867-64 64v21.333h424.533c24.747-34.56 56.747-63.573 93.44-85.333h-432.64zM897.28 287.573v-89.173h-135.68v-135.68h-89.173v136.107h-135.68v89.173h135.68v135.68h89.173v-135.68h135.68z" /> <glyph unicode="&#xe948;" glyph-name="apps" d="M0 704h256v256h-256v-256zM384-64h256v256h-256v-256zM0-64h256v256h-256v-256zM0 320h256v256h-256v-256zM384 320h256v256h-256v-256zM768 960v-256h256v256h-256zM384 704h256v256h-256v-256zM768 320h256v256h-256v-256zM768-64h256v256h-256v-256z" />
<glyph unicode="&#xe949;" glyph-name="info" d="M512 960c-281.6 0-512-230.4-512-512s230.4-512 512-512 512 230.4 512 512-230.4 512-512 512zM563.2 192h-102.4v307.2h102.4v-307.2zM563.2 601.6h-102.4v102.4h102.4v-102.4z" /> <glyph unicode="&#xe949;" glyph-name="info" d="M512 960c-281.6 0-512-230.4-512-512s230.4-512 512-512 512 230.4 512 512-230.4 512-512 512zM563.2 192h-102.4v307.2h102.4v-307.2zM563.2 601.6h-102.4v102.4h102.4v-102.4z" />
<glyph unicode="&#xe94a;" glyph-name="delivery" d="M789.333 264.533c-55.467 0-102.4-46.933-102.4-102.4s46.933-102.4 102.4-102.4 102.4 46.933 102.4 102.4c0 59.733-46.933 102.4-102.4 102.4zM789.333 110.933c-29.867 0-51.2 21.333-51.2 51.2s21.333 51.2 51.2 51.2 51.2-21.333 51.2-51.2c0-25.6-25.6-51.2-51.2-51.2zM251.733 264.533c-55.467 0-102.4-46.933-102.4-102.4s46.933-102.4 102.4-102.4c55.467 0 102.4 46.933 102.4 102.4 0 59.733-46.933 102.4-102.4 102.4zM251.733 110.933c-29.867 0-51.2 21.333-51.2 51.2s21.333 51.2 51.2 51.2c29.867 0 51.2-21.333 51.2-51.2 0-25.6-25.6-51.2-51.2-51.2zM1006.933 537.6l-196.267 192c-12.8 12.8-29.867 17.067-46.933 17.067h-98.133v38.4c0 25.6-21.333 51.2-51.2 51.2h-563.2c-29.867 0-51.2-21.333-51.2-51.2v-554.667c0-29.867 25.6-51.2 51.2-51.2h68.267c8.533 64 64 115.2 132.267 115.2 64 0 123.733-51.2 132.267-115.2h268.8c8.533 64 64 115.2 132.267 115.2s128-51.2 136.533-115.2h51.2c29.867 0 51.2 25.6 51.2 51.2v260.267c0 17.067-8.533 34.133-17.067 46.933zM725.333 682.667c0 4.267 4.267 8.533 8.533 8.533h34.133c0 0 4.267 0 4.267-4.267l153.6-145.067c4.267 0 0-12.8-4.267-12.8h-187.733c-8.533 0-8.533 4.267-8.533 8.533v145.067zM311.467 597.333c0 46.933 29.867 85.333 59.733 93.867 4.267 0 4.267 0 8.533 0l98.133 12.8v-51.2c0-46.933-29.867-85.333-59.733-93.867-4.267 0-4.267 0-8.533 0l-98.133-17.067v55.467zM311.467 516.267l46.933 8.533c17.067 4.267 29.867-17.067 29.867-38.4l4.267-29.867-51.2-4.267c-17.067-4.267-29.867 12.8-29.867 38.4v25.6zM149.333 597.333v51.2l85.333 12.8c34.133 4.267 55.467-25.6 55.467-72.533v-51.2l-85.333-12.8c-34.133 0-59.733 29.867-55.467 72.533zM285.867 512v-38.4c0-34.133-21.333-64-42.667-68.267h-4.267l-72.533-8.533v38.4c0 34.133 21.333 64 42.667 68.267h4.267l72.533 8.533z" /> <glyph unicode="&#xe94a;" glyph-name="delivery" d="M789.333 264.533c-55.467 0-102.4-46.933-102.4-102.4s46.933-102.4 102.4-102.4 102.4 46.933 102.4 102.4c0 59.733-46.933 102.4-102.4 102.4zM789.333 110.933c-29.867 0-51.2 21.333-51.2 51.2s21.333 51.2 51.2 51.2 51.2-21.333 51.2-51.2c0-25.6-25.6-51.2-51.2-51.2zM251.733 264.533c-55.467 0-102.4-46.933-102.4-102.4s46.933-102.4 102.4-102.4c55.467 0 102.4 46.933 102.4 102.4 0 59.733-46.933 102.4-102.4 102.4zM251.733 110.933c-29.867 0-51.2 21.333-51.2 51.2s21.333 51.2 51.2 51.2c29.867 0 51.2-21.333 51.2-51.2 0-25.6-25.6-51.2-51.2-51.2zM1006.933 537.6l-196.267 192c-12.8 12.8-29.867 17.067-46.933 17.067h-98.133v38.4c0 25.6-21.333 51.2-51.2 51.2h-563.2c-29.867 0-51.2-21.333-51.2-51.2v-554.667c0-29.867 25.6-51.2 51.2-51.2h68.267c8.533 64 64 115.2 132.267 115.2 64 0 123.733-51.2 132.267-115.2h268.8c8.533 64 64 115.2 132.267 115.2s128-51.2 136.533-115.2h51.2c29.867 0 51.2 25.6 51.2 51.2v260.267c0 17.067-8.533 34.133-17.067 46.933zM725.333 682.667c0 4.267 4.267 8.533 8.533 8.533h34.133c0 0 4.267 0 4.267-4.267l153.6-145.067c4.267 0 0-12.8-4.267-12.8h-187.733c-8.533 0-8.533 4.267-8.533 8.533v145.067zM311.467 597.333c0 46.933 29.867 85.333 59.733 93.867 4.267 0 4.267 0 8.533 0l98.133 12.8v-51.2c0-46.933-29.867-85.333-59.733-93.867-4.267 0-4.267 0-8.533 0l-98.133-17.067v55.467zM311.467 516.267l46.933 8.533c17.067 4.267 29.867-17.067 29.867-38.4l4.267-29.867-51.2-4.267c-17.067-4.267-29.867 12.8-29.867 38.4v25.6zM149.333 597.333v51.2l85.333 12.8c34.133 4.267 55.467-25.6 55.467-72.533v-51.2l-85.333-12.8c-34.133 0-59.733 29.867-55.467 72.533zM285.867 512v-38.4c0-34.133-21.333-64-42.667-68.267h-4.267l-72.533-8.533v38.4c0 34.133 21.333 64 42.667 68.267h4.267l72.533 8.533z" />
<glyph unicode="&#xe94b;" glyph-name="linesprepaired" d="M870.4 857.6h-213.333c-21.333 59.733-76.8 102.4-145.067 102.4s-123.733-42.667-145.067-102.4h-213.333c-55.467 0-102.4-46.933-102.4-102.4v-716.8c0-55.467 46.933-102.4 102.4-102.4h716.8c55.467 0 102.4 46.933 102.4 102.4v716.8c0 55.467-46.933 102.4-102.4 102.4zM512 857.6c29.867 0 51.2-21.333 51.2-51.2s-21.333-51.2-51.2-51.2-51.2 21.333-51.2 51.2 21.333 51.2 51.2 51.2zM614.4 140.8h-358.4v102.4h358.4v-102.4zM768 345.6h-512v102.4h512v-102.4zM768 550.4h-512v102.4h512v-102.4z" /> <glyph unicode="&#xe94b;" glyph-name="linesprepaired" d="M870.4 857.6h-213.333c-21.333 59.733-76.8 102.4-145.067 102.4s-123.733-42.667-145.067-102.4h-213.333c-55.467 0-102.4-46.933-102.4-102.4v-716.8c0-55.467 46.933-102.4 102.4-102.4h716.8c55.467 0 102.4 46.933 102.4 102.4v716.8c0 55.467-46.933 102.4-102.4 102.4zM512 857.6c29.867 0 51.2-21.333 51.2-51.2s-21.333-51.2-51.2-51.2-51.2 21.333-51.2 51.2 21.333 51.2 51.2 51.2zM614.4 140.8h-358.4v102.4h358.4v-102.4zM768 345.6h-512v102.4h512v-102.4zM768 550.4h-512v102.4h512v-102.4z" />
@ -90,11 +89,11 @@
<glyph unicode="&#xe950;" glyph-name="pbx" d="M512 960c-230.4 0-418.133-187.733-418.133-418.133v-324.267c0-76.8 64-140.8 140.8-140.8h140.8v371.2h-187.733v93.867c0 179.2 145.067 324.267 324.267 324.267s324.267-145.067 324.267-324.267v-93.867h-187.733v-371.2h187.733v-46.933h-324.267v-93.867h277.333c76.8 0 140.8 64 140.8 140.8v465.067c0 230.4-187.733 418.133-418.133 418.133z" /> <glyph unicode="&#xe950;" glyph-name="pbx" d="M512 960c-230.4 0-418.133-187.733-418.133-418.133v-324.267c0-76.8 64-140.8 140.8-140.8h140.8v371.2h-187.733v93.867c0 179.2 145.067 324.267 324.267 324.267s324.267-145.067 324.267-324.267v-93.867h-187.733v-371.2h187.733v-46.933h-324.267v-93.867h277.333c76.8 0 140.8 64 140.8 140.8v465.067c0 230.4-187.733 418.133-418.133 418.133z" />
<glyph unicode="&#xe951;" glyph-name="buscaman" d="M774.4 67.2c0-19.2-16-38.4-38.4-38.4s-38.4 16-38.4 38.4 16 38.4 38.4 38.4 38.4-19.2 38.4-38.4zM262.4 102.4c-19.2 0-38.4-16-38.4-38.4s16-38.4 38.4-38.4c19.2 0 38.4 16 38.4 38.4s-16 38.4-38.4 38.4zM809.6 176c0 0 0 0 0 0 35.2-22.4 57.6-64 57.6-108.8 0-70.4-57.6-131.2-131.2-131.2-70.4 0-131.2 57.6-131.2 131.2 0 0 0-3.2 0-3.2-64-3.2-137.6-9.6-214.4-12.8 0 0 0 0 0 0-6.4-64-64-115.2-128-115.2-70.4 0-131.2 57.6-131.2 131.2 0 54.4 32 99.2 80 121.6 0 0 0 0 0 0-3.2 89.6 0 198.4 16 275.2 0 0 73.6 73.6 243.2 86.4 6.4-16 19.2-28.8 38.4-28.8s32 12.8 38.4 28.8c12.8 0 25.6-3.2 38.4-3.2v-249.6c0 0 48-60.8 220.8-67.2zM345.6 67.2c0 44.8-35.2 80-80 80s-80-35.2-80-80c0-44.8 35.2-80 80-80 44.8-3.2 80 35.2 80 80zM416 454.4c0 9.6-6.4 16-16 16s-16-6.4-16-16c3.2-48-6.4-80-28.8-99.2-28.8-25.6-73.6-12.8-73.6-12.8-9.6 3.2-16-3.2-19.2-12.8s3.2-16 12.8-19.2c0 0 12.8-3.2 32-3.2s48 3.2 70.4 22.4c25.6 25.6 38.4 67.2 38.4 124.8zM819.2 67.2c0 44.8-35.2 80-80 80s-80-35.2-80-80c0-44.8 35.2-80 80-80 41.6-3.2 80 35.2 80 80zM886.4 806.4c-118.4 102.4-243.2 156.8-377.6 153.6-214.4-3.2-368-150.4-374.4-156.8-12.8-12.8-12.8-28.8 0-41.6s28.8-12.8 41.6 0c0 0 140.8 137.6 332.8 137.6 115.2 0 230.4-44.8 336-140.8 6.4-6.4 12.8-6.4 19.2-6.4 9.6 0 16 3.2 22.4 9.6 12.8 12.8 12.8 32 0 44.8zM806.4 720c-92.8 83.2-192 121.6-297.6 121.6-169.6-3.2-291.2-118.4-294.4-121.6-12.8-12.8-12.8-28.8 0-41.6s28.8-12.8 41.6 0c0 0 108.8 102.4 252.8 105.6 0 0 3.2 0 3.2 0 86.4 0 172.8-35.2 252.8-105.6 6.4-6.4 12.8-6.4 19.2-6.4 9.6 0 16 3.2 22.4 9.6 12.8 9.6 12.8 28.8 0 38.4zM732.8 636.8c-70.4 60.8-144 92.8-220.8 89.6-128 0-217.6-89.6-220.8-92.8-12.8-12.8-12.8-28.8 0-41.6s28.8-12.8 41.6 0c0 0 76.8 73.6 179.2 73.6 64 0 124.8-25.6 182.4-76.8 6.4-6.4 12.8-6.4 19.2-6.4 9.6 0 16 3.2 22.4 9.6 9.6 12.8 9.6 32-3.2 44.8zM512 585.6c-16 0-28.8-12.8-28.8-28.8s12.8-28.8 28.8-28.8c16 0 28.8 12.8 28.8 28.8-3.2 16-16 28.8-28.8 28.8z" /> <glyph unicode="&#xe951;" glyph-name="buscaman" d="M774.4 67.2c0-19.2-16-38.4-38.4-38.4s-38.4 16-38.4 38.4 16 38.4 38.4 38.4 38.4-19.2 38.4-38.4zM262.4 102.4c-19.2 0-38.4-16-38.4-38.4s16-38.4 38.4-38.4c19.2 0 38.4 16 38.4 38.4s-16 38.4-38.4 38.4zM809.6 176c0 0 0 0 0 0 35.2-22.4 57.6-64 57.6-108.8 0-70.4-57.6-131.2-131.2-131.2-70.4 0-131.2 57.6-131.2 131.2 0 0 0-3.2 0-3.2-64-3.2-137.6-9.6-214.4-12.8 0 0 0 0 0 0-6.4-64-64-115.2-128-115.2-70.4 0-131.2 57.6-131.2 131.2 0 54.4 32 99.2 80 121.6 0 0 0 0 0 0-3.2 89.6 0 198.4 16 275.2 0 0 73.6 73.6 243.2 86.4 6.4-16 19.2-28.8 38.4-28.8s32 12.8 38.4 28.8c12.8 0 25.6-3.2 38.4-3.2v-249.6c0 0 48-60.8 220.8-67.2zM345.6 67.2c0 44.8-35.2 80-80 80s-80-35.2-80-80c0-44.8 35.2-80 80-80 44.8-3.2 80 35.2 80 80zM416 454.4c0 9.6-6.4 16-16 16s-16-6.4-16-16c3.2-48-6.4-80-28.8-99.2-28.8-25.6-73.6-12.8-73.6-12.8-9.6 3.2-16-3.2-19.2-12.8s3.2-16 12.8-19.2c0 0 12.8-3.2 32-3.2s48 3.2 70.4 22.4c25.6 25.6 38.4 67.2 38.4 124.8zM819.2 67.2c0 44.8-35.2 80-80 80s-80-35.2-80-80c0-44.8 35.2-80 80-80 41.6-3.2 80 35.2 80 80zM886.4 806.4c-118.4 102.4-243.2 156.8-377.6 153.6-214.4-3.2-368-150.4-374.4-156.8-12.8-12.8-12.8-28.8 0-41.6s28.8-12.8 41.6 0c0 0 140.8 137.6 332.8 137.6 115.2 0 230.4-44.8 336-140.8 6.4-6.4 12.8-6.4 19.2-6.4 9.6 0 16 3.2 22.4 9.6 12.8 12.8 12.8 32 0 44.8zM806.4 720c-92.8 83.2-192 121.6-297.6 121.6-169.6-3.2-291.2-118.4-294.4-121.6-12.8-12.8-12.8-28.8 0-41.6s28.8-12.8 41.6 0c0 0 108.8 102.4 252.8 105.6 0 0 3.2 0 3.2 0 86.4 0 172.8-35.2 252.8-105.6 6.4-6.4 12.8-6.4 19.2-6.4 9.6 0 16 3.2 22.4 9.6 12.8 9.6 12.8 28.8 0 38.4zM732.8 636.8c-70.4 60.8-144 92.8-220.8 89.6-128 0-217.6-89.6-220.8-92.8-12.8-12.8-12.8-28.8 0-41.6s28.8-12.8 41.6 0c0 0 76.8 73.6 179.2 73.6 64 0 124.8-25.6 182.4-76.8 6.4-6.4 12.8-6.4 19.2-6.4 9.6 0 16 3.2 22.4 9.6 9.6 12.8 9.6 32-3.2 44.8zM512 585.6c-16 0-28.8-12.8-28.8-28.8s12.8-28.8 28.8-28.8c16 0 28.8 12.8 28.8 28.8-3.2 16-16 28.8-28.8 28.8z" />
<glyph unicode="&#xe952;" glyph-name="catalog" d="M60.8 604.8h64v-310.4h-64v310.4zM979.2 960h-873.6c-25.6 0-44.8-19.2-44.8-44.8v-176h64v156.8h835.2v-896h-835.2v156.8h-64v-176c0-25.6 19.2-44.8 44.8-44.8h873.6c25.6 0 44.8 19.2 44.8 44.8v934.4c0 25.6-19.2 44.8-44.8 44.8zM230.4 688c0 9.6-9.6 19.2-19.2 19.2h-192c-9.6 0-19.2-9.6-19.2-19.2v-35.2c0-9.6 9.6-19.2 19.2-19.2h195.2c9.6 0 19.2 9.6 19.2 19.2v35.2zM230.4 240c0 9.6-9.6 19.2-19.2 19.2h-192c-9.6 0-19.2-9.6-19.2-19.2v-35.2c0-9.6 9.6-19.2 19.2-19.2h195.2c9.6 0 19.2 9.6 19.2 19.2v35.2zM876.8 742.4h-275.2v-275.2h275.2v275.2zM876.8 428.8h-275.2v-275.2h275.2v275.2zM528 710.4h-211.2v-211.2h211.2v211.2zM560 742.4v-275.2h-275.2v275.2h275.2zM560 428.8h-275.2v-275.2h275.2v275.2z" /> <glyph unicode="&#xe952;" glyph-name="catalog" d="M60.8 604.8h64v-310.4h-64v310.4zM979.2 960h-873.6c-25.6 0-44.8-19.2-44.8-44.8v-176h64v156.8h835.2v-896h-835.2v156.8h-64v-176c0-25.6 19.2-44.8 44.8-44.8h873.6c25.6 0 44.8 19.2 44.8 44.8v934.4c0 25.6-19.2 44.8-44.8 44.8zM230.4 688c0 9.6-9.6 19.2-19.2 19.2h-192c-9.6 0-19.2-9.6-19.2-19.2v-35.2c0-9.6 9.6-19.2 19.2-19.2h195.2c9.6 0 19.2 9.6 19.2 19.2v35.2zM230.4 240c0 9.6-9.6 19.2-19.2 19.2h-192c-9.6 0-19.2-9.6-19.2-19.2v-35.2c0-9.6 9.6-19.2 19.2-19.2h195.2c9.6 0 19.2 9.6 19.2 19.2v35.2zM876.8 742.4h-275.2v-275.2h275.2v275.2zM876.8 428.8h-275.2v-275.2h275.2v275.2zM528 710.4h-211.2v-211.2h211.2v211.2zM560 742.4v-275.2h-275.2v275.2h275.2zM560 428.8h-275.2v-275.2h275.2v275.2z" />
<glyph unicode="&#xe953;" glyph-name="unavailable" d="M39.253 960c-9.813 0-20.053-3.84-27.733-11.52-15.36-15.787-15.36-40.533 0-55.893l945.493-945.067c7.68-7.68 17.493-11.52 27.733-11.52 9.813 0 20.053 3.84 27.733 11.52 15.36 15.787 15.36 40.533 0 55.893l-945.493 945.067c-7.68 7.68-17.493 11.52-27.733 11.52zM469.333 606.72v267.947h-128v-139.947zM640 874.667h-85.333c0 0 0-142.080 0-273.92 24.747 21.333 53.333 35.413 85.333 46.080v227.84zM563.2 512.853l46.933-46.933c26.453 36.267 69.973 60.587 118.613 60.587 81.92 0 145.92-64 145.92-145.92 0-49.493-23.893-92.16-60.587-118.187l43.947-43.947c47.36 38.827 77.227 97.707 77.227 162.133 0 117.333-96 209.92-209.92 209.92-66.133-0.427-124.16-30.72-162.133-77.653zM938.667 565.333v309.333h-85.333v-241.92c32-17.493 60.587-38.827 85.333-67.413zM768 657.92v216.747h-42.667l3.413-213.333c14.507 0 28.587 0 39.253-3.413zM298.667 777.387v97.28h-42.667v-54.613zM524.373 320c8.107-28.587 22.187-54.613 40.96-78.080l-10.667-7.253h-24.747l-160-163.413 49.493-49.92 160 163.413v24.747l7.253 10.667c21.76-19.627 48.64-33.28 78.507-41.387l-140.8 141.227zM444.587 376.747c0 7.253 0.427 14.507 1.28 21.333l-104.533 104.533v-335.36h24.747l99.413 99.413c-14.080 35.413-20.907 71.253-20.907 110.080zM85.333 758.613v-591.36h85.333v506.027zM256 587.947v-420.693h42.667v378.027z" /> <glyph unicode="&#xe953;" glyph-name="unavailable" d="M469.333 524.8v366.933h-136.533v-499.2zM290.133 345.6v546.133h-42.667v-588.8zM776.533 832v59.733h-42.667v-102.4zM644.267 699.733v192h-89.6c0 0 0-145.067 0-277.333l89.6 85.333zM866.133 682.667v-42.667c34.133-17.067 64-42.667 89.6-68.267v200.533l-89.6-89.6zM776.533 593.067l-64-64c8.533 0 17.067 4.267 25.6 4.267 85.333 0 149.333-68.267 149.333-149.333 0-85.333-68.267-149.333-149.333-149.333s-149.333 68.267-149.333 149.333c0 8.533 0 17.067 0 25.6l-68.267-68.267c8.533-38.4 21.333-72.533 46.933-102.4l-12.8-12.8h-25.6l-166.4-170.667 51.2-51.2 166.4 170.667v25.6l8.533 12.8c38.4-34.133 89.6-51.2 145.067-51.2 123.733 0 217.6 98.133 217.6 217.6 0 106.667-76.8 192-174.933 213.333zM157.867 213.333v678.4h-89.6v-733.867h29.867zM460.8 273.067l-119.467-115.2h21.333l102.4 102.4c-4.267 4.267-4.267 8.533-4.267 12.8zM964.267 960l59.733-59.733-964.267-964.267-59.733 59.733 964.267 964.267z" />
<glyph unicode="&#xe954;" glyph-name="wand" d="M829.649 565.029l-18.808-50.155-50.155-18.808 50.155-18.808 18.808-50.155 18.808 50.155 50.155 18.808-50.155 18.808-18.808 50.155zM624.849 870.139l-35.527 89.861-33.437-89.861-89.861-35.527 89.861-33.437 33.437-89.861 33.437 89.861 91.951 33.437-89.861 35.527zM969.665 819.984l-20.898 54.335-20.898-54.335-52.245-20.898 52.245-20.898 20.898-52.245 20.898 52.245 54.335 20.898-54.335 20.898zM783.673 648.62l-71.053 71.053c-4.18 4.18-8.359 4.18-12.539 4.18s-8.359-2.090-12.539-4.18l-681.273-681.273c0 0 0 0 0 0v0c-6.269-6.269-6.269-18.808 0-25.078l71.053-71.053c6.269-6.269 16.718-6.269 22.988 0v0c0 0 0 0 0 0l683.363 683.363c6.269 6.269 6.269 16.718 0 22.988zM626.939 506.514l-56.424 56.424 129.567 129.567 56.424-56.424-129.567-129.567z" /> <glyph unicode="&#xe954;" glyph-name="wand" d="M829.649 565.029l-18.808-50.155-50.155-18.808 50.155-18.808 18.808-50.155 18.808 50.155 50.155 18.808-50.155 18.808-18.808 50.155zM624.849 870.139l-35.527 89.861-33.437-89.861-89.861-35.527 89.861-33.437 33.437-89.861 33.437 89.861 91.951 33.437-89.861 35.527zM969.665 819.984l-20.898 54.335-20.898-54.335-52.245-20.898 52.245-20.898 20.898-52.245 20.898 52.245 54.335 20.898-54.335 20.898zM783.673 648.62l-71.053 71.053c-4.18 4.18-8.359 4.18-12.539 4.18s-8.359-2.090-12.539-4.18l-681.273-681.273c0 0 0 0 0 0v0c-6.269-6.269-6.269-18.808 0-25.078l71.053-71.053c6.269-6.269 16.718-6.269 22.988 0v0c0 0 0 0 0 0l683.363 683.363c6.269 6.269 6.269 16.718 0 22.988zM626.939 506.514l-56.424 56.424 129.567 129.567 56.424-56.424-129.567-129.567z" />
<glyph unicode="&#xe955;" glyph-name="addperson" d="M716.8 550.4c-169.813 0-307.2-137.387-307.2-307.2s137.387-307.2 307.2-307.2 307.2 137.387 307.2 307.2-137.387 307.2-307.2 307.2zM897.28 287.573v-89.173h-135.68v-135.68h-89.173v136.107h-135.68v89.173h135.68v135.68h89.173v-135.68h92.16l43.52-0.427zM354.133 243.2c0 96.853 37.547 187.733 105.813 256-20.907 2.133-40.107 2.987-56.747 2.987-134.4 0-403.2-70.4-403.2-204.8v-153.6h367.787c-8.96 32-13.653 65.28-13.653 99.413zM605.013 755.2c0-113.108-90.355-204.8-201.813-204.8s-201.813 91.692-201.813 204.8c0 113.108 90.355 204.8 201.813 204.8s201.813-91.692 201.813-204.8z" /> <glyph unicode="&#xe955;" glyph-name="basketadd" d="M515.2 512c-16 0-28.8-12.8-28.8-28.8v-83.2c16 22.4 35.2 41.6 57.6 60.8v22.4c0 16-12.8 28.8-28.8 28.8zM416 185.6h-259.2l-44.8 348.8h566.4c32 9.6 64 16 99.2 16 16 0 32 0 48-3.2 3.2 3.2 6.4 9.6 6.4 16v64c0 16-12.8 28.8-32 32h-140.8l-115.2 227.2c6.4 6.4 6.4 19.2 6.4 28.8-6.4 32-35.2 54.4-64 48-32-6.4-54.4-32-48-64s35.2-54.4 64-48l89.6-198.4h-355.2l89.6 198.4c32-6.4 60.8 19.2 64 48s-19.2 57.6-48 64c-32 6.4-60.8-19.2-64-48 0-9.6 3.2-19.2 6.4-28.8l-115.2-233.6h-140.8c-16 0-28.8-12.8-28.8-28.8v-64c0-16 12.8-28.8 28.8-28.8h22.4l51.2-377.6c3.2-12.8 16-22.4 28.8-22.4h288c-3.2 16-3.2 35.2-3.2 54.4zM416 512c-16 0-28.8-12.8-28.8-28.8v-259.2c0-16 12.8-28.8 28.8-28.8 0 0 0 0 0 0 0 44.8 9.6 89.6 28.8 131.2v160c0 12.8-12.8 25.6-28.8 25.6zM198.4 508.8c-16-3.2-25.6-16-25.6-32l16-262.4c0-12.8 12.8-25.6 25.6-22.4h3.2c16 3.2 25.6 16 25.6 32l-12.8 259.2c-3.2 12.8-19.2 25.6-32 25.6zM284.8 483.2v-262.4c0-19.2 12.8-28.8 28.8-28.8s28.8 12.8 28.8 28.8v262.4c0 16-12.8 28.8-28.8 28.8s-28.8-12.8-28.8-28.8zM1024 243.2v-121.6h-185.6v-185.6h-121.6v185.6h-185.6v121.6h185.6v185.6h121.6v-185.6z" />
<glyph unicode="&#xe956;" glyph-name="deliveryprices" d="M251.733 264.533c-55.467 0-102.4-46.933-102.4-102.4s46.933-102.4 102.4-102.4 102.4 46.933 102.4 102.4c0 59.733-46.933 102.4-102.4 102.4zM251.733 110.933c-29.867 0-51.2 21.333-51.2 51.2s21.333 51.2 51.2 51.2 51.2-21.333 51.2-51.2c0-25.6-25.6-51.2-51.2-51.2zM789.333 264.533c-55.467 0-102.4-46.933-102.4-102.4s46.933-102.4 102.4-102.4 102.4 46.933 102.4 102.4c0 59.733-46.933 102.4-102.4 102.4zM789.333 110.933c-29.867 0-51.2 21.333-51.2 51.2s21.333 51.2 51.2 51.2 51.2-21.333 51.2-51.2c0-25.6-25.6-51.2-51.2-51.2zM1006.933 537.6l-196.267 192c-12.8 12.8-29.867 17.067-46.933 17.067h-98.133v38.4c0 25.6-21.333 51.2-51.2 51.2h-563.2c-29.867 0-51.2-21.333-51.2-51.2v-554.667c0-29.867 25.6-51.2 51.2-51.2h68.267c8.533 64 64 115.2 132.267 115.2 64 0 123.733-51.2 132.267-115.2h268.8c8.533 64 64 115.2 132.267 115.2s128-51.2 136.533-115.2h51.2c29.867 0 51.2 25.6 51.2 51.2v260.267c0 17.067-8.533 34.133-17.067 46.933zM376.32 614.827v-28.16h-166.4c-0.853-6.4-1.707-13.227-1.707-20.48 0-6.827 0.427-14.080 1.707-20.48h166.4v-28.16h-159.147c9.387-26.027 25.6-46.933 48.64-62.72s49.92-23.467 80.213-23.467c39.68 0 72.533 14.080 99.413 42.24l32-31.573c-15.787-17.92-34.987-32-58.453-40.96-23.040-9.387-48.213-14.080-75.947-14.080-29.013 0-55.893 5.547-80.64 16.213s-45.653 26.027-62.72 46.080c-17.067 19.627-29.013 42.667-36.267 68.693h-56.747v28.16h52.053c-0.853 8.533-0.853 15.36-0.853 20.48s0.427 11.947 0.853 20.48h-52.053v28.16h57.173c6.827 26.027 19.2 49.067 36.267 68.693s37.973 34.987 62.72 46.080c24.747 10.667 51.627 16.213 80.64 16.213 27.733 0 53.333-4.693 75.947-14.080 23.040-9.387 42.24-23.040 58.027-40.533l-32-31.573c-26.453 27.733-59.733 41.813-99.413 41.813-30.293 0-57.173-7.68-80.213-23.467s-39.253-36.693-48.64-62.72h159.147zM921.6 529.067h-187.733c-8.533 0-8.533 4.267-8.533 8.533v145.067c0 4.267 4.267 8.533 8.533 8.533h34.133c0 0 4.267 0 4.267-4.267l153.6-145.067c4.267 0 0-12.8-4.267-12.8z" /> <glyph unicode="&#xe956;" glyph-name="deliveryprices" d="M789.333 264.533c-55.467 0-102.4-46.933-102.4-102.4s46.933-102.4 102.4-102.4 102.4 46.933 102.4 102.4c0 59.733-46.933 102.4-102.4 102.4zM789.333 110.933c-29.867 0-51.2 21.333-51.2 51.2s21.333 51.2 51.2 51.2 51.2-21.333 51.2-51.2c0-25.6-25.6-51.2-51.2-51.2zM251.733 264.533c-55.467 0-102.4-46.933-102.4-102.4s46.933-102.4 102.4-102.4 102.4 46.933 102.4 102.4c0 59.733-46.933 102.4-102.4 102.4zM251.733 110.933c-29.867 0-51.2 21.333-51.2 51.2s21.333 51.2 51.2 51.2 51.2-21.333 51.2-51.2c0-25.6-25.6-51.2-51.2-51.2zM1006.933 537.6l-196.267 192c-12.8 12.8-29.867 17.067-46.933 17.067h-98.133v38.4c0 25.6-21.333 51.2-51.2 51.2h-563.2c-29.867 0-51.2-21.333-51.2-51.2v-554.667c0-29.867 25.6-51.2 51.2-51.2h68.267c8.533 64 64 115.2 132.267 115.2 64 0 123.733-51.2 132.267-115.2h268.8c8.533 64 64 115.2 132.267 115.2s128-51.2 136.533-115.2h51.2c29.867 0 51.2 25.6 51.2 51.2v260.267c0 17.067-8.533 34.133-17.067 46.933zM392.533 605.867v-38.4h-170.667c0-8.533 0-12.8 0-17.067s0-12.8 0-17.067h170.667v-42.667h-157.867c12.8-25.6 25.6-42.667 51.2-59.733 21.333-12.8 46.933-21.333 76.8-21.333 42.667 0 76.8 17.067 102.4 46.933l46.933-42.667c-17.067-21.333-38.4-38.4-68.267-46.933-25.6-12.8-55.467-17.067-89.6-17.067s-64 4.267-89.6 17.067c-25.6 12.8-51.2 29.867-68.267 51.2s-29.867 42.667-38.4 72.533h-64v38.4h55.467c0 4.267 0 8.533 0 17.067s0 12.8 0 17.067h-55.467v42.667h64c8.533 29.867 21.333 51.2 38.4 76.8s42.667 38.4 68.267 51.2c29.867 8.533 59.733 12.8 93.867 12.8 29.867 0 59.733-4.267 89.6-17.067 25.6-8.533 46.933-25.6 64-46.933l-46.933-42.667c-29.867 29.867-64 46.933-102.4 46.933-29.867 0-55.467-8.533-76.8-21.333-25.6-17.067-42.667-34.133-51.2-59.733h157.867zM921.6 529.067h-187.733c-8.533 0-8.533 4.267-8.533 8.533v145.067c0 4.267 4.267 8.533 8.533 8.533h34.133c0 0 4.267 0 4.267-4.267l153.6-145.067c4.267 0 0-12.8-4.267-12.8z" />
<glyph unicode="&#xe957;" glyph-name="fruit" d="M870.4 814.933c-204.8 196.267-529.067 192-725.333-8.533-196.267-204.8-192-529.067 8.533-725.333s524.8-192 725.333 12.8c196.267 200.533 192 524.8-8.533 721.067zM840.533 128c-174.933-179.2-465.067-183.467-644.267-8.533s-179.2 465.067-4.267 644.267 465.067 183.467 644.267 8.533c179.2-174.933 179.2-460.8 4.267-644.267zM145.067 366.933c-38.4 51.2-4.267 149.333 8.533 162.133 29.867 17.067 157.867-25.6 183.467-38.4s98.133-29.867 98.133-55.467c0-29.867-64-46.933-119.467-55.467-59.733-12.8-153.6-38.4-170.667-12.8zM256 170.667c-59.733 17.067-89.6 102.4-85.333 119.467 12.8 29.867 136.533 68.267 162.133 76.8 25.6 4.267 93.867 34.133 106.667 12.8 17.067-25.6-29.867-64-64-106.667-38.4-46.933-89.6-115.2-119.467-102.4zM405.333 622.933c-25.6 51.2-72.533 128-51.2 153.6 38.4 51.2 132.267 51.2 145.067 38.4 25.6-21.333 17.067-157.867 12.8-183.467s0-102.4-25.6-106.667c-29.867-8.533-55.467 46.933-81.067 98.133zM537.6 648.533c8.533 59.733 8.533 149.333 42.667 162.133 59.733 21.333 140.8-29.867 149.333-51.2 8.533-34.133-72.533-145.067-93.867-166.4s-59.733-85.333-85.333-76.8c-29.867 12.8-17.067 76.8-12.8 132.267zM494.933 217.6c-8.533-51.2-12.8-128-38.4-136.533-51.2-17.067-119.467 25.6-123.733 42.667-8.533 29.867 68.267 123.733 85.333 140.8s51.2 72.533 72.533 64c21.333-4.267 8.533-59.733 4.267-110.933zM320 516.267c-55.467 25.6-136.533 51.2-136.533 85.333 0 64 68.267 123.733 85.333 123.733 34.133 0 110.933-110.933 128-132.267 12.8-25.6 64-76.8 46.933-98.133-17.067-29.867-72.533 0-123.733 21.333zM887.467 482.133c38.4-51.2 8.533-149.333-17.067-162.133-29.867-17.067-145.067 38.4-170.667 46.933-25.6 12.8-98.133 29.867-98.133 55.467 0 29.867 64 38.4 123.733 51.2 55.467 8.533 140.8 34.133 162.133 8.533zM785.067 686.933c55.467-17.067 89.6-98.133 85.333-115.2-8.533-29.867-132.267-64-157.867-72.533-25.6-4.267-89.6-29.867-102.4-12.8-17.067 25.6 25.6 64 64 102.4 29.867 42.667 76.8 106.667 110.933 98.133zM725.333 328.533c51.2-17.067 102.4-46.933 102.4-76.8-4.267-51.2-64-115.2-98.133-115.2-29.867 0-89.6 106.667-102.4 132.267-12.8 21.333-51.2 76.8-34.133 98.133s76.8-17.067 132.267-38.4zM610.133 238.933c21.333-46.933 59.733-110.933 38.4-132.267-34.133-42.667-115.2-42.667-128-29.867-21.333 17.067-8.533 136.533-4.267 157.867 4.267 25.6 4.267 89.6 25.6 93.867 29.867 4.267 46.933-46.933 68.267-89.6z" /> <glyph unicode="&#xe957;" glyph-name="fruit" d="M1024 459.947c0 15.787-12.8 28.587-28.587 28.587h-238.507c-6.827 64.427-30.293 125.867-68.267 178.773-6.827 9.387-14.080 18.773-21.76 27.733 40.107 47.36 42.24 80.64 42.24 87.893 0 15.36-11.947 27.307-27.307 28.16-14.080 0-28.587-11.52-29.867-26.88 0-0.427-1.707-18.773-25.6-48.213-75.093 63.147-169.387 95.573-267.947 90.027-101.12-5.547-194.133-50.347-261.547-125.44-103.253-115.627-126.293-280.32-58.027-419.413 0.427-0.853 0.853-1.707 1.28-2.56 2.987-4.693 5.12-9.387 7.68-14.933 14.507-31.147 19.627-65.28 14.933-99.413-1.28-8.96 1.707-17.92 8.107-24.32s15.36-9.387 24.32-8.107c33.707 5.12 68.267 0 100.267-14.933 4.693-2.133 9.387-4.693 14.080-7.253 0.853-0.427 1.707-0.853 2.56-1.28 52.053-25.173 109.227-37.973 166.4-37.973 42.667 0 85.76 7.253 126.72 21.76 40.107-14.080 83.627-21.76 128.427-21.76 2.133 0 4.693 0 6.827 0 0.427 0 1.28 0 1.707 0 1.28 0 2.133 0 3.413 0 209.493 5.547 378.453 178.347 378.453 389.547zM891.733 249.6l-134.4 134.4c-11.093 11.093-29.44 11.093-40.533 0s-11.093-29.44 0-40.533l134.827-134.827c-49.493-43.093-112.213-71.68-180.907-79.36v212.053c0 15.787-12.8 28.587-28.587 28.587s-28.587-12.8-28.587-28.587v-213.76c-32.427 2.133-63.147 8.533-92.587 18.773-2.987 1.707-6.4 3.413-10.24 3.84-31.147 12.373-60.16 29.44-86.187 50.347l142.507 142.507c11.093 11.093 11.093 29.44 0 40.533s-29.44 11.093-40.533 0l-143.36-143.36c-45.653 52.053-75.52 118.187-81.92 191.147h663.893c-5.547-68.693-32.427-131.413-73.387-181.76zM238.507 158.72c-6.4 3.84-13.653 7.68-19.627 10.24-30.72 14.507-63.573 21.76-96.853 21.76 0 33.28-7.68 66.133-21.333 96-2.987 7.253-6.4 14.080-10.667 20.907-57.173 117.76-37.547 256.853 49.92 354.56 57.173 64 136.107 101.973 221.867 106.667s168.533-24.32 232.533-81.493c2.987-2.987 5.973-5.547 8.96-8.533l3.84-3.84c0 0 0 0 0 0s0 0 0 0l0.427-0.427c4.267-3.84 8.107-8.107 11.947-12.8 7.68-8.533 15.36-17.92 22.187-27.307 31.147-43.093 50.347-93.013 57.173-145.493h-427.093c-15.787 0-28.587-12.8-28.587-28.587 0-138.667 72.533-260.693 181.76-329.813-63.147-9.387-128.427 0-186.453 28.16z" />
<glyph unicode="&#xe958;" glyph-name="deletedTicket" horiz-adv-x="900" d="M96.823 84.328h694.333v640.777c0 0-2.019 234.895-350.243 234.895s-344.090-234.895-344.090-234.895v-640.777zM227.684 652.223h171.244v152.494h102.496v-152.494h171.276v-102.496h-171.276v-357.519h-102.496v357.519h-171.244v102.496zM0 59.649v-123.649h900.415v123.649h-900.415z" /> <glyph unicode="&#xe958;" glyph-name="deletedTicket" horiz-adv-x="900" d="M96.823 84.328h694.333v640.777c0 0-2.019 234.895-350.243 234.895s-344.090-234.895-344.090-234.895v-640.777zM227.684 652.223h171.244v152.494h102.496v-152.494h171.276v-102.496h-171.276v-357.519h-102.496v357.519h-171.244v102.496zM0 59.649v-123.649h900.415v123.649h-900.415z" />
<glyph unicode="&#xe959;" glyph-name="entry" d="M0 328.882l392.882-392.882 265.404 265.404-100.31 100.31-102.4-100.31v303.020h303.020l-100.31-102.4 100.31-100.31 265.404 265.404-392.882 392.882z" /> <glyph unicode="&#xe959;" glyph-name="entry" d="M0 328.882l392.882-392.882 265.404 265.404-100.31 100.31-102.4-100.31v303.020h303.020l-100.31-102.4 100.31-100.31 265.404 265.404-392.882 392.882z" />
<glyph unicode="&#xe95a;" glyph-name="thermometer" d="M641.567 326.792v35.527h64.784v25.078h-64.784v119.118h64.784v25.078h-64.784v119.118h64.784v25.078h-64.784v121.208h64.784v25.078h-64.784v8.359c0 71.053-58.514 129.567-129.567 129.567s-129.567-58.514-129.567-129.567v-503.641c-54.335-39.706-87.771-104.49-87.771-173.453 0-119.118 96.131-217.339 217.339-217.339 119.118 0 217.339 96.131 217.339 217.339 0 66.873-33.437 131.657-87.771 173.453zM512-28.473c-100.31 0-179.722 81.502-179.722 179.722 0 64.784 33.437 123.298 87.771 154.645v524.539c0 50.155 41.796 91.951 91.951 91.951s91.951-41.796 91.951-91.951v-522.449c54.335-31.347 87.771-89.861 87.771-154.645 0-100.31-79.412-181.812-179.722-181.812zM652.016 435.461v25.078h35.527v-25.078h-35.527zM652.016 579.657v25.078h35.527v-25.078h-35.527zM652.016 723.853v25.078h35.527v-25.078h-35.527zM568.424 284.996v543.347c0 0 0 0 0 0s0 0 0 0v0 0c0 31.347-25.078 56.424-56.424 56.424s-56.424-25.078-56.424-56.424v0-543.347c-52.245-20.898-87.771-73.143-87.771-131.657 0-79.412 64.784-144.196 144.196-144.196s144.196 64.784 144.196 144.196c0 58.514-35.527 108.669-87.771 131.657zM470.204 824.163v4.18c0 22.988 18.808 41.796 41.796 41.796s41.796-18.808 41.796-41.796v-219.429h-85.682v215.249z" /> <glyph unicode="&#xe95a;" glyph-name="thermometer" d="M641.567 326.792v35.527h64.784v25.078h-64.784v119.118h64.784v25.078h-64.784v119.118h64.784v25.078h-64.784v121.208h64.784v25.078h-64.784v8.359c0 71.053-58.514 129.567-129.567 129.567s-129.567-58.514-129.567-129.567v-503.641c-54.335-39.706-87.771-104.49-87.771-173.453 0-119.118 96.131-217.339 217.339-217.339 119.118 0 217.339 96.131 217.339 217.339 0 66.873-33.437 131.657-87.771 173.453zM512-28.473c-100.31 0-179.722 81.502-179.722 179.722 0 64.784 33.437 123.298 87.771 154.645v524.539c0 50.155 41.796 91.951 91.951 91.951s91.951-41.796 91.951-91.951v-522.449c54.335-31.347 87.771-89.861 87.771-154.645 0-100.31-79.412-181.812-179.722-181.812zM652.016 435.461v25.078h35.527v-25.078h-35.527zM652.016 579.657v25.078h35.527v-25.078h-35.527zM652.016 723.853v25.078h35.527v-25.078h-35.527zM568.424 284.996v543.347c0 0 0 0 0 0s0 0 0 0v0 0c0 31.347-25.078 56.424-56.424 56.424s-56.424-25.078-56.424-56.424v0-543.347c-52.245-20.898-87.771-73.143-87.771-131.657 0-79.412 64.784-144.196 144.196-144.196s144.196 64.784 144.196 144.196c0 58.514-35.527 108.669-87.771 131.657zM470.204 824.163v4.18c0 22.988 18.808 41.796 41.796 41.796s41.796-18.808 41.796-41.796v-219.429h-85.682v215.249z" />
@ -102,10 +101,9 @@
<glyph unicode="&#xe95c;" glyph-name="anonymous" d="M230.4 605.867c12.8 46.933 29.867 93.867 46.933 140.8 8.533 34.133 21.333 64 29.867 98.133 4.267 12.8 8.533 12.8 21.333 12.8 38.4-12.8 72.533-21.333 110.933-25.6 12.8-4.267 29.867 0 46.933 0 34.133 4.267 68.267 8.533 102.4 12.8s72.533 12.8 106.667 17.067c4.267 0 8.533 0 12.8 0s8.533 0 12.8-8.533c12.8-46.933 29.867-93.867 42.667-136.533 12.8-38.4 25.6-76.8 34.133-115.2-192 4.267-379.733 4.267-567.467 4.267zM456.533 247.467c34.133 8.533 64 12.8 98.133 4.267 8.533 0 12.8 0 12.8 8.533 17.067 34.133 42.667 59.733 76.8 72.533 38.4 17.067 76.8 21.333 115.2 8.533 34.133-8.533 59.733-29.867 81.067-55.467 25.6-34.133 38.4-72.533 34.133-119.467-8.533-51.2-34.133-89.6-76.8-115.2-51.2-34.133-132.267-29.867-179.2 12.8-42.667 34.133-59.733 76.8-64 128 0 8.533-4.267 12.8-12.8 17.067-21.333 4.267-42.667 4.267-64 0-8.533-4.267-8.533-4.267-8.533-12.8 0-21.333-4.267-46.933-12.8-68.267-12.8-29.867-34.133-55.467-64-72.533-55.467-38.4-136.533-34.133-183.467 8.533-42.667 34.133-64 76.8-59.733 128 0 59.733 29.867 106.667 85.333 136.533s115.2 25.6 170.667-12.8c12.8-8.533 21.333-17.067 34.133-29.867 0-8.533 8.533-21.333 17.067-38.4zM307.2 302.933c-64 0-115.2-51.2-115.2-110.933 0-64 46.933-115.2 110.933-115.2s115.2 46.933 115.2 110.933c4.267 64-46.933 115.2-110.933 115.2zM712.533 302.933c-64 0-115.2-51.2-115.2-110.933 0-64 46.933-115.2 110.933-115.2 59.733 0 115.2 46.933 115.2 110.933 0 59.733-46.933 115.2-110.933 115.2zM1024 409.6c-341.333 0-682.667 0-1024 0 0 0 0 0 0 0 17.067 8.533 29.867 17.067 46.933 21.333 42.667 12.8 85.333 29.867 132.267 42.667 34.133 8.533 68.267 17.067 102.4 21.333 89.6 17.067 183.467 21.333 277.333 17.067 55.467-4.267 110.933-8.533 166.4-17.067 38.4-4.267 72.533-12.8 110.933-21.333s72.533-21.333 110.933-34.133c21.333-4.267 51.2-17.067 76.8-29.867 0 0 0 0 0 0z" /> <glyph unicode="&#xe95c;" glyph-name="anonymous" d="M230.4 605.867c12.8 46.933 29.867 93.867 46.933 140.8 8.533 34.133 21.333 64 29.867 98.133 4.267 12.8 8.533 12.8 21.333 12.8 38.4-12.8 72.533-21.333 110.933-25.6 12.8-4.267 29.867 0 46.933 0 34.133 4.267 68.267 8.533 102.4 12.8s72.533 12.8 106.667 17.067c4.267 0 8.533 0 12.8 0s8.533 0 12.8-8.533c12.8-46.933 29.867-93.867 42.667-136.533 12.8-38.4 25.6-76.8 34.133-115.2-192 4.267-379.733 4.267-567.467 4.267zM456.533 247.467c34.133 8.533 64 12.8 98.133 4.267 8.533 0 12.8 0 12.8 8.533 17.067 34.133 42.667 59.733 76.8 72.533 38.4 17.067 76.8 21.333 115.2 8.533 34.133-8.533 59.733-29.867 81.067-55.467 25.6-34.133 38.4-72.533 34.133-119.467-8.533-51.2-34.133-89.6-76.8-115.2-51.2-34.133-132.267-29.867-179.2 12.8-42.667 34.133-59.733 76.8-64 128 0 8.533-4.267 12.8-12.8 17.067-21.333 4.267-42.667 4.267-64 0-8.533-4.267-8.533-4.267-8.533-12.8 0-21.333-4.267-46.933-12.8-68.267-12.8-29.867-34.133-55.467-64-72.533-55.467-38.4-136.533-34.133-183.467 8.533-42.667 34.133-64 76.8-59.733 128 0 59.733 29.867 106.667 85.333 136.533s115.2 25.6 170.667-12.8c12.8-8.533 21.333-17.067 34.133-29.867 0-8.533 8.533-21.333 17.067-38.4zM307.2 302.933c-64 0-115.2-51.2-115.2-110.933 0-64 46.933-115.2 110.933-115.2s115.2 46.933 115.2 110.933c4.267 64-46.933 115.2-110.933 115.2zM712.533 302.933c-64 0-115.2-51.2-115.2-110.933 0-64 46.933-115.2 110.933-115.2 59.733 0 115.2 46.933 115.2 110.933 0 59.733-46.933 115.2-110.933 115.2zM1024 409.6c-341.333 0-682.667 0-1024 0 0 0 0 0 0 0 17.067 8.533 29.867 17.067 46.933 21.333 42.667 12.8 85.333 29.867 132.267 42.667 34.133 8.533 68.267 17.067 102.4 21.333 89.6 17.067 183.467 21.333 277.333 17.067 55.467-4.267 110.933-8.533 166.4-17.067 38.4-4.267 72.533-12.8 110.933-21.333s72.533-21.333 110.933-34.133c21.333-4.267 51.2-17.067 76.8-29.867 0 0 0 0 0 0z" />
<glyph unicode="&#xe95d;" glyph-name="zone" d="M243.2 448c-12.8 17.067-25.6 34.133-38.4 51.2-34.133 46.933-68.267 98.133-89.6 153.6-17.067 34.133-25.6 72.533-17.067 110.933 8.533 51.2 38.4 89.6 85.333 110.933 59.733 25.6 132.267 8.533 174.933-34.133 34.133-38.4 42.667-81.067 34.133-132.267-8.533-46.933-29.867-85.333-51.2-123.733-29.867-46.933-59.733-89.6-89.6-132.267-4.267 0-4.267 0-8.533-4.267zM247.467 823.467c-46.933 0-89.6-38.4-89.6-89.6 0-46.933 38.4-89.6 85.333-89.6s89.6 38.4 89.6 85.333c0 55.467-38.4 93.867-85.333 93.867zM490.667 379.733l-17.067 25.6 12.8 8.533-34.133 183.467c0 0 0 8.533-8.533 8.533l-42.667 4.267c0 0-68.267-110.933-157.867-217.6 4.267 4.267-93.867 110.933-132.267 187.733l-110.933-51.2c0 0-4.267 0-4.267-8.533l25.6-145.067 34.133-21.333-8.533-21.333-17.067 8.533 59.733-332.8 213.333 102.4 238.933-21.333-51.2 290.133zM149.333 285.867c-12.8 4.267-29.867 12.8-42.667 17.067 4.267 8.533 4.267 17.067 8.533 21.333 17.067 0 29.867-4.267 42.667-12.8-4.267-8.533-4.267-17.067-8.533-25.6zM256 268.8c-17.067 0-34.133 4.267-46.933 4.267 0 8.533 4.267 17.067 4.267 25.6 12.8 0 29.867-4.267 42.667-4.267 0-8.533 0-17.067 0-25.6zM315.733 277.333c-4.267 8.533-4.267 12.8-8.533 21.333 17.067 8.533 29.867 17.067 42.667 21.333 4.267-8.533 8.533-12.8 8.533-21.333-12.8-8.533-25.6-12.8-42.667-21.333zM405.333 328.533c-4.267 8.533-8.533 12.8-12.8 21.333 12.8 8.533 25.6 17.067 38.4 25.6 4.267-4.267 8.533-12.8 12.8-21.333-8.533-8.533-21.333-17.067-38.4-25.6zM972.8 460.8l-29.867 25.6 12.8 21.333 12.8-8.533-34.133 187.733c0 0 0 8.533-8.533 8.533l-226.133 17.067-209.067-93.867c0 0-8.533-4.267-4.267-12.8l29.867-170.667 21.333-12.8-17.067-17.067 55.467-307.2 213.333 102.4 234.667-21.333-51.2 281.6zM580.267 465.067c-4.267 4.267-8.533 12.8-12.8 17.067 12.8 12.8 21.333 21.333 29.867 34.133 4.267-4.267 12.8-12.8 17.067-17.067-12.8-8.533-25.6-21.333-34.133-34.133zM657.067 541.867c-4.267 4.267-8.533 12.8-12.8 21.333 12.8 8.533 25.6 17.067 38.4 25.6 8.533-8.533 12.8-17.067 12.8-21.333-12.8-8.533-25.6-17.067-38.4-25.6zM797.867 571.733c-12.8 4.267-25.6 4.267-42.667 4.267 0 8.533 0 17.067 0 25.6 17.067 0 34.133 0 51.2-4.267-4.267-8.533-4.267-17.067-8.533-25.6zM891.733 520.533c-12.8 8.533-25.6 17.067-38.4 25.6 4.267 8.533 8.533 12.8 12.8 21.333 12.8-8.533 25.6-17.067 38.4-25.6-4.267-8.533-8.533-12.8-12.8-21.333z" /> <glyph unicode="&#xe95d;" glyph-name="zone" d="M243.2 448c-12.8 17.067-25.6 34.133-38.4 51.2-34.133 46.933-68.267 98.133-89.6 153.6-17.067 34.133-25.6 72.533-17.067 110.933 8.533 51.2 38.4 89.6 85.333 110.933 59.733 25.6 132.267 8.533 174.933-34.133 34.133-38.4 42.667-81.067 34.133-132.267-8.533-46.933-29.867-85.333-51.2-123.733-29.867-46.933-59.733-89.6-89.6-132.267-4.267 0-4.267 0-8.533-4.267zM247.467 823.467c-46.933 0-89.6-38.4-89.6-89.6 0-46.933 38.4-89.6 85.333-89.6s89.6 38.4 89.6 85.333c0 55.467-38.4 93.867-85.333 93.867zM490.667 379.733l-17.067 25.6 12.8 8.533-34.133 183.467c0 0 0 8.533-8.533 8.533l-42.667 4.267c0 0-68.267-110.933-157.867-217.6 4.267 4.267-93.867 110.933-132.267 187.733l-110.933-51.2c0 0-4.267 0-4.267-8.533l25.6-145.067 34.133-21.333-8.533-21.333-17.067 8.533 59.733-332.8 213.333 102.4 238.933-21.333-51.2 290.133zM149.333 285.867c-12.8 4.267-29.867 12.8-42.667 17.067 4.267 8.533 4.267 17.067 8.533 21.333 17.067 0 29.867-4.267 42.667-12.8-4.267-8.533-4.267-17.067-8.533-25.6zM256 268.8c-17.067 0-34.133 4.267-46.933 4.267 0 8.533 4.267 17.067 4.267 25.6 12.8 0 29.867-4.267 42.667-4.267 0-8.533 0-17.067 0-25.6zM315.733 277.333c-4.267 8.533-4.267 12.8-8.533 21.333 17.067 8.533 29.867 17.067 42.667 21.333 4.267-8.533 8.533-12.8 8.533-21.333-12.8-8.533-25.6-12.8-42.667-21.333zM405.333 328.533c-4.267 8.533-8.533 12.8-12.8 21.333 12.8 8.533 25.6 17.067 38.4 25.6 4.267-4.267 8.533-12.8 12.8-21.333-8.533-8.533-21.333-17.067-38.4-25.6zM972.8 460.8l-29.867 25.6 12.8 21.333 12.8-8.533-34.133 187.733c0 0 0 8.533-8.533 8.533l-226.133 17.067-209.067-93.867c0 0-8.533-4.267-4.267-12.8l29.867-170.667 21.333-12.8-17.067-17.067 55.467-307.2 213.333 102.4 234.667-21.333-51.2 281.6zM580.267 465.067c-4.267 4.267-8.533 12.8-12.8 17.067 12.8 12.8 21.333 21.333 29.867 34.133 4.267-4.267 12.8-12.8 17.067-17.067-12.8-8.533-25.6-21.333-34.133-34.133zM657.067 541.867c-4.267 4.267-8.533 12.8-12.8 21.333 12.8 8.533 25.6 17.067 38.4 25.6 8.533-8.533 12.8-17.067 12.8-21.333-12.8-8.533-25.6-17.067-38.4-25.6zM797.867 571.733c-12.8 4.267-25.6 4.267-42.667 4.267 0 8.533 0 17.067 0 25.6 17.067 0 34.133 0 51.2-4.267-4.267-8.533-4.267-17.067-8.533-25.6zM891.733 520.533c-12.8 8.533-25.6 17.067-38.4 25.6 4.267 8.533 8.533 12.8 12.8 21.333 12.8-8.533 25.6-17.067 38.4-25.6-4.267-8.533-8.533-12.8-12.8-21.333z" />
<glyph unicode="&#xe95e;" glyph-name="inventory" d="M273.067 226.133c4.267 0 8.533 4.267 8.533 8.533v85.333h98.133v-221.867h-217.6v221.867h98.133v-81.067c0-8.533 8.533-12.8 12.8-12.8zM512 226.133c4.267 0 8.533 4.267 8.533 8.533v85.333h98.133v-221.867h-217.6v221.867h98.133v-81.067c0-8.533 8.533-12.8 12.8-12.8zM750.933 226.133c4.267 0 8.533 4.267 8.533 8.533v85.333h98.133v-221.867h-217.6v221.867h98.133v-81.067c4.267-8.533 8.533-12.8 12.8-12.8zM644.267 780.8h98.133v-81.067c0-4.267 4.267-8.533 8.533-8.533s8.533 4.267 8.533 8.533v81.067h98.133v-221.867h-217.6v221.867h4.267zM401.067 780.8h98.133v-81.067c0-4.267 4.267-8.533 8.533-8.533s8.533 4.267 8.533 8.533v81.067h98.133v-221.867h-213.333v221.867zM162.133 780.8h98.133v-81.067c0-4.267 4.267-8.533 8.533-8.533s8.533 4.267 8.533 8.533v81.067h98.133v-221.867h-213.333v221.867zM153.6 537.6h780.8v-38.4h-844.8v38.4zM68.267-42.667h-42.667v981.333h42.667v-908.8zM89.6 38.4v38.4h844.8v-38.4zM998.4-42.667h-42.667v981.333h42.667z" /> <glyph unicode="&#xe95e;" glyph-name="inventory" d="M273.067 226.133c4.267 0 8.533 4.267 8.533 8.533v85.333h98.133v-221.867h-217.6v221.867h98.133v-81.067c0-8.533 8.533-12.8 12.8-12.8zM512 226.133c4.267 0 8.533 4.267 8.533 8.533v85.333h98.133v-221.867h-217.6v221.867h98.133v-81.067c0-8.533 8.533-12.8 12.8-12.8zM750.933 226.133c4.267 0 8.533 4.267 8.533 8.533v85.333h98.133v-221.867h-217.6v221.867h98.133v-81.067c4.267-8.533 8.533-12.8 12.8-12.8zM644.267 780.8h98.133v-81.067c0-4.267 4.267-8.533 8.533-8.533s8.533 4.267 8.533 8.533v81.067h98.133v-221.867h-217.6v221.867h4.267zM401.067 780.8h98.133v-81.067c0-4.267 4.267-8.533 8.533-8.533s8.533 4.267 8.533 8.533v81.067h98.133v-221.867h-213.333v221.867zM162.133 780.8h98.133v-81.067c0-4.267 4.267-8.533 8.533-8.533s8.533 4.267 8.533 8.533v81.067h98.133v-221.867h-213.333v221.867zM153.6 537.6h780.8v-38.4h-844.8v38.4zM68.267-42.667h-42.667v981.333h42.667v-908.8zM89.6 38.4v38.4h844.8v-38.4zM998.4-42.667h-42.667v981.333h42.667z" />
<glyph unicode="&#xe95f;" glyph-name="latestBuy" d="M183.467 750.933h712.533v-38.4h-768v38.4zM89.6 64c8.533 0 12.8 0 21.333-4.267v900.267h-42.667v-900.267c8.533 4.267 12.8 4.267 21.333 4.267zM955.733 512v448h-42.667v-413.867c17.067-12.8 29.867-21.333 42.667-34.133zM145.067-8.533c0-30.633-24.833-55.467-55.467-55.467s-55.467 24.833-55.467 55.467c0 30.633 24.833 55.467 55.467 55.467s55.467-24.833 55.467-55.467zM418.133 426.667h-290.133v-38.4h273.067c4.267 17.067 8.533 29.867 17.067 38.4zM392.533 106.667h-264.533v-38.4h281.6c-8.533 12.8-12.8 25.6-17.067 38.4zM725.333 247.467c-12.8 0-21.333-8.533-21.333-21.333s8.533-21.333 21.333-21.333c12.8 0 21.333 8.533 21.333 21.333 0 8.533-12.8 21.333-21.333 21.333zM721.067 541.867c-166.4 0-298.667-136.533-298.667-302.933s132.267-302.933 298.667-302.933c166.4 0 298.667 136.533 298.667 302.933 0 170.667-132.267 302.933-298.667 302.933zM725.333 34.133c-98.133 0-174.933 72.533-187.733 162.133h-34.133l51.2 64 59.733-64h-38.4c8.533-68.267 72.533-123.733 149.333-123.733 81.067 0 149.333 64 149.333 145.067s-68.267 145.067-149.333 145.067c-68.267 0-128-46.933-145.067-110.933l-21.333 29.867-17.067-12.8c8.533 29.867 25.6 55.467 46.933 76.8l-25.6 21.333c-4.267 4.267-4.267 12.8 0 17.067l12.8 12.8c4.267 4.267 12.8 4.267 17.067 0l25.6-25.6c21.333 12.8 51.2 25.6 76.8 25.6v29.867h-8.533c-8.533 0-12.8 4.267-12.8 12.8v17.067c0 8.533 4.267 12.8 12.8 12.8h59.733c8.533 0 12.8-4.267 12.8-12.8v-17.067c0-8.533-4.267-12.8-12.8-12.8h-8.533v-21.333c29.867-4.267 55.467-12.8 81.067-29.867l34.133 29.867c4.267 4.267 12.8 4.267 17.067 0l12.8-12.8c4.267-4.267 4.267-12.8 0-17.067l-25.6-25.6c29.867-34.133 51.2-76.8 51.2-128 4.267-102.4-81.067-187.733-183.467-187.733zM772.267 226.133c0-25.6-21.333-46.933-46.933-46.933s-46.933 21.333-46.933 46.933c0 25.6 21.333 46.933 46.933 46.933 8.533 0 17.067-4.267 21.333-4.267l46.933 46.933 21.333-21.333-46.933-46.933c4.267-4.267 4.267-12.8 4.267-21.333z" /> <glyph unicode="&#xe95f;" glyph-name="accounts" d="M653.653 401.493h196.267v-43.52h-196.267v43.52zM805.973 270.933h43.52v-43.52h-43.52v43.52zM718.933 270.933h43.52v-43.52h-43.52v43.52zM631.893 270.933h43.52v-43.52h-43.52v43.52zM253.013 175.787c10.24-11.52 23.040-20.48 37.973-26.453 14.933-6.4 31.147-9.387 48.64-9.387 18.347 0 34.987 3.413 49.493 9.813 14.933 6.4 27.307 15.787 37.12 28.16l-31.147 29.013c-14.507-16.64-32-25.173-53.333-25.173-13.227 0-25.173 2.987-35.413 8.96s-18.347 14.507-23.893 25.173h75.947v25.173h-83.627c0 1.707-0.427 4.693-0.427 8.107s0 6.4 0.427 8.107h83.627v25.173h-75.947c5.547 10.667 13.653 18.773 23.893 25.173 10.24 5.973 22.187 8.96 35.413 8.96 20.907 0 38.827-8.107 53.333-24.747l31.147 29.013c-10.24 11.947-22.613 21.333-37.12 27.733-14.933 6.4-31.147 9.813-49.493 9.813-17.493 0-33.707-2.987-48.64-9.387s-27.733-14.933-37.973-26.453c-10.24-11.52-17.92-24.747-22.613-39.68h-34.133v-25.173h29.44c0-1.707-0.427-4.693-0.427-8.107s0-6.4 0.427-8.107h-29.44v-25.173h34.133c4.693-15.787 11.947-29.013 22.613-40.533zM544.427 270.933h43.52v-43.52h-43.52v43.52zM631.893 183.467h305.067v-43.52h-305.067v43.52zM893.44 270.933h43.52v-43.52h-43.52v43.52zM893.44 401.493h43.52v-43.52h-43.52v43.52zM980.48 510.293h-65.28v100.267h-915.2v-231.68c0-23.893 19.627-43.52 43.52-43.52h65.28v-282.453c0-23.893 19.627-43.52 43.52-43.52h828.16c23.893 0 43.52 19.627 43.52 43.52v413.867c0 24.32-19.627 43.52-43.52 43.52zM980.48 52.907h-828.16v413.867h828.16v-413.867zM915.2 793.173c0 23.893-19.627 43.52-43.52 43.52h-828.16c-23.893 0-43.52-19.627-43.52-43.52v-66.56h915.2v66.56z" />
<glyph unicode="&#xe960;" glyph-name="invoiceOut" d="M320 358.4h128c12.8 0 21.333 8.533 21.333 21.333s-8.533 21.333-21.333 21.333h-128c-12.8 0-21.333-8.533-21.333-21.333s8.533-21.333 21.333-21.333zM832 746.667c85.333 0 153.6-68.267 153.6-153.6s-68.267-153.6-153.6-153.6-153.6 68.267-153.6 153.6 68.267 153.6 153.6 153.6zM742.4 576h81.067v-42.667c0-8.533 4.267-12.8 12.8-8.533l98.133 55.467c8.533 4.267 8.533 12.8 0 17.067l-98.133 55.467c-8.533 4.267-12.8 0-12.8-8.533v-42.667h-81.067c-8.533 0-17.067-8.533-17.067-17.067 0 0 4.267-8.533 17.067-8.533zM720.64 231.68c-3.413-8.533-8.96-16.213-15.36-22.613-6.827-6.4-14.080-11.947-22.613-16.64-8.533-4.267-17.493-7.68-26.88-10.24s-18.773-3.413-28.16-3.413c-12.373 0-24.32 2.133-35.413 6.4s-20.907 9.813-29.867 17.067c-8.96 7.253-16.64 15.36-23.040 25.173-6.4 9.387-11.52 19.627-14.933 30.72h-33.28l9.813 23.467h17.92c-0.427 4.267-0.853 8.96-0.853 14.080v2.133h-22.187l9.387 23.467h15.787c2.56 11.52 6.827 22.613 12.8 32.853 5.973 10.667 13.653 19.627 23.040 27.733s20.053 14.507 32 19.2c12.373 4.693 25.6 7.253 40.533 7.253 20.907 0 38.827-4.693 54.187-13.653s26.453-20.907 34.133-35.84l-33.707-23.467c-2.987 6.4-6.827 11.947-10.667 16.213-4.267 4.267-8.96 7.68-13.653 10.24s-9.813 4.267-15.36 5.547c-5.547 1.28-10.667 1.707-15.787 1.707-8.107 0-15.787-1.28-22.613-3.84s-12.8-5.973-17.92-10.24c-5.12-4.267-9.387-9.387-13.227-15.36s-6.4-11.947-8.107-18.773h81.92l-9.387-23.467h-76.373v-3.413c0-4.267 0.427-8.533 0.853-12.8h74.667l-9.387-23.467h-58.453c5.547-11.947 13.227-21.76 23.467-29.013s21.76-11.093 35.413-11.093c5.12 0 10.24 0.427 15.787 1.707s10.667 3.413 15.787 5.973c5.12 2.987 9.387 6.4 14.080 10.667 4.267 4.267 7.68 9.813 10.24 15.787l35.413-20.053zM634.88 576h-314.88c-12.8 0-21.333 8.533-21.333 21.333s8.533 21.333 21.333 21.333h315.733c-1.28-8.533-2.56-16.64-2.56-25.6 0-5.973 1.28-11.52 1.707-17.067zM673.707 473.6c-2.987-2.56-6.827-4.267-12.373-4.267h-341.333c-12.8 0-21.333 8.533-21.333 21.333s8.533 21.333 21.333 21.333h330.667c5.973-13.653 14.080-26.453 23.040-38.4zM832 394.24c-7.253 0-14.080 1.28-21.333 2.133v-353.707c0-34.133-29.867-64-64-64s-64 29.867-64 64v42.667c0 12.8-8.533 21.333-21.333 21.333h-640c-12.8 0-21.333-8.533-21.333-21.333v-42.667c0-59.733 46.933-106.667 106.667-106.667h640c59.733 0 106.667 46.933 106.667 106.667v353.707c-7.253-0.853-14.080-2.133-21.333-2.133zM128-21.333h-21.333c-34.133 0-64 29.867-64 64v21.333h597.333v-21.333c0-25.6 8.533-46.933 21.333-64h-533.333zM832 917.333h-597.333c-34.133 0-64-29.867-64-64v-682.667c0-12.8-8.533-21.333-21.333-21.333s-21.333 8.533-21.333 21.333v682.667c0 59.733 46.933 106.667 106.667 106.667h682.667c59.733 0 106.667-46.933 106.667-106.667v-64c0-12.8-8.533-21.333-25.6-21.333h-73.387c-8.533 4.267-17.067 8.533-26.027 11.52-1.28 2.987-2.987 7.253-2.987 9.813 0 12.8 8.533 21.333 21.333 21.333h64v42.667c0 34.133-29.867 64-64 64s-64-29.867-64-64v-63.573c-7.253 0.853-14.080 2.133-21.333 2.133s-14.080-1.28-21.333-2.133v63.573c0 25.6 8.533 46.933 21.333 64z" /> <glyph unicode="&#xe960;" glyph-name="clientConsumption" d="M354.133 243.2c0 96.853 37.547 187.733 105.813 256-20.907 2.133-40.107 2.987-56.747 2.987-134.4 0-403.2-70.4-403.2-204.8v-153.6h367.787c-8.96 32-13.653 65.28-13.653 99.413zM605.013 755.2c0-113.108-90.355-204.8-201.813-204.8s-201.813 91.692-201.813 204.8c0 113.108 90.355 204.8 201.813 204.8s201.813-91.692 201.813-204.8zM605.867 98.56h221.867l18.773 151.040h-259.84l19.2-151.040zM795.733 224.853c0 6.827 5.547 12.373 12.373 12.373s12.373-5.547 12.373-12.373c0-1.28-0.853-58.88-3.413-110.933 0-5.547-5.547-11.093-12.373-11.093s-12.373 6.827-12.373 12.373c0.853 29.867 3.413 107.52 3.413 109.653zM747.947 228.267c0 6.827 5.547 12.373 12.373 12.373s12.373-5.547 12.373-12.373v-113.493c0-6.827-5.547-12.373-12.373-12.373s-12.373 5.547-12.373 12.373v113.493zM704.427 228.267c0 6.827 5.547 12.373 12.373 12.373s12.373-5.547 12.373-12.373v-113.493c0-6.827-5.547-12.373-12.373-12.373s-12.373 5.547-12.373 12.373v113.493zM661.333 228.267c0 6.827 5.547 12.373 12.373 12.373s12.373-5.547 12.373-12.373v-114.347c0-6.827-5.547-12.373-12.373-12.373s-12.373 4.693-12.373 12.373v114.347zM623.787 238.507c6.827 0 12.373-4.693 13.227-11.093l5.547-112.213c0-6.827-4.693-12.373-11.093-13.227h-0.853c-5.547-0.853-11.093 4.693-11.093 9.813l-6.827 113.493c-0.427 6.4 4.267 11.947 11.093 13.227zM716.8 550.4c-169.813 0-307.2-137.387-307.2-307.2s137.387-307.2 307.2-307.2 307.2 137.387 307.2 307.2-137.387 307.2-307.2 307.2zM894.293 260.693c0-6.827-5.547-12.373-12.373-12.373h-9.813l-22.187-163.413c-0.853-5.547-5.547-9.813-12.373-9.813h-241.92c-5.547 0-11.093 4.693-12.373 9.813l-22.187 164.267h-9.813c-6.827 0-12.373 5.547-12.373 12.373v27.733c0 6.827 5.547 12.373 12.373 12.373h59.733l49.067 101.12c-0.853 3.413-2.133 7.68-2.133 12.373 2.133 13.227 14.507 23.467 27.733 20.907s23.467-14.507 20.907-27.733c-2.56-13.227-14.507-23.467-27.733-20.907l-38.827-86.613h152.32l-38.827 86.613c-13.227-2.133-25.6 7.68-27.733 20.907s7.68 25.6 20.907 27.733c13.227 2.133 25.6-7.68 27.733-20.907 0.853-4.693 0-8.96-2.133-12.373l49.067-101.12h59.733c7.68-1.28 13.227-6.827 13.227-13.227v-27.733z" />
<glyph unicode="&#xe961;" glyph-name="invoiceIn" d="M320 358.4h128c12.8 0 21.333 8.533 21.333 21.333s-8.533 21.333-21.333 21.333h-128c-12.8 0-21.333-8.533-21.333-21.333s8.533-21.333 21.333-21.333zM832 746.667c-85.333 0-153.6-68.267-153.6-153.6s68.267-153.6 153.6-153.6 153.6 68.267 153.6 153.6-68.267 153.6-153.6 153.6zM921.6 576h-81.067v-42.667c0-8.533-4.267-12.8-12.8-8.533l-98.133 55.467c-8.533 4.267-8.533 12.8 0 17.067l98.133 55.467c8.533 4.267 12.8 0 12.8-8.533v-42.667h81.067c8.533 0 17.067-8.533 17.067-17.067 0 0-4.267-8.533-17.067-8.533zM720.64 231.68c-3.413-8.533-8.96-16.213-15.36-22.613-6.827-6.4-14.080-11.947-22.613-16.64-8.533-4.267-17.493-7.68-26.88-10.24s-18.773-3.413-28.16-3.413c-12.373 0-24.32 2.133-35.413 6.4s-20.907 9.813-29.867 17.067c-8.96 7.253-16.64 15.36-23.040 25.173-6.4 9.387-11.52 19.627-14.933 30.72h-33.28l9.813 23.467h17.92c-0.427 4.267-0.853 8.96-0.853 14.080v2.133h-22.187l9.387 23.467h15.787c2.56 11.52 6.827 22.613 12.8 32.853 5.973 10.667 13.653 19.627 23.040 27.733s20.053 14.507 32 19.2c12.373 4.693 25.6 7.253 40.533 7.253 20.907 0 38.827-4.693 54.187-13.653s26.453-20.907 34.133-35.84l-33.707-23.467c-2.987 6.4-6.827 11.947-10.667 16.213-4.267 4.267-8.96 7.68-13.653 10.24s-9.813 4.267-15.36 5.547c-5.547 1.28-10.667 1.707-15.787 1.707-8.107 0-15.787-1.28-22.613-3.84s-12.8-5.973-17.92-10.24c-5.12-4.267-9.387-9.387-13.227-15.36s-6.4-11.947-8.107-18.773h81.92l-9.387-23.467h-76.373v-3.413c0-4.267 0.427-8.533 0.853-12.8h74.667l-9.387-23.467h-58.453c5.547-11.947 13.227-21.76 23.467-29.013s21.76-11.093 35.413-11.093c5.12 0 10.24 0.427 15.787 1.707s10.667 3.413 15.787 5.973c5.12 2.987 9.387 6.4 14.080 10.667 4.267 4.267 7.68 9.813 10.24 15.787l35.413-20.053zM634.88 576h-314.88c-12.8 0-21.333 8.533-21.333 21.333s8.533 21.333 21.333 21.333h315.733c-1.28-8.533-2.56-16.64-2.56-25.6 0-5.973 1.28-11.52 1.707-17.067zM673.707 473.6c-2.987-2.56-6.827-4.267-12.373-4.267h-341.333c-12.8 0-21.333 8.533-21.333 21.333s8.533 21.333 21.333 21.333h330.667c5.973-13.653 14.080-26.453 23.040-38.4zM832 394.24c-7.253 0-14.080 1.28-21.333 2.133v-353.707c0-34.133-29.867-64-64-64s-64 29.867-64 64v42.667c0 12.8-8.533 21.333-21.333 21.333h-640c-12.8 0-21.333-8.533-21.333-21.333v-42.667c0-59.733 46.933-106.667 106.667-106.667h640c59.733 0 106.667 46.933 106.667 106.667v353.707c-7.253-0.853-14.080-2.133-21.333-2.133zM128-21.333h-21.333c-34.133 0-64 29.867-64 64v21.333h597.333v-21.333c0-25.6 8.533-46.933 21.333-64h-533.333zM832 917.333h-597.333c-34.133 0-64-29.867-64-64v-682.667c0-12.8-8.533-21.333-21.333-21.333s-21.333 8.533-21.333 21.333v682.667c0 59.733 46.933 106.667 106.667 106.667h682.667c59.733 0 106.667-46.933 106.667-106.667v-64c0-12.8-8.533-21.333-25.6-21.333h-73.387c-8.533 4.267-17.067 8.533-26.027 11.52-1.28 2.987-2.987 7.253-2.987 9.813 0 12.8 8.533 21.333 21.333 21.333h64v42.667c0 34.133-29.867 64-64 64s-64-29.867-64-64v-63.573c-7.253 0.853-14.080 2.133-21.333 2.133s-14.080-1.28-21.333-2.133v63.573c0 25.6 8.533 46.933 21.333 64z" /> <glyph unicode="&#xe961;" glyph-name="lastBuy" d="M183.467 750.933h712.533v-38.4h-768v38.4zM89.6 38.4c8.533 0 12.8 0 21.333-4.267v925.867h-42.667v-925.867c8.533 4.267 12.8 4.267 21.333 4.267zM955.733 512v448h-42.667v-413.867c17.067-12.8 29.867-21.333 42.667-34.133zM132.267-21.333c0-23.564-19.103-42.667-42.667-42.667s-42.667 19.103-42.667 42.667c0 23.564 19.103 42.667 42.667 42.667s42.667-19.103 42.667-42.667zM418.133 426.667h-290.133v-38.4h273.067c4.267 17.067 8.533 29.867 17.067 38.4zM392.533 106.667h-264.533v-38.4h281.6c-8.533 12.8-12.8 25.6-17.067 38.4zM725.333 247.467c-12.8 0-21.333-8.533-21.333-21.333s8.533-21.333 21.333-21.333c12.8 0 21.333 8.533 21.333 21.333 0 8.533-12.8 21.333-21.333 21.333zM721.067 541.867c-166.4 0-298.667-136.533-298.667-302.933s132.267-302.933 298.667-302.933c166.4 0 298.667 136.533 298.667 302.933 0 170.667-132.267 302.933-298.667 302.933zM725.333 34.133c-98.133 0-174.933 72.533-187.733 162.133h-34.133l51.2 64 59.733-64h-38.4c8.533-68.267 72.533-123.733 149.333-123.733 81.067 0 149.333 64 149.333 145.067s-68.267 145.067-149.333 145.067c-68.267 0-128-46.933-145.067-110.933l-21.333 29.867-17.067-12.8c8.533 29.867 25.6 55.467 46.933 76.8l-25.6 21.333c-4.267 4.267-4.267 12.8 0 17.067l12.8 12.8c4.267 4.267 12.8 4.267 17.067 0l25.6-25.6c21.333 12.8 51.2 25.6 76.8 25.6v29.867h-8.533c-8.533 0-12.8 4.267-12.8 12.8v17.067c0 8.533 4.267 12.8 12.8 12.8h59.733c8.533 0 12.8-4.267 12.8-12.8v-17.067c0-8.533-4.267-12.8-12.8-12.8h-8.533v-21.333c29.867-4.267 55.467-12.8 81.067-29.867l34.133 29.867c4.267 4.267 12.8 4.267 17.067 0l12.8-12.8c4.267-4.267 4.267-12.8 0-17.067l-25.6-25.6c29.867-34.133 51.2-76.8 51.2-128 4.267-102.4-81.067-187.733-183.467-187.733zM772.267 226.133c0-25.6-21.333-46.933-46.933-46.933s-46.933 21.333-46.933 46.933c0 25.6 21.333 46.933 46.933 46.933 8.533 0 17.067-4.267 21.333-4.267l46.933 46.933 21.333-21.333-46.933-46.933c4.267-4.267 4.267-12.8 4.267-21.333z" />
<glyph unicode="&#xe962;" glyph-name="supplierfalse" d="M198.827 882.773c22.187 0.427 41.813-14.080 48.64-34.133l8.107-22.187 105.813-105.813-54.187 149.333c-25.6 59.733-89.6 89.6-149.333 72.533l-13.653-5.12 54.613-54.613zM708.693 129.28l-173.653 173.653 15.36-43.093c-8.533-4.267-12.8-4.267-21.333-4.267l-29.867 83.2-108.373 108.373 74.24-208.64c-42.667-25.6-72.533-76.8-72.533-132.267 0-89.6 72.533-157.867 157.867-157.867 89.6 0 157.867 72.533 157.867 157.867 0 8.533-4.267 12.8-4.267 21.333l4.693 1.707zM550.4 12.373c-51.2 0-93.867 42.667-93.867 93.867s42.667 93.867 93.867 93.867 93.867-42.667 93.867-93.867c0-55.467-42.667-93.867-93.867-93.867zM960 289.707l-122.453-45.227 49.493-49.067 94.293 34.56zM504.32 577.707l-0.853 2.133 76.8 29.867 17.067-51.2c4.267-12.8 17.067-21.333 29.867-21.333 4.267 0 8.533 0 12.8 0l115.2 42.667c8.533 4.267 12.8 8.533 17.067 17.067s4.267 17.067 0 25.6l-17.067 51.2 76.8 29.867 119.467-332.8-174.507-65.707 45.653-45.653 180.053 64.427c8.533 4.267 12.8 8.533 17.067 17.067s4.267 17.067 4.267 21.333l-145.067 396.8c-4.267 8.533-8.533 12.8-17.067 17.067s-17.067 4.267-25.6 0l-136.533-51.2-115.2-42.667-134.4-50.347 54.187-54.187zM695.467 656.64l8.533-21.333-59.733-21.333-8.533 21.333 59.733 21.333zM896 439.040l-98.133-34.133 21.333-59.733 98.133 34.133zM39.253 960c-9.813 0-20.053-3.84-27.733-11.52-15.36-15.787-15.36-40.533 0-55.893l945.493-945.067c7.68-7.68 17.493-11.52 27.733-11.52 9.813 0 20.053 3.84 27.733 11.52 15.36 15.787 15.36 40.533 0 55.893l-945.493 945.067c-7.68 7.68-17.493 11.52-27.733 11.52z" />
<glyph unicode="&#xe968;" glyph-name="wiki" d="M793.6 733.867c0 0 4.267 0 4.267 0l76.8 12.8v-42.667c0-34.133-21.333-68.267-46.933-72.533 0 0-4.267 0-4.267 0l-76.8-12.8v42.667c0 34.133 21.333 64 46.933 72.533zM742.4 597.333l38.4 4.267c12.8 0 25.6-12.8 25.6-29.867v-21.333l-38.4-4.267c-12.8 0-25.6 12.8-25.6 29.867v21.333zM618.667 699.733l68.267 8.533c25.6 4.267 42.667-21.333 42.667-55.467v-38.4l-68.267-8.533c-25.6-4.267-42.667 21.333-42.667 55.467v38.4zM665.6 588.8c4.267 0 4.267 0 0 0l59.733 4.267v-29.867c0-25.6-17.067-46.933-34.133-55.467 0 0-4.267 0-4.267 0l-55.467-8.533v29.867c4.267 29.867 17.067 51.2 34.133 59.733zM443.733 648.533c0 0-4.267 0-4.267 0-119.467 85.333-273.067 46.933-277.333 46.933s-8.533 0-12.8 8.533c0 4.267 0 8.533 8.533 12.8 0 0 42.667 12.8 98.133 8.533 51.2 0 128-12.8 196.267-59.733 4.267-4.267 4.267-8.533 4.267-12.8-4.267-4.267-8.533-4.267-12.8-4.267zM443.733 512c0 0-4.267 0-4.267 0-119.467 85.333-273.067 46.933-277.333 46.933s-8.533 0-12.8 8.533c0 4.267 0 8.533 8.533 12.8 0 0 42.667 12.8 98.133 8.533 51.2 0 128-12.8 196.267-59.733 4.267-4.267 4.267-8.533 4.267-12.8-4.267 0-8.533-4.267-12.8-4.267zM443.733 379.733c0 0-4.267 0-4.267 0-119.467 85.333-273.067 46.933-277.333 46.933s-8.533 0-12.8 8.533c0 4.267 0 8.533 8.533 12.8 0 0 42.667 12.8 98.133 8.533 51.2 0 128-12.8 196.267-59.733 4.267-4.267 4.267-8.533 4.267-12.8-4.267 0-8.533-4.267-12.8-4.267zM443.733 247.467c0 0-4.267 0-4.267 0-119.467 85.333-273.067 46.933-277.333 46.933s-8.533 0-12.8 8.533c0 4.267 0 8.533 8.533 12.8 0 0 42.667 12.8 98.133 8.533 51.2 0 128-12.8 196.267-59.733 4.267-4.267 4.267-8.533 4.267-12.8-4.267 0-8.533-4.267-12.8-4.267zM588.8 379.733c-4.267 0-4.267 0-8.533 4.267s0 8.533 4.267 12.8c68.267 46.933 140.8 59.733 196.267 59.733s93.867-8.533 98.133-8.533c4.267 0 8.533-8.533 8.533-12.8s-8.533-8.533-12.8-8.533v0c0 0-153.6 38.4-277.333-46.933-4.267 4.267-4.267 0-8.533 0zM588.8 247.467c-4.267 0-4.267 0-8.533 4.267s0 8.533 4.267 12.8c68.267 46.933 140.8 59.733 196.267 59.733s93.867-8.533 98.133-8.533c4.267 0 8.533-8.533 8.533-12.8s-8.533-8.533-12.8-8.533v0c0 0-153.6 38.4-277.333-46.933-4.267 4.267-4.267 0-8.533 0zM985.6 738.133v64l-8.533 4.267c-4.267 0-81.067 29.867-179.2 29.867-106.667 0-200.533-34.133-277.333-98.133-76.8 64-170.667 98.133-277.333 98.133-102.4 0-174.933-29.867-179.2-29.867l-12.8-4.267v-59.733c-34.133-4.267-51.2-17.067-51.2-34.133v-614.4h452.267c17.067-12.8 38.4-21.333 64-21.333s46.933 8.533 64 21.333h443.733v614.4c0 17.067-17.067 25.6-38.4 29.867v0zM512 145.067c-38.4 17.067-166.4 64-298.667 64-51.2 0-98.133-8.533-136.533-21.333v597.333c21.333 8.533 85.333 25.6 162.133 25.6 98.133 0 183.467-29.867 256-89.6v-358.4l17.067 17.067v-234.667zM955.733 183.467c-42.667 17.067-89.6 25.6-140.8 25.6-128 0-251.733-51.2-290.133-64v238.933l17.067-17.067v349.867c68.267 59.733 153.6 89.6 256 89.6 76.8 0 136.533-17.067 162.133-25.6v-597.333z" /> <glyph unicode="&#xe968;" glyph-name="wiki" d="M793.6 733.867c0 0 4.267 0 4.267 0l76.8 12.8v-42.667c0-34.133-21.333-68.267-46.933-72.533 0 0-4.267 0-4.267 0l-76.8-12.8v42.667c0 34.133 21.333 64 46.933 72.533zM742.4 597.333l38.4 4.267c12.8 0 25.6-12.8 25.6-29.867v-21.333l-38.4-4.267c-12.8 0-25.6 12.8-25.6 29.867v21.333zM618.667 699.733l68.267 8.533c25.6 4.267 42.667-21.333 42.667-55.467v-38.4l-68.267-8.533c-25.6-4.267-42.667 21.333-42.667 55.467v38.4zM665.6 588.8c4.267 0 4.267 0 0 0l59.733 4.267v-29.867c0-25.6-17.067-46.933-34.133-55.467 0 0-4.267 0-4.267 0l-55.467-8.533v29.867c4.267 29.867 17.067 51.2 34.133 59.733zM443.733 648.533c0 0-4.267 0-4.267 0-119.467 85.333-273.067 46.933-277.333 46.933s-8.533 0-12.8 8.533c0 4.267 0 8.533 8.533 12.8 0 0 42.667 12.8 98.133 8.533 51.2 0 128-12.8 196.267-59.733 4.267-4.267 4.267-8.533 4.267-12.8-4.267-4.267-8.533-4.267-12.8-4.267zM443.733 512c0 0-4.267 0-4.267 0-119.467 85.333-273.067 46.933-277.333 46.933s-8.533 0-12.8 8.533c0 4.267 0 8.533 8.533 12.8 0 0 42.667 12.8 98.133 8.533 51.2 0 128-12.8 196.267-59.733 4.267-4.267 4.267-8.533 4.267-12.8-4.267 0-8.533-4.267-12.8-4.267zM443.733 379.733c0 0-4.267 0-4.267 0-119.467 85.333-273.067 46.933-277.333 46.933s-8.533 0-12.8 8.533c0 4.267 0 8.533 8.533 12.8 0 0 42.667 12.8 98.133 8.533 51.2 0 128-12.8 196.267-59.733 4.267-4.267 4.267-8.533 4.267-12.8-4.267 0-8.533-4.267-12.8-4.267zM443.733 247.467c0 0-4.267 0-4.267 0-119.467 85.333-273.067 46.933-277.333 46.933s-8.533 0-12.8 8.533c0 4.267 0 8.533 8.533 12.8 0 0 42.667 12.8 98.133 8.533 51.2 0 128-12.8 196.267-59.733 4.267-4.267 4.267-8.533 4.267-12.8-4.267 0-8.533-4.267-12.8-4.267zM588.8 379.733c-4.267 0-4.267 0-8.533 4.267s0 8.533 4.267 12.8c68.267 46.933 140.8 59.733 196.267 59.733s93.867-8.533 98.133-8.533c4.267 0 8.533-8.533 8.533-12.8s-8.533-8.533-12.8-8.533v0c0 0-153.6 38.4-277.333-46.933-4.267 4.267-4.267 0-8.533 0zM588.8 247.467c-4.267 0-4.267 0-8.533 4.267s0 8.533 4.267 12.8c68.267 46.933 140.8 59.733 196.267 59.733s93.867-8.533 98.133-8.533c4.267 0 8.533-8.533 8.533-12.8s-8.533-8.533-12.8-8.533v0c0 0-153.6 38.4-277.333-46.933-4.267 4.267-4.267 0-8.533 0zM985.6 738.133v64l-8.533 4.267c-4.267 0-81.067 29.867-179.2 29.867-106.667 0-200.533-34.133-277.333-98.133-76.8 64-170.667 98.133-277.333 98.133-102.4 0-174.933-29.867-179.2-29.867l-12.8-4.267v-59.733c-34.133-4.267-51.2-17.067-51.2-34.133v-614.4h452.267c17.067-12.8 38.4-21.333 64-21.333s46.933 8.533 64 21.333h443.733v614.4c0 17.067-17.067 25.6-38.4 29.867v0zM512 145.067c-38.4 17.067-166.4 64-298.667 64-51.2 0-98.133-8.533-136.533-21.333v597.333c21.333 8.533 85.333 25.6 162.133 25.6 98.133 0 183.467-29.867 256-89.6v-358.4l17.067 17.067v-234.667zM955.733 183.467c-42.667 17.067-89.6 25.6-140.8 25.6-128 0-251.733-51.2-290.133-64v238.933l17.067-17.067v349.867c68.267 59.733 153.6 89.6 256 89.6 76.8 0 136.533-17.067 162.133-25.6v-597.333z" />
<glyph unicode="&#xe96c;" glyph-name="attach" d="M960 866.133c-42.667 42.667-98.133 64-157.867 64s-115.2-21.333-157.867-64l-593.067-593.067c-34.133-34.133-55.467-85.333-51.2-136.533 0-42.667 17.067-81.067 46.933-110.933 34.133-38.4 81.067-59.733 132.267-59.733 46.933 0 93.867 17.067 128 51.2l541.867 546.133c25.6 25.6 42.667 64 42.667 98.133s-12.8 68.267-38.4 93.867c-25.6 25.6-59.733 38.4-98.133 38.4-34.133 0-72.533-17.067-98.133-42.667l-354.133-354.133c-4.267 0-4.267-4.267-4.267-12.8s4.267-12.8 8.533-17.067 25.6-8.533 34.133 0l354.133 354.133c12.8 17.067 38.4 25.6 59.733 25.6 25.6 0 51.2-12.8 68.267-34.133 8.533-12.8 17.067-25.6 17.067-42.667 4.267-25.6-4.267-55.467-25.6-72.533l-541.867-541.867c-25.6-25.6-55.467-38.4-93.867-38.4-34.133 0-68.267 12.8-93.867 38.4s-38.4 59.733-38.4 93.867c0 34.133 12.8 68.267 38.4 93.867l588.8 584.533c34.133 34.133 76.8 51.2 123.733 51.2s89.6-17.067 123.733-51.2c34.133-34.133 51.2-76.8 51.2-123.733s-17.067-89.6-51.2-123.733l-401.067-401.067c-4.267-4.267-8.533-12.8-8.533-17.067 0-8.533 4.267-12.8 8.533-17.067 8.533-8.533 25.6-8.533 34.133 0l401.067 401.067c89.6 89.6 89.6 230.4 4.267 320z" /> <glyph unicode="&#xe96c;" glyph-name="attach" d="M960 866.133c-42.667 42.667-98.133 64-157.867 64s-115.2-21.333-157.867-64l-593.067-593.067c-34.133-34.133-55.467-85.333-51.2-136.533 0-42.667 17.067-81.067 46.933-110.933 34.133-38.4 81.067-59.733 132.267-59.733 46.933 0 93.867 17.067 128 51.2l541.867 546.133c25.6 25.6 42.667 64 42.667 98.133s-12.8 68.267-38.4 93.867c-25.6 25.6-59.733 38.4-98.133 38.4-34.133 0-72.533-17.067-98.133-42.667l-354.133-354.133c-4.267 0-4.267-4.267-4.267-12.8s4.267-12.8 8.533-17.067 25.6-8.533 34.133 0l354.133 354.133c12.8 17.067 38.4 25.6 59.733 25.6 25.6 0 51.2-12.8 68.267-34.133 8.533-12.8 17.067-25.6 17.067-42.667 4.267-25.6-4.267-55.467-25.6-72.533l-541.867-541.867c-25.6-25.6-55.467-38.4-93.867-38.4-34.133 0-68.267 12.8-93.867 38.4s-38.4 59.733-38.4 93.867c0 34.133 12.8 68.267 38.4 93.867l588.8 584.533c34.133 34.133 76.8 51.2 123.733 51.2s89.6-17.067 123.733-51.2c34.133-34.133 51.2-76.8 51.2-123.733s-17.067-89.6-51.2-123.733l-401.067-401.067c-4.267-4.267-8.533-12.8-8.533-17.067 0-8.533 4.267-12.8 8.533-17.067 8.533-8.533 25.6-8.533 34.133 0l401.067 401.067c89.6 89.6 89.6 230.4 4.267 320z" />
<glyph unicode="&#xe96d;" glyph-name="zone2" d="M98.133 17.067c-4.267 29.867-12.8 64-17.067 93.867-17.067 98.133-34.133 192-51.2 290.133-12.8 46.933-21.333 98.133-29.867 149.333 0 4.267 0 8.533 4.267 8.533 42.667 21.333 85.333 42.667 128 59.733 0 0 0 0 4.267 0 4.267-8.533 8.533-12.8 12.8-21.333-21.333-8.533-42.667-21.333-64-29.867-17.067-8.533-34.133-17.067-51.2-21.333-4.267 0-4.267-4.267-4.267-8.533 8.533-42.667 17.067-85.333 25.6-132.267 0-4.267 4.267-4.267 4.267-8.533 8.533-4.267 17.067-8.533 25.6-17.067 0-4.267-4.267-12.8-8.533-17.067-4.267 4.267-12.8 4.267-17.067 8.533 17.067-102.4 38.4-209.067 55.467-311.467 17.067 8.533 29.867 12.8 42.667 21.333 51.2 25.6 102.4 51.2 153.6 72.533 4.267 0 8.533 0 17.067 0 68.267-4.267 136.533-12.8 204.8-17.067 0 0 4.267 0 8.533 0-4.267 17.067-4.267 34.133-8.533 51.2-12.8 68.267-25.6 136.533-38.4 204.8 0 8.533-4.267 17.067-12.8 25.6-4.267 4.267-4.267 8.533-8.533 12.8 12.8 4.267 8.533 17.067 8.533 25.6-8.533 51.2-17.067 106.667-29.867 157.867 0 4.267 0 4.267-8.533 4.267-17.067 0-38.4 4.267-55.467 4.267 4.267 8.533 8.533 17.067 12.8 21.333 0 0 4.267 4.267 8.533 4.267 17.067 0 34.133-4.267 46.933-4.267 4.267 0 8.533 0 12.8 0 68.267 29.867 132.267 64 200.533 93.867 4.267 4.267 8.533 8.533 12.8 8.533 68.267-4.267 136.533-8.533 204.8-17.067 8.533 0 17.067 0 29.867-4.267 4.267 0 8.533-4.267 8.533-8.533 12.8-64 25.6-132.267 34.133-196.267 17.067-102.4 38.4-204.8 55.467-311.467 0-8.533 4.267-17.067 4.267-25.6-17.067 0-34.133 4.267-51.2 4.267-42.667 4.267-89.6 8.533-132.267 12.8-17.067 0-38.4 4.267-55.467 4.267-4.267 0-12.8 0-17.067-4.267-68.267-29.867-132.267-64-200.533-93.867 0 0-4.267 0-8.533 0-76.8 8.533-149.333 12.8-226.133 21.333-4.267 0-8.533 0-12.8 0-72.533-34.133-140.8-68.267-213.333-102.4 0-4.267 0-8.533-4.267-8.533zM989.867 217.6c0 4.267 0 4.267 0 8.533-8.533 34.133-12.8 72.533-21.333 106.667-8.533 46.933-17.067 89.6-25.6 136.533 0 8.533-4.267 12.8-8.533 17.067-8.533 4.267-12.8 12.8-21.333 17.067 4.267 8.533 8.533 12.8 12.8 17.067 4.267-4.267 8.533-4.267 12.8-8.533-4.267 12.8-4.267 21.333-4.267 34.133-8.533 46.933-17.067 93.867-25.6 145.067 0 4.267-4.267 8.533-8.533 8.533-68.267 4.267-136.533 12.8-209.067 17.067-4.267 0-8.533 0-12.8-4.267-64-29.867-123.733-59.733-187.733-85.333-4.267-4.267-8.533-4.267-4.267-12.8 4.267-29.867 12.8-64 17.067-93.867 4.267-21.333 8.533-42.667 12.8-59.733 12.8-4.267 12.8-12.8 21.333-21.333-12.8-4.267-12.8-12.8-12.8-25.6 12.8-68.267 25.6-132.267 38.4-200.533 4.267-25.6 8.533-51.2 12.8-76.8 4.267 0 4.267 0 8.533 4.267 59.733 29.867 119.467 59.733 183.467 89.6-4.267 4.267 0 4.267 4.267 4.267 51.2-4.267 106.667-8.533 157.867-12.8 21.333 0 38.4-4.267 59.733-4.267zM260.267 469.333c-12.8 17.067-25.6 34.133-38.4 46.933-29.867 46.933-59.733 93.867-85.333 145.067-12.8 29.867-21.333 64-17.067 102.4 8.533 51.2 34.133 85.333 81.067 102.4 55.467 21.333 123.733 8.533 162.133-34.133 34.133-34.133 42.667-76.8 34.133-123.733-8.533-42.667-25.6-76.8-46.933-115.2-25.6-42.667-55.467-81.067-85.333-123.733 0 4.267-4.267 0-4.267 0zM260.267 819.2c-46.933 0-81.067-34.133-81.067-81.067s38.4-81.067 81.067-81.067c46.933 0 81.067 38.4 85.333 81.067 0 42.667-38.4 81.067-85.333 81.067zM358.4 349.867c4.267-8.533 4.267-12.8 8.533-21.333-12.8-4.267-25.6-12.8-38.4-17.067-4.267 8.533-4.267 12.8-8.533 21.333 12.8 4.267 25.6 12.8 38.4 17.067zM226.133 302.933c0 8.533 4.267 17.067 4.267 21.333 12.8 0 25.6-4.267 38.4-4.267 0-8.533 0-12.8 0-25.6-12.8 8.533-29.867 8.533-42.667 8.533zM413.867 354.133c-4.267 8.533-8.533 12.8-12.8 21.333 12.8 8.533 21.333 17.067 34.133 25.6 4.267-4.267 8.533-12.8 12.8-17.067-12.8-12.8-21.333-21.333-34.133-29.867zM179.2 341.333c-4.267-8.533-4.267-12.8-8.533-21.333-12.8 4.267-25.6 8.533-38.4 17.067 4.267 8.533 4.267 12.8 8.533 21.333 12.8-8.533 25.6-12.8 38.4-17.067zM682.667 580.267c-12.8-8.533-21.333-17.067-34.133-21.333-4.267 4.267-8.533 12.8-12.8 17.067 12.8 8.533 25.6 17.067 38.4 25.6 4.267-8.533 4.267-17.067 8.533-21.333zM878.933 558.933c-4.267-8.533-8.533-12.8-12.8-21.333-12.8 8.533-25.6 17.067-34.133 21.333 4.267 8.533 8.533 12.8 8.533 21.333 12.8-8.533 25.6-17.067 38.4-21.333zM571.733 486.4c-4.267 4.267-8.533 12.8-12.8 17.067 8.533 8.533 21.333 21.333 29.867 29.867 4.267-4.267 8.533-12.8 12.8-17.067-8.533-8.533-17.067-21.333-29.867-29.867zM785.067 610.133c-4.267-8.533-4.267-17.067-8.533-21.333-12.8 0-25.6 4.267-38.4 4.267 0 8.533 0 12.8 0 21.333 17.067 0 29.867-4.267 46.933-4.267z" /> <glyph unicode="&#xe96d;" glyph-name="zone2" d="M98.133 17.067c-4.267 29.867-12.8 64-17.067 93.867-17.067 98.133-34.133 192-51.2 290.133-12.8 46.933-21.333 98.133-29.867 149.333 0 4.267 0 8.533 4.267 8.533 42.667 21.333 85.333 42.667 128 59.733 0 0 0 0 4.267 0 4.267-8.533 8.533-12.8 12.8-21.333-21.333-8.533-42.667-21.333-64-29.867-17.067-8.533-34.133-17.067-51.2-21.333-4.267 0-4.267-4.267-4.267-8.533 8.533-42.667 17.067-85.333 25.6-132.267 0-4.267 4.267-4.267 4.267-8.533 8.533-4.267 17.067-8.533 25.6-17.067 0-4.267-4.267-12.8-8.533-17.067-4.267 4.267-12.8 4.267-17.067 8.533 17.067-102.4 38.4-209.067 55.467-311.467 17.067 8.533 29.867 12.8 42.667 21.333 51.2 25.6 102.4 51.2 153.6 72.533 4.267 0 8.533 0 17.067 0 68.267-4.267 136.533-12.8 204.8-17.067 0 0 4.267 0 8.533 0-4.267 17.067-4.267 34.133-8.533 51.2-12.8 68.267-25.6 136.533-38.4 204.8 0 8.533-4.267 17.067-12.8 25.6-4.267 4.267-4.267 8.533-8.533 12.8 12.8 4.267 8.533 17.067 8.533 25.6-8.533 51.2-17.067 106.667-29.867 157.867 0 4.267 0 4.267-8.533 4.267-17.067 0-38.4 4.267-55.467 4.267 4.267 8.533 8.533 17.067 12.8 21.333 0 0 4.267 4.267 8.533 4.267 17.067 0 34.133-4.267 46.933-4.267 4.267 0 8.533 0 12.8 0 68.267 29.867 132.267 64 200.533 93.867 4.267 4.267 8.533 8.533 12.8 8.533 68.267-4.267 136.533-8.533 204.8-17.067 8.533 0 17.067 0 29.867-4.267 4.267 0 8.533-4.267 8.533-8.533 12.8-64 25.6-132.267 34.133-196.267 17.067-102.4 38.4-204.8 55.467-311.467 0-8.533 4.267-17.067 4.267-25.6-17.067 0-34.133 4.267-51.2 4.267-42.667 4.267-89.6 8.533-132.267 12.8-17.067 0-38.4 4.267-55.467 4.267-4.267 0-12.8 0-17.067-4.267-68.267-29.867-132.267-64-200.533-93.867 0 0-4.267 0-8.533 0-76.8 8.533-149.333 12.8-226.133 21.333-4.267 0-8.533 0-12.8 0-72.533-34.133-140.8-68.267-213.333-102.4 0-4.267 0-8.533-4.267-8.533zM989.867 217.6c0 4.267 0 4.267 0 8.533-8.533 34.133-12.8 72.533-21.333 106.667-8.533 46.933-17.067 89.6-25.6 136.533 0 8.533-4.267 12.8-8.533 17.067-8.533 4.267-12.8 12.8-21.333 17.067 4.267 8.533 8.533 12.8 12.8 17.067 4.267-4.267 8.533-4.267 12.8-8.533-4.267 12.8-4.267 21.333-4.267 34.133-8.533 46.933-17.067 93.867-25.6 145.067 0 4.267-4.267 8.533-8.533 8.533-68.267 4.267-136.533 12.8-209.067 17.067-4.267 0-8.533 0-12.8-4.267-64-29.867-123.733-59.733-187.733-85.333-4.267-4.267-8.533-4.267-4.267-12.8 4.267-29.867 12.8-64 17.067-93.867 4.267-21.333 8.533-42.667 12.8-59.733 12.8-4.267 12.8-12.8 21.333-21.333-12.8-4.267-12.8-12.8-12.8-25.6 12.8-68.267 25.6-132.267 38.4-200.533 4.267-25.6 8.533-51.2 12.8-76.8 4.267 0 4.267 0 8.533 4.267 59.733 29.867 119.467 59.733 183.467 89.6-4.267 4.267 0 4.267 4.267 4.267 51.2-4.267 106.667-8.533 157.867-12.8 21.333 0 38.4-4.267 59.733-4.267zM260.267 469.333c-12.8 17.067-25.6 34.133-38.4 46.933-29.867 46.933-59.733 93.867-85.333 145.067-12.8 29.867-21.333 64-17.067 102.4 8.533 51.2 34.133 85.333 81.067 102.4 55.467 21.333 123.733 8.533 162.133-34.133 34.133-34.133 42.667-76.8 34.133-123.733-8.533-42.667-25.6-76.8-46.933-115.2-25.6-42.667-55.467-81.067-85.333-123.733 0 4.267-4.267 0-4.267 0zM260.267 819.2c-46.933 0-81.067-34.133-81.067-81.067s38.4-81.067 81.067-81.067c46.933 0 81.067 38.4 85.333 81.067 0 42.667-38.4 81.067-85.333 81.067zM358.4 349.867c4.267-8.533 4.267-12.8 8.533-21.333-12.8-4.267-25.6-12.8-38.4-17.067-4.267 8.533-4.267 12.8-8.533 21.333 12.8 4.267 25.6 12.8 38.4 17.067zM226.133 302.933c0 8.533 4.267 17.067 4.267 21.333 12.8 0 25.6-4.267 38.4-4.267 0-8.533 0-12.8 0-25.6-12.8 8.533-29.867 8.533-42.667 8.533zM413.867 354.133c-4.267 8.533-8.533 12.8-12.8 21.333 12.8 8.533 21.333 17.067 34.133 25.6 4.267-4.267 8.533-12.8 12.8-17.067-12.8-12.8-21.333-21.333-34.133-29.867zM179.2 341.333c-4.267-8.533-4.267-12.8-8.533-21.333-12.8 4.267-25.6 8.533-38.4 17.067 4.267 8.533 4.267 12.8 8.533 21.333 12.8-8.533 25.6-12.8 38.4-17.067zM682.667 580.267c-12.8-8.533-21.333-17.067-34.133-21.333-4.267 4.267-8.533 12.8-12.8 17.067 12.8 8.533 25.6 17.067 38.4 25.6 4.267-8.533 4.267-17.067 8.533-21.333zM878.933 558.933c-4.267-8.533-8.533-12.8-12.8-21.333-12.8 8.533-25.6 17.067-34.133 21.333 4.267 8.533 8.533 12.8 8.533 21.333 12.8-8.533 25.6-17.067 38.4-21.333zM571.733 486.4c-4.267 4.267-8.533 12.8-12.8 17.067 8.533 8.533 21.333 21.333 29.867 29.867 4.267-4.267 8.533-12.8 12.8-17.067-8.533-8.533-17.067-21.333-29.867-29.867zM785.067 610.133c-4.267-8.533-4.267-17.067-8.533-21.333-12.8 0-25.6 4.267-38.4 4.267 0 8.533 0 12.8 0 21.333 17.067 0 29.867-4.267 46.933-4.267z" />

Before

Width:  |  Height:  |  Size: 120 KiB

After

Width:  |  Height:  |  Size: 112 KiB

View File

@ -9,13 +9,15 @@ import 'angular-translate-loader-partial';
import '@uirouter/angularjs'; import '@uirouter/angularjs';
import 'mg-crud'; import 'mg-crud';
import 'oclazyload'; import 'oclazyload';
import 'angular-moment';
export const ngDeps = [ export const ngDeps = [
'ngAnimate', 'ngAnimate',
'pascalprecht.translate', 'pascalprecht.translate',
'ui.router', 'ui.router',
'mgCrud', 'mgCrud',
'oc.lazyLoad' 'oc.lazyLoad',
'angularMoment'
]; ];
import * as validator from 'validator'; import * as validator from 'validator';

115
front/package-lock.json generated
View File

@ -1,115 +0,0 @@
{
"name": "salix-front",
"version": "1.0.0",
"lockfileVersion": 1,
"requires": true,
"dependencies": {
"@uirouter/angularjs": {
"version": "1.0.29",
"resolved": "https://registry.npmjs.org/@uirouter/angularjs/-/angularjs-1.0.29.tgz",
"integrity": "sha512-RImWnBarNixkMto0o8stEaGwZmvhv5cnuOLXyMU2pY8MP2rgEF74ZNJTLeJCW14LR7XDUxVH8Mk8bPI6lxedmQ==",
"requires": {
"@uirouter/core": "6.0.7"
}
},
"@uirouter/core": {
"version": "6.0.7",
"resolved": "https://registry.npmjs.org/@uirouter/core/-/core-6.0.7.tgz",
"integrity": "sha512-KUTJxL+6q0PiBnFx4/Z+Hsyg0pSGiaW5yZQeJmUxknecjpTbnXkLU8H2EqRn9N2B+qDRa7Jg8RcgeNDPY72O1w=="
},
"angular": {
"version": "1.8.2",
"resolved": "https://registry.npmjs.org/angular/-/angular-1.8.2.tgz",
"integrity": "sha512-IauMOej2xEe7/7Ennahkbb5qd/HFADiNuLSESz9Q27inmi32zB0lnAsFeLEWcox3Gd1F6YhNd1CP7/9IukJ0Gw=="
},
"angular-animate": {
"version": "1.8.2",
"resolved": "https://registry.npmjs.org/angular-animate/-/angular-animate-1.8.2.tgz",
"integrity": "sha512-Jbr9+grNMs9Kj57xuBU3Ju3NOPAjS1+g2UAwwDv7su1lt0/PLDy+9zEwDiu8C8xJceoTbmBNKiWGPJGBdCQLlA=="
},
"angular-translate": {
"version": "2.18.4",
"resolved": "https://registry.npmjs.org/angular-translate/-/angular-translate-2.18.4.tgz",
"integrity": "sha512-KohNrkH6J9PK+VW0L/nsRTcg5Fw70Ajwwe3Jbfm54Pf9u9Fd+wuingoKv+h45mKf38eT+Ouu51FPua8VmZNoCw==",
"requires": {
"angular": "^1.8.0"
}
},
"angular-translate-loader-partial": {
"version": "2.18.4",
"resolved": "https://registry.npmjs.org/angular-translate-loader-partial/-/angular-translate-loader-partial-2.18.4.tgz",
"integrity": "sha512-bsjR+FbB0sdA2528E/ugwKdlPPQhA1looxLxI3otayBTFXBpED33besfSZhYAISLgNMSL038vSssfRUen9qD8w==",
"requires": {
"angular-translate": "~2.18.4"
}
},
"argparse": {
"version": "1.0.10",
"resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
"integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
"requires": {
"sprintf-js": "~1.0.2"
}
},
"esprima": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
"integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A=="
},
"js-yaml": {
"version": "3.14.1",
"resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz",
"integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==",
"requires": {
"argparse": "^1.0.7",
"esprima": "^4.0.0"
}
},
"mg-crud": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/mg-crud/-/mg-crud-1.1.2.tgz",
"integrity": "sha1-p6AWGzWSPK7/8ZpIBpS2V1vDggw=",
"requires": {
"angular": "^1.6.1"
}
},
"oclazyload": {
"version": "0.6.3",
"resolved": "https://registry.npmjs.org/oclazyload/-/oclazyload-0.6.3.tgz",
"integrity": "sha1-Kjirv/QJDAihEBZxkZRbWfLoJ5w="
},
"require-yaml": {
"version": "0.0.1",
"resolved": "https://registry.npmjs.org/require-yaml/-/require-yaml-0.0.1.tgz",
"integrity": "sha1-LhsY2RPDuqcqWk03O28Tjd0sMr0=",
"requires": {
"js-yaml": "^4.0.0"
},
"dependencies": {
"argparse": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
"integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q=="
},
"js-yaml": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.0.0.tgz",
"integrity": "sha512-pqon0s+4ScYUvX30wxQi3PogGFAlUyH0awepWvwkj4jD4v+ova3RiYw8bmA6x2rDrEaj8i/oWKoRxpVNW+Re8Q==",
"requires": {
"argparse": "^2.0.1"
}
}
}
},
"sprintf-js": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
"integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw="
},
"validator": {
"version": "6.3.0",
"resolved": "https://registry.npmjs.org/validator/-/validator-6.3.0.tgz",
"integrity": "sha1-R84j7Y1Ord+p1LjvAHG2zxB418g="
}
}
}

View File

@ -12,8 +12,10 @@
"@uirouter/angularjs": "^1.0.20", "@uirouter/angularjs": "^1.0.20",
"angular": "^1.7.5", "angular": "^1.7.5",
"angular-animate": "^1.7.8", "angular-animate": "^1.7.8",
"angular-moment": "^1.3.0",
"angular-translate": "^2.18.1", "angular-translate": "^2.18.1",
"angular-translate-loader-partial": "^2.18.1", "angular-translate-loader-partial": "^2.18.1",
"croppie": "^2.6.5",
"js-yaml": "^3.13.1", "js-yaml": "^3.13.1",
"mg-crud": "^1.1.2", "mg-crud": "^1.1.2",
"oclazyload": "^0.6.3", "oclazyload": "^0.6.3",

View File

@ -1,9 +1,7 @@
<vn-dialog class="edit" <tpl-title translate>
vn-id="bankEntityDialog" New bank entity
on-open="$ctrl.resetData()" </tpl-title>
on-accept="$ctrl.onAccept()" <tpl-body>
message="New bank entity">
<tpl-body>
<p translate>Please, ensure you put the correct data!</p> <p translate>Please, ensure you put the correct data!</p>
<vn-horizontal> <vn-horizontal>
<vn-textfield <vn-textfield
@ -14,8 +12,6 @@
ng-model="$ctrl.data.name" ng-model="$ctrl.data.name"
required="true"> required="true">
</vn-textfield> </vn-textfield>
</vn-horizontal>
<vn-horizontal>
<vn-textfield <vn-textfield
vn-one vn-one
vn-focus vn-focus
@ -24,17 +20,27 @@
ng-model="$ctrl.data.bic" ng-model="$ctrl.data.bic"
required="true"> required="true">
</vn-textfield> </vn-textfield>
<vn-autocomplete vn-one </vn-horizontal>
<vn-horizontal>
<vn-autocomplete
vn-one
vn-id="country"
ng-model="$ctrl.data.countryFk" ng-model="$ctrl.data.countryFk"
url="Countries" url="Countries"
fields="['id', 'country', 'code']"
show-field="country" show-field="country"
value-field="id" value-field="id"
label="Country"> label="Country">
</vn-autocomplete> </vn-autocomplete>
<vn-textfield
vn-one
ng-show="country.selection.code === 'ES'"
label="Entity code"
ng-model="$ctrl.data.id">
</vn-textfield>
</vn-horizontal> </vn-horizontal>
</tpl-body> </tpl-body>
<tpl-buttons> <tpl-buttons>
<input type="button" response="cancel" translate-attr="{value: 'Cancel'}"/> <input type="button" response="cancel" translate-attr="{value: 'Cancel'}"/>
<button id= "saveBankEntity" response="accept" translate>Save</button> <button response="accept" translate>Accept</button>
</tpl-buttons> </tpl-buttons>
</vn-dialog>

View File

@ -1,35 +1,24 @@
import ngModule from '../../module'; import ngModule from '../../module';
import Component from 'core/lib/component'; import Dialog from 'core/components/dialog';
import './style.scss'; import './style.scss';
class Controller extends Component { class Controller extends Dialog {
open() { responseHandler(response) {
this.$.bankEntityDialog.show(); if (response !== 'accept')
} return super.responseHandler(response);
resetData() {
this.data = {};
}
onAccept() {
try {
if (!this.data.countryFk) if (!this.data.countryFk)
throw new Error(`The country can't be empty`); throw new Error(`The country can't be empty`);
this.$http.post(`bankEntities`, this.data).then(res => { return this.$http.post(`bankEntities`, this.data)
this.vnApp.showMessage(this.$t('The bank entity has been created. You can save the data now')); .then(res => this.data.id = res.data.id)
this.emit('response', {$response: res.data}); .then(() => super.responseHandler(response))
}); .then(() => this.vnApp.showSuccess(this.$t('Data saved!')));
} catch (e) {
this.vnApp.showError(this.$t(e.message));
return false;
}
return true;
} }
} }
ngModule.vnComponent('vnNewBankEntity', { ngModule.vnComponent('vnNewBankEntity', {
template: require('./index.html'), slotTemplate: require('./index.html'),
controller: Controller, controller: Controller,
bindings: { bindings: {
data: '<', data: '<',

View File

@ -5,49 +5,35 @@ describe('Salix Component vnNewBankEntity', () => {
let $httpBackend; let $httpBackend;
let $scope; let $scope;
let $element; let $element;
let vnApp;
beforeEach(ngModule('salix')); beforeEach(ngModule('salix'));
beforeEach(inject(($componentController, $rootScope, _$httpBackend_, _vnApp_) => { beforeEach(inject(($componentController, $rootScope, _$httpBackend_) => {
$httpBackend = _$httpBackend_; $httpBackend = _$httpBackend_;
vnApp = _vnApp_;
jest.spyOn(vnApp, 'showError');
$scope = $rootScope.$new(); $scope = $rootScope.$new();
$element = angular.element('<vn-dialog></dialog>'); $element = angular.element('<vn-dialog></vn-dialog>');
controller = $componentController('vnNewBankEntity', {$element, $scope}); const $transclude = {
$$boundTransclude: {
$$slots: []
}
};
controller = $componentController('vnNewBankEntity', {$element, $scope, $transclude});
controller.vnApp = {showSuccess: jest.fn()};
})); }));
describe('resetData()', () => { describe('responseHandler()', () => {
it('should reset the location in the controller', () => { it('should show a success message after the query to bankEntities', () => {
expect(controller.data).toBeUndefined();
controller.resetData();
expect(controller.data).toEqual({});
});
});
describe('onAccept()', () => {
it('should throw an error if there is no country id in the location', () => {
jest.spyOn(controller.vnApp, 'showMessage');
controller.data = {};
controller.onAccept();
expect(controller.vnApp.showError).toHaveBeenCalledWith(`The country can't be empty`);
});
it('should do add the new bank entity', () => {
controller.data = { controller.data = {
countryFk: 1 countryFk: 1
}; };
$httpBackend.expectPOST('bankEntities', controller.data).respond(200, controller.data); $httpBackend.expectPOST('bankEntities', controller.data).respond({id: 1});
controller.onAccept(); controller.responseHandler('accept');
$httpBackend.flush(); $httpBackend.flush();
expect(controller.vnApp.showSuccess).toHaveBeenCalledWith('Data saved!');
expect(controller.data.id).toEqual(1);
}); });
}); });
}); });

View File

@ -10,3 +10,4 @@ The postcode has been created. You can save the data now: Se ha creado el códig
The city has been created: Se ha creado la ciudad The city has been created: Se ha creado la ciudad
The province has been created: Se ha creado la provincia The province has been created: Se ha creado la provincia
The bank entity has been created. You can save the data now: Se ha creado la entidad bancaria. Puedes guardar los datos ahora The bank entity has been created. You can save the data now: Se ha creado la entidad bancaria. Puedes guardar los datos ahora
Entity code: Código de la entidad

Some files were not shown because too many files have changed in this diff Show More