| | |
| | | package cn.cetc54.platform.zhyl.api; |
| | | |
| | | import cn.cetc54.platform.core.common.utils.PageUtil; |
| | | import cn.cetc54.platform.core.common.utils.ResultUtil; |
| | | import cn.cetc54.platform.core.common.vo.PageVo; |
| | | import cn.cetc54.platform.core.common.vo.Result; |
| | | import cn.cetc54.platform.zhyl.entity.*; |
| | | import cn.cetc54.platform.zhyl.entity.vo.FwjgCount; |
| | | import cn.cetc54.platform.zhyl.entity.vo.FwnlAndOrderCount; |
| | | import cn.cetc54.platform.zhyl.entity.vo.OrderByExecute; |
| | | import cn.cetc54.platform.zhyl.service.*; |
| | | import cn.hutool.core.util.StrUtil; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import lombok.extern.slf4j.Slf4j; |
| | |
| | | @CrossOrigin("*") |
| | | public class FwjgController { |
| | | @Autowired |
| | | private IAreaService iAreaService; |
| | | @Autowired |
| | | private IOrgFuwuService iOrgFuwuService; |
| | | @Autowired |
| | | private IFuwuPersonService iFuwuPersonService; |
| | |
| | | @RequestMapping(value = "/getCountByAreaId", method = RequestMethod.GET) |
| | | @ApiOperation(value = "根据区域id获取区域下所有机构和人员数量以及订单总数") |
| | | public Result<Object> getCountByAreaId(String areaId){ |
| | | if (StrUtil.isNotBlank(areaId)&&areaId.equals("130100")){ |
| | | //如果是全市 areaId设置未空 |
| | | areaId = null; |
| | | } |
| | | QueryWrapper<OrgFuwu> wrapper = new QueryWrapper<>(); |
| | | wrapper.eq("area_id",areaId); |
| | | if (StrUtil.isNotEmpty(areaId)){ |
| | | wrapper.eq("area_id",areaId); |
| | | } |
| | | int orgFuwuCount = iOrgFuwuService.count(wrapper); |
| | | |
| | | QueryWrapper<FuwuPerson> wrapper1 = new QueryWrapper<>(); |
| | | wrapper1.eq("area_id",areaId); |
| | | if (StrUtil.isNotEmpty(areaId)){ |
| | | wrapper1.eq("area_id",areaId); |
| | | } |
| | | int fuwuPersonCount = iFuwuPersonService.count(wrapper1); |
| | | |
| | | QueryWrapper<Order> wrapper2 = new QueryWrapper<>(); |
| | | wrapper2.eq("area_id",areaId); |
| | | if (StrUtil.isNotEmpty(areaId)){ |
| | | wrapper2.eq("area_id",areaId); |
| | | } |
| | | int orderCount = iOrderService.count(wrapper2); |
| | | |
| | | QueryWrapper<Order> wrapper3 = new QueryWrapper<>(); |
| | | wrapper2.eq("area_id",areaId); |
| | | wrapper2.eq("state",0); |
| | | if (StrUtil.isNotEmpty(areaId)){ |
| | | wrapper3.eq("area_id",areaId); |
| | | } |
| | | wrapper3.eq("state",0); |
| | | int orderCount2 = iOrderService.count(wrapper3); |
| | | |
| | | FwjgCount fwjgCount=new FwjgCount(); |
| | | fwjgCount.setFwjgCount(orgFuwuCount); |
| | | fwjgCount.setFwPersonCount(fuwuPersonCount); |
| | |
| | | @RequestMapping(value = "/getFwnlByAreaId", method = RequestMethod.GET) |
| | | @ApiOperation(value = "根据区域id获取区域下所有实际服务以及服务订单数") |
| | | public Result<Object> getFwnlByAreaId(String areaId){ |
| | | if (StrUtil.isNotBlank(areaId)&&areaId.equals("130100")){ |
| | | //如果是全市 areaId设置未空 |
| | | areaId = null; |
| | | } |
| | | QueryWrapper<FuwuDetails> wrapper = new QueryWrapper<>(); |
| | | wrapper.isNull("pid"); |
| | | List<FuwuDetails> list = iFuwuDetailsService.list(wrapper); |
| | | |
| | | List<FwnlAndOrderCount> fwnlAndOrderCountList=new ArrayList<>(); |
| | | for (FuwuDetails fuwuDetails : list) { |
| | | QueryWrapper<FuwuDetails> wrapper1 = new QueryWrapper<>(); |
| | |
| | | List<FuwuDetails> list1 = iFuwuDetailsService.list(wrapper1); |
| | | for (FuwuDetails details : list1) { |
| | | QueryWrapper<Order> wrapper2 = new QueryWrapper<>(); |
| | | wrapper2.eq("area_id",areaId); |
| | | if (StrUtil.isNotBlank(areaId)){ |
| | | wrapper2.eq("area_id",areaId); |
| | | } |
| | | wrapper2.eq("detail_id",details.getId()); |
| | | int count = iOrderService.count(wrapper2); |
| | | details.setOrderNumber(count); |
| | |
| | | @RequestMapping(value = "/getFwjgOrderByOrderNumber", method = RequestMethod.GET) |
| | | @ApiOperation(value = "根据区域id和订单量查询服务机构排名情况") |
| | | public Result<Object> getFwjgOrderByOrderNumber(String areaId){ |
| | | if (StrUtil.isNotBlank(areaId)&&areaId.equals("130100")){ |
| | | //如果是全市 areaId设置未空 |
| | | areaId = null; |
| | | } |
| | | QueryWrapper<OrgFuwu> wrapper = new QueryWrapper<>(); |
| | | wrapper.eq("area_id",areaId); |
| | | if (StrUtil.isNotEmpty(areaId)){ |
| | | wrapper.eq("area_id",areaId); |
| | | } |
| | | List<OrgFuwu> list = iOrgFuwuService.list(wrapper); |
| | | for (OrgFuwu orgFuwu : list) { |
| | | QueryWrapper<FuwuDetails> wrapper1 = new QueryWrapper<>(); |
| | | wrapper1.isNull("pid"); |
| | | wrapper1.eq("org_fw_id",orgFuwu.getId()); |
| | | List<FuwuDetails> list1 = iFuwuDetailsService.list(wrapper1); |
| | | int orgFuwuCount=0; |
| | | for (FuwuDetails fuwuDetails : list1) { |
| | | QueryWrapper<FuwuDetails> wrapper2 = new QueryWrapper<>(); |
| | | wrapper2.eq("pid",fuwuDetails.getId()); |
| | | List<FuwuDetails> list2 = iFuwuDetailsService.list(wrapper2); |
| | | int fuwuDetailsCount=0; |
| | | for (FuwuDetails details : list2) { |
| | | QueryWrapper<Order> wrapper3 = new QueryWrapper<>(); |
| | | wrapper3.eq("area_id",areaId); |
| | | wrapper3.eq("detail_id",details.getId()); |
| | | int count = iOrderService.count(wrapper3); |
| | | fuwuDetailsCount+=count; |
| | | } |
| | | orgFuwuCount+=fuwuDetailsCount; |
| | | } |
| | | orgFuwu.setOrderNumber(orgFuwuCount); |
| | | orgFuwu.setOrderNumber(iOrderService.getOrderNum(orgFuwu.getId())); |
| | | } |
| | | List<OrgFuwu> collectList = list.stream().sorted(Comparator.comparing(OrgFuwu::getOrderNumber)).collect(Collectors.toList()); |
| | | return new ResultUtil<Object>().setData(collectList.subList(0,10)); |
| | | List<OrgFuwu> collectList = list.stream().sorted(Comparator.comparing(OrgFuwu::getOrderNumber).reversed()).collect(Collectors.toList()); |
| | | List<OrgFuwu> resList = collectList.size()>10?collectList.subList(0,10):collectList; |
| | | return new ResultUtil<Object>().setData(resList); |
| | | } |
| | | |
| | | @RequestMapping(value = "/getFuwuDetailsOrderByOrderNumber", method = RequestMethod.GET) |
| | | @ApiOperation(value = "根据区域id和订单量查询实际服务排名情况") |
| | | public Result<Object> getFuwuDetailsOrderByOrderNumber(String areaId){ |
| | | if (StrUtil.isNotBlank(areaId)&&areaId.equals("130100")){ |
| | | //如果是全市 areaId设置未空 |
| | | areaId = null; |
| | | } |
| | | QueryWrapper<FuwuDetails> wrapper = new QueryWrapper<>(); |
| | | wrapper.isNotNull("pid"); |
| | | wrapper.eq("del_flag",0); |
| | | List<FuwuDetails> list = iFuwuDetailsService.list(wrapper); |
| | | for (FuwuDetails fuwuDetails : list) { |
| | | QueryWrapper<Order> wrapper3 = new QueryWrapper<>(); |
| | | wrapper3.eq("area_id",areaId); |
| | | if (StrUtil.isNotBlank(areaId)){ |
| | | wrapper3.eq("area_id",areaId); |
| | | } |
| | | wrapper3.eq("detail_id",fuwuDetails.getId()); |
| | | int count = iOrderService.count(wrapper3); |
| | | fuwuDetails.setOrderNumber(count); |
| | | } |
| | | List<FuwuDetails> collectList = list.stream().sorted(Comparator.comparing(FuwuDetails::getOrderNumber)).collect(Collectors.toList()); |
| | | return new ResultUtil<Object>().setData(collectList.subList(0,10)); |
| | | List<FuwuDetails> collectList = list.stream().sorted(Comparator.comparing(FuwuDetails::getOrderNumber).reversed()).collect(Collectors.toList()); |
| | | List<FuwuDetails> resList = collectList.size()>10?collectList.subList(0,10):collectList; |
| | | return ResultUtil.data(resList); |
| | | } |
| | | |
| | | @RequestMapping(value = "/getOrder", method = RequestMethod.GET) |
| | | @ApiOperation(value = "执行中订单") |
| | | public Result<Object> getOrder(String areaId){ |
| | | if (StrUtil.isNotBlank(areaId)&&areaId.equals("130100")){ |
| | | //如果是全市 areaId设置未空 |
| | | areaId = null; |
| | | } |
| | | QueryWrapper<Order> wrapper = new QueryWrapper<>(); |
| | | wrapper.eq("area_id",areaId); |
| | | if (StrUtil.isNotBlank(areaId)){ |
| | | wrapper.eq("area_id",areaId); |
| | | } |
| | | |
| | | wrapper.eq("state",0); |
| | | wrapper.orderByAsc("creat_time"); |
| | | |
| | | wrapper.orderByDesc("create_time"); |
| | | wrapper.last(" limit 10"); |
| | | List<Order> list = iOrderService.list(wrapper); |
| | | int count = iOrderService.count(wrapper); |
| | | List<OrderByExecute> orderByExecuteList=new ArrayList<>(); |
| | |
| | | map.put("orderByExecuteList",orderByExecuteList); |
| | | return new ResultUtil<Object>().setData(map); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | } |