java110 před 5 roky
rodič
revize
d094800714

+ 9 - 0
java110-bean/src/main/java/com/java110/dto/fee/BillOweFeeDto.java

@@ -33,6 +33,7 @@ public class BillOweFeeDto extends PageDto implements Serializable {
     private String createTime;
     private String[] ownerIds;
     private String deadlineTime;
+    private String payObjId;
 
 
     public String getOweId() {
@@ -162,4 +163,12 @@ public class BillOweFeeDto extends PageDto implements Serializable {
     public void setDeadlineTime(String deadlineTime) {
         this.deadlineTime = deadlineTime;
     }
+
+    public String getPayObjId() {
+        return payObjId;
+    }
+
+    public void setPayObjId(String payObjId) {
+        this.payObjId = payObjId;
+    }
 }

+ 3 - 1
java110-db/src/main/resources/mapper/fee/FeeServiceDaoImplMapper.xml

@@ -463,8 +463,10 @@
         t.community_id communityId,
         t.state,
         t.create_time createTime,
-        t.deadline_time deadlineTime
+        t.deadline_time deadlineTime,
+        pf.payer_obj_id payObjId
         from bill_owe_fee t
+        left join pay_fee pf on t.fee_id = pf.fee_id and t.community_id = pf.community_id and pf.status_cd = '0'
         where 1 =1
         <if test="oweId !=null and oweId != ''">
             and t.owe_id= #{oweId}

+ 2 - 0
java110-utils/src/main/java/com/java110/utils/constant/WechatConstant.java

@@ -28,6 +28,8 @@ public class WechatConstant {
 
     public static final String NO_BIND_OWNER_RESPONSE_MESSAGE = "亲,您还没有绑定业主请先<a href=\"https://owner.demo.winqi.cn/#/pages/login/login\">绑定</a>";
 
+    public static final String OWE_FEE_PAGE = "OWE_FEE_PAGE";
+
 
     public static final String MSG_TYPE_TEXT = "text";
     public static final String MSG_TYPE_LOCATION = "location";

+ 2 - 2
service-fee/src/main/java/com/java110/fee/bmo/feeManualCollection/impl/SaveFeeManualCollectionBMOImpl.java

@@ -119,8 +119,8 @@ public class SaveFeeManualCollectionBMOImpl implements ISaveFeeManualCollectionB
         List<FeeManualCollectionDto> feeManualCollectionDtos = feeManualCollectionInnerServiceSMOImpl.queryFeeManualCollections(feeManualCollectionDto);
         if (feeManualCollectionDtos == null || feeManualCollectionDtos.size() < 1) {
             feeManualCollectionPo.setOwnerId(ownerDtos.get(0).getOwnerId());
-            feeManualCollectionPo.setLink(ownerCarDtos.get(0).getLink());
-            feeManualCollectionPo.setOwnerName(ownerCarDtos.get(0).getOwnerName());
+            feeManualCollectionPo.setLink(ownerDtos.get(0).getLink());
+            feeManualCollectionPo.setOwnerName(ownerDtos.get(0).getName());
             feeManualCollectionPo.setState(FeeManualCollectionDto.STATE_COLLECTION);
             feeManualCollectionPo.setRoomArea(roomDto.getBuiltUpArea());
             feeManualCollectionPo.setRoomName(roomDto.getFloorNum() + "-" + roomDto.getUnitNum() + "-" + roomDto.getRoomNum());

+ 8 - 4
service-job/src/main/java/com/java110/job/task/wechat/PublicWeChatPushMessageTemplate.java

@@ -2,10 +2,6 @@ package com.java110.job.task.wechat;
 
 import com.alibaba.fastjson.JSON;
 import com.java110.core.factory.WechatFactory;
-import com.java110.intf.fee.IFeeInnerServiceSMO;
-import com.java110.intf.store.ISmallWechatAttrInnerServiceSMO;
-import com.java110.intf.store.ISmallWeChatInnerServiceSMO;
-import com.java110.intf.user.IOwnerAppUserInnerServiceSMO;
 import com.java110.dto.community.CommunityDto;
 import com.java110.dto.fee.BillOweFeeDto;
 import com.java110.dto.owner.OwnerAppUserDto;
@@ -15,7 +11,13 @@ import com.java110.dto.task.TaskDto;
 import com.java110.entity.wechat.Content;
 import com.java110.entity.wechat.Data;
 import com.java110.entity.wechat.PropertyFeeTemplateMessage;
+import com.java110.intf.fee.IFeeInnerServiceSMO;
+import com.java110.intf.store.ISmallWeChatInnerServiceSMO;
+import com.java110.intf.store.ISmallWechatAttrInnerServiceSMO;
+import com.java110.intf.user.IOwnerAppUserInnerServiceSMO;
 import com.java110.job.quartz.TaskSystemQuartz;
+import com.java110.utils.cache.MappingCache;
+import com.java110.utils.constant.WechatConstant;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -144,6 +146,7 @@ public class PublicWeChatPushMessageTemplate extends TaskSystemQuartz {
         List<BillOweFeeDto> billOweFeeDtos = feeInnerServiceSMOImpl.queryBillOweFees(billOweFeeDto);
 
         String url = sendMsgUrl + accessToken;
+        String oweUrl = MappingCache.getValue(WechatConstant.WECHAT_DOMAIN,WechatConstant.OWE_FEE_PAGE);
         for (BillOweFeeDto fee : billOweFeeDtos) {
             for (OwnerAppUserDto appUserDto : ownerAppUserDtos) {
                 if (fee.getOwnerId().equals(appUserDto.getMemberId())) {
@@ -161,6 +164,7 @@ public class PublicWeChatPushMessageTemplate extends TaskSystemQuartz {
                     data.setKeyword2(new Content(year + "年-" + month + "月"));
                     data.setKeyword3(new Content(fee.getAmountOwed()));
                     data.setRemark(new Content("请您及时缴费,如有疑问请联系相关物业人员"));
+                    templateMessage.setUrl(oweUrl + fee.getPayObjId());
                     templateMessage.setData(data);
                     logger.info("发送模板消息内容:{}", JSON.toJSONString(templateMessage));
                     ResponseEntity<String> responseEntity = outRestTemplate.postForEntity(url, JSON.toJSONString(templateMessage), String.class);