bug 食堂修改
This commit is contained in:
		
							parent
							
								
									a78873474c
								
							
						
					
					
						commit
						4fd892e771
					
				| 
						 | 
				
			
			@ -14,7 +14,7 @@ import org.springframework.web.bind.annotation.*;
 | 
			
		|||
 | 
			
		||||
/**
 | 
			
		||||
 * 水电数据Controller
 | 
			
		||||
 * 
 | 
			
		||||
 *
 | 
			
		||||
 * @author xsheng
 | 
			
		||||
 * @date 2025-04-05
 | 
			
		||||
 */
 | 
			
		||||
| 
						 | 
				
			
			@ -31,8 +31,7 @@ public class HardwareScreenController extends BaseController {
 | 
			
		|||
    @ApiOperation(value = "获取水电数据详细信息")
 | 
			
		||||
    @PostMapping(value = "/getHydroPowerInfo")
 | 
			
		||||
    public AjaxResult getHydroPowerInfo(@RequestBody HydroPowerVo dto) {
 | 
			
		||||
        long type=dto.getDateType();
 | 
			
		||||
        return success(hardwareScreenService.selectHydroPowerByType(type));
 | 
			
		||||
        return success(hardwareScreenService.selectHydroPowerByType(dto));
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -9,7 +9,7 @@ import java.util.List;
 | 
			
		|||
 * @author 19814
 | 
			
		||||
 */
 | 
			
		||||
public interface HardwareScreenMapper {
 | 
			
		||||
    public List<HydroPowerVo> selectHydroPowerByType(Long type);
 | 
			
		||||
    public List<HydroPowerVo> selectHydroPowerByType(HydroPowerVo type);
 | 
			
		||||
    public MorningCheckVo getMorningCheckInfo();
 | 
			
		||||
    public MorningCheckVo getHealthCheckNum();
 | 
			
		||||
    public List<MorningCheckVo> getCookCertificateInfo();
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -8,18 +8,18 @@ import java.util.List;
 | 
			
		|||
 | 
			
		||||
/**
 | 
			
		||||
 * 水电数据Service接口
 | 
			
		||||
 * 
 | 
			
		||||
 *
 | 
			
		||||
 * @author xsheng
 | 
			
		||||
 * @date 2025-04-05
 | 
			
		||||
 */
 | 
			
		||||
public interface HardwareScreenService {
 | 
			
		||||
    /**
 | 
			
		||||
     * 查询水电数据
 | 
			
		||||
     * 
 | 
			
		||||
     *
 | 
			
		||||
     * @param type 水电数据主键
 | 
			
		||||
     * @return 水电数据
 | 
			
		||||
     */
 | 
			
		||||
    public List<HydroPowerVo> selectHydroPowerByType(Long type);
 | 
			
		||||
    public List<HydroPowerVo> selectHydroPowerByType(HydroPowerVo dto);
 | 
			
		||||
 | 
			
		||||
    public List<DishVo> getDishInfo(DishVo dishVo);
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -4,9 +4,12 @@ import com.bonus.canteen.core.screening.mapper.HardwareScreenMapper;
 | 
			
		|||
import com.bonus.canteen.core.screening.vo.DishVo;
 | 
			
		||||
import com.bonus.canteen.core.screening.vo.HydroPowerVo;
 | 
			
		||||
import com.bonus.canteen.core.screening.vo.MorningCheckVo;
 | 
			
		||||
import com.bonus.common.houqin.constant.DeviceTypeEnum;
 | 
			
		||||
import org.springframework.stereotype.Service;
 | 
			
		||||
 | 
			
		||||
import javax.annotation.Resource;
 | 
			
		||||
import java.time.LocalDate;
 | 
			
		||||
import java.time.format.DateTimeFormatter;
 | 
			
		||||
import java.util.*;
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
| 
						 | 
				
			
			@ -18,18 +21,23 @@ public class HardwareScreenServiceImpl implements HardwareScreenService {
 | 
			
		|||
    private HardwareScreenMapper mapper;
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public List<HydroPowerVo> selectHydroPowerByType(Long type) {
 | 
			
		||||
        List<HydroPowerVo> list=new ArrayList<>();
 | 
			
		||||
    public List<HydroPowerVo> selectHydroPowerByType(HydroPowerVo dto) {
 | 
			
		||||
        List<HydroPowerVo> list = null;
 | 
			
		||||
        try {
 | 
			
		||||
            for(int i=0;i<8;i++){
 | 
			
		||||
                HydroPowerVo vo=new HydroPowerVo();
 | 
			
		||||
                vo.setCanteen("大一食堂");
 | 
			
		||||
                vo.setPlace("一楼");
 | 
			
		||||
                vo.setName("用电量");
 | 
			
		||||
                vo.setValue("15");
 | 
			
		||||
                vo.setOnline("在线");
 | 
			
		||||
                list.add(vo);
 | 
			
		||||
            //处理电的逻辑
 | 
			
		||||
            if(Objects.equals(dto.getIfwater(), "1")){
 | 
			
		||||
                dto.setDeviceType(DeviceTypeEnum.ELECTRIC_METER.getKey());
 | 
			
		||||
            }else{
 | 
			
		||||
                dto.setDeviceType(DeviceTypeEnum.WATER_METER.getKey());
 | 
			
		||||
            }
 | 
			
		||||
            // 自动填充 dateParam / monthParam
 | 
			
		||||
            if(dto.getDateType() == 1L) { // 今天
 | 
			
		||||
                dto.setDateParam(LocalDate.now().toString()); // "2025-08-15"
 | 
			
		||||
            } else if(dto.getDateType() == 2L) { // 本月
 | 
			
		||||
                dto.setMonthParam(LocalDate.now().format(DateTimeFormatter.ofPattern("yyyy-MM"))); // "2025-08"
 | 
			
		||||
            }
 | 
			
		||||
            list = mapper.selectHydroPowerByType(dto);
 | 
			
		||||
 | 
			
		||||
        }catch (Exception e){
 | 
			
		||||
            e.printStackTrace();
 | 
			
		||||
        }
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -12,5 +12,10 @@ public class HydroPowerVo {
 | 
			
		|||
    private String name;
 | 
			
		||||
    private String value;
 | 
			
		||||
    private String online;
 | 
			
		||||
    private long dateType;
 | 
			
		||||
    private long  dateType;//1:今日 2:本月 3:累计
 | 
			
		||||
    private String ifwater;//1:有水 2:电
 | 
			
		||||
    private int deviceType;
 | 
			
		||||
 | 
			
		||||
    private String dateParam;     // yyyy-MM-dd 格式
 | 
			
		||||
    private String monthParam;    // yyyy-MM 格式
 | 
			
		||||
}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -4,20 +4,30 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 | 
			
		|||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 | 
			
		||||
<mapper namespace="com.bonus.canteen.core.screening.mapper.HardwareScreenMapper">
 | 
			
		||||
    <select id="selectHydroPowerByType" resultType="com.bonus.canteen.core.screening.vo.HydroPowerVo">
 | 
			
		||||
 | 
			
		||||
    </select>
 | 
			
		||||
 | 
			
		||||
    <select id="getMorningCheckInfo" resultType="com.bonus.canteen.core.screening.vo.MorningCheckVo">
 | 
			
		||||
        SELECT
 | 
			
		||||
          count(1) AS morningCheckNum
 | 
			
		||||
         ,sum(case when temperature_status='1' then 0 else 1 end) AS morningCheckAbno
 | 
			
		||||
         ,count(1) AS handCheckNum
 | 
			
		||||
         ,sum(case when temperature_status='1' then 0 else 1 end) AS handCheckAbno
 | 
			
		||||
         ,count(1) AS faceCheckNum
 | 
			
		||||
         ,sum(case when temperature_status='1' then 0 else 1 end) AS faceCheckAbno
 | 
			
		||||
        FROM kitchen_staff_morning_check
 | 
			
		||||
        where DATE(record_time)=DATE(NOW())
 | 
			
		||||
    </select>
 | 
			
		||||
            SELECT
 | 
			
		||||
            bc.canteen_name AS canteen,
 | 
			
		||||
            m.device_network_state AS online,
 | 
			
		||||
            CONCAT(ba.area_name, '-', ksp.sub_place_name) AS place,
 | 
			
		||||
            SUM(
 | 
			
		||||
            <choose>
 | 
			
		||||
                <when test="dataType == 1">
 | 
			
		||||
                    CASE WHEN DATE(w.record_time) = #{dateParam} THEN CAST(w.usage_power AS DECIMAL(10,2)) ELSE 0 END
 | 
			
		||||
                </when>
 | 
			
		||||
                <when test="dataType == 2">
 | 
			
		||||
                    CASE WHEN DATE_FORMAT(w.record_time, '%Y-%m') = #{monthParam} THEN CAST(w.usage_power AS DECIMAL(10,2)) ELSE 0 END
 | 
			
		||||
                </when>
 | 
			
		||||
                <when test="dataType == 3">
 | 
			
		||||
                    CAST(w.usage_power AS DECIMAL(10,2))
 | 
			
		||||
                </when>
 | 
			
		||||
            </choose>
 | 
			
		||||
            ) AS 'name'
 | 
			
		||||
            FROM kitchen_device_info m
 | 
			
		||||
            LEFT JOIN kitchen_water_info w ON m.device_id = w.device_id
 | 
			
		||||
            LEFT JOIN basic_area ba ON m.area_id = ba.area_id
 | 
			
		||||
            LEFT JOIN basic_canteen bc ON bc.canteen_id = m.canteen_id
 | 
			
		||||
            LEFT JOIN kitchen_sub_place ksp ON ksp.sub_place_id = m.sub_place
 | 
			
		||||
            WHERE m.device_type = #{deviceType}
 | 
			
		||||
            GROUP BY m.device_id
 | 
			
		||||
 | 
			
		||||
    <select id="getHealthCheckNum" resultType="com.bonus.canteen.core.screening.vo.MorningCheckVo">
 | 
			
		||||
        select count(1) as  healthNum,
 | 
			
		||||
| 
						 | 
				
			
			@ -32,4 +42,4 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 | 
			
		|||
        where aa.post_name like '%厨师%' and bb.photo_url is not null
 | 
			
		||||
    </select>
 | 
			
		||||
 | 
			
		||||
</mapper>
 | 
			
		||||
</mapper>
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue