diff --git a/src/main/java/com/supwisdom/dlpay/api/service/impl/PosPayServiceImpl.java b/src/main/java/com/supwisdom/dlpay/api/service/impl/PosPayServiceImpl.java
index c0ccfaa..fa05ec4 100644
--- a/src/main/java/com/supwisdom/dlpay/api/service/impl/PosPayServiceImpl.java
+++ b/src/main/java/com/supwisdom/dlpay/api/service/impl/PosPayServiceImpl.java
@@ -464,16 +464,22 @@
                 if(cntamount<0){
                     resp.setRetcode(ErrorCode.ERRIF_POSDTL_NOTEXIST);
                     resp.setRetmsg("折扣不得大于实付金额");
-
                     return resp;
                 }
 
-                TBusinesspara cntflag = businessparaDao.findByParakey("need.ceil");
-                if(null!=cntflag) {
-                    cntamount=Math.ceil(cntamount);
-
-                }
                 if(cntamount!=amount){
+                    TBusinesspara cntflag = businessparaDao.findByParakey("need.ceil");
+                    if(null!=cntflag) {
+                        if(RestaurantConstant.ROUNDTYPE_CEIL.equals(cntflag.getParaval())){
+                            cntamount=Math.ceil(cntamount);
+                        }else if(RestaurantConstant.ROUNDTYPE_ROUND.equals(cntflag.getParaval())){
+                            Long roundamt=Math.round(cntamount);
+                            cntamount=roundamt.doubleValue();
+                        }else if(RestaurantConstant.ROUNDTYPE_FLOOR.equals(cntflag.getParaval())){
+                            cntamount=Math.floor(cntamount);
+                        }
+
+                    }
                     tTransdtl.setRuleid(bean.getRuleid());
                     tTransdtl.setManagefee(amount - cntamount);
                     tTransdtl.setManagefeetype(bean.getRuletype());
@@ -483,9 +489,6 @@
                     tTransdtl.setAmount(amount);
                     tTransdtl.setManagefee(0.0);
                 }
-
-
-
             } else {
                 tTransdtl.setManagefeetype(RestaurantConstant.RULETYPE_NORMAL);
                 tTransdtl.setAmount(amount);
diff --git a/src/main/java/com/supwisdom/dlpay/restaurant/util/RestaurantConstant.java b/src/main/java/com/supwisdom/dlpay/restaurant/util/RestaurantConstant.java
index 39ec29c..3cd1c70 100644
--- a/src/main/java/com/supwisdom/dlpay/restaurant/util/RestaurantConstant.java
+++ b/src/main/java/com/supwisdom/dlpay/restaurant/util/RestaurantConstant.java
@@ -89,4 +89,10 @@
 
     public static final String SHOP_QRCODE_ORDERURL = "dlsmk.shop.qrcode.url";
     public static final String SHOP_QRCODE_JWTKEY = "dlsmk.shop.qrcode.authkey";
+
+    public static final String ROUNDTYPE_CEIL = "ceil";   //向上取整
+    public static final String ROUNDTYPE_ROUND = "round"; //四舍五入
+    public static final String ROUNDTYPE_FLOOR = "floor"; //向下取整
+
+
 }
