wuxw 1 год назад
Родитель
Сommit
0ed7c3dfb5

+ 2 - 1
service-acct/src/main/java/com/java110/acct/smo/impl/AccountInnerServiceSMOImpl.java

@@ -15,6 +15,7 @@ import com.java110.po.account.AccountPo;
 import com.java110.po.account.AccountDetailPo;
 import com.java110.utils.lock.DistributedLock;
 import com.java110.utils.util.BeanConvertUtil;
+import com.java110.utils.util.ListUtil;
 import com.java110.utils.util.StringUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.RequestBody;
@@ -141,7 +142,7 @@ public class AccountInnerServiceSMOImpl extends BaseServiceSMO implements IAccou
             accountDto.setObjId(accountDetailPo.getObjId());
             accountDto.setAcctId(accountDetailPo.getAcctId());
             accounts = BeanConvertUtil.covertBeanList(accountServiceDaoImpl.getAccountInfo(BeanConvertUtil.beanCovertMap(accountDto)), AccountDto.class);
-            if (accounts == null || accounts.size() < 1) {
+            if (ListUtil.isNull(accounts)) {
                 throw new IllegalArgumentException("账户不存在");
             }
             //在账户增加

+ 58 - 0
service-common/src/main/java/com/java110/common/bmo/mall/impl/PrestoreAccountImpl.java

@@ -0,0 +1,58 @@
+package com.java110.common.bmo.mall.impl;
+
+import com.alibaba.fastjson.JSONObject;
+import com.java110.common.bmo.mall.IMallCommonApiBmo;
+import com.java110.core.context.ICmdDataFlowContext;
+import com.java110.core.factory.GenerateCodeFactory;
+import com.java110.dto.account.AccountDto;
+import com.java110.intf.acct.IAccountInnerServiceSMO;
+import com.java110.po.account.AccountDetailPo;
+import com.java110.utils.exception.CmdException;
+import com.java110.utils.util.Assert;
+import com.java110.utils.util.ListUtil;
+import com.java110.vo.ResultVo;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+@Service("prestoreAccountImpl")
+public class PrestoreAccountImpl implements IMallCommonApiBmo {
+
+    @Autowired
+    private IAccountInnerServiceSMO accountInnerServiceSMOImpl;
+
+    @Override
+    public void validate(ICmdDataFlowContext context, JSONObject reqJson) {
+        Assert.hasKeyAndValue(reqJson, "ownerId", "未包含业主");
+        Assert.hasKeyAndValue(reqJson, "link", "未包含业主手机号");
+        Assert.hasKeyAndValue(reqJson, "amount", "未包含金额");
+        Assert.hasKeyAndValue(reqJson, "communityId", "未包含小区");
+    }
+
+    @Override
+    public void doCmd(ICmdDataFlowContext context, JSONObject reqJson) {
+
+
+        AccountDto accountDto = new AccountDto();
+        accountDto.setObjId(reqJson.getString("ownerId"));
+        accountDto.setLink(reqJson.getString("link"));
+        accountDto.setPartId(reqJson.getString("communityId"));
+        List<AccountDto> accountDtos = accountInnerServiceSMOImpl.queryAccounts(accountDto);
+        if (ListUtil.isNull(accountDtos)) {
+            throw new CmdException("账户不存在");
+        }
+
+        AccountDetailPo accountDetailPo = new AccountDetailPo();
+        accountDetailPo.setRemark("金币-抵扣金充值");
+        accountDetailPo.setAmount(reqJson.getString("amount"));
+        accountDetailPo.setOrderId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_orderId));
+        accountDetailPo.setAcctId(accountDtos.get(0).getAcctId());
+        accountDetailPo.setObjId(accountDtos.get(0).getObjId());
+        accountDetailPo.setObjType(accountDtos.get(0).getObjType());
+        accountInnerServiceSMOImpl.prestoreAccount(accountDetailPo);
+
+        context.setResponseEntity(ResultVo.createResponseEntity(ResultVo.CODE_OK, "充值成功"));
+
+    }
+}

+ 10 - 1
service-common/src/main/java/com/java110/common/bmo/mall/impl/QueryOwnerCommunityImpl.java

@@ -14,6 +14,7 @@ import com.java110.intf.user.IBuildingOwnerV1InnerServiceSMO;
 import com.java110.utils.exception.CmdException;
 import com.java110.utils.util.Assert;
 import com.java110.utils.util.ListUtil;
+import com.java110.utils.util.StringUtil;
 import com.java110.vo.ResultVo;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -38,7 +39,14 @@ public class QueryOwnerCommunityImpl implements IMallCommonApiBmo {
     @Override
     public void validate(ICmdDataFlowContext context, JSONObject reqJson) {
 
-        Assert.hasKeyAndValue(reqJson, "link", "未包含手机号");
+
+        String link = reqJson.getString("link");
+
+        String ownerId = reqJson.getString("ownerId");
+
+        if (StringUtil.isEmpty(link) && StringUtil.isEmpty(ownerId)) {
+            throw new IllegalArgumentException("未包含手机号和业主ID");
+        }
 
     }
 
@@ -46,6 +54,7 @@ public class QueryOwnerCommunityImpl implements IMallCommonApiBmo {
     public void doCmd(ICmdDataFlowContext context, JSONObject reqJson) {
 
         OwnerDto ownerDto = new OwnerDto();
+        ownerDto.setMemberId(reqJson.getString("ownerId"));
         ownerDto.setLink(reqJson.getString("link"));
         ownerDto.setCommunityId(reqJson.getString("communityId"));
         List<OwnerDto> ownerDtos = buildingOwnerV1InnerServiceSMOImpl.queryBuildingOwners(ownerDto);