实现了对基础功能重写后的测试
This commit is contained in:
parent
e4e0f7c444
commit
df812863d0
4
pom.xml
4
pom.xml
@ -64,7 +64,7 @@
|
|||||||
</repository>
|
</repository>
|
||||||
<repository>
|
<repository>
|
||||||
<id>lunadeer-repo</id>
|
<id>lunadeer-repo</id>
|
||||||
<url>https://ssl.lunadeer.cn:14454/repository/maven-public/</url>
|
<url>https://ssl.lunadeer.cn:14454/repository/maven-snapshots/</url>
|
||||||
</repository>
|
</repository>
|
||||||
</repositories>
|
</repositories>
|
||||||
|
|
||||||
@ -78,7 +78,7 @@
|
|||||||
<dependency>
|
<dependency>
|
||||||
<groupId>cn.lunadeer</groupId>
|
<groupId>cn.lunadeer</groupId>
|
||||||
<artifactId>MinecraftPluginUtils</artifactId>
|
<artifactId>MinecraftPluginUtils</artifactId>
|
||||||
<version>1.1.8</version>
|
<version>1.2.0-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
</project>
|
</project>
|
||||||
|
@ -21,7 +21,7 @@ public class Apis {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static void updateName(Player player, @Nullable TitleDTO title) {
|
public static void updateName(Player player, @Nullable TitleDTO title) {
|
||||||
if (title == null) {
|
if (title == null || title.getId() == -1) {
|
||||||
Component newDisplayName = Component.text()
|
Component newDisplayName = Component.text()
|
||||||
.append(Component.text("<"))
|
.append(Component.text("<"))
|
||||||
.append(player.name())
|
.append(player.name())
|
||||||
|
@ -3,6 +3,7 @@ package cn.lunadeer.miniplayertitle.commands;
|
|||||||
import cn.lunadeer.miniplayertitle.MiniPlayerTitle;
|
import cn.lunadeer.miniplayertitle.MiniPlayerTitle;
|
||||||
import cn.lunadeer.miniplayertitle.dtos.PlayerInfoDTO;
|
import cn.lunadeer.miniplayertitle.dtos.PlayerInfoDTO;
|
||||||
import cn.lunadeer.miniplayertitle.dtos.TitleDTO;
|
import cn.lunadeer.miniplayertitle.dtos.TitleDTO;
|
||||||
|
import cn.lunadeer.miniplayertitle.tuis.AllTitles;
|
||||||
import cn.lunadeer.miniplayertitle.tuis.MyTitles;
|
import cn.lunadeer.miniplayertitle.tuis.MyTitles;
|
||||||
import net.kyori.adventure.text.Component;
|
import net.kyori.adventure.text.Component;
|
||||||
import org.bukkit.command.CommandSender;
|
import org.bukkit.command.CommandSender;
|
||||||
@ -43,12 +44,16 @@ public class TitleManage {
|
|||||||
public static void deleteTitle(CommandSender sender, String[] args) {
|
public static void deleteTitle(CommandSender sender, String[] args) {
|
||||||
try {
|
try {
|
||||||
if (notOpOrConsole(sender)) return;
|
if (notOpOrConsole(sender)) return;
|
||||||
if (args.length != 2) {
|
if (args.length < 2) {
|
||||||
MiniPlayerTitle.notification.warn(sender, "用法: /mplt delete_title <称号ID>");
|
MiniPlayerTitle.notification.warn(sender, "用法: /mplt delete_title <称号ID>");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
TitleDTO.delete(Integer.parseInt(args[1]));
|
TitleDTO.delete(Integer.parseInt(args[1]));
|
||||||
MiniPlayerTitle.notification.info(sender, "已删除称号");
|
MiniPlayerTitle.notification.info(sender, "已删除称号");
|
||||||
|
if (args.length == 3) {
|
||||||
|
int page = Integer.parseInt(args[2]);
|
||||||
|
AllTitles.show(sender, new String[]{"all_titles", String.valueOf(page)});
|
||||||
|
}
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
MiniPlayerTitle.notification.error(sender, e.getMessage());
|
MiniPlayerTitle.notification.error(sender, e.getMessage());
|
||||||
}
|
}
|
||||||
|
@ -7,6 +7,8 @@ import cn.lunadeer.miniplayertitle.dtos.TitleDTO;
|
|||||||
import cn.lunadeer.miniplayertitle.dtos.TitleShopDTO;
|
import cn.lunadeer.miniplayertitle.dtos.TitleShopDTO;
|
||||||
import cn.lunadeer.miniplayertitle.tuis.MyTitles;
|
import cn.lunadeer.miniplayertitle.tuis.MyTitles;
|
||||||
import cn.lunadeer.miniplayertitle.tuis.SaleInfo;
|
import cn.lunadeer.miniplayertitle.tuis.SaleInfo;
|
||||||
|
import cn.lunadeer.miniplayertitle.tuis.Shop;
|
||||||
|
import net.kyori.adventure.text.Component;
|
||||||
import org.bukkit.command.CommandSender;
|
import org.bukkit.command.CommandSender;
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
|
|
||||||
@ -15,6 +17,7 @@ import java.util.List;
|
|||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
|
|
||||||
import static cn.lunadeer.miniplayertitle.commands.Apis.notOpOrConsole;
|
import static cn.lunadeer.miniplayertitle.commands.Apis.notOpOrConsole;
|
||||||
|
import static cn.lunadeer.miniplayertitle.tuis.Apis.getArgPage;
|
||||||
import static cn.lunadeer.miniplayertitle.tuis.Apis.getLastArgsPage;
|
import static cn.lunadeer.miniplayertitle.tuis.Apis.getLastArgsPage;
|
||||||
|
|
||||||
public class TitleShopSale {
|
public class TitleShopSale {
|
||||||
@ -119,8 +122,7 @@ public class TitleShopSale {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (args.length == 3) {
|
if (args.length == 3) {
|
||||||
int page = getLastArgsPage(args);
|
Shop.show(sender, new String[]{"shop"});
|
||||||
SaleInfo.show(sender, new String[]{"sale_info", args[1], String.valueOf(page)});
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -128,8 +130,8 @@ public class TitleShopSale {
|
|||||||
* 购买商品
|
* 购买商品
|
||||||
* mplt buy_sale <商品ID>
|
* mplt buy_sale <商品ID>
|
||||||
*
|
*
|
||||||
* @param sender
|
* @param sender CommandSender
|
||||||
* @param args
|
* @param args String[]
|
||||||
*/
|
*/
|
||||||
public static void buySale(CommandSender sender, String[] args) {
|
public static void buySale(CommandSender sender, String[] args) {
|
||||||
if (!(sender instanceof Player)) {
|
if (!(sender instanceof Player)) {
|
||||||
@ -171,23 +173,25 @@ public class TitleShopSale {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (had == null) {
|
if (had == null) {
|
||||||
had = PlayerTitleDTO.create(player.getUniqueId(), titleShop.getTitle(), LocalDateTime.now().plusDays(titleShop.getDays()));
|
had = PlayerTitleDTO.create(player.getUniqueId(), titleShop.getTitle(), titleShop.getDays() == -1 ? null : LocalDateTime.now().plusDays(titleShop.getDays()));
|
||||||
if (had == null) {
|
if (had == null) {
|
||||||
MiniPlayerTitle.notification.error(player, "购买称号时出现错误,详情请查看控制台日志");
|
MiniPlayerTitle.notification.error(player, "购买称号时出现错误,详情请查看控制台日志");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
MiniPlayerTitle.notification.info(player, "成功购买称号: " + had.getTitle().getTitleColored());
|
titleShop.setAmount(titleShop.getAmount() - 1);
|
||||||
|
playerInfo.setCoin(playerInfo.getCoin() - titleShop.getPrice());
|
||||||
|
MiniPlayerTitle.notification.info(player, Component.text("成功购买称号: ").append(had.getTitle().getTitleColored()));
|
||||||
} else if (!had.isExpired()) {
|
} else if (!had.isExpired()) {
|
||||||
MiniPlayerTitle.notification.warn(player, "你已拥有此称号,在过期前无法再次购买");
|
MiniPlayerTitle.notification.warn(player, "你已拥有此称号,在过期前无法再次购买");
|
||||||
} else {
|
} else {
|
||||||
had.setExpireAt(LocalDateTime.now().plusDays(titleShop.getDays()));
|
had.setExpireAt(titleShop.getDays() == -1 ? null : LocalDateTime.now().plusDays(titleShop.getDays()));
|
||||||
MiniPlayerTitle.notification.info(player, "成功续续期称号: " + had.getTitle().getTitleColored());
|
titleShop.setAmount(titleShop.getAmount() - 1);
|
||||||
|
playerInfo.setCoin(playerInfo.getCoin() - titleShop.getPrice());
|
||||||
|
MiniPlayerTitle.notification.info(player, Component.text("成功续续期称号: ").append(had.getTitle().getTitleColored()));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (args.length == 2) {
|
int page = getArgPage(args, 3);
|
||||||
int page = getLastArgsPage(args);
|
MyTitles.show(sender, new String[]{"my_titles", String.valueOf(page)});
|
||||||
MyTitles.show(sender, new String[]{"my_titles", String.valueOf(page)});
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -27,11 +27,9 @@ public class PlayerInfoDTO {
|
|||||||
String sql = "";
|
String sql = "";
|
||||||
sql = "INSERT INTO mplt_player_info (uuid, coin) " +
|
sql = "INSERT INTO mplt_player_info (uuid, coin) " +
|
||||||
"VALUES ('" + uuid.toString() + "', " + MiniPlayerTitle.config.getDefaultCoin() + ") " +
|
"VALUES ('" + uuid.toString() + "', " + MiniPlayerTitle.config.getDefaultCoin() + ") " +
|
||||||
"RETURNING " +
|
"ON CONFLICT DO NOTHING;";
|
||||||
"uuid, coin, using_title_id " +
|
|
||||||
"ON CONFLICT (uuid) DO NOTHING;";
|
|
||||||
try (ResultSet rs = MiniPlayerTitle.database.query(sql)) {
|
try (ResultSet rs = MiniPlayerTitle.database.query(sql)) {
|
||||||
if (rs.next()) return getPlayerInfoDTO(rs);
|
return get(uuid);
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
MiniPlayerTitle.database.handleDatabaseError("创建玩家信息失败", e, sql);
|
MiniPlayerTitle.database.handleDatabaseError("创建玩家信息失败", e, sql);
|
||||||
}
|
}
|
||||||
@ -58,10 +56,7 @@ public class PlayerInfoDTO {
|
|||||||
String sql = "";
|
String sql = "";
|
||||||
sql = "UPDATE mplt_player_info SET using_title_id = " + title.getId() + " WHERE uuid = '" + uuid.toString() + "';";
|
sql = "UPDATE mplt_player_info SET using_title_id = " + title.getId() + " WHERE uuid = '" + uuid.toString() + "';";
|
||||||
try (ResultSet rs = MiniPlayerTitle.database.query(sql)) {
|
try (ResultSet rs = MiniPlayerTitle.database.query(sql)) {
|
||||||
if (rs != null && rs.next()) {
|
return true;
|
||||||
using_title = title;
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
MiniPlayerTitle.database.handleDatabaseError("设置玩家使用称号失败", e, sql);
|
MiniPlayerTitle.database.handleDatabaseError("设置玩家使用称号失败", e, sql);
|
||||||
}
|
}
|
||||||
@ -76,10 +71,8 @@ public class PlayerInfoDTO {
|
|||||||
String sql = "";
|
String sql = "";
|
||||||
sql = "UPDATE mplt_player_info SET coin = " + coin + " WHERE uuid = '" + uuid.toString() + "';";
|
sql = "UPDATE mplt_player_info SET coin = " + coin + " WHERE uuid = '" + uuid.toString() + "';";
|
||||||
try (ResultSet rs = MiniPlayerTitle.database.query(sql)) {
|
try (ResultSet rs = MiniPlayerTitle.database.query(sql)) {
|
||||||
if (rs != null && rs.next()) {
|
this.coin = coin;
|
||||||
this.coin = coin;
|
return true;
|
||||||
return true;
|
|
||||||
}
|
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
MiniPlayerTitle.database.handleDatabaseError("设置玩家金币失败", e, sql);
|
MiniPlayerTitle.database.handleDatabaseError("设置玩家金币失败", e, sql);
|
||||||
}
|
}
|
||||||
|
@ -2,6 +2,7 @@ package cn.lunadeer.miniplayertitle.dtos;
|
|||||||
|
|
||||||
import cn.lunadeer.miniplayertitle.MiniPlayerTitle;
|
import cn.lunadeer.miniplayertitle.MiniPlayerTitle;
|
||||||
|
|
||||||
|
import javax.annotation.Nullable;
|
||||||
import java.sql.ResultSet;
|
import java.sql.ResultSet;
|
||||||
import java.sql.SQLException;
|
import java.sql.SQLException;
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
@ -33,8 +34,11 @@ public class PlayerTitleDTO {
|
|||||||
|
|
||||||
public boolean setExpireAt(LocalDateTime dateTime) {
|
public boolean setExpireAt(LocalDateTime dateTime) {
|
||||||
String sql = "";
|
String sql = "";
|
||||||
sql += "UPDATE mplt_player_title SET expire_at_y = " + dateTime.getYear() + ", expire_at_m = " + dateTime.getMonthValue() + ", expire_at_d = " + dateTime.getDayOfMonth() + " " +
|
if (dateTime == null) {
|
||||||
"WHERE id = " + id + ";";
|
sql += "UPDATE mplt_player_title SET expire_at_y = -1, expire_at_m = -1, expire_at_d = -1 WHERE id = " + id + ";";
|
||||||
|
} else {
|
||||||
|
sql += "UPDATE mplt_player_title SET expire_at_y = " + dateTime.getYear() + ", expire_at_m = " + dateTime.getMonthValue() + ", expire_at_d = " + dateTime.getDayOfMonth() + " WHERE id = " + id + ";";
|
||||||
|
}
|
||||||
try (ResultSet rs = MiniPlayerTitle.database.query(sql)) {
|
try (ResultSet rs = MiniPlayerTitle.database.query(sql)) {
|
||||||
return true;
|
return true;
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
@ -43,11 +47,16 @@ public class PlayerTitleDTO {
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static PlayerTitleDTO create(UUID player_uuid, TitleDTO title, LocalDateTime expire_at) {
|
public static PlayerTitleDTO create(UUID player_uuid, TitleDTO title, @Nullable LocalDateTime expire_at) {
|
||||||
String sql = "";
|
String sql = "";
|
||||||
sql += "INSERT INTO mplt_player_title (player_uuid, title_id, expire_at_y, expire_at_m, expire_at_d) " +
|
sql += "INSERT INTO mplt_player_title (player_uuid, title_id, expire_at_y, expire_at_m, expire_at_d) ";
|
||||||
"VALUES ('" + player_uuid.toString() + "', " + title.getId() + ", " + expire_at.getYear() + ", " + expire_at.getMonthValue() + ", " + expire_at.getDayOfMonth() + ") " +
|
|
||||||
"RETURNING " +
|
if (expire_at == null) {
|
||||||
|
sql += "VALUES ('" + player_uuid.toString() + "', " + title.getId() + ", -1, -1, -1) ";
|
||||||
|
} else {
|
||||||
|
sql += "VALUES ('" + player_uuid.toString() + "', " + title.getId() + ", " + expire_at.getYear() + ", " + expire_at.getMonthValue() + ", " + expire_at.getDayOfMonth() + ") ";
|
||||||
|
}
|
||||||
|
sql += "RETURNING " +
|
||||||
"id, player_uuid, title_id, expire_at_y, expire_at_m, expire_at_d;";
|
"id, player_uuid, title_id, expire_at_y, expire_at_m, expire_at_d;";
|
||||||
try (ResultSet rs = MiniPlayerTitle.database.query(sql)) {
|
try (ResultSet rs = MiniPlayerTitle.database.query(sql)) {
|
||||||
if (rs.next()) {
|
if (rs.next()) {
|
||||||
|
@ -96,7 +96,8 @@ public class TitleShopDTO {
|
|||||||
|
|
||||||
public static TitleShopDTO get(Integer id) {
|
public static TitleShopDTO get(Integer id) {
|
||||||
String sql = "";
|
String sql = "";
|
||||||
sql += "SELECT id, title_id, price, days, amount, sale_end_at FROM mplt_title_shop WHERE id = " + id + ";";
|
sql += "SELECT id, title_id, price, days, amount, sale_end_at_y, sale_end_at_m, sale_end_at_d " +
|
||||||
|
"FROM mplt_title_shop WHERE id = " + id + ";";
|
||||||
try (ResultSet rs = MiniPlayerTitle.database.query(sql)) {
|
try (ResultSet rs = MiniPlayerTitle.database.query(sql)) {
|
||||||
if (rs.next()) {
|
if (rs.next()) {
|
||||||
return getTitleShop(rs);
|
return getTitleShop(rs);
|
||||||
@ -109,7 +110,8 @@ public class TitleShopDTO {
|
|||||||
|
|
||||||
public static List<TitleShopDTO> getAll() {
|
public static List<TitleShopDTO> getAll() {
|
||||||
String sql = "";
|
String sql = "";
|
||||||
sql += "SELECT id, title_id, price, days, amount, sale_end_at FROM mplt_title_shop;";
|
sql += "SELECT id, title_id, price, days, amount, sale_end_at_y, sale_end_at_m, sale_end_at_d " +
|
||||||
|
"FROM mplt_title_shop;";
|
||||||
List<TitleShopDTO> titleShops = new ArrayList<>();
|
List<TitleShopDTO> titleShops = new ArrayList<>();
|
||||||
try (ResultSet rs = MiniPlayerTitle.database.query(sql)) {
|
try (ResultSet rs = MiniPlayerTitle.database.query(sql)) {
|
||||||
while (rs != null && rs.next()) {
|
while (rs != null && rs.next()) {
|
||||||
|
@ -26,6 +26,9 @@ public class AllTitles {
|
|||||||
.append("所有称号"));
|
.append("所有称号"));
|
||||||
|
|
||||||
for (TitleDTO title : titles) {
|
for (TitleDTO title : titles) {
|
||||||
|
if (title.getId() == -1){
|
||||||
|
continue;
|
||||||
|
}
|
||||||
Line line = Line.create()
|
Line line = Line.create()
|
||||||
.append(title.getId().toString())
|
.append(title.getId().toString())
|
||||||
.append(title.getTitleColored());
|
.append(title.getTitleColored());
|
||||||
|
@ -38,8 +38,12 @@ public class MyTitles {
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
Line line = Line.create()
|
Line line = Line.create()
|
||||||
.append(title.getTitle().getTitleColored())
|
.append(title.getTitle().getTitleColored());
|
||||||
.append("有效期至: " + title.getExpireAt().getYear() + "年" + title.getExpireAt().getMonthValue() + "月" + title.getExpireAt().getDayOfMonth() + "日");
|
if (title.getExpireAt() == null) {
|
||||||
|
line.append("永久");
|
||||||
|
} else {
|
||||||
|
line.append("有效期至: " + title.getExpireAt().getYear() + "年" + title.getExpireAt().getMonthValue() + "月" + title.getExpireAt().getDayOfMonth() + "日");
|
||||||
|
}
|
||||||
if (Objects.equals(playerInfo.getUsingTitle().getId(), title.getId())) {
|
if (Objects.equals(playerInfo.getUsingTitle().getId(), title.getId())) {
|
||||||
line.append(Button.createRed("卸下").setExecuteCommand("/mplt use_title -1 " + page).build());
|
line.append(Button.createRed("卸下").setExecuteCommand("/mplt use_title -1 " + page).build());
|
||||||
} else {
|
} else {
|
||||||
|
@ -99,11 +99,11 @@ public class SaleInfo {
|
|||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (player.isOp()) {
|
if (player.isOp()) {
|
||||||
end_at.append(Button.create("<<").setHoverText("提前10天").setExecuteCommand("/mplt set_sale less_end_at " + titleShop.getId() + " 10 " + page).build());
|
end_at.append(Button.create("<<").setPreSufIx("", "").setHoverText("提前10天").setExecuteCommand("/mplt set_sale less_end_at " + titleShop.getId() + " 10 " + page).build());
|
||||||
end_at.append(Button.create("-").setHoverText("提前1天").setExecuteCommand("/mplt set_sale less_end_at " + titleShop.getId() + " 1 " + page).build());
|
end_at.append(Button.create("-").setPreSufIx("", "").setHoverText("提前1天").setExecuteCommand("/mplt set_sale less_end_at " + titleShop.getId() + " 1 " + page).build());
|
||||||
end_at.append(titleShop.getSaleEndAt().getYear() + "年" + titleShop.getSaleEndAt().getMonthValue() + "月" + titleShop.getSaleEndAt().getDayOfMonth() + "日");
|
end_at.append(titleShop.getSaleEndAt().getYear() + "年" + titleShop.getSaleEndAt().getMonthValue() + "月" + titleShop.getSaleEndAt().getDayOfMonth() + "日");
|
||||||
end_at.append(Button.create("+").setHoverText("延后1天").setExecuteCommand("/mplt set_sale more_end_at " + titleShop.getId() + " 1 " + page).build());
|
end_at.append(Button.create("+").setPreSufIx("", "").setHoverText("延后1天").setExecuteCommand("/mplt set_sale more_end_at " + titleShop.getId() + " 1 " + page).build());
|
||||||
end_at.append(Button.create(">>").setHoverText("延后10天").setExecuteCommand("/mplt set_sale more_end_at " + titleShop.getId() + " 10 " + page).build());
|
end_at.append(Button.create(">>").setPreSufIx("", "").setHoverText("延后10天").setExecuteCommand("/mplt set_sale more_end_at " + titleShop.getId() + " 10 " + page).build());
|
||||||
end_at.append(Button.create("转为常驻").setExecuteCommand("/mplt set_sale end_at " + titleShop.getId() + " -1:-1:-1 " + page).build());
|
end_at.append(Button.create("转为常驻").setExecuteCommand("/mplt set_sale end_at " + titleShop.getId() + " -1:-1:-1 " + page).build());
|
||||||
} else {
|
} else {
|
||||||
end_at.append(titleShop.getSaleEndAt().getYear() + "年" + titleShop.getSaleEndAt().getMonthValue() + "月" + titleShop.getSaleEndAt().getDayOfMonth() + "日");
|
end_at.append(titleShop.getSaleEndAt().getYear() + "年" + titleShop.getSaleEndAt().getMonthValue() + "月" + titleShop.getSaleEndAt().getDayOfMonth() + "日");
|
||||||
@ -120,8 +120,10 @@ public class SaleInfo {
|
|||||||
operate.append(Button.createGreen("购买").setExecuteCommand("/mplt buy_sale " + titleShop.getId()).build());
|
operate.append(Button.createGreen("购买").setExecuteCommand("/mplt buy_sale " + titleShop.getId()).build());
|
||||||
}
|
}
|
||||||
if (player.isOp()) {
|
if (player.isOp()) {
|
||||||
operate.append(Button.create("删除").setExecuteCommand("/mplt delete_sale " + args[1] + " " + page).build());
|
operate.append(Button.create("删除").setExecuteCommand("/mplt delete_sale " + args[1] + " b").build());
|
||||||
}
|
}
|
||||||
|
view.add(Line.create().append("---------------------"));
|
||||||
|
view.add(operate);
|
||||||
view.showOn(player, page);
|
view.showOn(player, page);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -56,23 +56,6 @@ public class DatabaseTables {
|
|||||||
");";
|
");";
|
||||||
MiniPlayerTitle.database.query(sql);
|
MiniPlayerTitle.database.query(sql);
|
||||||
|
|
||||||
sql = "INSERT INTO mplt_title (" +
|
|
||||||
"id, " +
|
|
||||||
"title, " +
|
|
||||||
"description," +
|
|
||||||
"enabled, " +
|
|
||||||
"created_at, " +
|
|
||||||
"updated_at " +
|
|
||||||
") VALUES (" +
|
|
||||||
"-1, " +
|
|
||||||
"'default', " +
|
|
||||||
"'default', " +
|
|
||||||
"TRUE, " +
|
|
||||||
"CURRENT_TIMESTAMP, " +
|
|
||||||
"CURRENT_TIMESTAMP " +
|
|
||||||
") ON CONFLICT (id) DO NOTHING;";
|
|
||||||
MiniPlayerTitle.database.query(sql);
|
|
||||||
|
|
||||||
MiniPlayerTitle.database.deleteColumnIfExists("mplt_title", "created_at");
|
MiniPlayerTitle.database.deleteColumnIfExists("mplt_title", "created_at");
|
||||||
MiniPlayerTitle.database.deleteColumnIfExists("mplt_title", "updated_at");
|
MiniPlayerTitle.database.deleteColumnIfExists("mplt_title", "updated_at");
|
||||||
MiniPlayerTitle.database.deleteColumnIfExists("mplt_title", "enabled");
|
MiniPlayerTitle.database.deleteColumnIfExists("mplt_title", "enabled");
|
||||||
@ -89,24 +72,39 @@ public class DatabaseTables {
|
|||||||
MiniPlayerTitle.database.addColumnIfNotExists("mplt_title_shop", "sale_end_at_y", "INTEGER NOT NULL DEFAULT -1");
|
MiniPlayerTitle.database.addColumnIfNotExists("mplt_title_shop", "sale_end_at_y", "INTEGER NOT NULL DEFAULT -1");
|
||||||
MiniPlayerTitle.database.addColumnIfNotExists("mplt_title_shop", "sale_end_at_m", "INTEGER NOT NULL DEFAULT -1");
|
MiniPlayerTitle.database.addColumnIfNotExists("mplt_title_shop", "sale_end_at_m", "INTEGER NOT NULL DEFAULT -1");
|
||||||
MiniPlayerTitle.database.addColumnIfNotExists("mplt_title_shop", "sale_end_at_d", "INTEGER NOT NULL DEFAULT -1");
|
MiniPlayerTitle.database.addColumnIfNotExists("mplt_title_shop", "sale_end_at_d", "INTEGER NOT NULL DEFAULT -1");
|
||||||
// convert sale_end_at(YYYYMMDD) to sale_end_at_y, sale_end_at_m, sale_end_at_d
|
// convert sale_end_at(YYYYMMDD) to sale_end_at_y, sale_end_at_m, sale_end_at_d if sale_end_at column exists
|
||||||
sql = "UPDATE mplt_title_shop SET " +
|
if (MiniPlayerTitle.database.isColumnExist("mplt_title_shop", "sale_end_at")) {
|
||||||
"sale_end_at_y = (sale_end_at / 10000), " +
|
sql = "UPDATE mplt_title_shop SET " +
|
||||||
"sale_end_at_m = (sale_end_at % 10000 / 100), " +
|
"sale_end_at_y = (sale_end_at / 10000), " +
|
||||||
"sale_end_at_d = (sale_end_at % 100) " +
|
"sale_end_at_m = (sale_end_at % 10000 / 100), " +
|
||||||
"WHERE sale_end_at != -1;";
|
"sale_end_at_d = (sale_end_at % 100) " +
|
||||||
MiniPlayerTitle.database.query(sql);
|
"WHERE sale_end_at != -1;";
|
||||||
|
MiniPlayerTitle.database.query(sql);
|
||||||
|
}
|
||||||
MiniPlayerTitle.database.deleteColumnIfExists("mplt_title_shop", "sale_end_at");
|
MiniPlayerTitle.database.deleteColumnIfExists("mplt_title_shop", "sale_end_at");
|
||||||
|
|
||||||
MiniPlayerTitle.database.addColumnIfNotExists("mplt_player_title", "expire_at_y", "INTEGER NOT NULL DEFAULT -1");
|
MiniPlayerTitle.database.addColumnIfNotExists("mplt_player_title", "expire_at_y", "INTEGER NOT NULL DEFAULT -1");
|
||||||
MiniPlayerTitle.database.addColumnIfNotExists("mplt_player_title", "expire_at_m", "INTEGER NOT NULL DEFAULT -1");
|
MiniPlayerTitle.database.addColumnIfNotExists("mplt_player_title", "expire_at_m", "INTEGER NOT NULL DEFAULT -1");
|
||||||
MiniPlayerTitle.database.addColumnIfNotExists("mplt_player_title", "expire_at_d", "INTEGER NOT NULL DEFAULT -1");
|
MiniPlayerTitle.database.addColumnIfNotExists("mplt_player_title", "expire_at_d", "INTEGER NOT NULL DEFAULT -1");
|
||||||
sql = "UPDATE mplt_player_title SET " +
|
if (MiniPlayerTitle.database.isColumnExist("mplt_player_title", "expire_at")) {
|
||||||
"expire_at_y = (expire_at / 10000), " +
|
sql = "UPDATE mplt_player_title SET " +
|
||||||
"expire_at_m = (expire_at % 10000 / 100), " +
|
"expire_at_y = (expire_at / 10000), " +
|
||||||
"expire_at_d = (expire_at % 100) " +
|
"expire_at_m = (expire_at % 10000 / 100), " +
|
||||||
"WHERE expire_at != -1;";
|
"expire_at_d = (expire_at % 100) " +
|
||||||
MiniPlayerTitle.database.query(sql);
|
"WHERE expire_at != -1;";
|
||||||
|
MiniPlayerTitle.database.query(sql);
|
||||||
|
}
|
||||||
MiniPlayerTitle.database.deleteColumnIfExists("mplt_player_title", "expire_at");
|
MiniPlayerTitle.database.deleteColumnIfExists("mplt_player_title", "expire_at");
|
||||||
|
|
||||||
|
sql = "INSERT INTO mplt_title (" +
|
||||||
|
"id, " +
|
||||||
|
"title, " +
|
||||||
|
"description " +
|
||||||
|
") VALUES (" +
|
||||||
|
"-1, " +
|
||||||
|
"'default', " +
|
||||||
|
"'default' " +
|
||||||
|
") ON CONFLICT (id) DO NOTHING;";
|
||||||
|
MiniPlayerTitle.database.query(sql);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user