fix
parent
1ea296dcb2
commit
3964b0b999
|
@ -23,7 +23,7 @@ public class MailingSystemManager {
|
|||
//初始化系统邮件信息
|
||||
MailingSystem mailingSystem = ljsdMongoTemplate.findById(MailingSystem.getCollectionName(), Integer.toString(1), MailingSystem.class);
|
||||
if (mailingSystem == null){
|
||||
mailingSystem = new MailingSystem();
|
||||
mailingSystem = new MaXilingSystem();
|
||||
addMailingSystem(mailingSystem);
|
||||
int nowTime = (int)(TimeUtils.now()/1000);
|
||||
mailingSystem.getSysMailManager().addSystemMail(new SysMail(1));
|
||||
|
|
|
@ -76,6 +76,13 @@ public class CBean2Proto {
|
|||
return equips;
|
||||
}
|
||||
|
||||
public static CommonProto.Equip getEquipProto(Equip equip){
|
||||
CommonProto.Equip equipProto =CommonProto.Equip.newBuilder()
|
||||
.setEquipId(equip.getEquipId())
|
||||
.build();
|
||||
return equipProto;
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
|
|
@ -51,6 +51,15 @@ public class ItemUtil {
|
|||
addCard(user,cardMap,dropBuilder);
|
||||
return dropBuilder;
|
||||
}
|
||||
public static CommonProto.Drop.Builder drop(User user, Map<int [],Float> dropGroupAndRatioMap) throws Exception {
|
||||
CommonProto.Drop.Builder dropBuilder = CommonProto.Drop.newBuilder();
|
||||
for (Map.Entry<int [],Float> entry :dropGroupAndRatioMap.entrySet()){
|
||||
int[] dropGroupIds = entry.getKey();
|
||||
float dropRatio = entry.getValue();
|
||||
dropBuilder = drop(user, dropGroupIds, dropRatio);
|
||||
}
|
||||
return dropBuilder;
|
||||
}
|
||||
private static void selectDrop(SRewardGroup sRewardGroup,Map<Integer, Integer> itemMap, Map<Integer, Integer> cardMap,Map<Integer,Integer> equipMap,float dropRatio) {
|
||||
int[] rewardItem = sRewardGroup.getRewardItem();
|
||||
StringBuilder rewardStr = new StringBuilder();
|
||||
|
@ -132,7 +141,7 @@ public class ItemUtil {
|
|||
SItem sItem = SItem.getsItemMap().get(itemId);
|
||||
switch (sItem.getItemType()) {
|
||||
case GlobalItemType.ITEM:
|
||||
putcountMap(itemId, (int) (itemNum * dropRatio), itemMap);
|
||||
putcountMap(itemId,MathUtils.numRount((itemNum * dropRatio)) , itemMap);
|
||||
break;
|
||||
case GlobalItemType.CARD:
|
||||
putcountMap(itemId, itemNum, cardMap);
|
||||
|
@ -218,7 +227,7 @@ public class ItemUtil {
|
|||
* @param equipMap
|
||||
* @param dropBuilder
|
||||
*/
|
||||
private static void addEquip(User user, Map<Integer, Integer> equipMap, CommonProto.Drop.Builder dropBuilder) {
|
||||
private static void addEquip(User user, Map<Integer, Integer> equipMap, CommonProto.Drop.Builder dropBuilder) throws Exception {
|
||||
List<CommonProto.Equip> equipList = new CopyOnWriteArrayList<>();
|
||||
for (Map.Entry<Integer, Integer> entry : equipMap.entrySet()) {
|
||||
int count = entry.getValue();
|
||||
|
@ -228,7 +237,11 @@ public class ItemUtil {
|
|||
}
|
||||
dropBuilder.addAllEquipId(equipList);
|
||||
}
|
||||
private static void addEquip(User user,int equipId ,List<CommonProto.Equip> equipList) {
|
||||
private static void addEquip(User user,int equipId ,List<CommonProto.Equip> equipList) throws Exception {
|
||||
EquipManager equipManager = user.getEquipManager();
|
||||
Equip equip = new Equip(user.getId(),equipId);
|
||||
equipManager.addEquip(equip);
|
||||
equipList.add(CBean2Proto.getEquipProto(equip));
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -152,18 +152,23 @@ public class MailUtil {
|
|||
|
||||
//领取附件
|
||||
public CommonProto.Drop.Builder takeMail(List<String> mailIdsList, int userId) throws Exception {
|
||||
CommonProto.Drop.Builder dropBuilder = CommonProto.Drop.newBuilder();
|
||||
User user = UserManager.getUser(userId);
|
||||
MailManager mailManager = user.getMailManager();
|
||||
StringBuilder mailItem = new StringBuilder();
|
||||
for (String mailId : mailIdsList){
|
||||
Mail mail = mailManager.getMail(mailId);
|
||||
if (mail == null){
|
||||
continue;
|
||||
}
|
||||
String mailItem = mail.getMailItem();
|
||||
int[][] itemArr = StringUtil.parseFiledInt2(mailItem);
|
||||
dropBuilder = ItemUtil.drop(user, itemArr);
|
||||
if (mailItem.length() == 0){
|
||||
mailItem = new StringBuilder(mail.getMailItem());
|
||||
}else{
|
||||
mailItem.append("|").append(mail.getMailItem());
|
||||
}
|
||||
|
||||
}
|
||||
int[][] itemArr = StringUtil.parseFiledInt2(mailItem.toString());
|
||||
CommonProto.Drop.Builder dropBuilder = ItemUtil.drop(user, itemArr);
|
||||
return dropBuilder;
|
||||
}
|
||||
|
||||
|
|
|
@ -89,4 +89,9 @@ public class MathUtils {
|
|||
return random.nextInt(n);
|
||||
}
|
||||
|
||||
|
||||
public static int numRount(float num){
|
||||
return Math.round(num);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue