package com.hivekion.baseData.controller; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollectionUtil; import cn.hutool.json.JSONArray; import com.alibaba.fastjson2.JSON; import com.alibaba.fastjson2.JSONObject; import com.hivekion.baseData.domain.tblhospitalVo.HospitalSearchVo; import com.hivekion.baseData.domain.tblhospitalVo.HospitalViewVo; import com.hivekion.common.annotation.AutoLog; import com.hivekion.common.entity.PagedResultVo; import com.hivekion.common.enums.OperationTypeEnum; import com.hivekion.scenario.entity.Resource; import com.hivekion.scenario.service.IResourceService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import java.util.List; @RestController @RequestMapping("/basedata/hospital") @Api(value = "医院", tags = {"装备管理-医院"}) public class TblHospitalController { @Autowired private IResourceService service; @PostMapping("/getList") @ApiOperation(value = "获取医院列表", notes = "") @AutoLog(value = "获取医院列表", operationType = OperationTypeEnum.SELECT, module = "基础数据/医院") public PagedResultVo getList(@RequestBody HospitalSearchVo vo) { PagedResultVo resources = this.service.listAllBuildResourceByTypeWithPage(7,vo); PagedResultVo hospitalViewVoPagedResultVo = new PagedResultVo<>(); List hospitalViewVos = CollectionUtil.newArrayList(); resources.getData().stream().forEach(resource -> { HospitalViewVo hospitalViewVo = new HospitalViewVo(); BeanUtil.copyProperties(resource,hospitalViewVo); JSONObject jsonObject= (JSONObject) JSON.parse(resource.getResourceAttribut()); hospitalViewVo.setDoctorNum(jsonObject.get("doctor_num").toString()); hospitalViewVo.setHospitalBed(jsonObject.get("hospital_bed").toString()); hospitalViewVo.setNurseNum(jsonObject.get("nurse_num").toString()); // resource.getResourceAttribut() hospitalViewVos.add(hospitalViewVo); }); hospitalViewVoPagedResultVo.setData(hospitalViewVos); return hospitalViewVoPagedResultVo; } }