前台添加商户维护页面,删除卡物理id判断,新增人员是不再添加cardver,消费限额添加判断
diff --git a/build.gradle b/build.gradle
index 431798f..0fea5bd 100644
--- a/build.gradle
+++ b/build.gradle
@@ -1,9 +1,9 @@
plugins {
id 'java'
id 'org.springframework.boot'
- id 'org.jetbrains.kotlin.jvm'
- id 'org.jetbrains.kotlin.plugin.jpa'
- id 'org.jetbrains.kotlin.plugin.spring'
+ id 'org.jetbrains.kotlin.jvm'
+ id 'org.jetbrains.kotlin.plugin.jpa'
+ id 'org.jetbrains.kotlin.plugin.spring'
id "com.palantir.git-version" version "0.12.0-rc2"
id 'com.palantir.docker' version '0.22.1'
}
diff --git a/config/application-devel-pg.properties b/config/application-devel-pg.properties
index 65c3151..476c4a4 100644
--- a/config/application-devel-pg.properties
+++ b/config/application-devel-pg.properties
@@ -14,9 +14,9 @@
spring.datasource.password=123456
database.dbtype=postgresql
# Redis settings
-spring.redis.host=172.28.201.101
-spring.redis.port=16379
-spring.redis.password=kingstar
+spring.redis.host=172.28.201.70
+spring.redis.port=6379
+spring.redis.password=
# jwt settings
jwt.secret=Zj5taLomEbrM0lk+NMQZbHfSxaDU1wekjT+kiC3YzDw=
# timeout seconds
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 9e73c0e..b0aa58b 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
@@ -191,8 +191,8 @@
resp.setRetmsg("该pos当日流水重复");
return resp;
}
- TTransDtl tTransdtl = new TTransDtl();
+ TTransDtl tTransdtl = new TTransDtl();
tTransdtl.setTermid(tDevice.getId());
tTransdtl.setBillno(systemUtilService.getRefno());
@@ -294,13 +294,36 @@
return resp;
}
Double amount = req.getAmount() / 100.0;
-
+ Double cntamount=0.0;
DiscountBean bean = deviceDiscountRuleService.getCustomerDiscount(tDevice.getId(), req.getTermtime(), cus.getCustid());
if (null != bean) {
tTransdtl.setRuleid(bean.getRuleid());
- amount = getDiscountAmount(req.getTermdate(), cus.getCustid(), amount, bean);
+ cntamount = getDiscountAmount(req.getTermdate(), cus.getCustid(), amount, bean);
+ tTransdtl.setManagefee(amount-cntamount);
+ tTransdtl.setManagefeetype(bean.getRuletype());
+ tTransdtl.setAmount(cntamount);
+ }else{
+ tTransdtl.setAmount(amount);
+ tTransdtl.setManagefee(cntamount);
}
- tTransdtl.setAmount(amount);
+
+ TDevparaGroup group = null;
+ TDevparaBind bind = deviceParamService.getDevparaBindByDeviceid(tDevice.getId());
+ if (null == bind) {
+ group = deviceParamService.getDefaultDevparaGroup();
+ } else {
+ group = deviceParamService.getDevparaGroupByGroupid(bind.getGroupid());
+ }
+ TDevpara para=deviceParamService.getDevparaInfoByParaname(group.getGroupid(),"once_limit_amt");
+ if(null!=para){
+ Double oncelimit=Double.parseDouble(para.getParaval())/100;
+ if(amount>oncelimit&&cntamount>oncelimit){
+ resp.setRetcode("99");
+ resp.setRetmsg("消费金额超出单笔消费限额");
+ return resp;
+ }
+ }
+
tTransdtl.setStatus(RestaurantConstant.STATUS_TRANSDTL_WAIT);
TTransDtl dtl = transDtlService.saveTransdtl(tTransdtl);
diff --git a/src/main/java/com/supwisdom/dlpay/framework/dao/ShopSettlementDao.java b/src/main/java/com/supwisdom/dlpay/framework/dao/ShopSettlementDao.java
index d1abdb0..26b11cc 100644
--- a/src/main/java/com/supwisdom/dlpay/framework/dao/ShopSettlementDao.java
+++ b/src/main/java/com/supwisdom/dlpay/framework/dao/ShopSettlementDao.java
@@ -1,6 +1,8 @@
package com.supwisdom.dlpay.framework.dao;
import com.supwisdom.dlpay.framework.domain.TShopSettlement;
+import org.springframework.data.domain.Page;
+import org.springframework.data.domain.Pageable;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Repository;
@@ -8,8 +10,11 @@
@Repository
-public interface ShopSettlementDao extends JpaRepository<TShopSettlement, String> {
+public interface ShopSettlementDao extends JpaRepository<TShopSettlement, Integer> {
int countByShopid(String shopid);
List<TShopSettlement> findByShopid(String shopid);
+
+
+ Page<TShopSettlement> findAllByShopidContaining(String shopid, Pageable pageable);
}
diff --git a/src/main/java/com/supwisdom/dlpay/framework/domain/TShopSettlement.java b/src/main/java/com/supwisdom/dlpay/framework/domain/TShopSettlement.java
index a7bab95..b2a80da 100644
--- a/src/main/java/com/supwisdom/dlpay/framework/domain/TShopSettlement.java
+++ b/src/main/java/com/supwisdom/dlpay/framework/domain/TShopSettlement.java
@@ -8,7 +8,7 @@
@Id
@GeneratedValue(strategy=GenerationType.SEQUENCE, generator="SEQ_SETTLEMENT")
@Column(name="SHOPSettlementno",unique = true, nullable = false, length = 9)
- private String shopsettlementno;
+ private Integer shopsettlementno;
@Column(name="SHOPID", precision = 15,unique = true)
private String shopid;
@@ -20,12 +20,12 @@
private String operno;
- public String getShopSettlementno() {
+ public Integer getShopSettlementno() {
return shopsettlementno;
}
- public void setShopSettlementno(String SHOPSettlementno) {
- this.shopsettlementno = SHOPSettlementno;
+ public void setShopSettlementno(Integer ShopSettlementno) {
+ this.shopsettlementno = ShopSettlementno;
}
public String getShopid() {
diff --git a/src/main/java/com/supwisdom/dlpay/restaurant/bean/CustomerShowBean.java b/src/main/java/com/supwisdom/dlpay/restaurant/bean/CustomerShowBean.java
index e5cdc1a..b03083d 100644
--- a/src/main/java/com/supwisdom/dlpay/restaurant/bean/CustomerShowBean.java
+++ b/src/main/java/com/supwisdom/dlpay/restaurant/bean/CustomerShowBean.java
@@ -12,6 +12,7 @@
private String cardphyid;
private String bankcardno;
private String checkstatus;
+ private String status;
public CustomerShowBean(){
@@ -89,6 +90,15 @@
}
public void setCheckstatus(String checkstatus) {
+
this.checkstatus = checkstatus;
}
+
+ public String getStatus() {
+ return status;
+ }
+
+ public void setStatus(String status) {
+ this.status = status;
+ }
}
diff --git a/src/main/java/com/supwisdom/dlpay/restaurant/bean/ShopSettlementSearchBean.java b/src/main/java/com/supwisdom/dlpay/restaurant/bean/ShopSettlementSearchBean.java
new file mode 100644
index 0000000..2a35f4f
--- /dev/null
+++ b/src/main/java/com/supwisdom/dlpay/restaurant/bean/ShopSettlementSearchBean.java
@@ -0,0 +1,15 @@
+package com.supwisdom.dlpay.restaurant.bean;
+
+import com.supwisdom.dlpay.system.bean.PageBean;
+
+public class ShopSettlementSearchBean extends PageBean {
+ private String shopid;
+
+ public String getShopid() {
+ return shopid;
+ }
+
+ public void setShopid(String shopid) {
+ this.shopid = shopid;
+ }
+}
diff --git a/src/main/java/com/supwisdom/dlpay/restaurant/controller/ShopSettlementController.java b/src/main/java/com/supwisdom/dlpay/restaurant/controller/ShopSettlementController.java
new file mode 100644
index 0000000..30cfe24
--- /dev/null
+++ b/src/main/java/com/supwisdom/dlpay/restaurant/controller/ShopSettlementController.java
@@ -0,0 +1,82 @@
+package com.supwisdom.dlpay.restaurant.controller;
+
+
+import com.google.gson.Gson;
+import com.supwisdom.dlpay.api.bean.JsonResult;
+import com.supwisdom.dlpay.framework.domain.TShop;
+import com.supwisdom.dlpay.framework.domain.TShopSettlement;
+import com.supwisdom.dlpay.framework.util.PageResult;
+import com.supwisdom.dlpay.framework.util.WebConstant;
+import com.supwisdom.dlpay.restaurant.bean.AreaSearchBean;
+import com.supwisdom.dlpay.restaurant.bean.ShopSettlementSearchBean;
+import com.supwisdom.dlpay.restaurant.domain.TArea;
+import com.supwisdom.dlpay.restaurant.service.AreaService;
+import com.supwisdom.dlpay.restaurant.service.ShopSettlementService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.stereotype.Controller;
+import org.springframework.ui.Model;
+import org.springframework.ui.ModelMap;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+@Controller
+@RequestMapping("/shopsettlement")
+public class ShopSettlementController {
+
+ @Autowired
+ private ShopSettlementService shopSettlementService;
+
+ @RequestMapping("/index")
+ public String indexView(ModelMap model) {
+ return "restaurant/shopsettlement/index";
+ }
+
+ @RequestMapping("/list")
+ @PreAuthorize("hasPermission('/shopsettlement/index','')")
+ @ResponseBody
+ public PageResult<TShopSettlement> getDataList(@RequestParam("page") Integer pageNo,
+ @RequestParam("limit") Integer pageSize,
+ @RequestParam(value = "searchkey", required = false) String searchKey) {
+ try {
+ if (null == pageNo || pageNo < 1) pageNo = WebConstant.PAGENO_DEFAULT;
+ if (null == pageSize || pageSize < 1) pageSize = WebConstant.PAGESIZE_DEFAULT;
+ ShopSettlementSearchBean searchBean = new ShopSettlementSearchBean();
+ searchBean.setPageNo(pageNo);
+ searchBean.setShopid(searchKey);
+ searchBean.setPageSize(pageSize);
+ return shopSettlementService.getAreaByKey(searchBean);
+ } catch (Exception e) {
+ e.printStackTrace();
+ return new PageResult<>(99, "系统查询错误");
+ }
+ }
+
+
+ @GetMapping("/loadadd")
+ @PreAuthorize("hasPermission('/shopsettlement/loadadd','')")
+ public String loadadd(Model model) {
+ return "restaurant/shopsettlement/form";
+ }
+
+ @PostMapping("/add")
+ @ResponseBody
+ public JsonResult add(@RequestBody TShopSettlement shopSettlement) {
+ if (shopSettlement != null) {
+ return shopSettlementService.saveShopSettlement(shopSettlement);
+ } else {
+ return JsonResult.error("添加失败");
+ }
+ }
+
+ @PostMapping("/delete")
+ @PreAuthorize("hasPermission('/shopsettlement/delete','')")
+ @ResponseBody
+ public JsonResult delfunc(@RequestParam Integer id) {
+ return shopSettlementService.deleteShopSettlement(id);
+ }
+
+}
diff --git a/src/main/java/com/supwisdom/dlpay/restaurant/dao/CardDao.java b/src/main/java/com/supwisdom/dlpay/restaurant/dao/CardDao.java
index 1136ace..088564c 100644
--- a/src/main/java/com/supwisdom/dlpay/restaurant/dao/CardDao.java
+++ b/src/main/java/com/supwisdom/dlpay/restaurant/dao/CardDao.java
@@ -19,6 +19,8 @@
List<TCard> findAllByCustid(String custid);
+ List<TCard> findAllByCustidAndStatus(String custid,String status);
+
List<TCard> findAllByCardnoAndStatus(String cardno,String status);
Integer countByCardno(String cardno);
diff --git a/src/main/java/com/supwisdom/dlpay/restaurant/dao/DevparaDao.java b/src/main/java/com/supwisdom/dlpay/restaurant/dao/DevparaDao.java
index 68af28a..6891e58 100644
--- a/src/main/java/com/supwisdom/dlpay/restaurant/dao/DevparaDao.java
+++ b/src/main/java/com/supwisdom/dlpay/restaurant/dao/DevparaDao.java
@@ -15,9 +15,15 @@
@Query("from TDevpara t where t.groupid=?1 order by t.paraname ")
List<TDevpara> findAllByGroupid(int groupid);
+ @Query("from TDevpara t where t.groupid=?1 and t.paraname=?2 order by t.paraname ")
+ List<TDevpara> findByGroupidAndParaname(int groupid,String paraname);
+
@Query("select t from TDevpara t,TDevparaGroup g where t.groupid=g.groupid and g.globalflag=true order by t.paraname ")
List<TDevpara> findSystemDefaultDevpara();
+ @Query("select t from TDevpara t,TDevparaGroup g where t.groupid=g.groupid and g.globalflag=true and t.paraname=?1 order by t.paraname ")
+ List<TDevpara> findSystemDefaultDevparaByParaname(String paraname);
+
@Query("from TDevpara t where t.groupid=?1 and t.paraname=?2")
TDevpara findById(Integer groupid, String paraname);
}
diff --git a/src/main/java/com/supwisdom/dlpay/restaurant/domain/TCard.java b/src/main/java/com/supwisdom/dlpay/restaurant/domain/TCard.java
index a839940..03686d8 100644
--- a/src/main/java/com/supwisdom/dlpay/restaurant/domain/TCard.java
+++ b/src/main/java/com/supwisdom/dlpay/restaurant/domain/TCard.java
@@ -27,7 +27,7 @@
public void setCardno(String cardno) {
this.cardno = cardno;
}
- @Column(name = "cardphyid" ,nullable = false,length = 8)
+ @Column(name = "cardphyid" ,length = 8)
public String getCardphyid() {
return cardphyid;
}
diff --git a/src/main/java/com/supwisdom/dlpay/restaurant/domain/TTransDtl.java b/src/main/java/com/supwisdom/dlpay/restaurant/domain/TTransDtl.java
index b14dc93..bda2bea 100644
--- a/src/main/java/com/supwisdom/dlpay/restaurant/domain/TTransDtl.java
+++ b/src/main/java/com/supwisdom/dlpay/restaurant/domain/TTransDtl.java
@@ -36,6 +36,7 @@
private String refno;
private String coreAccdate;
private String coreStatus;
+ private String managefeetype;
@Id
@@ -270,4 +271,13 @@
public void setRuleid(Integer ruleid) {
this.ruleid = ruleid;
}
+
+ @Column(name = "managefeetype", length = 15)
+ public String getManagefeetype() {
+ return managefeetype;
+ }
+
+ public void setManagefeetype(String managefeetype) {
+ this.managefeetype = managefeetype;
+ }
}
diff --git a/src/main/java/com/supwisdom/dlpay/restaurant/service/DeviceParamService.java b/src/main/java/com/supwisdom/dlpay/restaurant/service/DeviceParamService.java
index 94b18ca..0a729f4 100644
--- a/src/main/java/com/supwisdom/dlpay/restaurant/service/DeviceParamService.java
+++ b/src/main/java/com/supwisdom/dlpay/restaurant/service/DeviceParamService.java
@@ -30,6 +30,9 @@
@Transactional(rollbackFor = Exception.class, readOnly = true)
List<TDevpara> getDevparaInfo(Integer groupid);
+ @Transactional(rollbackFor = Exception.class, readOnly = true)
+ TDevpara getDevparaInfoByParaname(Integer groupid,String paraname);
+
@Transactional(rollbackFor = Exception.class)
boolean saveOrUpdateDevpara(int groupid, String groupname, Map<String, String> param) throws WebCheckException;
diff --git a/src/main/java/com/supwisdom/dlpay/restaurant/service/ShopSettlementService.java b/src/main/java/com/supwisdom/dlpay/restaurant/service/ShopSettlementService.java
index 7360907..dc506bb 100644
--- a/src/main/java/com/supwisdom/dlpay/restaurant/service/ShopSettlementService.java
+++ b/src/main/java/com/supwisdom/dlpay/restaurant/service/ShopSettlementService.java
@@ -1,6 +1,9 @@
package com.supwisdom.dlpay.restaurant.service;
+import com.supwisdom.dlpay.api.bean.JsonResult;
import com.supwisdom.dlpay.framework.domain.TShopSettlement;
+import com.supwisdom.dlpay.framework.util.PageResult;
+import com.supwisdom.dlpay.restaurant.bean.ShopSettlementSearchBean;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
@@ -15,5 +18,14 @@
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class,readOnly = true)
List<TShopSettlement> getShopByShopid(String shopid);
+ @Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class,readOnly = true)
+ PageResult<TShopSettlement> getAreaByKey(ShopSettlementSearchBean param);
+
+
+ @Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
+ JsonResult saveShopSettlement(TShopSettlement area);
+
+ @Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
+ JsonResult deleteShopSettlement(Integer id);
}
diff --git a/src/main/java/com/supwisdom/dlpay/restaurant/service/impl/CustomerServiceImpl.java b/src/main/java/com/supwisdom/dlpay/restaurant/service/impl/CustomerServiceImpl.java
index 8687c15..7c1e5d3 100644
--- a/src/main/java/com/supwisdom/dlpay/restaurant/service/impl/CustomerServiceImpl.java
+++ b/src/main/java/com/supwisdom/dlpay/restaurant/service/impl/CustomerServiceImpl.java
@@ -47,7 +47,7 @@
@Override
public PageResult<CustomerShowBean> getCustomerPage(CustomerSearchBean param) {
StringBuffer querySql = new StringBuffer("select t.cardno,c.custid,c.custname, " +
- "t.bankcardno,t.cardphyid,c.phone,c.custtype,c.checkstatus from tb_customer c " +
+ "t.bankcardno,t.cardphyid,c.phone,c.custtype,c.checkstatus,t.status from tb_customer c " +
"left join Tb_card t on t.custid=c.custid where 1=1 ");
StringBuffer countSql = new StringBuffer("select count(*) as cnt from tb_customer c " +
"left join Tb_card t on t.custid=c.custid where 1=1 ");
@@ -59,7 +59,7 @@
querySql.append(" and c.checkstatus = :checkstatus ");
countSql.append(" and c.checkstatus = :checkstatus ");
}
- querySql.append(" order by t.cardno ");
+ querySql.append("and t.status='normal' order by t.cardno ");
Query query = entityManager.createNativeQuery(querySql.toString());
Query countQuery = entityManager.createNativeQuery(countSql.toString());
if (!StringUtil.isEmpty(param.getCustname())) {
@@ -67,7 +67,7 @@
countQuery.setParameter("str", "%" + param.getCustname().trim() + "%");
}
if (!StringUtil.isEmpty(param.getCheckstatus())) {
- query.setParameter("checkstatus", param.getCheckstatus().trim() );
+ query.setParameter("checkstatus", param.getCheckstatus().trim());
countQuery.setParameter("checkstatus", param.getCheckstatus().trim());
}
query.setFirstResult((param.getPageNo() - 1) * param.getPageSize());
@@ -89,17 +89,14 @@
@Override
public JsonResult saveCustomer(CustomerSaveBean customer) {
- TCard card = new TCard();
+
TCustomer cus = new TCustomer();
if (!StringUtil.isEmpty(customer.getCustid())) {
Optional<TCustomer> opt1 = customerDao.findById(customer.getCustid());
if (opt1.isPresent()) {
cus = opt1.get();
}
- List<TCard> cardlist=cardDao.findAllByCustid(customer.getCustid());
- if(cardlist.size()>0){
- card=cardlist.get(0);
- }
+
}
cus.setCusttype(customer.getCusttype());
cus.setBatchno(customer.getBatchno());
@@ -112,26 +109,36 @@
cus.setCheckstatus(RestaurantConstant.STATUS_CHECKSTATUS_UNCHECK);
cus = customerDao.save(cus);
if (null != cus) {
- String cardverno = systemUtilService.getCardverno();
+
String date = DateUtil.getNow("yyyyMMdd");
+ List<TCard> cardlist = cardDao.findAllByCustidAndStatus(customer.getCustid(),RestaurantConstant.STATUS_CARD_NORMAL);
+ if (cardlist.size() > 0) {
+ TCard ocard = cardlist.get(0);
+ String cardverno=systemUtilService.getCardverno();
+ ocard.setStatus(RestaurantConstant.STATUS_CARD_LOGOUT);
+ cardDao.save(ocard);
+ saveCardver(cardverno, date, ocard, ocard.getStatus(), ocard.getStatus(), 1);
+ }
+ TCard card = new TCard();
+ String cardverno = systemUtilService.getCardverno();
card.setCardno(customer.getCardno());
card.setOpendate(date);
card.setCustid(cus.getCustid());
card.setStatus(RestaurantConstant.STATUS_CARD_NORMAL);
card.setTransstatus(RestaurantConstant.STATUS_CARD_NORMAL);
- card.setCardphyid(customer.getCardphyid());
+ // card.setCardphyid(customer.getCardphyid());
card.setCardverno(cardverno);
card.setBankcardno(customer.getBankcardno());
card.setExpiredate("");
card = cardDao.save(card);
- saveCardver(cardverno, date, card, card.getStatus(), RestaurantConstant.STATUS_CARD_NORMAL,1);
+ // saveCardver(cardverno, date, card, card.getStatus(), RestaurantConstant.STATUS_CARD_NORMAL, 1);
}
return JsonResult.ok("成功");
}
- private void saveCardver(String cardverno, String date, TCard card, String status, String optype,Integer addderflag) {
+ private void saveCardver(String cardverno, String date, TCard card, String status, String optype, Integer addderflag) {
TCardver tCardver = new TCardver();
tCardver.setAccdate(date);
tCardver.setCardno(card.getCardno());
@@ -156,7 +163,7 @@
c.setCardverno(cardverno);
cardDao.save(c);
String date = DateUtil.getNow("yyyyMMdd");
- saveCardver(cardverno, date, c, c.getStatus(), RestaurantConstant.STATUS_CARD_LOGOUT,0);
+ saveCardver(cardverno, date, c, c.getStatus(), RestaurantConstant.STATUS_CARD_LOGOUT, 0);
}
@@ -208,7 +215,7 @@
d.setBankcardno((String) data[i][2]);
String custtype = (String) data[i][3];
d.setCusttype(Integer.parseInt(custtype));
- d.setCardphyid((String) data[i][4]);
+ // d.setCardphyid((String) data[i][4]);
if (null != data[i][5]) {
d.setPhone((String) data[i][5]);
}
@@ -279,8 +286,8 @@
public TCustomer getCustomerByCardno(String cardno) {
if (!StringUtil.isEmpty(cardno)) {
- List<TCard> clst=cardDao.findAllByCardnoAndStatus(cardno,"normal");
- if(clst.size()<=0){
+ List<TCard> clst = cardDao.findAllByCardnoAndStatus(cardno, "normal");
+ if (clst.size() <= 0) {
return null;
}
diff --git a/src/main/java/com/supwisdom/dlpay/restaurant/service/impl/DeviceParamServiceImpl.java b/src/main/java/com/supwisdom/dlpay/restaurant/service/impl/DeviceParamServiceImpl.java
index 3a18889..15187d1 100644
--- a/src/main/java/com/supwisdom/dlpay/restaurant/service/impl/DeviceParamServiceImpl.java
+++ b/src/main/java/com/supwisdom/dlpay/restaurant/service/impl/DeviceParamServiceImpl.java
@@ -103,6 +103,21 @@
}
@Override
+ public TDevpara getDevparaInfoByParaname(Integer groupid,String paraname) {
+ TDevpara result;
+ if (null != groupid && groupid > 0) {
+ result = devparaDao.findByGroupidAndParaname(groupid,paraname).get(0);
+ } else {
+ result = devparaDao.findSystemDefaultDevparaByParaname(paraname).get(0); //默认
+ }
+ if (null!=result) {
+ return result;
+ } else {
+ return null;
+ }
+ }
+
+ @Override
public boolean saveOrUpdateDevpara(int groupid, String groupname, Map<String, String> param) throws WebCheckException {
TDevparaGroup group;
if (groupid == 0) {
diff --git a/src/main/java/com/supwisdom/dlpay/restaurant/service/impl/ShopSettlementServiceImpl.java b/src/main/java/com/supwisdom/dlpay/restaurant/service/impl/ShopSettlementServiceImpl.java
index c4195b3..aa78766 100644
--- a/src/main/java/com/supwisdom/dlpay/restaurant/service/impl/ShopSettlementServiceImpl.java
+++ b/src/main/java/com/supwisdom/dlpay/restaurant/service/impl/ShopSettlementServiceImpl.java
@@ -6,6 +6,7 @@
import com.supwisdom.dlpay.framework.util.PageResult;
import com.supwisdom.dlpay.framework.util.StringUtil;
import com.supwisdom.dlpay.restaurant.bean.AreaSearchBean;
+import com.supwisdom.dlpay.restaurant.bean.ShopSettlementSearchBean;
import com.supwisdom.dlpay.restaurant.dao.AreaDao;
import com.supwisdom.dlpay.restaurant.domain.TArea;
import com.supwisdom.dlpay.restaurant.service.AreaService;
@@ -32,4 +33,26 @@
public List<TShopSettlement> getShopByShopid(String shopid) {
return shopSettlementDao.findByShopid(shopid);
}
+
+ @Override
+ public PageResult<TShopSettlement> getAreaByKey(ShopSettlementSearchBean param) {
+ Pageable pageable = PageRequest.of(param.getPageNo() - 1, param.getPageSize()
+ , Sort.by("shopid"));
+ if (!StringUtil.isEmpty(param.getShopid())) {
+ return new PageResult<>(shopSettlementDao.findAllByShopidContaining(param.getShopid(), pageable));
+ }
+ return new PageResult<>(shopSettlementDao.findAll(pageable));
+ }
+
+ @Override
+ public JsonResult saveShopSettlement(TShopSettlement shop) {
+ shopSettlementDao.save(shop);
+ return JsonResult.ok("成功");
+ }
+
+ @Override
+ public JsonResult deleteShopSettlement(Integer id) {
+ shopSettlementDao.deleteById(id);
+ return JsonResult.ok("成功");
+ }
}
diff --git a/src/main/resources/data.sql b/src/main/resources/data.sql
index c819258..44cc25b 100644
--- a/src/main/resources/data.sql
+++ b/src/main/resources/data.sql
@@ -121,7 +121,7 @@
INSERT INTO "tb_function"("id", "createtime", "isleaf", "lastsaved", "menuicon", "menuurl", "name", "ordernum", "parentid") VALUES (18, NULL, 1, NULL, '', '/whitelistcheck/index', '就餐白名单审核', 2, 11);
INSERT INTO "tb_function"("id", "createtime", "isleaf", "lastsaved", "menuicon", "menuurl", "name", "ordernum", "parentid") VALUES (31, NULL, 1, NULL, '', '/whitelistbind/devbind', '就餐白名单设备绑定', 3, 11);
INSERT INTO "tb_function" (id,createtime,isleaf,lastsaved,menuicon,menuurl,name,ordernum,parentid) VALUES (11, NULL, 0, NULL, 'layui-icon-util', '#', '就餐白名单管理', 7, -1);
-
+INSERT INTO tb_function"("id", "createtime", "isleaf", "lastsaved", "menuicon", "menuurl", "name", "ordernum", "parentid") VALUES (32, NULL, 1, NULL, '', '/shopsettlement/index', '商户管理', 2, 22);
@@ -300,6 +300,10 @@
INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a480073', 3, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ee5316d240e8e016d24101a480074', 18, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ea57c6e26421b016e264517d40044', 93, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ea57c6e26421b016e264517d40045', 73, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+INSERT INTO "tb_permission"("id", "resid", "role_func_id", "roleid") VALUES ('297ea57c6e26421b016e264517d40046', 92, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
+
INSERT INTO "tb_resource" (id,code,function_id,name,uri) VALUES (4, '1', 4, '添加功能', '/function/add');
@@ -443,7 +447,7 @@
INSERT INTO "tb_role_function"("id", "functionid", "permissions", "roleid") VALUES ('297ee5316d2446b3016d2447fc74006a', 11, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
INSERT INTO "tb_role_function"("id", "functionid", "permissions", "roleid") VALUES ('297ee5316d24bd0e016d24c02e250039', 8, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
-
+INSERT INTO "tb_role_function"("id", "functionid", "permissions", "roleid") VALUES ('297ea57c6e26421b016e264517d30043', 32, NULL, 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
INSERT INTO "tb_shopsettlement" (shopsettlementno,operno,shopid,shopname) VALUES ('1', '1234', '2000000012', '测试商户');
INSERT INTO "tb_subject" (subjno,balflag,displayflag,endflag,fsubjno,opendate,subjlevel,subjname,subjtype) VALUES ('1001', 1, 'y', 1, NULL, 20190604, 1, '库存现金', 1);
diff --git a/src/main/resources/templates/restaurant/customer/form.html b/src/main/resources/templates/restaurant/customer/form.html
index 748db9d..0ae132f 100644
--- a/src/main/resources/templates/restaurant/customer/form.html
+++ b/src/main/resources/templates/restaurant/customer/form.html
@@ -16,13 +16,13 @@
</div>
</div>
- <div class="layui-form-item">
+ <!-- <div class="layui-form-item">
<label class="layui-form-label"><span style="color: red">* </span>物理卡号</label>
<div class="layui-input-block">
<input name="cardphyid" placeholder="请输入" type="text" class="layui-input" maxlength="20"
lay-verify="required" required/>
</div>
- </div>
+ </div>-->
<div class="layui-form-item">
<label class="layui-form-label">人员类别</label>
diff --git a/src/main/resources/templates/restaurant/customer/index.html b/src/main/resources/templates/restaurant/customer/index.html
index 715a708..085f88e 100644
--- a/src/main/resources/templates/restaurant/customer/index.html
+++ b/src/main/resources/templates/restaurant/customer/index.html
@@ -59,6 +59,19 @@
}
},
{
+ field: 'status', title: '卡状态', align: 'center', width: 120, sort: true, templet: function (d) {
+ if ('normal' == d.status) {
+ return '<span class="layui-badge layui-bg-green">正常</span>';
+ } else if ('logout' == d.status) {
+ return '<span class="layui-badge layui-bg-gray">注销</span>';
+ } else if ('fail' == d.status) {
+ return '<span class="layui-badge layui-bg-gray">失败</span>';
+ } else {
+ return d.status;
+ }
+ }
+ },
+ {
field: 'custtype', width:100, title: '人员类别', templet: function (item) {
if(item.custtype==null){
return ''
diff --git a/src/main/resources/templates/restaurant/shopsettlement/form.html b/src/main/resources/templates/restaurant/shopsettlement/form.html
new file mode 100644
index 0000000..76e8d79
--- /dev/null
+++ b/src/main/resources/templates/restaurant/shopsettlement/form.html
@@ -0,0 +1,79 @@
+<!-- operator表单弹窗 -->
+<form id="shopsettle-form" lay-filter="shopsettle-form" class="layui-form model-form">
+ <input name="shopSettlementno" id="shopSettlementno" type="hidden"/>
+ <div class="layui-form-item">
+ <label class="layui-form-label">商户名称</label>
+ <div class="layui-input-block">
+ <input name="shopname" placeholder="商户名不能重复" type="text" class="layui-input" maxlength="20"
+ lay-verify="required|shopname" required/>
+ </div>
+ </div>
+
+ <div class="layui-form-item">
+ <label class="layui-form-label">商户号</label>
+ <div class="layui-input-block">
+ <input name="shopid" placeholder="请输入" type="text" class="layui-input"/>
+ </div>
+ </div>
+
+ <div class="layui-form-item model-form-footer">
+ <button class="layui-btn layui-btn-primary" type="button" ew-event="closeDialog">取消</button>
+ <button class="layui-btn" lay-filter="shopsettle-form-submit" lay-submit id="shopsettle-submitbtn">保存</button>
+ </div>
+</form>
+
+<script>
+ layui.use(['layer', 'admin', 'form', 'formSelects'], function () {
+ var layer = layui.layer;
+ var admin = layui.admin;
+ var form = layui.form;
+
+
+ var url = '[[@{/shopsettlement/add}]]';
+ // 回显user数据
+ var func = admin.getTempData('t_shopsettle');
+ if (func) {
+ $('input[name="shopsettlementno"]').attr('readonly', 'readonly');
+ form.val('shopsettle-form', func);
+ }
+
+ // 表单提交事件
+ form.on('submit(shopsettle-form-submit)', function (data) {
+ console.log(data.field);
+ debugger
+ layer.load(2);
+ let token = $("meta[name='_csrf_token']").attr("value");
+ $.ajax({
+ type: "POST",
+ dataType: "json",
+ url: url,
+ headers: {
+ 'Accept': 'application/json',
+ 'Content-Type': 'application/json',
+ 'X-CSRF-TOKEN': token,
+ },
+ data: JSON.stringify(data.field),
+ success: function (result) {
+ layer.closeAll('loading');
+ if (result.code == 200) {
+ layer.msg(result.msg, {icon: 1});
+ admin.finishPopupCenter();
+ } else if (result.code == 401) {
+ layer.msg(result.msg, {icon: 2, time: 1500}, function () {
+ location.replace('/login');
+ }, 1000);
+ return;
+ } else {
+ console.log('err:' + result.code);
+ layer.msg(result.msg, {icon: 2});
+ }
+ },
+ error: function () {
+ layer.closeAll('loading');
+ layer.msg("请求服务器失败!", {icon: 2});
+ }
+ });
+ return false;
+ });
+ });
+</script>
\ No newline at end of file
diff --git a/src/main/resources/templates/restaurant/shopsettlement/index.html b/src/main/resources/templates/restaurant/shopsettlement/index.html
new file mode 100644
index 0000000..80cf02e
--- /dev/null
+++ b/src/main/resources/templates/restaurant/shopsettlement/index.html
@@ -0,0 +1,112 @@
+<div class="layui-card">
+ <div class="layui-card-header">
+ <h2 class="header-title">商户维护</h2>
+ <span class="layui-breadcrumb pull-right">
+ <a href="#">商户维护</a>
+ <a><cite>商户维护</cite></a>
+ </span>
+ </div>
+ <div class="layui-card-body">
+ <div class="layui-form toolbar">
+ 搜索:
+ <input id="shopsettle-search-value" class="layui-input search-input" type="text" placeholder="输入功能名称"/> 
+ <button id="shopsettle-btn-search" class="layui-btn icon-btn" data-type="search"><i class="layui-icon"></i>搜索
+ </button>
+ <button id="shopsettle-btn-add" class="layui-btn icon-btn" data-type="add"><i class="layui-icon"></i>添加商户</button>
+ </div>
+ <table class="layui-table" id="shopsettle-table" lay-filter="shopsettle-table"></table>
+ </div>
+</div>
+<script>
+
+ layui.use(['form', 'table', 'layer', 'admin', 'element'], function () {
+ let form = layui.form;
+ let table = layui.table;
+ let admin = layui.admin;
+
+ form.render('select');
+
+ // 渲染表格
+ table.render({
+ elem: '#shopsettle-table',
+ url: '[[@{/shopsettlement/list}]]',
+ page: true,
+ cols: [
+ [
+ /* {field: 'id', title: '商户号', width: 80, fixed: 'left', sort: true},*/
+ {field: 'shopname', title: '商户名称', sort: true},
+
+ {field: 'shopid', sort: true, title: '商户号'},
+ {
+ field: 'shopsettlementno', align: 'center', title: '操作', fixed: 'right', templet: function (item) {
+ return ' <a class="layui-btn layui-btn-xs" lay-event="shopsettle-edit"><i class="layui-icon layui-icon-edit"></i>编辑</a> ' +
+ ' <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="shopsettle-del"><i class="layui-icon layui-icon-delete"></i>删除</a>'
+ }
+ }
+ ]
+ ]
+ });
+ // 搜索按钮点击事件
+ $('#shopsettle-btn-search').click(function () {
+ let key = $('#shopsettle-search-value').val();
+ table.reload('shopsettle-table', {where: {searchkey: key}, page: {curr: 1}});
+ });
+ $('#shopsettle-btn-add').click(function () {
+ showModel();
+ });
+ let showModel = function (data) {
+ console.log(data);
+ let title = data ? '修改商户' : '添加商户';
+ admin.putTempData('t_shopsettle', data);
+ admin.popupCenter({
+ title: title,
+ path: '[[@{/shopsettlement/loadadd}]]',
+ finish: function () {
+ table.reload('shopsettle-table', {});
+ }
+ });
+ };
+
+
+ // 工具条点击事件
+ table.on('tool(shopsettle-table)', function (obj) {
+ let data = obj.data;
+ let layEvent = obj.event;
+ console.log(data);
+ if (layEvent === 'shopsettle-edit') {
+ showModel(data);
+ } else if (layEvent === 'shopsettle-del') {
+ showDelete(data);
+ }
+ });
+ let showDelete = function (data) {
+ layer.confirm('确定要删除吗?', function (i) {
+ layer.close(i);
+ layer.load(2);
+ let token = $("meta[name='_csrf_token']").attr("value");
+ admin.go('[[@{/shopsettlement/delete}]]', {
+ id: data.shopSettlementno,
+ _csrf: token
+ }, function (data) {
+ console.log(data.code);
+ layer.closeAll('loading');
+ if (data.code == 200) {
+ layer.msg(data.msg, {icon: 1});
+ } else if (data.code == 401) {
+ layer.msg(data.msg, {icon: 2, time: 1500}, function () {
+ location.replace('/login');
+ }, 1000);
+ return;
+ } else {
+ layer.msg(data.msg, {icon: 2});
+ }
+ table.reload('shopsettle-table', {});
+ }, function (ret) {
+ console.log(ret);
+ layer.closeAll('loading');
+ layer.msg('请求失败了,请稍后再试', {icon: 2});
+ });
+ });
+ }
+ });
+</script>