Browse Source

兼容性优化处理

java110 3 years ago
parent
commit
eaec3e8bca

+ 0 - 82
service-api/src/main/java/com/java110/api/listener/fee/ListTempCarFeeConfigAttrsListener.java

@@ -1,82 +0,0 @@
-package com.java110.api.listener.fee;
-
-import com.alibaba.fastjson.JSONObject;
-import com.java110.api.listener.AbstractServiceApiListener;
-import com.java110.core.annotation.Java110Listener;
-import com.java110.core.context.DataFlowContext;
-import com.java110.core.event.service.api.ServiceDataFlowEvent;
-import com.java110.dto.tempCarFeeConfig.TempCarFeeConfigAttrDto;
-import com.java110.intf.fee.ITempCarFeeConfigAttrInnerServiceSMO;
-import com.java110.utils.constant.ServiceCodeTempCarFeeConfigAttrConstant;
-import com.java110.utils.util.BeanConvertUtil;
-import com.java110.vo.ResultVo;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.HttpMethod;
-import org.springframework.http.HttpStatus;
-import org.springframework.http.ResponseEntity;
-
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * 查询小区侦听类
- */
-@Java110Listener("listTempCarFeeConfigAttrsListener")
-public class ListTempCarFeeConfigAttrsListener extends AbstractServiceApiListener {
-
-    @Autowired
-    private ITempCarFeeConfigAttrInnerServiceSMO tempCarFeeConfigAttrInnerServiceSMOImpl;
-
-    @Override
-    public String getServiceCode() {
-        return ServiceCodeTempCarFeeConfigAttrConstant.LIST_TEMPCARFEECONFIGATTRS;
-    }
-
-    @Override
-    public HttpMethod getHttpMethod() {
-        return HttpMethod.GET;
-    }
-
-
-    @Override
-    public int getOrder() {
-        return DEFAULT_ORDER;
-    }
-
-
-    public ITempCarFeeConfigAttrInnerServiceSMO getTempCarFeeConfigAttrInnerServiceSMOImpl() {
-        return tempCarFeeConfigAttrInnerServiceSMOImpl;
-    }
-
-    public void setTempCarFeeConfigAttrInnerServiceSMOImpl(ITempCarFeeConfigAttrInnerServiceSMO tempCarFeeConfigAttrInnerServiceSMOImpl) {
-        this.tempCarFeeConfigAttrInnerServiceSMOImpl = tempCarFeeConfigAttrInnerServiceSMOImpl;
-    }
-
-    @Override
-    protected void validate(ServiceDataFlowEvent event, JSONObject reqJson) {
-        super.validatePageInfo(reqJson);
-    }
-
-    @Override
-    protected void doSoService(ServiceDataFlowEvent event, DataFlowContext context, JSONObject reqJson) {
-
-        TempCarFeeConfigAttrDto tempCarFeeConfigAttrDto = BeanConvertUtil.covertBean(reqJson, TempCarFeeConfigAttrDto.class);
-
-        int count = tempCarFeeConfigAttrInnerServiceSMOImpl.queryTempCarFeeConfigAttrsCount(tempCarFeeConfigAttrDto);
-
-        List<TempCarFeeConfigAttrDto> tempCarFeeConfigAttrDtos = null;
-
-        if (count > 0) {
-            tempCarFeeConfigAttrDtos = tempCarFeeConfigAttrInnerServiceSMOImpl.queryTempCarFeeConfigAttrs(tempCarFeeConfigAttrDto);
-        } else {
-            tempCarFeeConfigAttrDtos = new ArrayList<>();
-        }
-
-        ResultVo resultVo = new ResultVo((int) Math.ceil((double) count / (double) reqJson.getInteger("row")), count, tempCarFeeConfigAttrDtos);
-
-        ResponseEntity<String> responseEntity = new ResponseEntity<String>(resultVo.toString(), HttpStatus.OK);
-
-        context.setResponseEntity(responseEntity);
-
-    }
-}

+ 0 - 105
service-api/src/main/java/com/java110/api/listener/fee/QueryFeeByCarInoutListener.java

@@ -1,105 +0,0 @@
-package com.java110.api.listener.fee;
-
-
-import com.alibaba.fastjson.JSONObject;
-import com.java110.api.listener.AbstractServiceApiDataFlowListener;
-import com.java110.core.annotation.Java110Listener;
-import com.java110.core.context.DataFlowContext;
-import com.java110.intf.fee.IFeeInnerServiceSMO;
-import com.java110.dto.fee.FeeDto;
-import com.java110.core.event.service.api.ServiceDataFlowEvent;
-import com.java110.utils.constant.FeeTypeConstant;
-import com.java110.utils.constant.ServiceCodeConstant;
-import com.java110.utils.util.Assert;
-import com.java110.utils.util.BeanConvertUtil;
-import com.java110.vo.api.ApiMainFeeVo;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.HttpMethod;
-import org.springframework.http.HttpStatus;
-import org.springframework.http.ResponseEntity;
-
-import java.util.List;
-
-/**
- * @ClassName FloorDto
- * @Description 小区楼数据层侦听类
- * @Author wuxw
- * @Date 2019/4/24 8:52
- * @Version 1.0
- * add by wuxw 2019/4/24
- **/
-@Java110Listener("queryFeeByCarInout")
-public class QueryFeeByCarInoutListener extends AbstractServiceApiDataFlowListener {
-
-    @Autowired
-    private IFeeInnerServiceSMO feeInnerServiceSMOImpl;
-
-    @Override
-    public String getServiceCode() {
-        return ServiceCodeConstant.SERVICE_CODE_QUERY_FEE_BY_CAR_INOUT;
-    }
-
-    @Override
-    public HttpMethod getHttpMethod() {
-        return HttpMethod.GET;
-    }
-
-    /**
-     * 业务层数据处理
-     *
-     * @param event 时间对象
-     */
-    @Override
-    public void soService(ServiceDataFlowEvent event) {
-        DataFlowContext dataFlowContext = event.getDataFlowContext();
-        //获取请求数据
-        JSONObject reqJson = dataFlowContext.getReqJson();
-        validateFeeData(reqJson);
-        FeeDto feeDtoParamIn = BeanConvertUtil.covertBean(reqJson, FeeDto.class);
-        feeDtoParamIn.setPayerObjId(reqJson.getString("inoutId"));
-        feeDtoParamIn.setState(reqJson.getString("state"));
-        feeDtoParamIn.setFeeTypeCd(FeeTypeConstant.FEE_TYPE_TEMP_DOWN_PARKING_SPACE);
-        feeDtoParamIn.setFeeFlag("2006012");
-
-        List<FeeDto> feeDtos = feeInnerServiceSMOImpl.queryFees(feeDtoParamIn);
-        ResponseEntity<String> responseEntity = null;
-        if (feeDtos == null || feeDtos.size() == 0) {
-            responseEntity = new ResponseEntity<String>("{}", HttpStatus.OK);
-            dataFlowContext.setResponseEntity(responseEntity);
-            return ;
-        }
-
-        FeeDto feeDto = feeDtos.get(0);
-
-        ApiMainFeeVo apiFeeVo = BeanConvertUtil.covertBean(feeDto, ApiMainFeeVo.class);
-
-        responseEntity = new ResponseEntity<String>(JSONObject.toJSONString(apiFeeVo), HttpStatus.OK);
-
-
-        dataFlowContext.setResponseEntity(responseEntity);
-    }
-
-    /**
-     * 校验查询条件是否满足条件
-     *
-     * @param reqJson 包含查询条件
-     */
-    private void validateFeeData(JSONObject reqJson) {
-        Assert.jsonObjectHaveKey(reqJson, "communityId", "请求中未包含communityId信息");
-        Assert.jsonObjectHaveKey(reqJson, "inoutId", "请求中未包含inoutId信息");
-        Assert.jsonObjectHaveKey(reqJson, "state", "请求中未包含state信息");
-    }
-
-    @Override
-    public int getOrder() {
-        return super.DEFAULT_ORDER;
-    }
-
-    public IFeeInnerServiceSMO getFeeInnerServiceSMOImpl() {
-        return feeInnerServiceSMOImpl;
-    }
-
-    public void setFeeInnerServiceSMOImpl(IFeeInnerServiceSMO feeInnerServiceSMOImpl) {
-        this.feeInnerServiceSMOImpl = feeInnerServiceSMOImpl;
-    }
-}

+ 0 - 49
service-api/src/main/java/com/java110/api/listener/fee/SaveTempCarFeeConfigAttrListener.java

@@ -1,49 +0,0 @@
-package com.java110.api.listener.fee;
-
-import com.alibaba.fastjson.JSONObject;
-import com.java110.api.bmo.tempCarFeeConfigAttr.ITempCarFeeConfigAttrBMO;
-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.utils.constant.ServiceCodeTempCarFeeConfigAttrConstant;
-import com.java110.utils.util.Assert;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.HttpMethod;
-
-/**
- * 保存商户侦听
- * add by wuxw 2019-06-30
- */
-@Java110Listener("saveTempCarFeeConfigAttrListener")
-public class SaveTempCarFeeConfigAttrListener extends AbstractServiceApiPlusListener {
-
-    @Autowired
-    private ITempCarFeeConfigAttrBMO tempCarFeeConfigAttrBMOImpl;
-
-    @Override
-    protected void validate(ServiceDataFlowEvent event, JSONObject reqJson) {
-        //Assert.hasKeyAndValue(reqJson, "xxx", "xxx");
-
-        Assert.hasKeyAndValue(reqJson, "configId", "请求报文中未包含configId");
-        Assert.hasKeyAndValue(reqJson, "specCd", "请求报文中未包含specCd");
-        Assert.hasKeyAndValue(reqJson, "value", "请求报文中未包含value");
-
-    }
-
-    @Override
-    protected void doSoService(ServiceDataFlowEvent event, DataFlowContext context, JSONObject reqJson) {
-        tempCarFeeConfigAttrBMOImpl.addTempCarFeeConfigAttr(reqJson, context);
-    }
-
-    @Override
-    public String getServiceCode() {
-        return ServiceCodeTempCarFeeConfigAttrConstant.ADD_TEMPCARFEECONFIGATTR;
-    }
-
-    @Override
-    public HttpMethod getHttpMethod() {
-        return HttpMethod.POST;
-    }
-
-}

+ 12 - 42
service-api/src/main/java/com/java110/api/listener/fee/ListTempCarFeeConfigsListener.java

@@ -1,65 +1,36 @@
-package com.java110.api.listener.fee;
+package com.java110.fee.cmd.fee;
 
 import com.alibaba.fastjson.JSONObject;
-import com.java110.api.listener.AbstractServiceApiListener;
-import com.java110.core.annotation.Java110Listener;
-import com.java110.core.context.DataFlowContext;
-import com.java110.core.event.service.api.ServiceDataFlowEvent;
-import com.java110.intf.fee.ITempCarFeeConfigInnerServiceSMO;
+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.tempCarFeeConfig.TempCarFeeConfigDto;
-import com.java110.utils.constant.ServiceCodeTempCarFeeConfigConstant;
+import com.java110.intf.fee.ITempCarFeeConfigInnerServiceSMO;
+import com.java110.utils.exception.CmdException;
 import com.java110.utils.util.BeanConvertUtil;
 import com.java110.vo.ResultVo;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.HttpMethod;
 import org.springframework.http.HttpStatus;
 import org.springframework.http.ResponseEntity;
 
 import java.util.ArrayList;
 import java.util.List;
 
-/**
- * 查询小区侦听类
- */
-@Java110Listener("listTempCarFeeConfigsListener")
-public class ListTempCarFeeConfigsListener extends AbstractServiceApiListener {
+@Java110Cmd(serviceCode = "fee.listTempCarFeeConfigs")
+public class ListTempCarFeeConfigsCmd extends Cmd {
+
 
     @Autowired
     private ITempCarFeeConfigInnerServiceSMO tempCarFeeConfigInnerServiceSMOImpl;
 
     @Override
-    public String getServiceCode() {
-        return ServiceCodeTempCarFeeConfigConstant.LIST_TEMPCARFEECONFIGS;
-    }
-
-    @Override
-    public HttpMethod getHttpMethod() {
-        return HttpMethod.GET;
-    }
-
-
-    @Override
-    public int getOrder() {
-        return DEFAULT_ORDER;
-    }
-
-
-    public ITempCarFeeConfigInnerServiceSMO getTempCarFeeConfigInnerServiceSMOImpl() {
-        return tempCarFeeConfigInnerServiceSMOImpl;
-    }
-
-    public void setTempCarFeeConfigInnerServiceSMOImpl(ITempCarFeeConfigInnerServiceSMO tempCarFeeConfigInnerServiceSMOImpl) {
-        this.tempCarFeeConfigInnerServiceSMOImpl = tempCarFeeConfigInnerServiceSMOImpl;
-    }
-
-    @Override
-    protected void validate(ServiceDataFlowEvent event, JSONObject reqJson) {
+    public void validate(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException {
         super.validatePageInfo(reqJson);
     }
 
     @Override
-    protected void doSoService(ServiceDataFlowEvent event, DataFlowContext context, JSONObject reqJson) {
-
+    public void doCmd(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException {
         TempCarFeeConfigDto tempCarFeeConfigDto = BeanConvertUtil.covertBean(reqJson, TempCarFeeConfigDto.class);
 
         int count = tempCarFeeConfigInnerServiceSMOImpl.queryTempCarFeeConfigsCount(tempCarFeeConfigDto);
@@ -77,6 +48,5 @@ public class ListTempCarFeeConfigsListener extends AbstractServiceApiListener {
         ResponseEntity<String> responseEntity = new ResponseEntity<String>(resultVo.toString(), HttpStatus.OK);
 
         context.setResponseEntity(responseEntity);
-
     }
 }

+ 28 - 118
service-api/src/main/java/com/java110/api/listener/fee/QueryArrearsFeeListener.java

@@ -1,44 +1,34 @@
-package com.java110.api.listener.fee;
-
+package com.java110.fee.cmd.fee;
 
 import com.alibaba.fastjson.JSONObject;
-import com.java110.api.listener.AbstractServiceApiDataFlowListener;
+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.fee.FeeDto;
+import com.java110.dto.owner.OwnerDto;
+import com.java110.intf.community.IFloorInnerServiceSMO;
+import com.java110.intf.community.IRoomInnerServiceSMO;
+import com.java110.intf.community.IUnitInnerServiceSMO;
+import com.java110.intf.fee.IFeeInnerServiceSMO;
+import com.java110.intf.user.IOwnerInnerServiceSMO;
+import com.java110.intf.user.IOwnerRoomRelInnerServiceSMO;
 import com.java110.utils.constant.FeeTypeConstant;
-import com.java110.utils.constant.ServiceCodeConstant;
+import com.java110.utils.exception.CmdException;
 import com.java110.utils.util.Assert;
 import com.java110.utils.util.BeanConvertUtil;
 import com.java110.utils.util.DateUtil;
-import com.java110.core.annotation.Java110Listener;
-import com.java110.core.context.DataFlowContext;
-import com.java110.intf.fee.IFeeInnerServiceSMO;
-import com.java110.intf.community.IFloorInnerServiceSMO;
-import com.java110.intf.user.IOwnerInnerServiceSMO;
-import com.java110.intf.user.IOwnerRoomRelInnerServiceSMO;
-import com.java110.intf.community.IRoomInnerServiceSMO;
-import com.java110.intf.community.IUnitInnerServiceSMO;
-import com.java110.dto.fee.FeeDto;
-import com.java110.dto.owner.OwnerDto;
-import com.java110.core.event.service.api.ServiceDataFlowEvent;
 import com.java110.vo.api.ApiArrearsFeeDataVo;
 import com.java110.vo.api.ApiArrearsFeeVo;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.HttpMethod;
 import org.springframework.http.HttpStatus;
 import org.springframework.http.ResponseEntity;
 
 import java.util.ArrayList;
 import java.util.List;
 
-/**
- * @ClassName FloorDto
- * @Description 小区楼数据层侦听类
- * @Author wuxw
- * @Date 2019/4/24 8:52
- * @Version 1.0
- * add by wuxw 2019/4/24
- **/
-@Java110Listener("queryArrearsFee")
-public class QueryArrearsFeeListener extends AbstractServiceApiDataFlowListener {
+@Java110Cmd(serviceCode = "fee.queryArrearsFee")
+public class QueryArrearsFeeCmd extends Cmd {
 
     @Autowired
     private IFeeInnerServiceSMO feeInnerServiceSMOImpl;
@@ -59,26 +49,19 @@ public class QueryArrearsFeeListener extends AbstractServiceApiDataFlowListener
     private IOwnerRoomRelInnerServiceSMO ownerRoomRelInnerServiceSMOImpl;
 
     @Override
-    public String getServiceCode() {
-        return ServiceCodeConstant.SERVICE_CODE_QUERY_ARREARS_FEE;
-    }
+    public void validate(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException {
+        Assert.jsonObjectHaveKey(reqJson, "communityId", "请求中未包含communityId信息");
+        Assert.jsonObjectHaveKey(reqJson, "feeTypeCd", "请求中未包含feeTypeCd信息");
+        Assert.jsonObjectHaveKey(reqJson, "page", "请求中未包含page信息");
+        Assert.jsonObjectHaveKey(reqJson, "row", "请求中未包含row信息");
 
-    @Override
-    public HttpMethod getHttpMethod() {
-        return HttpMethod.GET;
+
+        Assert.isInteger(reqJson.getString("row"), "row必须为数字");
+        Assert.isInteger(reqJson.getString("page"), "page必须为数字");
     }
 
-    /**
-     * 业务层数据处理
-     *
-     * @param event 时间对象
-     */
     @Override
-    public void soService(ServiceDataFlowEvent event) {
-        DataFlowContext dataFlowContext = event.getDataFlowContext();
-        //获取请求数据
-        JSONObject reqJson = dataFlowContext.getReqJson();
-        validateFeeData(reqJson);
+    public void doCmd(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException {
 
         FeeDto feeDtoParamIn = BeanConvertUtil.covertBean(reqJson, FeeDto.class);
         feeDtoParamIn.setArrearsEndTime(DateUtil.getCurrentDate());
@@ -100,7 +83,7 @@ public class QueryArrearsFeeListener extends AbstractServiceApiDataFlowListener
         ResponseEntity<String> responseEntity = null;
         if (feeCount == 0) {
             responseEntity = new ResponseEntity<String>(JSONObject.toJSONString(apiArrearsFeeVo), HttpStatus.OK);
-            dataFlowContext.setResponseEntity(responseEntity);
+            context.setResponseEntity(responseEntity);
             return;
         }
 
@@ -128,7 +111,7 @@ public class QueryArrearsFeeListener extends AbstractServiceApiDataFlowListener
         responseEntity = new ResponseEntity<String>(JSONObject.toJSONString(apiArrearsFeeVo), HttpStatus.OK);
 
 
-        dataFlowContext.setResponseEntity(responseEntity);
+        context.setResponseEntity(responseEntity);
     }
 
     /**
@@ -169,25 +152,9 @@ public class QueryArrearsFeeListener extends AbstractServiceApiDataFlowListener
         }
     }
 
-    /**
-     * 校验查询条件是否满足条件
-     *
-     * @param reqJson 包含查询条件
-     */
-    private void validateFeeData(JSONObject reqJson) {
-        Assert.jsonObjectHaveKey(reqJson, "communityId", "请求中未包含communityId信息");
-        Assert.jsonObjectHaveKey(reqJson, "feeTypeCd", "请求中未包含feeTypeCd信息");
-        Assert.jsonObjectHaveKey(reqJson, "page", "请求中未包含page信息");
-        Assert.jsonObjectHaveKey(reqJson, "row", "请求中未包含row信息");
-
-
-        Assert.isInteger(reqJson.getString("row"), "row必须为数字");
-        Assert.isInteger(reqJson.getString("page"), "page必须为数字");
-
-    }
-
     /**
      * 查询 objIds
+     *
      * @param feeDtos 费用信息
      * @return objIds信息
      */
@@ -199,61 +166,4 @@ public class QueryArrearsFeeListener extends AbstractServiceApiDataFlowListener
 
         return objIds.toArray(new String[objIds.size()]);
     }
-
-    @Override
-    public int getOrder() {
-        return super.DEFAULT_ORDER;
-    }
-
-    public IFeeInnerServiceSMO getFeeInnerServiceSMOImpl() {
-        return feeInnerServiceSMOImpl;
-    }
-
-    public void setFeeInnerServiceSMOImpl(IFeeInnerServiceSMO feeInnerServiceSMOImpl) {
-        this.feeInnerServiceSMOImpl = feeInnerServiceSMOImpl;
-    }
-
-
-    public IRoomInnerServiceSMO getRoomInnerServiceSMOImpl() {
-        return roomInnerServiceSMOImpl;
-    }
-
-    public void setRoomInnerServiceSMOImpl(IRoomInnerServiceSMO roomInnerServiceSMOImpl) {
-        this.roomInnerServiceSMOImpl = roomInnerServiceSMOImpl;
-    }
-
-
-    public IFloorInnerServiceSMO getFloorInnerServiceSMOImpl() {
-        return floorInnerServiceSMOImpl;
-    }
-
-    public void setFloorInnerServiceSMOImpl(IFloorInnerServiceSMO floorInnerServiceSMOImpl) {
-        this.floorInnerServiceSMOImpl = floorInnerServiceSMOImpl;
-    }
-
-    public IUnitInnerServiceSMO getUnitInnerServiceSMOImpl() {
-        return unitInnerServiceSMOImpl;
-    }
-
-    public void setUnitInnerServiceSMOImpl(IUnitInnerServiceSMO unitInnerServiceSMOImpl) {
-        this.unitInnerServiceSMOImpl = unitInnerServiceSMOImpl;
-    }
-
-    public IOwnerInnerServiceSMO getOwnerInnerServiceSMOImpl() {
-        return ownerInnerServiceSMOImpl;
-    }
-
-    public void setOwnerInnerServiceSMOImpl(IOwnerInnerServiceSMO ownerInnerServiceSMOImpl) {
-        this.ownerInnerServiceSMOImpl = ownerInnerServiceSMOImpl;
-    }
-
-    public IOwnerRoomRelInnerServiceSMO getOwnerRoomRelInnerServiceSMOImpl() {
-        return ownerRoomRelInnerServiceSMOImpl;
-    }
-
-    public void setOwnerRoomRelInnerServiceSMOImpl(IOwnerRoomRelInnerServiceSMO ownerRoomRelInnerServiceSMOImpl) {
-        this.ownerRoomRelInnerServiceSMOImpl = ownerRoomRelInnerServiceSMOImpl;
-    }
-
-
 }

+ 59 - 0
service-fee/src/main/java/com/java110/fee/cmd/fee/QueryFeeByCarInoutCmd.java

@@ -0,0 +1,59 @@
+package com.java110.fee.cmd.fee;
+
+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.fee.FeeDto;
+import com.java110.intf.fee.IFeeInnerServiceSMO;
+import com.java110.utils.constant.FeeTypeConstant;
+import com.java110.utils.exception.CmdException;
+import com.java110.utils.util.Assert;
+import com.java110.utils.util.BeanConvertUtil;
+import com.java110.vo.api.ApiMainFeeVo;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.HttpStatus;
+import org.springframework.http.ResponseEntity;
+
+import java.util.List;
+
+@Java110Cmd(serviceCode = "fee.queryFeeByCarInout")
+public class QueryFeeByCarInoutCmd extends Cmd {
+
+    @Autowired
+    private IFeeInnerServiceSMO feeInnerServiceSMOImpl;
+
+    @Override
+    public void validate(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException {
+        Assert.jsonObjectHaveKey(reqJson, "communityId", "请求中未包含communityId信息");
+        Assert.jsonObjectHaveKey(reqJson, "inoutId", "请求中未包含inoutId信息");
+        Assert.jsonObjectHaveKey(reqJson, "state", "请求中未包含state信息");
+    }
+
+    @Override
+    public void doCmd(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException {
+        FeeDto feeDtoParamIn = BeanConvertUtil.covertBean(reqJson, FeeDto.class);
+        feeDtoParamIn.setPayerObjId(reqJson.getString("inoutId"));
+        feeDtoParamIn.setState(reqJson.getString("state"));
+        feeDtoParamIn.setFeeTypeCd(FeeTypeConstant.FEE_TYPE_TEMP_DOWN_PARKING_SPACE);
+        feeDtoParamIn.setFeeFlag("2006012");
+
+        List<FeeDto> feeDtos = feeInnerServiceSMOImpl.queryFees(feeDtoParamIn);
+        ResponseEntity<String> responseEntity = null;
+        if (feeDtos == null || feeDtos.size() == 0) {
+            responseEntity = new ResponseEntity<String>("{}", HttpStatus.OK);
+            context.setResponseEntity(responseEntity);
+            return ;
+        }
+
+        FeeDto feeDto = feeDtos.get(0);
+
+        ApiMainFeeVo apiFeeVo = BeanConvertUtil.covertBean(feeDto, ApiMainFeeVo.class);
+
+        responseEntity = new ResponseEntity<String>(JSONObject.toJSONString(apiFeeVo), HttpStatus.OK);
+
+
+        context.setResponseEntity(responseEntity);
+    }
+}

+ 20 - 86
service-api/src/main/java/com/java110/api/listener/fee/QueryFeeByParkingSpaceListener.java

@@ -1,38 +1,28 @@
-package com.java110.api.listener.fee;
-
+package com.java110.fee.cmd.fee;
 
 import com.alibaba.fastjson.JSONObject;
-import com.java110.api.listener.AbstractServiceApiDataFlowListener;
-import com.java110.utils.constant.ServiceCodeConstant;
-import com.java110.utils.util.Assert;
-import com.java110.utils.util.BeanConvertUtil;
-import com.java110.core.annotation.Java110Listener;
-import com.java110.core.context.DataFlowContext;
-import com.java110.intf.fee.IFeeInnerServiceSMO;
-import com.java110.intf.user.IOwnerCarInnerServiceSMO;
-import com.java110.intf.community.IParkingSpaceInnerServiceSMO;
+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.fee.FeeDto;
 import com.java110.dto.owner.OwnerCarDto;
 import com.java110.dto.parking.ParkingSpaceDto;
-import com.java110.core.event.service.api.ServiceDataFlowEvent;
+import com.java110.intf.community.IParkingSpaceInnerServiceSMO;
+import com.java110.intf.fee.IFeeInnerServiceSMO;
+import com.java110.intf.user.IOwnerCarInnerServiceSMO;
+import com.java110.utils.exception.CmdException;
+import com.java110.utils.util.Assert;
+import com.java110.utils.util.BeanConvertUtil;
 import com.java110.vo.api.ApiParkingSpaceFeeVo;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.HttpMethod;
 import org.springframework.http.HttpStatus;
 import org.springframework.http.ResponseEntity;
 
 import java.util.List;
 
-/**
- * @ClassName FloorDto
- * @Description 小区楼数据层侦听类
- * @Author wuxw
- * @Date 2019/4/24 8:52
- * @Version 1.0
- * add by wuxw 2019/4/24
- **/
-@Java110Listener("queryFeeByParkingSpace")
-public class QueryFeeByParkingSpaceListener extends AbstractServiceApiDataFlowListener {
+@Java110Cmd(serviceCode = "fee.queryFeeByParkingSpace")
+public class QueryFeeByParkingSpaceCmd extends Cmd {
 
     @Autowired
     private IFeeInnerServiceSMO feeInnerServiceSMOImpl;
@@ -45,26 +35,13 @@ public class QueryFeeByParkingSpaceListener extends AbstractServiceApiDataFlowLi
     private IOwnerCarInnerServiceSMO ownerCarInnerServiceSMOImpl;
 
     @Override
-    public String getServiceCode() {
-        return ServiceCodeConstant.SERVICE_CODE_QUERY_FEE_BY_PARKING_SPACE;
-    }
-
-    @Override
-    public HttpMethod getHttpMethod() {
-        return HttpMethod.GET;
+    public void validate(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException {
+        Assert.jsonObjectHaveKey(reqJson, "communityId", "请求中未包含communityId信息");
+        Assert.jsonObjectHaveKey(reqJson, "psId", "请求中未包含psId信息");
     }
 
-    /**
-     * 业务层数据处理
-     *
-     * @param event 时间对象
-     */
     @Override
-    public void soService(ServiceDataFlowEvent event) {
-        DataFlowContext dataFlowContext = event.getDataFlowContext();
-        //获取请求数据
-        JSONObject reqJson = dataFlowContext.getReqJson();
-        validateFeeData(reqJson);
+    public void doCmd(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException {
         FeeDto feeDtoParamIn = BeanConvertUtil.covertBean(reqJson, FeeDto.class);
         feeDtoParamIn.setPayerObjId(reqJson.getString("psId"));
 
@@ -72,7 +49,7 @@ public class QueryFeeByParkingSpaceListener extends AbstractServiceApiDataFlowLi
         ResponseEntity<String> responseEntity = null;
         if (feeDtos == null || feeDtos.size() == 0) {
             responseEntity = new ResponseEntity<String>("{}", HttpStatus.OK);
-            dataFlowContext.setResponseEntity(responseEntity);
+            context.setResponseEntity(responseEntity);
             return ;
         }
 
@@ -91,7 +68,7 @@ public class QueryFeeByParkingSpaceListener extends AbstractServiceApiDataFlowLi
         BeanConvertUtil.covertBean(parkingSpaceDto, apiFeeVo);
 
         //查询车辆信息
-        OwnerCarDto  ownerCarDto = BeanConvertUtil.covertBean(reqJson, OwnerCarDto.class);
+        OwnerCarDto ownerCarDto = BeanConvertUtil.covertBean(reqJson, OwnerCarDto.class);
 
         List<OwnerCarDto> ownerCarDtos = ownerCarInnerServiceSMOImpl.queryOwnerCars(ownerCarDto);
         Assert.listOnlyOne(ownerCarDtos, "未查询到或查询多条 车辆信息");
@@ -103,49 +80,6 @@ public class QueryFeeByParkingSpaceListener extends AbstractServiceApiDataFlowLi
         responseEntity = new ResponseEntity<String>(JSONObject.toJSONString(apiFeeVo), HttpStatus.OK);
 
 
-        dataFlowContext.setResponseEntity(responseEntity);
-    }
-
-    /**
-     * 校验查询条件是否满足条件
-     *
-     * @param reqJson 包含查询条件
-     */
-    private void validateFeeData(JSONObject reqJson) {
-        Assert.jsonObjectHaveKey(reqJson, "communityId", "请求中未包含communityId信息");
-        Assert.jsonObjectHaveKey(reqJson, "psId", "请求中未包含psId信息");
-
-
-    }
-
-    @Override
-    public int getOrder() {
-        return super.DEFAULT_ORDER;
-    }
-
-    public IFeeInnerServiceSMO getFeeInnerServiceSMOImpl() {
-        return feeInnerServiceSMOImpl;
-    }
-
-    public void setFeeInnerServiceSMOImpl(IFeeInnerServiceSMO feeInnerServiceSMOImpl) {
-        this.feeInnerServiceSMOImpl = feeInnerServiceSMOImpl;
-    }
-
-
-    public IParkingSpaceInnerServiceSMO getParkingSpaceInnerServiceSMOImpl() {
-        return parkingSpaceInnerServiceSMOImpl;
-    }
-
-    public void setParkingSpaceInnerServiceSMOImpl(IParkingSpaceInnerServiceSMO parkingSpaceInnerServiceSMOImpl) {
-        this.parkingSpaceInnerServiceSMOImpl = parkingSpaceInnerServiceSMOImpl;
-    }
-
-
-    public IOwnerCarInnerServiceSMO getOwnerCarInnerServiceSMOImpl() {
-        return ownerCarInnerServiceSMOImpl;
-    }
-
-    public void setOwnerCarInnerServiceSMOImpl(IOwnerCarInnerServiceSMO ownerCarInnerServiceSMOImpl) {
-        this.ownerCarInnerServiceSMOImpl = ownerCarInnerServiceSMOImpl;
+        context.setResponseEntity(responseEntity);
     }
 }

+ 15 - 65
service-api/src/main/java/com/java110/api/listener/fee/QueryFeeDetailListener.java

@@ -1,40 +1,30 @@
-package com.java110.api.listener.fee;
-
+package com.java110.fee.cmd.fee;
 
 import com.alibaba.fastjson.JSONObject;
-import com.java110.api.listener.AbstractServiceApiDataFlowListener;
+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.fee.FeeDetailDto;
 import com.java110.dto.feeAccountDetail.FeeAccountDetailDto;
 import com.java110.intf.fee.IFeeAccountDetailServiceSMO;
-import com.java110.utils.constant.ServiceCodeConstant;
+import com.java110.intf.fee.IFeeDetailInnerServiceSMO;
+import com.java110.utils.exception.CmdException;
 import com.java110.utils.util.Assert;
 import com.java110.utils.util.BeanConvertUtil;
 import com.java110.utils.util.DateUtil;
-import com.java110.core.annotation.Java110Listener;
-import com.java110.core.context.DataFlowContext;
-import com.java110.intf.fee.IFeeDetailInnerServiceSMO;
-import com.java110.dto.fee.FeeDetailDto;
-import com.java110.core.event.service.api.ServiceDataFlowEvent;
 import com.java110.utils.util.StringUtil;
 import com.java110.vo.api.ApiFeeDetailDataVo;
 import com.java110.vo.api.ApiFeeDetailVo;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.HttpMethod;
 import org.springframework.http.HttpStatus;
 import org.springframework.http.ResponseEntity;
 
 import java.util.ArrayList;
 import java.util.List;
 
-/**
- * @ClassName FloorDto
- * @Description 小区楼数据层侦听类
- * @Author wuxw
- * @Date 2019/4/24 8:52
- * @Version 1.0
- * add by wuxw 2019/4/24
- **/
-@Java110Listener("queryFeeDetail")
-public class QueryFeeDetailListener extends AbstractServiceApiDataFlowListener {
+@Java110Cmd(serviceCode = "fee.queryFeeDetail")
+public class QueryFeeDetailCmd extends Cmd {
 
     @Autowired
     private IFeeDetailInnerServiceSMO feeDetailInnerServiceSMOImpl;
@@ -43,26 +33,13 @@ public class QueryFeeDetailListener extends AbstractServiceApiDataFlowListener {
     private IFeeAccountDetailServiceSMO feeAccountDetailServiceSMOImpl;
 
     @Override
-    public String getServiceCode() {
-        return ServiceCodeConstant.SERVICE_CODE_QUERY_FEE_DETAIL;
-    }
-
-    @Override
-    public HttpMethod getHttpMethod() {
-        return HttpMethod.GET;
+    public void validate(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException {
+        Assert.jsonObjectHaveKey(reqJson, "communityId", "请求中未包含communityId信息");
     }
 
-    /**
-     * 业务层数据处理
-     *
-     * @param event 时间对象
-     */
     @Override
-    public void soService(ServiceDataFlowEvent event) {
-        DataFlowContext dataFlowContext = event.getDataFlowContext();
-        //获取请求数据
-        JSONObject reqJson = dataFlowContext.getReqJson();
-        //获取开始时间
+    public void doCmd(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException {
+//获取开始时间
         if (!StringUtil.isEmpty(reqJson.getString("startTime"))) {
             String startTime = reqJson.getString("startTime") + " 00:00:00";
             reqJson.put("startTime", startTime);
@@ -72,8 +49,6 @@ public class QueryFeeDetailListener extends AbstractServiceApiDataFlowListener {
             String endTime = reqJson.getString("endTime") + " 23:59:59";
             reqJson.put("endTime", endTime);
         }
-        validateFeeConfigData(reqJson);
-
         //查询总记录数
         ApiFeeDetailVo apiFeeDetailVo = new ApiFeeDetailVo();
         FeeDetailDto feeDetailDto = BeanConvertUtil.covertBean(reqJson, FeeDetailDto.class);
@@ -119,7 +94,7 @@ public class QueryFeeDetailListener extends AbstractServiceApiDataFlowListener {
         apiFeeDetailVo.setRecords((int) Math.ceil((double) total / (double) row));
         ResponseEntity<String> responseEntity = new ResponseEntity<String>(JSONObject.toJSONString(apiFeeDetailVo), HttpStatus.OK);
 
-        dataFlowContext.setResponseEntity(responseEntity);
+        context.setResponseEntity(responseEntity);
     }
 
     /**
@@ -137,29 +112,4 @@ public class QueryFeeDetailListener extends AbstractServiceApiDataFlowListener {
             }
         }
     }
-
-    /**
-     * 校验查询条件是否满足条件
-     *
-     * @param reqJson 包含查询条件
-     */
-    private void validateFeeConfigData(JSONObject reqJson) {
-        Assert.jsonObjectHaveKey(reqJson, "communityId", "请求中未包含communityId信息");
-        // Assert.jsonObjectHaveKey(reqJson, "feeId", "请求中未包含feeId信息");
-
-
-    }
-
-    @Override
-    public int getOrder() {
-        return super.DEFAULT_ORDER;
-    }
-
-    public IFeeDetailInnerServiceSMO getFeeDetailInnerServiceSMOImpl() {
-        return feeDetailInnerServiceSMOImpl;
-    }
-
-    public void setFeeDetailInnerServiceSMOImpl(IFeeDetailInnerServiceSMO feeDetailInnerServiceSMOImpl) {
-        this.feeDetailInnerServiceSMOImpl = feeDetailInnerServiceSMOImpl;
-    }
 }

+ 39 - 43
service-api/src/main/java/com/java110/api/listener/fee/SaveTempCarFeeConfigListener.java

@@ -1,52 +1,46 @@
-package com.java110.api.listener.fee;
+package com.java110.fee.cmd.fee;
 
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
-import com.java110.api.bmo.fee.IFeeBMO;
-import com.java110.api.bmo.tempCarFeeConfig.ITempCarFeeConfigBMO;
-import com.java110.api.bmo.tempCarFeeConfigAttr.ITempCarFeeConfigAttrBMO;
-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.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.factory.GenerateCodeFactory;
 import com.java110.dto.fee.FeeConfigDto;
 import com.java110.dto.fee.FeeDto;
 import com.java110.dto.parking.ParkingAreaDto;
 import com.java110.intf.community.IParkingAreaInnerServiceSMO;
+import com.java110.intf.fee.IPayFeeConfigV1InnerServiceSMO;
+import com.java110.intf.fee.ITempCarFeeConfigAttrV1InnerServiceSMO;
+import com.java110.intf.fee.ITempCarFeeConfigV1InnerServiceSMO;
 import com.java110.po.fee.PayFeeConfigPo;
-import com.java110.utils.constant.BusinessTypeConstant;
-import com.java110.utils.constant.ServiceCodeTempCarFeeConfigConstant;
+import com.java110.po.tempCarFeeConfig.TempCarFeeConfigPo;
+import com.java110.po.tempCarFeeConfigAttr.TempCarFeeConfigAttrPo;
+import com.java110.utils.exception.CmdException;
 import com.java110.utils.util.Assert;
 import com.java110.utils.util.BeanConvertUtil;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.HttpMethod;
 
 import java.util.List;
 
-/**
- * 保存商户侦听
- * add by wuxw 2019-06-30
- */
-@Java110Listener("saveTempCarFeeConfigListener")
-public class SaveTempCarFeeConfigListener extends AbstractServiceApiPlusListener {
+@Java110Cmd(serviceCode = "fee.saveTempCarFeeConfig")
+public class SaveTempCarFeeConfigCmd extends Cmd {
 
-    @Autowired
-    private ITempCarFeeConfigBMO tempCarFeeConfigBMOImpl;
 
     @Autowired
-    private IFeeBMO feeBMOImpl;
+    private IParkingAreaInnerServiceSMO parkingAreaInnerServiceSMOImpl;
 
     @Autowired
-    private ITempCarFeeConfigAttrBMO tempCarFeeConfigAttrBMOImpl;
+    private IPayFeeConfigV1InnerServiceSMO payFeeConfigV1InnerServiceSMOImpl;
+    @Autowired
+    private ITempCarFeeConfigV1InnerServiceSMO tempCarFeeConfigV1InnerServiceSMOImpl;
 
     @Autowired
-    private IParkingAreaInnerServiceSMO parkingAreaInnerServiceSMOImpl;
+    private ITempCarFeeConfigAttrV1InnerServiceSMO tempCarFeeConfigAttrV1InnerServiceSMOImpl;
 
     @Override
-    protected void validate(ServiceDataFlowEvent event, JSONObject reqJson) {
-        //Assert.hasKeyAndValue(reqJson, "xxx", "xxx");
-
+    public void validate(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException {
         Assert.hasKeyAndValue(reqJson, "feeName", "请求报文中未包含feeName");
         Assert.hasKeyAndValue(reqJson, "paId", "请求报文中未包含paId");
         Assert.hasKeyAndValue(reqJson, "carType", "请求报文中未包含carType");
@@ -66,10 +60,14 @@ public class SaveTempCarFeeConfigListener extends AbstractServiceApiPlusListener
     }
 
     @Override
-    protected void doSoService(ServiceDataFlowEvent event, DataFlowContext context, JSONObject reqJson) {
+    public void doCmd(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException {
         reqJson.put("feeConfigId", GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_configId));
-        tempCarFeeConfigBMOImpl.addTempCarFeeConfig(reqJson, context);
-
+        reqJson.put("configId", GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_configId));
+        TempCarFeeConfigPo tempCarFeeConfigPo = BeanConvertUtil.covertBean(reqJson, TempCarFeeConfigPo.class);
+        int flag = tempCarFeeConfigV1InnerServiceSMOImpl.saveTempCarFeeConfig(tempCarFeeConfigPo);
+        if (flag < 1) {
+            throw new CmdException("保存临时收费失败");
+        }
         //处理房屋属性
         dealAttr(reqJson, context);
 
@@ -90,11 +88,14 @@ public class SaveTempCarFeeConfigListener extends AbstractServiceApiPlusListener
         payFeeConfigPo.setPaymentCd(FeeConfigDto.PAYMENT_CD_PRE);
         payFeeConfigPo.setPaymentCycle("1");
         payFeeConfigPo.setSquarePrice("0");
-        super.insert(context, payFeeConfigPo, BusinessTypeConstant.BUSINESS_TYPE_SAVE_FEE_CONFIG);
-        
+        flag = payFeeConfigV1InnerServiceSMOImpl.savePayFeeConfig(payFeeConfigPo);
+        if (flag < 1) {
+            throw new CmdException("保存临时收费失败");
+        }
+
     }
 
-    private void dealAttr(JSONObject reqJson, DataFlowContext context) {
+    private void dealAttr(JSONObject reqJson, ICmdDataFlowContext context) {
 
         if (!reqJson.containsKey("attrs")) {
             return;
@@ -107,23 +108,18 @@ public class SaveTempCarFeeConfigListener extends AbstractServiceApiPlusListener
 
 
         JSONObject attr = null;
+        int flag = 0;
         for (int attrIndex = 0; attrIndex < attrs.size(); attrIndex++) {
             attr = attrs.getJSONObject(attrIndex);
             attr.put("configId", reqJson.getString("configId"));
             attr.put("communityId", reqJson.getString("communityId"));
-            tempCarFeeConfigAttrBMOImpl.addTempCarFeeConfigAttr(attr, context);
+            attr.put("attrId", GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_attrId));
+            TempCarFeeConfigAttrPo tempCarFeeConfigAttrPo = BeanConvertUtil.covertBean(attr, TempCarFeeConfigAttrPo.class);
+            flag = tempCarFeeConfigAttrV1InnerServiceSMOImpl.saveTempCarFeeConfigAttr(tempCarFeeConfigAttrPo);
+            if (flag < 1) {
+                throw new CmdException("保存临时收费失败");
+            }
         }
 
     }
-
-    @Override
-    public String getServiceCode() {
-        return ServiceCodeTempCarFeeConfigConstant.ADD_TEMPCARFEECONFIG;
-    }
-
-    @Override
-    public HttpMethod getHttpMethod() {
-        return HttpMethod.POST;
-    }
-
 }

+ 43 - 4
service-order/src/main/java/com/java110/order/smo/impl/OIdServiceSMOImpl.java

@@ -3,8 +3,8 @@ package com.java110.order.smo.impl;
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.java110.core.client.RestTemplate;
-import com.java110.core.context.SecureInvocation;
 import com.java110.core.factory.GenerateCodeFactory;
+import com.java110.core.log.LoggerFactory;
 import com.java110.dto.app.AppDto;
 import com.java110.dto.businessTableHis.BusinessTableHisDto;
 import com.java110.dto.order.OrderDto;
@@ -19,7 +19,6 @@ import com.java110.utils.util.DateUtil;
 import com.java110.utils.util.StringUtil;
 import com.java110.vo.ResultVo;
 import org.slf4j.Logger;
-import com.java110.core.log.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.*;
 import org.springframework.stereotype.Service;
@@ -76,7 +75,7 @@ public class OIdServiceSMOImpl implements IOIdServiceSMO {
         }
 
         //保存订单信息
-            centerServiceDAOImpl.saveOrder(BeanConvertUtil.beanCovertMap(orderDto));
+        centerServiceDAOImpl.saveOrder(BeanConvertUtil.beanCovertMap(orderDto));
 
         return new ResponseEntity<String>(JSONObject.toJSONString(orderDto), HttpStatus.OK);
     }
@@ -320,8 +319,11 @@ public class OIdServiceSMOImpl implements IOIdServiceSMO {
         }
         centerServiceDAOImpl.saveOrderItem(BeanConvertUtil.beanCovertMap(orderItemDto));
 
+        //获取action
+        String action = getOrderItemAction(orderItemDto);
+
         //判断是否配置了 轨迹
-        BusinessTableHisDto businessTableHisDto = BusinessTableHisCache.getBusinessTableHisDto(orderItemDto.getAction(), orderItemDto.getActionObj());
+        BusinessTableHisDto businessTableHisDto = BusinessTableHisCache.getBusinessTableHisDto(action, orderItemDto.getActionObj());
         if (businessTableHisDto == null) {
             return ResultVo.createResponseEntity(ResultVo.CODE_OK, ResultVo.MSG_OK);
         }
@@ -344,6 +346,43 @@ public class OIdServiceSMOImpl implements IOIdServiceSMO {
         return ResultVo.createResponseEntity(ResultVo.CODE_OK, ResultVo.MSG_OK);
     }
 
+    /**
+     * 这里 兼容性处理
+     * 因为我们不涉及 物理删除 都是逻辑删除 所以 status_cd 为 1 时强行设置为DEL 为逻辑删除
+     * @param orderItemDto
+     * @return
+     */
+    private String getOrderItemAction(OrderItemDto orderItemDto) {
+
+        if (StringUtil.isEmpty(orderItemDto.getLogText())) {
+            return orderItemDto.getAction();
+        }
+
+        if ("ADD".equals(orderItemDto.getAction()) || "DEL".equals(orderItemDto.getAction())) {
+            return orderItemDto.getAction();
+        }
+
+        if (!StringUtil.isJsonObject(orderItemDto.getLogText())) {
+            return orderItemDto.getAction();
+        }
+        JSONObject logTextObj = JSONObject.parseObject(orderItemDto.getLogText());
+        if (!logTextObj.containsKey("afterValue")) {
+            return orderItemDto.getAction();
+        }
+        JSONArray afterValues = logTextObj.getJSONArray("afterValue");
+        if (afterValues == null || afterValues.size() < 1) {
+            return orderItemDto.getAction();
+        }
+
+        for (int afterValueIndex = 0; afterValueIndex < afterValues.size(); afterValueIndex++) {
+            JSONObject keyValue = afterValues.getJSONObject(afterValueIndex);
+            if (keyValue.containsKey("status_cd") && "1".equals(keyValue.getString("status_cd"))) {
+                return "DEL";
+            }
+        }
+        return orderItemDto.getAction();
+    }
+
     private void doNoticeServiceGeneratorBusiness(OrderItemDto orderItemDto, BusinessTableHisDto businessTableHisDto) {
         asynNotifySubServiceImpl.notifySubService(orderItemDto, businessTableHisDto);
     }