Przeglądaj źródła

收退款明细

gqx 2 lat temu
rodzic
commit
ff70794736

+ 24 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/finance/controller/SummaryController.java

@@ -75,4 +75,28 @@ public class SummaryController {
 		return Result.OK(pageList);
 	}
 
+	/**
+	 * 收退款明细
+	 * @param posOrderGoodsPayment
+	 * @param pageNo
+	 * @param pageSize
+	 * @param startTime
+	 * @param endTime
+	 * @param departmentId
+	 * @param req
+	 * @return
+	 */
+	@ApiOperation(value = "收退款明细", notes = "收退款明细")
+	@GetMapping(value = "/financePage")
+	public Result<IPage<HashMap<String, Object>>> getFinancePageList(PosOrderGoodsPayment posOrderGoodsPayment,
+																			  @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
+																			  @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
+																			  @RequestParam(name = "startTime", required = false) @JsonFormat() DateTime startTime,
+																			  @RequestParam(name = "endTime", required = false) @JsonFormat() DateTime endTime,
+																			  @RequestParam(name = "departmentId", defaultValue = "0") Integer departmentId,
+																			  HttpServletRequest req) {
+		Page<HashMap<String, Object>> page = new Page<HashMap<String, Object>>(pageNo, pageSize);
+		IPage<HashMap<String, Object>> pageList = summaryService.financePageList(page, posOrderGoodsPayment.getHotelId(), startTime, endTime, departmentId);
+		return Result.OK(pageList);
+	}
 }

+ 76 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/finance/mapper/SummaryMapper.java

@@ -105,4 +105,80 @@ public interface SummaryMapper extends BaseMapper<PosOrderGoodsPayment>  {
             "group by h.id</script>")
     public List<HashMap<String,Object>> roomPageList(Page<HashMap<String,Object>> page, @Param("busRoomPayTypes") List<BusRoomPayType> busRoomPayTypes, @Param("hotelId") String hotelId, @Param("startTime") DateTime startTime, @Param("endTime") DateTime endTime);
 
+
+    /**
+     * 收退款明细列表
+     * @param page
+     * @param hotelId
+     * @param startTime
+     * @param endTime
+     * @return
+     */
+    @Select("<script>select 'POS' as department,pty.name as payment_method_name,'收款' as fee_type,ogp.order_id,'--' as contact_name,'--' as room_name,ogp.pay_money\n" +
+            ",ogp.create_time\n" +
+            "from pos_order_goods_payment ogp \n" +
+            "left join bus_room_pay_type_info pty on pty.id=ogp.payment_method\n" +
+            "where 1=1" +
+            "<if test='hotelId != null and hotelId !=\"\"'> and ogp.hotel_id = #{hotelId} </if>"+
+            "<if test='startTime != null'> and ogp.create_time &gt;= #{startTime} </if>"+
+            "<if test='endTime != null'> and ogp.create_time &lt;= #{endTime} </if>"+
+            "UNION ALL\n" +
+            "select '住客' as department,pty.name as payment_method_name,\n" +
+            "case when of.money>=0 then '收款' else '退款' end as fee_type,\n" +
+            "of.living_order_id as order_id,c.name as contact_name,r.name as room_name,of.money as pay_money,of.create_time\n" +
+            "from bus_order_fee of \n" +
+            "left join bus_room_pay_type_info pty on pty.id=of.pay_type\n" +
+            "left join bus_rooms_living_order rlo on rlo.id= of.living_order_id\n" +
+            "left join ces_rooms r on r.id=of.room_id\n" +
+            "left join bus_customer c on c.id=rlo.contact_id\n" +
+            "where of.fee_type=2 and of.preferential_status=2" +
+            "<if test='hotelId != null and hotelId !=\"\"'> and pty.hotel_id = #{hotelId} </if>"+
+            "<if test='startTime != null'> and of.create_time &gt;= #{startTime} </if>"+
+            "<if test='endTime != null'> and of.create_time &lt;= #{endTime} </if>"+
+            "</script>")
+    public List<HashMap<String,Object>> financePage(Page<HashMap<String,Object>> page, @Param("hotelId") String hotelId, @Param("startTime") DateTime startTime, @Param("endTime") DateTime endTime);
+
+
+    /**
+     * POS收退款明细列表
+     * @param page
+     * @param hotelId
+     * @param startTime
+     * @param endTime
+     * @return
+     */
+    @Select("<script>select 'POS' as department,pty.name as payment_method_name,'收款' as fee_type,ogp.order_id,'--' as contact_name,'--' as room_name,ogp.pay_money\n" +
+            ",ogp.create_time\n" +
+            "from pos_order_goods_payment ogp \n" +
+            "left join bus_room_pay_type_info pty on pty.id=ogp.payment_method\n" +
+            "where 1=1" +
+            "<if test='hotelId != null and hotelId !=\"\"'> and ogp.hotel_id = #{hotelId} </if>"+
+            "<if test='startTime != null'> and ogp.create_time &gt;= #{startTime} </if>"+
+            "<if test='endTime != null'> and ogp.create_time &lt;= #{endTime} </if>"+
+            "</script>")
+    public List<HashMap<String,Object>> postFinancePage(Page<HashMap<String,Object>> page, @Param("hotelId") String hotelId, @Param("startTime") DateTime startTime, @Param("endTime") DateTime endTime);
+
+    /**
+     * 住客收退款明细列表
+     * @param page
+     * @param hotelId
+     * @param startTime
+     * @param endTime
+     * @return
+     */
+    @Select("<script>select '住客' as department,pty.name as payment_method_name,\n" +
+            "case when of.money>=0 then '收款' else '退款' end as fee_type,\n" +
+            "of.living_order_id as order_id,c.name as contact_name,r.name as room_name,of.money as pay_money,of.create_time\n" +
+            "from bus_order_fee of \n" +
+            "left join bus_room_pay_type_info pty on pty.id=of.pay_type\n" +
+            "left join bus_rooms_living_order rlo on rlo.id= of.living_order_id\n" +
+            "left join ces_rooms r on r.id=of.room_id\n" +
+            "left join bus_customer c on c.id=rlo.contact_id\n" +
+            "where of.fee_type=2 and of.preferential_status=2" +
+            "<if test='hotelId != null and hotelId !=\"\"'> and pty.hotel_id = #{hotelId} </if>"+
+            "<if test='startTime != null'> and of.create_time &gt;= #{startTime} </if>"+
+            "<if test='endTime != null'> and of.create_time &lt;= #{endTime} </if>"+
+            "</script>")
+    public List<HashMap<String,Object>> roomFinancePage(Page<HashMap<String,Object>> page, @Param("hotelId") String hotelId, @Param("startTime") DateTime startTime, @Param("endTime") DateTime endTime);
+
 }

+ 11 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/finance/service/ISummaryService.java

@@ -25,4 +25,15 @@ public interface ISummaryService extends IService<PosOrderGoodsPayment> {
      * @return
      */
     public Page<HashMap<String, Object>> pageList(Page<HashMap<String, Object>> page, String hotelId, DateTime startTime, DateTime endTime, Integer departmentId);
+
+    /**
+     * 收退款明细列表
+     * @param page
+     * @param hotelId
+     * @param startTime
+     * @param endTime
+     * @param departmentId
+     * @return
+     */
+    public Page<HashMap<String, Object>> financePageList(Page<HashMap<String, Object>> page, String hotelId, DateTime startTime, DateTime endTime, Integer departmentId);
 }

+ 20 - 1
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/finance/service/impl/SummaryServiceImpl.java

@@ -49,7 +49,6 @@ public class SummaryServiceImpl extends ServiceImpl<SummaryMapper, PosOrderGoods
         LambdaQueryWrapper<BusRoomPayType> lambdaQueryWrapper = new LambdaQueryWrapper<>();
         lambdaQueryWrapper.eq(BusRoomPayType::getHotelId, hotelId);
         List<BusRoomPayType> busRoomPayTypes = busRoomPayTypeService.list(lambdaQueryWrapper);
-//        List<String> busRoomPayTypes=new ArrayList<>();
         if (departmentId == 1) {
             return page.setRecords(summaryMapper.posPageList(page, busRoomPayTypes, hotelId, startTime, endTime));
         } else if (departmentId == 2) {
@@ -57,4 +56,24 @@ public class SummaryServiceImpl extends ServiceImpl<SummaryMapper, PosOrderGoods
         }
         return page.setRecords(summaryMapper.pageList(page, busRoomPayTypes, hotelId, startTime, endTime));
     }
+
+    /**
+     * 收退款明细列表
+     * @param page
+     * @param hotelId
+     * @param startTime
+     * @param endTime
+     * @param departmentId
+     * @return
+     */
+    public Page<HashMap<String, Object>> financePageList(Page<HashMap<String, Object>> page, String hotelId, DateTime startTime, DateTime endTime, Integer departmentId) {
+        LambdaQueryWrapper<BusRoomPayType> lambdaQueryWrapper = new LambdaQueryWrapper<>();
+        lambdaQueryWrapper.eq(BusRoomPayType::getHotelId, hotelId);
+        if (departmentId == 1) {
+            return page.setRecords(summaryMapper.postFinancePage(page, hotelId, startTime, endTime));
+        } else if (departmentId == 2) {
+            return page.setRecords(summaryMapper.roomFinancePage(page, hotelId, startTime, endTime));
+        }
+        return page.setRecords(summaryMapper.financePage(page, hotelId, startTime, endTime));
+    }
 }

+ 6 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/kc/controller/KcStockController.java

@@ -108,6 +108,12 @@ private  IKcDepositoryInGoodsService kcDepositoryInGoodsService;
 					item.setStockTypeName(storageEnum.getTitle());
 				}
 			}
+			if (item.getType().equals(1)) {
+				OutBoundEnum outBoundEnum = OutBoundEnum.val(item.getStockType());
+				if (outBoundEnum != null) {
+					item.setStockTypeName(outBoundEnum.getTitle());
+				}
+			}
 		});
 		return Result.OK(pageList);
 	}

+ 1 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/kc/controller/KcStockDetailController.java

@@ -96,6 +96,7 @@ public class KcStockDetailController extends JeecgController<KcStockDetail, IKcS
 				if (kcStock.getType().equals(1)) {
 					KcDepositoryInGoods kcDepositoryInGoods = kcDepositoryInGoodsService.getById(record.getSupplierInGoodsId());
 					if (kcDepositoryInGoods != null) {
+						record.setStockNum(kcDepositoryInGoods.getNum());
 						KcGoods kcGoods = kcGoodsService.getById(kcDepositoryInGoods.getGoodsId());
 						if (kcGoods != null) {
 							record.setSpec(kcGoods.getSpec());

+ 2 - 0
jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/kc/entity/KcStockDetail.java

@@ -68,4 +68,6 @@ public class KcStockDetail implements Serializable {
     private String spec;
     @TableField(exist = false)
     private String name;
+    @TableField(exist = false)
+    private Integer stockNum;
 }