developrelease_toaliyun_real
| @@ -138,12 +138,7 @@ public class HomeController extends BaseController { | |||||
| } | } | ||||
| if(isLogin) { | if(isLogin) { | ||||
| MallUserInfo info = (MallUserInfo) SecurityUtils.getSubject().getSession().getAttribute(UserSession.userInfo); | MallUserInfo info = (MallUserInfo) SecurityUtils.getSubject().getSession().getAttribute(UserSession.userInfo); | ||||
| info.setPassword("保密"); | |||||
| if(StringUtils.isNotBlank(info.getBopenId())) | |||||
| info.setBopenId("保密"); | |||||
| if(StringUtils.isNotBlank(info.getWebOpenId())) { | |||||
| info.setWebOpenId("保密"); | |||||
| } | |||||
| info.protectInfos(); | |||||
| String menus = mallUserRoleService.getPermissionsByUser(info); | String menus = mallUserRoleService.getPermissionsByUser(info); | ||||
| if(menus != null) { | if(menus != null) { | ||||
| @@ -222,12 +217,7 @@ public class HomeController extends BaseController { | |||||
| UseriFormallToken token = new UseriFormallToken(user.getUsername()); | UseriFormallToken token = new UseriFormallToken(user.getUsername()); | ||||
| subject.login(token); | subject.login(token); | ||||
| MallUserInfo info = (MallUserInfo) SecurityUtils.getSubject().getSession().getAttribute(UserSession.userInfo); | MallUserInfo info = (MallUserInfo) SecurityUtils.getSubject().getSession().getAttribute(UserSession.userInfo); | ||||
| info.setPassword("保密"); | |||||
| if(StringUtils.isNotBlank(info.getBopenId())) | |||||
| info.setBopenId("保密"); | |||||
| if(StringUtils.isNotBlank(info.getWebOpenId())) { | |||||
| info.setWebOpenId("保密"); | |||||
| } | |||||
| info.protectInfos(); | |||||
| String menus = mallUserRoleService.getPermissionsByUser(info); | String menus = mallUserRoleService.getPermissionsByUser(info); | ||||
| if(menus != null) { | if(menus != null) { | ||||
| info.setMenus(menus); | info.setMenus(menus); | ||||
| @@ -324,12 +314,7 @@ public class HomeController extends BaseController { | |||||
| UseriFormallToken token = new UseriFormallToken(user.getUsername()); | UseriFormallToken token = new UseriFormallToken(user.getUsername()); | ||||
| subject.login(token); | subject.login(token); | ||||
| MallUserInfo info = (MallUserInfo) SecurityUtils.getSubject().getSession().getAttribute(UserSession.userInfo); | MallUserInfo info = (MallUserInfo) SecurityUtils.getSubject().getSession().getAttribute(UserSession.userInfo); | ||||
| info.setPassword("保密"); | |||||
| if(StringUtils.isNotBlank(info.getBopenId())) | |||||
| info.setBopenId("保密"); | |||||
| if(StringUtils.isNotBlank(info.getWebOpenId())) { | |||||
| info.setWebOpenId("保密"); | |||||
| } | |||||
| info.protectInfos(); | |||||
| String menus = mallUserRoleService.getPermissionsByUser(info); | String menus = mallUserRoleService.getPermissionsByUser(info); | ||||
| if(menus != null) { | if(menus != null) { | ||||
| info.setMenus(menus); | info.setMenus(menus); | ||||
| @@ -298,7 +298,7 @@ public class MallUserInfoController extends BaseController { | |||||
| public ResultData getUserInfo() { | public ResultData getUserInfo() { | ||||
| logger.debug("[" + getIpAddr() + "] MallUserInfoController::getUserInfo"); | logger.debug("[" + getIpAddr() + "] MallUserInfoController::getUserInfo"); | ||||
| MallUserInfo info = getUser(); | MallUserInfo info = getUser(); | ||||
| info.setPassword("保密"); | |||||
| info.protectInfos(); | |||||
| if (info.getIsAdmin().equals(EnumUserAdmin.ADMIN.getCode())) { // isAdmin | if (info.getIsAdmin().equals(EnumUserAdmin.ADMIN.getCode())) { // isAdmin | ||||
| MallPermission q = new MallPermission(); | MallPermission q = new MallPermission(); | ||||
| PageInfo<MallPermission> list = mallPermissionService.listAsPage(q, 1, 100); | PageInfo<MallPermission> list = mallPermissionService.listAsPage(q, 1, 100); | ||||
| @@ -145,11 +145,7 @@ public class WechatLoginController extends BaseController { | |||||
| } | } | ||||
| if(isLogin) { | if(isLogin) { | ||||
| MallUserInfo info = (MallUserInfo) SecurityUtils.getSubject().getSession().getAttribute(UserSession.userInfo); | MallUserInfo info = (MallUserInfo) SecurityUtils.getSubject().getSession().getAttribute(UserSession.userInfo); | ||||
| info.setPassword("保密"); | |||||
| info.setBopenId("保密"); | |||||
| if(StringUtils.isNotBlank(info.getWebOpenId())) { | |||||
| info.setWebOpenId("保密"); | |||||
| } | |||||
| info.protectInfos(); | |||||
| String menus = mallUserRoleService.getPermissionsByUser(info); | String menus = mallUserRoleService.getPermissionsByUser(info); | ||||
| if(menus != null) { | if(menus != null) { | ||||
| info.setMenus(menus); | info.setMenus(menus); | ||||
| @@ -284,11 +280,7 @@ public class WechatLoginController extends BaseController { | |||||
| UseriFormallToken token = new UseriFormallToken(userInfo.getUsername()); | UseriFormallToken token = new UseriFormallToken(userInfo.getUsername()); | ||||
| subject.login(token); | subject.login(token); | ||||
| MallUserInfo info = (MallUserInfo) SecurityUtils.getSubject().getSession().getAttribute(UserSession.userInfo); | MallUserInfo info = (MallUserInfo) SecurityUtils.getSubject().getSession().getAttribute(UserSession.userInfo); | ||||
| info.setPassword("保密"); | |||||
| info.setBopenId("保密"); | |||||
| if(StringUtils.isNotBlank(info.getWebOpenId())) { | |||||
| info.setWebOpenId("保密"); | |||||
| } | |||||
| info.protectInfos(); | |||||
| String menus = mallUserRoleService.getPermissionsByUser(info); | String menus = mallUserRoleService.getPermissionsByUser(info); | ||||
| if(menus != null) { | if(menus != null) { | ||||
| info.setMenus(menus); | info.setMenus(menus); | ||||
| @@ -107,7 +107,7 @@ public class WxBillRentController extends BaseController { | |||||
| @SystemControllerLog(description = "租赁押金账单-更新营业额") | @SystemControllerLog(description = "租赁押金账单-更新营业额") | ||||
| public ResultData updateRevenue(@RequestBody WxBillRent wxBillRent) { | public ResultData updateRevenue(@RequestBody WxBillRent wxBillRent) { | ||||
| logger.debug("[" + getIpAddr() + "] WxBillRentController::updateRevenue"); | logger.debug("[" + getIpAddr() + "] WxBillRentController::updateRevenue"); | ||||
| return wxBillRentService.updateRevenue(wxBillRent); | |||||
| return wxBillRentService.updateRevenue(wxBillRent, getUser()); | |||||
| } | } | ||||
| @@ -0,0 +1 @@ | |||||
| update wx_msg_validationcode_model set content='{s6}(动态验证码),请在5分钟内填写' where type in (1,6); | |||||
| @@ -0,0 +1 @@ | |||||
| update wx_msg_validationcode_model set content='{s6}(动态验证码),请在5分钟内填写',minutes=5 where type in (1,6); | |||||
| @@ -0,0 +1,48 @@ | |||||
| package com.iformall.schedule; | |||||
| import com.iformall.domain.po.WxMall; | |||||
| import com.iformall.domain.vo.WxBillAll; | |||||
| import com.iformall.mapper.WxMallMapper; | |||||
| import com.iformall.service.WxBillAllService; | |||||
| import org.slf4j.Logger; | |||||
| import org.slf4j.LoggerFactory; | |||||
| import org.springframework.beans.factory.annotation.Autowired; | |||||
| import org.springframework.scheduling.annotation.Scheduled; | |||||
| import org.springframework.stereotype.Component; | |||||
| import java.util.List; | |||||
| /** | |||||
| * @author gongbiao | |||||
| */ | |||||
| @Component | |||||
| public class BillStatusSchedule { | |||||
| private final Logger logger = LoggerFactory.getLogger(this.getClass()); | |||||
| @Autowired | |||||
| private WxBillAllService wxBillAllService; | |||||
| @Autowired | |||||
| private WxMallMapper wxMallMapper; | |||||
| /** | |||||
| * 每天1点执行 | |||||
| */ | |||||
| @Scheduled(cron = "0 0 1 * * ?") | |||||
| public void updateBillStatus() { | |||||
| logger.info("账单状态更新开始"); | |||||
| List<WxMall> wxMalls = wxMallMapper.findList(null); | |||||
| for (WxMall wxMall : wxMalls) { | |||||
| String tenantId = wxMall.getTenantId(); | |||||
| WxBillAll wxBillAll = new WxBillAll(); | |||||
| wxBillAll.setTenantId(tenantId); | |||||
| wxBillAllService.updateBillStatus(wxBillAll); | |||||
| } | |||||
| logger.info("账单状态更新结束"); | |||||
| } | |||||
| } | |||||
| @@ -239,7 +239,7 @@ public enum ErrorCode{ | |||||
| * 核销 | * 核销 | ||||
| */ | */ | ||||
| VERIFY_ERROR(12050, "核销异常"), | VERIFY_ERROR(12050, "核销异常"), | ||||
| MSG_REPEAT_SEND(12061, "短信重新发送"), | |||||
| MSG_REPEAT_SEND(12061, "短信重复发送"), | |||||
| /** | /** | ||||
| * 解单 | * 解单 | ||||
| @@ -261,6 +261,18 @@ public class MallUserInfo implements Serializable { | |||||
| this.webOpenId = webOpenId; | this.webOpenId = webOpenId; | ||||
| } | } | ||||
| public void protectInfos() { | |||||
| if(StringUtils.isNotBlank(this.password)) { | |||||
| setPassword("保密"); | |||||
| } | |||||
| if(StringUtils.isNotBlank(this.bopenId)) { | |||||
| setBopenId("保密"); | |||||
| } | |||||
| if(StringUtils.isNotBlank(this.webOpenId)) { | |||||
| setWebOpenId("保密"); | |||||
| } | |||||
| } | |||||
| public static enum Field | public static enum Field | ||||
| { | { | ||||
| Id_ASC("`id` ASC"),Id_DESC("`id` DESC") | Id_ASC("`id` ASC"),Id_DESC("`id` DESC") | ||||
| @@ -67,6 +67,17 @@ public class WxMsgValidationcode implements Serializable { | |||||
| @io.swagger.annotations.ApiModelProperty(value="",name="appid") | @io.swagger.annotations.ApiModelProperty(value="",name="appid") | ||||
| private String appid; | private String appid; | ||||
| @Transient | |||||
| private String createtimeStr; | |||||
| public String getCreatetimeStr() { | |||||
| return createtimeStr; | |||||
| } | |||||
| public void setCreatetimeStr(String createtimeStr) { | |||||
| this.createtimeStr = createtimeStr; | |||||
| } | |||||
| public String getPhone() { | public String getPhone() { | ||||
| return phone; | return phone; | ||||
| } | } | ||||
| @@ -1,12 +1,11 @@ | |||||
| package com.iformall.domain.po.msg; | package com.iformall.domain.po.msg; | ||||
| import com.iformall.domain.po.msg.BaseMsg; | |||||
| import lombok.Data; | import lombok.Data; | ||||
| import lombok.EqualsAndHashCode; | import lombok.EqualsAndHashCode; | ||||
| import lombok.ToString; | import lombok.ToString; | ||||
| import javax.persistence.Id; | import javax.persistence.Id; | ||||
| import javax.persistence.Table; | import javax.persistence.Table; | ||||
| import javax.persistence.Transient; | |||||
| import java.util.Date; | import java.util.Date; | ||||
| import java.util.Map; | import java.util.Map; | ||||
| @@ -1,5 +1,7 @@ | |||||
| package com.iformall.domain.vo; | package com.iformall.domain.vo; | ||||
| import io.swagger.models.auth.In; | |||||
| import java.util.List; | import java.util.List; | ||||
| /** | /** | ||||
| @@ -65,6 +67,15 @@ public class WxBillAll { | |||||
| @io.swagger.annotations.ApiModelProperty(value = "欠缴总额", name = "totalOwe") | @io.swagger.annotations.ApiModelProperty(value = "欠缴总额", name = "totalOwe") | ||||
| private Integer totalOwe; | private Integer totalOwe; | ||||
| private List<Integer> billTypeList; | |||||
| public List<Integer> getBillTypeList() { | |||||
| return billTypeList; | |||||
| } | |||||
| public void setBillTypeList(List<Integer> billTypeList) { | |||||
| this.billTypeList = billTypeList; | |||||
| } | |||||
| public Integer getRentOwe() { | public Integer getRentOwe() { | ||||
| return rentOwe; | return rentOwe; | ||||
| @@ -13,7 +13,7 @@ public enum EnumBillType { | |||||
| WATER(4, "水费"), | WATER(4, "水费"), | ||||
| POWER(5, "电费"), | POWER(5, "电费"), | ||||
| ROUTINE(6, "其他"), | ROUTINE(6, "其他"), | ||||
| AIR_CONDITIONING(7, "空调费"), | |||||
| AIR_CONDITIONING(7, "空调费") | |||||
| ; | ; | ||||
| public static EnumBillType getEnum(Integer code) { | public static EnumBillType getEnum(Integer code) { | ||||
| @@ -0,0 +1,44 @@ | |||||
| package com.iformall.enums; | |||||
| /** | |||||
| * Created by Stormeye on 2018/08/09. | |||||
| */ | |||||
| public enum EnumBillTypeStr { | |||||
| RENT(1, "租金"), | |||||
| RENT_D(2, "租赁押金"), | |||||
| PROPERTY(3,"物业费"), | |||||
| PROPERTY_D(4, "物业押金"), | |||||
| W(5, "水费"), | |||||
| D(6, "电费"), | |||||
| K(9, "空调费"), | |||||
| O(7, "其他"), | |||||
| O_D(8, "其他押金"), | |||||
| ; | |||||
| public static EnumBillTypeStr getEnum(Integer code) { | |||||
| for (EnumBillTypeStr value : values()) { | |||||
| if (value.getCode().equals(code)) { | |||||
| return value; | |||||
| } | |||||
| } | |||||
| return null; | |||||
| } | |||||
| private Integer code; | |||||
| private String message; | |||||
| EnumBillTypeStr(Integer code, String message) { | |||||
| this.code = code; | |||||
| this.message = message; | |||||
| } | |||||
| public Integer getCode() { | |||||
| return code; | |||||
| } | |||||
| public String getMessage() { | |||||
| return message; | |||||
| } | |||||
| } | |||||
| @@ -12,19 +12,19 @@ import java.util.Map; | |||||
| */ | */ | ||||
| public interface WxBillAllService { | public interface WxBillAllService { | ||||
| Map<String,Object> listAsPage(WxBillAll wxBillAll, Integer pageNum, Integer pageSize); | |||||
| Map<String, Object> listAsPage(WxBillAll wxBillAll, Integer pageNum, Integer pageSize); | |||||
| List<Map<String,Object>> listBillOweAndWaitPay(WxBillAll wxBillAll); | |||||
| List<Map<String, Object>> listBillOweAndWaitPay(WxBillAll wxBillAll); | |||||
| ResultData listBill(WxBillAll wxBillAll); | ResultData listBill(WxBillAll wxBillAll); | ||||
| void updateBill(Map<String,Object> bill); | |||||
| void updateBill(Map<String, Object> bill); | |||||
| void exportBill(HttpServletRequest request, HttpServletResponse response, WxBillAll wxBillAll); | void exportBill(HttpServletRequest request, HttpServletResponse response, WxBillAll wxBillAll); | ||||
| Object getBillInfo(WxBillAll wxBillAll); | Object getBillInfo(WxBillAll wxBillAll); | ||||
| Long hasOweBill(Long contractId,Integer type); | |||||
| Long hasOweBill(Long contractId, Integer type); | |||||
| /** | /** | ||||
| * 发送待缴通知邮件 | * 发送待缴通知邮件 | ||||
| @@ -38,10 +38,14 @@ public interface WxBillAllService { | |||||
| /** | /** | ||||
| * 欠缴商户分页列表 | * 欠缴商户分页列表 | ||||
| * | |||||
| * @return | * @return | ||||
| */ | */ | ||||
| Map<String, Object> getOweBillAsPage(WxBillAll record, Integer pageNum, Integer pageSize); | Map<String, Object> getOweBillAsPage(WxBillAll record, Integer pageNum, Integer pageSize); | ||||
| void exportOweMerchant(WxBillAll record, HttpServletRequest request, HttpServletResponse response); | void exportOweMerchant(WxBillAll record, HttpServletRequest request, HttpServletResponse response); | ||||
| } | |||||
| void updateBillStatus(WxBillAll record); | |||||
| } | |||||
| @@ -4,7 +4,6 @@ import java.util.*; | |||||
| import com.github.pagehelper.PageInfo; | import com.github.pagehelper.PageInfo; | ||||
| import com.iformall.common.ResultData; | import com.iformall.common.ResultData; | ||||
| import com.iformall.domain.po.MallUserInfo; | import com.iformall.domain.po.MallUserInfo; | ||||
| import com.iformall.domain.po.WxBillProperty; | |||||
| import com.iformall.domain.po.WxBillRent; | import com.iformall.domain.po.WxBillRent; | ||||
| /** | /** | ||||
| @@ -54,7 +53,7 @@ public interface WxBillRentService { | |||||
| Object detail(Long id); | Object detail(Long id); | ||||
| ResultData updateRevenue(WxBillRent wxBillRent); | |||||
| ResultData updateRevenue(WxBillRent wxBillRent, MallUserInfo user); | |||||
| ResultData updateLatePayStatus(WxBillRent wxBillRent); | ResultData updateLatePayStatus(WxBillRent wxBillRent); | ||||
| @@ -549,8 +549,8 @@ public class WxBillAllServiceImpl implements WxBillAllService { | |||||
| return count; | return count; | ||||
| } | } | ||||
| private void updateBillStatus(WxBillAll record) { | |||||
| @Override | |||||
| public void updateBillStatus(WxBillAll record) { | |||||
| logger.info("更新各账单状态开始"); | logger.info("更新各账单状态开始"); | ||||
| //更新其他押金账单 | //更新其他押金账单 | ||||
| //WxBillOtherDeposit wxBillOtherDeposit = new WxBillOtherDeposit(); | //WxBillOtherDeposit wxBillOtherDeposit = new WxBillOtherDeposit(); | ||||
| @@ -222,11 +222,14 @@ public class WxBillRentServiceImpl implements WxBillRentService { | |||||
| return result; | return result; | ||||
| } | } | ||||
| @Transactional(rollbackFor = {Exception.class}) | |||||
| @Override | @Override | ||||
| public ResultData updateRevenue(WxBillRent record) { | |||||
| public ResultData updateRevenue(WxBillRent record, MallUserInfo user) { | |||||
| WxBillRent wxBillRent = wxBillRentMapper.selectByPrimaryKey(record.getId()); | WxBillRent wxBillRent = wxBillRentMapper.selectByPrimaryKey(record.getId()); | ||||
| Long oldPrice = wxBillRent.getReceivePay(); | |||||
| Long newPrice = record.getReceivePay(); | |||||
| wxBillRent.setRevenue(record.getRevenue()); | wxBillRent.setRevenue(record.getRevenue()); | ||||
| wxBillRent.setReceivePay(record.getReceivePay()); | |||||
| wxBillRent.setReceivePay(oldPrice.equals(newPrice) ? oldPrice : newPrice); | |||||
| wxBillRent.setUpdatetime(new Date()); | wxBillRent.setUpdatetime(new Date()); | ||||
| try { | try { | ||||
| wxBillRentMapper.updateByPrimaryKeySelective(wxBillRent); | wxBillRentMapper.updateByPrimaryKeySelective(wxBillRent); | ||||
| @@ -234,6 +237,25 @@ public class WxBillRentServiceImpl implements WxBillRentService { | |||||
| logger.error("修改营业额失败,e:" + e.getMessage()); | logger.error("修改营业额失败,e:" + e.getMessage()); | ||||
| throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "修改营业额失败"); | throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "修改营业额失败"); | ||||
| } | } | ||||
| if (!oldPrice.equals(newPrice)) { | |||||
| //日志 | |||||
| WxBillAction wxBillAction = new WxBillAction(); | |||||
| wxBillAction.setBillId(wxBillRent.getId()); | |||||
| String oldPriceStr = new BigDecimal(oldPrice).divide(new BigDecimal(100)).toPlainString(); | |||||
| String newPriceStr = new BigDecimal(newPrice).divide(new BigDecimal(100)).toPlainString(); | |||||
| wxBillAction.setDetails("录入营业额时应收金额" + oldPriceStr + "元变更成" + newPriceStr + "元"); | |||||
| wxBillAction.setAction(EnumBillAction.UPDATE_BILL.getCode()); | |||||
| wxBillAction.setUserId(user.getId()); | |||||
| wxBillAction.setUserName(user.getName()); | |||||
| wxBillAction.setPhone(user.getPhone()); | |||||
| wxBillAction.setTenantId(wxBillRent.getTenantId()); | |||||
| try { | |||||
| wxBillActionService.save(wxBillAction); | |||||
| } catch (Exception e) { | |||||
| logger.error("添加租赁账单行为日志,e:" + e.getMessage()); | |||||
| throw new MallinkException(ErrorCode.DB_FAIL.getCode(), "修改营业额失败"); | |||||
| } | |||||
| } | |||||
| return new ResultData(Result.SUCCESS, "修改营业额成功", wxBillRent); | return new ResultData(Result.SUCCESS, "修改营业额成功", wxBillRent); | ||||
| } | } | ||||
| @@ -71,6 +71,8 @@ public class WxChartServiceImpl implements WxChartDataService { | |||||
| @Autowired | @Autowired | ||||
| WxBillOtherMapper wxBillOtherMapper; | WxBillOtherMapper wxBillOtherMapper; | ||||
| @Autowired | @Autowired | ||||
| WxBillAllMapper wxBillAllMapper; | |||||
| @Autowired | |||||
| MarkingDataReportService markingDataReportService; | MarkingDataReportService markingDataReportService; | ||||
| @Override | @Override | ||||
| @@ -2294,12 +2296,6 @@ public class WxChartServiceImpl implements WxChartDataService { | |||||
| return new ResultData(datamap); | return new ResultData(datamap); | ||||
| } | } | ||||
| public static void main(String[] args) { | |||||
| double a = 0.0; | |||||
| System.out.println(a==0.0); | |||||
| System.out.println(); | |||||
| } | |||||
| /** | /** | ||||
| * 费用收缴数据 | * 费用收缴数据 | ||||
| * @param tenantId | * @param tenantId | ||||
| @@ -2403,48 +2399,78 @@ public class WxChartServiceImpl implements WxChartDataService { | |||||
| datamap.put("otherzjsjl", 0); | datamap.put("otherzjsjl", 0); | ||||
| } | } | ||||
| //欠缴数据 | |||||
| //==========欠缴数据========= | |||||
| BigDecimal totalOwe = new BigDecimal(0); | BigDecimal totalOwe = new BigDecimal(0); | ||||
| payinfo = wxBillRentMapper.queryOweInfo(params); | |||||
| WxBillAll wxBillAll = new WxBillAll(); | |||||
| wxBillAll.setTenantId(tenantId); | |||||
| wxBillAll.setMonth(new SimpleDateFormat("yyyy-MM").format(startDate)); | |||||
| wxBillAll.setStatus(EnumBillRentStatus.NOT_PAID.getCode()); | |||||
| List<Integer> billTypeList = new ArrayList<>(); | |||||
| billTypeList.add(EnumBillTypeStr.RENT.getCode()); | |||||
| wxBillAll.setBillTypeList(billTypeList); | |||||
| payinfo = wxBillAllMapper.queryOweInfo(wxBillAll); | |||||
| if (payinfo != null) { | if (payinfo != null) { | ||||
| BigDecimal owe = (BigDecimal) payinfo.get("owe"); | |||||
| BigDecimal owe = ((BigDecimal) payinfo.get("owe")).divide(new BigDecimal(100)); | |||||
| totalOwe = totalOwe.add(owe); | totalOwe = totalOwe.add(owe); | ||||
| datamap.put("rentOwe", owe); | datamap.put("rentOwe", owe); | ||||
| } else { | } else { | ||||
| datamap.put("rentOwe", 0); | datamap.put("rentOwe", 0); | ||||
| } | } | ||||
| payinfo = wxBillPropertyMapper.queryOweInfo(params); | |||||
| billTypeList = new ArrayList<>(); | |||||
| billTypeList.add(EnumBillTypeStr.PROPERTY.getCode()); | |||||
| wxBillAll.setBillTypeList(billTypeList); | |||||
| payinfo = wxBillAllMapper.queryOweInfo(wxBillAll); | |||||
| if (payinfo != null) { | if (payinfo != null) { | ||||
| BigDecimal owe = (BigDecimal) payinfo.get("owe"); | |||||
| BigDecimal owe = ((BigDecimal) payinfo.get("owe")).divide(new BigDecimal(100)); | |||||
| totalOwe = totalOwe.add(owe); | totalOwe = totalOwe.add(owe); | ||||
| datamap.put("propertyOwe", owe); | datamap.put("propertyOwe", owe); | ||||
| } else { | } else { | ||||
| datamap.put("propertyOwe", 0); | datamap.put("propertyOwe", 0); | ||||
| } | } | ||||
| payinfo = wxBillOtherMapper.queryOweInfo(params); | |||||
| billTypeList = new ArrayList<>(); | |||||
| billTypeList.add(EnumBillTypeStr.O_D.getCode()); | |||||
| billTypeList.add(EnumBillTypeStr.PROPERTY_D.getCode()); | |||||
| billTypeList.add(EnumBillTypeStr.RENT_D.getCode()); | |||||
| wxBillAll.setBillTypeList(billTypeList); | |||||
| payinfo = wxBillAllMapper.queryOweInfo(wxBillAll); | |||||
| if (payinfo != null) { | if (payinfo != null) { | ||||
| BigDecimal owe = (BigDecimal) payinfo.get("owe"); | |||||
| BigDecimal owe = ((BigDecimal) payinfo.get("owe")).divide(new BigDecimal(100)); | |||||
| totalOwe = totalOwe.add(owe); | totalOwe = totalOwe.add(owe); | ||||
| datamap.put("otherOwe", owe); | |||||
| datamap.put("depositOwe", owe); | |||||
| } else { | } else { | ||||
| datamap.put("otherOwe", 0); | |||||
| datamap.put("depositOwe", 0); | |||||
| } | } | ||||
| payinfo = wxBillDepositMapper.queryOweInfoAll(params); | |||||
| billTypeList = new ArrayList<>(); | |||||
| billTypeList.add(EnumBillTypeStr.D.getCode()); | |||||
| billTypeList.add(EnumBillTypeStr.W.getCode()); | |||||
| billTypeList.add(EnumBillTypeStr.K.getCode()); | |||||
| billTypeList.add(EnumBillTypeStr.O.getCode()); | |||||
| wxBillAll.setBillTypeList(billTypeList); | |||||
| payinfo = wxBillAllMapper.queryOweInfo(wxBillAll); | |||||
| if (payinfo != null) { | if (payinfo != null) { | ||||
| BigDecimal owe = (BigDecimal) payinfo.get("owe"); | |||||
| BigDecimal owe = ((BigDecimal) payinfo.get("owe")).divide(new BigDecimal(100)); | |||||
| totalOwe = totalOwe.add(owe); | totalOwe = totalOwe.add(owe); | ||||
| datamap.put("totalOwe", owe); | |||||
| datamap.put("otherOwe", owe); | |||||
| } else { | } else { | ||||
| datamap.put("totalOwe", 0); | |||||
| datamap.put("otherOwe", 0); | |||||
| } | } | ||||
| datamap.put("totalOwe", totalOwe); | |||||
| datamap.put("totalOwe", totalOwe); | |||||
| return new ResultData(datamap); | return new ResultData(datamap); | ||||
| } | } | ||||
| public static void main(String[] args) { | |||||
| BigDecimal receivepay = new BigDecimal(33); | |||||
| BigDecimal pay = new BigDecimal(11); | |||||
| BigDecimal divide = pay.divide(receivepay, 2, BigDecimal.ROUND_UNNECESSARY); | |||||
| System.out.println(divide); | |||||
| double zjcjl = divide.multiply(new BigDecimal(100)).doubleValue(); | |||||
| System.out.println(zjcjl); | |||||
| } | |||||
| /** | /** | ||||
| * 营销数据 | * 营销数据 | ||||
| * @param tenantId | * @param tenantId | ||||
| @@ -12,6 +12,7 @@ import com.iformall.enums.*; | |||||
| import com.iformall.mapper.*; | import com.iformall.mapper.*; | ||||
| import com.iformall.mq.MqBaseProducer; | import com.iformall.mq.MqBaseProducer; | ||||
| import com.iformall.service.WxMsgValidationcodeService; | import com.iformall.service.WxMsgValidationcodeService; | ||||
| import com.iformall.utils.DateUtils; | |||||
| import org.apache.commons.collections.map.HashedMap; | import org.apache.commons.collections.map.HashedMap; | ||||
| import org.slf4j.Logger; | import org.slf4j.Logger; | ||||
| import org.slf4j.LoggerFactory; | import org.slf4j.LoggerFactory; | ||||
| @@ -84,40 +85,19 @@ public class WxMsgValidationcodeServiceImpl implements WxMsgValidationcodeServic | |||||
| Date currentdate = new Date(); | Date currentdate = new Date(); | ||||
| wxmsgvalidationcodelist = wxmsgvalidationcodelist.stream().filter(validationcode -> | wxmsgvalidationcodelist = wxmsgvalidationcodelist.stream().filter(validationcode -> | ||||
| validationcode.getExpiretime().after(currentdate)).collect(Collectors.toList()); | validationcode.getExpiretime().after(currentdate)).collect(Collectors.toList()); | ||||
| if(wxmsgvalidationcodelist.size()>0) return new ResultData(ErrorCode.MSG_REPEAT_SEND.getCode(),ErrorCode.MSG_REPEAT_SEND.getMessage()); | |||||
| //2、根据tenantid查询出商场名称作为签名 | |||||
| /*WxMall wxMall = new WxMall(); | |||||
| wxMall.setTenantId(wxMsgValidationcode.getTenantId()); | |||||
| List<WxMall> wxmallist = wxMallMapper.findList(wxMall);*/ | |||||
| //3、从短信配置中查询密钥 bid 等信息 | |||||
| // WxMsgConfig wxMsgConfig = new WxMsgConfig(); | |||||
| // wxMsgConfig.setTenantId(wxMsgValidationcode.getTenantId()); | |||||
| // List<WxMsgConfig> wxMsgConfigs = wxMsgConfigMapper.findList(wxMsgConfig); | |||||
| // if (wxMsgConfigs.size() == 0) new ResultData(ErrorCode.MSG_SEND_ERROR.getCode(),"发送失败"); | |||||
| // wxMsgConfig = wxMsgConfigs.get(0); | |||||
| // | |||||
| // WxMsgValidationcodeModel wxMsgValidationcodeModel = new WxMsgValidationcodeModel(); | |||||
| // wxMsgValidationcodeModel.setTenantId(wxMsgConfig.getTenantId()); | |||||
| // wxMsgValidationcodeModel.setType(EnumMsgModel.VALIDATION_CODE.getCode()); | |||||
| // wxMsgValidationcodeModel = wxMsgValidationcodeModelMapper.findList(wxMsgValidationcodeModel).get(0); | |||||
| // wxMsgValidationcode.setSignature(wxMsgValidationcodeModel.getSignature()); | |||||
| // | |||||
| // String secret = wxMsgConfig.getSecret(); | |||||
| // String bid = wxMsgConfig.getBid(); | |||||
| // String publickey = wxMsgConfig.getPublickey(); | |||||
| // //验证码 | |||||
| int code = (int) ((Math.random() * 9 + 1) * 100000); | |||||
| // String phone = wxMsgValidationcode.getPhone(); | |||||
| // String signature = wxMsgValidationcode.getSignature(); | |||||
| // //内容 | |||||
| // String msg = wxMsgValidationcodeModel.getContent().replace("{s6}", String.valueOf(code)); | |||||
| // wxMsgValidationcode.setCode(String.valueOf(code)); | |||||
| // wxMsgValidationcode.setMsg(msg); | |||||
| // String notifyUrl = wxMsgConfig.getNotifyurl(); | |||||
| // Integer modelId = wxMsgValidationcodeModel.getModelId(); | |||||
| if (wxmsgvalidationcodelist.size() > 0) { | |||||
| return new ResultData(ErrorCode.MSG_REPEAT_SEND); | |||||
| } | |||||
| //2 判断是否已超过3条 | |||||
| String systemTime = DateUtils.getSystemTime("yyyy-MM-dd"); | |||||
| wxMsgValidationcode.setCreatetimeStr(systemTime); | |||||
| List<WxMsgValidationcode> list = wxMsgValidationcodeMapper.findList(wxMsgValidationcode); | |||||
| if (list.size() == 3) { | |||||
| return new ResultData(ErrorCode.MSG_SEND_ERROR.getCode(), "验证码发送超限"); | |||||
| } | |||||
| //验证码 | |||||
| int code = (int) ((Math.random() * 9 + 1) * 100000); | |||||
| //给发起人发送驳回消息 | //给发起人发送驳回消息 | ||||
| Map<String,String> msgReplaceMap = new HashedMap(); | Map<String,String> msgReplaceMap = new HashedMap(); | ||||
| @@ -130,26 +110,6 @@ public class WxMsgValidationcodeServiceImpl implements WxMsgValidationcodeServic | |||||
| wxMsgRecord.setDynamicContentMap(msgReplaceMap); | wxMsgRecord.setDynamicContentMap(msgReplaceMap); | ||||
| mqBaseProducer.sendMessage(wxMsgRecord, EnumMsgMqTopic.DEFAULT.getCode(),EnumMsgMqTag.DEFAULT.getCode(),EnumMsgMqKey.DEFAULT.getCode()); | mqBaseProducer.sendMessage(wxMsgRecord, EnumMsgMqTopic.DEFAULT.getCode(),EnumMsgMqTag.DEFAULT.getCode(),EnumMsgMqKey.DEFAULT.getCode()); | ||||
| return new ResultData(Result.SUCCESS,"发送成功"); | return new ResultData(Result.SUCCESS,"发送成功"); | ||||
| // String result = WiwideUtil.sendMsg(secret, bid, publickey, phone, signature, msg, notifyUrl, EnumVerifyCode.YES.getCode().toString(), modelId); | |||||
| // JSONObject jsonObjectResult = JSONObject.parseObject(result); | |||||
| // String ret = jsonObjectResult.get("ret").toString(); | |||||
| // String batchNo = jsonObjectResult.get("data").toString(); | |||||
| // if (ret.equals("1")) { | |||||
| // final IdWorker idWorker = IdWorker.get(); | |||||
| // wxMsgValidationcode.setId(idWorker.nextId()); | |||||
| // long currentTime = System.currentTimeMillis() ; | |||||
| // Date createtime=new Date(currentTime); | |||||
| // Integer minutes = wxMsgValidationcodeModel.getMinutes(); | |||||
| // currentTime +=minutes*60*1000; | |||||
| // Date expiredate=new Date(currentTime); | |||||
| // wxMsgValidationcode.setExpiretime(expiredate); | |||||
| // wxMsgValidationcode.setCreatetime(createtime); | |||||
| // wxMsgValidationcodeMapper.insertSelective(wxMsgValidationcode); | |||||
| // addMsgCallback(wxMsgValidationcode,batchNo); | |||||
| // return new ResultData(Result.SUCCESS,"发送成功"); | |||||
| // } | |||||
| // return new ResultData(ErrorCode.MSG_SEND_ERROR.getCode(),"发送失败"); | |||||
| } | } | ||||
| @Override | @Override | ||||
| @@ -674,7 +674,7 @@ public class WxPropertyContractServiceImpl implements WxPropertyContractService | |||||
| } | } | ||||
| wxBillProperty.setNeedPay(needpay); | wxBillProperty.setNeedPay(needpay); | ||||
| wxBillProperty.setOwe(needpay); | |||||
| wxBillProperty.setOwe(0L); | |||||
| wxBillProperty.setReceivePay(needpay); | wxBillProperty.setReceivePay(needpay); | ||||
| //截止收租日在当前时间之前 | //截止收租日在当前时间之前 | ||||
| @@ -682,6 +682,7 @@ public class WxPropertyContractServiceImpl implements WxPropertyContractService | |||||
| long day = (time.getTime() - date.getTime()) / (24 * 60 * 60 * 1000); | long day = (time.getTime() - date.getTime()) / (24 * 60 * 60 * 1000); | ||||
| wxBillProperty.setStatus(EnumBillRentStatus.NOT_PAID.getCode()); | wxBillProperty.setStatus(EnumBillRentStatus.NOT_PAID.getCode()); | ||||
| wxBillProperty.setExpiredDay(day); | wxBillProperty.setExpiredDay(day); | ||||
| wxBillProperty.setOwe(needpay); | |||||
| } else {//截止收租日在当前时间之后 | } else {//截止收租日在当前时间之后 | ||||
| Calendar now = Calendar.getInstance(); | Calendar now = Calendar.getInstance(); | ||||
| now.add(dayType, receivePeriod); | now.add(dayType, receivePeriod); | ||||
| @@ -1065,7 +1065,7 @@ public class WxRentContractServiceImpl implements WxRentContractService { | |||||
| } | } | ||||
| wxBillRent.setNeedPay(needpay); | wxBillRent.setNeedPay(needpay); | ||||
| wxBillRent.setOwe(needpay); | |||||
| wxBillRent.setOwe(0L); | |||||
| wxBillRent.setReceivePay(needpay); | wxBillRent.setReceivePay(needpay); | ||||
| //截止收租日在当前时间之前 | //截止收租日在当前时间之前 | ||||
| @@ -1073,6 +1073,7 @@ public class WxRentContractServiceImpl implements WxRentContractService { | |||||
| long day = (time.getTime() - date.getTime()) / (24 * 60 * 60 * 1000); | long day = (time.getTime() - date.getTime()) / (24 * 60 * 60 * 1000); | ||||
| wxBillRent.setStatus(EnumBillRentStatus.NOT_PAID.getCode()); | wxBillRent.setStatus(EnumBillRentStatus.NOT_PAID.getCode()); | ||||
| wxBillRent.setExpiredDay(day); | wxBillRent.setExpiredDay(day); | ||||
| wxBillRent.setOwe(needpay); | |||||
| } else {//截止收租日在当前时间之后 | } else {//截止收租日在当前时间之后 | ||||
| Calendar now = Calendar.getInstance(); | Calendar now = Calendar.getInstance(); | ||||
| now.add(dayType, receivePeriod); | now.add(dayType, receivePeriod); | ||||
| @@ -168,6 +168,7 @@ public class WxShopServiceImpl implements WxShopService { | |||||
| @Override | @Override | ||||
| public void exportNotRentShop(WxShop wxShop, HttpServletRequest request, HttpServletResponse response) { | public void exportNotRentShop(WxShop wxShop, HttpServletRequest request, HttpServletResponse response) { | ||||
| wxShop.setStatus(EnumShopStatus.NOT_RENT.getCode()); | |||||
| List<Map<String,Object>> shops = wxShopMapper.notRentListMapAsPage(wxShop); | List<Map<String,Object>> shops = wxShopMapper.notRentListMapAsPage(wxShop); | ||||
| List<WxNotRentShopVo> notRentShopVoList = new ArrayList<>(); | List<WxNotRentShopVo> notRentShopVoList = new ArrayList<>(); | ||||
| for (Map<String,Object> m:shops) { | for (Map<String,Object> m:shops) { | ||||
| @@ -177,9 +178,9 @@ public class WxShopServiceImpl implements WxShopService { | |||||
| notRentShopVo.setFloor((String)m.get("floor")); | notRentShopVo.setFloor((String)m.get("floor")); | ||||
| notRentShopVo.setFreeDay((Long) m.get("freeDay")); | notRentShopVo.setFreeDay((Long) m.get("freeDay")); | ||||
| notRentShopVo.setOperationArea((String) m.get("operationArea")); | notRentShopVo.setOperationArea((String) m.get("operationArea")); | ||||
| Integer point = (Integer) m.get("pointType"); | |||||
| Integer point = (Integer) m.get("type"); | |||||
| if(point != null){ | if(point != null){ | ||||
| notRentShopVo.setPointType(EnumPointType.getEnum(point).getMessage()); | |||||
| notRentShopVo.setPointType(EnumRentShopType.getEnum(point).getMessage()); | |||||
| } | } | ||||
| notRentShopVo.setShopNumber((String) m.get("shopNumber")); | notRentShopVo.setShopNumber((String) m.get("shopNumber")); | ||||
| notRentShopVoList.add(notRentShopVo); | notRentShopVoList.add(notRentShopVo); | ||||
| @@ -81,6 +81,9 @@ public class SendSmsServiceImpl implements MsgSendService { | |||||
| msg = msg.replace("{"+entry.getKey()+"}", entry.getValue()); | msg = msg.replace("{"+entry.getKey()+"}", entry.getValue()); | ||||
| } | } | ||||
| wxMsgValidationcode.setMsg(msg); | wxMsgValidationcode.setMsg(msg); | ||||
| if(record.getDynamicContentMap() !=null) { | |||||
| wxMsgValidationcode.setCode(record.getDynamicContentMap().get("s6")); | |||||
| } | |||||
| String notifyUrl = wxMsgConfig.getNotifyurl(); | String notifyUrl = wxMsgConfig.getNotifyurl(); | ||||
| Integer modelId = wxMsgValidationcodeModel.getModelId(); | Integer modelId = wxMsgValidationcodeModel.getModelId(); | ||||
| @@ -153,6 +153,13 @@ | |||||
| <if test=" null != rentShopType "> | <if test=" null != rentShopType "> | ||||
| and bill.rent_shop_type = #{rentShopType} | and bill.rent_shop_type = #{rentShopType} | ||||
| </if> | </if> | ||||
| <if test=" null != billTypeList "> | |||||
| and bill.bill_type_value in | |||||
| <foreach collection="billTypeList" index="index" item="type" open="(" separator="," close=")"> | |||||
| #{type} | |||||
| </foreach> | |||||
| </if> | |||||
| </select> | </select> | ||||
| <select id="queryPaidInfo" parameterType="com.iformall.domain.vo.WxBillAll" resultType="hashmap"> | <select id="queryPaidInfo" parameterType="com.iformall.domain.vo.WxBillAll" resultType="hashmap"> | ||||
| @@ -503,36 +510,36 @@ | |||||
| select id,merchant_id,shop_id,tenant_id,'租金' name,1 bill_type_value,'租金' | select id,merchant_id,shop_id,tenant_id,'租金' name,1 bill_type_value,'租金' | ||||
| bill_type,need_pay,receive_pay,pay,owe,DATE_FORMAT(receive_date,'%Y-%m-%d') receive_date,pay_date,expired_day,status,'' starttime,'' | bill_type,need_pay,receive_pay,pay,owe,DATE_FORMAT(receive_date,'%Y-%m-%d') receive_date,pay_date,expired_day,status,'' starttime,'' | ||||
| endtime,rent_shop_type from wx_bill_rent where is_preview = 0 and tenant_id = #{tenantId} | |||||
| endtime,rent_shop_type from wx_bill_rent where is_preview = 0 and status = 1 and tenant_id = #{tenantId} | |||||
| union | union | ||||
| select id,merchant_id,shop_id,tenant_id,'物业费' name,3 bill_type_value,'物业费' | select id,merchant_id,shop_id,tenant_id,'物业费' name,3 bill_type_value,'物业费' | ||||
| bill_type,need_pay,receive_pay,pay,owe,DATE_FORMAT(receive_date,'%Y-%m-%d') receive_date,pay_date,expired_day,status,'' starttime,'' | bill_type,need_pay,receive_pay,pay,owe,DATE_FORMAT(receive_date,'%Y-%m-%d') receive_date,pay_date,expired_day,status,'' starttime,'' | ||||
| endtime,rent_shop_type from wx_bill_property where is_preview = 0 and tenant_id = #{tenantId} | |||||
| endtime,rent_shop_type from wx_bill_property where is_preview = 0 and status = 1 and tenant_id = #{tenantId} | |||||
| union | union | ||||
| select res.id,res.merchant_id,res.shop_id,res.tenant_id,res.name,res.bill_type_value,res.bill_type,res.need_pay, | select res.id,res.merchant_id,res.shop_id,res.tenant_id,res.name,res.bill_type_value,res.bill_type,res.need_pay, | ||||
| res.receive_pay,res.pay,res.owe owe,res.receive_date,res.pay_date,res.expired_day,res.status,res.starttime,res.endtime,res.rent_shop_type from( | res.receive_pay,res.pay,res.owe owe,res.receive_date,res.pay_date,res.expired_day,res.status,res.starttime,res.endtime,res.rent_shop_type from( | ||||
| select id,merchant_id,shop_id,tenant_id,'欠缴押金' name,2 bill_type_value,'欠缴押金' | select id,merchant_id,shop_id,tenant_id,'欠缴押金' name,2 bill_type_value,'欠缴押金' | ||||
| bill_type,need_pay,receive_pay,pay,owe,DATE_FORMAT(receive_date,'%Y-%m-%d') receive_date,pay_date,expired_day,status,'' starttime,'' | bill_type,need_pay,receive_pay,pay,owe,DATE_FORMAT(receive_date,'%Y-%m-%d') receive_date,pay_date,expired_day,status,'' starttime,'' | ||||
| endtime,rent_shop_type from wx_bill_rent_deposit where tenant_id = #{tenantId} | |||||
| endtime,rent_shop_type from wx_bill_rent_deposit where status = 1 and tenant_id = #{tenantId} | |||||
| union | union | ||||
| select id,merchant_id,shop_id,tenant_id,'欠缴押金' name,4 bill_type_value,'欠缴押金' | select id,merchant_id,shop_id,tenant_id,'欠缴押金' name,4 bill_type_value,'欠缴押金' | ||||
| bill_type,need_pay,receive_pay,pay,owe,DATE_FORMAT(receive_date,'%Y-%m-%d') receive_date,pay_date,expired_day,status,'' starttime,'' | bill_type,need_pay,receive_pay,pay,owe,DATE_FORMAT(receive_date,'%Y-%m-%d') receive_date,pay_date,expired_day,status,'' starttime,'' | ||||
| endtime,rent_shop_type from wx_bill_property_deposit where tenant_id = #{tenantId} | |||||
| endtime,rent_shop_type from wx_bill_property_deposit where status = 1 and tenant_id = #{tenantId} | |||||
| union | union | ||||
| select id,merchant_id,shop_id,tenant_id,'欠缴押金' name,8 bill_type_value,'欠缴押金' bill_type,0 as | select id,merchant_id,shop_id,tenant_id,'欠缴押金' name,8 bill_type_value,'欠缴押金' bill_type,0 as | ||||
| need_pay,receive_pay,pay,owe,DATE_FORMAT(receive_date,'%Y-%m-%d') receive_date,pay_date,expired_day,status,'' starttime,'' endtime,rent_shop_type | need_pay,receive_pay,pay,owe,DATE_FORMAT(receive_date,'%Y-%m-%d') receive_date,pay_date,expired_day,status,'' starttime,'' endtime,rent_shop_type | ||||
| from wx_bill_other_deposit where tenant_id = #{tenantId} | |||||
| from wx_bill_other_deposit where status = 1 and tenant_id = #{tenantId} | |||||
| ) res | ) res | ||||
| union | union | ||||
| select res.id,res.merchant_id,res.shop_id,res.tenant_id,res.name,res.bill_type_value,res.bill_type,res.need_pay, | select res.id,res.merchant_id,res.shop_id,res.tenant_id,res.name,res.bill_type_value,res.bill_type,res.need_pay, | ||||
| res.receive_pay,res.pay,res.owe owe,res.receive_date,res.pay_date,res.expired_day,res.status,res.starttime,res.endtime,res.rent_shop_type from( | res.receive_pay,res.pay,res.owe owe,res.receive_date,res.pay_date,res.expired_day,res.status,res.starttime,res.endtime,res.rent_shop_type from( | ||||
| select id,merchant_id,shop_id,tenant_id,'其他费用' name,5 bill_type_value,'其他费用' bill_type,0 as | select id,merchant_id,shop_id,tenant_id,'其他费用' name,5 bill_type_value,'其他费用' bill_type,0 as | ||||
| need_pay,receive_pay,pay,owe,DATE_FORMAT(receive_date,'%Y-%m-%d') receive_date,pay_date,expired_day,status,'' starttime,'' endtime,rent_shop_type | need_pay,receive_pay,pay,owe,DATE_FORMAT(receive_date,'%Y-%m-%d') receive_date,pay_date,expired_day,status,'' starttime,'' endtime,rent_shop_type | ||||
| from wx_bill_daily where type in(1,2) and tenant_id = #{tenantId} | |||||
| from wx_bill_daily where type in(1,2) and status = 1 and tenant_id = #{tenantId} | |||||
| union | union | ||||
| select id,merchant_id,shop_id,tenant_id,'其他费用' name,7 bill_type_value,'其他费用' bill_type,0 as | select id,merchant_id,shop_id,tenant_id,'其他费用' name,7 bill_type_value,'其他费用' bill_type,0 as | ||||
| need_pay,receive_pay,pay,owe,DATE_FORMAT(receive_date,'%Y-%m-%d') receive_date,pay_date,expired_day,status,'' starttime,'' endtime,rent_shop_type | need_pay,receive_pay,pay,owe,DATE_FORMAT(receive_date,'%Y-%m-%d') receive_date,pay_date,expired_day,status,'' starttime,'' endtime,rent_shop_type | ||||
| from wx_bill_other where tenant_id = #{tenantId} | |||||
| from wx_bill_other where status = 1 and tenant_id = #{tenantId} | |||||
| ) res | ) res | ||||
| ) bill | ) bill | ||||
| @@ -98,7 +98,7 @@ | |||||
| </select> | </select> | ||||
| <select id="queryPayInfoAllTotal" resultType="hashmap" parameterType="hashmap"> | <select id="queryPayInfoAllTotal" resultType="hashmap" parameterType="hashmap"> | ||||
| select sum(res.receivepay) receivepay,sum(res.pay) pay,res.tenant_id from | |||||
| select round(sum(res.receivepay)/100,2) receivepay,round(sum(res.pay)/100,2) pay,res.tenant_id from | |||||
| ( | ( | ||||
| select IFNULL(sum(receive_pay),0) receivepay,IFNULL(sum(pay),0) pay,tenant_id from wx_bill_rent_deposit | select IFNULL(sum(receive_pay),0) receivepay,IFNULL(sum(pay),0) pay,tenant_id from wx_bill_rent_deposit | ||||
| where tenant_id=#{tenantId} and receive_date between #{startdate} and #{enddate} | where tenant_id=#{tenantId} and receive_date between #{startdate} and #{enddate} | ||||
| @@ -115,13 +115,13 @@ | |||||
| select IFNULL(round(sum(res.owe)/100,2),0) owe,res.tenant_id from | select IFNULL(round(sum(res.owe)/100,2),0) owe,res.tenant_id from | ||||
| ( | ( | ||||
| select IFNULL(sum(owe),0) owe,tenant_id from wx_bill_rent_deposit | select IFNULL(sum(owe),0) owe,tenant_id from wx_bill_rent_deposit | ||||
| where tenant_id=#{tenantId} and date_format(receive_date,'%Y-%m')=#{receiveDate} | |||||
| where status = 1 and tenant_id=#{tenantId} and receive_date between #{startdate} and #{enddate} | |||||
| union all | union all | ||||
| select IFNULL(sum(owe),0) owe,tenant_id from wx_bill_property_deposit | select IFNULL(sum(owe),0) owe,tenant_id from wx_bill_property_deposit | ||||
| where tenant_id=#{tenantId} and date_format(receive_date,'%Y-%m')=#{receiveDate} | |||||
| where status = 1 and tenant_id=#{tenantId} and receive_date between #{startdate} and #{enddate} | |||||
| union all | union all | ||||
| select IFNULL(sum(owe),0) owe,tenant_id from wx_bill_other_deposit | select IFNULL(sum(owe),0) owe,tenant_id from wx_bill_other_deposit | ||||
| where tenant_id=#{tenantId} and date_format(receive_date,'%Y-%m')=#{receiveDate} | |||||
| where status = 1 and tenant_id=#{tenantId} and receive_date between #{startdate} and #{enddate} | |||||
| ) res | ) res | ||||
| </select> | </select> | ||||
| @@ -111,8 +111,14 @@ | |||||
| <select id="queryOweInfo" resultType="hashmap" parameterType="hashmap"> | <select id="queryOweInfo" resultType="hashmap" parameterType="hashmap"> | ||||
| select IFNULL(round(sum(owe)/100,2),0) owe,tenant_id from wx_bill_other | |||||
| where status = 1 and tenant_id=#{tenantId} and receive_date between #{startdate} and #{enddate} | |||||
| select IFNULL(round(sum(res.owe)/100,2),0) owe,res.tenant_id from | |||||
| ( | |||||
| select IFNULL(sum(owe),0) owe,tenant_id from wx_bill_daily | |||||
| where tenant_id=#{tenantId} and receive_date between #{startdate} and #{enddate} and status = 1 | |||||
| union all | |||||
| select IFNULL(sum(owe),0) owe,tenant_id from wx_bill_daily | |||||
| where tenant_id=#{tenantId} and receive_date between #{startdate} and #{enddate} and status = 1 | |||||
| ) res | |||||
| </select> | </select> | ||||
| </mapper> | </mapper> | ||||
| @@ -122,7 +122,7 @@ | |||||
| <select id="queryPayInfoTotal" resultType="hashmap" parameterType="hashmap"> | <select id="queryPayInfoTotal" resultType="hashmap" parameterType="hashmap"> | ||||
| select IFNULL(sum(receive_pay),0) receivepay,IFNULL(sum(pay),0) pay,tenant_id from wx_bill_property | |||||
| select round(sum(receive_pay)/100,2) receivepay,round(sum(pay)/100,2) pay,tenant_id from wx_bill_property | |||||
| where tenant_id=#{tenantId} and receive_date between #{startdate} and #{enddate} and is_preview = 0 | where tenant_id=#{tenantId} and receive_date between #{startdate} and #{enddate} and is_preview = 0 | ||||
| </select> | </select> | ||||
| @@ -125,7 +125,7 @@ | |||||
| </select> | </select> | ||||
| <select id="queryPayInfoTotal" resultType="hashmap" parameterType="hashmap"> | <select id="queryPayInfoTotal" resultType="hashmap" parameterType="hashmap"> | ||||
| select IFNULL(sum(receive_pay),0) receivepay,IFNULL(sum(pay),0) pay,tenant_id from wx_bill_rent | |||||
| select round(sum(receive_pay)/100,2) receivepay,round(sum(pay)/100,2) pay,tenant_id from wx_bill_rent | |||||
| where tenant_id=#{tenantId} and receive_date between #{startdate} and #{enddate} and is_preview = 0 | where tenant_id=#{tenantId} and receive_date between #{startdate} and #{enddate} and is_preview = 0 | ||||
| </select> | </select> | ||||
| @@ -509,21 +509,21 @@ | |||||
| left join wx_coupon c on c.id = ci.coupon_id | left join wx_coupon c on c.id = ci.coupon_id | ||||
| left join wx_coupon_order co on co.id = ci.id | left join wx_coupon_order co on co.id = ci.id | ||||
| where c.type = 100 | where c.type = 100 | ||||
| and c.create_date between #{startdate} and #{enddate} | |||||
| and co.create_date between #{startdate} and #{enddate} | |||||
| </select> | </select> | ||||
| <select id="findTranCardCount" parameterType="com.iformall.domain.po.WxCoupon" resultType="Long"> | <select id="findTranCardCount" parameterType="com.iformall.domain.po.WxCoupon" resultType="Long"> | ||||
| select count(distinct wcs.coupon_order_id) from wx_card_info ci | select count(distinct wcs.coupon_order_id) from wx_card_info ci | ||||
| left join wx_coupon c on c.id = ci.coupon_id | left join wx_coupon c on c.id = ci.coupon_id | ||||
| left join wx_card_transfer_info wcs on wcs.coupon_order_id = ci.id | left join wx_card_transfer_info wcs on wcs.coupon_order_id = ci.id | ||||
| where c.type = 100 and c.create_date between #{startdate} and #{enddate} | |||||
| where c.type = 100 and wcs.create_date between #{startdate} and #{enddate} | |||||
| </select> | </select> | ||||
| <select id="findSubsidyMoney" parameterType="com.iformall.domain.po.WxCoupon" resultType="String"> | <select id="findSubsidyMoney" parameterType="com.iformall.domain.po.WxCoupon" resultType="String"> | ||||
| select sum(round(sc.subsidy/100,2)) from wx_card_info ci | select sum(round(sc.subsidy/100,2)) from wx_card_info ci | ||||
| left join wx_coupon c on c.id = ci.coupon_id | left join wx_coupon c on c.id = ci.coupon_id | ||||
| left join wx_merchant_subsidy sc on sc.coupon_order_id = ci.id | left join wx_merchant_subsidy sc on sc.coupon_order_id = ci.id | ||||
| where c.type = 100 and c.create_date between #{startdate} and #{enddate} | |||||
| where c.type = 100 and sc.create_date between #{startdate} and #{enddate} | |||||
| </select> | </select> | ||||
| <select id="findCountData" parameterType="com.iformall.domain.po.WxCoupon" resultMap="statisMap"> | <select id="findCountData" parameterType="com.iformall.domain.po.WxCoupon" resultMap="statisMap"> | ||||
| @@ -692,7 +692,7 @@ | |||||
| left join wx_coupon_order wo on wo.coupon_id = c.id | left join wx_coupon_order wo on wo.coupon_id = c.id | ||||
| left join wx_merchant_subsidy sc on sc.coupon_order_id = wo.id | left join wx_merchant_subsidy sc on sc.coupon_order_id = wo.id | ||||
| where c.type not in(8,9,100) and wo.coupon_order_status = 1 | where c.type not in(8,9,100) and wo.coupon_order_status = 1 | ||||
| and c.create_date between #{startdate} and #{enddate} | |||||
| and sc.create_date between #{startdate} and #{enddate} | |||||
| </select> | </select> | ||||
| @@ -760,7 +760,7 @@ | |||||
| left join wx_coupon c on c.id = ci.coupon_id | left join wx_coupon c on c.id = ci.coupon_id | ||||
| left join wx_coupon_order co on co.id = ci.id | left join wx_coupon_order co on co.id = ci.id | ||||
| where c.type = 100 | where c.type = 100 | ||||
| and c.create_date between #{startdate} and #{enddate} | |||||
| and co.create_date between #{startdate} and #{enddate} | |||||
| group by xtime | group by xtime | ||||
| </select> | </select> | ||||
| @@ -22,14 +22,15 @@ | |||||
| <sql id="dynamicWhereConditions"> | <sql id="dynamicWhereConditions"> | ||||
| where 1 = 1 | where 1 = 1 | ||||
| <if test=" null != id "> and `id` = #{id} </if> | <if test=" null != id "> and `id` = #{id} </if> | ||||
| <if test=" null != phone "> and `phone` = #{phone} </if> | |||||
| <if test=" null != expiretime "> and `expiretime` = #{expiretime} </if> | |||||
| <if test=" null != createtime "> and `createtime` = #{createtime} </if> | |||||
| <if test=" null != phone "> and `phone` = #{phone} </if> | |||||
| <if test=" null != expiretime ">and `expiretime` = #{expiretime}</if> | |||||
| <if test=" null != createtime ">and `createtime` = #{createtime}</if> | |||||
| <if test=" null != type "> and `type` = #{type} </if> | <if test=" null != type "> and `type` = #{type} </if> | ||||
| <if test=" null != tenantId "> and `tenant_id` = #{tenantId} </if> | <if test=" null != tenantId "> and `tenant_id` = #{tenantId} </if> | ||||
| <if test=" null != msg "> and `msg` = #{msg} </if> | |||||
| <if test=" null != signature "> and `signature` = #{signature} </if> | |||||
| <if test=" null != code "> and `code` = #{code} </if> | |||||
| <if test=" null != msg "> and `msg` = #{msg} </if> | |||||
| <if test=" null != signature ">and `signature` = #{signature}</if> | |||||
| <if test=" null != code ">and `code` = #{code}</if> | |||||
| <if test=" null != createtimeStr ">and date_format(`createtime`,'%Y-%m-%d') = #{createtimeStr}</if> | |||||
| <if test=" null != ids "> | <if test=" null != ids "> | ||||
| and id in | and id in | ||||
| <foreach collection="ids" index="index" item="idItem" open="(" separator="," close=")"> | <foreach collection="ids" index="index" item="idItem" open="(" separator="," close=")"> | ||||
| @@ -500,7 +500,7 @@ | |||||
| </if> | </if> | ||||
| <if test="null!=status and status==1 and type!=null and type==2"> | <if test="null!=status and status==1 and type!=null and type==2"> | ||||
| and s.id not in( | and s.id not in( | ||||
| SELECT shop_id FROM wx_rent_contract WHERE tenant_id = #{tenantId} and status in(2,3,4) | |||||
| SELECT shop_id FROM wx_rent_contract WHERE tenant_id = #{tenantId} and status in(1,2,3,4) | |||||
| and rent_shop_type=2 | and rent_shop_type=2 | ||||
| ) | ) | ||||
| </if> | </if> | ||||