From d815d73ed3c2645e6f396f8f19775ed2e24bf8e9 Mon Sep 17 00:00:00 2001 From: "lisai17@sina.com" Date: Tue, 3 Nov 2020 14:27:22 +0800 Subject: [PATCH] . --- .../main/java/com/cowr/common/oss/OSSKit.java | 10 ++++ .../cowr/ssjygl/overall/OverallService.java | 17 ++++++ .../ssjygl/stat/sale/OrderStatService.java | 4 +- .../ssjygl/overall/OverallController.java | 14 +++++ .../ssjygl/jobs/CleanOSSBakFileJob.java | 57 +++++++++++++++++++ .../com/cowr/service/ssjygl/main/Config.java | 9 +++ .../ssjygl/overall/OverallController.java | 7 +++ .../src/main/resources/dev/config.properties | 7 ++- .../src/main/resources/prod/config.properties | 6 +- 9 files changed, 127 insertions(+), 4 deletions(-) create mode 100644 ssjygl-xsx-service/src/main/java/com/cowr/service/ssjygl/jobs/CleanOSSBakFileJob.java diff --git a/ssjygl-xsx-common/src/main/java/com/cowr/common/oss/OSSKit.java b/ssjygl-xsx-common/src/main/java/com/cowr/common/oss/OSSKit.java index fc7d47f..309b761 100644 --- a/ssjygl-xsx-common/src/main/java/com/cowr/common/oss/OSSKit.java +++ b/ssjygl-xsx-common/src/main/java/com/cowr/common/oss/OSSKit.java @@ -1,6 +1,7 @@ package com.cowr.common.oss; import com.aliyun.oss.OSSClient; +import com.aliyun.oss.model.ObjectListing; import com.aliyun.oss.model.ObjectMetadata; import com.jfinal.kit.StrKit; import com.jfinal.log.Log; @@ -85,6 +86,15 @@ public class OSSKit { return true; } + public static ObjectListing list(String prefix){ + if (_ossClient == null) { + log.error("没有初始化 OSSMgrClient"); + return null; + } + + return _ossClient.listObjects(bucketName, prefix); + } + // public static void main(String[] args) { // new OSSPlugin("oss-cn-shenzhen.aliyuncs.com", "hsjygl").start(); // ObjectListing list = OSSKit.getCli().listObjects(new ListObjectsRequest("hsjygl").withMaxKeys(1000).withPrefix("file")); diff --git a/ssjygl-xsx-common/src/main/java/com/cowr/ssjygl/overall/OverallService.java b/ssjygl-xsx-common/src/main/java/com/cowr/ssjygl/overall/OverallService.java index 56c53bd..9801ba0 100644 --- a/ssjygl-xsx-common/src/main/java/com/cowr/ssjygl/overall/OverallService.java +++ b/ssjygl-xsx-common/src/main/java/com/cowr/ssjygl/overall/OverallService.java @@ -392,4 +392,21 @@ group by date OrderStateEnum.RECEIVED.getStateid(), DateTimeUtil.sdfhms.get().format(c.getTime())); } + + public List lastOrder(Integer supermarket_id) { + if (supermarket_id != null) { + return Db.find("select t.sn, t.customer_name, t.truck_license, t.weight, t.total_price, t.create_time, s.name supermarket_name from order_temp t\n" + + " left join supermarket s on s.id = t.supermarket_id\n" + + " where t.state = 5 \n" + + " and t.supermarket_id = ? \n" + + " order by t.create_time desc \n" + + " limit 30", supermarket_id); + } else { + return Db.find("select t.sn, t.customer_name, t.truck_license, t.weight, t.total_price, t.create_time, s.name supermarket_name from order_temp t\n" + + " left join supermarket s on s.id = t.supermarket_id\n" + + " where t.state = 5 \n" + + " order by t.create_time desc \n" + + " limit 30"); + } + } } diff --git a/ssjygl-xsx-common/src/main/java/com/cowr/ssjygl/stat/sale/OrderStatService.java b/ssjygl-xsx-common/src/main/java/com/cowr/ssjygl/stat/sale/OrderStatService.java index 57404b9..c15ff7f 100644 --- a/ssjygl-xsx-common/src/main/java/com/cowr/ssjygl/stat/sale/OrderStatService.java +++ b/ssjygl-xsx-common/src/main/java/com/cowr/ssjygl/stat/sale/OrderStatService.java @@ -1454,14 +1454,14 @@ public class OrderStatService { " where t.state = 5\n" + " and t.create_time like ? \n" + " group by t.supermarket_id\n" + - ") a on s.id = a.id", year + "%"); + ") a on s.id = a.id order by s.id", year + "%"); } else { list = Db.find("select s.name, a.* from supermarket s\n" + "left join (\n" + " select t.supermarket_id id, count(t.sn) cnt, sum(t.total_price) total_price, sum(weight) total_weight from order_temp t\n" + " where t.state = 5\n" + " group by t.supermarket_id\n" + - ") a on s.id = a.id"); + ") a on s.id = a.id order by s.id"); } Record hj = new Record(); diff --git a/ssjygl-xsx-local/src/main/java/com/cowr/local/ssjygl/overall/OverallController.java b/ssjygl-xsx-local/src/main/java/com/cowr/local/ssjygl/overall/OverallController.java index cc28f25..66464c4 100644 --- a/ssjygl-xsx-local/src/main/java/com/cowr/local/ssjygl/overall/OverallController.java +++ b/ssjygl-xsx-local/src/main/java/com/cowr/local/ssjygl/overall/OverallController.java @@ -70,4 +70,18 @@ public class OverallController extends Controller { renderJson(Result.success(OverallService.me.lastTempStat())); } + + public void lastOrder() { + Sysuser tokenuser = SysuserSyncService.me.getSysuserByToken(get("token")); + + // 是客户账户 + if (tokenuser == null || tokenuser.getEntityId() == null) { + renderJson(Result.noauth()); + return; + } + + Integer supermarket_id = getInt("supermarket_id", 0); + + renderJson(Result.success(OverallService.me.lastOrder(supermarket_id))); + } } \ No newline at end of file diff --git a/ssjygl-xsx-service/src/main/java/com/cowr/service/ssjygl/jobs/CleanOSSBakFileJob.java b/ssjygl-xsx-service/src/main/java/com/cowr/service/ssjygl/jobs/CleanOSSBakFileJob.java new file mode 100644 index 0000000..141d377 --- /dev/null +++ b/ssjygl-xsx-service/src/main/java/com/cowr/service/ssjygl/jobs/CleanOSSBakFileJob.java @@ -0,0 +1,57 @@ +package com.cowr.service.ssjygl.jobs; + +import com.aliyun.oss.model.OSSObjectSummary; +import com.aliyun.oss.model.ObjectListing; +import com.cowr.common.oss.OSSKit; +import com.jfinal.kit.Prop; +import com.jfinal.kit.PropKit; +import com.jfinal.log.Log; +import org.quartz.Job; +import org.quartz.JobExecutionContext; + +import java.util.ArrayList; +import java.util.List; + +public class CleanOSSBakFileJob implements Job { + private static Log log = Log.getLog(CleanOSSBakFileJob.class); + + public void execute(){ + try { + String[] prefixkeys = new String[]{"ssjy/xsx/dbbak/ssjy_xsx_", "ssjy/dbbak/ssjy"}; + List delkeys = new ArrayList<>(); + + for(String prefix : prefixkeys){ + ObjectListing ret = OSSKit.list(prefix); + List list = ret.getObjectSummaries(); + + for(OSSObjectSummary obj : list){ + if(obj.getLastModified().getTime() > 48L * 24 * 60 * 60 * 1000 ){ // 超过两天的 + delkeys.add(obj.getKey()); + } + } + } + + System.out.println(delkeys); + } catch (Exception e) { + log.error(e.getMessage(), e); + } + } + + @Override + public void execute(JobExecutionContext jobExecutionContext) { + execute(); + } + + public static void main(String[] args) { + Prop configprop = PropKit.use("dev/config.properties", "UTF-8"); + OSSKit.init(configprop.get("endpoint"), configprop.get("bucketName")); + // 系统启动时没有网络会 start 失败 + try { + OSSKit.start(); + } catch (Exception e) { + log.error(e.getMessage(), e); + } + + new CleanOSSBakFileJob().execute(); + } +} diff --git a/ssjygl-xsx-service/src/main/java/com/cowr/service/ssjygl/main/Config.java b/ssjygl-xsx-service/src/main/java/com/cowr/service/ssjygl/main/Config.java index 58291c5..26b41c5 100644 --- a/ssjygl-xsx-service/src/main/java/com/cowr/service/ssjygl/main/Config.java +++ b/ssjygl-xsx-service/src/main/java/com/cowr/service/ssjygl/main/Config.java @@ -3,6 +3,7 @@ package com.cowr.service.ssjygl.main; import com.alibaba.druid.filter.stat.StatFilter; import com.alibaba.druid.wall.WallFilter; import com.cowr.common.ctrl.HomeController; +import com.cowr.common.oss.OSSKit; import com.cowr.service.ssjygl.blacklist.BlacklistController; import com.cowr.service.ssjygl.cache.CacheController; import com.cowr.service.ssjygl.customer.CustomerController; @@ -281,6 +282,14 @@ public class Config extends JFinalConfig { if (SyncTaskService.me.isEnable()) { new ServerThread().start(); } + + OSSKit.init(configprop.get("endpoint"), configprop.get("bucketName")); + // 系统启动时没有网络会 start 失败 + try { + OSSKit.start(); + } catch (Exception e) { + log.error(e.getMessage(), e); + } } catch (Exception e) { log.error(e.getMessage(), e); } diff --git a/ssjygl-xsx-service/src/main/java/com/cowr/service/ssjygl/overall/OverallController.java b/ssjygl-xsx-service/src/main/java/com/cowr/service/ssjygl/overall/OverallController.java index 5597dcf..c50920e 100644 --- a/ssjygl-xsx-service/src/main/java/com/cowr/service/ssjygl/overall/OverallController.java +++ b/ssjygl-xsx-service/src/main/java/com/cowr/service/ssjygl/overall/OverallController.java @@ -1,6 +1,7 @@ package com.cowr.service.ssjygl.overall; import com.cowr.common.view.Result; +import com.cowr.model.Sysuser; import com.cowr.ssjygl.overall.OverallService; import com.jfinal.core.Controller; @@ -28,4 +29,10 @@ public class OverallController extends Controller { public void lastTempStat() { renderJson(Result.success(OverallService.me.lastTempStat())); } + + public void lastOrder() { + Integer supermarket_id = getInt("supermarket_id"); + + renderJson(Result.success(OverallService.me.lastOrder(supermarket_id))); + } } \ No newline at end of file diff --git a/ssjygl-xsx-service/src/main/resources/dev/config.properties b/ssjygl-xsx-service/src/main/resources/dev/config.properties index ff76f7e..380040e 100644 --- a/ssjygl-xsx-service/src/main/resources/dev/config.properties +++ b/ssjygl-xsx-service/src/main/resources/dev/config.properties @@ -9,4 +9,9 @@ start.trans.distance=5 #本地服务 和 云端服务 socket 通信 socketserver.enable=true -socketserver.port=21002 \ No newline at end of file +socketserver.port=21002 + + +endpoint=oss-cn-shenzhen.aliyuncs.com +#清理备份用 +bucketName=shbak \ No newline at end of file diff --git a/ssjygl-xsx-service/src/main/resources/prod/config.properties b/ssjygl-xsx-service/src/main/resources/prod/config.properties index ff76f7e..2fac9f3 100644 --- a/ssjygl-xsx-service/src/main/resources/prod/config.properties +++ b/ssjygl-xsx-service/src/main/resources/prod/config.properties @@ -9,4 +9,8 @@ start.trans.distance=5 #本地服务 和 云端服务 socket 通信 socketserver.enable=true -socketserver.port=21002 \ No newline at end of file +socketserver.port=21002 + +endpoint=oss-cn-shenzhen.aliyuncs.com +#清理备份用 +bucketName=shbak \ No newline at end of file