🐞 fix(gvg): 农田已种植田数量修复
This commit is contained in:
@@ -165,7 +165,8 @@ export async function lockField(leagueCode: string, roleId: string, roleName: st
|
|||||||
lands.push({ fieldId, addType });
|
lands.push({ fieldId, addType });
|
||||||
}
|
}
|
||||||
// 更新田
|
// 更新田
|
||||||
await GVGLeagueFarmModel.lockFields(configId, leagueCode, farmId, roleId, roleName, lands);
|
let dicFarm = gameData.gvgResource.get(farmId);
|
||||||
|
await GVGLeagueFarmModel.lockFields(configId, leagueCode, farmId, dicFarm?.type, roleId, roleName, lands);
|
||||||
return await GVGLeagueFarmModel.findByFarmIdAndRoleId(configId, leagueCode, farmId, roleId);
|
return await GVGLeagueFarmModel.findByFarmIdAndRoleId(configId, leagueCode, farmId, roleId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -86,7 +86,7 @@ export default class GVGLeagueFarm extends BaseModel {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static async findPlantedByFarmId(configId: number, leagueCode: string, farmId: number) {
|
public static async findPlantedByFarmId(configId: number, leagueCode: string, farmId: number) {
|
||||||
const result: GVGLeagueFarmType[] = await GVGLeagueFarmModel.find({ configId, leagueCode, farmId, unlockTime: { $gte: nowSeconds() }, harvestTime: { $gte: nowSeconds() }}).select('-_id').lean();
|
const result: GVGLeagueFarmType[] = await GVGLeagueFarmModel.find({ configId, leagueCode, farmId, unlockTime: { $gte: nowSeconds() }}).select('-_id').lean();
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -102,10 +102,10 @@ export default class GVGLeagueFarm extends BaseModel {
|
|||||||
* @param lands [{fieldId: number, time: number, addType: number}] fieldId:田地id, time: 锁定时间 addType: 种子加成
|
* @param lands [{fieldId: number, time: number, addType: number}] fieldId:田地id, time: 锁定时间 addType: 种子加成
|
||||||
* @returns
|
* @returns
|
||||||
*/
|
*/
|
||||||
public static async lockFields(configId: number, leagueCode: string, farmId: number, roleId: string, roleName: string, lands: { fieldId: number, addType: number }[]) {
|
public static async lockFields(configId: number, leagueCode: string, farmId: number, type: number, roleId: string, roleName: string, lands: { fieldId: number, addType: number }[]) {
|
||||||
// 先创建
|
// 先创建
|
||||||
await GVGLeagueFarmModel.bulkWrite(lands.map(({ fieldId }) => {
|
await GVGLeagueFarmModel.bulkWrite(lands.map(({ fieldId }) => {
|
||||||
return { updateOne: { filter: { configId, leagueCode, farmId, fieldId }, update: { $setOnInsert: { unlockTime: 0, harvestTime: 0, seedType: 0, addType: 0, addTypes: [] } }, upsert: true} }
|
return { updateOne: { filter: { configId, leagueCode, farmId, fieldId }, update: { $setOnInsert: { unlockTime: 0, harvestTime: 0, seedType: 0, addType: 0, addTypes: [], type } }, upsert: true} }
|
||||||
}));
|
}));
|
||||||
const result = await GVGLeagueFarmModel.bulkWrite(lands.map(({ fieldId, addType }) => {
|
const result = await GVGLeagueFarmModel.bulkWrite(lands.map(({ fieldId, addType }) => {
|
||||||
if(addType > 0) {
|
if(addType > 0) {
|
||||||
|
|||||||
Reference in New Issue
Block a user