@chevre/domain 22.11.0-alpha.0 → 22.11.0-alpha.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/example/src/chevre/assetTransaction/processReserve.ts +0 -1
- package/example/src/chevre/checkProjectMembers.ts +55 -0
- package/example/src/chevre/orders/searchWithUnwoundAcceptedOffers.ts +73 -0
- package/example/src/chevre/reIndex.ts +1 -1
- package/example/src/chevre/roles/addAdminInventoryManagerRole.ts +50 -0
- package/example/src/chevre/roles/addAdminPermissionIfNotExists.ts +132 -0
- package/example/src/chevre/roles/addDefaultPermissionIfNotExists.ts +37 -0
- package/example/src/chevre/roles/addEventOfferPermissionIfNotExists.ts +27 -0
- package/example/src/chevre/roles/addPermissionIfNotExists.ts +39 -6
- package/example/src/chevre/roles/removeConsolePermissionIfExists.ts +38 -0
- package/example/src/chevre/roles/removePermissionFromAPIRoles.ts +46 -0
- package/example/src/chevre/roles/removePermissionIfExists.ts +39 -0
- package/example/src/chevre/settings/addSettings.ts +32 -0
- package/example/src/chevre/stockHolder/checkRedisKeyCount.ts +11 -20
- package/example/src/chevre/unsetUnnecessaryFields.ts +8 -5
- package/lib/chevre/index.d.ts +0 -2
- package/lib/chevre/index.js +0 -10
- package/lib/chevre/repo/acceptedOffer.d.ts +3 -1
- package/lib/chevre/repo/acceptedOffer.js +11 -3
- package/lib/chevre/repo/confirmationNumber.d.ts +0 -11
- package/lib/chevre/repo/confirmationNumber.js +15 -54
- package/lib/chevre/repo/identity.d.ts +11 -33
- package/lib/chevre/repo/identity.js +10 -15
- package/lib/chevre/repo/mongoose/schemas/identity.d.ts +1 -1
- package/lib/chevre/repo/mongoose/schemas/member.d.ts +1 -1
- package/lib/chevre/repo/mongoose/schemas/member.js +26 -10
- package/lib/chevre/repo/orderNumber.d.ts +0 -11
- package/lib/chevre/repo/orderNumber.js +13 -51
- package/lib/chevre/repo/role.d.ts +11 -0
- package/lib/chevre/repo/role.js +36 -0
- package/lib/chevre/repo/serviceOutputIdentifier.d.ts +0 -4
- package/lib/chevre/repo/serviceOutputIdentifier.js +13 -38
- package/lib/chevre/repo/setting.d.ts +14 -1
- package/lib/chevre/repo/setting.js +15 -0
- package/lib/chevre/repo/stockHolder.js +0 -11
- package/lib/chevre/repo/transactionNumber.d.ts +0 -11
- package/lib/chevre/repo/transactionNumber.js +13 -51
- package/lib/chevre/repo/transactionNumberCounter.d.ts +0 -10
- package/lib/chevre/repo/transactionNumberCounter.js +34 -29
- package/lib/chevre/service/code.d.ts +5 -28
- package/lib/chevre/service/code.js +3 -79
- package/lib/chevre/service/order/onOrderStatusChanged/onOrderReturned/factory.js +22 -14
- package/lib/chevre/service/task/acceptCOAOffer.js +6 -5
- package/lib/chevre/service/task/authorizePayment.js +7 -6
- package/lib/chevre/service/task/checkMovieTicket.js +4 -3
- package/lib/chevre/service/task/givePointAward.js +1 -1
- package/lib/chevre/service/task/moneyTransfer.js +1 -1
- package/lib/chevre/service/task/publishPaymentUrl.js +6 -7
- package/lib/chevre/service/task/refund.js +1 -1
- package/lib/chevre/service/task/returnMoneyTransfer.js +1 -1
- package/lib/chevre/service/task/returnPayTransaction.js +1 -1
- package/lib/chevre/service/task/returnPointAward.js +1 -1
- package/lib/chevre/service/task/returnReserveTransaction.js +1 -1
- package/lib/chevre/service/task/voidReserveTransaction.js +4 -3
- package/lib/chevre/service/validation/validateOrder.js +55 -37
- package/lib/chevre/service.d.ts +0 -4
- package/lib/chevre/service.js +10 -14
- package/package.json +3 -3
- package/example/src/chevre/adminAuth/adminIdentity.ts +0 -38
- package/example/src/chevre/checkActions.ts +0 -65
- package/example/src/chevre/roles/addRoleMembers.ts +0 -75
- package/example/src/chevre/transactionNumber/publishConfimationNumber.ts +0 -37
- package/example/src/chevre/transactionNumber/publishOrderNumber.ts +0 -40
- package/example/src/chevre/transactionNumber/setUseMongo4confirmationNumberFrom.ts +0 -45
- package/example/src/chevre/transactionNumber/setUseMongo4orderNumberFrom.ts +0 -41
- package/example/src/chevre/transactionNumber/setUseMongo4transactionNumberFrom.ts +0 -41
- package/lib/chevre/adminAuth.d.ts +0 -2
- package/lib/chevre/adminAuth.js +0 -6
|
@@ -19,7 +19,6 @@ async function main() {
|
|
|
19
19
|
await mongoose.connect(<string>process.env.MONGOLAB_URI, { autoIndex: false });
|
|
20
20
|
|
|
21
21
|
const transactionNumberRepo = await chevre.repository.TransactionNumber.createInstance({
|
|
22
|
-
redisClient,
|
|
23
22
|
connection: mongoose.connection
|
|
24
23
|
});
|
|
25
24
|
const assetTransactionRepo = await chevre.repository.AssetTransaction.createInstance(mongoose.connection);
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
// tslint:disable:no-console
|
|
2
|
+
import * as mongoose from 'mongoose';
|
|
3
|
+
|
|
4
|
+
import { chevre } from '../../../lib/index';
|
|
5
|
+
|
|
6
|
+
// tslint:disable-next-line:max-func-body-length
|
|
7
|
+
async function main() {
|
|
8
|
+
await mongoose.connect(<string>process.env.MONGOLAB_URI, { autoIndex: false });
|
|
9
|
+
|
|
10
|
+
const memberRepo = await chevre.repository.Member.createInstance(mongoose.connection);
|
|
11
|
+
|
|
12
|
+
const cursor = memberRepo.getCursor(
|
|
13
|
+
{
|
|
14
|
+
'member.memberOf.typeOf': { $eq: 'Project' },
|
|
15
|
+
'member.typeOf': { $eq: 'Person' }
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
_id: 1,
|
|
19
|
+
member: 1,
|
|
20
|
+
project: 1
|
|
21
|
+
}
|
|
22
|
+
);
|
|
23
|
+
console.log('docs found');
|
|
24
|
+
|
|
25
|
+
let i = 0;
|
|
26
|
+
let sellerMemberCount = 0;
|
|
27
|
+
await cursor.eachAsync(async (doc) => {
|
|
28
|
+
i += 1;
|
|
29
|
+
const member = <Pick<chevre.factory.iam.IMember, 'member' | 'project'>>doc.toObject();
|
|
30
|
+
|
|
31
|
+
console.log('checking...', member.project.id, member.member?.id, i);
|
|
32
|
+
const sellerMembers = await memberRepo.projectFieldsByProjectId(
|
|
33
|
+
{ id: member.project.id },
|
|
34
|
+
{
|
|
35
|
+
member: {
|
|
36
|
+
id: { $eq: member.member.id },
|
|
37
|
+
typeOf: { $eq: 'Person' },
|
|
38
|
+
memberOf: { typeOf: { $eq: chevre.factory.organizationType.Corporation } }
|
|
39
|
+
}
|
|
40
|
+
},
|
|
41
|
+
['member']
|
|
42
|
+
);
|
|
43
|
+
console.log(sellerMembers.length, 'sellerMember found', member.project.id, member.member?.id, i);
|
|
44
|
+
if (sellerMembers.length > 0) {
|
|
45
|
+
sellerMemberCount += 1;
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
|
|
49
|
+
console.log(i, 'docs checked');
|
|
50
|
+
console.log(sellerMemberCount, 'members sellerMember');
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
main()
|
|
54
|
+
.then()
|
|
55
|
+
.catch(console.error);
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
// tslint:disable:no-console
|
|
2
|
+
import * as mongoose from 'mongoose';
|
|
3
|
+
|
|
4
|
+
import { chevre } from '../../../../lib/index';
|
|
5
|
+
|
|
6
|
+
const formatter = new Intl.NumberFormat('ja-JP');
|
|
7
|
+
|
|
8
|
+
const project = { id: String(process.env.PROJECT_ID) };
|
|
9
|
+
|
|
10
|
+
async function main() {
|
|
11
|
+
let startTime: [number, number] = process.hrtime();
|
|
12
|
+
let diff: [number, number] = process.hrtime(startTime);
|
|
13
|
+
|
|
14
|
+
await mongoose.connect(<string>process.env.MONGOLAB_URI, { autoIndex: false });
|
|
15
|
+
|
|
16
|
+
const acceptedOfferRepo = await chevre.repository.AcceptedOffer.createInstance(mongoose.connection);
|
|
17
|
+
|
|
18
|
+
startTime = process.hrtime();
|
|
19
|
+
const result = await acceptedOfferRepo.searchWithUnwoundAcceptedOffers(
|
|
20
|
+
{
|
|
21
|
+
project: { id: { $eq: project.id } },
|
|
22
|
+
limit: 20,
|
|
23
|
+
page: 12,
|
|
24
|
+
sort: {
|
|
25
|
+
orderDate: chevre.factory.sortType.Descending
|
|
26
|
+
},
|
|
27
|
+
orderStatuses: [chevre.factory.orderStatus.OrderDelivered],
|
|
28
|
+
orderDate: {
|
|
29
|
+
$gte: new Date('2025-06-07T15:00:00.000Z'),
|
|
30
|
+
$lte: new Date('2025-07-08T01:42:34.654Z')
|
|
31
|
+
},
|
|
32
|
+
acceptedOffers: {
|
|
33
|
+
itemOffered: {
|
|
34
|
+
issuedThrough: { typeOf: { $eq: chevre.factory.product.ProductType.EventService } },
|
|
35
|
+
reservationFor: {
|
|
36
|
+
inSessionFrom: new Date('2025-07-07T15:00:00.000Z'),
|
|
37
|
+
inSessionThrough: new Date('2025-07-08T15:00:00.000Z'),
|
|
38
|
+
superEvent: {
|
|
39
|
+
location: { branchCodes: ['p006'] }
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
},
|
|
44
|
+
seller: { ids: ['62568df4138ef5000b18c8c0'] },
|
|
45
|
+
provider: { id: { $eq: '62568df4138ef5000b18c8c0' } }
|
|
46
|
+
// // req.seller.idを考慮(2023-07-19~)
|
|
47
|
+
// ...(typeof req.seller?.id === 'string') ? { provider: { id: { $eq: req.seller.id } } } : undefined
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
confirmationNumber: 1,
|
|
51
|
+
customer: 1,
|
|
52
|
+
dateReturned: 1,
|
|
53
|
+
orderDate: 1,
|
|
54
|
+
orderNumber: 1,
|
|
55
|
+
orderStatus: 1,
|
|
56
|
+
paymentMethods: 1,
|
|
57
|
+
price: 1,
|
|
58
|
+
priceCurrency: 1,
|
|
59
|
+
project: 1,
|
|
60
|
+
seller: 1
|
|
61
|
+
},
|
|
62
|
+
{ useLimitAfterSkip: false }
|
|
63
|
+
// { useLimitAfterSkip: true }
|
|
64
|
+
);
|
|
65
|
+
diff = process.hrtime(startTime);
|
|
66
|
+
console.log(result.map(({ orderNumber, orderDate }) => `${orderDate} ${orderNumber}`));
|
|
67
|
+
console.log(result.length);
|
|
68
|
+
console.log('diff:', [diff[0], formatter.format(diff[1])]);
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
main()
|
|
72
|
+
.then(console.log)
|
|
73
|
+
.catch(console.error);
|
|
@@ -11,7 +11,7 @@ mongoose.Model.on('index', (...args) => {
|
|
|
11
11
|
async function main() {
|
|
12
12
|
await mongoose.connect(<string>process.env.MONGOLAB_URI, { autoIndex: false });
|
|
13
13
|
|
|
14
|
-
await chevre.repository.
|
|
14
|
+
await chevre.repository.Member.createInstance(mongoose.connection);
|
|
15
15
|
console.log('success!');
|
|
16
16
|
}
|
|
17
17
|
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
// tslint:disable:no-console
|
|
2
|
+
import * as mongoose from 'mongoose';
|
|
3
|
+
|
|
4
|
+
import { chevre } from '../../../../lib/index';
|
|
5
|
+
|
|
6
|
+
async function main() {
|
|
7
|
+
await mongoose.connect(<string>process.env.MONGOLAB_URI, { autoIndex: false });
|
|
8
|
+
|
|
9
|
+
const roleRepo = await chevre.repository.Role.createInstance(mongoose.connection);
|
|
10
|
+
|
|
11
|
+
const roleNames = [
|
|
12
|
+
chevre.factory.role.organizationRole.RoleName.AdminInventoryManager
|
|
13
|
+
];
|
|
14
|
+
const permissions = [
|
|
15
|
+
'iam.members.me.read',
|
|
16
|
+
'admin.creativeWorks.*',
|
|
17
|
+
'admin.sellers.eventSeries.*',
|
|
18
|
+
'admin.sellers.read'
|
|
19
|
+
];
|
|
20
|
+
for (const roleName of roleNames) {
|
|
21
|
+
const existingRoles = await roleRepo.projectFields(
|
|
22
|
+
{
|
|
23
|
+
roleName: { $eq: roleName }
|
|
24
|
+
},
|
|
25
|
+
['roleName']
|
|
26
|
+
);
|
|
27
|
+
if (existingRoles.length === 0) {
|
|
28
|
+
const createResult = await roleRepo.create({
|
|
29
|
+
roleName: roleName,
|
|
30
|
+
member: { typeOf: chevre.factory.creativeWorkType.SoftwareApplication },
|
|
31
|
+
memberOf: { typeOf: chevre.factory.organizationType.Project },
|
|
32
|
+
permissions: []
|
|
33
|
+
});
|
|
34
|
+
console.log('role created.', createResult);
|
|
35
|
+
}
|
|
36
|
+
for (const permission of permissions) {
|
|
37
|
+
const result = await roleRepo.addPermissionIfNotExists({
|
|
38
|
+
roleName: { $eq: roleName },
|
|
39
|
+
permission
|
|
40
|
+
});
|
|
41
|
+
console.log('permission added.', result, roleName);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
main()
|
|
47
|
+
.then(() => {
|
|
48
|
+
console.log('success!');
|
|
49
|
+
})
|
|
50
|
+
.catch(console.error);
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
// tslint:disable:no-console
|
|
2
|
+
import * as mongoose from 'mongoose';
|
|
3
|
+
|
|
4
|
+
import { chevre } from '../../../../lib/index';
|
|
5
|
+
|
|
6
|
+
// tslint:disable-next-line:max-func-body-length
|
|
7
|
+
async function main() {
|
|
8
|
+
await mongoose.connect(<string>process.env.MONGOLAB_URI, { autoIndex: false });
|
|
9
|
+
|
|
10
|
+
const roleRepo = await chevre.repository.Role.createInstance(mongoose.connection);
|
|
11
|
+
|
|
12
|
+
let roleNames = [
|
|
13
|
+
chevre.factory.role.organizationRole.RoleName.InventoryManager
|
|
14
|
+
];
|
|
15
|
+
let permissions = [
|
|
16
|
+
'admin.creativeWorks.*',
|
|
17
|
+
'admin.sellers.eventSeries.*',
|
|
18
|
+
'admin.customers.read',
|
|
19
|
+
'admin.offers.read',
|
|
20
|
+
'admin.offers.create',
|
|
21
|
+
'admin.offerCatalogs.create',
|
|
22
|
+
'admin.offerCatalogItems.read',
|
|
23
|
+
'admin.offerCatalogItems.create',
|
|
24
|
+
'admin.products.create',
|
|
25
|
+
'admin.sellers.events.create',
|
|
26
|
+
'admin.sellers.events.update'
|
|
27
|
+
];
|
|
28
|
+
for (const roleName of roleNames) {
|
|
29
|
+
for (const permission of permissions) {
|
|
30
|
+
const result = await roleRepo.addPermissionIfNotExists({
|
|
31
|
+
roleName: { $eq: roleName },
|
|
32
|
+
permission
|
|
33
|
+
});
|
|
34
|
+
console.log('permission added.', result, roleName);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
roleNames = [
|
|
39
|
+
chevre.factory.role.organizationRole.RoleName.SellersOwner
|
|
40
|
+
];
|
|
41
|
+
permissions = [
|
|
42
|
+
'admin.sellers.eventSeries.*',
|
|
43
|
+
'admin.customers.read',
|
|
44
|
+
'admin.offers.read',
|
|
45
|
+
'admin.offerCatalogItems.read',
|
|
46
|
+
'admin.sellers.events.create',
|
|
47
|
+
'admin.sellers.events.update',
|
|
48
|
+
'admin.sellers.orders.read',
|
|
49
|
+
'admin.sellers.reservations.read',
|
|
50
|
+
'admin.sellers.reservations.useActions.read',
|
|
51
|
+
'admin.sellers.assetTransactions.cancelReservation.write'
|
|
52
|
+
];
|
|
53
|
+
for (const roleName of roleNames) {
|
|
54
|
+
for (const permission of permissions) {
|
|
55
|
+
const result = await roleRepo.addPermissionIfNotExists({
|
|
56
|
+
roleName: { $eq: roleName },
|
|
57
|
+
permission
|
|
58
|
+
});
|
|
59
|
+
console.log('permission added.', result, roleName);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
roleNames = [
|
|
64
|
+
chevre.factory.role.organizationRole.RoleName.SellersInventoryManager
|
|
65
|
+
];
|
|
66
|
+
permissions = [
|
|
67
|
+
'admin.sellers.eventSeries.*',
|
|
68
|
+
'admin.customers.read',
|
|
69
|
+
'admin.offers.read',
|
|
70
|
+
'admin.offerCatalogItems.read',
|
|
71
|
+
'admin.sellers.events.create',
|
|
72
|
+
'admin.sellers.events.update'
|
|
73
|
+
];
|
|
74
|
+
for (const roleName of roleNames) {
|
|
75
|
+
for (const permission of permissions) {
|
|
76
|
+
const result = await roleRepo.addPermissionIfNotExists({
|
|
77
|
+
roleName: { $eq: roleName },
|
|
78
|
+
permission
|
|
79
|
+
});
|
|
80
|
+
console.log('permission added.', result, roleName);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
roleNames = [
|
|
85
|
+
chevre.factory.role.organizationRole.RoleName.TicketClerk
|
|
86
|
+
];
|
|
87
|
+
permissions = [
|
|
88
|
+
'admin.customers.read',
|
|
89
|
+
'admin.offers.read',
|
|
90
|
+
'admin.sellers.notes.create',
|
|
91
|
+
'admin.sellers.notes.read',
|
|
92
|
+
'admin.sellers.notes.update',
|
|
93
|
+
'admin.sellers.orders.read',
|
|
94
|
+
'admin.sellers.orders.update',
|
|
95
|
+
'admin.sellers.reservations.read',
|
|
96
|
+
'admin.sellers.reservations.useActions.read',
|
|
97
|
+
'admin.sellers.reservations.useActions.create',
|
|
98
|
+
'admin.sellers.assetTransactions.cancelReservation.write'
|
|
99
|
+
];
|
|
100
|
+
for (const roleName of roleNames) {
|
|
101
|
+
for (const permission of permissions) {
|
|
102
|
+
const result = await roleRepo.addPermissionIfNotExists({
|
|
103
|
+
roleName: { $eq: roleName },
|
|
104
|
+
permission
|
|
105
|
+
});
|
|
106
|
+
console.log('permission added.', result, roleName);
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
roleNames = [
|
|
111
|
+
chevre.factory.role.organizationRole.RoleName.TicketCollector
|
|
112
|
+
];
|
|
113
|
+
permissions = [
|
|
114
|
+
'admin.sellers.reservations.read',
|
|
115
|
+
'admin.sellers.reservations.useActions.read',
|
|
116
|
+
'admin.sellers.reservations.useActions.create'
|
|
117
|
+
];
|
|
118
|
+
for (const roleName of roleNames) {
|
|
119
|
+
for (const permission of permissions) {
|
|
120
|
+
const result = await roleRepo.addPermissionIfNotExists({
|
|
121
|
+
roleName: { $eq: roleName },
|
|
122
|
+
permission
|
|
123
|
+
});
|
|
124
|
+
console.log('permission added.', result, roleName);
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
main()
|
|
131
|
+
.then()
|
|
132
|
+
.catch(console.error);
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
// tslint:disable:no-console
|
|
2
|
+
import * as mongoose from 'mongoose';
|
|
3
|
+
|
|
4
|
+
import { chevre } from '../../../../lib/index';
|
|
5
|
+
|
|
6
|
+
// tslint:disable-next-line:max-func-body-length
|
|
7
|
+
async function main() {
|
|
8
|
+
await mongoose.connect(<string>process.env.MONGOLAB_URI, { autoIndex: false });
|
|
9
|
+
|
|
10
|
+
const roleRepo = await chevre.repository.Role.createInstance(mongoose.connection);
|
|
11
|
+
|
|
12
|
+
const roleNames = [
|
|
13
|
+
chevre.factory.role.organizationRole.RoleName.Customer,
|
|
14
|
+
chevre.factory.role.organizationRole.RoleName.InventoryManager,
|
|
15
|
+
chevre.factory.role.organizationRole.RoleName.POS,
|
|
16
|
+
chevre.factory.role.organizationRole.RoleName.SellersInventoryManager,
|
|
17
|
+
chevre.factory.role.organizationRole.RoleName.SellersOwner,
|
|
18
|
+
chevre.factory.role.organizationRole.RoleName.TicketClerk,
|
|
19
|
+
chevre.factory.role.organizationRole.RoleName.User
|
|
20
|
+
];
|
|
21
|
+
const permissions = [
|
|
22
|
+
'db.primary.read'
|
|
23
|
+
];
|
|
24
|
+
for (const roleName of roleNames) {
|
|
25
|
+
for (const permission of permissions) {
|
|
26
|
+
const result = await roleRepo.addPermissionIfNotExists({
|
|
27
|
+
roleName: { $eq: roleName },
|
|
28
|
+
permission
|
|
29
|
+
});
|
|
30
|
+
console.log('permission added.', result, roleName);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
main()
|
|
36
|
+
.then()
|
|
37
|
+
.catch(console.error);
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
// tslint:disable:no-console
|
|
2
|
+
import * as mongoose from 'mongoose';
|
|
3
|
+
|
|
4
|
+
import { chevre } from '../../../../lib/index';
|
|
5
|
+
|
|
6
|
+
async function main() {
|
|
7
|
+
await mongoose.connect(<string>process.env.MONGOLAB_URI, { autoIndex: false });
|
|
8
|
+
|
|
9
|
+
const roleRepo = await chevre.repository.Role.createInstance(mongoose.connection);
|
|
10
|
+
|
|
11
|
+
const roleNames = [
|
|
12
|
+
chevre.factory.role.organizationRole.RoleName.InventoryManager,
|
|
13
|
+
chevre.factory.role.organizationRole.RoleName.SellersOwner,
|
|
14
|
+
chevre.factory.role.organizationRole.RoleName.SellersInventoryManager
|
|
15
|
+
];
|
|
16
|
+
for (const roleName of roleNames) {
|
|
17
|
+
const result = await roleRepo.addPermissionIfNotExists({
|
|
18
|
+
roleName: { $eq: roleName },
|
|
19
|
+
permission: 'eventOffers.*'
|
|
20
|
+
});
|
|
21
|
+
console.log(result, roleName);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
main()
|
|
26
|
+
.then()
|
|
27
|
+
.catch(console.error);
|
|
@@ -8,17 +8,50 @@ async function main() {
|
|
|
8
8
|
|
|
9
9
|
const roleRepo = await chevre.repository.Role.createInstance(mongoose.connection);
|
|
10
10
|
|
|
11
|
-
const roleNames = [
|
|
11
|
+
// const roleNames = [
|
|
12
|
+
// chevre.factory.role.organizationRole.RoleName.InventoryManager,
|
|
13
|
+
// chevre.factory.role.organizationRole.RoleName.SellersOwner,
|
|
14
|
+
// chevre.factory.role.organizationRole.RoleName.SellersInventoryManager
|
|
15
|
+
// ];
|
|
16
|
+
// for (const roleName of roleNames) {
|
|
17
|
+
// const result = await roleRepo.addPermissionIfNotExists({
|
|
18
|
+
// roleName: { $eq: roleName },
|
|
19
|
+
// permission: 'eventOffers.*'
|
|
20
|
+
// });
|
|
21
|
+
// console.log(result, roleName);
|
|
22
|
+
// }
|
|
23
|
+
let roleNames = [
|
|
24
|
+
chevre.factory.role.organizationRole.RoleName.InventoryManager
|
|
25
|
+
];
|
|
26
|
+
let permissions = [
|
|
27
|
+
'admin.creativeWorks.*'
|
|
28
|
+
];
|
|
29
|
+
for (const roleName of roleNames) {
|
|
30
|
+
for (const permission of permissions) {
|
|
31
|
+
const result = await roleRepo.addPermissionIfNotExists({
|
|
32
|
+
roleName: { $eq: roleName },
|
|
33
|
+
permission
|
|
34
|
+
});
|
|
35
|
+
console.log('permission added.', result, roleName);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
roleNames = [
|
|
12
40
|
chevre.factory.role.organizationRole.RoleName.InventoryManager,
|
|
13
41
|
chevre.factory.role.organizationRole.RoleName.SellersOwner,
|
|
14
42
|
chevre.factory.role.organizationRole.RoleName.SellersInventoryManager
|
|
15
43
|
];
|
|
44
|
+
permissions = [
|
|
45
|
+
'admin.sellers.eventSeries.*'
|
|
46
|
+
];
|
|
16
47
|
for (const roleName of roleNames) {
|
|
17
|
-
const
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
48
|
+
for (const permission of permissions) {
|
|
49
|
+
const result = await roleRepo.addPermissionIfNotExists({
|
|
50
|
+
roleName: { $eq: roleName },
|
|
51
|
+
permission
|
|
52
|
+
});
|
|
53
|
+
console.log('permission added.', result, roleName);
|
|
54
|
+
}
|
|
22
55
|
}
|
|
23
56
|
}
|
|
24
57
|
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
// tslint:disable:no-console
|
|
2
|
+
import * as mongoose from 'mongoose';
|
|
3
|
+
|
|
4
|
+
import { chevre } from '../../../../lib/index';
|
|
5
|
+
|
|
6
|
+
async function main() {
|
|
7
|
+
await mongoose.connect(<string>process.env.MONGOLAB_URI, { autoIndex: false });
|
|
8
|
+
|
|
9
|
+
const roleRepo = await chevre.repository.Role.createInstance(mongoose.connection);
|
|
10
|
+
|
|
11
|
+
const permissions = [
|
|
12
|
+
'assetTransactions.cancelReservation.write',
|
|
13
|
+
'orders.read',
|
|
14
|
+
'orders.update',
|
|
15
|
+
'reservations.attended',
|
|
16
|
+
'reservations.read'
|
|
17
|
+
];
|
|
18
|
+
for (const permission of permissions) {
|
|
19
|
+
const roles = await roleRepo.projectFields(
|
|
20
|
+
{
|
|
21
|
+
permissions: { $eq: permission }
|
|
22
|
+
},
|
|
23
|
+
['roleName']
|
|
24
|
+
);
|
|
25
|
+
console.log(roles, permission);
|
|
26
|
+
for (const { roleName } of roles) {
|
|
27
|
+
const result = await roleRepo.removePermissionIfExists({
|
|
28
|
+
roleName: { $eq: roleName },
|
|
29
|
+
permission
|
|
30
|
+
});
|
|
31
|
+
console.log('permission removed.', permission, result, roleName);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
main()
|
|
37
|
+
.then()
|
|
38
|
+
.catch(console.error);
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
// tslint:disable:no-console
|
|
2
|
+
import * as mongoose from 'mongoose';
|
|
3
|
+
|
|
4
|
+
import { chevre } from '../../../../lib/index';
|
|
5
|
+
|
|
6
|
+
async function main() {
|
|
7
|
+
await mongoose.connect(<string>process.env.MONGOLAB_URI, { autoIndex: false });
|
|
8
|
+
|
|
9
|
+
const roleRepo = await chevre.repository.Role.createInstance(mongoose.connection);
|
|
10
|
+
|
|
11
|
+
const permissions = [
|
|
12
|
+
'categoryCodes.read',
|
|
13
|
+
'creativeWorks.read',
|
|
14
|
+
'events.read',
|
|
15
|
+
'places.read',
|
|
16
|
+
'products.read',
|
|
17
|
+
'sellers.read'
|
|
18
|
+
];
|
|
19
|
+
for (const permission of permissions) {
|
|
20
|
+
const roles = await roleRepo.projectFields(
|
|
21
|
+
{
|
|
22
|
+
permissions: { $eq: permission },
|
|
23
|
+
roleName: {
|
|
24
|
+
$in: [
|
|
25
|
+
chevre.factory.role.organizationRole.RoleName.Customer,
|
|
26
|
+
chevre.factory.role.organizationRole.RoleName.POS,
|
|
27
|
+
chevre.factory.role.organizationRole.RoleName.EventsViewer
|
|
28
|
+
]
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
['roleName']
|
|
32
|
+
);
|
|
33
|
+
console.log('roles found.', roles, permission);
|
|
34
|
+
for (const { roleName } of roles) {
|
|
35
|
+
const result = await roleRepo.removePermissionIfExists({
|
|
36
|
+
roleName: { $eq: roleName },
|
|
37
|
+
permission
|
|
38
|
+
});
|
|
39
|
+
console.log('permission removed.', permission, result, roleName);
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
main()
|
|
45
|
+
.then()
|
|
46
|
+
.catch(console.error);
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
// tslint:disable:no-console
|
|
2
|
+
import * as mongoose from 'mongoose';
|
|
3
|
+
|
|
4
|
+
import { chevre } from '../../../../lib/index';
|
|
5
|
+
|
|
6
|
+
async function main() {
|
|
7
|
+
await mongoose.connect(<string>process.env.MONGOLAB_URI, { autoIndex: false });
|
|
8
|
+
|
|
9
|
+
const roleRepo = await chevre.repository.Role.createInstance(mongoose.connection);
|
|
10
|
+
|
|
11
|
+
const permissions = [
|
|
12
|
+
'tokens',
|
|
13
|
+
'authorizations.create',
|
|
14
|
+
'permits.read',
|
|
15
|
+
'tasks.read',
|
|
16
|
+
'transactionNumbers.write',
|
|
17
|
+
'chevre.admin'
|
|
18
|
+
];
|
|
19
|
+
for (const permission of permissions) {
|
|
20
|
+
const roles = await roleRepo.projectFields(
|
|
21
|
+
{
|
|
22
|
+
permissions: { $eq: permission }
|
|
23
|
+
},
|
|
24
|
+
['roleName']
|
|
25
|
+
);
|
|
26
|
+
console.log(roles, permission);
|
|
27
|
+
for (const { roleName } of roles) {
|
|
28
|
+
const result = await roleRepo.removePermissionIfExists({
|
|
29
|
+
roleName: { $eq: roleName },
|
|
30
|
+
permission
|
|
31
|
+
});
|
|
32
|
+
console.log('permission removed.', permission, result, roleName);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
main()
|
|
38
|
+
.then()
|
|
39
|
+
.catch(console.error);
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
// tslint:disable:no-console
|
|
2
|
+
import * as mongoose from 'mongoose';
|
|
3
|
+
|
|
4
|
+
import { chevre } from '../../../../lib/index';
|
|
5
|
+
|
|
6
|
+
async function main() {
|
|
7
|
+
await mongoose.connect(<string>process.env.MONGOLAB_URI, { autoIndex: false });
|
|
8
|
+
|
|
9
|
+
const settingRepo = await chevre.repository.Setting.createInstance(mongoose.connection);
|
|
10
|
+
|
|
11
|
+
const setting = await settingRepo.findOne({ project: { id: { $eq: '*' } } }, ['onOrderStatusChanged']);
|
|
12
|
+
const useInformReturnAction = (<any>setting)?.onOrderStatusChanged?.useInformReturnAction === true;
|
|
13
|
+
if (useInformReturnAction) {
|
|
14
|
+
console.log('already useInformReturnAction:true');
|
|
15
|
+
} else {
|
|
16
|
+
// update
|
|
17
|
+
await settingRepo.updateByProject4migration(
|
|
18
|
+
{ project: { id: { $eq: '*' } } },
|
|
19
|
+
{
|
|
20
|
+
$set: {
|
|
21
|
+
'onOrderStatusChanged.useInformReturnAction': true
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
);
|
|
25
|
+
console.log('updated.');
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
main()
|
|
31
|
+
.then()
|
|
32
|
+
.catch(console.error);
|
|
@@ -38,7 +38,6 @@ function countRedisKeyByProject(params: {
|
|
|
38
38
|
{
|
|
39
39
|
'project.id': {
|
|
40
40
|
$eq: params.project.id
|
|
41
|
-
// $in: useMongoAsStockHolderProjects
|
|
42
41
|
},
|
|
43
42
|
// startDate: {
|
|
44
43
|
// $gte: params.now
|
|
@@ -93,30 +92,22 @@ function countRedisKeyByProject(params: {
|
|
|
93
92
|
async function main() {
|
|
94
93
|
const eventRepo = await chevre.repository.Event.createInstance(mongoose.connection);
|
|
95
94
|
const projectRepo = await chevre.repository.Project.createInstance(mongoose.connection);
|
|
96
|
-
const settingRepo = await chevre.repository.Setting.createInstance(mongoose.connection);
|
|
95
|
+
// const settingRepo = await chevre.repository.Setting.createInstance(mongoose.connection);
|
|
97
96
|
const stockHolderRepo = await chevre.repository.StockHolder.createInstance(
|
|
98
97
|
client,
|
|
99
98
|
mongoose.connection
|
|
100
99
|
);
|
|
101
100
|
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
// 全プロジェクト
|
|
111
|
-
useMongoAsStockHolderProjects = (await projectRepo.projectFields(
|
|
112
|
-
{
|
|
113
|
-
// id: { $eq: 'xxx' }
|
|
114
|
-
},
|
|
115
|
-
['id']
|
|
116
|
-
)).map(({ id }) => id);
|
|
117
|
-
}
|
|
101
|
+
let checkingProjects: string[] = [];
|
|
102
|
+
// 全プロジェクト
|
|
103
|
+
checkingProjects = (await projectRepo.projectFields(
|
|
104
|
+
{
|
|
105
|
+
// id: { $eq: 'xxx' }
|
|
106
|
+
},
|
|
107
|
+
['id']
|
|
108
|
+
)).map(({ id }) => id);
|
|
118
109
|
|
|
119
|
-
|
|
110
|
+
checkingProjects = checkingProjects.filter((id) => id.slice(0, 6) !== 'sskts-');
|
|
120
111
|
|
|
121
112
|
const results: {
|
|
122
113
|
project: { id: string };
|
|
@@ -127,7 +118,7 @@ async function main() {
|
|
|
127
118
|
const now = moment()
|
|
128
119
|
.add(0, 'days')
|
|
129
120
|
.toDate();
|
|
130
|
-
for (const projectId of
|
|
121
|
+
for (const projectId of checkingProjects) {
|
|
131
122
|
const { checkedCount, redisKeyCount } = await countRedisKeyByProject({
|
|
132
123
|
project: { id: projectId },
|
|
133
124
|
now
|