From c9ec75b63848d519ea85451e7844756021ebef8d Mon Sep 17 00:00:00 2001 From: luozukai Date: Tue, 14 May 2019 09:36:30 +0800 Subject: [PATCH] =?UTF-8?q?[=E8=A7=A3=E5=8D=95][=E6=B7=BB=E5=8A=A0][?= =?UTF-8?q?=E5=BC=80=E5=8F=91=E8=A7=A3=E5=8D=95api]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../WxMerchantTradeDailyController.java | 95 ++++++++++++++++++- .../controller/sys/HomeController.java | 6 +- .../WxMerchantTradeDailyController.java | 64 ++++++++++++- .../com/iformall/domain/po/MallUserInfo.java | 27 +++--- .../domain/po/WxMerchantTradeDaily.java | 25 +++++ .../resources/mapper/MallUserInfoMapper.xml | 9 +- .../mapper/WxMerchantTradeDailyMapper.xml | 4 +- .../controller/sys/HomeController.java | 6 +- 8 files changed, 211 insertions(+), 25 deletions(-) diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/datatower/WxMerchantTradeDailyController.java b/mallinkAdmin/src/main/java/com/iformall/controller/datatower/WxMerchantTradeDailyController.java index 5fcb884c8..6623099a7 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/datatower/WxMerchantTradeDailyController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/datatower/WxMerchantTradeDailyController.java @@ -4,19 +4,22 @@ import com.github.pagehelper.PageInfo; import com.iformall.annotation.SystemControllerLog; import com.iformall.common.ResultData; import com.iformall.controller.base.BaseController; +import com.iformall.domain.po.WxMerchantTradeDaily; import com.iformall.domain.vo.WxMerchantTradeDailyVo; import com.iformall.service.WxMerchantTradeDailyService; +import com.iformall.utils.DateUtils; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; +import org.apache.commons.collections.CollectionUtils; +import org.apache.commons.collections.map.LinkedMap; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.text.SimpleDateFormat; -import java.util.Calendar; -import java.util.Date; +import java.util.*; @RestController @RequestMapping("wxMerchantTradeDaily") @@ -84,4 +87,92 @@ public class WxMerchantTradeDailyController extends BaseController { + +//// /** +//// * 详情 +//// * @param wxMerchantTradeDaily +//// * @return +//// */ +//// @ApiOperation("详情") +//// @GetMapping("findById") +//// public ResultData findById(WxMerchantTradeDaily wxMerchantTradeDaily) { +//// logger.debug("[" + getIpAddr() + "] wxMerchantTradeDaily::findById"); +//// String tenantId = getTenantId(); +//// wxMerchantTradeDaily.setTenantId(tenantId); +//// return new ResultData(wxMerchantTradeDailyService.getById(wxMerchantTradeDaily.getId())); +//// } +//// +//// /** +//// * 保存或编辑 +//// * @param wxMerchantTradeDaily +//// * @return +//// */ +//// @ApiOperation("保存或编辑") +//// @PostMapping("saveOrUpdate") +//// public ResultData saveOrUpdate(@RequestBody WxMerchantTradeDaily wxMerchantTradeDaily) { +//// logger.debug("[" + getIpAddr() + "] wxMerchantTradeDaily::saveOrUpdate"); +//// wxMerchantTradeDaily.setTenantId(super.getTenantId()); +//// wxMerchantTradeDailyService.saveOrUpdate(wxMerchantTradeDaily); +//// return new ResultData(); +//// } +// +// /** +// * 列表 +// * +// * @param wxMerchantTradeDaily +// * @return +// */ +// @ApiImplicitParams({ +// @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true), +// @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true) +// }) +// public ResultData list(WxMerchantTradeDaily wxMerchantTradeDaily, Integer pageNum,Integer pageSize) throws Exception{ +// PageInfo pageInfo = wxMerchantTradeDailyService.listAsPage(wxMerchantTradeDaily, pageNum,pageSize); +// List tradeDailyList = pageInfo.getList(); +// SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd"); +// +// //todo:看下数据是不是每天一条解单 +// +// String startTime = wxMerchantTradeDaily.getMonth()+"-01"; +// String endTime = sd.format(DateUtils.getLastDayForMonth(sd.parse(startTime))); +// List days = DateUtils.getTjTimeList(startTime, endTime,"0"); +// +// Map resultMap = getMap(days); +// +// for (WxMerchantTradeDaily wx:tradeDailyList) { +// resultMap.put(sd.format(wx.getCreateDate()),wx); +// } +// +// List resultList = mapToList(resultMap); +// //判断第1条是否是当天 +// if(CollectionUtils.isNotEmpty(resultList)){ +// if(sd.format(resultList.get(0).getCreateDate()).equals(sd.format(new Date()))){ +// resultList.get(0).setIsToday(1); +// } +// } +// +// //todo如果是本月,截止日期应该是到当天,而不是整月 +// +// pageInfo.setList(resultList); +// return new ResultData(pageInfo); +// } +// +// public List mapToList(Map map){ +// List result = new ArrayList<>(); +// for (String k:map.keySet()) { +// result.add(map.get(k)); +// } +// return result; +// } +// +// public Map getMap(List days) throws Exception{ +// SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd"); +// Map map = new LinkedMap(); +// for (String d:days) { +// WxMerchantTradeDaily w = new WxMerchantTradeDaily(); +// w.setCreateDate(sd.parse(d)); +// map.put(d,w); +// } +// return map; +// } } diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/sys/HomeController.java b/mallinkAdmin/src/main/java/com/iformall/controller/sys/HomeController.java index 47e3799e8..e0ed5a8b6 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/sys/HomeController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/sys/HomeController.java @@ -166,7 +166,7 @@ public class HomeController extends BaseController { Map map = new HashMap(); map.put("username", info.getUsername()); - map.put("withWechat", info.getWithWechat()); + map.put("withWechat", info.getWithWechatFormat()); data.data = map; } catch (Exception e) { logger.error(e.getMessage()); @@ -259,7 +259,7 @@ public class HomeController extends BaseController { Map map = new HashMap(); map.put("username", info.getUsername()); - map.put("withWechat", info.getWithWechat()); + map.put("withWechat", info.getWithWechatFormat()); data.data = map; } catch(Exception e){ @@ -359,7 +359,7 @@ public class HomeController extends BaseController { Map map = new HashMap(); map.put("username", info.getUsername()); - map.put("withWechat", info.getWithWechat()); + map.put("withWechat", info.getWithWechatFormat()); return new ResultData(map); } catch (MallinkException e) { diff --git a/mallinkBApi/src/main/java/com/iformall/controller/WxMerchantTradeDailyController.java b/mallinkBApi/src/main/java/com/iformall/controller/WxMerchantTradeDailyController.java index e850deddd..cb362613c 100644 --- a/mallinkBApi/src/main/java/com/iformall/controller/WxMerchantTradeDailyController.java +++ b/mallinkBApi/src/main/java/com/iformall/controller/WxMerchantTradeDailyController.java @@ -1,17 +1,27 @@ package com.iformall.controller; +import com.github.pagehelper.PageInfo; import com.iformall.common.ResultData; import com.iformall.domain.po.WxMerchantTradeDaily; import com.iformall.service.WxMerchantTradeDailyService; +import com.iformall.utils.DateUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; +import org.apache.commons.collections.CollectionUtils; +import org.apache.commons.collections.map.LinkedMap; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; +import java.text.SimpleDateFormat; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; +import java.util.Map; + @RestController @RequestMapping("/api/wxMerchantTradeDaily") @Api(description = "解单相关接口") @@ -71,14 +81,62 @@ public class WxMerchantTradeDailyController extends BaseController { /** * 列表 + * * @param wxMerchantTradeDaily * @return */ @ApiImplicitParams({ @ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true), - @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true)}) - public ResultData list(WxMerchantTradeDaily wxMerchantTradeDaily, Integer pageNum, Integer pageSize) { - return new ResultData(wxMerchantTradeDailyService.listAsPage(wxMerchantTradeDaily, pageNum,pageSize)); + @ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true) + }) + public ResultData list(WxMerchantTradeDaily wxMerchantTradeDaily, Integer pageNum,Integer pageSize) throws Exception{ + PageInfo pageInfo = wxMerchantTradeDailyService.listAsPage(wxMerchantTradeDaily, pageNum,pageSize); + List tradeDailyList = pageInfo.getList(); + SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd"); + + //todo:看下数据是不是每天一条解单 + + String startTime = wxMerchantTradeDaily.getMonth()+"-01"; + String endTime = sd.format(DateUtils.getLastDayForMonth(sd.parse(startTime))); + List days = DateUtils.getTjTimeList(startTime, endTime,"0"); + + Map resultMap = getMap(days); + + for (WxMerchantTradeDaily wx:tradeDailyList) { + resultMap.put(sd.format(wx.getCreateDate()),wx); + } + + List resultList = mapToList(resultMap); + //判断第1条是否是当天 + if(CollectionUtils.isNotEmpty(resultList)){ + if(sd.format(resultList.get(0).getCreateDate()).equals(sd.format(new Date()))){ + resultList.get(0).setIsToday(1); + } + } + + //todo如果是本月,截止日期应该是到当天,而不是整月 + + pageInfo.setList(resultList); + return new ResultData(pageInfo); + } + + public List mapToList(Map map){ + List result = new ArrayList<>(); + for (String k:map.keySet()) { + result.add(map.get(k)); + } + return result; + } + + public Map getMap(List days) throws Exception{ + SimpleDateFormat sd = new SimpleDateFormat("yyyy-MM-dd"); + Map map = new LinkedMap(); + for (String d:days) { + WxMerchantTradeDaily w = new WxMerchantTradeDaily(); + w.setCreateDate(sd.parse(d)); + map.put(d,w); + } + return map; } } diff --git a/mallinkService/src/main/java/com/iformall/domain/po/MallUserInfo.java b/mallinkService/src/main/java/com/iformall/domain/po/MallUserInfo.java index 44c5b7d46..be6ea7887 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/MallUserInfo.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/MallUserInfo.java @@ -16,9 +16,8 @@ import java.util.List; @Table(name = "mall_user_info") @Data -public class MallUserInfo implements Serializable { - private static final long serialVersionUID = 1L; - +public class MallUserInfo extends BaseEntity { + @Id protected Long id; @@ -34,13 +33,13 @@ public class MallUserInfo implements Serializable { public void setId(Long id) { this.id = id; } - + + @Override public String getSortColumns() { - return sortColumns; + super.setSortColumns(this.sortColumns); + return super.getSortColumns(); } - - /**租户ID**/ @io.swagger.annotations.ApiModelProperty(value="租户ID",name="tenantId") private String tenantId; @@ -227,14 +226,18 @@ public class MallUserInfo implements Serializable { } public Integer getWithWechat() { - if(StringUtils.isNotBlank(this.webOpenId)) { - this.withWechat = EnumUserWechat.HAD.getCode(); - } else { - this.withWechat = EnumUserWechat.NO.getCode(); - } return this.withWechat; } + public Integer getWithWechatFormat() { + if(StringUtils.isNotBlank(this.webOpenId)) { + this.withWechat = EnumUserWechat.HAD.getCode(); + } else { + this.withWechat = EnumUserWechat.NO.getCode(); + } + return this.withWechat; + } + public void setWithWechat(Integer withWechat) { this.withWechat = withWechat; } diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxMerchantTradeDaily.java b/mallinkService/src/main/java/com/iformall/domain/po/WxMerchantTradeDaily.java index 15f059aed..747005a83 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxMerchantTradeDaily.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxMerchantTradeDaily.java @@ -67,6 +67,31 @@ public class WxMerchantTradeDaily implements Serializable { /*凭证**/ @io.swagger.annotations.ApiModelProperty(value = "凭证", name = "proof") private String proof; + /*月份*/ + @io.swagger.annotations.ApiModelProperty(value = "月份如2019-05", name = "month") + @Transient + private String month; + + /*是否是当天*/ + @io.swagger.annotations.ApiModelProperty(value = "是否是当天 1是", name = "isToday") + @Transient + private Integer isToday; + + public Integer getIsToday() { + return isToday; + } + + public void setIsToday(Integer isToday) { + this.isToday = isToday; + } + + public String getMonth() { + return month; + } + + public void setMonth(String month) { + this.month = month; + } public String getTradeCount() { return tradeCount; diff --git a/mallinkService/src/main/resources/mapper/MallUserInfoMapper.xml b/mallinkService/src/main/resources/mapper/MallUserInfoMapper.xml index 4619d6eee..1da604209 100644 --- a/mallinkService/src/main/resources/mapper/MallUserInfoMapper.xml +++ b/mallinkService/src/main/resources/mapper/MallUserInfoMapper.xml @@ -84,7 +84,14 @@ and `email` = #{email} - + + + and `web_open_id` is not null + + + and `web_open_id` is null + + and id in diff --git a/mallinkService/src/main/resources/mapper/WxMerchantTradeDailyMapper.xml b/mallinkService/src/main/resources/mapper/WxMerchantTradeDailyMapper.xml index 938ee87ac..99cfc906f 100644 --- a/mallinkService/src/main/resources/mapper/WxMerchantTradeDailyMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxMerchantTradeDailyMapper.xml @@ -56,7 +56,9 @@ and `report_date` = #{reportDate} - + + + and date_format(create_date,'%Y-%m')=#{month} and id in diff --git a/mallinkSysAdmin/src/main/java/com/iformall/controller/sys/HomeController.java b/mallinkSysAdmin/src/main/java/com/iformall/controller/sys/HomeController.java index 47e3799e8..e0ed5a8b6 100644 --- a/mallinkSysAdmin/src/main/java/com/iformall/controller/sys/HomeController.java +++ b/mallinkSysAdmin/src/main/java/com/iformall/controller/sys/HomeController.java @@ -166,7 +166,7 @@ public class HomeController extends BaseController { Map map = new HashMap(); map.put("username", info.getUsername()); - map.put("withWechat", info.getWithWechat()); + map.put("withWechat", info.getWithWechatFormat()); data.data = map; } catch (Exception e) { logger.error(e.getMessage()); @@ -259,7 +259,7 @@ public class HomeController extends BaseController { Map map = new HashMap(); map.put("username", info.getUsername()); - map.put("withWechat", info.getWithWechat()); + map.put("withWechat", info.getWithWechatFormat()); data.data = map; } catch(Exception e){ @@ -359,7 +359,7 @@ public class HomeController extends BaseController { Map map = new HashMap(); map.put("username", info.getUsername()); - map.put("withWechat", info.getWithWechat()); + map.put("withWechat", info.getWithWechatFormat()); return new ResultData(map); } catch (MallinkException e) {