From f955bc3197649d7c0a6cb74b03e7787aa715fbcb Mon Sep 17 00:00:00 2001 From: changpengfei Date: Fri, 22 Oct 2021 13:40:35 +0800 Subject: [PATCH] =?UTF-8?q?=E7=A7=A6=E7=9A=87=E5=B2=9B=E4=B8=80=E8=B4=AF?= =?UTF-8?q?=E5=88=B6--=E5=8C=BB=E7=94=9F=E5=9B=A2=E9=98=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../platform/biz/service/AntExRecordService.java | 6 + .../java/com/lyms/platform/pojo/AntExChuModel.java | 28 ++++ .../com/lyms/platform/pojo/AntExRecordModel.java | 28 ++++ .../platform/pojo/AntenatalExaminationModel.java | 28 ++++ .../java/com/lyms/platform/pojo/TeamModel.java | 32 ++++ .../operate/web/controller/TeamController.java | 140 ++++++++++++++++ .../operate/web/facade/AntExRecordFacade.java | 16 ++ .../platform/operate/web/facade/ViewFacade.java | 37 ++--- .../operate/web/request/AntExAddRequest.java | 32 ++++ .../operate/web/request/AntExcAddRequest.java | 36 +++++ .../operate/web/request/TeamModelRequest.java | 18 +++ .../operate/web/result/AntExManagerResult.java | 37 +++++ .../platform/operate/web/service/TeamService.java | 31 ++++ .../operate/web/service/impl/TeamServiceImpl.java | 180 +++++++++++++++++++++ .../operate/web/worker/AntExRecordWorker.java | 3 + 15 files changed, 630 insertions(+), 22 deletions(-) create mode 100644 platform-dal/src/main/java/com/lyms/platform/pojo/TeamModel.java create mode 100644 platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TeamController.java create mode 100644 platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/TeamModelRequest.java create mode 100644 platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/TeamService.java create mode 100644 platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/TeamServiceImpl.java diff --git a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/AntExRecordService.java b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/AntExRecordService.java index b502f5e..51ef737 100644 --- a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/AntExRecordService.java +++ b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/AntExRecordService.java @@ -260,6 +260,9 @@ public class AntExRecordService { logger.info("antex find patient by id is null. parentId:" + antEx.getParentId()); return null; } + antExRecordModel.setTeamIdOld(antEx.getTeamIdOld());//产团 + antExRecordModel.setTeamIdNew(antEx.getTeamIdNew()); + antExRecordModel.setReason(antEx.getReason()); return antExRecordModel; } @@ -342,6 +345,9 @@ public class AntExRecordService { logger.info("antexc find patient by id is null. parentId:" + antExChuModel.getParentId()); return null; } + antExRecordModel.setTeamIdOld(antExChuModel.getTeamIdOld());//产团 + antExRecordModel.setTeamIdNew(antExChuModel.getTeamIdNew()); + antExRecordModel.setReason(antExChuModel.getReason()); return antExRecordModel; } diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/AntExChuModel.java b/platform-dal/src/main/java/com/lyms/platform/pojo/AntExChuModel.java index d009547..4036338 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/AntExChuModel.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/AntExChuModel.java @@ -485,6 +485,34 @@ public class AntExChuModel extends BaseModel { //孕妇NT private String wcNt; + private String teamIdOld;//旧医生团队 + private String teamIdNew;//新医生团队 + private String reason;//换团队的原因 + + public String getTeamIdOld() { + return teamIdOld; + } + + public void setTeamIdOld(String teamIdOld) { + this.teamIdOld = teamIdOld; + } + + public String getTeamIdNew() { + return teamIdNew; + } + + public void setTeamIdNew(String teamIdNew) { + this.teamIdNew = teamIdNew; + } + + public String getReason() { + return reason; + } + + public void setReason(String reason) { + this.reason = reason; + } + public String getWcNt() { return wcNt; } diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/AntExRecordModel.java b/platform-dal/src/main/java/com/lyms/platform/pojo/AntExRecordModel.java index 0947d72..90de943 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/AntExRecordModel.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/AntExRecordModel.java @@ -132,6 +132,34 @@ public class AntExRecordModel extends BaseModel { */ private String sieveType; + private String teamIdOld;//旧医生团队 + private String teamIdNew;//新医生团队 + private String reason;//换团队的原因 + + public String getTeamIdOld() { + return teamIdOld; + } + + public void setTeamIdOld(String teamIdOld) { + this.teamIdOld = teamIdOld; + } + + public String getTeamIdNew() { + return teamIdNew; + } + + public void setTeamIdNew(String teamIdNew) { + this.teamIdNew = teamIdNew; + } + + public String getReason() { + return reason; + } + + public void setReason(String reason) { + this.reason = reason; + } + public String getSieveType() { return sieveType; } diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/AntenatalExaminationModel.java b/platform-dal/src/main/java/com/lyms/platform/pojo/AntenatalExaminationModel.java index c7f669f..77d3095 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/AntenatalExaminationModel.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/AntenatalExaminationModel.java @@ -389,6 +389,34 @@ public class AntenatalExaminationModel extends BaseModel { */ private String sieveType; + private String teamIdOld;//旧医生团队 + private String teamIdNew;//新医生团队 + private String reason;//换团队的原因 + + public String getTeamIdOld() { + return teamIdOld; + } + + public void setTeamIdOld(String teamIdOld) { + this.teamIdOld = teamIdOld; + } + + public String getTeamIdNew() { + return teamIdNew; + } + + public void setTeamIdNew(String teamIdNew) { + this.teamIdNew = teamIdNew; + } + + public String getReason() { + return reason; + } + + public void setReason(String reason) { + this.reason = reason; + } + public String getSieveType() { return sieveType; } diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/TeamModel.java b/platform-dal/src/main/java/com/lyms/platform/pojo/TeamModel.java new file mode 100644 index 0000000..443a0ea --- /dev/null +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/TeamModel.java @@ -0,0 +1,32 @@ +package com.lyms.platform.pojo; + +import com.lyms.platform.beans.SerialIdEnum; +import com.lyms.platform.common.result.BaseModel; +import lombok.Data; +import org.springframework.data.annotation.Id; +import org.springframework.data.mongodb.core.mapping.Document; + +import java.util.Date; +import java.util.List; + +/** + * 医院团队 + */ +@Document(collection = "lyms_team") +@Data +public class TeamModel extends BaseModel { + + @Id + private String id; + + private String teamName;//团队名称 + //团队包含的医生 + private List doctorIdArr; + private String hospitalId; + + private Date created; + private Date modified; + + + +} diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TeamController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TeamController.java new file mode 100644 index 0000000..6804e2e --- /dev/null +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TeamController.java @@ -0,0 +1,140 @@ +package com.lyms.platform.operate.web.controller; + + +import com.lyms.platform.common.annotation.TokenRequired; +import com.lyms.platform.common.base.BaseController; +import com.lyms.platform.common.result.BaseResponse; +import com.lyms.platform.operate.web.facade.AutoMatchFacade; +import com.lyms.platform.operate.web.facade.BabyHealthFacade; +import com.lyms.platform.operate.web.request.TeamModelRequest; +import com.lyms.platform.operate.web.service.PatientWeightService; +import com.lyms.platform.operate.web.service.TeamService; +import com.lyms.platform.permission.service.CouponService; +import com.lyms.platform.permission.service.UsersService; +import com.lyms.platform.pojo.TeamModel; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.*; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + + +/** + * 一贯制(团队)管理 + */ +@Controller +@RequestMapping("team") +public class TeamController extends BaseController { + + + @Autowired + private BabyHealthFacade babyHealthFacade; + @Autowired + private PatientWeightService patientWeightService; + @Autowired + private AutoMatchFacade autoMatchFacade; + + @Autowired + private UsersService usersService; + + @Autowired + private TeamService teamService; + + /** + *团队列表 + * @param hospitalId + * @param teamName + * @param page + * @param limit + * @param request + * @return + */ + @RequestMapping(value = "/queryList", method = RequestMethod.GET) + @ResponseBody + @TokenRequired + public BaseResponse queryList( + @RequestParam(value = "hospitalId", required = false) String hospitalId, + @RequestParam(value = "teamName", required = false) String teamName, + Integer page, Integer limit, HttpServletRequest request) { + return teamService.queryList(teamName, hospitalId, page, limit, getUserId(request)); + } + + @RequestMapping(value = "/addTeam", method = RequestMethod.POST) + @ResponseBody + @TokenRequired + public BaseResponse addTeam(@RequestBody TeamModelRequest team, HttpServletRequest request, HttpServletResponse response) { + BaseResponse baseResponse=new BaseResponse(); + baseResponse=teamService.addTeam(team); + return baseResponse; + } + + @RequestMapping(value = "/delTeam/{teamId}", method = RequestMethod.GET) + @ResponseBody + @TokenRequired + public BaseResponse delTeam(@PathVariable("teamId") String teamId,HttpServletRequest request, HttpServletResponse response) { + BaseResponse baseResponse=new BaseResponse(); + baseResponse=teamService.delTeam(teamId); + return baseResponse; + } + + @RequestMapping(value = "/optTeamDoc", method = RequestMethod.GET) + @ResponseBody + @TokenRequired + public BaseResponse optTeamDoc(String teamId,String docId,String opt, HttpServletRequest request, HttpServletResponse response) { + BaseResponse baseResponse=new BaseResponse(); + baseResponse=teamService.optTeamDoc(teamId,docId,opt); + return baseResponse; + } + + + + /** + * 团队医生列表 + * @param teamId + * @param request + * @param response + * @return + */ + @RequestMapping(value = "/teamDocList", method = RequestMethod.GET) + @ResponseBody + @TokenRequired + public BaseResponse teamDocList(String teamId,HttpServletRequest request, HttpServletResponse response) { + BaseResponse baseResponse=new BaseResponse(); + baseResponse=teamService.teamDocList(teamId); + return baseResponse; + } + + /** + * 没有在团队的医生列表 + * @param teamId + * @param request + * @param response + * @return + */ + @RequestMapping(value = "/teamNonDocList", method = RequestMethod.GET) + @ResponseBody + @TokenRequired + public BaseResponse teamNonDocList(String teamId,String hospitalId,HttpServletRequest request, HttpServletResponse response) { + BaseResponse baseResponse=new BaseResponse(); + baseResponse=teamService.teamNonDocList(teamId,hospitalId); + return baseResponse; + } + + /** + * 根据医生ID获取团队信息 + * @param docId + * @param request + * @param response + * @return + */ + @RequestMapping(value = "/getTeamByDocId", method = RequestMethod.GET) + @ResponseBody + @TokenRequired + public BaseResponse getTeamByDocId(String docId,HttpServletRequest request, HttpServletResponse response) { + BaseResponse baseResponse=new BaseResponse(); + baseResponse=teamService.getTeamByDocId(docId); + return baseResponse; + } + +} \ No newline at end of file diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntExRecordFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntExRecordFacade.java index 3918e35..1778609 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntExRecordFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/AntExRecordFacade.java @@ -14,6 +14,7 @@ import com.lyms.platform.operate.web.request.AntExManagerQueryRequest; import com.lyms.platform.operate.web.request.CjStatisticsQueryRequest; import com.lyms.platform.operate.web.request.NutritionInfoRequest; import com.lyms.platform.operate.web.result.*; +import com.lyms.platform.operate.web.service.TeamService; import com.lyms.platform.operate.web.utils.FunvCommonUtil; import com.lyms.platform.operate.web.utils.ResolveUtils; import com.lyms.platform.operate.web.utils.UnitConstants; @@ -112,6 +113,10 @@ public class AntExRecordFacade { @Autowired @Qualifier("cfCheckItemService") private CheckItemService checkItemService; + + @Autowired + private TeamService teamService; + public static final Map RISK_LEVEL = new HashMap<>(); static { @@ -790,6 +795,17 @@ public class AntExRecordFacade { result.setAddr(StringUtils.encryAddr(result.getAddr())); } } + + //产团 + for (AntExManagerResult result : data) { + if(null!=result.getTeamIdNew()){ + TeamModel teamModel=this.mongoTemplate.findOne(new Query(Criteria.where("id").is(result.getTeamIdNew())),TeamModel.class); + if(null!=teamModel){ + result.setTeamName(teamModel.getTeamName()); + } + } + } + return data; } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ViewFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ViewFacade.java index 83f4e60..c0a7c7e 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ViewFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/ViewFacade.java @@ -15,10 +15,12 @@ import com.lyms.platform.common.utils.*; import com.lyms.platform.common.utils.HttpClientUtil; import com.lyms.platform.operate.web.request.MessagesResult; import com.lyms.platform.operate.web.result.*; +import com.lyms.platform.operate.web.service.TeamService; import com.lyms.platform.operate.web.utils.*; import com.lyms.platform.operate.web.utils.UnitConstants; import com.lyms.platform.permission.model.*; import com.lyms.platform.permission.service.CheckItemService; +import com.lyms.platform.pojo.*; import com.lyms.platform.query.*; import net.sf.json.JSONArray; import org.apache.commons.collections.CollectionUtils; @@ -68,28 +70,6 @@ import com.lyms.platform.permission.dao.master.CouponMapper; import com.lyms.platform.permission.service.CouponService; import com.lyms.platform.permission.service.OrganizationService; import com.lyms.platform.permission.service.UsersService; -import com.lyms.platform.pojo.AmniocentesisInfoModel; -import com.lyms.platform.pojo.AmniocentesisRecordModel; -import com.lyms.platform.pojo.AmniocentesisResultModel; -import com.lyms.platform.pojo.AntExChuModel; -import com.lyms.platform.pojo.AntenatalExaminationModel; -import com.lyms.platform.pojo.BabyCheckModel; -import com.lyms.platform.pojo.BabyModel; -import com.lyms.platform.pojo.BabyNerveMovementModel; -import com.lyms.platform.pojo.BabyNeuroPsychologicalModel; -import com.lyms.platform.pojo.BasicConfig; -import com.lyms.platform.pojo.DischargeAbstractBabyModel; -import com.lyms.platform.pojo.DischargeAbstractMotherModel; -import com.lyms.platform.pojo.ExerciseAppraisalModel; -import com.lyms.platform.pojo.FilePathModel; -import com.lyms.platform.pojo.MaternalDeliverModel; -import com.lyms.platform.pojo.Patients; -import com.lyms.platform.pojo.PersonModel; -import com.lyms.platform.pojo.PlantformConfigModel; -import com.lyms.platform.pojo.PostReviewModel; -import com.lyms.platform.pojo.ReferralApplyOrderModel; -import com.lyms.platform.pojo.ResidentsArchiveModel; -import com.lyms.platform.pojo.StopPregModel; /** * Created by Administrator on 2017/1/16 0016. @@ -184,6 +164,9 @@ public class ViewFacade { @Qualifier("cfCheckItemService") private CheckItemService checkItemService; + @Autowired + private TeamService teamService; + /** * 建档查询 * @@ -3120,15 +3103,25 @@ public class ViewFacade { // private String jzxgn; String checkDoctor = ""; + String teamName=""; if (org.apache.commons.lang.StringUtils.isNotEmpty(data.getCheckDoctor())) { Users users = usersService.getUsers(Integer.parseInt(data.getCheckDoctor())); if (users != null && users.getYn() == YnEnums.YES.getId()) { checkDoctor = users.getName(); } + + //医生所在团队 + BaseObjectResponse tbase=teamService.getTeamByDocId(data.getCheckDoctor()); + if(null!=tbase.getData()){ + TeamModel tm=(TeamModel)(tbase.getData()); + teamName=tm.getTeamName(); + } } map.put("checkDoctor", checkDoctor); + map.put("team",teamName); + String hospital = ""; Organization organization = null; if (org.apache.commons.lang.StringUtils.isNotEmpty(data.getHospitalId())) { diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/AntExAddRequest.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/AntExAddRequest.java index 8bd6a63..ec8d931 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/AntExAddRequest.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/AntExAddRequest.java @@ -374,6 +374,34 @@ public class AntExAddRequest implements IBasicRequestConvert { //孕妇NT private String wcNt; + + private String teamIdOld;//旧医生团队 + private String teamIdNew;//新医生团队 + private String reason;//换团队的原因 + + public String getTeamIdOld() { + return teamIdOld; + } + + public void setTeamIdOld(String teamIdOld) { + this.teamIdOld = teamIdOld; + } + + public String getTeamIdNew() { + return teamIdNew; + } + + public void setTeamIdNew(String teamIdNew) { + this.teamIdNew = teamIdNew; + } + + public String getReason() { + return reason; + } + + public void setReason(String reason) { + this.reason = reason; + } + + public String getWcNt() { return wcNt; } @@ -2404,6 +2434,12 @@ public class AntExcAddRequest implements IBasicRequestConvert { if (StringUtils.isNotEmpty(wcNt)) { antExChuModel.setWcNt(wcNt); } + + //产团 + antExChuModel.setTeamIdOld(teamIdOld); + antExChuModel.setTeamIdNew(teamIdNew); + antExChuModel.setReason(reason); + return antExChuModel; } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/TeamModelRequest.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/TeamModelRequest.java new file mode 100644 index 0000000..b751aaf --- /dev/null +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/TeamModelRequest.java @@ -0,0 +1,18 @@ +package com.lyms.platform.operate.web.request; + +import com.lyms.platform.pojo.TeamModel; + +import java.util.List; + + +public class TeamModelRequest extends TeamModel { + private List doctorArr; + + public List getDoctorArr() { + return doctorArr; + } + + public void setDoctorArr(List doctorArr) { + this.doctorArr = doctorArr; + } +} diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/AntExManagerResult.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/AntExManagerResult.java index d1867fe..b1f57e4 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/AntExManagerResult.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/AntExManagerResult.java @@ -83,6 +83,43 @@ public class AntExManagerResult { private String sieveType; + private String teamName;//产团 + private String reason; + private String teamIdOld; + private String teamIdNew; + + public String getTeamIdOld() { + return teamIdOld; + } + + public void setTeamIdOld(String teamIdOld) { + this.teamIdOld = teamIdOld; + } + + public String getTeamIdNew() { + return teamIdNew; + } + + public void setTeamIdNew(String teamIdNew) { + this.teamIdNew = teamIdNew; + } + + public String getTeamName() { + return teamName; + } + + public void setTeamName(String teamName) { + this.teamName = teamName; + } + + public String getReason() { + return reason; + } + + public void setReason(String reason) { + this.reason = reason; + } + public String getSieveType() { return sieveType; } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/TeamService.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/TeamService.java new file mode 100644 index 0000000..784b3a1 --- /dev/null +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/TeamService.java @@ -0,0 +1,31 @@ +package com.lyms.platform.operate.web.service; + +import com.lyms.platform.common.result.BaseObjectResponse; +import com.lyms.platform.common.result.BaseResponse; +import com.lyms.platform.operate.web.request.TeamModelRequest; +import com.lyms.platform.pojo.PatientWeight; +import com.lyms.platform.pojo.Patients; +import com.lyms.platform.pojo.WeightConfigModel; + +import java.util.Date; +import java.util.List; +import java.util.Map; + +/** + * Created by cpf on 2021-10-15 15:25:13 + */ +public interface TeamService extends IBaseService { + + BaseResponse queryList(String teamName, String hospitalId, Integer page, Integer limit, Integer userId); + BaseResponse addTeam(TeamModelRequest team); + + BaseResponse delTeam(String teamId); + + BaseResponse optTeamDoc(String teamId, String docId,String opt); + + BaseResponse teamDocList(String teamId); + + BaseResponse teamNonDocList(String teamId, String hospitalId); + + BaseObjectResponse getTeamByDocId(String docId); +} diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/TeamServiceImpl.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/TeamServiceImpl.java new file mode 100644 index 0000000..dff0300 --- /dev/null +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/TeamServiceImpl.java @@ -0,0 +1,180 @@ +package com.lyms.platform.operate.web.service.impl; + +import com.lyms.platform.common.constants.ErrorCodeConstants; +import com.lyms.platform.common.result.BaseObjectResponse; +import com.lyms.platform.common.result.BaseResponse; +import com.lyms.platform.common.result.PageResult; +import com.lyms.platform.common.result.RespBuilder; +import com.lyms.platform.operate.web.request.TeamModelRequest; +import com.lyms.platform.operate.web.service.TeamService; +import com.lyms.platform.permission.model.Users; +import com.lyms.platform.permission.model.UsersQuery; +import com.lyms.platform.permission.service.UsersService; +import com.lyms.platform.pojo.BabyEyeCheck; +import com.lyms.platform.pojo.TeamModel; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.domain.Sort; +import org.springframework.data.mongodb.core.MongoTemplate; +import org.springframework.data.mongodb.core.query.Criteria; +import org.springframework.data.mongodb.core.query.Query; +import org.springframework.stereotype.Service; + +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +@Service +public class TeamServiceImpl implements TeamService { + @Autowired + private UsersService usersService; + + @Autowired + private MongoTemplate mongoTemplate; + + + @Override + public PageResult findPage(String sql, Integer currentPage, Integer pageSize, List params) { + return null; + } + + @Override + public PageResult findMongoPage(Class entity, Query query, Integer page, Integer limit) { + if(page == null) { + page = 1; + } + if(limit == null) { + limit = 15; + } + + Long count = mongoTemplate.count(query, entity); + query.skip((page - 1) * limit); + query.limit(limit); + List rows = mongoTemplate.find(query, entity); + return new PageResult(count.intValue(), page, limit, rows); + } + + @Override + public BaseResponse queryList(String teamName, String hospitalId, Integer page, Integer limit, Integer userId) { + Criteria criteria=new Criteria(); + if(StringUtils.isNotEmpty(hospitalId)){ + criteria.and("hospitalId").is(hospitalId); + } + PageResult pageResult = findMongoPage(TeamModel.class, new Query(criteria).with(new Sort(Sort.Direction.DESC, "created")), page, limit); + List babyEyeChecks = (List) pageResult.getGrid(); +// pageResult.setGrid(setDatas(babyEyeChecks)); + return RespBuilder.buildSuccess(pageResult); + } + + @Override + public BaseResponse addTeam(TeamModelRequest teamReq) { + TeamModel teamModel=new TeamModel(); + BeanUtils.copyProperties(teamReq,teamModel); + teamModel.setCreated(new Date()); + this.mongoTemplate.save(teamModel); + return new BaseObjectResponse() + .setErrormsg("成功").setErrorcode(ErrorCodeConstants.SUCCESS); + } + + @Override + public BaseResponse delTeam(String teamId) { + this.mongoTemplate.remove(new Query(Criteria.where("id").is(teamId)),TeamModel.class); + return new BaseObjectResponse() + .setErrormsg("成功").setErrorcode(ErrorCodeConstants.SUCCESS); + } + + @Override + public BaseResponse optTeamDoc(String teamId, String docId,String opt) { + TeamModel teamModel=this.mongoTemplate.findOne(new Query(Criteria.where("id").is(teamId)),TeamModel.class); + + if("del".equals(opt)){ + teamModel.getDoctorIdArr().remove(docId); + } + if("add".equals(opt)){ + teamModel.getDoctorIdArr().add(docId); + } + this.mongoTemplate.save(teamModel); + return new BaseObjectResponse() + .setErrormsg("成功").setErrorcode(ErrorCodeConstants.SUCCESS); + } + + /** + * 查询团队医生列表 + * @param teamId + * @return + */ + @Override + public BaseResponse teamDocList(String teamId) { + TeamModel teamModel=this.mongoTemplate.findOne(new Query(Criteria.where("id").is(teamId)),TeamModel.class); + UsersQuery usersQuery = new UsersQuery(); + final List ids=new ArrayList<>(); + for (String id : + teamModel.getDoctorIdArr()) { + ids.add(Integer.valueOf(id)); + } + usersQuery.setIds(ids); + List uLst=usersService.queryUsers(usersQuery); + return new BaseObjectResponse() + .setErrormsg("成功").setErrorcode(ErrorCodeConstants.SUCCESS).setData(uLst); + } + + /** + * 查询非团队医生 + * @param teamId + * @param hospitalId + * @return + */ + @Override + public BaseResponse teamNonDocList(String teamId, String hospitalId) { + List tLst=this.mongoTemplate.find(new Query(Criteria.where("hospitalId").is(hospitalId)),TeamModel.class); + UsersQuery usersQuery = new UsersQuery(); + List ids=new ArrayList<>(); + List tIds=new ArrayList<>(); + + for (TeamModel teamModel : tLst) { + List docIds=teamModel.getDoctorIdArr(); + for (int i = 0; i < docIds.size(); i++) { + tIds.add(Integer.valueOf(docIds.get(i))); + } + } + + usersQuery.setOrgId(Integer.parseInt(hospitalId)); + + List uLst=usersService.queryUsers(usersQuery); + + for (Users u : uLst) { + ids.add(u.getId()); + } + + ids.removeAll(tIds); + usersQuery.setIds(ids); + uLst=usersService.queryUsers(usersQuery); + + return new BaseObjectResponse() + .setErrormsg("成功").setErrorcode(ErrorCodeConstants.SUCCESS).setData(uLst); + } + + @Override + public BaseObjectResponse getTeamByDocId(String docId) { + List tLst=this.mongoTemplate.find(new Query(Criteria.where("doctorIdArr").is(docId)),TeamModel.class); + + return new BaseObjectResponse() + .setErrormsg("成功").setErrorcode(ErrorCodeConstants.SUCCESS).setData(tLst.size()>0?tLst.get(0):null); + } + + public static void main(String[] args) { + List l1=new ArrayList<>(); + l1.add(1); + l1.add(2); + l1.add(3); + l1.add(4); + List l2=new ArrayList<>(); + l2.add(3); + l2.add(4); + l2.add(5); + l1.removeAll(l2); + System.out.println(l1); + } + +} diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/worker/AntExRecordWorker.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/worker/AntExRecordWorker.java index 7b389cf..6bbd8d6 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/worker/AntExRecordWorker.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/worker/AntExRecordWorker.java @@ -230,6 +230,9 @@ public class AntExRecordWorker implements Callable> { } } + antExManagerResult.setReason(e.getReason()); + antExManagerResult.setTeamIdNew(e.getTeamIdNew()); + antExManagerResult.setTeamIdOld(e.getTeamIdOld()); data.add(antExManagerResult); } catch (Exception e1) { -- 1.8.3.1