group status
This commit is contained in:
1 parent
f0e366a73d
commit
b199ce94c1
6 files changed
+25
-13
No files matched your search
+3
-3
@@ -65,13 +65,13 @@ export default function createEvents(log: Log, pg: Pg, discogs, offers) {
|
|||||||
log.info({ event: Events.ListingsUpdated, bundles: bundles.length });
|
log.info({ event: Events.ListingsUpdated, bundles: bundles.length });
|
||||||
|
|
||||||
for (const bundle of bundles) {
|
for (const bundle of bundles) {
|
||||||
log.info({ seller: bundle.seller, items: bundle.items.length }, 'generating offers...');
|
log.debug({ seller: bundle.seller, items: bundle.items.length }, 'generating offers...');
|
||||||
const listingIds = bundle.items.map(i => i.id);
|
const listingIds = bundle.items.map(i => i.id);
|
||||||
const updatedOffers = await offers.generate(listingIds, 100, 30)
|
const updatedOffers = await offers.generate(listingIds, 100, 30)
|
||||||
log.info({ offers: updatedOffers.length }, 'offers set');
|
log.debug({ offers: updatedOffers.length }, 'offers set');
|
||||||
}
|
}
|
||||||
|
|
||||||
log.info('offers up to date');
|
log.trace('offers up to date');
|
||||||
});
|
});
|
||||||
|
|
||||||
events.on(Events.Connection, async function onConnection({ ws, id }) {
|
events.on(Events.Connection, async function onConnection({ ws, id }) {
|
||||||
|
|||||||
+1
-1
@@ -22,7 +22,7 @@ function sortOffers(o) {
|
|||||||
|
|
||||||
export default function createOffers(log: Log, pg: Pg) {
|
export default function createOffers(log: Log, pg: Pg) {
|
||||||
async function generate(listingIds: DiscogsListing[], bulkShipping: number, baseShipping: number) {
|
async function generate(listingIds: DiscogsListing[], bulkShipping: number, baseShipping: number) {
|
||||||
log.info('generateOffers', { listingIds, bulkShipping, baseShipping });
|
log.debug('generateOffers', { listingIds, bulkShipping, baseShipping });
|
||||||
const listings = await pg.listingByIds(listingIds);
|
const listings = await pg.listingByIds(listingIds);
|
||||||
|
|
||||||
// log.info({ listings }, 'creating offers for listings')
|
// log.info({ listings }, 'creating offers for listings')
|
||||||
|
|||||||
+4
-3
@@ -59,9 +59,10 @@ export default function createPg(log: Log, prisma: PrismaClient): Pg {
|
|||||||
include: {
|
include: {
|
||||||
want: true,
|
want: true,
|
||||||
},
|
},
|
||||||
orderBy: {
|
orderBy: [
|
||||||
total: 'asc',
|
{ total: 'asc' },
|
||||||
},
|
{ listingId: 'asc' },
|
||||||
|
],
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -26,7 +26,8 @@ function OfferLine(offer) {
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<div class="line">
|
<div class="line">
|
||||||
<span class='number'>${offer.total}</span>
|
<div class='number'>${offer.total}</div>
|
||||||
|
<div class='number'>{offer.condition}</div>
|
||||||
<button onClick={() => setStatus('Accepted')} disabled={accepted} class={classes} >{btnText}</button>
|
<button onClick={() => setStatus('Accepted')} disabled={accepted} class={classes} >{btnText}</button>
|
||||||
{negBtn}
|
{negBtn}
|
||||||
</div>
|
</div>
|
||||||
@@ -54,17 +55,19 @@ function OfferPriceBtn(offer) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
export default function WantOffers(wantOffers) {
|
export default function WantOffers(wantOffers, i) {
|
||||||
const ws = useSelector((state: State) => state.ws);
|
const ws = useSelector((state: State) => state.ws);
|
||||||
|
|
||||||
const details = wantOffers[0].want.data;
|
const details = wantOffers[0].want.data;
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div class="offer">
|
<div class="offer" key={i}>
|
||||||
<section>
|
<section>
|
||||||
<h3>{details.artists_sort} - {details.title} <a href={details.uri} target="_blank"><ExternalLink /></a></h3>
|
<h3>{details.artists_sort} - {details.title} <a href={details.uri} target="_blank"><ExternalLink /></a></h3>
|
||||||
<div class='alt-text' >{details.year}</div>
|
<div class='alt-text details'>
|
||||||
<div class='alt-text'>{details.formats.map(f => f.descriptions.join(' ')).join(' ')}</div>
|
{details.year} - {details.formats.map(f => f.descriptions.join(' ')).join(' ')}
|
||||||
|
</div>
|
||||||
|
<div class='alt-text details'>Status: {wantOffers[0].status}</div>
|
||||||
</section>
|
</section>
|
||||||
<img src={details.thumb} />
|
<img src={details.thumb} />
|
||||||
<div class="lines">
|
<div class="lines">
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ function Home() {
|
|||||||
|
|
||||||
const groups = Object.values(offers);
|
const groups = Object.values(offers);
|
||||||
|
|
||||||
if (!groups.length) {
|
if (offers && !groups.length) {
|
||||||
route('/search');
|
route('/search');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -403,6 +403,14 @@ header {
|
|||||||
margin: var(--spacing-half);
|
margin: var(--spacing-half);
|
||||||
background: var(--background-1);
|
background: var(--background-1);
|
||||||
|
|
||||||
|
.details {
|
||||||
|
font-size: var(--small-font-size);
|
||||||
|
}
|
||||||
|
|
||||||
|
.status {
|
||||||
|
margin-top: var(--spacing-half);
|
||||||
|
}
|
||||||
|
|
||||||
section {
|
section {
|
||||||
grid-area: details;
|
grid-area: details;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in new issue
Block a user