diff --git a/db/changes/10420-valentines/00-defaultViewConfig.sql b/db/changes/10420-valentines/00-defaultViewConfig.sql
new file mode 100644
index 000000000..c65c1f403
--- /dev/null
+++ b/db/changes/10420-valentines/00-defaultViewConfig.sql
@@ -0,0 +1,3 @@
+UPDATE salix.defaultViewConfig
+ SET `columns`='{"intrastat":false,"stemMultiplier":false,"landed":false,"producer":false}'
+ WHERE tableCode ='itemsIndex';
diff --git a/e2e/paths/05-ticket/06_basic_data_steps.spec.js b/e2e/paths/05-ticket/06_basic_data_steps.spec.js
index 7a09edf06..fa118c25d 100644
--- a/e2e/paths/05-ticket/06_basic_data_steps.spec.js
+++ b/e2e/paths/05-ticket/06_basic_data_steps.spec.js
@@ -94,7 +94,7 @@ describe('Ticket Edit basic data path', () => {
it(`should split ticket without negatives`, async() => {
const newAgency = 'Silla247';
const newDate = new Date();
- newDate.setDate(newDate.getDate() + 1);
+ newDate.setDate(newDate.getDate() - 1);
await page.accessToSearchResult('14');
await page.accessToSection('ticket.card.basicData.stepOne');
diff --git a/modules/claim/back/methods/claim/filter.js b/modules/claim/back/methods/claim/filter.js
index 16f23433b..f4b0c26a2 100644
--- a/modules/claim/back/methods/claim/filter.js
+++ b/modules/claim/back/methods/claim/filter.js
@@ -82,6 +82,7 @@ module.exports = Self => {
Self.filter = async(ctx, filter, options) => {
const conn = Self.dataSource.connector;
const myOptions = {};
+ let to;
if (typeof options == 'object')
Object.assign(myOptions, options);
@@ -109,7 +110,11 @@ module.exports = Self => {
case 'attenderFk':
return {'cl.workerFk': value};
case 'created':
- return {'cl.created': value};
+ value.setHours(0, 0, 0, 0);
+ to = new Date(value);
+ to.setHours(23, 59, 59, 999);
+
+ return {'cl.created': {between: [value, to]}};
}
});
diff --git a/modules/item/back/methods/item/filter.js b/modules/item/back/methods/item/filter.js
index 98e78c7aa..5755de69b 100644
--- a/modules/item/back/methods/item/filter.js
+++ b/modules/item/back/methods/item/filter.js
@@ -161,6 +161,7 @@ module.exports = Self => {
i.stemMultiplier,
i.typeFk,
i.isFloramondo,
+ pr.name AS producer,
it.name AS typeName,
it.workerFk AS buyerFk,
u.name AS userName,
diff --git a/modules/item/front/index/index.html b/modules/item/front/index/index.html
index 816777a74..750dbfc4d 100644
--- a/modules/item/front/index/index.html
+++ b/modules/item/front/index/index.html
@@ -54,6 +54,9 @@
Active
|
+
+ Producer
+ |
Landed
|
@@ -122,6 +125,7 @@
ng-model="::item.isActive">
+ {{::item.producer | dashIfEmpty}} |
{{::item.landed | date:'dd/MM/yyyy'}} |
diff --git a/modules/item/front/index/index.js b/modules/item/front/index/index.js
index 915027c3c..d9e00305d 100644
--- a/modules/item/front/index/index.js
+++ b/modules/item/front/index/index.js
@@ -81,6 +81,8 @@ class Controller extends Section {
return {'intr.description': value};
case 'name':
return {'i.name': {like: `%${value}%`}};
+ case 'producer':
+ return {'pr.name': {like: `%${value}%`}};
case 'id':
case 'size':
case 'subname':
diff --git a/modules/monitor/back/methods/sales-monitor/salesFilter.js b/modules/monitor/back/methods/sales-monitor/salesFilter.js
index 1fc405bf3..d67c5c3fc 100644
--- a/modules/monitor/back/methods/sales-monitor/salesFilter.js
+++ b/modules/monitor/back/methods/sales-monitor/salesFilter.js
@@ -133,6 +133,10 @@ module.exports = Self => {
const where = buildFilter(ctx.args, (param, value) => {
switch (param) {
+ case 'search':
+ return /^\d+$/.test(value)
+ ? {'t.id': {inq: value}}
+ : {'t.nickname': {like: `%${value}%`}};
case 'from':
return {'t.shipped': {gte: value}};
case 'to':
diff --git a/modules/ticket/back/methods/ticket/componentUpdate.js b/modules/ticket/back/methods/ticket/componentUpdate.js
index de06212c7..2294e6d25 100644
--- a/modules/ticket/back/methods/ticket/componentUpdate.js
+++ b/modules/ticket/back/methods/ticket/componentUpdate.js
@@ -138,7 +138,8 @@ module.exports = Self => {
const params = [args.id, args.shipped, args.warehouseFk];
const [salesMovable] = await Self.rawSql(query, params, myOptions);
- const salesNewTicket = salesMovable.filter(sale => (sale.movable ?? 0) >= sale.quantity);
+ const salesNewTicket = salesMovable.filter(sale => (sale.movable ? sale.movable : 0) >= sale.quantity);
+
if (salesNewTicket.length) {
const newTicket = await models.Ticket.transferSales(ctx, args.id, null, salesNewTicket, myOptions);
args.id = newTicket.id;
@@ -250,7 +251,7 @@ module.exports = Self => {
res.id = args.id;
if (tx) await tx.commit();
-
+
return res;
} catch (e) {
if (tx) await tx.rollback();
diff --git a/modules/ticket/back/methods/ticket/priceDifference.js b/modules/ticket/back/methods/ticket/priceDifference.js
index c91956ece..e0ffac55a 100644
--- a/modules/ticket/back/methods/ticket/priceDifference.js
+++ b/modules/ticket/back/methods/ticket/priceDifference.js
@@ -112,9 +112,9 @@ module.exports = Self => {
// Get items movable
const ticketOrigin = await models.Ticket.findById(args.id, null, myOptions);
- const differenceShipped = ticketOrigin.shipped.getTime() != args.shipped.getTime();
+ const differenceShipped = ticketOrigin.shipped.getTime() > args.shipped.getTime();
const differenceWarehouse = ticketOrigin.warehouseFk != args.warehouseId;
-
+
salesObj.haveDifferences = differenceShipped || differenceWarehouse;
let query = `CALL ticket_getMovable(?,?,?)`;
@@ -122,8 +122,10 @@ module.exports = Self => {
const [salesMovable] = await Self.rawSql(query, params, myOptions);
const itemMovable = new Map();
- for (sale of salesMovable)
- itemMovable.set(sale.id, sale.movable ?? 0);
+ for (sale of salesMovable) {
+ const saleMovable = sale.movable ? sale.movable : 0;
+ itemMovable.set(sale.id, saleMovable);
+ }
// Sale price component, one per sale
query = `CALL vn.ticket_priceDifference(?, ?, ?, ?, ?)`;
@@ -152,7 +154,7 @@ module.exports = Self => {
}
if (tx) await tx.commit();
-
+
return salesObj;
} catch (e) {
if (tx) await tx.rollback();
|