qrcode-framework
Version:
163 lines • 10.1 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const sequelize_1 = require("sequelize");
const BaseService_1 = require("../core/BaseService");
const model_1 = require("../model");
class MaterialService extends BaseService_1.default {
async listMaterialGroups(platform, version, type) {
const typeWhere = type ? { groupType: type } : {};
const groups = await model_1.MaterialGroup.findAll({
include: [
{
model: model_1.MaterialGroupVersion,
attributes: [],
as: 'groupVersions',
required: true,
where: {
platform,
platformVersion: {
[sequelize_1.Op.lte]: version,
},
deleted: false,
},
},
{
model: model_1.MaterialGroupType,
attributes: ['groupType'],
as: 'types',
required: true,
where: typeWhere,
},
{
model: model_1.Material,
as: 'materials',
required: false,
include: [
{
model: model_1.MaterialPayment,
attributes: ['payType', 'payment'],
as: 'payments',
required: false,
where: {
deleted: false,
platform: {
[sequelize_1.Op.or]: {
[sequelize_1.Op.is]: null,
[sequelize_1.Op.eq]: platform,
},
},
},
},
],
where: {
status: model_1.MATERIAL_STATUS.VALID,
deleted: false,
},
},
],
where: {
status: model_1.MATERIAL_GROUP_STATUS.VALID,
deleted: false,
},
order: [['id', 'DESC']],
});
return groups;
}
async getMaterialGroup(groupId, platform, version) {
const group = await model_1.MaterialGroup.findOne({
include: [
{
model: model_1.MaterialGroupVersion,
attributes: [],
as: 'groupVersions',
required: true,
where: {
platform,
platformVersion: {
[sequelize_1.Op.lte]: version,
},
deleted: false,
},
},
{
model: model_1.Material,
as: 'materials',
attributes: ['id', 'name', 'description'],
required: false,
where: {
deleted: false,
},
include: [
{
model: model_1.MaterialPayment,
attributes: ['payType', 'payment'],
as: 'payments',
required: false,
where: {
deleted: false,
platform: {
[sequelize_1.Op.or]: {
[sequelize_1.Op.is]: null,
[sequelize_1.Op.eq]: platform,
},
},
},
},
],
},
],
where: {
id: groupId,
deleted: false,
},
});
return group;
}
async getPayments(id, platform) {
const payments = await model_1.MaterialPayment.findAll({
attributes: ['payType', 'payment'],
where: {
mid: id,
deleted: false,
platform: {
[sequelize_1.Op.or]: {
[sequelize_1.Op.is]: null,
[sequelize_1.Op.eq]: platform,
},
},
},
});
return payments;
}
async getInfo(id) {
const info = await model_1.Material.findByPk(id, {
include: [
{
model: model_1.MaterialPayment,
as: 'payments',
required: false,
where: {
deleted: false,
},
},
],
});
return info;
}
async getPrice(id) {
const payments = await model_1.MaterialPayment.findAll({
where: {
mid: id,
},
});
return payments.map((item) => {
return {
payType: item.payType,
price: item.payment,
payment: item,
};
});
}
}
exports.default = MaterialService;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWF0ZXJpYWxTZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiTWF0ZXJpYWxTZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEseUNBQTZCO0FBQzdCLHFEQUE4QztBQUM5QyxvQ0FRa0I7QUFHbEIsTUFBcUIsZUFBZ0IsU0FBUSxxQkFBVztJQUM3QyxLQUFLLENBQUMsa0JBQWtCLENBQUMsUUFBZ0IsRUFBRSxPQUFlLEVBQUUsSUFBWTtRQUMzRSxNQUFNLFNBQVMsR0FBUSxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDdkQsTUFBTSxNQUFNLEdBQUcsTUFBTSxxQkFBYSxDQUFDLE9BQU8sQ0FBQztZQUN2QyxPQUFPLEVBQUU7Z0JBQ0w7b0JBQ0ksS0FBSyxFQUFFLDRCQUFvQjtvQkFDM0IsVUFBVSxFQUFFLEVBQUU7b0JBQ2QsRUFBRSxFQUFFLGVBQWU7b0JBQ25CLFFBQVEsRUFBRSxJQUFJO29CQUNkLEtBQUssRUFBRTt3QkFDSCxRQUFRO3dCQUNSLGVBQWUsRUFBRTs0QkFDYixDQUFDLGNBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxPQUFPO3lCQUNwQjt3QkFDRCxPQUFPLEVBQUUsS0FBSztxQkFDakI7aUJBQ0o7Z0JBQ0Q7b0JBQ0ksS0FBSyxFQUFFLHlCQUFpQjtvQkFDeEIsVUFBVSxFQUFFLENBQUMsV0FBVyxDQUFDO29CQUN6QixFQUFFLEVBQUUsT0FBTztvQkFDWCxRQUFRLEVBQUUsSUFBSTtvQkFDZCxLQUFLLEVBQUUsU0FBUztpQkFDbkI7Z0JBQ0Q7b0JBQ0ksS0FBSyxFQUFFLGdCQUFRO29CQUNmLEVBQUUsRUFBRSxXQUFXO29CQUNmLFFBQVEsRUFBRSxLQUFLO29CQUNmLE9BQU8sRUFBRTt3QkFDTDs0QkFDSSxLQUFLLEVBQUUsdUJBQWU7NEJBQ3RCLFVBQVUsRUFBRSxDQUFDLFNBQVMsRUFBRSxTQUFTLENBQUM7NEJB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