diff --git a/shared/db/GVGLeagueFarm.ts b/shared/db/GVGLeagueFarm.ts index 9dd479f13..2efd5e190 100644 --- a/shared/db/GVGLeagueFarm.ts +++ b/shared/db/GVGLeagueFarm.ts @@ -135,10 +135,11 @@ export default class GVGLeagueFarm extends BaseModel { public static async harvest(configId: number, leagueCode: string, farmId: number, fieldIds: number[], roleId: string) { const batchCode = genCode(10); const result = await GVGLeagueFarmModel.bulkWrite(fieldIds.map(fieldId => { - return { updateOne: { filter: { configId, leagueCode, farmId, fieldId, lockRoleId: roleId, harvestTime: { $lt: nowSeconds() } }, update: { $set: { unlockTime: 0, harvestTime: 0, seedType: 0, lockRoleId: '', lockRoleName: '', batchCode }} } } + return { updateOne: { filter: { configId, leagueCode, farmId, fieldId, lockRoleId: roleId, harvestTime: { $lt: nowSeconds() } }, update: { $set: { unlockTime: 0, harvestTime: 0, lockRoleId: '', lockRoleName: '', batchCode }} } } })); if(result.modifiedCount == 0) return []; const fieldResult: GVGLeagueFarmType[] = await GVGLeagueFarmModel.find({ batchCode }).sort({ fieldId: 1 }).select('-_id -createdAt -updatedAt -__v -configId -leagueCode').lean(); + await GVGLeagueFarmModel.updateMany({ batchCode }, { $set: { seedType: 0 } }) return fieldResult; } diff --git a/shared/db/GVGUserItem.ts b/shared/db/GVGUserItem.ts index b5e5e09da..21ed2d7a0 100644 --- a/shared/db/GVGUserItem.ts +++ b/shared/db/GVGUserItem.ts @@ -5,6 +5,7 @@ import { RewardInter } from '../pubUtils/interface'; import { genCode } from '../pubUtils/util'; @index({ leagueCode: 1, roleId: 1, configId: 1, status: 1 }) +@index({ batchCode: 1 }) export default class GVGUserItem extends BaseModel { @prop({ required: true })