Fancy
2025-01-14 057d4df78bcc5b34ca7c6897918946c4a9e65d18
queryStatisticOrder
4个文件已修改
51 ■■■■ 已修改文件
pms-parent/pms-global/src/main/java/com/dy/pmsGlobal/daoPr/PrOrderMapper.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pms-parent/pms-global/src/main/resources/mapper/PrOrderMapper.xml 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pms-parent/pms-web-other/src/main/java/com/dy/pmsOther/screen/ScreenReportCtrl.java 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pms-parent/pms-web-other/src/main/java/com/dy/pmsOther/screen/ScreenReportSv.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
pms-parent/pms-global/src/main/java/com/dy/pmsGlobal/daoPr/PrOrderMapper.java
@@ -1,5 +1,6 @@
package com.dy.pmsGlobal.daoPr;
import cn.hutool.json.JSONObject;
import com.dy.pmsGlobal.pojoPlt.PltProduct;
import com.dy.pmsGlobal.pojoPr.PrOrder;
import org.apache.ibatis.annotations.Mapper;
@@ -34,4 +35,6 @@
    boolean exists(@Param("name") String name, @Param("id") Long id);
    int updateByPrimaryKeySelective(PrOrder record);
    List<JSONObject> queryStatisticOrder();
}
pms-parent/pms-global/src/main/resources/mapper/PrOrderMapper.xml
@@ -144,6 +144,23 @@
        </trim>
        order by id desc
    </select>
    <select id="queryStatisticOrder" resultType="cn.hutool.json.JSONObject">
        SELECT
            count(1) AS total,
            SUM(CASE WHEN delivery_date >= DATE_SUB(CURDATE(), INTERVAL 1 YEAR) THEN 1 ELSE 0 END) AS year_total,
            SUM(CASE WHEN complete = 'complete' THEN 1 ELSE 0 END) AS complete,
            SUM(CASE WHEN complete = 'uncomplete' THEN 1 ELSE 0 END) AS uncomplete
        FROM(
                SELECT po.id,po.delivery_date, CASE WHEN po.`status`= -1 OR poi.complete ='complete' THEN 'complete' ELSE 'uncomplete' END AS complete FROM
                    (SELECT id,`name`, `status`,delivery_date FROM pr_order WHERE deleted = 0) po
                        LEFT JOIN (
                        SELECT pr.order_id ,CASE WHEN COUNT(pr.order_id) - SUM(pr.flag) = 0 THEN 'complete' ELSE 'uncomplete' END AS complete
                        FROM
                            (SELECT item.order_id,item.pro_id,CASE WHEN item.complete_number - item.number >= 0 THEN 1  ELSE 0 END AS flag FROM
                                (SELECT order_id,pro_id, SUM(number) number,SUM(IFNULL(complete_number,0)) complete_number FROM pr_order_item GROUP BY order_id,pro_id) item
                            ) pr GROUP BY pr.order_id) poi
                        ON po.id = poi.order_id) statistic
    </select>
    <delete id="deleteByPrimaryKey" parameterType="java.lang.Long">
        delete from pr_order
        where  id = #{id,jdbcType=BIGINT} 
pms-parent/pms-web-other/src/main/java/com/dy/pmsOther/screen/ScreenReportCtrl.java
@@ -73,27 +73,19 @@
        List<JSONObject> list = sv.queryTopError();
        return BaseResponseUtils.buildSuccess(list);
    }
    /**
     * 任务看板  查询在产任务看板
     * */
    @GetMapping(path="queryAttendUser")
    @Log("查询人员出勤率")
    public BaseResponse<JSONObject> queryAttendUser(){
        JSONObject obj = sv.queryAttendUser();
        return BaseResponseUtils.buildSuccess(obj);
    }
    /**
     * 任务看板  查询在产任务看板
     * */
    @GetMapping(path="queryStatisticWork")
    @Log("查询订单看板")
    @Log("查询统计人员工作量")
    public BaseResponse<List<JSONObject>> queryStatisticWork(){
        List<JSONObject> list = sv.queryStatisticWork();
        return BaseResponseUtils.buildSuccess(list);
    }
    /**
     * 任务看板  查询在产任务看板
     * */
    @GetMapping(path="queryOrderList")
    @Log("查询订单看板")
    public BaseResponse<List<JSONObject>> queryOrderList(){
@@ -101,4 +93,10 @@
        return BaseResponseUtils.buildSuccess(list);
    }
    @GetMapping(path="queryOrderStatistic")
    @Log("查询统计订单数量")
    public BaseResponse<JSONObject> queryOrderStatistic(){
        JSONObject obj = sv.queryStatisticOrder();
        return BaseResponseUtils.buildSuccess(obj);
    }
}
pms-parent/pms-web-other/src/main/java/com/dy/pmsOther/screen/ScreenReportSv.java
@@ -177,6 +177,7 @@
        return list;
    }
    //没写完
    public List<JSONObject> queryOrderList() {
        List<JSONObject> list = assemblyPlanDao.queryPlanList();
       /* Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize();
@@ -239,4 +240,16 @@
        List<JSONObject> list = statisticWorkDao.queryStatisticWork(startDt, endDt);
        return list;
    }
    public JSONObject queryStatisticOrder() {
       List<JSONObject> list = orderDao.queryStatisticOrder();
        if(list.size() == 0){
            JSONObject obj = new JSONObject();
            obj.set("total", "0");
            obj.set("year_total", "0");
            obj.set("complete", "0");
            obj.set("uncomplete", "0");
            return obj;
        }
        return list.get(0);
    }
}