| | |
| | | package com.java110.api.bmo.advert.impl; |
| | | |
| | | public class AdvertBMOImpl { |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.java110.api.bmo.ApiBaseBMO; |
| | | import com.java110.api.bmo.advert.IAdvertBMO; |
| | | import com.java110.core.context.DataFlowContext; |
| | | import com.java110.core.factory.GenerateCodeFactory; |
| | | import com.java110.core.smo.advert.IAdvertInnerServiceSMO; |
| | | import com.java110.core.smo.advert.IAdvertItemInnerServiceSMO; |
| | | import com.java110.core.smo.file.IFileInnerServiceSMO; |
| | | import com.java110.core.smo.file.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.utils.constant.BusinessTypeConstant; |
| | | import com.java110.utils.constant.CommonConstant; |
| | | import com.java110.utils.util.Assert; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import java.util.List; |
| | | @Service("advertBMOImpl") |
| | | public class AdvertBMOImpl extends ApiBaseBMO implements IAdvertBMO { |
| | | |
| | | @Autowired |
| | | private IFileRelInnerServiceSMO fileRelInnerServiceSMOImpl; |
| | | @Autowired |
| | | private IFileInnerServiceSMO fileInnerServiceSMOImpl; |
| | | @Autowired |
| | | private IAdvertInnerServiceSMO advertInnerServiceSMOImpl; |
| | | |
| | | @Autowired |
| | | private IAdvertItemInnerServiceSMO advertItemInnerServiceSMOImpl; |
| | | /** |
| | | * 添加小区信息 |
| | | * |
| | | * @param paramInJson 接口调用放传入入参 |
| | | * @param dataFlowContext 数据上下文 |
| | | * @return 订单服务能够接受的报文 |
| | | */ |
| | | public JSONObject deleteAdvert(JSONObject paramInJson, DataFlowContext dataFlowContext) { |
| | | |
| | | |
| | | JSONObject business = JSONObject.parseObject("{\"datas\":{}}"); |
| | | business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_DELETE_ADVERT); |
| | | business.put(CommonConstant.HTTP_SEQ, DEFAULT_SEQ); |
| | | business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S); |
| | | JSONObject businessAdvert = new JSONObject(); |
| | | businessAdvert.putAll(paramInJson); |
| | | //计算 应收金额 |
| | | business.getJSONObject(CommonConstant.HTTP_BUSINESS_DATAS).put("businessAdvert", businessAdvert); |
| | | return business; |
| | | } |
| | | |
| | | |
| | | public JSONObject addAdvertItemPhoto(JSONObject paramInJson, DataFlowContext dataFlowContext, String photo) { |
| | | |
| | | String itemTypeCd = ""; |
| | | String url = ""; |
| | | |
| | | FileDto fileDto = new FileDto(); |
| | | fileDto.setFileId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_file_id)); |
| | | fileDto.setFileName(fileDto.getFileId()); |
| | | fileDto.setContext(photo); |
| | | fileDto.setSuffix("jpeg"); |
| | | fileDto.setCommunityId(paramInJson.getString("communityId")); |
| | | String fileName = fileInnerServiceSMOImpl.saveFile(fileDto); |
| | | paramInJson.put("fileSaveName", fileName); |
| | | paramInJson.put("advertPhotoId", fileDto.getFileId()); |
| | | itemTypeCd = "8888"; |
| | | url = fileDto.getFileId(); |
| | | |
| | | |
| | | JSONObject business = JSONObject.parseObject("{\"datas\":{}}"); |
| | | business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_SAVE_ADVERT_ITEM); |
| | | business.put(CommonConstant.HTTP_SEQ, DEFAULT_SEQ); |
| | | business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S); |
| | | JSONObject businessAdvertItem = new JSONObject(); |
| | | businessAdvertItem.put("advertId", paramInJson.getString("advertId")); |
| | | businessAdvertItem.put("itemTypeCd", itemTypeCd); |
| | | businessAdvertItem.put("url", url); |
| | | businessAdvertItem.put("seq", 1); |
| | | businessAdvertItem.put("advertItemId", "-1"); |
| | | businessAdvertItem.put("communityId", paramInJson.getString("communityId")); |
| | | //计算 应收金额 |
| | | business.getJSONObject(CommonConstant.HTTP_BUSINESS_DATAS).put("businessAdvertItem", businessAdvertItem); |
| | | return business; |
| | | } |
| | | |
| | | /** |
| | | * 添加小区信息 |
| | | * |
| | | * @param paramInJson 接口调用放传入入参 |
| | | * @param dataFlowContext 数据上下文 |
| | | * @return 订单服务能够接受的报文 |
| | | */ |
| | | public JSONObject addAdvertItemVedio(JSONObject paramInJson, DataFlowContext dataFlowContext) { |
| | | |
| | | String itemTypeCd = ""; |
| | | String url = ""; |
| | | |
| | | itemTypeCd = "9999"; |
| | | url = paramInJson.getString("vedioName"); |
| | | paramInJson.put("advertPhotoId", url); |
| | | |
| | | JSONObject business = JSONObject.parseObject("{\"datas\":{}}"); |
| | | business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_SAVE_ADVERT_ITEM); |
| | | business.put(CommonConstant.HTTP_SEQ, DEFAULT_SEQ); |
| | | business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S); |
| | | JSONObject businessAdvertItem = new JSONObject(); |
| | | businessAdvertItem.put("advertId", paramInJson.getString("advertId")); |
| | | businessAdvertItem.put("itemTypeCd", itemTypeCd); |
| | | businessAdvertItem.put("url", url); |
| | | businessAdvertItem.put("seq", 1); |
| | | businessAdvertItem.put("advertItemId", "-1"); |
| | | businessAdvertItem.put("communityId", paramInJson.getString("communityId")); |
| | | //计算 应收金额 |
| | | business.getJSONObject(CommonConstant.HTTP_BUSINESS_DATAS).put("businessAdvertItem", businessAdvertItem); |
| | | return business; |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 添加物业费用 |
| | | * |
| | | * @param paramInJson 接口调用放传入入参 |
| | | * @param dataFlowContext 数据上下文 |
| | | * @return 订单服务能够接受的报文 |
| | | */ |
| | | public JSONObject addAdvertFileRel(JSONObject paramInJson, DataFlowContext dataFlowContext, String relTypeCd) { |
| | | |
| | | |
| | | JSONObject business = JSONObject.parseObject("{\"datas\":{}}"); |
| | | business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_SAVE_FILE_REL); |
| | | business.put(CommonConstant.HTTP_SEQ, DEFAULT_SEQ + 2); |
| | | business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S); |
| | | JSONObject businessUnit = new JSONObject(); |
| | | businessUnit.put("fileRelId", "-1"); |
| | | businessUnit.put("relTypeCd", relTypeCd); |
| | | businessUnit.put("saveWay", "40000".equals(relTypeCd) ? "table" : "ftp"); |
| | | businessUnit.put("objId", paramInJson.getString("advertId")); |
| | | businessUnit.put("fileRealName", paramInJson.getString("advertPhotoId")); |
| | | businessUnit.put("fileSaveName", paramInJson.getString("fileSaveName")); |
| | | business.getJSONObject(CommonConstant.HTTP_BUSINESS_DATAS).put("businessFileRel", businessUnit); |
| | | |
| | | return business; |
| | | } |
| | | |
| | | /** |
| | | * 添加小区信息 |
| | | * |
| | | * @param paramInJson 接口调用放传入入参 |
| | | * @param dataFlowContext 数据上下文 |
| | | * @return 订单服务能够接受的报文 |
| | | */ |
| | | public JSONObject addAdvert(JSONObject paramInJson, DataFlowContext dataFlowContext) { |
| | | |
| | | String advertId = GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_advertId); |
| | | paramInJson.put("advertId", advertId); |
| | | JSONObject business = JSONObject.parseObject("{\"datas\":{}}"); |
| | | business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_SAVE_ADVERT); |
| | | business.put(CommonConstant.HTTP_SEQ, DEFAULT_SEQ); |
| | | business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S); |
| | | JSONObject businessAdvert = new JSONObject(); |
| | | businessAdvert.putAll(paramInJson); |
| | | businessAdvert.put("advertId", advertId); |
| | | businessAdvert.put("state", "1000"); |
| | | //计算 应收金额 |
| | | business.getJSONObject(CommonConstant.HTTP_BUSINESS_DATAS).put("businessAdvert", businessAdvert); |
| | | return business; |
| | | } |
| | | |
| | | /** |
| | | * 删除所有的照片或视频信息 |
| | | * |
| | | * @param advertItemDto |
| | | * @param context |
| | | * @return |
| | | */ |
| | | public JSONObject delAdvertItemPhotoOrVideo(AdvertItemDto advertItemDto, DataFlowContext context) { |
| | | JSONObject business = JSONObject.parseObject("{\"datas\":{}}"); |
| | | business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_DELETE_ADVERT_ITEM); |
| | | business.put(CommonConstant.HTTP_SEQ, DEFAULT_SEQ); |
| | | business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S); |
| | | JSONObject businessAdvertItem = new JSONObject(); |
| | | businessAdvertItem.put("advertItemId", advertItemDto.getAdvertItemId()); |
| | | businessAdvertItem.put("communityId", advertItemDto.getCommunityId()); |
| | | //计算 应收金额 |
| | | business.getJSONObject(CommonConstant.HTTP_BUSINESS_DATAS).put("businessAdvertItem", businessAdvertItem); |
| | | return business; |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 删除广告文件关系 |
| | | * |
| | | * @param fileRelDto 接口调用放传入入参 |
| | | * @param dataFlowContext 数据上下文 |
| | | * @return 订单服务能够接受的报文 |
| | | */ |
| | | public JSONObject delAdvertFileRel(FileRelDto fileRelDto, DataFlowContext dataFlowContext) { |
| | | |
| | | |
| | | JSONObject business = JSONObject.parseObject("{\"datas\":{}}"); |
| | | business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_DELETE_FILE_REL); |
| | | business.put(CommonConstant.HTTP_SEQ, DEFAULT_SEQ + 1); |
| | | business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S); |
| | | JSONObject businessUnit = new JSONObject(); |
| | | businessUnit.put("fileRelId", fileRelDto.getFileRelId()); |
| | | business.getJSONObject(CommonConstant.HTTP_BUSINESS_DATAS).put("businessFileRel", businessUnit); |
| | | return business; |
| | | } |
| | | |
| | | /** |
| | | * 添加发布广告信息 |
| | | * |
| | | * @param paramInJson 接口调用放传入入参 |
| | | * @param dataFlowContext 数据上下文 |
| | | * @return 订单服务能够接受的报文 |
| | | */ |
| | | public JSONObject updateAdvert(JSONObject paramInJson, DataFlowContext dataFlowContext) { |
| | | |
| | | AdvertDto advertDto = new AdvertDto(); |
| | | advertDto.setAdvertId(paramInJson.getString("advertId")); |
| | | advertDto.setCommunityId(paramInJson.getString("communityId")); |
| | | List<AdvertDto> advertDtos = advertInnerServiceSMOImpl.queryAdverts(advertDto); |
| | | |
| | | Assert.listOnlyOne(advertDtos, "不存在该条广告 或存在多条数据"); |
| | | |
| | | JSONObject business = JSONObject.parseObject("{\"datas\":{}}"); |
| | | business.put(CommonConstant.HTTP_BUSINESS_TYPE_CD, BusinessTypeConstant.BUSINESS_TYPE_UPDATE_ADVERT); |
| | | business.put(CommonConstant.HTTP_SEQ, DEFAULT_SEQ); |
| | | business.put(CommonConstant.HTTP_INVOKE_MODEL, CommonConstant.HTTP_INVOKE_MODEL_S); |
| | | JSONObject businessAdvert = new JSONObject(); |
| | | businessAdvert.putAll(paramInJson); |
| | | businessAdvert.put("state", advertDtos.get(0).getState()); |
| | | //计算 应收金额 |
| | | business.getJSONObject(CommonConstant.HTTP_BUSINESS_DATAS).put("businessAdvert", businessAdvert); |
| | | return business; |
| | | } |
| | | } |