Browse Source

首页设计稿保存,首页设计稿发版api实现

feature/evaluate
hosinokamui 6 years ago
parent
commit
958b1fb8a4
  1. 42
      epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/form/HomeComponentFormDTO.java
  2. 33
      epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/form/HomeDesignFormDTO.java
  3. 30
      epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/controller/HomeController.java
  4. 18
      epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/dao/CustomerHomeDao.java
  5. 10
      epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/dao/CustomerHomeDetailDao.java
  6. 19
      epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/HomeService.java
  7. 50
      epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/impl/HomeServiceImpl.java
  8. 13
      epmet-module/oper-customize/oper-customize-server/src/main/resources/mapper/CustomerHomeDao.xml
  9. 7
      epmet-module/oper-customize/oper-customize-server/src/main/resources/mapper/CustomerHomeDetailDao.xml

42
epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/form/HomeComponentFormDTO.java

@ -0,0 +1,42 @@
package com.epmet.dto.form;
import lombok.Data;
import java.io.Serializable;
/**
* 运营端-客户定制化服务-首页设计稿组件上传数据-入参
* @author zhaoqifeng
* @date 2020/3/16 11:27
*/
@Data
public class HomeComponentFormDTO implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 组件id
*/
private String componentId;
/**
* 所属区域
*/
private Integer region;
/**
* 高级配置项
*/
private String configuration;
/**
* 默认数据
*/
private String demoData;
/**
* 显示顺序
*/
private Integer displayOrder;
}

33
epmet-module/oper-customize/oper-customize-client/src/main/java/com/epmet/dto/form/HomeDesignFormDTO.java

@ -0,0 +1,33 @@
package com.epmet.dto.form;
/**
* 运营端-客户定制化服务-首页设计稿组件上传数据-入参
* @author zhaoqifeng
* @date 2020/3/16 11:27
*/
import lombok.Data;
import java.io.Serializable;
import java.util.List;
@Data
public class HomeDesignFormDTO implements Serializable {
private static final long serialVersionUID = -246434129998560246L;
/**
* 客户id
*/
private String customerId;
/**
* 所属端类型 0:居民端 1:政府端
*/
private String clientType;
/**
* 组件集合
*/
private List<HomeComponentFormDTO> componentList;
}

30
epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/controller/HomeController.java

@ -4,10 +4,10 @@ import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.dto.form.ComponentListByCustomerFormDTO;
import com.epmet.dto.form.HomeDesignByCustomerFormDTO;
import com.epmet.dto.form.HomeDesignFormDTO;
import com.epmet.dto.result.ComponentListByCustomerResultDTO;
import com.epmet.dto.result.HomeDesignByCustomerResultDTO;
import com.epmet.service.HomeService;
import net.bytebuddy.asm.Advice;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@ -48,4 +48,32 @@ public class HomeController {
ValidatorUtils.validateEntity(formDTO);
return homeService.getHomeDesignByCustomer(formDTO);
}
/**
* 首页设计稿组件上传数据
* @param formDTO 参数
* @return com.epmet.commons.tools.utils.Result
* @author zhaoqifeng
* Date 2020/3/16 13:21
**/
@PostMapping("savehomedesign")
public Result saveHomeDesign(@RequestBody HomeDesignFormDTO formDTO) {
ValidatorUtils.validateEntity(formDTO);
homeService.saveHomeDesign(formDTO);
return new Result();
}
/**
* 首页设计稿发版
* @param formDTO 参数
* @return com.epmet.commons.tools.utils.Result
* @author zhaoqifeng
* Date 2020/3/16 13:21
**/
@PostMapping("distributehomedesign")
public Result distributeHomeDesign(@RequestBody HomeDesignFormDTO formDTO) {
ValidatorUtils.validateEntity(formDTO);
homeService.distributeHomeDesign(formDTO);
return new Result();
}
}

18
epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/dao/CustomerHomeDao.java

@ -18,11 +18,12 @@
package com.epmet.dao;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dto.CustomerHomeDTO;
import com.epmet.dto.form.HomeDesignByCustomerFormDTO;
import com.epmet.dto.form.HomeDesignFormDTO;
import com.epmet.entity.CustomerHomeEntity;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/**
* 客户首页表
*
@ -31,6 +32,15 @@ import org.apache.ibatis.annotations.Mapper;
*/
@Mapper
public interface CustomerHomeDao extends BaseDao<CustomerHomeEntity> {
//根据客户id,所属端口,查询客户是否有发版模板信息
CustomerHomeDTO getCustomerHomeDetailByCustomerAndClientType(HomeDesignByCustomerFormDTO form);
/**
*
* 客户首页列表查询
*
* @param formDTO
* @return java.util.List<com.epmet.dto.result.CommonComponentResultDTO>
* @author zhaoqifeng
* @date 2020/3/16 14:02
**/
List<CustomerHomeEntity> selectCustomerHomeList(HomeDesignFormDTO formDTO);
}

10
epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/dao/CustomerHomeDetailDao.java

@ -33,5 +33,15 @@ import java.util.List;
*/
@Mapper
public interface CustomerHomeDetailDao extends BaseDao<CustomerHomeDetailEntity> {
/**
*
* 根据界面id清除数据
*
* @param homeId 界面ID
* @author zhaoqifeng
* @date 2020/3/16 14:02
*/
void deleteCustomerHomeDetailByHomeId(String homeId);
List<CommonComponentDesignResultDTO> getCustomerHomeDetailComponent(HomeDesignByCustomerFormDTO form);
}

19
epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/HomeService.java

@ -3,6 +3,7 @@ package com.epmet.service;
import com.epmet.commons.tools.utils.Result;
import com.epmet.dto.form.ComponentListByCustomerFormDTO;
import com.epmet.dto.form.HomeDesignByCustomerFormDTO;
import com.epmet.dto.form.HomeDesignFormDTO;
import com.epmet.dto.result.ComponentListByCustomerResultDTO;
import com.epmet.dto.result.HomeDesignByCustomerResultDTO;
@ -29,4 +30,22 @@ public interface HomeService {
* @Date 2020/3/16 13:21
**/
Result<HomeDesignByCustomerResultDTO> getHomeDesignByCustomer(HomeDesignByCustomerFormDTO formDTO);
/**
*
* 首页设计稿组件上传数据
* @param: formDTO
* @author: zhaoqifeng
* @date: 2020/03/16 13:49:41
*/
void saveHomeDesign(HomeDesignFormDTO formDTO);
/**
*
* 首页设计稿发版
* @param: formDTO
* @author: zhaoqifeng
* @date: 2020/03/16 13:49:41
*/
void distributeHomeDesign(HomeDesignFormDTO formDTO);
}

50
epmet-module/oper-customize/oper-customize-server/src/main/java/com/epmet/service/impl/HomeServiceImpl.java

@ -3,22 +3,22 @@ package com.epmet.service.impl;
import com.epmet.commons.tools.utils.Result;
import com.epmet.dao.CustomerHomeDao;
import com.epmet.dao.CustomerHomeDetailDao;
import com.epmet.dao.CustomerHomeTemplateDao;
import com.epmet.dao.HomeComponentDao;
import com.epmet.dto.CustomerHomeDTO;
import com.epmet.dto.form.ComponentListByCustomerFormDTO;
import com.epmet.dto.form.HomeComponentFormDTO;
import com.epmet.dto.form.HomeDesignByCustomerFormDTO;
import com.epmet.dto.form.HomeDesignFormDTO;
import com.epmet.dto.result.CommonComponentDesignResultDTO;
import com.epmet.dto.result.ComponentListByCustomerResultDTO;
import com.epmet.dto.result.HomeDesignByCustomerResultDTO;
import com.epmet.entity.CustomerHomeDetailEntity;
import com.epmet.entity.CustomerHomeEntity;
import com.epmet.service.HomeService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
/**
* @Description 客户定制化服务-首页
@ -31,6 +31,8 @@ public class HomeServiceImpl implements HomeService {
private HomeComponentDao homeComponentDao;
@Autowired
private CustomerHomeDetailDao customerHomeDetailDao;
@Autowired
private CustomerHomeDao customerHomeDao;
@Override
public Result<ComponentListByCustomerResultDTO> getComponentListByCustomer(ComponentListByCustomerFormDTO formDTO) {
@ -63,4 +65,44 @@ public class HomeServiceImpl implements HomeService {
resultDTO.setUsedComponentIdList(usedComponent);
return new Result<HomeDesignByCustomerResultDTO>().ok(resultDTO);
}
@Override
public void saveHomeDesign(HomeDesignFormDTO formDTO) {
List<CustomerHomeEntity> customerHomeList = customerHomeDao.selectCustomerHomeList(formDTO);
for(CustomerHomeEntity entity : customerHomeList) {
if (entity.getStatus() == 1) {
saveCustomerHomeDetail(formDTO, entity);
}
}
}
@Override
public void distributeHomeDesign(HomeDesignFormDTO formDTO) {
List<CustomerHomeEntity> customerHomeList = customerHomeDao.selectCustomerHomeList(formDTO);
for(CustomerHomeEntity entity : customerHomeList) {
saveCustomerHomeDetail(formDTO, entity);
}
}
private void saveCustomerHomeDetail(HomeDesignFormDTO formDTO, CustomerHomeEntity entity) {
//根据homeID清空客户首页详情表中的数据
customerHomeDetailDao.deleteCustomerHomeDetailByHomeId(entity.getId());
//将数据存入客户首页详情表
for (HomeComponentFormDTO homeComponentForm : formDTO.getComponentList()) {
CustomerHomeDetailEntity customerHomeDetailEntity = new CustomerHomeDetailEntity();
customerHomeDetailEntity.setHomeId(entity.getId());
customerHomeDetailEntity.setComponentId(homeComponentForm.getComponentId());
customerHomeDetailEntity.setRegion(homeComponentForm.getRegion());
customerHomeDetailEntity.setConfiguration(homeComponentForm.getConfiguration());
customerHomeDetailEntity.setDemoData(homeComponentForm.getDemoData());
customerHomeDetailEntity.setDisplayOrder(homeComponentForm.getDisplayOrder());
customerHomeDetailDao.insert(customerHomeDetailEntity);
}
}
}

13
epmet-module/oper-customize/oper-customize-server/src/main/resources/mapper/CustomerHomeDao.xml

@ -16,5 +16,18 @@
<result property="updatedTime" column="UPDATED_TIME"/>
</resultMap>
<!-- 功能组件列表查询 -->
<select id="selectCustomerHomeList" parameterType="com.epmet.dto.form.HomeDesignFormDTO"
resultMap="customerHomeMap">
SELECT
*
FROM
CUSTOMER_HOME ch
WHERE
CUSTOMER_ID = #{customerId}
AND CLIENT_TYPE = #{clientType}
AND DEL_FLAG = '0'
</select>
</mapper>

7
epmet-module/oper-customize/oper-customize-server/src/main/resources/mapper/CustomerHomeDetailDao.xml

@ -18,6 +18,13 @@
<result property="updatedTime" column="UPDATED_TIME"/>
</resultMap>
<delete id="deleteCustomerHomeDetailByHomeId" parameterType="java.lang.String">
DELETE
FROM
CUSTOMER_HOME_DETAIL
WHERE
HOME_ID = #{homeId}
</delete>
<!-- 客户草稿列表查询 -->
<select id="getCustomerHomeDetailComponent" parameterType="com.epmet.dto.form.HomeDesignByCustomerFormDTO"

Loading…
Cancel
Save