|
|
@@ -0,0 +1,91 @@
|
|
|
+package com.java110.api.listener.fee;
|
|
|
+
|
|
|
+import com.alibaba.fastjson.JSONObject;
|
|
|
+import com.java110.api.bmo.fee.IFeeBMO;
|
|
|
+import com.java110.api.listener.AbstractServiceApiPlusListener;
|
|
|
+import com.java110.core.annotation.Java110Listener;
|
|
|
+import com.java110.core.context.DataFlowContext;
|
|
|
+import com.java110.core.event.service.api.ServiceDataFlowEvent;
|
|
|
+import com.java110.dto.fee.FeeDto;
|
|
|
+import com.java110.intf.community.IRoomInnerServiceSMO;
|
|
|
+import com.java110.intf.fee.IFeeInnerServiceSMO;
|
|
|
+import com.java110.po.fee.PayFeePo;
|
|
|
+import com.java110.utils.constant.BusinessTypeConstant;
|
|
|
+import com.java110.utils.constant.ServiceCodeConstant;
|
|
|
+import com.java110.utils.util.Assert;
|
|
|
+import com.java110.utils.util.BeanConvertUtil;
|
|
|
+import org.slf4j.Logger;
|
|
|
+import org.slf4j.LoggerFactory;
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.http.HttpMethod;
|
|
|
+
|
|
|
+import java.util.List;
|
|
|
+
|
|
|
+/**
|
|
|
+ * @ClassName SaveRoomCreateFeeListener
|
|
|
+ * @Description TODO 变更费用
|
|
|
+ * @Author wuxw
|
|
|
+ * @Date 2020/1/31 15:57
|
|
|
+ * @Version 1.0
|
|
|
+ * add by wuxw 2020/1/31
|
|
|
+ **/
|
|
|
+@Java110Listener("finishFeeListener")
|
|
|
+public class FinishFeeListener extends AbstractServiceApiPlusListener {
|
|
|
+ private static Logger logger = LoggerFactory.getLogger(FinishFeeListener.class);
|
|
|
+ @Autowired
|
|
|
+ private IFeeBMO feeBMOImpl;
|
|
|
+
|
|
|
+ private static final int DEFAULT_ADD_FEE_COUNT = 200;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private IRoomInnerServiceSMO roomInnerServiceSMOImpl;
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private IFeeInnerServiceSMO feeInnerServiceSMOImpl;
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public String getServiceCode() {
|
|
|
+ return ServiceCodeConstant.SERVICE_CODE_FINISH_FEE;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public HttpMethod getHttpMethod() {
|
|
|
+ return HttpMethod.POST;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ protected void validate(ServiceDataFlowEvent event, JSONObject reqJson) {
|
|
|
+ // super.validatePageInfo(pd);
|
|
|
+ Assert.hasKeyAndValue(reqJson, "communityId", "未包含小区ID");
|
|
|
+ Assert.hasKeyAndValue(reqJson, "feeId", "未包含feeId");
|
|
|
+
|
|
|
+ FeeDto feeDto = new FeeDto();
|
|
|
+ feeDto.setCommunityId(reqJson.getString("communityId"));
|
|
|
+ feeDto.setFeeId(reqJson.getString("feeId"));
|
|
|
+
|
|
|
+ List<FeeDto> feeDtos = feeInnerServiceSMOImpl.queryFees(feeDto);
|
|
|
+
|
|
|
+ Assert.listOnlyOne(feeDtos, "未查询到费用信息 或查询到多条" + reqJson);
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ protected void doSoService(ServiceDataFlowEvent event, DataFlowContext context, JSONObject reqJson) {
|
|
|
+ PayFeePo payFeePo = BeanConvertUtil.covertBean(reqJson, PayFeePo.class);
|
|
|
+ payFeePo.setState(FeeDto.STATE_FINISH);
|
|
|
+ super.update(context, payFeePo, BusinessTypeConstant.BUSINESS_TYPE_ONLY_UPDATE_FEE_INFO);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public int getOrder() {
|
|
|
+ return DEFAULT_ORDER;
|
|
|
+ }
|
|
|
+
|
|
|
+ public IRoomInnerServiceSMO getRoomInnerServiceSMOImpl() {
|
|
|
+ return roomInnerServiceSMOImpl;
|
|
|
+ }
|
|
|
+
|
|
|
+ public void setRoomInnerServiceSMOImpl(IRoomInnerServiceSMO roomInnerServiceSMOImpl) {
|
|
|
+ this.roomInnerServiceSMOImpl = roomInnerServiceSMOImpl;
|
|
|
+ }
|
|
|
+}
|