Browse Source

serviceCategoryKey

feature/teamB_zz_wgh
yinzuomei 3 years ago
parent
commit
0acb40d5a7
  1. 49
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/IcServiceEditFormDTO.java
  2. 81
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/IcServiceRecDetailRes.java
  3. 15
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/IcServiceScopeDTO.java
  4. 25
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/IcServiceProjectController.java
  5. 5
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/dao/IcServiceScopeDao.java
  6. 2
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/entity/IcServiceRecordEntity.java
  7. 15
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/IcServiceRecordService.java
  8. 66
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/IcServiceRecordServiceImpl.java
  9. 13
      epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/IcServiceScopeDao.xml

49
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/IcServiceEditFormDTO.java

@ -0,0 +1,49 @@
package com.epmet.dto.form;
import com.epmet.commons.tools.validator.group.CustomerClientShowGroup;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.Date;
/**
* 服务项目记录修改
*/
@Data
public class IcServiceEditFormDTO implements Serializable {
public interface AddUserInternalGroup {
}
public interface AddUserShowGroup extends CustomerClientShowGroup {
}
@NotBlank(message = "", groups = AddUserInternalGroup.class)
private String serviceRecordId;
private String principalName;
private String principalContact;
/**
* 服务时间
*/
@NotNull(message = "起始服务时间不能为空", groups = AddUserShowGroup.class)
@DateTimeFormat(pattern = "yyyy-MM-dd")
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
private Date serviceTimeStart;
/**
* 服务截止时间
*/
@NotNull(message = "截止服务时间不能为空", groups = AddUserShowGroup.class)
@DateTimeFormat(pattern = "yyyy-MM-dd")
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
private Date serviceTimeEnd;
/**
* 备注
*/
private String remark;
}

81
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/IcServiceRecDetailRes.java

@ -0,0 +1,81 @@
package com.epmet.dto.result;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
@Data
public class IcServiceRecDetailRes implements Serializable {
/**
* 联系方式
*/
private String principalContact;
/**
* 经办人姓名
*/
private String principalName;
/**
* 备注
*/
private String remark;
/**
* 服务类别ID
*/
private String serviceCategoryKey;
/**
* 服务类别ID
*/
private String serviceCategoryName;
/**
* 服务组织ID
*/
private String serviceOrgId;
/**
* 服务组织名称
*/
private String serviceOrgName;
/**
* 服务项目ID
*/
private String serviceProjectId;
/**
* 服务项目名称
*/
private String serviceProjectName;
/**
* 服务时间
*/
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
private Date serviceTimeStart;
/**
* 服务截止时间
*/
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
private Date serviceTimeEnd;
/**
* in_service服务中completed:已完成
*/
private String serviceStatus;
/**
* 发布范围
*/
private List<IcServiceScopeDTO> serviceScope;
}

15
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/IcServiceScopeDTO.java

@ -0,0 +1,15 @@
package com.epmet.dto.result;
import lombok.Data;
@Data
public class IcServiceScopeDTO {
private String objectId;
private String objectName;
private String objectType;
/**
* 发布范围的组织ID PATH
*/
private String objectIdPath;
}

25
epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/IcServiceProjectController.java

@ -11,8 +11,10 @@ import com.epmet.commons.tools.validator.group.AddGroup;
import com.epmet.commons.tools.validator.group.DefaultGroup; import com.epmet.commons.tools.validator.group.DefaultGroup;
import com.epmet.commons.tools.validator.group.UpdateGroup; import com.epmet.commons.tools.validator.group.UpdateGroup;
import com.epmet.dto.IcServiceProjectDTO; import com.epmet.dto.IcServiceProjectDTO;
import com.epmet.dto.form.IcServiceEditFormDTO;
import com.epmet.dto.form.ServiceProjectFormDTO; import com.epmet.dto.form.ServiceProjectFormDTO;
import com.epmet.dto.form.ServiceProjectListFormDTO; import com.epmet.dto.form.ServiceProjectListFormDTO;
import com.epmet.dto.result.IcServiceRecDetailRes;
import com.epmet.service.IcServiceProjectService; import com.epmet.service.IcServiceProjectService;
import com.epmet.service.IcServiceRecordService; import com.epmet.service.IcServiceRecordService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
@ -142,4 +144,27 @@ public class IcServiceProjectController {
icServiceRecordService.cancelService(serviceId, tokenDto.getUserId()); icServiceRecordService.cancelService(serviceId, tokenDto.getUserId());
return new Result(); return new Result();
} }
/**
* http://yapi.elinkservice.cn/project/245/interface/api/7821
* @param serviceId
* @return 服务项目记录详情
*/
@PostMapping("service/detail/{service-id}")
public Result<IcServiceRecDetailRes> queryServiceDetail(@PathVariable("service-id") String serviceId) {
return new Result<IcServiceRecDetailRes>().ok(icServiceRecordService.queryServiceDetail(serviceId));
}
/**
* 服务项目记录修改
*
* @param formDTO
* @return
*/
@PostMapping("service/update")
public Result updateServiceRecord(@RequestBody IcServiceEditFormDTO formDTO) {
ValidatorUtils.validateEntity(formDTO, IcServiceEditFormDTO.AddUserShowGroup.class, IcServiceEditFormDTO.AddUserInternalGroup.class);
icServiceRecordService.updateServiceRecord(formDTO);
return new Result();
}
} }

5
epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/dao/IcServiceScopeDao.java

@ -1,10 +1,13 @@
package com.epmet.dao; package com.epmet.dao;
import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dto.result.IcServiceScopeDTO;
import com.epmet.entity.IcServiceScopeEntity; import com.epmet.entity.IcServiceScopeEntity;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import java.util.List;
/** /**
* *
* *
@ -15,4 +18,6 @@ import org.apache.ibatis.annotations.Param;
public interface IcServiceScopeDao extends BaseDao<IcServiceScopeEntity> { public interface IcServiceScopeDao extends BaseDao<IcServiceScopeEntity> {
int update(@Param("serviceId") String serviceId, @Param("userId") String userId); int update(@Param("serviceId") String serviceId, @Param("userId") String userId);
List<IcServiceScopeDTO> selectList(String serviceRecordId);
} }

2
epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/entity/IcServiceRecordEntity.java

@ -24,7 +24,7 @@ public class IcServiceRecordEntity extends BaseEpmetEntity {
/** /**
* 服务类别ID * 服务类别ID
*/ */
private String serviceCategoryId; private String serviceCategoryKey;
/** /**
* 服务项目ID * 服务项目ID

15
epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/IcServiceRecordService.java

@ -1,6 +1,8 @@
package com.epmet.service; package com.epmet.service;
import com.epmet.commons.mybatis.service.BaseService; import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.dto.form.IcServiceEditFormDTO;
import com.epmet.dto.result.IcServiceRecDetailRes;
import com.epmet.entity.IcServiceRecordEntity; import com.epmet.entity.IcServiceRecordEntity;
/** /**
@ -17,4 +19,17 @@ public interface IcServiceRecordService extends BaseService<IcServiceRecordEntit
* 服务项目记录取消进行中的项目可以取消删除该记录 * 服务项目记录取消进行中的项目可以取消删除该记录
*/ */
void cancelService(String serviceId,String userId); void cancelService(String serviceId,String userId);
/**
* 服务项目记录详情
* @param serviceId
* @return
*/
IcServiceRecDetailRes queryServiceDetail(String serviceId);
/**
* 服务项目记录修改
* @param formDTO
*/
void updateServiceRecord(IcServiceEditFormDTO formDTO);
} }

66
epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/IcServiceRecordServiceImpl.java

@ -1,16 +1,26 @@
package com.epmet.service.impl; package com.epmet.service.impl;
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
import com.epmet.commons.tools.enums.DictTypeEnum;
import com.epmet.commons.tools.exception.EpmetErrorCode; import com.epmet.commons.tools.exception.EpmetErrorCode;
import com.epmet.commons.tools.exception.EpmetException; import com.epmet.commons.tools.exception.EpmetException;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.Result;
import com.epmet.dao.IcServiceRecordDao; import com.epmet.dao.IcServiceRecordDao;
import com.epmet.dao.IcServiceScopeDao; import com.epmet.dao.IcServiceScopeDao;
import com.epmet.dto.form.IcServiceEditFormDTO;
import com.epmet.dto.result.IcServiceRecDetailRes;
import com.epmet.entity.IcServiceRecordEntity; import com.epmet.entity.IcServiceRecordEntity;
import com.epmet.feign.EpmetAdminOpenFeignClient;
import com.epmet.service.IcServiceRecordService; import com.epmet.service.IcServiceRecordService;
import org.apache.commons.collections4.MapUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import java.util.Map;
/** /**
* *
* *
@ -21,7 +31,8 @@ import org.springframework.transaction.annotation.Transactional;
public class IcServiceRecordServiceImpl extends BaseServiceImpl<IcServiceRecordDao, IcServiceRecordEntity> implements IcServiceRecordService { public class IcServiceRecordServiceImpl extends BaseServiceImpl<IcServiceRecordDao, IcServiceRecordEntity> implements IcServiceRecordService {
@Autowired @Autowired
private IcServiceScopeDao icServiceScopeDao; private IcServiceScopeDao icServiceScopeDao;
@Autowired
private EpmetAdminOpenFeignClient adminOpenFeignClient;
/** /**
* http://yapi.elinkservice.cn/project/245/interface/api/7820 * http://yapi.elinkservice.cn/project/245/interface/api/7820
* *
@ -30,12 +41,6 @@ public class IcServiceRecordServiceImpl extends BaseServiceImpl<IcServiceRecordD
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void cancelService(String serviceId,String userId) { public void cancelService(String serviceId,String userId) {
IcServiceRecordEntity icServiceRecordEntity=queryRecordEntity(serviceId);
baseDao.deleteById(serviceId);
icServiceScopeDao.update(serviceId,userId);
}
private IcServiceRecordEntity queryRecordEntity(String serviceId) {
IcServiceRecordEntity icServiceRecordEntity = baseDao.selectById(serviceId); IcServiceRecordEntity icServiceRecordEntity = baseDao.selectById(serviceId);
if (null == icServiceRecordEntity) { if (null == icServiceRecordEntity) {
throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(),String.format("服务记录不存在,serviceId:%s",serviceId),"服务记录不存在"); throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(),String.format("服务记录不存在,serviceId:%s",serviceId),"服务记录不存在");
@ -43,9 +48,54 @@ public class IcServiceRecordServiceImpl extends BaseServiceImpl<IcServiceRecordD
if (!"in_service".equals(icServiceRecordEntity.getServiceStatus())) { if (!"in_service".equals(icServiceRecordEntity.getServiceStatus())) {
throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), String.format("服务状态:%s", icServiceRecordEntity.getServiceStatus()), "只有服务中的项目可以取消"); throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), String.format("服务状态:%s", icServiceRecordEntity.getServiceStatus()), "只有服务中的项目可以取消");
} }
return icServiceRecordEntity; baseDao.deleteById(serviceId);
icServiceScopeDao.update(serviceId,userId);
} }
/**
* 服务项目记录详情
*
* @param serviceId
* @return
*/
@Override
public IcServiceRecDetailRes queryServiceDetail(String serviceId) {
IcServiceRecordEntity icServiceRecordEntity = baseDao.selectById(serviceId);
IcServiceRecDetailRes res = ConvertUtils.sourceToTarget(icServiceRecordEntity, IcServiceRecDetailRes.class);
if (null != res) {
res.setServiceScope(icServiceScopeDao.selectList(serviceId));
//服务分类名称
Result<Map<String, String>> icServiceTypeMapRes = adminOpenFeignClient.dictMap(DictTypeEnum.IC_SERVICE_TYPE.getCode());
if (!icServiceTypeMapRes.success() || MapUtils.isEmpty(icServiceTypeMapRes.getData())) {
throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "服务分类字典查询异常");
}
res.setServiceCategoryName(icServiceTypeMapRes.getData().get(res.getServiceCategoryKey()));
}
return res;
}
/**
* 服务项目记录修改
*
* @param formDTO
*/
@Transactional(rollbackFor = Exception.class)
@Override
public void updateServiceRecord(IcServiceEditFormDTO formDTO) {
IcServiceRecordEntity icServiceRecordEntity = baseDao.selectById(formDTO.getServiceRecordId());
icServiceRecordEntity.setServiceTimeStart(formDTO.getServiceTimeStart());
icServiceRecordEntity.setServiceTimeEnd(formDTO.getServiceTimeEnd());
if(StringUtils.isNotBlank(formDTO.getPrincipalContact())){
icServiceRecordEntity.setPrincipalContact(formDTO.getPrincipalContact());
}
if(StringUtils.isNotBlank(formDTO.getPrincipalName())){
icServiceRecordEntity.setPrincipalName(formDTO.getPrincipalName());
}
if(StringUtils.isNotBlank(formDTO.getRemark())){
icServiceRecordEntity.setRemark(formDTO.getRemark());
}
baseDao.updateById(icServiceRecordEntity);
}
} }

13
epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/IcServiceScopeDao.xml

@ -26,4 +26,17 @@
update ic_service_scope set del_flag='1',updatedTime=now(),updatedBy=#{userId} update ic_service_scope set del_flag='1',updatedTime=now(),updatedBy=#{userId}
where SERVICE_RECORD_ID=#{serviceId} where SERVICE_RECORD_ID=#{serviceId}
</update> </update>
<select id="selectList" parameterType="java.lang.String" resultType="com.epmet.dto.result.IcServiceScopeDTO">
SELECT
s.OBJECT_ID,
s.OBJECT_TYPE,
s.OBJECT_NAME,
s.OBJECT_ID_PATH
FROM
ic_service_scope s
WHERE
s.DEL_FLAG = '0'
AND s.SERVICE_RECORD_ID = #{serviceRecordId}
</select>
</mapper> </mapper>
Loading…
Cancel
Save