客户导入功能修改
diff --git a/config/application-devel-pg.properties b/config/application-devel-pg.properties
index 476c4a4..0a33918 100644
--- a/config/application-devel-pg.properties
+++ b/config/application-devel-pg.properties
@@ -30,4 +30,4 @@
payapi.appid=200001
cron.offlinedtl= 0 0/5 * * * ?
-payapi.logintime= 0 0/20 * * * ?
\ No newline at end of file
+payapi.logintime= 0 0/5 * * * ?
\ No newline at end of file
diff --git a/src/main/java/com/supwisdom/dlpay/AppLoginRunner.java b/src/main/java/com/supwisdom/dlpay/AppLoginRunner.java
index dd01d04..e9b9f49 100644
--- a/src/main/java/com/supwisdom/dlpay/AppLoginRunner.java
+++ b/src/main/java/com/supwisdom/dlpay/AppLoginRunner.java
@@ -35,9 +35,6 @@
logger.info("登录核心平台");
doLogin();
}
-
-
- @Scheduled(cron = "${payapi.logintime}")
private void doLogin() {
TBusinesspara appid=businessparaDao.findByParakey("payapi.appid");
TBusinesspara secret=businessparaDao.findByParakey("payapi.secret");
@@ -55,4 +52,17 @@
}
+ @Scheduled(cron = "0 0/5 * * * ?")
+ private void doRefresh() {
+ try{
+ ApiLoginHelper helper = new ApiLoginHelper(apiLoginProxy);
+ helper.refresh();
+ logger.info("刷新成功");
+ }catch (Exception e){
+ logger.error("刷新成功");
+ }
+
+ }
+
+
}
diff --git a/src/main/java/com/supwisdom/dlpay/api/controller/PosPayController.java b/src/main/java/com/supwisdom/dlpay/api/controller/PosPayController.java
index 1c75722..863e8ad 100644
--- a/src/main/java/com/supwisdom/dlpay/api/controller/PosPayController.java
+++ b/src/main/java/com/supwisdom/dlpay/api/controller/PosPayController.java
@@ -90,14 +90,14 @@
@RequestMapping(value = "/accquery", method = RequestMethod.POST)
@ResponseBody
- public PosPayAccqueryResp querysales(@ModelAttribute PosPayAccqueryReq req) {
+ public PosPayAccqueryResp accquery(@ModelAttribute PosPayAccqueryReq req) {
PosPayAccqueryResp resp = posPayService.AccountQuery(req);
return resp;
}
@RequestMapping(value = "/offlinetransdtl", method = RequestMethod.POST)
@ResponseBody
- public PosPayOfflineDtlResp querysales(@ModelAttribute PosPayOfflineDtlReq req) {
+ public PosPayOfflineDtlResp offlinetransdtl(@ModelAttribute PosPayOfflineDtlReq req) {
PosPayOfflineDtlResp resp = posPayService.saveOfflineDtl(req);
return resp;
}
@@ -105,7 +105,7 @@
@RequestMapping(value = "/globalparam", method = RequestMethod.POST)
@ResponseBody
- public PosPayGolbalParamResp querysales(@ModelAttribute PosPayGolbalParamReq req) {
+ public PosPayGolbalParamResp globalparam(@ModelAttribute PosPayGolbalParamReq req) {
PosPayGolbalParamResp resp = posPayService.getBusinessParam(req);
return resp;
}
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 b0aa58b..22db50d 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
@@ -160,7 +160,7 @@
cardphyid = req.getCardphyid();
}
- TCard tCard = cardService.getCardByCardnoAndCardphyid(cardno, cardphyid);
+ TCard tCard = cardService.getCardByCardno(cardno);
if (null == tCard) {
resp.setRetcode(ErrorCode.ERRIF_CARD_NOTEXIST);
resp.setRetmsg("卡号[" + req.getCardno() + "]不存在");
@@ -662,7 +662,7 @@
return resp;
}
- TCard card = cardService.getCardByCardnoAndCardphyid(req.getCardno(), req.getCardphyid());
+ TCard card = cardService.getCardByCardno(req.getCardno());
if (null == card) {
resp.setRetcode(ErrorCode.ERRIF_CARD_NOTEXIST);
@@ -742,7 +742,7 @@
cardphyid = req.getCardphyid();
}
- TCard tCard = cardService.getCardByCardnoAndCardphyid(cardno, cardphyid);
+ TCard tCard = cardService.getCardByCardno(cardno);
if (null == tCard) {
err += "卡号[" + req.getCardno() + "]不存在;";
} else {
diff --git a/src/main/java/com/supwisdom/dlpay/restaurant/bean/CustomerSaveBean.java b/src/main/java/com/supwisdom/dlpay/restaurant/bean/CustomerSaveBean.java
index 8a5c01a..6d50341 100644
--- a/src/main/java/com/supwisdom/dlpay/restaurant/bean/CustomerSaveBean.java
+++ b/src/main/java/com/supwisdom/dlpay/restaurant/bean/CustomerSaveBean.java
@@ -16,6 +16,7 @@
private String cardno;
private String cardphyid;
private String bankcardno;
+ private Integer savecardflag;
public String getCustid() {
return custid;
@@ -122,6 +123,14 @@
this.bankcardno = bankcardno;
}
+ public Integer getSavecardflag() {
+ return savecardflag;
+ }
+
+ public void setSavecardflag(Integer savecardflag) {
+ this.savecardflag = savecardflag;
+ }
+
@Override
public String toString() {
return "CustomerSaveBean{" +
diff --git a/src/main/java/com/supwisdom/dlpay/restaurant/controller/CustomerController.java b/src/main/java/com/supwisdom/dlpay/restaurant/controller/CustomerController.java
index b1be118..8497b6f 100644
--- a/src/main/java/com/supwisdom/dlpay/restaurant/controller/CustomerController.java
+++ b/src/main/java/com/supwisdom/dlpay/restaurant/controller/CustomerController.java
@@ -87,6 +87,7 @@
@ResponseBody
public JsonResult add(@RequestBody CustomerSaveBean customer) {
if (customer != null) {
+ customer.setSavecardflag(0);
return customerService.saveCustomer(customer);
} else {
return JsonResult.error("添加失败");
@@ -114,9 +115,9 @@
@PreAuthorize("hasPermission('/customer/download','')")
@ResponseBody
public JsonResult downloadfile(HttpServletRequest request, HttpServletResponse response) throws Exception{
- String[] titles0 = {"姓名", "市名卡号", "市名卡银行卡号","人员类别号","物理卡号","手机(选填)"
+ String[] titles0 = {"姓名", "市名卡号", "市名卡银行卡号","人员类别号","手机(选填)"
}; //表头
- String[][] info0 = {{"张三", "123456", "3000000","1","12345678","12341234123"
+ String[][] info0 = {{"张三", "123456", "3000000","1","12341234123"
}}; // 示例内容
String fileName0 = "客户导入模板";// 保存数据
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 088564c..1f672d8 100644
--- a/src/main/java/com/supwisdom/dlpay/restaurant/dao/CardDao.java
+++ b/src/main/java/com/supwisdom/dlpay/restaurant/dao/CardDao.java
@@ -25,5 +25,7 @@
Integer countByCardno(String cardno);
+ Integer countByBankcardno(String bankcardno);
+
List<TCard> findAllByCardnoAndCardphyidAndStatus(String cardno,String cardphyid,String status);
}
diff --git a/src/main/java/com/supwisdom/dlpay/restaurant/dao/CustomerDao.java b/src/main/java/com/supwisdom/dlpay/restaurant/dao/CustomerDao.java
index 40e6f99..4b7e1f4 100644
--- a/src/main/java/com/supwisdom/dlpay/restaurant/dao/CustomerDao.java
+++ b/src/main/java/com/supwisdom/dlpay/restaurant/dao/CustomerDao.java
@@ -15,4 +15,6 @@
Page<TCustomer> findAllByCustnameContaining(String custname, Pageable pageable);
+ Integer countByCustname(String custname);
+
}
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 7c1e5d3..05ebb8b 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
@@ -59,7 +59,7 @@
querySql.append(" and c.checkstatus = :checkstatus ");
countSql.append(" and c.checkstatus = :checkstatus ");
}
- querySql.append("and t.status='normal' order by t.cardno ");
+ querySql.append(" order by t.cardno ");
Query query = entityManager.createNativeQuery(querySql.toString());
Query countQuery = entityManager.createNativeQuery(countSql.toString());
if (!StringUtil.isEmpty(param.getCustname())) {
@@ -105,34 +105,37 @@
cus.setCustname(customer.getCustname());
cus.setIdno(customer.getIdno());
cus.setIdtype(customer.getIdtype());
+ cus.setBatchno(customer.getBatchno());
cus.setStatus(RestaurantConstant.STATUS_CARD_NORMAL);
cus.setCheckstatus(RestaurantConstant.STATUS_CHECKSTATUS_UNCHECK);
cus = customerDao.save(cus);
if (null != cus) {
-
- 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);
+ if(0==customer.getSavecardflag()){
+ 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);
+ return JsonResult.ok("成功");
+ }
+ 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.setCardverno(cardverno);
+ card.setBankcardno(customer.getBankcardno());
+ card.setExpiredate("");
+ card = cardDao.save(card);
+ // saveCardver(cardverno, date, card, card.getStatus(), RestaurantConstant.STATUS_CARD_NORMAL, 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.setCardverno(cardverno);
- card.setBankcardno(customer.getBankcardno());
- card.setExpiredate("");
- card = cardDao.save(card);
- // saveCardver(cardverno, date, card, card.getStatus(), RestaurantConstant.STATUS_CARD_NORMAL, 1);
- }
+ }
return JsonResult.ok("成功");
}
@@ -159,9 +162,7 @@
String cardverno = systemUtilService.getCardverno();
List<TCard> card = cardDao.findAllByCustid(custid);
for (TCard c : card) {
- c.setStatus(RestaurantConstant.STATUS_CARD_LOGOUT);
- c.setCardverno(cardverno);
- cardDao.save(c);
+ cardDao.deleteById(c.getCardno());
String date = DateUtil.getNow("yyyyMMdd");
saveCardver(cardverno, date, c, c.getStatus(), RestaurantConstant.STATUS_CARD_LOGOUT, 0);
}
@@ -180,7 +181,6 @@
return JsonResult.error("文件格式错误,请选择excel文件格式(.xls/.xlsx)");
}
- List<CustomerSaveBean> sList = new ArrayList<>();
// InputStream excelstream = new FileInputStream(savePath+"/"+fname);
InputStream excelstream = file.getInputStream();
List<Object[][]> oList = null;
@@ -198,28 +198,38 @@
String msg = "";
Integer successCnt = 0;
Integer failCnt = 0;
+ String batchno = DateUtil.getNow("yyyyMMddHHmmss");
for (Object[][] data : oList) {
for (int i = 1; i < data.length; i++) {
+ String custname=(String) data[i][0];
+ String bankcardno=(String) data[i][2];
if (StringUtil.isEmpty((String) data[i][0]) || StringUtil.isEmpty((String) data[i][1]) || StringUtil.isEmpty((String) data[i][2])) {
msg = msg + "第" + i + "行,关键字段缺失。<br/>";
failCnt += 1;
- } else if (cardDao.countByCardno((String) data[i][1]) > 0) {
- msg = msg + "第" + i + "行,该市名卡已存在。<br/>";
+ } else if (customerDao.countByCustname(custname) > 0&&cardDao.countByBankcardno(bankcardno)>0&&cardDao.countByCardno((String) data[i][1]) > 0) {
+ msg = msg + "第" + i + "行,该客户在系统中已存在。<br/>";
failCnt += 1;
} else {
CustomerSaveBean d = new CustomerSaveBean();
- d.setCustname((String) data[i][0]);
+ d.setCustname(custname);
String cardno = (String) data[i][1];
d.setCardno(cardno);
- d.setBankcardno((String) data[i][2]);
+ d.setBankcardno(bankcardno);
String custtype = (String) data[i][3];
d.setCusttype(Integer.parseInt(custtype));
- // d.setCardphyid((String) data[i][4]);
- if (null != data[i][5]) {
- d.setPhone((String) data[i][5]);
+ if (null != data[i][4]) {
+ d.setPhone((String) data[i][4]);
}
- sList.add(d);
+ if(cardDao.countByCardno((String) data[i][1]) > 0){
+ d.setSavecardflag(1);
+ msg = msg + "第" + i+1 + "行,卡号已存在,请手动添加市名卡号和银行卡号。<br/>";
+ }else{
+ d.setSavecardflag(0);
+ }
+ d.setBatchno(batchno);
+
+ saveCustomer(d);
successCnt += 1;
}
}
@@ -228,14 +238,10 @@
// resp.setMsg("成功导入了"+sList.size()+"条信息");
resp.setMsg(String.format(Locale.CHINESE, msg));
return resp;*/
- String batchno = DateUtil.getNow("yyyyMMddHHmmss");
- if (StringUtil.isEmpty(msg)) {
- for (CustomerSaveBean d : sList) {
- d.setBatchno(batchno);
- saveCustomer(d);
- }
- return JsonResult.ok("成功导入" + sList.size() + "条信息");
+
+ if (StringUtil.isEmpty(msg)) {
+ return JsonResult.ok("成功导入" + oList.size() + "条信息");
}
msg = "导入成功" + successCnt + "条,导入失败" + failCnt + "条<br/>" + msg;
diff --git a/src/main/resources/data.sql b/src/main/resources/data.sql
index 44cc25b..8c00c84 100644
--- a/src/main/resources/data.sql
+++ b/src/main/resources/data.sql
@@ -121,14 +121,14 @@
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);
+INSERT INTO tb_function"("id", "createtime", "isleaf", "lastsaved", "menuicon", "menuurl", "name", "ordernum", "parentid") VALUES (32, NULL, 1, NULL, '', '/shopsettlement/index', '商户管理', 2, 10);
-INSERT INTO "tb_mealtype" (mealtype,endtime,lastsaved,mealname) VALUES ('dinner', '200000', '20190709102922', '晚餐');
-INSERT INTO "tb_mealtype" (mealtype,endtime,lastsaved,mealname) VALUES ('lunch', '140000', '20190709102922', '中午');
-INSERT INTO "tb_mealtype" (mealtype,endtime,lastsaved,mealname) VALUES ('breakfast', '100000', '20190709102803', '早餐');
+INSERT INTO "tb_mealtype" (mealtype,endtime,lastsaved,mealname) VALUES ('dinner', '235959', '20190709102922', '晚餐');
+INSERT INTO "tb_mealtype" (mealtype,endtime,lastsaved,mealname) VALUES ('lunch', '160000', '20190709102922', '中午');
+INSERT INTO "tb_mealtype" (mealtype,endtime,lastsaved,mealname) VALUES ('breakfast', '110000', '20190709102803', '早餐');
INSERT INTO "tb_oper_role" (id,operid,roleid) VALUES ('2c9cab836a90185f016a901b005f001b', '402882816a8fe884016a8fe8c0530000', '2c9cab836a8af5d5016a8af6ece20000');
INSERT INTO "tb_oper_role" (id,operid,roleid) VALUES ('ff8080816aaf2ec3016aaf30c1b60007', 'LOR2IwRkbOjp+sVG9KR2BpHZbwGKepS4', 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
INSERT INTO "tb_oper_role" (id,operid,roleid) VALUES ('ff8080816ab96daf016ab9743dc60050', '2c9cab836a9666e0016a96694bbb0004', 'd1yctWs5+ks0iQN3m9bUvRHus6HbKbrs');
@@ -400,6 +400,10 @@
INSERT INTO "tb_resource"("id", "code", "function_id", "name", "uri") VALUES (51, '', 31, '查询', '/whitelistbind/devbind');
INSERT INTO "tb_resource"("id", "code", "function_id", "name", "uri") VALUES (72, '', 31, '绑定', '/whitelistbind/dobinddev');
+INSERT INTO "tb_resource"("id", "code", "function_id", "name", "uri") VALUES (73, '''', 32, ''查询'', ''/shopsettlement/index'');
+INSERT INTO "tb_resource"("id", "code", "function_id", "name", "uri") VALUES (92, '''', 32, ''添加'', ''/shopsettlement/loadadd'');
+INSERT INTO "tb_resource"("id", "code", "function_id", "name", "uri") VALUES (93, '''', 32, ''删除'', ''/shopsettlement/delete'');
+
diff --git a/src/main/resources/templates/restaurant/customer/import.html b/src/main/resources/templates/restaurant/customer/import.html
index 2d3d730..9b6ddaa 100644
--- a/src/main/resources/templates/restaurant/customer/import.html
+++ b/src/main/resources/templates/restaurant/customer/import.html
@@ -18,7 +18,7 @@
</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 layui-btn-primary" type="button" ew-event="closeDialog">关闭</button>
<button class="layui-btn" lay-filter="customer-form-import" lay-submit id="importbtn">保存</button>
</div>
</form>
diff --git a/src/main/resources/templates/restaurant/customer/index.html b/src/main/resources/templates/restaurant/customer/index.html
index 085f88e..4ac3c6c 100644
--- a/src/main/resources/templates/restaurant/customer/index.html
+++ b/src/main/resources/templates/restaurant/customer/index.html
@@ -42,7 +42,6 @@
[
{field: 'custname', sort: true, width: 120, title: '客户姓名'},
{field: 'cardno', sort: true,width: 120, title: '市名卡号'},
- {field: 'cardphyid', sort: true, title: '物理卡号'},
{field: 'phone', title: '联系电话'},
{field: 'bankcardno', sort: true, width: 200, title: '银行卡号'},
{
@@ -58,19 +57,7 @@
}
}
},
- {
- 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){
diff --git a/src/main/resources/templates/restaurant/shopsettlement/index.html b/src/main/resources/templates/restaurant/shopsettlement/index.html
index 80cf02e..140ab53 100644
--- a/src/main/resources/templates/restaurant/shopsettlement/index.html
+++ b/src/main/resources/templates/restaurant/shopsettlement/index.html
@@ -9,7 +9,7 @@
<div class="layui-card-body">
<div class="layui-form toolbar">
搜索:
- <input id="shopsettle-search-value" class="layui-input search-input" type="text" placeholder="输入功能名称"/> 
+ <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>