|
@@ -18,6 +18,7 @@
|
|
|
*/
|
|
|
package com.iohao.mmo.equip.service;
|
|
|
|
|
|
+import com.github.javafaker.Faker;
|
|
|
import com.iohao.mmo.equip.entity.*;
|
|
|
import com.iohao.mmo.equip.utils.RandomUtils;
|
|
|
import lombok.AllArgsConstructor;
|
|
@@ -29,6 +30,7 @@ import org.springframework.data.mongodb.core.query.Query;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import java.math.BigDecimal;
|
|
|
import java.util.List;
|
|
|
+import java.util.Locale;
|
|
|
import java.util.Objects;
|
|
|
|
|
|
/**
|
|
@@ -40,6 +42,7 @@ import java.util.Objects;
|
|
|
@AllArgsConstructor
|
|
|
public class EquipTemplateService {
|
|
|
|
|
|
+ final Faker faker = new Faker(Locale.CHINA);
|
|
|
final MongoTemplate mongoTemplate;
|
|
|
|
|
|
public EquipTemplate findById(String id) {
|
|
@@ -53,12 +56,9 @@ public class EquipTemplateService {
|
|
|
if(StringUtils.isNotBlank(equipTemplate.getId())){
|
|
|
mongoTemplate.save(equipTemplate);
|
|
|
}else {
|
|
|
- //双向存储,便于后期查找
|
|
|
- Goods goods = equipTemplate.getGoods();
|
|
|
- goods.setType(3);
|
|
|
- mongoTemplate.save(goods);
|
|
|
- equipTemplate.setItemId(goods.getId());
|
|
|
- equipTemplate.setGoods(goods);
|
|
|
+ //TODO 物品:这里需要调用物品新建方法获得物品的id
|
|
|
+ String itemId = faker.random().hex(24);
|
|
|
+ equipTemplate.setItemId(itemId);
|
|
|
mongoTemplate.save(equipTemplate);
|
|
|
}
|
|
|
}
|
|
@@ -66,9 +66,7 @@ public class EquipTemplateService {
|
|
|
public void delBatch(List<String> idList) {
|
|
|
Query query = new Query(new Criteria("itemId").in(idList));
|
|
|
mongoTemplate.remove(query, EquipTemplate.class);
|
|
|
- //删除物品
|
|
|
- Query goodsQuery = new Query(new Criteria("id").in(idList));
|
|
|
- mongoTemplate.remove(goodsQuery, Goods.class);
|
|
|
+ //TODO 物品:删除物品
|
|
|
}
|
|
|
|
|
|
|
|
@@ -94,18 +92,9 @@ public class EquipTemplateService {
|
|
|
equipTemplate.setTotalAttrMin(20);
|
|
|
equipTemplate.setTotalAttrMax(30);
|
|
|
|
|
|
- Goods goods = new Goods();
|
|
|
- goods.setName("皮甲");
|
|
|
- goods.setDesc("一件厚重的皮甲");
|
|
|
- goods.setIcon("https://www.baidu.com/img/PCtm_d9c8750bed0b3c7d089fa7d55720d6cf.png");
|
|
|
- goods.setImage("https://www.baidu.com/img/PCtm_d9c8750bed0b3c7d089fa7d55720d6cf.png");
|
|
|
- goods.setBindPrice(220);
|
|
|
- goods.setPrice(200);
|
|
|
- goods.setDealFlag(true);
|
|
|
- goods.setType(3);
|
|
|
- mongoTemplate.save(goods);
|
|
|
- equipTemplate.setItemId(goods.getId());
|
|
|
- equipTemplate.setGoods(goods);
|
|
|
+ //TODO 物品:这里需要调用物品新建方法获得物品的id
|
|
|
+ String itemId = faker.random().hex(24);
|
|
|
+ equipTemplate.setItemId(itemId);
|
|
|
|
|
|
mongoTemplate.save(equipTemplate);
|
|
|
|
|
@@ -130,21 +119,10 @@ public class EquipTemplateService {
|
|
|
equipTemplate2.setTotalAttrMin(16);
|
|
|
equipTemplate2.setTotalAttrMax(24);
|
|
|
|
|
|
- Goods goods2 = new Goods();
|
|
|
- goods2.setName("铁剑");
|
|
|
- goods2.setDesc("一把铁剑,有些锈迹斑斑了");
|
|
|
- goods2.setIcon("https://www.baidu.com/img/PCtm_d9c8750bed0b3c7d089fa7d55720d6cf.png");
|
|
|
- goods2.setImage("https://www.baidu.com/img/PCtm_d9c8750bed0b3c7d089fa7d55720d6cf.png");
|
|
|
- goods2.setBindPrice(180);
|
|
|
- goods2.setPrice(160);
|
|
|
- goods2.setDealFlag(true);
|
|
|
- goods2.setType(3);
|
|
|
- mongoTemplate.save(goods2);
|
|
|
- equipTemplate2.setItemId(goods2.getId());
|
|
|
- equipTemplate2.setGoods(goods2);
|
|
|
-
|
|
|
+ //TODO 物品:这里需要调用物品新建方法获得物品的id
|
|
|
+ String itemId2 = faker.random().hex(24);
|
|
|
+ equipTemplate2.setItemId(itemId2);
|
|
|
mongoTemplate.save(equipTemplate2);
|
|
|
- mongoTemplate.save(goods2);
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -185,13 +163,10 @@ public class EquipTemplateService {
|
|
|
Equip equip = copyTemplate2Equip(equipTemplate,excellentRate);
|
|
|
equip.setUserId(userId);
|
|
|
//新建装备对应的物品类
|
|
|
- Goods goods = equipTemplate.getGoods();
|
|
|
- goods.setId(null);
|
|
|
- goods.setType(0);
|
|
|
- mongoTemplate.save(goods);
|
|
|
+ //TODO 物品:这里需要调用物品新建方法获得物品的id
|
|
|
+ String itemId2 = faker.random().hex(24);
|
|
|
//对应的物品数据是新建的
|
|
|
- equip.setItemId(goods.getId());
|
|
|
- equip.setGoods(goods);
|
|
|
+ equip.setItemId(itemId2);
|
|
|
mongoTemplate.save(equip);
|
|
|
return equip;
|
|
|
}
|
|
@@ -202,7 +177,7 @@ public class EquipTemplateService {
|
|
|
//随机总属性点
|
|
|
int attrTotal = RandomUtils.randomFromExcellent(equipTemplate.getTotalAttrMin(),equipTemplate.getTotalAttrMax(),excellentFlag);
|
|
|
return Equip.builder()
|
|
|
- .name(equipTemplate.getGoods().getName())
|
|
|
+ .name("测试装备名称") //TODO 物品:获取物品的名称
|
|
|
.quality(excellentFlag?2:1) //品质
|
|
|
.fixedEquipProperty(FixedEquipProperty.randomFixed(equipTemplate.getFixedEquipPropertyMin(),equipTemplate.getFixedEquipPropertyMax())) //装备固定属性
|
|
|
.attrTotal(attrTotal)
|
|
@@ -214,7 +189,7 @@ public class EquipTemplateService {
|
|
|
.fixedEquipPropertyMax(equipTemplate.getFixedEquipPropertyMax())
|
|
|
.totalAttrMin(equipTemplate.getTotalAttrMin())
|
|
|
.totalAttrMax(equipTemplate.getTotalAttrMax())
|
|
|
- .equipTemplateId(equipTemplate.getId())
|
|
|
+ .equipTemplateId(equipTemplate.getItemId())
|
|
|
.build();
|
|
|
}
|
|
|
}
|