From 757882686126aa91516d266f999dde7cb7f59240 Mon Sep 17 00:00:00 2001 From: liupopo Date: Fri, 30 Jun 2023 18:15:31 +0800 Subject: [PATCH] =?UTF-8?q?=E5=9B=9E=E6=AC=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../table_create_customer-cashed.sql | 20 ++++++++--- .../src/views/daydataupload/cash/index.vue | 2 +- .../biz/csmcash/CsmCashGdService.java | 30 +++++++++++++---- .../customer/biz/csmcash/CsmCashLog.java | 33 +++++++++++++++++++ .../biz/csmcash/CsmCashLogMapper.java | 8 +++++ .../biz/csmcash/CsmCashLogService.java | 23 +++++++++++++ .../customer/biz/csmcash/CsmCashRest.java | 3 +- 7 files changed, 105 insertions(+), 14 deletions(-) create mode 100644 yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/csmcash/CsmCashLog.java create mode 100644 yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/csmcash/CsmCashLogMapper.java create mode 100644 yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/csmcash/CsmCashLogService.java diff --git a/docs/databases/table_create_customer-cashed.sql b/docs/databases/table_create_customer-cashed.sql index 202fa9d6..f3088242 100644 --- a/docs/databases/table_create_customer-cashed.sql +++ b/docs/databases/table_create_customer-cashed.sql @@ -4,11 +4,23 @@ CREATE TABLE `csm_cash_log` ( `sid` VARCHAR(64) NOT NULL COMMENT 'sid', `createTime` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '记录创建时间', `remarks` varchar(255) DEFAULT NULL COMMENT '备注信息', - `status` INT(11) NOT NULL DEFAULT '0' COMMENT '状态:0=f未核对,1=已核对(核对后数据不可再更改)', + `isEnable` INT(11) NOT NULL DEFAULT '0' COMMENT '是否有效:0=未生效(长期未生效的记录可删除),1=已生效', + `status` INT(11) NOT NULL DEFAULT '0' COMMENT '状态:0:未上传;1:上传完成正导入数据库;2:导入完成创建报表;3:报表完成创建Excel;4:完成', `dataDate` varchar(100) DEFAULT NULL COMMENT '日期', - `accountName` varchar(100) DEFAULT NULL COMMENT '账户名称', - `accountAmount` double(12,2) DEFAULT 0 COMMENT '金额', + + `fileFullPath` varchar(255) DEFAULT NULL COMMENT '文件完整路径', + `outFilePath` varchar(255) DEFAULT NULL COMMENT '汇总文件路径', + `fileUrl` varchar(1024) DEFAULT NULL COMMENT '文件下载地址', + `allNum` int(11) DEFAULT '0' COMMENT '总记录数', + `validNum` int(11) DEFAULT '0' COMMENT '有效记录数', + `durations` int(11) DEFAULT '0' COMMENT '程序运行时长', + `errRowNum` int(11) DEFAULT '0' COMMENT '出错的条数', + + `salesAmountYesterday` double(12,2) DEFAULT 0 COMMENT '昨日销售总计金额(元)', + `cashedAmountToday` double(12,2) DEFAULT 0 COMMENT '今日应回款金额(元)', + `cashedAmountTodayReal` double(12,2) DEFAULT 0 COMMENT '今日实际回款金额(元)', + `cashedAmountDifferent` double(12,2) DEFAULT 0 COMMENT '回款差额金额(元)', PRIMARY KEY (`id`) USING BTREE ) ENGINE=InnoDB COMMENT='每日回款核对日志' ; @@ -18,7 +30,7 @@ CREATE TABLE `csm_cash_gd` ( `sid` VARCHAR(64) NOT NULL COMMENT 'sid', `createTime` timestamp NULL DEFAULT CURRENT_TIMESTAMP COMMENT '记录创建时间', `remarks` varchar(255) DEFAULT NULL COMMENT '备注信息', - `status` INT(11) NOT NULL DEFAULT '0' COMMENT '状态:0=f未核对,1=已核对(核对后数据不可再更改)', + `status` INT(11) NOT NULL DEFAULT '0' COMMENT '状态:0=未核对,1=已核对(核对后数据不可再更改)', `dataDate` varchar(100) DEFAULT NULL COMMENT '日期', `accountName` varchar(100) DEFAULT NULL COMMENT '账户名称', diff --git a/supervise-customer-ui/src/views/daydataupload/cash/index.vue b/supervise-customer-ui/src/views/daydataupload/cash/index.vue index e8d22204..b5bece24 100644 --- a/supervise-customer-ui/src/views/daydataupload/cash/index.vue +++ b/supervise-customer-ui/src/views/daydataupload/cash/index.vue @@ -68,7 +68,7 @@ :on-progress="handleProgress" :on-success="handleSuccess" :file-list="fileList" - :auto-upload="true" + :auto-upload="false" :multiple="false" :limit="1" > diff --git a/yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/csmcash/CsmCashGdService.java b/yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/csmcash/CsmCashGdService.java index 306bcddf..6572fdad 100644 --- a/yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/csmcash/CsmCashGdService.java +++ b/yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/csmcash/CsmCashGdService.java @@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.yxt.common.base.config.component.FileUploadComponent; import com.yxt.common.core.result.FileUploadResult; import com.yxt.common.core.result.ResultBean; +import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.web.multipart.MultipartFile; @@ -14,22 +15,37 @@ import java.util.List; import java.util.Map; @Service -public class CsmCashGdService extends ServiceImpl { +public class CsmCashGdService extends ServiceImpl { @Autowired private FileUploadComponent fileUploadComponent; + @Autowired + private CsmCashLogService csmCashLogService; - public ResultBean uploadAnd2Db(MultipartFile file) { + public ResultBean uploadAnd2Db(MultipartFile file) { ResultBean rb = ResultBean.fireFail(); ResultBean fub = fileUploadComponent.uploadFile(file, "kcxxcx"); String filePath = fub.getData().getFilePath(); String fp = fileUploadComponent.getUploadPath() + filePath; - ExcelReader reader = ExcelUtil.getReader(fp); - List> readAll = reader.readAll(); - - - return rb.success(); + ExcelReader reader = ExcelUtil.getReader(fp); + List> readAll = reader.readAll(); + String dataDate; + try { + Map stringObjectMap = readAll.get(0); + String odate = (String) stringObjectMap.get("日期"); + if (StringUtils.isBlank(odate) || 19 != odate.length()) + return rb.setMsg("读取Excel文件数据异常!"); + dataDate = odate.substring(0, 10); + } catch (Exception e) { + e.printStackTrace(); + return rb.setMsg("解析36524导出的按日汇总对账报表出错,请检查格式"); + } + CsmCashLog currLog = csmCashLogService.fetchEnableOfDay(dataDate); + if(currLog.) + + CsmCashLog ccl = new CsmCashLog(); + return rb.success().setData(ccl); } } diff --git a/yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/csmcash/CsmCashLog.java b/yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/csmcash/CsmCashLog.java new file mode 100644 index 00000000..98aa4e68 --- /dev/null +++ b/yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/csmcash/CsmCashLog.java @@ -0,0 +1,33 @@ +package com.yxt.supervise.customer.biz.csmcash; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.yxt.common.core.domain.EntityWithId; + +import java.util.Date; + +@TableName("csm_cash_log") +public class CsmCashLog extends EntityWithId { + + private String sid; //sid + @JsonFormat( + pattern = "yyyy-MM-dd HH:mm:ss", + timezone = "GMT+8" + ) + private Date createTime = new Date(); // 记录创建时间 + private String remarks; //备注信息 + private int isEnable = 0; //是否有效:0=未生效(长期未生效的记录可删除),1=已生效 + private int status = 0; //状态:0:未上传;1:上传完成正导入数据库;2:导入完成创建报表;3:报表完成创建Excel;4:完成 + private String dataDate; //数据日期 + private String fileFullPath; //文件完整路径 + private String outFilePath; //汇总文件路径 + private String fileUrl; //文件下载地址 + private int allNum = 0; //总记录数 + private int validNum = 0; //有效记录数 + private int durations = 0; //程序运行时长 + private int errRowNum = 0; //出错的条数 + private double salesAmountYesterday = 0; //昨日销售总计金额(元) + private double cashedAmountToday = 0; //今日应回款金额(元) + private double cashedAmountTodayReal = 0; //今日实际回款金额(元) + private double cashedAmountDifferent = 0; //回款差额金额(元) +} diff --git a/yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/csmcash/CsmCashLogMapper.java b/yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/csmcash/CsmCashLogMapper.java new file mode 100644 index 00000000..4ad7875f --- /dev/null +++ b/yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/csmcash/CsmCashLogMapper.java @@ -0,0 +1,8 @@ +package com.yxt.supervise.customer.biz.csmcash; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface CsmCashLogMapper extends BaseMapper { +} diff --git a/yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/csmcash/CsmCashLogService.java b/yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/csmcash/CsmCashLogService.java new file mode 100644 index 00000000..4d3405b7 --- /dev/null +++ b/yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/csmcash/CsmCashLogService.java @@ -0,0 +1,23 @@ +package com.yxt.supervise.customer.biz.csmcash; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; + +import java.util.List; + +@Service +public class CsmCashLogService extends ServiceImpl { + public List listByDataDate(String dataDate) { + QueryWrapper qw = new QueryWrapper<>(); + qw.eq("dataDate", dataDate); + return baseMapper.selectList(qw); + } + + public CsmCashLog fetchEnableOfDay(String dataDate) { + QueryWrapper qw = new QueryWrapper<>(); + qw.eq("isEnable", 1); + qw.eq("dataDate", dataDate); + return baseMapper.selectOne(qw); + } +} diff --git a/yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/csmcash/CsmCashRest.java b/yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/csmcash/CsmCashRest.java index 3ffe961d..922faec1 100644 --- a/yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/csmcash/CsmCashRest.java +++ b/yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/csmcash/CsmCashRest.java @@ -1,7 +1,6 @@ package com.yxt.supervise.customer.biz.csmcash; import com.yxt.common.core.result.ResultBean; -import com.yxt.supervise.customer.api.gdinventorylog.GdInventoryLog; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; @@ -17,7 +16,7 @@ public class CsmCashRest { private CsmCashGdService csmCashGdService; @PostMapping("/uploadGdData") - public ResultBean uploadGdData(@RequestParam("file") MultipartFile file) { + public ResultBean uploadGdData(@RequestParam("file") MultipartFile file) { ResultBean rb = ResultBean.fireFail(); rb = csmCashGdService.uploadAnd2Db(file); return rb;