service-acct/src/main/java/com/java110/acct/cmd/account/QueryAdminOwnerAccountCmd.java
New file @@ -0,0 +1,143 @@ package com.java110.acct.cmd.account; import com.alibaba.fastjson.JSONObject; import com.java110.acct.bmo.account.IGetAccountBMO; import com.java110.core.annotation.Java110Cmd; import com.java110.core.context.ICmdDataFlowContext; import com.java110.core.event.cmd.Cmd; import com.java110.core.event.cmd.CmdEvent; import com.java110.core.smo.IOwnerGetDataCheck; import com.java110.dto.account.AccountDto; import com.java110.dto.contract.ContractDto; import com.java110.dto.fee.FeeDto; import com.java110.dto.owner.OwnerCarDto; import com.java110.dto.owner.OwnerDto; import com.java110.dto.owner.OwnerRoomRelDto; import com.java110.intf.fee.IFeeInnerServiceSMO; import com.java110.intf.store.IContractInnerServiceSMO; import com.java110.intf.user.IOwnerCarInnerServiceSMO; import com.java110.intf.user.IOwnerRoomRelInnerServiceSMO; import com.java110.utils.exception.CmdException; import com.java110.utils.util.Assert; 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.http.ResponseEntity; import java.text.ParseException; import java.util.List; /** * 查询账户 */ @Java110Cmd(serviceCode = "account.queryAdminOwnerAccount") public class QueryAdminOwnerAccountCmd extends Cmd { @Autowired private IFeeInnerServiceSMO feeInnerServiceSMOImpl; @Autowired private IOwnerRoomRelInnerServiceSMO ownerRoomRelInnerServiceSMOImpl; @Autowired private IOwnerCarInnerServiceSMO ownerCarInnerServiceSMOImpl; @Autowired private IContractInnerServiceSMO contractInnerServiceSMOImpl; @Autowired private IOwnerGetDataCheck ownerGetDataCheckImpl; @Autowired private IGetAccountBMO getAccountBMOImpl; @Override public void validate(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException, ParseException { super.validatePageInfo(reqJson); super.validateAdmin(context); } @Override public void doCmd(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException, ParseException { AccountDto accountDto = BeanConvertUtil.covertBean(reqJson, AccountDto.class); hasFeeId(reqJson, accountDto); String ownerId = reqJson.getString("ownerId"); if (!StringUtil.isEmpty(ownerId)) { accountDto.setObjId(ownerId); } accountDto.setObjType(AccountDto.OBJ_TYPE_PERSON); accountDto.setPartId(reqJson.getString("communityId")); String acctTypes = reqJson.getString("acctTypes"); if (!StringUtil.isNullOrNone(acctTypes)) { accountDto.setAcctTypes(acctTypes.split(",")); } //todo 业主账户安全性校验 // ownerGetDataCheckImpl.checkOwnerAccount(appId, userId, BeanConvertUtil.beanCovertJson(accountDto)); OwnerDto ownerDto = new OwnerDto(); ownerDto.setOwnerId(accountDto.getObjId()); ownerDto.setCommunityId(reqJson.getString("communityId")); ownerDto.setLink(reqJson.getString("link")); ownerDto.setIdCard(reqJson.getString("idCard")); ResponseEntity<String> responseEntity = getAccountBMOImpl.queryOwnerAccount(accountDto, ownerDto); context.setResponseEntity(responseEntity); } /** * 判断参数中是否有feeId * * @param reqJson * @param accountDto */ private void hasFeeId(JSONObject reqJson, AccountDto accountDto) { if (!reqJson.containsKey("feeId")) { return; } String feeId = reqJson.getString("feeId"); if (StringUtil.isEmpty(feeId)) { return; } String ownerId = ""; FeeDto feeDto = new FeeDto(); feeDto.setFeeId(feeId); List<FeeDto> feeDtos = feeInnerServiceSMOImpl.queryFees(feeDto); Assert.listOnlyOne(feeDtos, "查询费用信息错误!"); //获取付费对象类型(3333 房屋 6666 是车位) String payerObjType = feeDtos.get(0).getPayerObjType(); //获取付费对象id String payerObjId = feeDtos.get(0).getPayerObjId(); if (FeeDto.PAYER_OBJ_TYPE_ROOM.equals(payerObjType)) { //房屋 OwnerRoomRelDto ownerRoomRelDto = new OwnerRoomRelDto(); ownerRoomRelDto.setRoomId(payerObjId); List<OwnerRoomRelDto> ownerRoomRelDtos = ownerRoomRelInnerServiceSMOImpl.queryOwnerRoomRels(ownerRoomRelDto); if (ListUtil.isNull(ownerRoomRelDtos)) { throw new CmdException("房屋未绑定业主关系"); } ownerId = ownerRoomRelDtos.get(0).getOwnerId(); } else if (FeeDto.PAYER_OBJ_TYPE_CAR.equals(payerObjType)) { OwnerCarDto ownerCarDto = new OwnerCarDto(); ownerCarDto.setCarId(payerObjId); List<OwnerCarDto> ownerCarDtos = ownerCarInnerServiceSMOImpl.queryOwnerCars(ownerCarDto); // Assert.listOnlyOne(ownerCarDtos, "查询业主车辆关系表错误!"); ownerId = ownerCarDtos.get(0).getOwnerId(); } else if (FeeDto.PAYER_OBJ_TYPE_CONTRACT.equals(payerObjType)) { ContractDto contractDto = new ContractDto(); contractDto.setContractId(payerObjId); List<ContractDto> contractDtos = contractInnerServiceSMOImpl.queryContracts(contractDto); // Assert.listOnlyOne(ownerCarDtos, "查询业主车辆关系表错误!"); ownerId = contractDtos.get(0).getObjId(); } else { ownerId = "-1"; } accountDto.setObjId(ownerId); } } service-acct/src/main/java/com/java110/acct/cmd/account/QueryCommunityOwnerAccountCmd.java
@@ -56,6 +56,7 @@ public void validate(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException, ParseException { Assert.hasKeyAndValue(reqJson, "communityId", "未包含小区"); super.validatePageInfo(reqJson); super.validateProperty(context); } @Override @@ -91,6 +92,7 @@ /** * 判断参数中是否有feeId * * @param reqJson * @param accountDto */ @@ -118,7 +120,7 @@ OwnerRoomRelDto ownerRoomRelDto = new OwnerRoomRelDto(); ownerRoomRelDto.setRoomId(payerObjId); List<OwnerRoomRelDto> ownerRoomRelDtos = ownerRoomRelInnerServiceSMOImpl.queryOwnerRoomRels(ownerRoomRelDto); if(ListUtil.isNull(ownerRoomRelDtos)){ if (ListUtil.isNull(ownerRoomRelDtos)) { throw new CmdException("房屋未绑定业主关系"); } ownerId = ownerRoomRelDtos.get(0).getOwnerId(); service-acct/src/main/java/com/java110/acct/cmd/couponProperty/ListAdminCouponPropertyUserCmd.java
New file @@ -0,0 +1,82 @@ /* * Copyright 2017-2020 吴学文 and java110 team. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.java110.acct.cmd.couponProperty; import com.alibaba.fastjson.JSONObject; import com.java110.core.annotation.Java110Cmd; import com.java110.core.context.ICmdDataFlowContext; import com.java110.core.event.cmd.Cmd; import com.java110.core.event.cmd.CmdEvent; import com.java110.dto.coupon.CouponPropertyUserDto; import com.java110.intf.acct.ICouponPropertyUserV1InnerServiceSMO; import com.java110.utils.exception.CmdException; import com.java110.utils.util.BeanConvertUtil; import com.java110.vo.ResultVo; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import java.util.ArrayList; import java.util.List; /** * 类表述:查询 * 服务编码:couponPropertyUser.listCouponPropertyUser * 请求路劲:/app/couponPropertyUser.ListCouponPropertyUser * add by 吴学文 at 2022-11-21 12:08:05 mail: 928255095@qq.com * open source address: https://gitee.com/wuxw7/MicroCommunity * 官网:http://www.homecommunity.cn * 温馨提示:如果您对此文件进行修改 请不要删除原有作者及注释信息,请补充您的 修改的原因以及联系邮箱如下 * // modify by 张三 at 2021-09-12 第10行在某种场景下存在某种bug 需要修复,注释10至20行 加入 20行至30行 */ @Java110Cmd(serviceCode = "couponProperty.listAdminCouponPropertyUser") public class ListAdminCouponPropertyUserCmd extends Cmd { private static Logger logger = LoggerFactory.getLogger(ListAdminCouponPropertyUserCmd.class); @Autowired private ICouponPropertyUserV1InnerServiceSMO couponPropertyUserV1InnerServiceSMOImpl; @Override public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) { super.validatePageInfo(reqJson); super.validateAdmin(cmdDataFlowContext); } @Override public void doCmd(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) throws CmdException { CouponPropertyUserDto couponPropertyUserDto = BeanConvertUtil.covertBean(reqJson, CouponPropertyUserDto.class); int count = couponPropertyUserV1InnerServiceSMOImpl.queryCouponPropertyUsersCount(couponPropertyUserDto); List<CouponPropertyUserDto> couponPropertyUserDtos = null; if (count > 0) { couponPropertyUserDtos = couponPropertyUserV1InnerServiceSMOImpl.queryCouponPropertyUsers(couponPropertyUserDto); } else { couponPropertyUserDtos = new ArrayList<>(); } ResultVo resultVo = new ResultVo((int) Math.ceil((double) count / (double) reqJson.getInteger("row")), count, couponPropertyUserDtos); ResponseEntity<String> responseEntity = new ResponseEntity<String>(resultVo.toString(), HttpStatus.OK); cmdDataFlowContext.setResponseEntity(responseEntity); } } service-acct/src/main/java/com/java110/acct/cmd/couponProperty/ListCouponPropertyUserCmd.java
@@ -54,6 +54,8 @@ @Override public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) { super.validatePageInfo(reqJson); super.validateProperty(cmdDataFlowContext); } @Override service-fee/src/main/java/com/java110/fee/cmd/fee/ListAdminFeeCmd.java
@@ -47,6 +47,7 @@ @Override public void doCmd(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException, ParseException { FeeDto feeDto = BeanConvertUtil.covertBean(reqJson, FeeDto.class); morePayerObjIds(reqJson,feeDto); List<ApiFeeDataVo> fees = new ArrayList<>(); int count = feeInnerServiceSMOImpl.queryFeesCount(feeDto); if (count > 0) { @@ -73,6 +74,20 @@ ResponseEntity<String> responseEntity = new ResponseEntity<String>(JSONObject.toJSONString(apiFeeVo), HttpStatus.OK); context.setResponseEntity(responseEntity); } /** * 处理 多对象 费用 * * @param reqJson * @param feeDto */ private void morePayerObjIds(JSONObject reqJson, FeeDto feeDto) { if (!reqJson.containsKey("payerObjIds") || StringUtil.isEmpty(reqJson.getString("payerObjIds"))) { return; } String payerObjIds = reqJson.getString("payerObjIds"); feeDto.setPayerObjIds(payerObjIds.split(",")); } private void freshFeeAttrs(List<ApiFeeDataVo> fees, List<FeeDto> feeDtos) { for (ApiFeeDataVo apiFeeDataVo : fees) { for (FeeDto feeDto : feeDtos) { service-report/src/main/java/com/java110/report/cmd/owner/QueryAdminHisOwnerCmd.java
New file @@ -0,0 +1,53 @@ package com.java110.report.cmd.owner; import com.alibaba.fastjson.JSONObject; import com.java110.core.annotation.Java110Cmd; import com.java110.core.context.ICmdDataFlowContext; import com.java110.core.event.cmd.Cmd; import com.java110.core.event.cmd.CmdEvent; import com.java110.dto.owner.OwnerDto; import com.java110.intf.report.IReportCommunityInnerServiceSMO; import com.java110.utils.exception.CmdException; import com.java110.utils.util.Assert; import com.java110.utils.util.BeanConvertUtil; import com.java110.vo.ResultVo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.ResponseEntity; import java.text.ParseException; import java.util.ArrayList; import java.util.List; /** * 查询业主变更记录 */ @Java110Cmd(serviceCode = "owner.queryAdminHisOwner") public class QueryAdminHisOwnerCmd extends Cmd { @Autowired private IReportCommunityInnerServiceSMO reportCommunityInnerServiceSMOImpl; @Override public void validate(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException, ParseException { super.validateAdmin(context); super.validatePageInfo(reqJson); } @Override public void doCmd(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException, ParseException { int row = reqJson.getInteger("row"); OwnerDto ownerDto = BeanConvertUtil.covertBean(reqJson, OwnerDto.class); int total = reportCommunityInnerServiceSMOImpl.queryHisOwnerCount(ownerDto); // int count = 0; List<OwnerDto> ownerDtos = null; if (total > 0) { ownerDtos = reportCommunityInnerServiceSMOImpl.queryHisOwners(ownerDto); } else { ownerDtos = new ArrayList<>(); } ResponseEntity<String> responseEntity = ResultVo.createResponseEntity((int) Math.ceil((double) total / (double) row), total, ownerDtos); context.setResponseEntity(responseEntity); } } service-report/src/main/java/com/java110/report/cmd/owner/QueryHisOwnerCmd.java
@@ -31,6 +31,7 @@ @Override public void validate(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException, ParseException { Assert.hasKeyAndValue(reqJson,"communityId","未包含小区"); super.validateProperty(context); } service-user/src/main/java/com/java110/user/cmd/owner/ListAdminAppUserOwnersCmd.java
New file @@ -0,0 +1,72 @@ package com.java110.user.cmd.owner; import com.alibaba.fastjson.JSONObject; import com.java110.core.annotation.Java110Cmd; import com.java110.core.context.ICmdDataFlowContext; import com.java110.core.event.cmd.Cmd; import com.java110.core.event.cmd.CmdEvent; import com.java110.dto.owner.OwnerAppUserDto; import com.java110.dto.privilege.BasePrivilegeDto; import com.java110.intf.community.IMenuInnerServiceSMO; import com.java110.intf.user.IOwnerAppUserInnerServiceSMO; import com.java110.utils.exception.CmdException; import com.java110.utils.util.Assert; import com.java110.utils.util.BeanConvertUtil; import com.java110.utils.util.StringUtil; import com.java110.vo.ResultVo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.ResponseEntity; import java.util.ArrayList; import java.util.List; import java.util.Map; @Java110Cmd(serviceCode = "owner.listAdminAppUserOwners") public class ListAdminAppUserOwnersCmd extends Cmd { @Autowired private IOwnerAppUserInnerServiceSMO ownerAppUserInnerServiceSMOImpl; @Autowired private IMenuInnerServiceSMO menuInnerServiceSMOImpl; @Override public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) throws CmdException { super.validatePageInfo(reqJson); super.validateAdmin(cmdDataFlowContext); } @Override public void doCmd(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) throws CmdException { //获取当前用户id String userId = reqJson.getString("userId"); OwnerAppUserDto ownerAppUserDto = BeanConvertUtil.covertBean(reqJson, OwnerAppUserDto.class); ownerAppUserDto.setUserId(""); int count = ownerAppUserInnerServiceSMOImpl.queryOwnerAppUsersCount(ownerAppUserDto); int row = reqJson.getIntValue("row"); List<OwnerAppUserDto> ownerAppUserDtos = null; if (count > 0) { ownerAppUserDtos = ownerAppUserInnerServiceSMOImpl.queryOwnerAppUsers(ownerAppUserDto); } else { ownerAppUserDtos = new ArrayList<>(); } ResponseEntity<String> responseEntity = ResultVo.createResponseEntity((int) Math.ceil((double) count / (double) row), count, ownerAppUserDtos); cmdDataFlowContext.setResponseEntity(responseEntity); } /** * 脱敏处理 * * @return */ public List<Map> getPrivilegeOwnerList(String resource, String userId) { BasePrivilegeDto basePrivilegeDto = new BasePrivilegeDto(); basePrivilegeDto.setResource(resource); basePrivilegeDto.setUserId(userId); List<Map> privileges = menuInnerServiceSMOImpl.checkUserHasResource(basePrivilegeDto); return privileges; } } service-user/src/main/java/com/java110/user/cmd/owner/ListAuditAppUserBindingOwnersCmd.java
@@ -38,6 +38,7 @@ Assert.hasKeyAndValue(reqJson, "communityId", "未包含小区信息"); super.validatePageInfo(reqJson); super.validateProperty(cmdDataFlowContext); } @Override @@ -68,7 +69,7 @@ } //对业主手机号隐藏处理 String link = owner.getLink(); if (mark.size() == 0 &&!StringUtil.isEmpty(link) && link.length() == 11) { if (mark.size() == 0 && !StringUtil.isEmpty(link) && link.length() == 11) { link = link.substring(0, 3) + "****" + link.substring(7); owner.setLink(link); }