From 9589da1559c710c5f29ddd337c3e31c1820bcc14 Mon Sep 17 00:00:00 2001 From: gongbiao Date: Wed, 10 Jul 2019 10:13:39 +0800 Subject: [PATCH 1/8] =?UTF-8?q?=E3=80=90BUG][=E4=BF=AE=E6=94=B9][=E3=80=90?= =?UTF-8?q?ID1002033=E3=80=91=E6=B5=8B=E8=AF=95=E7=8E=AF=E5=A2=83-?= =?UTF-8?q?=E8=B4=A6=E5=8D=95=E7=AE=A1=E7=90=86-=E7=BC=B4=E6=AC=BE?= =?UTF-8?q?=E8=AE=B0=E5=BD=95=E4=B8=8B=E6=98=8E=E7=BB=86=E5=AF=BC=E5=85=A5?= =?UTF-8?q?=E8=B4=A6=E5=8D=95=E9=9C=80=E8=A6=81=E6=B7=BB=E5=8A=A0=E9=87=91?= =?UTF-8?q?=E9=92=B1=E6=98=8E=E7=BB=86]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/WxBillAllServiceImpl.java | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxBillAllServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxBillAllServiceImpl.java index b567bd70b..076ba14a5 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxBillAllServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxBillAllServiceImpl.java @@ -985,7 +985,7 @@ public class WxBillAllServiceImpl implements WxBillAllService { rent.setPayDate(bill.getPayDate()); rent.setReceiveDate(bill.getReceiveDate()); wxBillRentMapper.updateByPrimaryKey(rent); - addActionImport(rent.getId(), bill.getPayWay(), bill.getPayDate(), user); + addActionImport(rent.getId(), bill.getPayWay(), bill.getPayDate(), user, bill.getPayStr()); } } else if (billType.equals(EnumBillExcelTemplate.SHOP_PROPERTY.getCode()) || billType.equals(EnumBillExcelTemplate.POINT_PROPERTY.getCode())) { WxBillProperty propertyQuery = new WxBillProperty(); @@ -1010,7 +1010,7 @@ public class WxBillAllServiceImpl implements WxBillAllService { property.setPayDate(bill.getPayDate()); property.setReceiveDate(bill.getReceiveDate()); wxBillPropertyMapper.updateByPrimaryKey(property); - addActionImport(property.getId(), bill.getPayWay(), bill.getPayDate(), user); + addActionImport(property.getId(), bill.getPayWay(), bill.getPayDate(), user, pay); } } else if (billType.equals(EnumBillExcelTemplate.DAILY.getCode())) { WxBillDaily dailyQuery = new WxBillDaily(); @@ -1040,7 +1040,7 @@ public class WxBillAllServiceImpl implements WxBillAllService { daily.setPayDate(bill.getPayDate()); daily.setReceiveDate(bill.getReceiveDate()); wxBillDailyMapper.updateByPrimaryKey(daily); - addActionImport(daily.getId(), bill.getPayWay(), bill.getPayDate(), user); + addActionImport(daily.getId(), bill.getPayWay(), bill.getPayDate(), user, pay); } } else { WxMerchantShop wxMerchantShop = new WxMerchantShop(); @@ -1071,7 +1071,7 @@ public class WxBillAllServiceImpl implements WxBillAllService { daily.setStarttime(bill.getStarttime()); daily.setEndtime(bill.getEndtime()); wxBillDailyMapper.insertSelective(daily); - addActionImport(daily.getId(), bill.getPayWay(), bill.getPayDate(), user); + addActionImport(daily.getId(), bill.getPayWay(), bill.getPayDate(), user, pay); } } } else if (billType.equals(EnumBillExcelTemplate.OTHER.getCode())) { @@ -1095,7 +1095,7 @@ public class WxBillAllServiceImpl implements WxBillAllService { other.setPayDate(bill.getPayDate()); other.setReceiveDate(bill.getReceiveDate()); wxBillOtherMapper.updateByPrimaryKey(other); - addActionImport(other.getId(), bill.getPayWay(), bill.getPayDate(), user); + addActionImport(other.getId(), bill.getPayWay(), bill.getPayDate(), user, pay); } } else { WxMerchantShop wxMerchantShop = new WxMerchantShop(); @@ -1127,7 +1127,7 @@ public class WxBillAllServiceImpl implements WxBillAllService { other.setStarttime(bill.getStarttime()); other.setEndtime(bill.getEndtime()); wxBillOtherMapper.insertSelective(other); - addActionImport(other.getId(), bill.getPayWay(), bill.getPayDate(), user); + addActionImport(other.getId(), bill.getPayWay(), bill.getPayDate(), user, pay); } } } else if (billType.equals(EnumBillExcelTemplate.OTHER_DEPOSIT.getCode())) { @@ -1149,7 +1149,7 @@ public class WxBillAllServiceImpl implements WxBillAllService { otherDeposit.setPayDate(bill.getPayDate()); otherDeposit.setReceiveDate(bill.getReceiveDate()); wxBillOtherDepositMapper.updateByPrimaryKey(otherDeposit); - addActionImport(otherDeposit.getId(), bill.getPayWay(), bill.getPayDate(), user); + addActionImport(otherDeposit.getId(), bill.getPayWay(), bill.getPayDate(), user, pay); } } else { WxMerchantShop wxMerchantShop = new WxMerchantShop(); @@ -1182,7 +1182,7 @@ public class WxBillAllServiceImpl implements WxBillAllService { otherDeposit.setStarttime(bill.getStarttime()); otherDeposit.setEndtime(bill.getEndtime()); wxBillOtherDepositMapper.insertSelective(otherDeposit); - addActionImport(otherDeposit.getId(), bill.getPayWay(), bill.getPayDate(), user); + addActionImport(otherDeposit.getId(), bill.getPayWay(), bill.getPayDate(), user, pay); } } } else { @@ -1193,11 +1193,11 @@ public class WxBillAllServiceImpl implements WxBillAllService { stringRedisTemplate.expire(importKey, 10, TimeUnit.SECONDS); } - public void addActionImport(Long billId, String payWay, Date payDate, MallUserInfo user) { + public void addActionImport(Long billId, String payWay, Date payDate, MallUserInfo user, String pay) { WxBillAction wxBillAction = new WxBillAction(); wxBillAction.setBillId(billId); String details = StringUtils.isEmpty(payWay) ? "其他缴费" : payWay + "缴费"; - wxBillAction.setDetails(details); + wxBillAction.setDetails(details + pay + "元"); wxBillAction.setAction(EnumBillAction.IMPORT_PAY.getCode()); wxBillAction.setPayDate(payDate); wxBillActionService.modifyBill(wxBillAction, user); From 5760b1e1e56e085448b7b15c52c63e24bcacde22 Mon Sep 17 00:00:00 2001 From: luozukai Date: Wed, 10 Jul 2019 10:59:15 +0800 Subject: [PATCH 2/8] =?UTF-8?q?[=E7=BB=9F=E8=AE=A1][=E4=BF=AE=E6=94=B9][?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=E4=B8=9A=E6=80=81=E5=88=86=E6=9E=90=E5=88=97?= =?UTF-8?q?=E8=A1=A8]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/iformall/domain/po/WxBusiness.java | 5 +++ .../iformall/service/WxBusinessService.java | 4 --- .../service/impl/WxBusinessServiceImpl.java | 34 ++++++++++++++++++- .../resources/mapper/WxBusinessMapper.xml | 8 +++-- 4 files changed, 44 insertions(+), 7 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxBusiness.java b/mallinkService/src/main/java/com/iformall/domain/po/WxBusiness.java index 62a95efdf..bd57e0f65 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxBusiness.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxBusiness.java @@ -41,6 +41,11 @@ public class WxBusiness implements Serializable { @Transient private String tenantId; + @Transient + private Integer limitStart; + @Transient + private Integer limitEnd; + public static enum Field { Id_ASC("`id` ASC"),Id_DESC("`id` DESC") diff --git a/mallinkService/src/main/java/com/iformall/service/WxBusinessService.java b/mallinkService/src/main/java/com/iformall/service/WxBusinessService.java index 792bb815d..00a95a37a 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxBusinessService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxBusinessService.java @@ -3,10 +3,6 @@ package com.iformall.service; import com.github.pagehelper.PageInfo; import com.iformall.common.ResultData; import com.iformall.domain.po.WxBusiness; -import org.springframework.web.bind.annotation.ModelAttribute; - -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; import java.util.List; public interface WxBusinessService { diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxBusinessServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxBusinessServiceImpl.java index 23cd05cfc..9e5f09641 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxBusinessServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxBusinessServiceImpl.java @@ -4,9 +4,11 @@ import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.iformall.common.ResultData; import com.iformall.domain.po.WxBusiness; +import com.iformall.domain.po.WxCoupon; import com.iformall.enums.EnumBusinessFilter; import com.iformall.mapper.WxBusinessMapper; import com.iformall.service.WxBusinessService; +import org.apache.commons.collections.CollectionUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -14,7 +16,9 @@ import org.springframework.stereotype.Service; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import java.util.ArrayList; import java.util.List; +import java.util.Map; @Service public class WxBusinessServiceImpl implements WxBusinessService { @@ -59,7 +63,35 @@ public class WxBusinessServiceImpl implements WxBusinessService { @Override public ResultData devoteList(WxBusiness wxBusiness, Integer pageNum, Integer pageSize) { - return new ResultData(PageHelper.startPage(pageNum, pageSize).doSelectPageInfo(() -> wxBusinessMapper.devoteList(wxBusiness))); + wxBusiness.setLimitStart(0); + wxBusiness.setLimitEnd(Integer.MAX_VALUE); + List totalList = wxBusinessMapper.devoteList(wxBusiness); + if(CollectionUtils.isEmpty(totalList)){ + PageHelper.startPage(pageNum, pageSize); + PageInfo>> pageInfo = new PageInfo(new ArrayList()); + pageInfo.setPages(0); + pageInfo.setTotal(0); + PageHelper.clearPage(); + return new ResultData(pageInfo); + } + + int total = totalList.size(); + int pages; + if(total % pageSize == 0){ + pages = total / pageSize; + }else{ + pages = total / pageSize +1; + } + wxBusiness.setLimitStart((pageNum -1) * pageSize); + wxBusiness.setLimitEnd(pageSize); + List> list = wxBusinessMapper.devoteList(wxBusiness); + + PageHelper.startPage(pageNum, pageSize); + PageInfo>> pageInfo = new PageInfo(list); + pageInfo.setPages(pages); + pageInfo.setTotal(total); + PageHelper.clearPage(); + return new ResultData(pageInfo); } } diff --git a/mallinkService/src/main/resources/mapper/WxBusinessMapper.xml b/mallinkService/src/main/resources/mapper/WxBusinessMapper.xml index 018315781..a4b80a443 100644 --- a/mallinkService/src/main/resources/mapper/WxBusinessMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxBusinessMapper.xml @@ -163,7 +163,7 @@ round( (select if(sum(mtd.trade_amt) is null,0,sum(mtd.trade_amt)) from wx_merchant m - left join wx_merchant_trade_daily mtd on mtd.merchant_id = m.id where m.business_id = 9 and m.tenant_id=#{tenantId} and mtd.create_date between #{startdate} and #{enddate}) + left join wx_merchant_trade_daily mtd on mtd.merchant_id = m.id where m.business_id = #{id} and m.tenant_id=#{tenantId} and mtd.create_date between #{startdate} and #{enddate}) / (select if(sum(ws.operation_area) is null,0,sum(ws.operation_area)) from wx_merchant m @@ -178,7 +178,7 @@ round( (select if(sum(mtd.trade_amt) is null,0,sum(mtd.trade_amt)) from wx_merchant m - left join wx_merchant_trade_daily mtd on mtd.merchant_id = m.id where m.business_id = 9 and m.tenant_id=#{tenantId} and mtd.create_date between #{startdate} and #{enddate}) + left join wx_merchant_trade_daily mtd on mtd.merchant_id = m.id where m.business_id = #{id} and m.tenant_id=#{tenantId} and mtd.create_date between #{startdate} and #{enddate}) / (select if(sum(ws.operation_area) is null,0,sum(ws.operation_area)) from wx_merchant m @@ -198,6 +198,10 @@ and mtd.create_date between #{startdate} and #{enddate} group by m.id order by devoteRate desc + + + limit #{limitStart},#{limitEnd} + From a11e1dfc765c63d8113ed9209ba02ed09c27ad44 Mon Sep 17 00:00:00 2001 From: gongbiao Date: Wed, 10 Jul 2019 11:26:33 +0800 Subject: [PATCH 3/8] =?UTF-8?q?=E3=80=90BUG][=E4=BF=AE=E6=94=B9][=E3=80=90?= =?UTF-8?q?ID1002033=E3=80=91=E6=B5=8B=E8=AF=95=E7=8E=AF=E5=A2=83-?= =?UTF-8?q?=E8=B4=A6=E5=8D=95=E7=AE=A1=E7=90=86-=E7=BC=B4=E6=AC=BE?= =?UTF-8?q?=E8=AE=B0=E5=BD=95=E4=B8=8B=E6=98=8E=E7=BB=86=E5=AF=BC=E5=85=A5?= =?UTF-8?q?=E8=B4=A6=E5=8D=95=E9=9C=80=E8=A6=81=E6=B7=BB=E5=8A=A0=E9=87=91?= =?UTF-8?q?=E9=92=B1=E6=98=8E=E7=BB=86]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/WxBillAllServiceImpl.java | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxBillAllServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxBillAllServiceImpl.java index 076ba14a5..51145df99 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxBillAllServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxBillAllServiceImpl.java @@ -1010,7 +1010,7 @@ public class WxBillAllServiceImpl implements WxBillAllService { property.setPayDate(bill.getPayDate()); property.setReceiveDate(bill.getReceiveDate()); wxBillPropertyMapper.updateByPrimaryKey(property); - addActionImport(property.getId(), bill.getPayWay(), bill.getPayDate(), user, pay); + addActionImport(property.getId(), bill.getPayWay(), bill.getPayDate(), user, bill.getPayStr()); } } else if (billType.equals(EnumBillExcelTemplate.DAILY.getCode())) { WxBillDaily dailyQuery = new WxBillDaily(); @@ -1040,7 +1040,7 @@ public class WxBillAllServiceImpl implements WxBillAllService { daily.setPayDate(bill.getPayDate()); daily.setReceiveDate(bill.getReceiveDate()); wxBillDailyMapper.updateByPrimaryKey(daily); - addActionImport(daily.getId(), bill.getPayWay(), bill.getPayDate(), user, pay); + addActionImport(daily.getId(), bill.getPayWay(), bill.getPayDate(), user, bill.getPayStr()); } } else { WxMerchantShop wxMerchantShop = new WxMerchantShop(); @@ -1071,7 +1071,7 @@ public class WxBillAllServiceImpl implements WxBillAllService { daily.setStarttime(bill.getStarttime()); daily.setEndtime(bill.getEndtime()); wxBillDailyMapper.insertSelective(daily); - addActionImport(daily.getId(), bill.getPayWay(), bill.getPayDate(), user, pay); + addActionImport(daily.getId(), bill.getPayWay(), bill.getPayDate(), user, bill.getPayStr()); } } } else if (billType.equals(EnumBillExcelTemplate.OTHER.getCode())) { @@ -1095,7 +1095,7 @@ public class WxBillAllServiceImpl implements WxBillAllService { other.setPayDate(bill.getPayDate()); other.setReceiveDate(bill.getReceiveDate()); wxBillOtherMapper.updateByPrimaryKey(other); - addActionImport(other.getId(), bill.getPayWay(), bill.getPayDate(), user, pay); + addActionImport(other.getId(), bill.getPayWay(), bill.getPayDate(), user, bill.getPayStr()); } } else { WxMerchantShop wxMerchantShop = new WxMerchantShop(); @@ -1127,7 +1127,7 @@ public class WxBillAllServiceImpl implements WxBillAllService { other.setStarttime(bill.getStarttime()); other.setEndtime(bill.getEndtime()); wxBillOtherMapper.insertSelective(other); - addActionImport(other.getId(), bill.getPayWay(), bill.getPayDate(), user, pay); + addActionImport(other.getId(), bill.getPayWay(), bill.getPayDate(), user, bill.getPayStr()); } } } else if (billType.equals(EnumBillExcelTemplate.OTHER_DEPOSIT.getCode())) { @@ -1149,7 +1149,7 @@ public class WxBillAllServiceImpl implements WxBillAllService { otherDeposit.setPayDate(bill.getPayDate()); otherDeposit.setReceiveDate(bill.getReceiveDate()); wxBillOtherDepositMapper.updateByPrimaryKey(otherDeposit); - addActionImport(otherDeposit.getId(), bill.getPayWay(), bill.getPayDate(), user, pay); + addActionImport(otherDeposit.getId(), bill.getPayWay(), bill.getPayDate(), user, bill.getPayStr()); } } else { WxMerchantShop wxMerchantShop = new WxMerchantShop(); @@ -1182,7 +1182,7 @@ public class WxBillAllServiceImpl implements WxBillAllService { otherDeposit.setStarttime(bill.getStarttime()); otherDeposit.setEndtime(bill.getEndtime()); wxBillOtherDepositMapper.insertSelective(otherDeposit); - addActionImport(otherDeposit.getId(), bill.getPayWay(), bill.getPayDate(), user, pay); + addActionImport(otherDeposit.getId(), bill.getPayWay(), bill.getPayDate(), user, bill.getPayStr()); } } } else { From dbf1ab25b61aa89cdd9c3c2d8eac4377e9c04b35 Mon Sep 17 00:00:00 2001 From: Stormeye Wu Date: Wed, 10 Jul 2019 11:27:14 +0800 Subject: [PATCH 4/8] =?UTF-8?q?[=E7=9F=AD=E4=BF=A1][=E4=BF=AE=E6=94=B9]:?= =?UTF-8?q?=E7=9F=AD=E4=BF=A1=E9=AA=8C=E8=AF=81=E7=A0=81=E8=B6=85=E9=99=90?= =?UTF-8?q?=E6=A3=80=E6=9F=A5=E5=8E=BB=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../iformall/service/msg/impl/SendSmsServiceImpl.java | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/service/msg/impl/SendSmsServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/msg/impl/SendSmsServiceImpl.java index af448d808..422929f01 100644 --- a/mallinkService/src/main/java/com/iformall/service/msg/impl/SendSmsServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/msg/impl/SendSmsServiceImpl.java @@ -90,16 +90,6 @@ public class SendSmsServiceImpl implements MsgSendService { wxMsgValidationcode.setCode(record.getDynamicContentMap().get("s6")); } - // 检查是否超限 - WxMsgLimit msgLimit = new WxMsgLimit(); - msgLimit.setTenantId(record.getTenantId()); - msgLimit.setType(EnumMsgLimitType.SMS_VALID.getCode()); - msgLimit.setLimitId(phone); - if(wxMsgLimitService.checkIsLimit(msgLimit)) { - logger.error("用户短信超限:" + phone); - return; - } - String notifyUrl = wxMsgConfig.getNotifyurl(); Integer modelId = wxMsgValidationcodeModel.getModelId(); String result = WiwideUtil.sendMsg(secret, bid, publickey, phone, signature, msg, notifyUrl, EnumVerifyCode.YES.getCode().toString(), modelId); From 880eb12370befba30036018b2fdc078c8cd31d0f Mon Sep 17 00:00:00 2001 From: Stormeye Wu Date: Wed, 10 Jul 2019 12:28:20 +0800 Subject: [PATCH 5/8] =?UTF-8?q?[=E6=94=B6=E9=93=B6=E5=8F=B0][=E4=BF=AE?= =?UTF-8?q?=E6=94=B9]:=E6=96=B0=E7=94=A8=E6=88=B7=E6=B7=BB=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/iformall/service/impl/WxPayOrderServiceImpl.java | 2 -- 1 file changed, 2 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxPayOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxPayOrderServiceImpl.java index ee1c622d3..b6dc241cd 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxPayOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxPayOrderServiceImpl.java @@ -1270,8 +1270,6 @@ public class WxPayOrderServiceImpl implements WxPayOrderService { userQ.setAppId(appinfo.getAppId()); WxCUser user1 = wxCUserMapper.findByOpenId(userQ); if (user1 == null) { - final IdWorker idWorker = IdWorker.get(); - userQ.setId(idWorker.nextId()); userQ.setCreateDate(curDate); userQ.setUpdateDate(curDate); if ("N".equalsIgnoreCase(isSubscribe)) { From bcc1a61995918fdeed941754c7fdb023d0ced649 Mon Sep 17 00:00:00 2001 From: hupeng Date: Wed, 10 Jul 2019 13:00:51 +0800 Subject: [PATCH 6/8] =?UTF-8?q?[=E7=94=B5=E8=A1=A8][=E4=BF=AE=E6=94=B9]:?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E7=94=B5=E8=A1=A8=E7=94=B5=E9=87=8F=E8=8E=B7?= =?UTF-8?q?=E5=8F=96=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../device/KwMerchantMeterController.java | 7 ++ .../device/KwMeterDataController.java | 22 ++++++ .../iformall/domain/dto/KwMeterDataDto.java | 9 +++ .../iformall/mapper/KwMeterDataMapper.java | 2 + .../service/kw/KwMerchantMeterService.java | 2 + .../service/kw/KwMeterDataService.java | 2 + .../kw/impl/KwMerchantMeterServiceImpl.java | 10 +++ .../kw/impl/KwMeterDataServiceImpl.java | 52 +++++++++++++ .../resources/mapper/KwMeterDataMapper.xml | 73 ++++++++++++++++++- 9 files changed, 178 insertions(+), 1 deletion(-) diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/device/KwMerchantMeterController.java b/mallinkAdmin/src/main/java/com/iformall/controller/device/KwMerchantMeterController.java index 588dc14bd..d4fea89bb 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/device/KwMerchantMeterController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/device/KwMerchantMeterController.java @@ -6,10 +6,12 @@ import com.iformall.common.Result; import com.iformall.common.ResultData; import com.iformall.controller.base.BaseController; +import com.iformall.domain.dto.KwMeterDataDto; import com.iformall.domain.po.KwMerchantMeter; import com.iformall.enums.EnumMerchantMeterStatus; import com.iformall.enums.EnumMerchantStatus; import com.iformall.service.kw.KwMerchantMeterService; +import com.iformall.service.kw.KwMeterDataService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; @@ -31,6 +33,8 @@ public class KwMerchantMeterController extends BaseController { @Autowired private KwMerchantMeterService kwMerchantMeterService; + @Autowired + private KwMeterDataService kwMeterDataService; @ApiOperation("设备列表") @GetMapping("list") @@ -89,4 +93,7 @@ public class KwMerchantMeterController extends BaseController { return new ResultData(); } + + + } diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/device/KwMeterDataController.java b/mallinkAdmin/src/main/java/com/iformall/controller/device/KwMeterDataController.java index 650f00162..07e2306c4 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/device/KwMeterDataController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/device/KwMeterDataController.java @@ -2,6 +2,7 @@ package com.iformall.controller.device; import com.iformall.annotation.SystemControllerLog; +import com.iformall.common.ErrorCode; import com.iformall.common.Result; import com.iformall.common.ResultData; import com.iformall.controller.base.BaseController; @@ -42,4 +43,25 @@ public class KwMeterDataController extends BaseController { return new ResultData(kwMeterDataService.listVoAsPage(kwMeterDataDto, pageNum,pageSize)); } + + + @ApiOperation("获取电量") + @GetMapping("getMeterUsedPower") + public Result getMeterUsedPower(@ModelAttribute KwMeterDataDto kwMeterDataDto) { + + if (kwMeterDataDto == null) + return new ResultData(ErrorCode.SYS_PARAMETER_ERROR); + if (kwMeterDataDto.getMeterId() == null) + return new ResultData(ErrorCode.SYS_PARAMETER_ERROR); + + if (kwMeterDataDto.getStartTime() == null && kwMeterDataDto.getStartNumber() == null) + return new ResultData(ErrorCode.SYS_PARAMETER_ERROR); + + if (kwMeterDataDto.getEndTime() == null && kwMeterDataDto.getEndNumber() == null) + return new ResultData(ErrorCode.SYS_PARAMETER_ERROR); + + return new ResultData(kwMeterDataService.getMeterUsedPower(kwMeterDataDto)); + } + + } diff --git a/mallinkService/src/main/java/com/iformall/domain/dto/KwMeterDataDto.java b/mallinkService/src/main/java/com/iformall/domain/dto/KwMeterDataDto.java index 28e19e8dd..dd1d5b137 100644 --- a/mallinkService/src/main/java/com/iformall/domain/dto/KwMeterDataDto.java +++ b/mallinkService/src/main/java/com/iformall/domain/dto/KwMeterDataDto.java @@ -48,6 +48,15 @@ public class KwMeterDataDto extends BaseEntity { private Integer reportType; + @io.swagger.annotations.ApiModelProperty(value = "开始电量", name = "startNumber") + private Integer startNumber; + + @io.swagger.annotations.ApiModelProperty(value = "结束电量", name = "endNumber") + private Integer endNumber; + + @io.swagger.annotations.ApiModelProperty(value = "商户ID", name = "merchantId") + private Long merchantId; + public static enum Field { Id_ASC("`id` ASC"), Id_DESC("`id` DESC"), diff --git a/mallinkService/src/main/java/com/iformall/mapper/KwMeterDataMapper.java b/mallinkService/src/main/java/com/iformall/mapper/KwMeterDataMapper.java index 5a7dcc0c1..65c6d414f 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/KwMeterDataMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/KwMeterDataMapper.java @@ -12,4 +12,6 @@ public interface KwMeterDataMapper extends CommonMapper { List findList(KwMeterData param); List findVoList(KwMeterDataDto param); + + List getPower(KwMeterDataDto param); } diff --git a/mallinkService/src/main/java/com/iformall/service/kw/KwMerchantMeterService.java b/mallinkService/src/main/java/com/iformall/service/kw/KwMerchantMeterService.java index 6da4dee8c..133b7729f 100644 --- a/mallinkService/src/main/java/com/iformall/service/kw/KwMerchantMeterService.java +++ b/mallinkService/src/main/java/com/iformall/service/kw/KwMerchantMeterService.java @@ -7,6 +7,7 @@ import com.iformall.domain.po.KwMerchantMeter; import com.iformall.domain.vo.KwMerchantMeterVo; + import java.util.List; public interface KwMerchantMeterService { @@ -48,4 +49,5 @@ public interface KwMerchantMeterService { List findListVo(KwMerchantMeter record); int selectCount(KwMerchantMeter record); int unbindBatch(KwMerchantMeter record); + } \ No newline at end of file diff --git a/mallinkService/src/main/java/com/iformall/service/kw/KwMeterDataService.java b/mallinkService/src/main/java/com/iformall/service/kw/KwMeterDataService.java index 095995e11..b4043066a 100644 --- a/mallinkService/src/main/java/com/iformall/service/kw/KwMeterDataService.java +++ b/mallinkService/src/main/java/com/iformall/service/kw/KwMeterDataService.java @@ -18,4 +18,6 @@ public interface KwMeterDataService { List findList(KwMeterData kwMeterData); int save(List recordList); + + KwMeterDataVo getMeterUsedPower(KwMeterDataDto dto); } \ No newline at end of file diff --git a/mallinkService/src/main/java/com/iformall/service/kw/impl/KwMerchantMeterServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/kw/impl/KwMerchantMeterServiceImpl.java index d209f15c4..d1873fb18 100644 --- a/mallinkService/src/main/java/com/iformall/service/kw/impl/KwMerchantMeterServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/kw/impl/KwMerchantMeterServiceImpl.java @@ -2,17 +2,24 @@ package com.iformall.service.kw.impl; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; +import com.iformall.common.ErrorCode; import com.iformall.common.IdWorker; import com.iformall.common.ResultData; +import com.iformall.domain.dto.KwMeterDataDto; import com.iformall.domain.po.KwMerchantMeter; import com.iformall.domain.vo.KwMerchantMeterVo; +import com.iformall.domain.vo.KwMeterDataVo; +import com.iformall.enums.EnumMerchantMeterStatus; +import com.iformall.exception.MallinkException; import com.iformall.mapper.KwMerchantMeterMapper; +import com.iformall.mapper.KwMeterDataMapper; import com.iformall.service.kw.KwMerchantMeterService; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.ArrayList; import java.util.Date; import java.util.List; @@ -24,6 +31,9 @@ public class KwMerchantMeterServiceImpl implements KwMerchantMeterService { @Autowired KwMerchantMeterMapper kwMerchantMeterMapper; + @Autowired + KwMeterDataMapper kwMeterDataMapper; + @Override public PageInfo listAsPage(KwMerchantMeter record, Integer pageIndex, Integer pageSize) { return PageHelper.startPage(pageIndex, pageSize).doSelectPageInfo(() -> kwMerchantMeterMapper.findListVo(record)); diff --git a/mallinkService/src/main/java/com/iformall/service/kw/impl/KwMeterDataServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/kw/impl/KwMeterDataServiceImpl.java index 6aa024509..9903f1719 100644 --- a/mallinkService/src/main/java/com/iformall/service/kw/impl/KwMeterDataServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/kw/impl/KwMeterDataServiceImpl.java @@ -2,18 +2,24 @@ package com.iformall.service.kw.impl; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; +import com.iformall.common.ErrorCode; import com.iformall.common.IdWorker; +import com.iformall.common.Result; import com.iformall.common.ResultData; import com.iformall.domain.dto.KwMeterDataDto; import com.iformall.domain.po.KwMeterData; import com.iformall.domain.vo.KwMeterDataVo; import com.iformall.mapper.KwMeterDataMapper; import com.iformall.service.kw.KwMeterDataService; +import io.swagger.annotations.ApiOperation; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.ModelAttribute; +import java.util.Date; import java.util.List; @@ -49,4 +55,50 @@ public class KwMeterDataServiceImpl implements KwMeterDataService { return kwMeterDataMapper.insertList(recordList); } + @Override + public KwMeterDataVo getMeterUsedPower(KwMeterDataDto dto) + { + KwMeterDataVo usedPower = new KwMeterDataVo(); + usedPower.setMeterId(dto.getMeterId()); + usedPower.setTenantId(dto.getTenantId()); + usedPower.setReportTime(new Date().toString()); + if (dto.getStartTime() != null) { + KwMeterDataDto param = new KwMeterDataDto(); + param.setTenantId(dto.getTenantId()); + param.setMeterId(dto.getMeterId()); + param.setReportType(dto.getReportType()); + param.setStartTime(dto.getStartTime()); + List startPower = kwMeterDataMapper.getPower(param); + + if (startPower.size() > 0) { + usedPower.setRecordStartTime(startPower.get(0).getRecordStartTime()); + usedPower.setLastTotalPower(startPower.get(0).getTotalPower()); + } + } + if (dto.getEndTime() != null) { + KwMeterDataDto param = new KwMeterDataDto(); + param.setTenantId(dto.getTenantId()); + param.setMeterId(dto.getMeterId()); + param.setReportType(dto.getReportType()); + param.setEndTime(dto.getEndTime()); + List endPower = kwMeterDataMapper.getPower(param); + + if (endPower.size() > 0) { + usedPower.setRecordEndTime(endPower.get(0).getRecordEndTime()); + usedPower.setTotalPower(endPower.get(0).getTotalPower()); + } + } + if (usedPower.getLastTotalPower()==null) + usedPower.setLastTotalPower(dto.getStartNumber()); + if (usedPower.getTotalPower()==null) + usedPower.setTotalPower(dto.getEndNumber()); + + if (usedPower.getLastTotalPower()==null || usedPower.getTotalPower() == null) + return null; + + usedPower.setUsedPower(usedPower.getTotalPower() - usedPower.getLastTotalPower()); + + return usedPower; + } + } diff --git a/mallinkService/src/main/resources/mapper/KwMeterDataMapper.xml b/mallinkService/src/main/resources/mapper/KwMeterDataMapper.xml index fd1948a25..775d5ed50 100644 --- a/mallinkService/src/main/resources/mapper/KwMeterDataMapper.xml +++ b/mallinkService/src/main/resources/mapper/KwMeterDataMapper.xml @@ -130,7 +130,7 @@ sum(used_power) as usedPower FROM kw_meter_data where - + group by reportTime,meter_id ) as temp group by @@ -145,4 +145,75 @@ order by reportTime desc + + From f9efa0a10f6002363c0b9ca7a830c102f2a2db61 Mon Sep 17 00:00:00 2001 From: luozukai Date: Wed, 10 Jul 2019 12:38:38 +0800 Subject: [PATCH 7/8] =?UTF-8?q?[][=E4=BF=AE=E6=94=B9][=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E4=B8=9A=E6=80=81=E5=88=86=E6=9E=90=E5=88=97=E8=A1=A8]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/iformall/enums/EnumMailMsgModel.java | 6 +++++ .../service/impl/WxFlowServiceImpl.java | 24 ++++++++++++------- 2 files changed, 22 insertions(+), 8 deletions(-) diff --git a/mallinkService/src/main/java/com/iformall/enums/EnumMailMsgModel.java b/mallinkService/src/main/java/com/iformall/enums/EnumMailMsgModel.java index d4788b732..5173720e3 100644 --- a/mallinkService/src/main/java/com/iformall/enums/EnumMailMsgModel.java +++ b/mallinkService/src/main/java/com/iformall/enums/EnumMailMsgModel.java @@ -11,6 +11,12 @@ public enum EnumMailMsgModel { MAIL_BILL_OWE(13, "欠缴账单通知"), MAIL_ASSIGNEE_NODIFY(14, "代办通知"), MAIL_REJECT_NODIFY(15, "驳回通知"), + + //卷 + MAIL_C_PASS_NODIFY(24, "审批通过通知"), + MAIL_C_APPLY_NODIFY(25, "审批通知"), + MAIL_C_ASSIGNEE_NODIFY(26, "代办通知"), + MAIL_C_REJECT_NODIFY(27, "驳回通知"), ; public static EnumMailMsgModel getEnum(Integer code) { diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxFlowServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxFlowServiceImpl.java index cc0c4198a..db1aee899 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxFlowServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxFlowServiceImpl.java @@ -444,8 +444,10 @@ public class WxFlowServiceImpl implements WxFlowService { msgReplaceMap.put("bustype","账单"); msgReplaceMap.put("contract", businessId.toString()); }else if(isCoupon(flowType)){ - msgReplaceMap.put("bustype","有价券"); - msgReplaceMap.put("contract",businessId.toString()); + mailMsg.setModelType(EnumMailMsgModel.MAIL_C_ASSIGNEE_NODIFY.getCode()); + WxCoupon wxCoupon = this.wxCouponMapper.selectByPrimaryKey(businessId); + msgReplaceMap.put("type",EnumCouponType.getEnum(wxCoupon.getType()).getMessage()); + msgReplaceMap.put("name",wxCoupon.getTitle()); } mailMsg.setDynamicContentMap(msgReplaceMap); mqBaseProducer.sendMessage(mailMsg, EnumMsgMqTopic.DEFAULT.getCode(), EnumMsgMqTag.DEFAULT.getCode(), EnumMsgMqKey.DEFAULT.getCode()); @@ -893,8 +895,10 @@ public class WxFlowServiceImpl implements WxFlowService { msgReplaceMap.put("bustype","账单"); msgReplaceMap.put("contract", businessId.toString()); }else if(isCoupon(flowType)){ - msgReplaceMap.put("bustype","有价券"); - msgReplaceMap.put("contract",businessId.toString()); + mailMsg.setModelType(EnumMailMsgModel.MAIL_C_APPLY_NODIFY.getCode()); + WxCoupon wxCoupon = this.wxCouponMapper.selectByPrimaryKey(businessId); + msgReplaceMap.put("type",EnumCouponType.getEnum(wxCoupon.getType()).getMessage()); + msgReplaceMap.put("name",wxCoupon.getTitle()); } mailMsg.setDynamicContentMap(msgReplaceMap); mqBaseProducer.sendMessage(mailMsg, EnumMsgMqTopic.DEFAULT.getCode(), EnumMsgMqTag.DEFAULT.getCode(), EnumMsgMqKey.DEFAULT.getCode()); @@ -949,8 +953,10 @@ public class WxFlowServiceImpl implements WxFlowService { msgReplaceMap.put("bustype","账单"); msgReplaceMap.put("contract", businessId.toString()); }else if(isCoupon(flowType)){ - msgReplaceMap.put("bustype","有价券"); - msgReplaceMap.put("contract",businessId.toString()); + mailMsg.setModelType(EnumMailMsgModel.MAIL_C_PASS_NODIFY.getCode()); + WxCoupon wxCoupon = this.wxCouponMapper.selectByPrimaryKey(businessId); + msgReplaceMap.put("type",EnumCouponType.getEnum(wxCoupon.getType()).getMessage()); + msgReplaceMap.put("name",wxCoupon.getTitle()); } mailMsg.setDynamicContentMap(msgReplaceMap); mqBaseProducer.sendMessage(mailMsg, EnumMsgMqTopic.DEFAULT.getCode(), EnumMsgMqTag.DEFAULT.getCode(), EnumMsgMqKey.DEFAULT.getCode()); @@ -1102,8 +1108,10 @@ public class WxFlowServiceImpl implements WxFlowService { msgReplaceMap.put("bustype","账单"); msgReplaceMap.put("contract", businessId.toString()); }else if(isCoupon(flowType)){ - msgReplaceMap.put("bustype","有价券"); - msgReplaceMap.put("contract",businessId.toString()); + mailMsg.setModelType(EnumMailMsgModel.MAIL_C_REJECT_NODIFY.getCode()); + WxCoupon wxCoupon = this.wxCouponMapper.selectByPrimaryKey(businessId); + msgReplaceMap.put("type",EnumCouponType.getEnum(wxCoupon.getType()).getMessage()); + msgReplaceMap.put("name",wxCoupon.getTitle()); } mailMsg.setDynamicContentMap(msgReplaceMap); mqBaseProducer.sendMessage(mailMsg, EnumMsgMqTopic.DEFAULT.getCode(), EnumMsgMqTag.DEFAULT.getCode(), EnumMsgMqKey.DEFAULT.getCode()); From 0be726bec85f907a53c48abe02391338eed52cf3 Mon Sep 17 00:00:00 2001 From: luozukai Date: Wed, 10 Jul 2019 13:16:58 +0800 Subject: [PATCH 8/8] =?UTF-8?q?[][=E4=BF=AE=E6=94=B9][=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E4=B8=9A=E6=80=81=E5=88=86=E6=9E=90=E5=88=97=E8=A1=A8]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../db/migration/V201907101118__L_ADD_FLOW_DATA.sql | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 mallinkAdmin/src/main/resources/db/migration/V201907101118__L_ADD_FLOW_DATA.sql diff --git a/mallinkAdmin/src/main/resources/db/migration/V201907101118__L_ADD_FLOW_DATA.sql b/mallinkAdmin/src/main/resources/db/migration/V201907101118__L_ADD_FLOW_DATA.sql new file mode 100644 index 000000000..acceb6610 --- /dev/null +++ b/mallinkAdmin/src/main/resources/db/migration/V201907101118__L_ADD_FLOW_DATA.sql @@ -0,0 +1,13 @@ +INSERT INTO `wx_msg_validationcode_model` (`id`, `tenant_id`, `type`, `name`, `signature`, `content`, `createtime`, `status`, `minutes`, `model_id`, `email_bg_img`) +VALUES + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '456', 24, '审批通过通知', '', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n
\n
审批通过通知
\n
您申请的[{type}],[{name}]已经审批通过,请登录{page}跟进后续工作
\n
\n
\n\n\n', '2019-07-10 11:35:11', 0, 0, 500, 'http://202.165.179.86:8081/images/WechatIMG5130.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '456', 26, '待办通知', '', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n \n
\n
待办通知
\n
{name}提交了一个营销申请待您审批,电脑登录{page}查看您的待办
\n
\n
\n
\n
申请时间:
\n
{applyTime}
\n
\n
\n
申请进度:
\n
\n \n {taskList}\n
\n
\n
\n
\n
遇到问题?
\n
\n 请联系申请人:\n {linkName}{linkPhone}\n
\n
\n
\n
\n\n\n', '2019-07-10 11:37:33', 0, 0, 500, 'http://202.165.179.86:8081/images/WechatIMG5130.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '456', 25, '审批通知', '', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n
\n
审批通知
\n
{userName}同意[{type}][{name}]的审批,已呈送{toUserName},请登录{page}查看审批进度
\n
\n
\n\n\n', '2019-07-10 11:36:23', 0, 0, 500, 'http://202.165.179.86:8081/images/WechatIMG5130.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '456', 27, '驳回通知', '', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n \n
\n
审批通过通知
\n
您申请的[{type}],[{name}]被驳回,请登录{page}查看审批明细
\n
\n
\n
\n 驳回人:\n {name}\n
\n
\n 驳回原因:\n {remark}\n
\n
\n
\n
遇到问题?
\n
\n 请联系驳回人:\n {linkName}{linkPhone}\n
\n
\n
\n
\n\n\n', '2019-07-10 11:38:22', 0, 0, 500, 'http://202.165.179.86:8081/images/WechatIMG5130.png'); + +INSERT INTO `wx_msg_validationcode_model` (`id`, `tenant_id`, `type`, `name`, `signature`, `content`, `createtime`, `status`, `minutes`, `model_id`, `email_bg_img`) +VALUES + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '789', 24, '审批通过通知', '', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n
\n
审批通过通知
\n
您申请的[{type}],[{name}]已经审批通过,请登录{page}跟进后续工作
\n
\n
\n\n\n', '2019-07-10 11:35:11', 0, 0, 500, 'http://202.165.179.86:8081/images/WechatIMG5130.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '789', 26, '待办通知', '', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n \n
\n
待办通知
\n
{name}提交了一个营销申请待您审批,电脑登录{page}查看您的待办
\n
\n
\n
\n
申请时间:
\n
{applyTime}
\n
\n
\n
申请进度:
\n
\n \n {taskList}\n
\n
\n
\n
\n
遇到问题?
\n
\n 请联系申请人:\n {linkName}{linkPhone}\n
\n
\n
\n
\n\n\n', '2019-07-10 11:37:33', 0, 0, 500, 'http://202.165.179.86:8081/images/WechatIMG5130.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '789', 25, '审批通知', '', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n
\n
审批通知
\n
{userName}同意[{type}][{name}]的审批,已呈送{toUserName},请登录{page}查看审批进度
\n
\n
\n\n\n', '2019-07-10 11:36:23', 0, 0, 500, 'http://202.165.179.86:8081/images/WechatIMG5130.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '789', 27, '驳回通知', '', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n \n
\n
审批通过通知
\n
您申请的[{type}],[{name}]被驳回,请登录{page}查看审批明细
\n
\n
\n
\n 驳回人:\n {name}\n
\n
\n 驳回原因:\n {remark}\n
\n
\n
\n
遇到问题?
\n
\n 请联系驳回人:\n {linkName}{linkPhone}\n
\n
\n
\n
\n\n\n', '2019-07-10 11:38:22', 0, 0, 500, 'http://202.165.179.86:8081/images/WechatIMG5130.png');