|
@@ -0,0 +1,199 @@
|
|
|
+package com.diagbot.facade;
|
|
|
+
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
|
|
+import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
+import com.diagbot.client.UserServiceClient;
|
|
|
+import com.diagbot.dto.DisclaimerInfoDTO;
|
|
|
+import com.diagbot.dto.RespDTO;
|
|
|
+import com.diagbot.entity.DisclaimerInfo;
|
|
|
+import com.diagbot.enums.IsDeleteEnum;
|
|
|
+import com.diagbot.enums.StatusEnum;
|
|
|
+import com.diagbot.exception.CommonErrorCode;
|
|
|
+import com.diagbot.exception.CommonException;
|
|
|
+import com.diagbot.service.impl.DisclaimerInfoServiceImpl;
|
|
|
+import com.diagbot.util.BeanUtil;
|
|
|
+import com.diagbot.util.DateUtil;
|
|
|
+import com.diagbot.util.ListUtil;
|
|
|
+import com.diagbot.util.UserUtils;
|
|
|
+import com.diagbot.vo.DisclaimerInfoIdVO;
|
|
|
+import com.diagbot.vo.DisclaimerInfoTitleVO;
|
|
|
+import com.diagbot.vo.DisclaimerInfoVO;
|
|
|
+import com.diagbot.vo.DisclaimerInformationAllVO;
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.stereotype.Component;
|
|
|
+
|
|
|
+import java.util.ArrayList;
|
|
|
+import java.util.HashMap;
|
|
|
+import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
+import java.util.stream.Collectors;
|
|
|
+
|
|
|
+/**
|
|
|
+ * @author wangfeng
|
|
|
+ * @Description:
|
|
|
+ * @date 2020-08-05 10:54
|
|
|
+ */
|
|
|
+@Component
|
|
|
+public class DisclaimerInfoFacade extends DisclaimerInfoServiceImpl {
|
|
|
+ @Autowired
|
|
|
+ UserServiceClient userServiceClient;
|
|
|
+
|
|
|
+ public IPage<DisclaimerInfoDTO> getDisclaimerInformation(DisclaimerInfoTitleVO disclaimerInfoTitleVO) {
|
|
|
+ IPage<DisclaimerInfoDTO> querDisclaimerInformation = getDisclaimerInformationAll(disclaimerInfoTitleVO);
|
|
|
+ List<DisclaimerInfoDTO> data = querDisclaimerInformation.getRecords();
|
|
|
+
|
|
|
+ List<String> modifierid = new ArrayList<>();
|
|
|
+ modifierid = data.stream().map(ac -> ac.getModifier()).collect(Collectors.toList());
|
|
|
+
|
|
|
+ Map<String, String> userNames = new HashMap<>();
|
|
|
+ if (ListUtil.isNotEmpty(modifierid)) {
|
|
|
+ RespDTO<Map<String, String>> userNamesDTO = userServiceClient.getUserInfoByIds(modifierid);
|
|
|
+ if (userNamesDTO == null || !CommonErrorCode.OK.getCode().equals(userNamesDTO.code)) {
|
|
|
+ throw new CommonException(CommonErrorCode.SERVER_IS_ERROR,
|
|
|
+ "获取所有用户信息失败");
|
|
|
+ }
|
|
|
+ userNames = userNamesDTO.data;
|
|
|
+ }
|
|
|
+ List<DisclaimerInfoDTO> dataNew = new ArrayList<DisclaimerInfoDTO>();
|
|
|
+ for (DisclaimerInfoDTO disclaimerInformationDTO : data) {
|
|
|
+ DisclaimerInfoDTO dis = new DisclaimerInfoDTO();
|
|
|
+ BeanUtil.copyProperties(disclaimerInformationDTO, dis);
|
|
|
+ dis.setModifier(userNames.get(disclaimerInformationDTO.getModifier()));
|
|
|
+ dataNew.add(dis);
|
|
|
+ }
|
|
|
+ return querDisclaimerInformation.setRecords(dataNew);
|
|
|
+ }
|
|
|
+
|
|
|
+ public boolean addDisclaimerInformation(DisclaimerInfoVO disclaimerInfoVO) {
|
|
|
+ //每一处免责声明(免责声明按钮、推送免责声明、诊断免责声明)同时最多可启用1条内容,显示(按操作时间)最新的条记录;新添加免责声明,则自动展示新添加的内容;自动开启,最近一条数据自动停用;
|
|
|
+ UpdateWrapper<DisclaimerInfo> DisclaimerInformationStatus = new UpdateWrapper<>();
|
|
|
+ DisclaimerInformationStatus.eq("disclaimer_code", disclaimerInfoVO.getDisclaimerCode()).eq("is_deleted", IsDeleteEnum.N.getKey())
|
|
|
+ .set("modifier", UserUtils.getCurrentPrincipleID())
|
|
|
+ .set("gmt_modified", DateUtil.now()).set("status", StatusEnum.Disable.getKey());
|
|
|
+
|
|
|
+ update(new DisclaimerInfo(), DisclaimerInformationStatus);
|
|
|
+
|
|
|
+ DisclaimerInfo disclaimerInformation = new DisclaimerInfo();
|
|
|
+ disclaimerInformation.setCreator(UserUtils.getCurrentPrincipleID());
|
|
|
+ disclaimerInformation.setModifier(UserUtils.getCurrentPrincipleID());
|
|
|
+ disclaimerInformation.setDescription(disclaimerInfoVO.getDescription());
|
|
|
+ disclaimerInformation.setDisclaimerCode(disclaimerInfoVO.getDisclaimerCode());
|
|
|
+ disclaimerInformation.setGmtCreate(DateUtil.now());
|
|
|
+ disclaimerInformation.setGmtModified(DateUtil.now());
|
|
|
+ disclaimerInformation.setOrderNo(disclaimerInfoVO.getOrderNo());
|
|
|
+ disclaimerInformation.setRemark(disclaimerInfoVO.getRemark());
|
|
|
+ disclaimerInformation.setStatus(String.valueOf(StatusEnum.Enable.getKey()));
|
|
|
+ disclaimerInformation.setTitle(disclaimerInfoVO.getTitle());
|
|
|
+ //disclaimerInformation.setVersionId();
|
|
|
+
|
|
|
+ boolean res = save(disclaimerInformation);
|
|
|
+
|
|
|
+ return res;
|
|
|
+ }
|
|
|
+
|
|
|
+ public boolean updateDisclaimerInformation(DisclaimerInformationAllVO disclaimerInformationAllVO) {
|
|
|
+ // 1.先判断数据是否存在有效
|
|
|
+ checkExist(disclaimerInformationAllVO.getId());
|
|
|
+ // 2.修改版本详情信息
|
|
|
+ DisclaimerInfo disclaimerInformation = new DisclaimerInfo();
|
|
|
+
|
|
|
+ disclaimerInformation.setGmtModified(DateUtil.now());// 修改时间
|
|
|
+ disclaimerInformation.setModifier(UserUtils.getCurrentPrincipleID());
|
|
|
+ disclaimerInformation.setDescription(disclaimerInformationAllVO.getDescription());
|
|
|
+ disclaimerInformation.setDisclaimerCode(disclaimerInformationAllVO.getDisclaimerCode());
|
|
|
+ disclaimerInformation.setGmtCreate(DateUtil.now());
|
|
|
+ disclaimerInformation.setId(disclaimerInformationAllVO.getId());
|
|
|
+ //disclaimerInformation.setOrderNo(disclaimerInformationAllVO.getOrderNo());
|
|
|
+ //disclaimerInformation.setRemark(disclaimerInformationAllVO.getRemark());
|
|
|
+ //disclaimerInformation.setStatus(String.valueOf(StatusEnum.Enable.getKey()));
|
|
|
+ disclaimerInformation.setTitle(disclaimerInformationAllVO.getTitle());
|
|
|
+
|
|
|
+ boolean res = updateById(disclaimerInformation);
|
|
|
+
|
|
|
+ if (!res) {
|
|
|
+ throw new CommonException(CommonErrorCode.UPDATE_INFO_FAIL);
|
|
|
+ }
|
|
|
+
|
|
|
+ return res;
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 删除
|
|
|
+ *
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public Boolean cancelDisclaimerInformation(DisclaimerInfoIdVO disclaimerInformationIdVO) {
|
|
|
+ // 1.先判断数据是否存在有效
|
|
|
+ checkExist(disclaimerInformationIdVO.getId());
|
|
|
+ UpdateWrapper<DisclaimerInfo> disclaimerInformationNew = new UpdateWrapper<>();
|
|
|
+ disclaimerInformationNew
|
|
|
+ .eq("id", disclaimerInformationIdVO.getId())
|
|
|
+ .eq("is_deleted", IsDeleteEnum.N.getKey())
|
|
|
+ .set("is_deleted", IsDeleteEnum.Y.getKey()).set("modifier", UserUtils.getCurrentPrincipleID())
|
|
|
+ .set("gmt_modified", DateUtil.now());
|
|
|
+ return update(new DisclaimerInfo(), disclaimerInformationNew);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 启用
|
|
|
+ *
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public boolean startDisclaimerInformations(DisclaimerInfoIdVO disclaimerInfoIdVO) {
|
|
|
+ // 1.先判断数据是否存在有效
|
|
|
+ checkExist(disclaimerInfoIdVO.getId());
|
|
|
+ //每一处免责声明(免责声明按钮、推送免责声明、诊断免责声明)同时最多可启用1条内容,显示(按操作时间)最新的条记录;新添加免责声明,则自动展示新添加的内容;自动开启,最近一条数据自动停用;
|
|
|
+ // QueryWrapper<DisclaimerInformation> data = new QueryWrapper<DisclaimerInformation>();
|
|
|
+ // data.in("id", disclaimerInformationIdVO.getId()).eq("is_deleted", IsDeleteEnum.N.getKey());
|
|
|
+ DisclaimerInfo disclaimerInformation = getById(disclaimerInfoIdVO.getId());
|
|
|
+
|
|
|
+ UpdateWrapper<DisclaimerInfo> DisclaimerInformationStatus = new UpdateWrapper<>();
|
|
|
+ DisclaimerInformationStatus.eq("disclaimer_code", disclaimerInformation.getDisclaimerCode()).eq("is_deleted", IsDeleteEnum.N.getKey())
|
|
|
+ .set("modifier", UserUtils.getCurrentPrincipleID())
|
|
|
+ .set("gmt_modified", DateUtil.now()).set("status", StatusEnum.Disable.getKey());
|
|
|
+
|
|
|
+ update(new DisclaimerInfo(), DisclaimerInformationStatus);
|
|
|
+
|
|
|
+ UpdateWrapper<DisclaimerInfo> disclaimerInformationNew = new UpdateWrapper<>();
|
|
|
+ disclaimerInformationNew
|
|
|
+ .eq("id", disclaimerInfoIdVO.getId())
|
|
|
+ .eq("is_deleted", IsDeleteEnum.N.getKey())
|
|
|
+ .eq("status", StatusEnum.Disable.getKey()).set("modifier", UserUtils.getCurrentPrincipleID())
|
|
|
+ .set("gmt_modified", DateUtil.now()).set("status", StatusEnum.Enable.getKey());
|
|
|
+ return update(new DisclaimerInfo(), disclaimerInformationNew);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 停用
|
|
|
+ *
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ public boolean endDisclaimerInformations(DisclaimerInfoIdVO disclaimerInfoIdVO) {
|
|
|
+ // 1.先判断数据是否存在有效
|
|
|
+ checkExist(disclaimerInfoIdVO.getId());
|
|
|
+ UpdateWrapper<DisclaimerInfo> disclaimerInformationNew = new UpdateWrapper<>();
|
|
|
+ disclaimerInformationNew
|
|
|
+ .eq("id", disclaimerInfoIdVO.getId())
|
|
|
+ .eq("is_deleted", IsDeleteEnum.N.getKey())
|
|
|
+ .eq("status", StatusEnum.Enable.getKey()).set("modifier", UserUtils.getCurrentPrincipleID())
|
|
|
+ .set("gmt_modified", DateUtil.now()).set("status", StatusEnum.Disable.getKey());
|
|
|
+ return update(new DisclaimerInfo(), disclaimerInformationNew);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 判断数据是否存在有效
|
|
|
+ *
|
|
|
+ * @param id
|
|
|
+ */
|
|
|
+ private void checkExist(Long id) {
|
|
|
+ QueryWrapper<DisclaimerInfo> disclaimerInformationFand = new QueryWrapper<>();
|
|
|
+ disclaimerInformationFand.eq("is_deleted", IsDeleteEnum.N.getKey()).eq("id", id);
|
|
|
+ int sum = count(disclaimerInformationFand);
|
|
|
+ if (sum == 0) {
|
|
|
+ throw new CommonException(CommonErrorCode.NOT_EXISTS, "该数据不存在");
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+
|