From 783f0a3125ad9500ff55e6e352dca4da7e8f8c7b Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期日, 19 六月 2022 10:41:57 +0800
Subject: [PATCH] 优化广告调整为cmd 模式

---
 service-common/src/main/java/com/java110/common/cmd/advert/UpdateAdvertCmd.java |  136 +++++++++++++++++++++++---------------------
 1 files changed, 71 insertions(+), 65 deletions(-)

diff --git a/service-api/src/main/java/com/java110/api/listener/advert/UpdateAdvertListener.java b/service-common/src/main/java/com/java110/common/cmd/advert/UpdateAdvertCmd.java
old mode 100755
new mode 100644
similarity index 68%
rename from service-api/src/main/java/com/java110/api/listener/advert/UpdateAdvertListener.java
rename to service-common/src/main/java/com/java110/common/cmd/advert/UpdateAdvertCmd.java
index 0272359..6f4add3
--- a/service-api/src/main/java/com/java110/api/listener/advert/UpdateAdvertListener.java
+++ b/service-common/src/main/java/com/java110/common/cmd/advert/UpdateAdvertCmd.java
@@ -1,40 +1,65 @@
-package com.java110.api.listener.advert;
+/*
+ * 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.common.cmd.advert;
 
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
-import com.java110.api.listener.AbstractServiceApiPlusListener;
-import com.java110.core.annotation.Java110Listener;
+import com.java110.core.annotation.Java110Cmd;
+import com.java110.core.annotation.Java110Transactional;
 import com.java110.core.context.DataFlowContext;
+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.intf.common.IAdvertInnerServiceSMO;
-import com.java110.intf.common.IAdvertItemInnerServiceSMO;
-import com.java110.intf.common.IFileInnerServiceSMO;
-import com.java110.intf.common.IFileRelInnerServiceSMO;
 import com.java110.dto.advert.AdvertDto;
 import com.java110.dto.advert.AdvertItemDto;
 import com.java110.dto.file.FileDto;
 import com.java110.dto.file.FileRelDto;
-import com.java110.core.event.service.api.ServiceDataFlowEvent;
+import com.java110.intf.common.*;
 import com.java110.po.advert.AdvertItemPo;
 import com.java110.po.advert.AdvertPo;
 import com.java110.po.file.FileRelPo;
 import com.java110.utils.constant.BusinessTypeConstant;
-import com.java110.utils.constant.ServiceCodeAdvertConstant;
+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.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.HttpMethod;
 
 import java.util.Date;
 import java.util.List;
 
+
 /**
- * 淇濆瓨鍙戝竷骞垮憡渚﹀惉
- * add by wuxw 2019-06-30
+ * 绫昏〃杩帮細鏇存柊
+ * 鏈嶅姟缂栫爜锛歛dvert.updateAdvert
+ * 璇锋眰璺姴锛�/app/advert.UpdateAdvert
+ * add by 鍚村鏂� at 2022-06-19 10:07:43 mail: 928255095@qq.com
+ * open source address: https://gitee.com/wuxw7/MicroCommunity
+ * 瀹樼綉锛歨ttp://www.homecommunity.cn
+ * 娓╅Θ鎻愮ず锛氬鏋滄偍瀵规鏂囦欢杩涜淇敼 璇蜂笉瑕佸垹闄ゅ師鏈変綔鑰呭強娉ㄩ噴淇℃伅锛岃琛ュ厖鎮ㄧ殑 淇敼鐨勫師鍥犱互鍙婅仈绯婚偖绠卞涓�
+ * // modify by 寮犱笁 at 2021-09-12 绗�10琛屽湪鏌愮鍦烘櫙涓嬪瓨鍦ㄦ煇绉峛ug 闇�瑕佷慨澶嶏紝娉ㄩ噴10鑷�20琛� 鍔犲叆 20琛岃嚦30琛�
  */
-@Java110Listener("updateAdvertListener")
-public class UpdateAdvertListener extends AbstractServiceApiPlusListener {
+@Java110Cmd(serviceCode = "advert.updateAdvert")
+public class UpdateAdvertCmd extends Cmd {
+
+    private static Logger logger = LoggerFactory.getLogger(UpdateAdvertCmd.class);
 
     @Autowired
     private IAdvertInnerServiceSMO advertInnerServiceSMOImpl;
@@ -47,9 +72,14 @@
 
     @Autowired
     private IFileRelInnerServiceSMO fileRelInnerServiceSMOImpl;
+    @Autowired
+    private IAdvertV1InnerServiceSMO advertV1InnerServiceSMOImpl;
+
+    @Autowired
+    private IAdvertItemV1InnerServiceSMO advertItemV1InnerServiceSMOImpl;
 
     @Override
-    protected void validate(ServiceDataFlowEvent event, JSONObject reqJson) {
+    public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) {
         Assert.hasKeyAndValue(reqJson, "advertId", "骞垮憡ID涓嶈兘涓虹┖");
         Assert.hasKeyAndValue(reqJson, "adName", "蹇呭~锛岃濉啓骞垮憡鍚嶇О");
         Assert.hasKeyAndValue(reqJson, "adTypeCd", "蹇呭~锛岃閫夋嫨骞垮憡绫诲瀷");
@@ -76,9 +106,10 @@
         return true;
     }
 
-
     @Override
-    protected void doSoService(ServiceDataFlowEvent event, DataFlowContext context, JSONObject reqJson) {
+    @Java110Transactional
+    public void doCmd(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException {
+
         AdvertDto advertDto = new AdvertDto();
         advertDto.setAdvertId(reqJson.getString("advertId"));
         advertDto.setCommunityId(reqJson.getString("communityId"));
@@ -87,8 +118,10 @@
 
         AdvertPo advert = BeanConvertUtil.covertBean(reqJson, AdvertPo.class);
         advert.setState(advertDtos.get(0).getState());
-        super.update(context, advert, BusinessTypeConstant.BUSINESS_TYPE_UPDATE_ADVERT);
-
+        int flag = advertV1InnerServiceSMOImpl.updateAdvert(advert);
+        if(flag < 1){
+            throw new CmdException("淇濆瓨澶辫触");
+        }
         AdvertItemDto advertItemDto = new AdvertItemDto();
         advertItemDto.setAdvertId(reqJson.getString("advertId"));
         advertItemDto.setItemTypeCds(new String[]{"8888", "9999"});
@@ -96,7 +129,10 @@
         //鍒犻櫎鐓х墖鎴栬棰�
         for (AdvertItemDto tmpAdvertItemDto : advertItemDtos) {
             AdvertItemPo advertItemPo = BeanConvertUtil.covertBean(tmpAdvertItemDto, AdvertItemPo.class);
-            super.delete(context, advertItemPo, BusinessTypeConstant.BUSINESS_TYPE_DELETE_ADVERT_ITEM);
+             flag = advertItemV1InnerServiceSMOImpl.deleteAdvertItem(advertItemPo);
+            if(flag < 1){
+                throw new CmdException("淇濆瓨澶辫触");
+            }
         }
 
         //鍒犻櫎鏂囦欢鍜屽箍鍛婄殑鍏崇郴
@@ -105,7 +141,10 @@
         List<FileRelDto> fileRelDtos = fileRelInnerServiceSMOImpl.queryFileRels(fileRelDto);
         for (FileRelDto tmpFileRelDto : fileRelDtos) {
             FileRelPo fileRelPo = BeanConvertUtil.covertBean(tmpFileRelDto, FileRelPo.class);
-            super.delete(context, fileRelPo, BusinessTypeConstant.BUSINESS_TYPE_DELETE_FILE_REL);
+            flag = fileRelInnerServiceSMOImpl.deleteFileRel(fileRelPo);
+            if(flag < 1){
+                throw new CmdException("淇濆瓨澶辫触");
+            }
         }
 
 
@@ -121,7 +160,7 @@
         }
     }
 
-    public void addAdvertItemPhoto(JSONObject paramInJson, DataFlowContext dataFlowContext, String photo) {
+    public void addAdvertItemPhoto(JSONObject paramInJson, ICmdDataFlowContext dataFlowContext, String photo) {
         String itemTypeCd = "";
         String url = "";
         FileDto fileDto = new FileDto();
@@ -141,7 +180,10 @@
         advertItemPo.setItemTypeCd(itemTypeCd);
         advertItemPo.setUrl(fileName);
         advertItemPo.setSeq("1");
-        super.insert(dataFlowContext, advertItemPo, BusinessTypeConstant.BUSINESS_TYPE_SAVE_ADVERT_ITEM);
+        int flag = advertItemV1InnerServiceSMOImpl.saveAdvertItem(advertItemPo);
+        if(flag < 1){
+            throw new CmdException("淇濆瓨骞垮憡澶辫触");
+        }
     }
 
 
@@ -152,7 +194,7 @@
      * @param dataFlowContext 鏁版嵁涓婁笅鏂�
      * @return 璁㈠崟鏈嶅姟鑳藉鎺ュ彈鐨勬姤鏂�
      */
-    public void addAdvertFileRel(JSONObject paramInJson, DataFlowContext dataFlowContext, String relTypeCd) {
+    public void addAdvertFileRel(JSONObject paramInJson, ICmdDataFlowContext dataFlowContext, String relTypeCd) {
         FileRelPo fileRelPo = new FileRelPo();
         fileRelPo.setRelTypeCd(relTypeCd);
         fileRelPo.setSaveWay("40000".equals(relTypeCd) ? "table" : "ftp");
@@ -160,7 +202,10 @@
         fileRelPo.setObjId(paramInJson.getString("advertId"));
         fileRelPo.setFileRealName(paramInJson.getString("advertPhotoId"));
         fileRelPo.setFileSaveName(paramInJson.getString("fileSaveName"));
-        super.insert(dataFlowContext, fileRelPo, BusinessTypeConstant.BUSINESS_TYPE_SAVE_FILE_REL);
+        int flag = fileRelInnerServiceSMOImpl.saveFileRel(fileRelPo);
+        if(flag < 1){
+            throw new CmdException("淇濆瓨骞垮憡澶辫触");
+        }
     }
 
 
@@ -171,7 +216,7 @@
      * @param dataFlowContext 鏁版嵁涓婁笅鏂�
      * @return 璁㈠崟鏈嶅姟鑳藉鎺ュ彈鐨勬姤鏂�
      */
-    public void addAdvertItemVedio(JSONObject paramInJson, DataFlowContext dataFlowContext) {
+    public void addAdvertItemVedio(JSONObject paramInJson, ICmdDataFlowContext dataFlowContext) {
         FileRelPo fileRelPo = new FileRelPo();
         fileRelPo.setFileRelId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_fileRelId));
         fileRelPo.setObjId(paramInJson.getString("advertId"));
@@ -195,44 +240,5 @@
         advertItemPo.setUrl(url);
         advertItemPo.setSeq("1");
         super.insert(dataFlowContext, advertItemPo, BusinessTypeConstant.BUSINESS_TYPE_SAVE_ADVERT_ITEM);*/
-    }
-
-    @Override
-    public String getServiceCode() {
-        return ServiceCodeAdvertConstant.UPDATE_ADVERT;
-    }
-
-    @Override
-    public HttpMethod getHttpMethod() {
-        return HttpMethod.POST;
-    }
-
-    @Override
-    public int getOrder() {
-        return DEFAULT_ORDER;
-    }
-
-    public IAdvertInnerServiceSMO getAdvertInnerServiceSMOImpl() {
-        return advertInnerServiceSMOImpl;
-    }
-
-    public void setAdvertInnerServiceSMOImpl(IAdvertInnerServiceSMO advertInnerServiceSMOImpl) {
-        this.advertInnerServiceSMOImpl = advertInnerServiceSMOImpl;
-    }
-
-    public IAdvertItemInnerServiceSMO getAdvertItemInnerServiceSMOImpl() {
-        return advertItemInnerServiceSMOImpl;
-    }
-
-    public void setAdvertItemInnerServiceSMOImpl(IAdvertItemInnerServiceSMO advertItemInnerServiceSMOImpl) {
-        this.advertItemInnerServiceSMOImpl = advertItemInnerServiceSMOImpl;
-    }
-
-    public IFileInnerServiceSMO getFileInnerServiceSMOImpl() {
-        return fileInnerServiceSMOImpl;
-    }
-
-    public void setFileInnerServiceSMOImpl(IFileInnerServiceSMO fileInnerServiceSMOImpl) {
-        this.fileInnerServiceSMOImpl = fileInnerServiceSMOImpl;
     }
 }

--
Gitblit v1.8.0