preparado para PR
gitea/salix/pipeline/head This commit looks good
Details
gitea/salix/pipeline/head This commit looks good
Details
This commit is contained in:
parent
a30a4bf961
commit
d53cedd5d4
|
@ -5,7 +5,6 @@ DELIMITER $$
|
|||
USE `vn`$$
|
||||
CREATE DEFINER=`root`@`%` PROCEDURE `zone_getEvents`(
|
||||
vGeoFk INT,
|
||||
vDeliveryMethodFk VARCHAR(255),
|
||||
vAgencyModeFk INT)
|
||||
BEGIN
|
||||
/**
|
||||
|
@ -14,14 +13,20 @@ BEGIN
|
|||
* @param vGeoFk The geo id
|
||||
* @param vAgencyModeFk The agency mode id
|
||||
*/
|
||||
DROP TEMPORARY TABLE IF EXISTS tmp.auxZone;
|
||||
|
||||
CREATE TEMPORARY TABLE tmp.auxZone
|
||||
(id INT(11) PRIMARY KEY)
|
||||
DECLARE vDeliveryMethodFk VARCHAR(255);
|
||||
|
||||
DROP TEMPORARY TABLE IF EXISTS tZone;
|
||||
CREATE TEMPORARY TABLE tZone
|
||||
(id INT PRIMARY KEY)
|
||||
ENGINE = MEMORY;
|
||||
|
||||
IF vDeliveryMethodFk = 'pickUp' THEN
|
||||
INSERT INTO tmp.auxZone
|
||||
SELECT dm.`code` INTO vDeliveryMethodFk
|
||||
FROM agencyMode am
|
||||
JOIN deliveryMethod dm ON dm.id = am.deliveryMethodFk
|
||||
WHERE am.id = vAgencyModeFk;
|
||||
|
||||
IF vDeliveryMethodFk = 'PICKUP' THEN
|
||||
INSERT INTO tZone
|
||||
SELECT id
|
||||
FROM zone
|
||||
WHERE agencyModeFk = vAgencyModeFk;
|
||||
|
@ -29,13 +34,13 @@ BEGIN
|
|||
CALL zone_getFromGeo(vGeoFk);
|
||||
|
||||
IF vAgencyModeFk IS NOT NULL THEN
|
||||
INSERT INTO tmp.auxZone
|
||||
INSERT INTO tZone
|
||||
SELECT t.id
|
||||
FROM tmp.zone t
|
||||
JOIN zone z ON z.id = t.id
|
||||
WHERE z.agencyModeFk = vAgencyModeFk;
|
||||
ELSE
|
||||
INSERT INTO tmp.auxZone
|
||||
INSERT INTO tZone
|
||||
SELECT t.id
|
||||
FROM tmp.zone t
|
||||
JOIN zone z ON z.id = t.id
|
||||
|
@ -47,15 +52,14 @@ BEGIN
|
|||
END IF;
|
||||
|
||||
SELECT e.zoneFk, e.`type`, e.dated, e.`started`, e.`ended`, e.weekDays
|
||||
FROM tmp.auxZone t
|
||||
FROM tZone t
|
||||
JOIN zoneEvent e ON e.zoneFk = t.id;
|
||||
|
||||
SELECT e.zoneFk, e.dated
|
||||
FROM tmp.auxZone t
|
||||
FROM tZone t
|
||||
JOIN zoneExclusion e ON e.zoneFk = t.id;
|
||||
|
||||
DROP TEMPORARY TABLE IF EXISTS tmp.auxZone;
|
||||
|
||||
DROP TEMPORARY TABLE tZone;
|
||||
END$$
|
||||
|
||||
DELIMITER ;
|
||||
|
|
|
@ -156,7 +156,7 @@ UPDATE `vn`.`agencyMode` SET `id` = 8 WHERE `name` = 'Silla247Expensive';
|
|||
UPDATE `vn`.`agencyMode` SET `id` = 23 WHERE `name` = 'Refund';
|
||||
UPDATE `vn`.`agencyMode` SET `id` = 10 WHERE `name` = 'Other agency';
|
||||
|
||||
UPDATE `vn`.`agencyMode` SET `deliveryMethodFk` = 1 WHERE `id` = 1;
|
||||
UPDATE `vn`.`agencyMode` SET `deliveryMethodFk` = 3 WHERE `id` = 1;
|
||||
UPDATE `vn`.`agencyMode` SET `deliveryMethodFk` = 1 WHERE `id` = 2;
|
||||
UPDATE `vn`.`agencyMode` SET `deliveryMethodFk` = 2 WHERE `id` = 3;
|
||||
UPDATE `vn`.`agencyMode` SET `deliveryMethodFk` = 1 WHERE `id` = 4;
|
||||
|
|
|
@ -27,7 +27,6 @@ describe('Directive focus', () => {
|
|||
expect($element[0].firstChild.focus).toHaveBeenCalledWith();
|
||||
});
|
||||
|
||||
|
||||
it('should call focus function on the element', () => {
|
||||
let html = `<input vn-focus></input>`;
|
||||
compile(html);
|
||||
|
|
|
@ -7,11 +7,6 @@ module.exports = Self => {
|
|||
arg: 'geoFk',
|
||||
type: 'Number',
|
||||
description: 'The geo id'
|
||||
}, {
|
||||
arg: 'deliveryMethodFk',
|
||||
type: 'String',
|
||||
description: 'The delivery Method code',
|
||||
required: true
|
||||
}, {
|
||||
arg: 'agencyModeFk',
|
||||
type: 'Number',
|
||||
|
@ -29,10 +24,10 @@ module.exports = Self => {
|
|||
}
|
||||
});
|
||||
|
||||
Self.getEvents = async(geoFk, deliveryMethodFk, agencyModeFk) => {
|
||||
Self.getEvents = async(geoFk, agencyModeFk) => {
|
||||
let [events, exclusions] = await Self.rawSql(
|
||||
`CALL zone_getEvents(?, ?, ?)`,
|
||||
[geoFk, deliveryMethodFk, agencyModeFk]
|
||||
`CALL zone_getEvents(?, ?)`,
|
||||
[geoFk, agencyModeFk]
|
||||
);
|
||||
return {events, exclusions};
|
||||
};
|
||||
|
|
|
@ -9,22 +9,26 @@
|
|||
<vn-radio
|
||||
label="Pick up"
|
||||
val="pickUp"
|
||||
ng-model="params.deliveryMethodFk">
|
||||
ng-model="$ctrl.deliveryMethodFk">
|
||||
</vn-radio>
|
||||
<vn-radio
|
||||
label="Delivery"
|
||||
val="delivery"
|
||||
ng-model="params.deliveryMethodFk">
|
||||
label="Delivery"
|
||||
val="delivery"
|
||||
ng-model="$ctrl.deliveryMethodFk"
|
||||
class="vn-mb-sm">
|
||||
</vn-radio>
|
||||
<vn-autocomplete vn-one
|
||||
ng-show="params.deliveryMethodFk === 'delivery'"
|
||||
<vn-autocomplete
|
||||
vn-one
|
||||
ng-if="$ctrl.deliveryMethodFk === 'delivery'"
|
||||
vn-focus
|
||||
label="Postcode"
|
||||
ng-model="params.geoFk"
|
||||
url="Postcodes/location"
|
||||
fields="['code','townFk']"
|
||||
order="code, townFk"
|
||||
value-field="geoFk"
|
||||
show-field="code">
|
||||
show-field="code"
|
||||
>
|
||||
<tpl-item>
|
||||
{{code}} - {{town.name}} ({{town.province.name}},
|
||||
{{town.province.country.country}})
|
||||
|
@ -34,7 +38,8 @@
|
|||
label="Agency"
|
||||
ng-model="params.agencyModeFk"
|
||||
url="AgencyModes/isActive"
|
||||
where="$ctrl.agencyFilter">
|
||||
where="$ctrl.agencyFilter"
|
||||
vn-id="agencymode">
|
||||
</vn-autocomplete>
|
||||
<vn-submit label="Query" class="vn-mt-sm"></vn-submit>
|
||||
</form>
|
||||
|
|
|
@ -5,9 +5,11 @@ import './style.scss';
|
|||
class Controller extends Section {
|
||||
$onInit() {
|
||||
this.$.params = {};
|
||||
this.$.params.deliveryMethodFk = 'delivery';
|
||||
}
|
||||
|
||||
$postLink() {
|
||||
this.deliveryMethodFk = 'delivery';
|
||||
}
|
||||
onSubmit() {
|
||||
this.$.data = null;
|
||||
this.$http.get(`Zones/getEvents`, {params: this.$.params})
|
||||
|
@ -20,19 +22,21 @@ class Controller extends Section {
|
|||
}
|
||||
|
||||
get deliveryMethodFk() {
|
||||
return this._deliveryMethod;
|
||||
return this._deliveryMethodFk;
|
||||
}
|
||||
|
||||
set deliveryMethodFk(value) {
|
||||
this._deliveryMethod = value;
|
||||
this._deliveryMethodFk = value;
|
||||
this.$.params.agencyModeFk = null;
|
||||
let filter;
|
||||
if (value === 'pickUp')
|
||||
if (value === 'pickUp') {
|
||||
filter = {where: {code: 'PICKUP'}};
|
||||
else
|
||||
filter = {where: {code: {neq: 'PICKUP'}}};
|
||||
let json = encodeURIComponent(JSON.stringify(filter));
|
||||
this.$http.get(`DeliveryMethods?filter=${json}`).then(json => {
|
||||
let deliveryMethods = json.data.map(deliveryMethod => deliveryMethod.id);
|
||||
this.$.agencymode.focus();
|
||||
} else
|
||||
filter = {where: {code: {inq: ['DELIVERY', 'AGENCY']}}};
|
||||
|
||||
this.$http.get(`DeliveryMethods`, {filter}).then(res => {
|
||||
let deliveryMethods = res.data.map(deliveryMethod => deliveryMethod.id);
|
||||
this.agencyFilter = {deliveryMethodFk: {inq: deliveryMethods}};
|
||||
});
|
||||
}
|
||||
|
|
|
@ -21,8 +21,28 @@ describe('Zone Component vnZoneDeliveryDays', () => {
|
|||
model: crudModel
|
||||
}
|
||||
};
|
||||
controller.$.params = {};
|
||||
}));
|
||||
|
||||
describe('deliveryMethodFk() setter', () => {
|
||||
it(`should set the deliveryMethodFk property and check just agencymode focus`, () => {
|
||||
controller.$.agencymode = {focus: jasmine.createSpy('focus')};
|
||||
|
||||
controller.deliveryMethodFk = 'pickUp';
|
||||
|
||||
expect(controller.$.agencymode.focus).toHaveBeenCalledWith();
|
||||
});
|
||||
|
||||
it(`should set the deliveryMethodFk property, call method http and sets the agencyfilter`, () => {
|
||||
$httpBackend.when('GET', 'DeliveryMethods').respond([{id: 'id'}]);
|
||||
|
||||
controller.deliveryMethodFk = 'no pickUp';
|
||||
$httpBackend.flush();
|
||||
|
||||
expect(controller.agencyFilter).toEqual({deliveryMethodFk: {inq: ['id']}});
|
||||
});
|
||||
});
|
||||
|
||||
describe('onSubmit()', () => {
|
||||
it('should make an HTTP GET query and then call the showMessage() method', () => {
|
||||
jest.spyOn(controller.vnApp, 'showMessage');
|
||||
|
@ -48,7 +68,7 @@ describe('Zone Component vnZoneDeliveryDays', () => {
|
|||
});
|
||||
});
|
||||
|
||||
describe('onSelection()', () => {
|
||||
xdescribe('onSelection()', () => {
|
||||
it('should not call the show popover method if events array is empty', () => {
|
||||
jest.spyOn(controller.$.zoneEvents, 'show');
|
||||
|
||||
|
|
Loading…
Reference in New Issue