| | |
| | | package com.consum.base.service; |
| | | |
| | | import com.consum.base.core.utils.MapperUtil; |
| | | import com.walker.infrastructure.utils.CollectionUtils; |
| | | import com.walker.jdbc.service.BaseServiceImpl; |
| | | import org.apache.commons.lang3.StringUtils; |
| | |
| | | } |
| | | sql.append(QUERY_SCRAPPED_GOODS_END); |
| | | if (goodsModelNum != null) { |
| | | sql.append(" limit").append(goodsModelNum); |
| | | sql.append(" limit ").append(goodsModelNum); |
| | | } |
| | | return select(sql.toString(), paramts); |
| | | } |
| | |
| | | public int modGoodsTransfering(List<Long> whGoods, Integer warehouseType, Long toWarehouseId, String toWarehouseName, Integer states) { |
| | | StringBuilder sql = new StringBuilder(MOD_GOODS_TRANSFERING_PREFIX); |
| | | ArrayList<Object> params = new ArrayList<>(); |
| | | if (toWarehouseId != null) { |
| | | if (warehouseType != null) { |
| | | sql.append(", WAREHOUSE_TYPE=?"); |
| | | params.add(warehouseType); |
| | | } |
| | |
| | | return update(sql.toString(), params.toArray()); |
| | | } |
| | | |
| | | private static String GOODS_NUM_PRICE = "SELECT t.tenantId,count(id) total_Num,count(CASE WHEN STATES=2 THEN 1 END) xia_fa_num,IFNULL(round(sum(PRICE)/1000000,2),0) total_price,IFNULL(ROUND(count(CASE WHEN STATES=2 THEN 1 END)/count(id),4),0)*100 AS zhan_you_percent,count(CASE COST_TYPE WHEN 1 THEN 1 END) a_total_Num,count(CASE COST_TYPE WHEN 2 THEN 1 END) b_total_Num,count(CASE COST_TYPE WHEN 3 THEN 1 END) c_total_Num,IFNULL( round( sum( CASE COST_TYPE WHEN 1 THEN PRICE END )/ 1000000, 2 ), 0 ) a_total_price,IFNULL( round( sum( CASE COST_TYPE WHEN 2 THEN PRICE END )/ 1000000, 2 ), 0 ) b_total_price,IFNULL( round( sum( CASE COST_TYPE WHEN 3 THEN PRICE END )/ 1000000, 2 ), 0 ) c_total_price FROM (SELECT tCangKu.tenantId,tKuCun.id,tKuCun.STATES,tKuCun.COST_TYPE,tKuCun.price FROM (SELECT tenant.id tenantId,tenant.NAME AS org_name,ware.*FROM fin_sys_tenant tenant RIGHT JOIN ( SELECT 0 WAREHOUSE_TYPE,id,AGENCY_ID,WAREHOUSE_NAME FROM BASE_WAREHOUSE UNION ALL SELECT 1 WAREHOUSE_TYPE,id,TENANT_ID AGENCY_ID,`NAME` WAREHOUSE_NAME FROM fin_sys_tenant_department) ware ON tenant.id=ware.AGENCY_ID WHERE 1=1 "; |
| | | private static String GOODS_NUM_PRICE_END = ") tCangKu LEFT JOIN L_WH_GOODS tKuCun ON tCangKu.WAREHOUSE_TYPE=tKuCun.WAREHOUSE_TYPE AND tCangKu.id=tKuCun.WAREHOUSE_ID AND tKuCun.STATES BETWEEN 1 AND 2 where tKuCun.id is not null) t GROUP BY t.tenantId"; |
| | | |
| | | //按机构统计物品价值、数量/金额等 |
| | | public List<Map<String, Object>> getGoodsNumPrice(Long agencyId) { |
| | | StringBuilder sql = new StringBuilder(GOODS_NUM_PRICE); |
| | | Map<String, Object> paramts = new HashMap<>(); |
| | | sql.append(" and tenant.id=:agencyId"); |
| | | paramts.put("agencyId", agencyId); |
| | | return select(sql.append(GOODS_NUM_PRICE_END).toString(), paramts, new MapperUtil()); |
| | | } |
| | | |
| | | |
| | | private static String GET_GOODS_NUM_BY_MONTH = "SELECT monthT.month_Num,IFNULL(datat.total_Num,0) total_Num,IFNULL(datat.add_total_Num,0) add_total_Num,IFNULL(datat.reduce_total_Num,0) reduce_total_Num FROM (SELECT monthT.month_Num FROM (SELECT ( SELECT 1) month_Num UNION SELECT 2 UNION SELECT 3 UNION SELECT 4 UNION SELECT 5 UNION SELECT 6 UNION SELECT 7 UNION SELECT 8 UNION SELECT 9 UNION SELECT 10 UNION SELECT 11 UNION SELECT 12) monthT) monthT LEFT JOIN ( SELECT t.tenantId,count(t.THIS_COUNT) total_Num,count(CASE t.THIS_TYPE WHEN 1 THEN t.THIS_COUNT END) add_total_Num,count(CASE t.THIS_TYPE WHEN 2 THEN t.THIS_COUNT END) reduce_total_Num,SUBSTR(DEAL_TIME,5,2) data_month FROM ( SELECT tCangKu.tenantId,tKuCun.id,tKuCun.THIS_TYPE,tKuCun.THIS_COUNT,tKuCun.DEAL_TIME FROM (SELECT tenant.id tenantId,tenant.NAME AS org_name,ware.*FROM fin_sys_tenant tenant RIGHT JOIN ( SELECT 0 WAREHOUSE_TYPE,id,AGENCY_ID,WAREHOUSE_NAME FROM BASE_WAREHOUSE UNION ALL SELECT 1 WAREHOUSE_TYPE,id,TENANT_ID AGENCY_ID,`NAME` WAREHOUSE_NAME FROM fin_sys_tenant_department) ware ON tenant.id=ware.AGENCY_ID WHERE 1=1 "; |
| | | private static String GET_GOODS_NUM_BY_MONTH_END = ")tCangKu LEFT JOIN L_WH_GOODS_RECORD tKuCun ON tCangKu.WAREHOUSE_TYPE=tKuCun.WAREHOUSE_TYPE AND tCangKu.id=tKuCun.WAREHOUSE_ID and tKuCun.DEAL_TIME between cast(CONCAT(DATE_FORMAT(NOW(), '%Y'),'1231240000') as UNSIGNED) and cast(CONCAT(DATE_FORMAT(NOW(), '%Y'),'0101000000') as UNSIGNED)) t GROUP BY t.tenantId,SUBSTR(DEAL_TIME,5,2)) datat ON datat.data_month=monthT.month_Num ORDER BY monthT.month_Num ASC"; |
| | | |
| | | //按机构统计物品价值、数量/金额等 |
| | | public List<Map<String, Object>> getGoodsNumByMonth(Long agencyId) { |
| | | StringBuilder sql = new StringBuilder(GET_GOODS_NUM_BY_MONTH); |
| | | Map<String, Object> paramts = new HashMap<>(); |
| | | sql.append(" and tenant.id=:agencyId"); |
| | | paramts.put("agencyId", agencyId); |
| | | return select(sql.append(GET_GOODS_NUM_BY_MONTH_END).toString(), paramts, new MapperUtil()); |
| | | } |
| | | } |