refactor(service): 统一字典项关联字段命名和使用方式
将字典项关联字段从`dict_id`改为`dict`对象引用,简化关联查询 修复product.service.ts中flavors查询的错误条件
This commit is contained in:
parent
d9800f341f
commit
46bdcf0c69
|
|
@ -132,19 +132,19 @@ export class ProductService {
|
||||||
.leftJoin(
|
.leftJoin(
|
||||||
DictItem,
|
DictItem,
|
||||||
'brand',
|
'brand',
|
||||||
'brand.id = product.brandId AND brand.dict_id = :brandDictId',
|
'brand.id = product.brandId AND brand.dict = :brandDictId',
|
||||||
{ brandDictId: brandDict?.id }
|
{ brandDictId: brandDict?.id }
|
||||||
)
|
)
|
||||||
.leftJoin(
|
.leftJoin(
|
||||||
DictItem,
|
DictItem,
|
||||||
'flavor',
|
'flavor',
|
||||||
'flavor.id = product.flavorsId AND flavor.dict_id = :flavorDictId',
|
'flavor.id = product.flavorsId AND flavor.dict = :flavorDictId',
|
||||||
{ flavorDictId: flavorDict?.id }
|
{ flavorDictId: flavorDict?.id }
|
||||||
)
|
)
|
||||||
.leftJoin(
|
.leftJoin(
|
||||||
DictItem,
|
DictItem,
|
||||||
'strength',
|
'strength',
|
||||||
'strength.id = product.strengthId AND strength.dict_id = :strengthDictId',
|
'strength.id = product.strengthId AND strength.dict = :strengthDictId',
|
||||||
{ strengthDictId: strengthDict?.id }
|
{ strengthDictId: strengthDict?.id }
|
||||||
)
|
)
|
||||||
.select([
|
.select([
|
||||||
|
|
@ -202,7 +202,7 @@ export class ProductService {
|
||||||
|
|
||||||
// 查找字典项
|
// 查找字典项
|
||||||
let item = await this.dictItemModel.findOne({
|
let item = await this.dictItemModel.findOne({
|
||||||
where: { title: itemTitle, dict_id: dict.id },
|
where: { title: itemTitle, dict: { id: dict.id } },
|
||||||
});
|
});
|
||||||
|
|
||||||
// 如果字典项不存在,则创建
|
// 如果字典项不存在,则创建
|
||||||
|
|
@ -210,7 +210,7 @@ export class ProductService {
|
||||||
item = new DictItem();
|
item = new DictItem();
|
||||||
item.title = itemTitle;
|
item.title = itemTitle;
|
||||||
item.name = itemName || itemTitle; // 如果没有提供 name,则使用 title
|
item.name = itemName || itemTitle; // 如果没有提供 name,则使用 title
|
||||||
item.dict_id = dict.id;
|
item.dict = dict;
|
||||||
await this.dictItemModel.save(item);
|
await this.dictItemModel.save(item);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -348,7 +348,7 @@ export class ProductService {
|
||||||
}
|
}
|
||||||
|
|
||||||
// 设置查询条件
|
// 设置查询条件
|
||||||
const where: any = { title, dict_id: brandDict.id };
|
const where: any = { title, dict: { id: brandDict.id } };
|
||||||
if (id) where.id = Not(id);
|
if (id) where.id = Not(id);
|
||||||
|
|
||||||
// 统计数量
|
// 统计数量
|
||||||
|
|
@ -378,7 +378,7 @@ export class ProductService {
|
||||||
}
|
}
|
||||||
|
|
||||||
// 设置查询条件
|
// 设置查询条件
|
||||||
const where: any = { dict_id: brandDict.id };
|
const where: any = { dict: { id: brandDict.id } };
|
||||||
if (title) {
|
if (title) {
|
||||||
where.title = Like(`%${title}%`);
|
where.title = Like(`%${title}%`);
|
||||||
}
|
}
|
||||||
|
|
@ -399,7 +399,7 @@ export class ProductService {
|
||||||
}
|
}
|
||||||
|
|
||||||
// 返回所有品牌
|
// 返回所有品牌
|
||||||
return this.dictItemModel.find({ where: { dict_id: brandDict.id } });
|
return this.dictItemModel.find({ where: { dict: { id: brandDict.id } } });
|
||||||
}
|
}
|
||||||
|
|
||||||
async createBrand(createBrandDTO: CreateBrandDTO): Promise<DictItem> {
|
async createBrand(createBrandDTO: CreateBrandDTO): Promise<DictItem> {
|
||||||
|
|
@ -419,7 +419,7 @@ export class ProductService {
|
||||||
const brand = new DictItem();
|
const brand = new DictItem();
|
||||||
brand.title = title;
|
brand.title = title;
|
||||||
brand.name = name;
|
brand.name = name;
|
||||||
brand.dict_id = brandDict.id;
|
brand.dict = brandDict;
|
||||||
|
|
||||||
// 保存到数据库
|
// 保存到数据库
|
||||||
return await this.dictItemModel.save(brand);
|
return await this.dictItemModel.save(brand);
|
||||||
|
|
@ -486,7 +486,7 @@ export class ProductService {
|
||||||
...pagination,
|
...pagination,
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
const where: any = { dict_id: flavorsDict.id };
|
const where: any = { dict: { id: flavorsDict.id } };
|
||||||
if (title) {
|
if (title) {
|
||||||
where.title = Like(`%${title}%`);
|
where.title = Like(`%${title}%`);
|
||||||
}
|
}
|
||||||
|
|
@ -500,7 +500,7 @@ export class ProductService {
|
||||||
if (!flavorsDict) {
|
if (!flavorsDict) {
|
||||||
return [];
|
return [];
|
||||||
}
|
}
|
||||||
return this.dictItemModel.find({ where: { dict_id: flavorsDict.id } });
|
return this.dictItemModel.find({ where: { id: flavorsDict.id } });
|
||||||
}
|
}
|
||||||
|
|
||||||
async createFlavors(createFlavorsDTO: CreateFlavorsDTO): Promise<DictItem> {
|
async createFlavors(createFlavorsDTO: CreateFlavorsDTO): Promise<DictItem> {
|
||||||
|
|
@ -514,7 +514,7 @@ export class ProductService {
|
||||||
const flavors = new DictItem();
|
const flavors = new DictItem();
|
||||||
flavors.title = title;
|
flavors.title = title;
|
||||||
flavors.name = name;
|
flavors.name = name;
|
||||||
flavors.dict_id = flavorsDict.id;
|
flavors.dict = flavorsDict;
|
||||||
return await this.dictItemModel.save(flavors);
|
return await this.dictItemModel.save(flavors);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -549,7 +549,7 @@ export class ProductService {
|
||||||
if (!strengthDict) {
|
if (!strengthDict) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
const where: any = { title, dict_id: strengthDict.id };
|
const where: any = { title, dict: { id: strengthDict.id } };
|
||||||
if (id) where.id = Not(id);
|
if (id) where.id = Not(id);
|
||||||
const count = await this.dictItemModel.count({
|
const count = await this.dictItemModel.count({
|
||||||
where,
|
where,
|
||||||
|
|
@ -570,7 +570,7 @@ export class ProductService {
|
||||||
...pagination,
|
...pagination,
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
const where: any = { dict_id: strengthDict.id };
|
const where: any = { dict: { id: strengthDict.id } };
|
||||||
if (title) {
|
if (title) {
|
||||||
where.title = Like(`%${title}%`);
|
where.title = Like(`%${title}%`);
|
||||||
}
|
}
|
||||||
|
|
@ -584,7 +584,7 @@ export class ProductService {
|
||||||
if (!strengthDict) {
|
if (!strengthDict) {
|
||||||
return [];
|
return [];
|
||||||
}
|
}
|
||||||
return this.dictItemModel.find({ where: { dict_id: strengthDict.id } });
|
return this.dictItemModel.find({ where: { dict: { id: strengthDict.id } } });
|
||||||
}
|
}
|
||||||
|
|
||||||
async createStrength(createStrengthDTO: CreateStrengthDTO): Promise<DictItem> {
|
async createStrength(createStrengthDTO: CreateStrengthDTO): Promise<DictItem> {
|
||||||
|
|
@ -598,7 +598,7 @@ export class ProductService {
|
||||||
const strength = new DictItem();
|
const strength = new DictItem();
|
||||||
strength.title = title;
|
strength.title = title;
|
||||||
strength.name = name;
|
strength.name = name;
|
||||||
strength.dict_id = strengthDict.id;
|
strength.dict = strengthDict;
|
||||||
return await this.dictItemModel.save(strength);
|
return await this.dictItemModel.save(strength);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -90,7 +90,7 @@ export class SiteService {
|
||||||
|
|
||||||
async disable(id: string | number, disabled: boolean) {
|
async disable(id: string | number, disabled: boolean) {
|
||||||
// 设置站点禁用状态(true -> 1, false -> 0)
|
// 设置站点禁用状态(true -> 1, false -> 0)
|
||||||
await this.siteModel.update({ id: Number(id) }, { isDisabled: disabled ? 1 : 0 });
|
await this.siteModel.update({ id: Number(id) }, { isDisabled: disabled });
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Loading…
Reference in New Issue