拍卖:数据库操作
This commit is contained in:
@@ -18,6 +18,10 @@ export class AuctionHandler {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async watchLot(msg: { code: string }, session: BackendSession) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
async checkDividend(msg: {}, session: BackendSession) {
|
async checkDividend(msg: {}, session: BackendSession) {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,7 @@
|
|||||||
|
import { LOT_CODE_LEN, AUCTION_STAGE, AUCTION_SOURCE } from './../consts';
|
||||||
import { ItemReward } from "../domain/dbGeneral";
|
import { ItemReward } from "../domain/dbGeneral";
|
||||||
|
import { genCode } from '../pubUtils/util';
|
||||||
|
import { LotModel, LotParam } from '../db/Lot';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @description 生成拍卖数据
|
* @description 生成拍卖数据
|
||||||
@@ -10,7 +13,17 @@ import { ItemReward } from "../domain/dbGeneral";
|
|||||||
* @param {ItemReward[]} rewards
|
* @param {ItemReward[]} rewards
|
||||||
*/
|
*/
|
||||||
export async function genAuction(guildCode: string, sourceType: number, sourceCode: string, serverId: number, rewards: ItemReward[]) {
|
export async function genAuction(guildCode: string, sourceType: number, sourceCode: string, serverId: number, rewards: ItemReward[]) {
|
||||||
|
const lots: LotParam[] = rewards.map(reward => {
|
||||||
|
const { id, count } = reward;
|
||||||
|
const code = genCode(LOT_CODE_LEN);
|
||||||
|
return {
|
||||||
|
auctionStage: AUCTION_STAGE.DEFAULT, sourceType,
|
||||||
|
sourceCode, serverId, guildCode, code, gid: id, count
|
||||||
|
// maxPrice, begin, end
|
||||||
|
}
|
||||||
|
});
|
||||||
|
const result = await LotModel.createRecs(lots);
|
||||||
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,16 @@
|
|||||||
|
export const AUCTION_STAGE = {
|
||||||
|
DEFAULT: 0,
|
||||||
|
GUILD: 1,
|
||||||
|
WORLD: 2,
|
||||||
|
END: 3,
|
||||||
|
};
|
||||||
|
|
||||||
|
export const AUCTION_SOURCE = {
|
||||||
|
DEFAULT: 0,
|
||||||
|
BOSS: 1, // 演武
|
||||||
|
GATE: 2, // 蛮夷入侵
|
||||||
|
CITY: 3, // 诸侯混战
|
||||||
|
RACE: 4, // 粮草先行
|
||||||
|
};
|
||||||
|
|
||||||
|
export const LOT_CODE_LEN = 8;
|
||||||
@@ -8,5 +8,6 @@ export * from './constModules/guildConst';
|
|||||||
export * from './constModules/selectConst';
|
export * from './constModules/selectConst';
|
||||||
export * from './constModules/chatConst';
|
export * from './constModules/chatConst';
|
||||||
export * from './constModules/httpConst';
|
export * from './constModules/httpConst';
|
||||||
|
export * from './constModules/auctionConst';
|
||||||
export * from './statusCode';
|
export * from './statusCode';
|
||||||
export * from './dataName';
|
export * from './dataName';
|
||||||
+8
-1
@@ -13,7 +13,7 @@ export default class Lot extends BaseModel {
|
|||||||
@prop({ required: true, default: 0 })
|
@prop({ required: true, default: 0 })
|
||||||
auctionStage: number; // 0:初始添加,1:军团拍卖,2:世界拍卖,3:拍卖结束
|
auctionStage: number; // 0:初始添加,1:军团拍卖,2:世界拍卖,3:拍卖结束
|
||||||
@prop({ required: true, default: 0 })
|
@prop({ required: true, default: 0 })
|
||||||
type: number; // 0:初始值,1:演武;2:蛮夷入侵;3:诸侯混战;4:粮草先行
|
sourceType: number; // 0:初始值,1:演武;2:蛮夷入侵;3:诸侯混战;4:粮草先行
|
||||||
@prop({ required: true, default: '' })
|
@prop({ required: true, default: '' })
|
||||||
sourceCode: string; // 来源的唯一标识,如活动编号
|
sourceCode: string; // 来源的唯一标识,如活动编号
|
||||||
@prop({ required: true, default: 0 })
|
@prop({ required: true, default: 0 })
|
||||||
@@ -24,6 +24,8 @@ export default class Lot extends BaseModel {
|
|||||||
code: string; // 竞拍物品唯一标识
|
code: string; // 竞拍物品唯一标识
|
||||||
@prop({ required: true, default: 0 })
|
@prop({ required: true, default: 0 })
|
||||||
gid: number; // 物品 id
|
gid: number; // 物品 id
|
||||||
|
@prop({ required: true, default: 1 })
|
||||||
|
count: number; // 物品数量
|
||||||
@prop({ required: true, default: 0 })
|
@prop({ required: true, default: 0 })
|
||||||
curPrice: number; // 当前出价
|
curPrice: number; // 当前出价
|
||||||
@prop({ required: true, default: '' })
|
@prop({ required: true, default: '' })
|
||||||
@@ -44,6 +46,11 @@ export default class Lot extends BaseModel {
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static async createRecs(datas: LotParam[]) {
|
||||||
|
const result: LotType[] = await LotModel.insertMany(datas);
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
public static async findLot(code: string) {
|
public static async findLot(code: string) {
|
||||||
const result = await LotModel.findOne({ code }).select('-_id -__v').lean();
|
const result = await LotModel.findOne({ code }).select('-_id -__v').lean();
|
||||||
return result;
|
return result;
|
||||||
|
|||||||
Reference in New Issue
Block a user