Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- @Command(aliases = "listorders", privateMessages = false)
- public String listorders(User u, Message m, ServerTextChannel c) {
- if (Permissions.isBlackListed(u) && !Permissions.isDeveloper(u)) {
- c.sendMessage(Permissions.blacklistEmbed(m));
- return null;
- }
- if (!Permissions.isWorker(u)) {
- c.sendMessage(Permissions.permissionCheckEmbed(m));
- return null;
- }
- StringBuilder unclaimed = new StringBuilder();
- StringBuilder claimed = new StringBuilder();
- StringBuilder cooking = new StringBuilder();
- StringBuilder done = new StringBuilder();
- Map<Order.Status, List<Order>> unclaimedOrders = orders.values()
- .stream()
- .filter(o -> o.status.equals(Order.Status.UNCLAIMED))
- .collect(Collectors.groupingBy(o -> o.status));
- Map<Order.Status, List<Order>> claimedOrders = orders.values()
- .stream()
- .filter(o -> o.status.equals(Order.Status.CLAIMED))
- .collect(Collectors.groupingBy(o -> o.status));
- Map<Order.Status, List<Order>> cookingOrders = orders.values()
- .stream()
- .filter(o -> o.status.equals(Order.Status.COOKING))
- .collect(Collectors.groupingBy(o -> o.status));
- Map<Order.Status, List<Order>> doneOrders = orders.values()
- .stream()
- .filter(o -> o.status.equals(Order.Status.DONE))
- .collect(Collectors.groupingBy(o -> o.status));
- unclaimedOrders.keySet()
- .forEach(s -> {
- unclaimedOrders.get(s).forEach(Order -> {
- unclaimed.append("__").append(Order.id).append("__\n");
- });
- });
- claimedOrders.keySet()
- .forEach(s -> {
- claimed.append("|").append(s.name()).append("|:\n");
- claimedOrders.get(s).forEach(Order -> {
- claimed.append("__").append(Order.id).append("__\n");
- });
- });
- cookingOrders.keySet()
- .forEach(s -> {
- cookingOrders.get(s).forEach(Order -> {
- cooking.append("__").append(Order.id).append("__\n");
- });
- });
- doneOrders.keySet()
- .forEach(s -> {
- doneOrders.get(s).forEach(Order -> {
- done.append("__").append(Order.id).append("__\n");
- });
- });
- if (unclaimed.length() == 0) {
- unclaimed.append("No unclaimed orders.");
- }
- if (claimed.length() == 0) {
- claimed.append("No claimed orders.");
- }
- if (cooking.length() == 0) {
- cooking.append("No cooking orders.");
- }
- if (done.length() == 0) {
- done.append("No completed orders.");
- }
- System.out.println("Command>> " + u + " listed the active orders.");
- EmbedBuilder responseEmbed = new EmbedBuilder()
- .setColor(Permissions.borderColor)
- .setAuthor("Listing Open Orders:")
- .addField("Unclaimed", unclaimed.toString(), true)
- .addField("Claimed", claimed.toString(), true)
- .addField("Cooking", cooking.toString(), true)
- .addField("Done", done.toString(), true)
- .setFooter("Discord Cookies", Permissions.icon)
- .setTimestamp(m.getCreationTimestamp());
- c.sendMessage(responseEmbed);
- return null;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement