futian.liu
2023-12-05 3836720e3b0fc9ab884d178e0ac27e942b175da2
consum-base/src/main/java/com/consum/base/service/LWarehouseFlowService.java
@@ -213,14 +213,16 @@
     * @param param
     * @return
     */
    private String QUERY_DEPT_TAIZHANG_LIST_QUERY = "SELECT CASE WHEN flow.BUSINESS_TYPE=1 THEN tCaiGou.AGENCY_NAME WHEN (flow.BUSINESS_TYPE=2 OR flow.BUSINESS_TYPE=4 OR flow.BUSINESS_TYPE=6) THEN tTrans.OPERATOR_NAME WHEN flow.BUSINESS_TYPE=3 THEN tFormOut.AGENCY_NAME WHEN flow.BUSINESS_TYPE=5 THEN tScrapped.AGENCY_NAME WHEN flow.BUSINESS_TYPE=7 THEN tInventory.AGENCY_NAME END AGENCY_NAME,ware.NAME as dept_name,record.GOODS_TEMPLATE_NAME,record.BASE_GOODS_MODELS_NAME,record.THIS_TYPE,flow.BUSINESS_TYPE,CASE WHEN flow.BUSINESS_TYPE=1 THEN tCaiGou.BUSINESS_FORM_CODE WHEN (flow.BUSINESS_TYPE=2 OR flow.BUSINESS_TYPE=4 OR flow.BUSINESS_TYPE=6) THEN tTrans.BUSINESS_FORM_CODE WHEN flow.BUSINESS_TYPE=3 THEN tFormOut.BUSINESS_FORM_CODE WHEN flow.BUSINESS_TYPE=5 THEN tScrapped.BUSINESS_FORM_CODE WHEN flow.BUSINESS_TYPE=7 THEN tInventory.BUSINESS_FORM_CODE END BUSINESS_FORM_CODe,record.THIS_COUNT,record.INITIAL_COUNT,record.END_COUNT,flow.DEAL_TIME,CASE WHEN flow.BUSINESS_TYPE=2 AND tTrans.STATES=1 THEN record.THIS_COUNT ELSE 0 END zai_Tu_Count FROM (SELECT*FROM fin_sys_tenant_department WHERE 1=1 ";
    private String QUERY_DEPT_TAIZHANG_LIST_QUERY = "SELECT CASE WHEN flow.BUSINESS_TYPE=1 THEN tCaiGou.AGENCY_NAME WHEN (flow.BUSINESS_TYPE=2 OR flow.BUSINESS_TYPE=4) THEN tTrans.OUT_AGENCY_NAME WHEN flow.BUSINESS_TYPE=3 THEN tFormOut.AGENCY_NAME WHEN flow.BUSINESS_TYPE=5 AND flow.WAREHOUSE_TYPE=0 THEN tScrapped.AGENCY_NAME WHEN flow.BUSINESS_TYPE=5 AND flow.WAREHOUSE_TYPE=1 THEN tDepScrapped.AGENCY_NAME WHEN flow.BUSINESS_TYPE=6 AND flow.WAREHOUSE_TYPE=1 THEN tBack.AGENCY_NAME WHEN flow.BUSINESS_TYPE=7 THEN tInventory.AGENCY_NAME END AGENCY_NAME,ware.NAME AS dept_name,record.GOODS_TEMPLATE_NAME,record.BASE_GOODS_MODELS_NAME,record.THIS_TYPE,flow.BUSINESS_TYPE,CASE WHEN flow.BUSINESS_TYPE=1 THEN tCaiGou.BUSINESS_FORM_CODE WHEN (flow.BUSINESS_TYPE=2 OR flow.BUSINESS_TYPE=4) THEN tTrans.BUSINESS_FORM_CODE WHEN flow.BUSINESS_TYPE=3 THEN tFormOut.BUSINESS_FORM_CODE WHEN flow.BUSINESS_TYPE=5 AND flow.WAREHOUSE_TYPE=0 THEN tScrapped.BUSINESS_FORM_CODE WHEN flow.BUSINESS_TYPE=5 AND flow.WAREHOUSE_TYPE=1 THEN tDepScrapped.BUSINESS_FORM_CODE WHEN flow.BUSINESS_TYPE=6 AND flow.WAREHOUSE_TYPE=1 THEN tBack.BUSINESS_FORM_CODE WHEN flow.BUSINESS_TYPE=7 THEN tInventory.BUSINESS_FORM_CODE END BUSINESS_FORM_CODe,record.THIS_COUNT,record.INITIAL_COUNT,record.END_COUNT,flow.DEAL_TIME,CASE WHEN flow.BUSINESS_TYPE=2 AND tTrans.STATES=1 THEN record.THIS_COUNT ELSE 0 END zai_Tu_Count FROM (SELECT*FROM fin_sys_tenant_department WHERE 1=1 ";
    private String QUERY_DEPT_TAIZHANG_LIST_RECORD = ")ware LEFT JOIN L_WAREHOUSE_FLOW flow ON ware.id=flow.WAREHOUSE_ID AND flow.WAREHOUSE_TYPE=1 LEFT JOIN L_WH_GOODS_RECORD record ON flow.id=record.WAREHOUSE_FLOW_ID ";
    private String QUERY_DEPT_TAIZHANG_LIST_END = " WHERE record.id IS NOT NULL";
    private String QUERY_DEPT_TAIZHANG_LIST_CAIGOU = " LEFT JOIN L_WH_FORM_PROCURE tCaiGou ON flow.BUSINESS_TYPE=1 AND tCaiGou.id=flow.BUSINESS_FORM_ID ";
    private String QUERY_DEPT_TAIZHANG_LIST_DIAOBO = " LEFT JOIN L_WH_FORM_TRANSFER tTrans ON (flow.BUSINESS_TYPE=2 or flow.BUSINESS_TYPE=4 or flow.BUSINESS_TYPE=6) AND tTrans.id=flow.BUSINESS_FORM_ID ";
    private String QUERY_DEPT_TAIZHANG_LIST_DIAOBO = " LEFT JOIN L_WH_FORM_TRANSFER tTrans ON (flow.BUSINESS_TYPE=2 or flow.BUSINESS_TYPE=4) AND tTrans.id=flow.BUSINESS_FORM_ID ";
    private String QUERY_DEPT_TAIZHANG_LIST_CHUKU = " LEFT JOIN L_WH_FORM_OUTPUT tFormOut ON flow.BUSINESS_TYPE=3 AND tFormOut.id=flow.BUSINESS_FORM_ID ";
    private String QUERY_DEPT_TAIZHANG_LIST_PANDIAN = " LEFT JOIN L_WH_FORM_INVENTORY tInventory ON flow.BUSINESS_TYPE=7 AND tInventory.id=flow.BUSINESS_FORM_ID ";
    private String QUERY_DEPT_TAIZHANG_LIST_BAOFEI = " LEFT JOIN L_WH_FORM_SCRAPPED tScrapped ON flow.BUSINESS_TYPE=5 AND tScrapped.id=flow.BUSINESS_FORM_ID ";
    private String QUERY_DEPT_TAIZHANG_LIST_BAOFEI = " LEFT JOIN L_WH_FORM_SCRAPPED tScrapped ON flow.BUSINESS_TYPE=5 AND flow.WAREHOUSE_TYPE=0 AND tScrapped.id=flow.BUSINESS_FORM_ID ";
    private String QUERY_DEPT_TAIZHANG_LIST_DEP_BAOFEI = " LEFT JOIN DEP_FORM_SCRAPPED tDepScrapped ON flow.BUSINESS_TYPE=5 AND flow.WAREHOUSE_TYPE=1 AND tDepScrapped.id=flow.BUSINESS_FORM_ID ";
    private String QUERY_DEPT_TAIZHANG_LIST_DEP_TUIHUI = " LEFT JOIN USING_FORM_BACK tBack ON flow.BUSINESS_TYPE=6 AND tBack.id=flow.BUSINESS_FORM_ID ";
    public GenericPager<Map<String, Object>> queryDeptTaiZhangList(LWarehouseFlowParam param) {
        StringBuilder sqlQuery = new StringBuilder(QUERY_DEPT_TAIZHANG_LIST_QUERY);
@@ -230,6 +232,8 @@
        StringBuilder sqlChuKu = new StringBuilder(QUERY_DEPT_TAIZHANG_LIST_CHUKU);
        StringBuilder sqlBaoFei = new StringBuilder(QUERY_DEPT_TAIZHANG_LIST_BAOFEI);
        StringBuilder sqlPanDian = new StringBuilder(QUERY_DEPT_TAIZHANG_LIST_PANDIAN);
        StringBuilder sqlDepBaoFei = new StringBuilder(QUERY_DEPT_TAIZHANG_LIST_DEP_BAOFEI);
        StringBuilder sqlDepTuiHui = new StringBuilder(QUERY_DEPT_TAIZHANG_LIST_DEP_TUIHUI);
        StringBuilder sqlEnd = new StringBuilder(QUERY_DEPT_TAIZHANG_LIST_END);
        HashMap<String, Object> paramts = new HashMap<>();
@@ -292,13 +296,21 @@
            paramts.put("chuKuBusinessFormCode", businessFormCode);
            sqlBaoFei.append(" and tScrapped.BUSINESS_FORM_CODE = :baoFeiBusinessFormCode");
            paramts.put("baoFeiBusinessFormCode", businessFormCode);
            sqlBaoFei.append(" and tDepScrapped.BUSINESS_FORM_CODE = :deptBaoFeiBusinessFormCode");
            paramts.put("deptBaoFeiBusinessFormCode", businessFormCode);
            sqlBaoFei.append(" and tBack.BUSINESS_FORM_CODE = :deptBackBusinessFormCode");
            paramts.put("deptBackBusinessFormCode", businessFormCode);
            sqlPanDian.append(" and tInventory.BUSINESS_FORM_CODE = :panDianBusinessFormCode");
            paramts.put("panDianBusinessFormCode", businessFormCode);
            sqlEnd.append(" and case when flow.BUSINESS_TYPE = 1 THEN tCaiGou.BUSINESS_FORM_CODE" +
                    " WHEN ( flow.BUSINESS_TYPE = 2 OR flow.BUSINESS_TYPE = 4) THEN tTrans.BUSINESS_FORM_CODE" +
                    " WHEN flow.BUSINESS_TYPE = 3 THEN tFormOut.BUSINESS_FORM_CODE" +
                    " WHEN flow.BUSINESS_TYPE = 5 THEN tScrapped.BUSINESS_FORM_CODE" +
                    " WHEN flow.BUSINESS_TYPE = 5 AND flow.WAREHOUSE_TYPE = 0 THEN tScrapped.BUSINESS_FORM_CODE" +
                    " WHEN flow.BUSINESS_TYPE = 5 AND flow.WAREHOUSE_TYPE = 1 THEN tDepScrapped.BUSINESS_FORM_CODE" +
                    " WHEN flow.BUSINESS_TYPE = 6 THEN tBack.BUSINESS_FORM_CODE" +
                    " WHEN flow.BUSINESS_TYPE = 7 THEN tInventory.BUSINESS_FORM_CODE end =:whereBusinessFormCode");
            paramts.put("whereBusinessFormCode", businessFormCode);