Commit 7a7b97eb authored by tangwei's avatar tangwei

Merge branch 'developer' of http://172.16.10.76/moa/amos-boot-biz into developer

parents fcae2139 da4759bb
package com.yeejoin.amos.boot.module.common.biz.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.biz.common.utils.DateUtils;
import com.yeejoin.amos.boot.module.common.api.dto.DutyCarDto;
import com.yeejoin.amos.boot.module.common.api.service.IDutyCarService;
import java.text.ParseException;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletResponse;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.restful.doc.TycloudOperation;
......@@ -18,10 +23,14 @@ import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import javax.servlet.http.HttpServletResponse;
import java.text.ParseException;
import java.util.List;
import java.util.Map;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.module.common.api.dto.DutyCarDto;
import com.yeejoin.amos.boot.module.common.api.service.IDutyCarService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
/**
......@@ -144,10 +153,6 @@ public class DutyCarController extends BaseController {
|| ValidationUtil.isEmpty(endTime)){
throw new BadRequest("参数校验失败.");
}
List<Map<String, Object>> list = iDutyCarService.list(null, startTime, DateUtils.getDateNowShortStr());
if(list!=null && list.size()>0 ) {
return ResponseHelper.buildResponse(0);
}
// BUG 2807 删除逻辑缺陷,现在前端后端传入 删除月份 2021-09-10 by kongfm
return ResponseHelper.buildResponse(iDutyCarService.deleteDutyData(instanceId, startTime, endTime));
}
......
......@@ -152,10 +152,6 @@ public class DutyFireFightingController extends BaseController{
|| ValidationUtil.isEmpty(endTime)){
throw new BadRequest("参数校验失败.");
}
List<Map<String, Object>> list = iDutyFireFightingService.list(null, startTime, DateUtils.getDateNowShortStr());
if(list!=null && list.size()>0 ) {
return ResponseHelper.buildResponse(0);
}
return ResponseHelper.buildResponse(iDutyFireFightingService.deleteDutyData(instanceId, startTime, endTime));
}
......
......@@ -145,10 +145,6 @@ public class DutyFirstAidController extends BaseController{
|| ValidationUtil.isEmpty(endTime)){
throw new BadRequest("参数校验失败.");
}
List<Map<String, Object>> list = iDutyFirstAidService.list(null, startTime, DateUtils.getDateNowShortStr());
if(list!=null && list.size()>0 ) {
return ResponseHelper.buildResponse(0);
}
return ResponseHelper.buildResponse(iDutyFirstAidService.deleteDutyData(instanceId, startTime, endTime));
}
......
......@@ -142,11 +142,6 @@ public class DutyPersonController extends BaseController {
|| ValidationUtil.isEmpty(endTime)){
throw new BadRequest("参数校验失败.");
}
List<Map<String, Object>> list = iDutyPersonService.list(null, startTime, DateUtils.getDateNowShortStr());
if(list!=null && list.size()>0 ) {
// throw new BadRequest("班次已有值班数据,无法删除");
return ResponseHelper.buildResponse(0);
}
// BUG 2807 删除逻辑缺陷,现在前端后端传入 删除月份 2021-09-10 by kongfm
return ResponseHelper.buildResponse(iDutyPersonService.deleteDutyData(instanceId, startTime, endTime));
}
......
......@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.module.common.api.dto.DutyShiftDto;
import com.yeejoin.amos.boot.module.common.api.entity.DutyShift;
import com.yeejoin.amos.boot.module.common.biz.service.impl.DutyPersonShiftServiceImpl;
import com.yeejoin.amos.boot.module.common.biz.service.impl.DutyShiftServiceImpl;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
......@@ -31,7 +32,9 @@ public class DutyShiftController extends BaseController {
@Autowired
DutyShiftServiceImpl dutyShiftServiceImpl;
@Autowired
DutyPersonShiftServiceImpl dutyPersonShiftServiceImpl;
/**
* 新增值班班次
*
......@@ -73,6 +76,10 @@ public class DutyShiftController extends BaseController {
@DeleteMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "DELETE", value = "根据sequenceNbr删除值班班次", notes = "根据sequenceNbr删除值班班次")
public ResponseModel<Boolean> deleteBySequenceNbr(@PathVariable(value = "sequenceNbr") Long sequenceNbr) {
if(dutyPersonShiftServiceImpl.checkCurrentDutyIsUser(sequenceNbr)) {
return ResponseHelper.buildResponse(false);
};
DutyShift dutyShift = dutyShiftServiceImpl.getById(sequenceNbr);
if (null != dutyShift) {
dutyShift.setIsDelete(true);
......
package com.yeejoin.amos.boot.module.common.biz.service.impl;
import java.util.List;
import org.springframework.stereotype.Service;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.module.common.api.dto.DutyPersonShiftDto;
import com.yeejoin.amos.boot.module.common.api.entity.DutyPersonShift;
import com.yeejoin.amos.boot.module.common.api.mapper.DutyPersonShiftMapper;
import com.yeejoin.amos.boot.module.common.api.service.IDutyPersonShiftService;
import org.springframework.stereotype.Service;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import java.util.List;
/**
* 值班人员日期关联关系表服务实现类
......@@ -33,4 +35,19 @@ public class DutyPersonShiftServiceImpl extends BaseService<DutyPersonShiftDto,
public List<DutyPersonShiftDto> queryForDutyPersonShiftList() {
return this.queryForList("", false);
}
/**
* 查询指定的班次是否被关联使用
* @return
*/
public boolean checkCurrentDutyIsUser(Long shiftId) {
LambdaQueryWrapper<DutyPersonShift> wrapper= new LambdaQueryWrapper<DutyPersonShift>();
wrapper.eq(DutyPersonShift::getIsDelete, false);
wrapper.eq(DutyPersonShift::getShiftId, shiftId);
List<DutyPersonShift> list = this.baseMapper.selectList(wrapper);
if(list!=null && list.size()>0) {
return true;
}
return false;
}
}
package com.yeejoin.amos.boot.module.common.biz.service.impl;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import java.util.stream.Collectors;
import javax.servlet.http.HttpServletRequest;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.foundation.utils.Bean;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.baomidou.mybatisplus.core.toolkit.Sequence;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.google.common.collect.Lists;
......@@ -11,20 +26,6 @@ import com.yeejoin.amos.boot.module.common.api.entity.DynamicFormColumn;
import com.yeejoin.amos.boot.module.common.api.entity.DynamicFormInstance;
import com.yeejoin.amos.boot.module.common.api.mapper.DynamicFormInstanceMapper;
import com.yeejoin.amos.boot.module.common.api.service.IDynamicFormInstanceService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.foundation.utils.Bean;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import javax.servlet.http.HttpServletRequest;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import java.util.stream.Collectors;
/**
* 动态表单实例表服务实现类
......
......@@ -1737,7 +1737,7 @@ public class OrgUsrServiceImpl extends BaseService<OrgUsrDto, OrgUsr, OrgUsrMapp
throw new Exception("账号不存在");
}
return amosUserList.stream().map(AgencyUserModel::getUserName).collect(Collectors.toList());
return amosUserList.stream().map(AgencyUserModel::getUserId).collect(Collectors.toList());
}
@Override
......
......@@ -6,6 +6,7 @@ import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.context.request.RequestAttributes;
import org.springframework.web.context.request.RequestContextHolder;
import org.springframework.web.context.request.ServletRequestAttributes;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import javax.servlet.http.HttpServletRequest;
......@@ -20,6 +21,9 @@ public class FeignBasicAuthRequestInterceptor implements RequestInterceptor {
public void apply(RequestTemplate template) {
RequestAttributes requestAttributes = RequestContextHolder.getRequestAttributes();
if (requestAttributes == null) {
template.header("token", RequestContext.getToken());
template.header("product", RequestContext.getProduct());
template.header("appKey", RequestContext.getAppKey());
return;
}
ServletRequestAttributes attributes = (ServletRequestAttributes) requestAttributes;
......
......@@ -2,9 +2,7 @@ package com.yeejoin.amos.supervision.business.feign;
import com.yeejoin.amos.component.feign.model.FeignClientResult;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.*;
import java.util.List;
......@@ -28,4 +26,13 @@ public interface JCSFeignClient {
*/
@GetMapping(value = "jcs/org-usr/unSync/orgCompany")
FeignClientResult getUnSyncOrgCompanyList(@RequestParam List<Long> companyIdList);
/**
* 根据机场人员id批量获取amos平台人员id
*
* @param orgUserIds 机场单位人员id
* @return
*/
@RequestMapping(value = "jcs/org-usr/amos/orgUserIds", method = RequestMethod.GET)
FeignClientResult getAmosIdListByUserIds(@RequestParam String orgUserIds);
}
......@@ -34,6 +34,7 @@ import com.yeejoin.amos.supervision.business.vo.PlanTaskVo;
import com.yeejoin.amos.supervision.common.enums.PlanStatusEnum;
import com.yeejoin.amos.supervision.common.enums.PlanTaskDetailIsFinishEnum;
import com.yeejoin.amos.supervision.common.enums.PlanTaskFinishStatusEnum;
import com.yeejoin.amos.supervision.core.async.AsyncTask;
import com.yeejoin.amos.supervision.core.common.request.CommonPageable;
import com.yeejoin.amos.supervision.core.common.response.AppCheckInputRespone;
import com.yeejoin.amos.supervision.core.common.response.AppPointCheckRespone;
......@@ -55,6 +56,7 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.ObjectUtils;
import org.springframework.util.StringUtils;
import org.typroject.tyboot.core.foundation.context.RequestContext;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import java.text.ParseException;
......@@ -103,6 +105,9 @@ public class PlanTaskServiceImpl implements IPlanTaskService {
@Autowired
private RoutePointItemMapper routePointItemMapper;
@Autowired
private AsyncTask asyncTask;
@Override
public Page<HashMap<String, Object>> getPlanTaskInfo(PlanTaskPageParam params) {
long total = planTaskMapper.countPlanTask(params);
......@@ -388,7 +393,6 @@ public class PlanTaskServiceImpl implements IPlanTaskService {
//2.5.插入planTask及planTaskDetail
insertPlanTaskAndDet(list, plan, XJConstant.SCHED_FLAG, now);
}
}
......@@ -527,6 +531,8 @@ public class PlanTaskServiceImpl implements IPlanTaskService {
// 2.保存执行数据明细表
planTaskDetail.saveAndFlush(planTaskDetailInstance);
// 推送消息
asyncTask.sendPlanMsg(RequestContext.cloneRequestContext(), plan, planId);
}
// 定时任务监控
jobService.planTaskAddJob(planTask);
......
......@@ -7,19 +7,21 @@ import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import com.google.common.collect.Sets;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import com.yeejoin.amos.supervision.business.dao.repository.IMsgDao;
import com.yeejoin.amos.supervision.business.util.Toke;
import com.yeejoin.amos.supervision.email.IEmailService;
import com.yeejoin.amos.supervision.feign.RemoteSecurityService;
import com.yeejoin.amos.supervision.jpush.AppMessagePushService;
import com.yeejoin.amos.feign.systemctl.model.MessageModel;
import com.yeejoin.amos.supervision.business.dao.mapper.MsgSubscribeMapper;
import com.yeejoin.amos.supervision.business.dao.repository.IMsgDao;
import com.yeejoin.amos.supervision.business.entity.mybatis.MsgSubscribeBo;
import com.yeejoin.amos.supervision.business.param.PushMsgParam;
import com.yeejoin.amos.supervision.business.service.intfc.IMessageService;
import com.yeejoin.amos.supervision.business.service.intfc.ISafety3DDataSendService;
import com.yeejoin.amos.supervision.business.util.Toke;
import com.yeejoin.amos.supervision.common.enums.JPushTypeEnum;
import com.yeejoin.amos.supervision.common.enums.MsgSubscribeEnum;
import com.yeejoin.amos.supervision.dao.entity.Msg;
import com.yeejoin.amos.supervision.dao.entity.Plan;
import com.yeejoin.amos.supervision.email.IEmailService;
import com.yeejoin.amos.supervision.feign.RemoteSecurityService;
import com.yeejoin.amos.supervision.jpush.AppMessagePushService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -28,6 +30,8 @@ import org.springframework.scheduling.annotation.AsyncResult;
import org.springframework.stereotype.Component;
import org.springframework.util.CollectionUtils;
import org.springframework.util.StringUtils;
import org.typroject.tyboot.core.foundation.context.RequestContextModel;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
import java.util.*;
import java.util.concurrent.Future;
......@@ -299,6 +303,34 @@ public class AsyncTask {
}
}
/**
* 计划任务消息
* @param plan
*/
@Async
public void sendPlanMsg(RequestContextModel requestContextModel, Plan plan, long planId){
MessageModel model = new MessageModel();
model.setTitle(plan.getName());
String body = String.format("任务批号:%s;类型:%s;执行人:%s",
planId, plan.getCheckTypeName(), plan.getMakerUserName());
model.setBody(body);
String leadPeopleIds = plan.getLeadPeopleIds();
if (!ValidationUtil.isEmpty(plan.getUserId()) && !leadPeopleIds.contains(plan.getUserId())){
leadPeopleIds += "," + plan.getUserId();
}
try {
List<String> recivers = remoteSecurityService.getAmosIdListByUserIds(requestContextModel, leadPeopleIds);
model.setIsSendApp(true);
model.setIsSendWeb(true);
model.setMsgType("supervision");
model.setRelationId(String.valueOf(plan.getId()));
model.setRecivers(recivers);
remoteSecurityService.addMessage(requestContextModel, model);
} catch (Exception e) {
e.printStackTrace();
}
}
private Set<String> userIdFilter(Set<String> sendUserIds, String msgType) {
Set<String> afterFilterUserIds = Sets.newHashSet();
if (CollectionUtils.isEmpty(sendUserIds)) {
......
......@@ -11,6 +11,8 @@ import java.util.Set;
import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors;
import com.yeejoin.amos.feign.systemctl.model.MessageModel;
import com.yeejoin.amos.supervision.business.feign.JCSFeignClient;
import com.yeejoin.amos.supervision.common.remote.IAMOSSecurityServer;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
......@@ -42,6 +44,7 @@ import com.yeejoin.amos.feign.systemctl.Systemctl;
import com.yeejoin.amos.feign.systemctl.model.DictionarieValueModel;
import com.yeejoin.amos.supervision.business.util.CommonResponse;
import com.yeejoin.amos.supervision.business.util.Toke;
import org.typroject.tyboot.core.foundation.context.RequestContextModel;
@Service("remoteSecurityService")
public class RemoteSecurityService {
......@@ -64,6 +67,8 @@ public class RemoteSecurityService {
@Autowired
private IAMOSSecurityServer iAmosSecurityServer;
@Autowired
private JCSFeignClient jcsFeignClient;
//根据公司名称获取公司人
public List<CompanyModel> listCompanyTree(String toke, String product, String appKey, String companyName) {
......@@ -747,6 +752,35 @@ public class RemoteSecurityService {
return handleArray(feignClientResult, DepartmentModel.class);
}
/**
* 平台消息-添加
*/
public void addMessage(RequestContextModel requestContextModel, MessageModel model){
RequestContext.setToken(requestContextModel.getToken());
RequestContext.setProduct(requestContextModel.getProduct());
RequestContext.setAppKey(requestContextModel.getAppKey());
try {
FeignClientResult<MessageModel> messageModelFeignClientResult = Systemctl.messageClient.create(model);
} catch (InnerInvokException e) {
e.printStackTrace();
}
}
/**
* 机场用户id批量获取平台用户id
*/
public List<String> getAmosIdListByUserIds(RequestContextModel requestContextModel, String orgUserIds){
RequestContext.setToken(requestContextModel.getToken());
RequestContext.setProduct(requestContextModel.getProduct());
RequestContext.setAppKey(requestContextModel.getAppKey());
List<String> userNames = new ArrayList<>();
try {
userNames = (List<String>)jcsFeignClient.getAmosIdListByUserIds(orgUserIds).getResult();
} catch (InnerInvokException e) {
e.printStackTrace();
}
return userNames;
}
private <T> List<T> handleArray(FeignClientResult feignClientResult, Class<T> t) {
List<T> list = new ArrayList<>();
......
......@@ -124,7 +124,8 @@
<if test="routeId!=null"> and a.route_Id = #{routeId}</if>
<if test="remark!=null"> and a.remark1 like concat(concat("%",#{remark}),"%")</if>
<if test="userId!=null"> and FIND_IN_SET(#{userId},a.user_id)</if>
<if test="orgCode!=null"> and (a.org_Code like concat (#{orgCode},"-%")or a.org_Code= #{orgCode})</if>
<if test="orgCode!=null"> and (a.org_Code like concat (#{orgCode},"*%") or a.org_Code like concat
(#{orgCode},"-%") or a.org_Code= #{orgCode})</if>
<if test="ownerId!=null"> and b.owner_id = #{ownerId}</if>
<if test="planStatus!=null and planStatus != '' "> and a.`status` = #{planStatus}</if>
</select>
......@@ -173,7 +174,8 @@
<if test="routeId!=null"> and a.route_Id = #{routeId}</if>
<if test="remark!=null"> and a.remark1 like concat(concat("%",#{remark}),"%")</if>
<if test="userId!=null"> and FIND_IN_SET(#{userId},a.user_id)</if>
<if test="orgCode!=null"> and (a.org_Code like concat (#{orgCode},"-%")or a.org_Code= #{orgCode})</if>
<if test="orgCode!=null"> and (a.org_Code like concat (#{orgCode},"*%") or a.org_Code like concat
(#{orgCode},"-%")or a.org_Code= #{orgCode})</if>
<if test="ownerId!=null"> and b.owner_id = #{ownerId}</if>
<if test="planStatus!=null and planStatus != '' "> and a.`status` = #{planStatus}</if>
order by a.id desc
......
......@@ -40,7 +40,7 @@
<logger name="org.springframework" level="DEBUG"/>
<!-- 日志输出级别 -->
<root level="DEBUG">
<root level="INFO">
<!-- --><appender-ref ref="FILE" />
<appender-ref ref="STDOUT" />
</root>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment