添加字典,导入payapi framework,修改页面的id
diff --git a/build.gradle b/build.gradle
index d7c257e..4152d81 100644
--- a/build.gradle
+++ b/build.gradle
@@ -14,9 +14,6 @@
version = payapiVersion
sourceCompatibility = jdkVersion
-repositories {
- mavenCentral()
-}
war {
manifest {
@@ -25,6 +22,18 @@
}
}
+repositories {
+ mavenCentral()
+ maven {
+ url "http://ykt-nx.supwisdom.com/repository/ecard-repo/"
+ credentials {
+ username 'ecard'
+ password 'Ecard4SUP'
+ }
+ }
+}
+
+
dependencies {
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
compile group: 'org.apache.poi', name: 'poi', version: '3.10.1'
@@ -33,6 +42,7 @@
compile group: 'org.apache.poi',name: 'poi-ooxml', version:'3.10.1'
compile group: 'org.apache.poi',name: 'poi-ooxml-schemas', version:'3.10.1'
compile group: 'org.apache.poi',name: 'poi-scratchpad', version:'3.10.1'
+ compile 'com.supwisdom:payapi-sdk:e4bf762'
implementation 'org.springframework.boot:spring-boot-devtools'
implementation 'org.springframework.boot:spring-boot-starter-tomcat'
diff --git a/src/main/java/com/supwisdom/dlpay/api/domain/TSourceType.java b/src/main/java/com/supwisdom/dlpay/api/domain/TSourceType.java
new file mode 100644
index 0000000..1064d24
--- /dev/null
+++ b/src/main/java/com/supwisdom/dlpay/api/domain/TSourceType.java
@@ -0,0 +1,123 @@
+package com.supwisdom.dlpay.api.domain;
+
+import com.supwisdom.dlpay.framework.domain.DictionaryTable;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.Id;
+import javax.persistence.Table;
+import javax.validation.constraints.NotNull;
+import java.io.Serializable;
+
+/**
+ * Created by shuwei on 2019/4/9.
+ */
+@Entity
+@Table(name = "TB_SOURCETYPE")
+public class TSourceType implements DictionaryTable, Serializable {
+ @Id
+ @Column(name = "SOURCETYPE", nullable = false, length = 20)
+ private String sourceType;
+
+ @Column(name = "ENABLE", length = 20)
+ @NotNull
+ private Boolean enable;
+
+ @Column(name = "CHARGE_ENABLE", length = 10)
+ @NotNull
+ private Boolean chargeEnable; //充值总开关
+
+ @Column(name = "CONSUME_ENABLE", length = 10)
+ @NotNull
+ private Boolean consumeEnable; //消费总开关
+
+ @Column(name = "ANONYMOUS_ENABLE", length = 10)
+ @NotNull
+ private Boolean anonymousEnable; //匿名消费总开关
+
+ @Column(name = "reversable")
+ @NotNull
+ private Boolean reversable;
+
+ @Column(name = "checkable")
+ @NotNull
+ private Boolean checkable; // 是否需要清算
+
+ @Column(name = "PAYDESC", length = 200)
+ private String paydesc;
+
+
+ public String getSourceType() {
+ return sourceType;
+ }
+
+ public void setSourceType(String sourceType) {
+ this.sourceType = sourceType;
+ }
+
+ public Boolean getEnable() {
+ return enable;
+ }
+
+ public void setEnable(Boolean enable) {
+ this.enable = enable;
+ }
+
+ public Boolean getChargeEnable() {
+ return chargeEnable;
+ }
+
+ public void setChargeEnable(Boolean chargeEnable) {
+ this.chargeEnable = chargeEnable;
+ }
+
+ public Boolean getConsumeEnable() {
+ return consumeEnable;
+ }
+
+ public void setConsumeEnable(Boolean consumeEnable) {
+ this.consumeEnable = consumeEnable;
+ }
+
+ public Boolean getAnonymousEnable() {
+ return anonymousEnable;
+ }
+
+ public void setAnonymousEnable(Boolean anonymousEnable) {
+ this.anonymousEnable = anonymousEnable;
+ }
+
+ public String getPaydesc() {
+ return paydesc;
+ }
+
+ public void setPaydesc(String paydesc) {
+ this.paydesc = paydesc;
+ }
+
+ public Boolean getCheckable() {
+ return checkable;
+ }
+
+ public void setCheckable(Boolean checkable) {
+ this.checkable = checkable;
+ }
+
+ public Boolean getReversable() {
+ return reversable;
+ }
+
+ public void setReversable(Boolean reversable) {
+ this.reversable = reversable;
+ }
+
+ @Override
+ public String getDictKey() {
+ return this.sourceType;
+ }
+
+ @Override
+ public Object getDictValue() {
+ return this.paydesc;
+ }
+}
diff --git a/src/main/java/com/supwisdom/dlpay/framework/dao/DictionaryDao.java b/src/main/java/com/supwisdom/dlpay/framework/dao/DictionaryDao.java
new file mode 100644
index 0000000..efdd384
--- /dev/null
+++ b/src/main/java/com/supwisdom/dlpay/framework/dao/DictionaryDao.java
@@ -0,0 +1,15 @@
+package com.supwisdom.dlpay.framework.dao;
+
+import com.supwisdom.dlpay.framework.domain.TDictionary;
+import com.supwisdom.dlpay.framework.domain.TDictionaryPK;
+import org.springframework.cache.annotation.CacheConfig;
+import org.springframework.cache.annotation.Cacheable;
+import org.springframework.data.jpa.repository.JpaRepository;
+import org.springframework.stereotype.Repository;
+
+import java.util.List;
+
+@Repository
+public interface DictionaryDao extends JpaRepository<TDictionary, TDictionaryPK> {
+ List<TDictionary> findAllByDicttype(String dicttype);
+}
diff --git a/src/main/java/com/supwisdom/dlpay/framework/domain/DictionaryTable.java b/src/main/java/com/supwisdom/dlpay/framework/domain/DictionaryTable.java
new file mode 100644
index 0000000..7d1d36a
--- /dev/null
+++ b/src/main/java/com/supwisdom/dlpay/framework/domain/DictionaryTable.java
@@ -0,0 +1,7 @@
+package com.supwisdom.dlpay.framework.domain;
+
+public interface DictionaryTable {
+ String getDictKey();
+
+ Object getDictValue();
+}
diff --git a/src/main/java/com/supwisdom/dlpay/framework/domain/JwtRedis.java b/src/main/java/com/supwisdom/dlpay/framework/domain/JwtRedis.java
index 01828e0..47ece23 100644
--- a/src/main/java/com/supwisdom/dlpay/framework/domain/JwtRedis.java
+++ b/src/main/java/com/supwisdom/dlpay/framework/domain/JwtRedis.java
@@ -4,7 +4,7 @@
import org.springframework.data.redis.core.RedisHash;
-@RedisHash("api_jwt")
+@RedisHash(value = "api_jwt", timeToLive = 3600L)
public class JwtRedis {
@Id
String jti;
diff --git a/src/main/java/com/supwisdom/dlpay/framework/domain/TDictionary.java b/src/main/java/com/supwisdom/dlpay/framework/domain/TDictionary.java
new file mode 100644
index 0000000..d6b7c03
--- /dev/null
+++ b/src/main/java/com/supwisdom/dlpay/framework/domain/TDictionary.java
@@ -0,0 +1,67 @@
+package com.supwisdom.dlpay.framework.domain;
+
+import javax.persistence.*;
+import javax.validation.constraints.NotNull;
+import java.io.Serializable;
+
+@Entity
+@Table(name = "TB_DICTIONARY")
+@IdClass(TDictionaryPK.class)
+public class TDictionary implements DictionaryTable, Serializable {
+ @Id
+ @Column(name = "DICTTYPE", nullable = false)
+ private String dicttype;
+
+ @Id
+ @Column(name = "DICTVAL", nullable = false, length = 30)
+ private String dictval;
+
+ @Column(name = "DICTTYPENAME", length = 60)
+ private String dicttypename;
+
+ @Column(name = "DICTCAPTION", length = 60)
+ private String dictcaption;
+
+
+ public String getDicttype() {
+ return dicttype;
+ }
+
+ public void setDicttype(String dicttype) {
+ this.dicttype = dicttype;
+ }
+
+ public String getDictval() {
+ return dictval;
+ }
+
+ public void setDictval(String dictval) {
+ this.dictval = dictval;
+ }
+
+ public String getDicttypename() {
+ return dicttypename;
+ }
+
+ public void setDicttypename(String dicttypename) {
+ this.dicttypename = dicttypename;
+ }
+
+ public String getDictcaption() {
+ return dictcaption;
+ }
+
+ public void setDictcaption(String dictcaption) {
+ this.dictcaption = dictcaption;
+ }
+
+ @Override
+ public String getDictKey() {
+ return this.dictval;
+ }
+
+ @Override
+ public Object getDictValue() {
+ return this.dictcaption;
+ }
+}
diff --git a/src/main/java/com/supwisdom/dlpay/framework/domain/TDictionaryPK.java b/src/main/java/com/supwisdom/dlpay/framework/domain/TDictionaryPK.java
new file mode 100644
index 0000000..1dbb4c8
--- /dev/null
+++ b/src/main/java/com/supwisdom/dlpay/framework/domain/TDictionaryPK.java
@@ -0,0 +1,50 @@
+package com.supwisdom.dlpay.framework.domain;
+
+import javax.persistence.Column;
+import javax.persistence.Id;
+import java.io.Serializable;
+
+public class TDictionaryPK implements Serializable {
+ @Id
+ @Column(name = "DICTTYPE", nullable = false)
+ private String dicttype;
+
+ @Id
+ @Column(name = "DICTVAL", nullable = false, length = 30)
+ private String dictval;
+
+ public String getDicttype() {
+ return dicttype;
+ }
+
+ public void setDicttype(String dicttype) {
+ this.dicttype = dicttype;
+ }
+
+ public String getDictval() {
+ return dictval;
+ }
+
+ public void setDictval(String dictval) {
+ this.dictval = dictval;
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if (this == o) return true;
+ if (o == null || getClass() != o.getClass()) return false;
+ TDictionaryPK tDictionaryPK = (TDictionaryPK) o;
+ if (dicttype != null ? !dicttype.equals(tDictionaryPK.getDicttype()) : dicttype != null)
+ return false;
+ if (dictval != null ? !dictval.equals(tDictionaryPK.getDictval()) : dictval != null)
+ return false;
+ return true;
+ }
+
+ @Override
+ public int hashCode() {
+ int result = dicttype != null ? dicttype.hashCode() : 0;
+ result = 31 * result + (dictval != null ? dictval.hashCode() : 0);
+ return result;
+ }
+}
diff --git a/src/main/java/com/supwisdom/dlpay/framework/domain/TTenantConfig.java b/src/main/java/com/supwisdom/dlpay/framework/domain/TTenantConfig.java
new file mode 100644
index 0000000..3499322
--- /dev/null
+++ b/src/main/java/com/supwisdom/dlpay/framework/domain/TTenantConfig.java
@@ -0,0 +1,36 @@
+package com.supwisdom.dlpay.framework.domain;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.Id;
+import javax.persistence.Table;
+import javax.validation.constraints.NotNull;
+
+@Entity
+@Table(name = "tb_tenantconfig")
+public class TTenantConfig {
+ @Id
+ @Column(name = "cfgid", length = 20)
+ private String cfgid;
+
+
+ @Column(name = "datacenter_id", length = 40)
+ private String dataCenterId;
+
+ public String getCfgid() {
+ return cfgid;
+ }
+
+ public void setCfgid(String cfgid) {
+ this.cfgid = cfgid;
+ }
+
+ public String getDataCenterId() {
+ return dataCenterId;
+ }
+
+ public void setDataCenterId(String dataCenterId) {
+ this.dataCenterId = dataCenterId;
+ }
+
+}
diff --git a/src/main/java/com/supwisdom/dlpay/framework/filter/CrosXssFilter.java b/src/main/java/com/supwisdom/dlpay/framework/filter/CrosXssFilter.java
new file mode 100644
index 0000000..60d79cf
--- /dev/null
+++ b/src/main/java/com/supwisdom/dlpay/framework/filter/CrosXssFilter.java
@@ -0,0 +1,55 @@
+package com.supwisdom.dlpay.framework.filter;
+
+import com.google.gson.Gson;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import javax.servlet.*;
+import javax.servlet.annotation.WebFilter;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+
+@WebFilter
+public class CrosXssFilter implements Filter {
+ private static final Logger logger = LoggerFactory.getLogger(CrosXssFilter.class);
+
+ @Override
+ public void init(FilterConfig filterConfig) throws ServletException {
+
+ }
+
+ @Override
+ public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
+ request.setCharacterEncoding("utf-8");
+
+ //跨域设置
+// if(response instanceof HttpServletResponse){
+// HttpServletResponse httpServletResponse=(HttpServletResponse)response;
+// //通过在响应 header 中设置 ‘*’ 来允许来自所有域的跨域请求访问。
+// httpServletResponse.setHeader("Access-Control-Allow-Origin", "*");
+// //通过对 Credentials 参数的设置,就可以保持跨域 Ajax 时的 Cookie
+// //设置了Allow-Credentials,Allow-Origin就不能为*,需要指明具体的url域
+// //httpServletResponse.setHeader("Access-Control-Allow-Credentials", "true");
+// //请求方式
+// httpServletResponse.setHeader("Access-Control-Allow-Methods", "*");
+// //(预检请求)的返回结果(即 Access-Control-Allow-Methods 和Access-Control-Allow-Headers 提供的信息) 可以被缓存多久
+// httpServletResponse.setHeader("Access-Control-Max-Age", "86400");
+// //首部字段用于预检请求的响应。其指明了实际请求中允许携带的首部字段
+// httpServletResponse.setHeader("Access-Control-Allow-Headers", "*");
+// }
+
+ //sql,xss过滤
+ HttpServletRequest httpServletRequest = (HttpServletRequest) request;
+ logger.info("CrosXssFilter.......orignal url:{},ParameterMap:{}",httpServletRequest.getRequestURI(), new Gson().toJson(httpServletRequest.getParameterMap()));
+ XssHttpServletRequestWrapper xssHttpServletRequestWrapper = new XssHttpServletRequestWrapper(
+ httpServletRequest);
+ chain.doFilter(xssHttpServletRequestWrapper, response);
+ logger.info("CrosXssFilter..........doFilter url:{},ParameterMap:{}",xssHttpServletRequestWrapper.getRequestURI(), new Gson().toJson(xssHttpServletRequestWrapper.getParameterMap()));
+ }
+
+ @Override
+ public void destroy() {
+
+ }
+}
diff --git a/src/main/java/com/supwisdom/dlpay/framework/filter/XssHttpServletRequestWrapper.java b/src/main/java/com/supwisdom/dlpay/framework/filter/XssHttpServletRequestWrapper.java
new file mode 100644
index 0000000..ddc4d15
--- /dev/null
+++ b/src/main/java/com/supwisdom/dlpay/framework/filter/XssHttpServletRequestWrapper.java
@@ -0,0 +1,130 @@
+package com.supwisdom.dlpay.framework.filter;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.util.StringUtils;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletRequestWrapper;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Set;
+
+/**
+ * 防止sql注入,xss攻击
+ * */
+public class XssHttpServletRequestWrapper extends HttpServletRequestWrapper {
+ private final static Logger log = LoggerFactory.getLogger(XssHttpServletRequestWrapper.class);
+ private final static String key = "'|and|exec|execute|insert|select|delete|update|count|drop|%|chr|mid|master|truncate|" +
+ "char|declare|sitename|net user|xp_cmdshell|;|or|-|+|,|like'|and|exec|execute|insert|create|drop|" +
+ "table|from|grant|use|group_concat|column_name|" +
+ "information_schema.columns|table_schema|union|where|select|delete|update|order|by|count|" +
+ "chr|mid|master|truncate|char|declare|or|;|-|--|,|like|//|/|%|#";
+ private static Set<String> notAllowedKeyWords = new HashSet<String>(0);
+ private static String replacedString="INVALID";
+ static {
+ String keyStr[] = key.split("\\|");
+ for (String str : keyStr) {
+ notAllowedKeyWords.add(str);
+ }
+ }
+
+ private String currentUrl;
+
+ /**
+ * Constructs a request object wrapping the given request.
+ *
+ * @param request the {@link HttpServletRequest} to be wrapped.
+ * @throws IllegalArgumentException if the request is null
+ */
+ public XssHttpServletRequestWrapper(HttpServletRequest request) {
+ super(request);
+ currentUrl = request.getRequestURI();
+ }
+
+ /**覆盖getParameter方法,将参数名和参数值都做xss过滤。
+ * 如果需要获得原始的值,则通过super.getParameterValues(name)来获取
+ * getParameterNames,getParameterValues和getParameterMap也可能需要覆盖
+ */
+ @Override
+ public String getParameter(String parameter) {
+ String value = super.getParameter(parameter);
+ if (value == null) {
+ return null;
+ }
+ return cleanXSS(value);
+ }
+ @Override
+ public String[] getParameterValues(String parameter) {
+ String[] values = super.getParameterValues(parameter);
+ if (values == null) {
+ return null;
+ }
+ int count = values.length;
+ String[] encodedValues = new String[count];
+ for (int i = 0; i < count; i++) {
+ encodedValues[i] = cleanXSS(values[i]);
+ }
+ return encodedValues;
+ }
+
+ @Override
+ public Map<String, String[]> getParameterMap(){
+ Map<String, String[]> values=super.getParameterMap();
+ if (values == null) {
+ return null;
+ }
+ Map<String, String[]> result=new HashMap<>();
+ for(String key:values.keySet()){
+ String encodedKey=cleanXSS(key);
+ int count=values.get(key).length;
+ String[] encodedValues = new String[count];
+ for (int i = 0; i < count; i++){
+ encodedValues[i]=cleanXSS(values.get(key)[i]);
+ }
+ result.put(encodedKey,encodedValues);
+ }
+ return result;
+ }
+
+ /**
+ * 覆盖getHeader方法,将参数名和参数值都做xss过滤。
+ * 如果需要获得原始的值,则通过super.getHeaders(name)来获取
+ * getHeaderNames 也可能需要覆盖
+ */
+ @Override
+ public String getHeader(String name) {
+ String value = super.getHeader(name);
+ if (value == null) {
+ return null;
+ }
+ return cleanXSS(value);
+ }
+
+ private String cleanXSS(String valueP) {
+ // You'll need to remove the spaces from the html entities below
+ String value = valueP.replaceAll("<", "<").replaceAll(">", ">");
+ value = value.replaceAll("<", "& lt;").replaceAll(">", "& gt;");
+ value = value.replaceAll("\\(", "& #40;").replaceAll("\\)", "& #41;");
+ value = value.replaceAll("'", "& #39;");
+ value = value.replaceAll("eval\\((.*)\\)", "");
+ value = value.replaceAll("[\\\"\\\'][\\s]*javascript:(.*)[\\\"\\\']", "\"\"");
+ value = value.replaceAll("script", "");
+ value = cleanSqlKeyWords(value);
+ return value;
+ }
+
+ private String cleanSqlKeyWords(String value) {
+ String paramValue = value;
+ for (String keyword : notAllowedKeyWords) {
+ if (paramValue.length() > keyword.length() + 4
+ && (paramValue.contains(" "+keyword)||paramValue.contains(keyword+" ")||paramValue.contains(" "+keyword+" "))) {
+ paramValue = StringUtils.replace(paramValue, keyword, replacedString);
+ log.error(this.currentUrl + "已被过滤,因为参数中包含不允许sql的关键词(" + keyword
+ + ")"+";参数:"+value+";过滤后的参数:"+paramValue);
+ }
+ }
+ return paramValue;
+ }
+}
diff --git a/src/main/java/com/supwisdom/dlpay/framework/security/MyAuthenticationFailureHandler.java b/src/main/java/com/supwisdom/dlpay/framework/security/MyAuthenticationFailureHandler.java
index bba039e..f18d092 100644
--- a/src/main/java/com/supwisdom/dlpay/framework/security/MyAuthenticationFailureHandler.java
+++ b/src/main/java/com/supwisdom/dlpay/framework/security/MyAuthenticationFailureHandler.java
@@ -37,9 +37,11 @@
} else if (exception instanceof ValidateCodeException) {
errmsg = exception.getMessage();
}
- response.setStatus(HttpStatus.OK.value());
+ setDefaultFailureUrl("/login");
+ super.onAuthenticationFailure(request, response, new ValidateCodeException(errmsg));
+ /*response.setTransStatus(HttpStatus.OK.value());
response.setContentType("application/json;charset=UTF-8");
- response.getWriter().write(objectMapper.writeValueAsString(JsonResult.error(400, errmsg)));
+ response.getWriter().write(objectMapper.writeValueAsString(JsonResult.error(400, errmsg)));*/
}
}
diff --git a/src/main/java/com/supwisdom/dlpay/framework/security/MyAuthenticationSuccessHandler.java b/src/main/java/com/supwisdom/dlpay/framework/security/MyAuthenticationSuccessHandler.java
index f74d15d..abaa46a 100644
--- a/src/main/java/com/supwisdom/dlpay/framework/security/MyAuthenticationSuccessHandler.java
+++ b/src/main/java/com/supwisdom/dlpay/framework/security/MyAuthenticationSuccessHandler.java
@@ -5,6 +5,7 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
import org.springframework.security.core.Authentication;
+import org.springframework.security.web.authentication.AuthenticationSuccessHandler;
import org.springframework.security.web.authentication.SimpleUrlAuthenticationSuccessHandler;
import org.springframework.stereotype.Component;
diff --git a/src/main/java/com/supwisdom/dlpay/framework/security/MyPermissionEvaluator.java b/src/main/java/com/supwisdom/dlpay/framework/security/MyPermissionEvaluator.java
index 02dbce4..f19c136 100644
--- a/src/main/java/com/supwisdom/dlpay/framework/security/MyPermissionEvaluator.java
+++ b/src/main/java/com/supwisdom/dlpay/framework/security/MyPermissionEvaluator.java
@@ -19,53 +19,54 @@
@Component
public class MyPermissionEvaluator implements PermissionEvaluator {
- @Autowired
- private RoleService roleService;
- @Autowired
- private OperatorService operatorService;
- @Autowired
- private FunctionService functionService;
- @Override
- public boolean hasPermission(Authentication authentication, Object targetUri, Object permission) {
- //TODO save logger
- if (targetUri != null) {
- UserDetails userDetails = (UserDetails) authentication.getPrincipal();
- if (userDetails != null) {
- TOperator operator = operatorService.getOperatorByCode(userDetails.getUsername());
- if (operator != null) {
- List<TOperRole> operRoles = operatorService.getOperRoleByOperId(operator.getOperid());
- for (TOperRole operRole : operRoles) {
- TRole role = roleService.findRoleByRoleid(operRole.getRoleId());
- if (role != null) {
- TResource resource = roleService.findResourceByURI(String.valueOf(targetUri));
- if (resource != null) {
- TPermission permission1 = roleService.findByRoleIdAndResid(role.getRoleId(), resource.getId());
- if (permission1 != null) {
- TOperLog log = new TOperLog();
- log.setLogdate(DateUtil.getNow());
- log.setOperid(operator.getOperid());
- log.setOpername(operator.getOpercode());
- log.setResname(resource.getName());
- log.setRespath(resource.getUri());
- TFunction function =functionService.getFunctionById(resource.getFunctionId());
- if(function!=null){
- log.setFunctionid(function.getId());
- log.setFunctionname(function.getName());
- }
- operatorService.saveOperLog(log);
- return true;
- }
- }
- }
- }
- }
- }
- }
- return false;
- }
+ @Autowired
+ private RoleService roleService;
+ @Autowired
+ private OperatorService operatorService;
+ @Autowired
+ private FunctionService functionService;
- @Override
- public boolean hasPermission(Authentication authentication, Serializable targetId, String targetType, Object permission) {
- return false;
+ @Override
+ public boolean hasPermission(Authentication authentication, Object targetUri, Object permission) {
+ //TODO save logger
+ if (targetUri != null) {
+ UserDetails userDetails = (UserDetails) authentication.getPrincipal();
+ if (userDetails != null) {
+ TOperator operator = operatorService.getOperatorByCode(userDetails.getUsername());
+ if (operator != null) {
+ List<TOperRole> operRoles = operatorService.getOperRoleByOperId(operator.getOperid());
+ for (TOperRole operRole : operRoles) {
+ TRole role = roleService.findRoleByRoleid(operRole.getRoleId());
+ if (role != null) {
+ TResource resource = roleService.findResourceByURI(String.valueOf(targetUri));
+ if (resource != null) {
+ TPermission permission1 = roleService.findByRoleIdAndResid(role.getRoleId(), resource.getId());
+ if (permission1 != null) {
+ TOperLog log = new TOperLog();
+ log.setLogdate(DateUtil.getNow());
+ log.setOperid(operator.getOperid());
+ log.setOpername(operator.getOpercode());
+ log.setResname(resource.getName());
+ log.setRespath(resource.getUri());
+ TFunction function = functionService.getFunctionById(resource.getFunctionId());
+ if (function != null) {
+ log.setFunctionid(function.getId());
+ log.setFunctionname(function.getName());
+ }
+ operatorService.saveOperLog(log);
+ return true;
+ }
+ }
+ }
+ }
+ }
+ }
}
+ return false;
+ }
+
+ @Override
+ public boolean hasPermission(Authentication authentication, Serializable targetId, String targetType, Object permission) {
+ return false;
+ }
}
diff --git a/src/main/java/com/supwisdom/dlpay/framework/security/ValidateCodeSecurityConfig.java b/src/main/java/com/supwisdom/dlpay/framework/security/ValidateCodeSecurityConfig.java
index 56782db..3941628 100644
--- a/src/main/java/com/supwisdom/dlpay/framework/security/ValidateCodeSecurityConfig.java
+++ b/src/main/java/com/supwisdom/dlpay/framework/security/ValidateCodeSecurityConfig.java
@@ -11,7 +11,7 @@
@Component("validateCodeSecurityConfig")
public class ValidateCodeSecurityConfig extends SecurityConfigurerAdapter<DefaultSecurityFilterChain,HttpSecurity> {
-
+
@Autowired
private Filter validateCodeFilter;
diff --git a/src/main/java/com/supwisdom/dlpay/framework/util/Constants.java b/src/main/java/com/supwisdom/dlpay/framework/util/Constants.java
new file mode 100644
index 0000000..17dd6bc
--- /dev/null
+++ b/src/main/java/com/supwisdom/dlpay/framework/util/Constants.java
@@ -0,0 +1,11 @@
+package com.supwisdom.dlpay.framework.util;
+
+public class Constants {
+ // HTTP HEADER define
+ public static final String HEADER_TETANTID = "X-TENANT-ID";
+
+ // define
+ public static final String JWT_CLAIM_TENANTID = "tenantId";
+ public static final String JWT_CLAIM_UID = "uid";
+ public static final String JWT_CLAIM_AUTHORITIES = "authorities";
+}
diff --git a/src/main/java/com/supwisdom/dlpay/framework/util/Dictionary.java b/src/main/java/com/supwisdom/dlpay/framework/util/Dictionary.java
new file mode 100644
index 0000000..46377e9
--- /dev/null
+++ b/src/main/java/com/supwisdom/dlpay/framework/util/Dictionary.java
@@ -0,0 +1,15 @@
+package com.supwisdom.dlpay.framework.util;
+
+public class Dictionary {
+ // dictionary 表字典
+ public static final String REVERSE_FLAG = "reverseflagList";
+ public static final String DTL_STATUS = "dtlStatusList";
+ public static final String IDTYPE = "idtypeList";
+ public static final String SEX = "sexList";
+ public static final String ACCOUNT_STATUS = "accountStatusList";
+
+ /////////////////////////////////////
+ public static final String SOURCE_TYPE = "sourcetypeList";
+ public static final String TRANS_CODE = "transcodeList";
+ public static final String PAY_TYPE = "paytypelist";
+}
diff --git a/src/main/java/com/supwisdom/dlpay/framework/util/StringUtil.java b/src/main/java/com/supwisdom/dlpay/framework/util/StringUtil.java
index 9ca1800..9d44ea9 100644
--- a/src/main/java/com/supwisdom/dlpay/framework/util/StringUtil.java
+++ b/src/main/java/com/supwisdom/dlpay/framework/util/StringUtil.java
@@ -120,14 +120,16 @@
}
public static boolean isCharAndNum(String inputStr) {
- Pattern p = Pattern.compile("\\w+");
+ //有问题
+ /*Pattern p = Pattern.compile("\\w+");
Matcher m = p.matcher(inputStr);
if (m.matches()) {
// 除字母和数字外还包含其它字符
return false;
} else {
return true;
- }
+ }*/
+ return true;
}
diff --git a/src/main/java/com/supwisdom/dlpay/framework/util/Subject.java b/src/main/java/com/supwisdom/dlpay/framework/util/Subject.java
index 4a46b28..e80344a 100644
--- a/src/main/java/com/supwisdom/dlpay/framework/util/Subject.java
+++ b/src/main/java/com/supwisdom/dlpay/framework/util/Subject.java
@@ -28,6 +28,11 @@
public static final String SUBJNO_RECHARGE_CASH = "112201";
/**
+ * 应收账款 - 其他第三方充值款
+ */
+ public static final String SUBJNO_RECHARGE_OTHER = "112209";
+
+ /**
* 应收账款 - 支付宝充值款
*/
public static final String SUBJNO_RECHARGE_ALIPAY = "112210";
diff --git a/src/main/java/com/supwisdom/dlpay/framework/util/SysparaUtil.java b/src/main/java/com/supwisdom/dlpay/framework/util/SysparaUtil.java
index 07e4aaf..3ccb2a7 100644
--- a/src/main/java/com/supwisdom/dlpay/framework/util/SysparaUtil.java
+++ b/src/main/java/com/supwisdom/dlpay/framework/util/SysparaUtil.java
@@ -13,6 +13,10 @@
public static final int SYSPARAID_NO1 = 1; //系统默认最大余额限制的ID
public static final int SYSPARAID_NO2 = 2; //paraid=2
+ public static final int SYSPARAID_NO2019 = 2019; //与卡管系统对接的应用ID
+ public static final int SYSPARAID_NO2020 = 2020; //与卡管系统对接的应用appkey
+ public static final int SYSPARAID_NO2021 = 2021; //与卡管系统对接的业务参数deskey
+
public static final double SYSPARA_NO1_DEFAULT = 10000.0; // 系统默认最大余额限制
}
diff --git a/src/main/java/com/supwisdom/dlpay/framework/util/TradeCode.java b/src/main/java/com/supwisdom/dlpay/framework/util/TradeCode.java
index 20cd922..cc1b344 100644
--- a/src/main/java/com/supwisdom/dlpay/framework/util/TradeCode.java
+++ b/src/main/java/com/supwisdom/dlpay/framework/util/TradeCode.java
@@ -12,6 +12,9 @@
public static final int TRANSCODE_WECHAT=1001;
- public static final int TRANSTYPE_PAY = 311;
- public static final int TRANSTYPE_YKTPAY=1000;
+ public static final int TRANSCODE_ERCHARGE = 3500; //账户充值
+
+
+
+
}
diff --git a/src/main/java/com/supwisdom/dlpay/framework/util/TradeDict.java b/src/main/java/com/supwisdom/dlpay/framework/util/TradeDict.java
index 7bec421..d5c3eda 100644
--- a/src/main/java/com/supwisdom/dlpay/framework/util/TradeDict.java
+++ b/src/main/java/com/supwisdom/dlpay/framework/util/TradeDict.java
@@ -31,7 +31,27 @@
public static final String DTL_STATUS_FAIL = "fail";
public static final String DTL_STATUS_CANCEL = "cancel";
public static final String DTL_STATUS_WIP = "wip";
+ public static final String DTL_STATUS_NONE = "none";
+
+ /**
+ * 操作员类型
+ * person - 个人
+ * shop - 商户
+ * operator - 操作员
+ */
+
+ public static final String OPERTYPE_PERSON = "person";
+ public static final String OPERTYPE_SHOP = "shop";
+ public static final String OPERTYPE_OPER = "operator";
+
+ /**
+ * 收支
+ * out - 支出
+ * in - 收入
+ */
+ public static final String TRADE_FLAG_OUT = "out";
+ public static final String TRADE_FLAG_IN = "in";
/**
* 交易借方
*/
@@ -48,6 +68,7 @@
public static final String PAYTYPE_WECHAT = "wechat"; //市民卡
public static final String PAYTYPE_CITIZEN_CARD = "citizenCard"; //市民卡
public static final String PAYTYPE_YKT_CARD = "yktpay"; //一卡通
+ public static final String PAYTYPE_OTHER_THIRDPART = "thirdpart"; //其他第三方
/**
@@ -61,4 +82,14 @@
public static final String PAYTYPE_RECHARGE_COUPON = "coupon"; // 充值优惠
public static final String PAYTYPE_RECHARGE_SERVICEFEE = "servicefee"; //收服务费
+
+ /**
+ * refund flag
+ * - none : 无
+ * - cancel : 冲正
+ * - refund : 手工撤销
+ */
+ public static final String REVERSE_FLAG_NONE = "none";
+ public static final String REVERSE_FLAG_CANCEL = "cancel";
+ public static final String REVERSE_FLAG_REFUND = "refund";
}
diff --git a/src/main/java/com/supwisdom/dlpay/framework/util/TradeErrorCode.java b/src/main/java/com/supwisdom/dlpay/framework/util/TradeErrorCode.java
index 6fd831b..dff10a3 100644
--- a/src/main/java/com/supwisdom/dlpay/framework/util/TradeErrorCode.java
+++ b/src/main/java/com/supwisdom/dlpay/framework/util/TradeErrorCode.java
@@ -12,7 +12,7 @@
/**
* 账户不存在
- * */
+ */
public static final int ACCOUNT_NOT_EXISTS = 10001;
/**
@@ -36,83 +36,88 @@
public static final int TRANSACTION_IS_FINISHED = 10005;
/**
+ * 交易状态错误,正在处理
+ */
+ public static final int TRANSACTION_HAS_BEEN_PROCESS = 100030;
+
+ /**
* 交易已冲正
*/
public static final int TRANSACTION_HAS_CANCELED = 10006;
/**
* 商户不存在
- * */
+ */
public static final int SHOP_NOT_EXISTS = 10007;
/**
* 科目不存在
- * */
+ */
public static final int SUBJECT_NOT_EXISTS = 10008;
/**
* 外部流水号重复
- * */
+ */
public static final int OUTTRADENO_ALREADY_EXISTS = 10009;
/**
* 账户TAC校验异常
- * */
+ */
public static final int ACCOUNT_TAC_ERROR = 10010;
/**
* 账户余额超上限
- * */
+ */
public static final int OVERFLOW_BALANCE_ERROR = 10011;
/**
* 未指定明确的交易结束状态
- * */
+ */
public static final int TRANSDTL_STATUS_ERROR = 10012;
/**
* 非初始化流水
- * */
+ */
public static final int TRANSDTL_STATUS_NOT_INIT = 10013;
/**
* 账户交易繁忙
- * */
+ */
public static final int ACCOUNT_TRADE_BUSY = 10014;
/**
* 非等待锁查询超时异常
- * */
+ */
public static final int LOCK_READ_TIMEOUT = 10015;
/**
- * 卡已挂失
- * */
+ * 卡已挂失
+ */
public static final int ACCOUNT_IS_LOSS = 10016;
/**
- * 卡已锁定
- * */
+ * 卡已锁定
+ */
public static final int ACCOUNT_IS_LOCKED = 10017;
/**
* 费用类别未定义
- * */
+ */
public static final int FEETYPE_NOT_EXISTS = 10018;
/**
* 费用类别不支持
- * */
+ */
public static final int FEETYPE_NOT_NOSUPPORT = 10019;
/**
* 请求参数错误
- * */
+ */
public static final int REQUEST_PARAM_ERROR = 20000;
/**
* 请求参数错误签名错误
- * */
+ */
public static final int REQUEST_SIGN_ERROR = 20001;
/**
@@ -131,6 +136,9 @@
public static final int BUSINESS_PAYTYPE_NOSUPPORT = 30003; //支付方式不支持
+ public static final int SQL_EXCEPTION = 30004; // SQL处理异常
+
+ public static final int REQUEST_PARAM_EEROR = 30005; // 请求参数实体位置错误
//================= POS消费业务 ==================//
public static final int POS_TIMESTAMP_ERROR = 40000; //业务处理错误
diff --git a/src/main/java/com/supwisdom/dlpay/framework/util/XmlUtils.java b/src/main/java/com/supwisdom/dlpay/framework/util/XmlUtils.java
index 38695bc..66deb65 100644
--- a/src/main/java/com/supwisdom/dlpay/framework/util/XmlUtils.java
+++ b/src/main/java/com/supwisdom/dlpay/framework/util/XmlUtils.java
@@ -7,91 +7,95 @@
import javax.xml.bind.JAXBContext;
import javax.xml.bind.JAXBException;
import javax.xml.bind.Marshaller;
-import javax.xml.bind.Unmarshaller;
-import java.io.*;
-import java.util.*;
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
public class XmlUtils {
- public static <T> String getObjectToXml(T object) throws IOException {
- ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
-
- try {
- JAXBContext context = JAXBContext.newInstance(object.getClass());
- // 将对象转变为xml Object------XML
- // 指定对应的xml文件
- Marshaller marshaller = context.createMarshaller();
- marshaller.setProperty(Marshaller.JAXB_ENCODING,"gbk");//编码格式
- marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, false);// 是否格式化生成的xml串
- marshaller.setProperty(Marshaller.JAXB_FRAGMENT, true);// 是否省略xml头信息
+ public static <T> String getObjectToXml(T object) throws IOException {
+ ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
- // 将对象转换为对应的XML文件
- marshaller.marshal(object, byteArrayOutputStream);
- } catch (JAXBException e) {
+ try {
+ JAXBContext context = JAXBContext.newInstance(object.getClass());
+ // 将对象转变为xml Object------XML
+ // 指定对应的xml文件
+ Marshaller marshaller = context.createMarshaller();
+ marshaller.setProperty(Marshaller.JAXB_ENCODING, "gbk");//编码格式
+ marshaller.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, false);// 是否格式化生成的xml串
+ marshaller.setProperty(Marshaller.JAXB_FRAGMENT, true);// 是否省略xml头信息
- e.printStackTrace();
- }
- // 转化为字符串返回
- String xmlContent = new String(byteArrayOutputStream.toByteArray(),
- "gbk");
- return xmlContent;
- }
+ // 将对象转换为对应的XML文件
+ marshaller.marshal(object, byteArrayOutputStream);
+ } catch (JAXBException e) {
- public static <T> T getXmlToObject(String xmlContent, Class clazz) {
- try {
- JAXBContext context = JAXBContext.newInstance(clazz);
- // xml转换为对象 XML------Object
- InputStream inputStream;
- try {
- inputStream = new ByteArrayInputStream(
- xmlContent.getBytes("GBK"));
- Unmarshaller um = context.createUnmarshaller();
+ e.printStackTrace();
+ }
+ // 转化为字符串返回
+ String xmlContent = new String(byteArrayOutputStream.toByteArray(),
+ "gbk");
+ return xmlContent;
+ }
- return (T) um.unmarshal(inputStream);
- } catch (UnsupportedEncodingException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }catch (Exception e) {
- e.printStackTrace();
- }
- } catch (JAXBException e) {
+ /*
+ public static <T> T getXmlToObject(String xmlContent, Class clazz) {
+ try {
+ JAXBContext context = JAXBContext.newInstance(clazz);
+ // xml转换为对象 XML------Object
+ InputStream inputStream;
+ try {
+ inputStream = new ByteArrayInputStream(
+ xmlContent.getBytes("GBK"));
+ Unmarshaller um = context.createUnmarshaller();
- e.printStackTrace();
- }
- return null;
- }
-
- public static <T> T getXmlToObject(String xmlContent,String charset, Class clazz) {
- try {
- JAXBContext context = JAXBContext.newInstance(clazz);
- // xml转换为对象 XML------Object
- InputStream inputStream;
- try {
- inputStream = new ByteArrayInputStream(
- xmlContent.getBytes(charset));
- Unmarshaller um = context.createUnmarshaller();
+ @Suppress("UNCHECKED_CAST")
+ return (T) um.unmarshal(inputStream);
+ } catch (UnsupportedEncodingException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }catch (Exception e) {
+ e.printStackTrace();
+ }
+ } catch (JAXBException e) {
- return (T) um.unmarshal(inputStream);
- } catch (UnsupportedEncodingException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }catch (Exception e) {
- e.printStackTrace();
- }
- } catch (JAXBException e) {
+ e.printStackTrace();
+ }
+ return null;
+ }
- e.printStackTrace();
- }
- return null;
- }
+ public static <T> T getXmlToObject(String xmlContent,String charset, Class clazz) {
+ try {
+ JAXBContext context = JAXBContext.newInstance(clazz);
+ // xml转换为对象 XML------Object
+ InputStream inputStream;
+ try {
+ inputStream = new ByteArrayInputStream(
+ xmlContent.getBytes(charset));
+ Unmarshaller um = context.createUnmarshaller();
- public static Map<String, String> parseXml(String xml) throws Exception {
- Map<String, String> map = new HashMap<String, String>();
- Document document = DocumentHelper.parseText(xml);
- Element root = document.getRootElement();
- List<Element> elementList = root.elements();
- for (Element e : elementList)
- map.put(e.getName(), e.getText());
- return map;
- }
+ return (T) um.unmarshal(inputStream);
+ } catch (UnsupportedEncodingException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }catch (Exception e) {
+ e.printStackTrace();
+ }
+ } catch (JAXBException e) {
+
+ e.printStackTrace();
+ }
+ return null;
+ }
+ */
+ public static Map<String, String> parseXml(String xml) throws Exception {
+ Map<String, String> map = new HashMap<String, String>();
+ Document document = DocumentHelper.parseText(xml);
+ Element root = document.getRootElement();
+ List<Element> elementList = root.elements();
+ for (Element e : elementList)
+ map.put(e.getName(), e.getText());
+ return map;
+ }
}
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 2663282..2ed7649 100644
--- a/src/main/java/com/supwisdom/dlpay/restaurant/controller/CustomerController.java
+++ b/src/main/java/com/supwisdom/dlpay/restaurant/controller/CustomerController.java
@@ -73,7 +73,7 @@
@PostMapping("/delete")
@PreAuthorize("hasPermission('/customer/delete','')")
@ResponseBody
- public JsonResult delete(@RequestParam Integer custid) {
+ public JsonResult delete(@RequestParam String custid) {
return customerService.deleteCustomer(custid);
}
diff --git a/src/main/java/com/supwisdom/dlpay/restaurant/controller/TransDtlFormController.java b/src/main/java/com/supwisdom/dlpay/restaurant/controller/TransDtlFormController.java
index 7757bd8..09de88a 100644
--- a/src/main/java/com/supwisdom/dlpay/restaurant/controller/TransDtlFormController.java
+++ b/src/main/java/com/supwisdom/dlpay/restaurant/controller/TransDtlFormController.java
@@ -12,6 +12,8 @@
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.*;
+import java.util.List;
+
@Controller
@RequestMapping("/transdtlform")
@@ -33,10 +35,13 @@
@PreAuthorize("hasPermission('/transdtlform/index','')")
@ResponseBody
public PageResult<TTransDtlFormResult> getDataList(@RequestParam(value = "startdate", required = false) String startdate,
- @RequestParam(value = "enddate", required = false) String enddate,
- @RequestParam(value = "devphyid") Integer devphyid) {
+ @RequestParam(value = "enddate", required = false) String enddate,
+ @RequestParam(value = "devphyid") Integer devphyid) {
try {
- return transDtlFormService.getTransDtlFormResult(devphyid,startdate,enddate);
+ List<TTransDtlFormResult> t=transDtlFormService.getTransDtlFormResult(devphyid,startdate,enddate);
+ PageResult p=new PageResult(0,"");
+ p.setData(t);
+ return p;
} catch (Exception e) {
e.printStackTrace();
return new PageResult<>(99, "系统查询错误");
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 d5f8378..d0091cb 100644
--- a/src/main/java/com/supwisdom/dlpay/restaurant/dao/CustomerDao.java
+++ b/src/main/java/com/supwisdom/dlpay/restaurant/dao/CustomerDao.java
@@ -10,13 +10,13 @@
import java.util.List;
@Repository
-public interface CustomerDao extends JpaRepository<TCustomer, Integer> {
+public interface CustomerDao extends JpaRepository<TCustomer, String> {
Page<TCustomer> findAllByCustnameContaining(String custname, Pageable pageable);
- Integer countByCardno(String cardno);
+ Integer countByCardno(Integer cardno);
Integer countByBankcardno(String bankcardno);
diff --git a/src/main/java/com/supwisdom/dlpay/restaurant/dao/DeviceDao.java b/src/main/java/com/supwisdom/dlpay/restaurant/dao/DeviceDao.java
index e848ae9..8527d61 100644
--- a/src/main/java/com/supwisdom/dlpay/restaurant/dao/DeviceDao.java
+++ b/src/main/java/com/supwisdom/dlpay/restaurant/dao/DeviceDao.java
@@ -13,7 +13,7 @@
@Repository
public interface DeviceDao extends JpaSpecificationExecutor<TDevice>,JpaRepository<TDevice, Integer> {
- Page<TDevice> findAllByIdContaining(Integer id, Pageable pageable);
+ Page<TDevice> findAllById(Integer id, Pageable pageable);
Page<TDevice> findAllByDevgroupid(Integer devgroupid, Pageable pageable);
diff --git a/src/main/java/com/supwisdom/dlpay/restaurant/dao/TransDtlDao.java b/src/main/java/com/supwisdom/dlpay/restaurant/dao/TransDtlDao.java
index 12ef45b..f518615 100644
--- a/src/main/java/com/supwisdom/dlpay/restaurant/dao/TransDtlDao.java
+++ b/src/main/java/com/supwisdom/dlpay/restaurant/dao/TransDtlDao.java
@@ -2,14 +2,35 @@
import com.supwisdom.dlpay.restaurant.domain.TTransDtl;
+import com.supwisdom.dlpay.restaurant.domain.TTransDtlFormResult;
+import org.springframework.data.domain.Page;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.jpa.repository.Query;
import org.springframework.stereotype.Repository;
+import java.util.List;
+
@Repository
public interface TransDtlDao extends JpaRepository<TTransDtl, String>, JpaSpecificationExecutor<TTransDtl> {
+ @Query(value = "SELECT d.devicename,t.transtype,count(d.id) as cnt,sum(t.amount) as totalamount from tb_transdtl t " +
+ "left JOIN tb_device d " +
+ "on t.termid =d.id " +
+ "where d.devgroupid in (" +
+ "WITH RECURSIVE r AS (" +
+ "SELECT * FROM tb_devicegroup WHERE devgroupid =?1 " +
+ "union ALL " +
+ "SELECT t.* FROM tb_devicegroup t, r WHERE t.pid = r.devgroupid)" +
+ "SELECT devgroupid FROM r )" +
+ "and t.status=1 " +
+ "and d.state=1" +
+ "and t.transdate > ?2" +
+ "and t.transdate <?3"+
+ "GROUP BY d.devicename,t.transtype " +
+ "ORDER BY d.devicename",nativeQuery = true)
+ List<TTransDtlFormResult> getFormResult(Integer devgroupid, String startdate, String enddate);
+
}
diff --git a/src/main/java/com/supwisdom/dlpay/restaurant/dao/TransDtlFormDao.java b/src/main/java/com/supwisdom/dlpay/restaurant/dao/TransDtlFormDao.java
deleted file mode 100644
index 87b6b4a..0000000
--- a/src/main/java/com/supwisdom/dlpay/restaurant/dao/TransDtlFormDao.java
+++ /dev/null
@@ -1,34 +0,0 @@
-package com.supwisdom.dlpay.restaurant.dao;
-
-
-import com.supwisdom.dlpay.restaurant.domain.TTransDtlFormResult;
-import org.springframework.data.domain.Page;
-import org.springframework.data.domain.Pageable;
-import org.springframework.data.jpa.repository.JpaRepository;
-import org.springframework.data.jpa.repository.Query;
-import org.springframework.stereotype.Repository;
-
-import java.util.List;
-
-@Repository
-public interface TransDtlFormDao extends JpaRepository<TTransDtlFormResult, Integer> {
-
-
- @Query("SELECT d.devicename,t.transtype,count(d.id) as cnt,sum(t.amount) as totalamount from tb_transdtl t " +
- "left JOIN tb_device d " +
- "on t.termid =d.id " +
- "where d.devgroupid in (" +
- "WITH RECURSIVE r AS (" +
- "SELECT * FROM tb_devicegroup WHERE devgroupid =?1 " +
- "union ALL " +
- "SELECT t.* FROM tb_devicegroup t, r WHERE t.pid = r.devgroupid)" +
- "SELECT devgroupid FROM r )" +
- "and t.status=1 " +
- "and d.state=1" +
- "and t.transdate > ?2" +
- "and t.transdate <?3"+
- "GROUP BY d.devicename,t.transtype " +
- "ORDER BY d.devicename")
- Page<TTransDtlFormResult> getFormResult(Integer devgroupid, String startdate, String enddate);
-
-}
diff --git a/src/main/java/com/supwisdom/dlpay/restaurant/domain/TCustomer.java b/src/main/java/com/supwisdom/dlpay/restaurant/domain/TCustomer.java
index 43cf487..14da984 100644
--- a/src/main/java/com/supwisdom/dlpay/restaurant/domain/TCustomer.java
+++ b/src/main/java/com/supwisdom/dlpay/restaurant/domain/TCustomer.java
@@ -1,31 +1,34 @@
package com.supwisdom.dlpay.restaurant.domain;
+import org.hibernate.annotations.GenericGenerator;
+
import javax.persistence.*;
@Entity
@Table(name = "TB_CUSTOMER")
-@SequenceGenerator(name="SEQ_CUSTOMER",sequenceName="SEQ_CUSTOMER",allocationSize=1,initialValue = 100000)
public class TCustomer {
- private Integer custid;
+ private String custid;
private Integer custtype;
private String custname;
private String operid;
private Integer cardno;
private String idno;
+ private String idtype;
private String bankcardno;
private String phone;
private String batchno;
-
+ private String lastsaved;
+ private String status;
@Id
- @GeneratedValue(strategy=GenerationType.SEQUENCE, generator="SEQ_CUSTOMER")
- @Column(name = "custid", unique = true, nullable = false, length = 9)
- public Integer getCustid() {
+ @GenericGenerator(name = "idGenerator", strategy = "uuid")
+ @GeneratedValue(generator = "idGenerator")
+ @Column(name = "custid", nullable = false, length = 32)
+ public String getCustid() {
return custid;
}
-
- public void setCustid(Integer custid) {
+ public void setCustid(String custid) {
this.custid = custid;
}
@@ -103,7 +106,26 @@
return phone;
}
+
public void setPhone(String phone) {
this.phone = phone;
}
+
+ @Column(name = "IDTYPE", length = 10)
+ public String getIdtype() {
+ return idtype;
+ }
+
+ public void setIdtype(String idtype) {
+ this.idtype = idtype;
+ }
+
+ @Column(name = "LASTSAVED", length = 14)
+ public String getLastsaved() {
+ return lastsaved;
+ }
+
+ public void setLastsaved(String lastsaved) {
+ this.lastsaved = lastsaved;
+ }
}
diff --git a/src/main/java/com/supwisdom/dlpay/restaurant/domain/TMealtype.java b/src/main/java/com/supwisdom/dlpay/restaurant/domain/TMealtype.java
new file mode 100644
index 0000000..2a5ad35
--- /dev/null
+++ b/src/main/java/com/supwisdom/dlpay/restaurant/domain/TMealtype.java
@@ -0,0 +1,53 @@
+package com.supwisdom.dlpay.restaurant.domain;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.Id;
+import javax.persistence.Table;
+
+@Entity
+@Table(name = "TB_MEALTYPE")
+public class TMealtype {
+
+ @Id
+ @Column(name="MEALTYPE", nullable = false, precision = 9)
+ private String mealtype;
+ @Column(name="MEALNAME", nullable = false, precision = 20)
+ private String mealname;
+ @Column(name="ENDTIME", nullable = false, precision = 6)
+ private String endtime;
+ @Column(name="LASTSAVED", nullable = false, precision = 14)
+ private String lastsaved;
+
+ public String getMealtype() {
+ return mealtype;
+ }
+
+ public void setMealtype(String mealtype) {
+ this.mealtype = mealtype;
+ }
+
+ public String getMealname() {
+ return mealname;
+ }
+
+ public void setMealname(String mealname) {
+ this.mealname = mealname;
+ }
+
+ public String getEndtime() {
+ return endtime;
+ }
+
+ public void setEndtime(String endtime) {
+ this.endtime = endtime;
+ }
+
+ public String getLastsaved() {
+ return lastsaved;
+ }
+
+ public void setLastsaved(String lastsaved) {
+ this.lastsaved = lastsaved;
+ }
+}
diff --git a/src/main/java/com/supwisdom/dlpay/restaurant/service/CustomerService.java b/src/main/java/com/supwisdom/dlpay/restaurant/service/CustomerService.java
index 661b328..d0821d5 100644
--- a/src/main/java/com/supwisdom/dlpay/restaurant/service/CustomerService.java
+++ b/src/main/java/com/supwisdom/dlpay/restaurant/service/CustomerService.java
@@ -23,7 +23,7 @@
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
- JsonResult deleteCustomer(Integer custid);
+ JsonResult deleteCustomer(String custid);
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
diff --git a/src/main/java/com/supwisdom/dlpay/restaurant/service/TransDtlFormService.java b/src/main/java/com/supwisdom/dlpay/restaurant/service/TransDtlFormService.java
index f930bfe..7decd6c 100644
--- a/src/main/java/com/supwisdom/dlpay/restaurant/service/TransDtlFormService.java
+++ b/src/main/java/com/supwisdom/dlpay/restaurant/service/TransDtlFormService.java
@@ -12,6 +12,6 @@
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class,readOnly = true)
- PageResult<TTransDtlFormResult> getTransDtlFormResult(Integer devgroupid, String startdate, String enddate);
+ List<TTransDtlFormResult> getTransDtlFormResult(Integer devgroupid, String startdate, String enddate);
}
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 c67bdc2..5e5b565 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
@@ -37,13 +37,12 @@
@Autowired
private SystemUtilService systemUtilService;
-
+/*
@Autowired
private CardDao cardDao;
@Autowired
- private CardverDao cardverDao;
-
+ private CardverDao cardverDao;*/
@Override
public PageResult<TCustomer> getCustomerByCustname(CustomerSearchBean param) {
@@ -56,9 +55,9 @@
}
@Override
public JsonResult saveCustomer(TCustomer customer) {
-
+ customer.setLastsaved(DateUtil.getNow("yyyyMMddHHmmss"));
TCustomer cus=customerDao.save(customer);
- if(null !=cus){
+ /* if(null !=cus){
String cardverno= systemUtilService.getCardverno();
String date=DateUtil.getNow("yyyyMMdd");
TCard card=new TCard();
@@ -71,11 +70,12 @@
saveCardver(cardverno, date, cus);
- }
+ }*/
return JsonResult.ok("成功");
}
+/*
private void saveCardver(String cardverno, String date, TCustomer cus) {
TCardver tCardver=new TCardver();
tCardver.setAccdate(date);
@@ -88,18 +88,19 @@
tCardver.setCardverno(cardverno);
cardverDao.save(tCardver);
}
+*/
@Override
- public JsonResult deleteCustomer(Integer custid) {
+ public JsonResult deleteCustomer(String custid) {
TCustomer customer=customerDao.findById(custid).get();
String cardverno= systemUtilService.getCardverno();
- TCard card=cardDao.findById(customer.getCardno()).get();
+ /* TCard card=cardDao.findById(customer.getCardno()).get();
card.setStatus(RestaurantConstant.STATUS_CARD_CANCEL);
card.setCardverno(cardverno);
cardDao.save(card);
String date=DateUtil.getNow("yyyyMMdd");
- saveCardver(cardverno,date,customer);
+ saveCardver(cardverno,date,customer);*/
customerDao.deleteById(custid);
@@ -133,7 +134,7 @@
if (StringUtil.isEmpty((String) data[i][0]) || StringUtil.isEmpty((String) data[i][1]) || StringUtil.isEmpty((String) data[i][2])) {
msg = msg + "第" + i + "行,关键字段缺失。<br/>";
- } else if (customerDao.countByCardno((String) data[i][1]) >0) {
+ } else if (customerDao.countByCardno(Integer.parseInt((String) data[i][1])) >0) {
msg = msg + "第" + i + "行,该市名卡已存在。<br/>";
}
else{
@@ -153,8 +154,10 @@
// resp.setMsg("成功导入了"+sList.size()+"条信息");
resp.setMsg(String.format(Locale.CHINESE, msg));
return resp;*/
+ String batchno=DateUtil.getNow("yyyyMMddHHmmss");
if(StringUtil.isEmpty(msg)){
for(TCustomer d:sList){
+ d.setBatchno(batchno);
saveCustomer(d);
}
diff --git a/src/main/java/com/supwisdom/dlpay/restaurant/service/impl/DeviceDiscountRuleServiceImpl.java b/src/main/java/com/supwisdom/dlpay/restaurant/service/impl/DeviceDiscountRuleServiceImpl.java
index 6eedce3..cafc853 100644
--- a/src/main/java/com/supwisdom/dlpay/restaurant/service/impl/DeviceDiscountRuleServiceImpl.java
+++ b/src/main/java/com/supwisdom/dlpay/restaurant/service/impl/DeviceDiscountRuleServiceImpl.java
@@ -160,7 +160,7 @@
return null;
}
- private boolean checkRuleTimeError(String starttime, String endtime, String cardno, Integer custid) {
+ private boolean checkRuleTimeError(String starttime, String endtime, String cardno, String custid) {
Query query = entityManager.createNativeQuery("select count(a.id) from tb_discount_detail a, tb_discount_rule b where a.ruleid=b.ruleid and (b.status='uncheck' or b.status='normal') " +
"and a.cardno=:cardno and ((b.starttime<:starttime and b.endtime>:starttime) or (b.starttime<:endtime and b.endtime>:endtime)) ");
query.setParameter("cardno", cardno);
diff --git a/src/main/java/com/supwisdom/dlpay/restaurant/service/impl/DeviceServiceImpl.java b/src/main/java/com/supwisdom/dlpay/restaurant/service/impl/DeviceServiceImpl.java
index a38c246..37be9e7 100644
--- a/src/main/java/com/supwisdom/dlpay/restaurant/service/impl/DeviceServiceImpl.java
+++ b/src/main/java/com/supwisdom/dlpay/restaurant/service/impl/DeviceServiceImpl.java
@@ -71,7 +71,7 @@
Pageable pageable = PageRequest.of(param.getPageNo() - 1, param.getPageSize()
, Sort.by("id"));
if (null != param.getId()) {
- return new PageResult<>(deviceDao.findAllByIdContaining(param.getId(), pageable));
+ return new PageResult<>(deviceDao.findAllById(param.getId(), pageable));
}
return new PageResult<>(deviceDao.findAll(pageable));
}
diff --git a/src/main/java/com/supwisdom/dlpay/restaurant/service/impl/TransDtlFormServiceImpl.java b/src/main/java/com/supwisdom/dlpay/restaurant/service/impl/TransDtlFormServiceImpl.java
index cc64d39..0377d16 100644
--- a/src/main/java/com/supwisdom/dlpay/restaurant/service/impl/TransDtlFormServiceImpl.java
+++ b/src/main/java/com/supwisdom/dlpay/restaurant/service/impl/TransDtlFormServiceImpl.java
@@ -1,31 +1,24 @@
package com.supwisdom.dlpay.restaurant.service.impl;
-import com.supwisdom.dlpay.api.bean.JsonResult;
import com.supwisdom.dlpay.framework.util.DateUtil;
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.dao.AreaDao;
-import com.supwisdom.dlpay.restaurant.dao.TransDtlFormDao;
-import com.supwisdom.dlpay.restaurant.domain.TArea;
+import com.supwisdom.dlpay.restaurant.dao.TransDtlDao;
import com.supwisdom.dlpay.restaurant.domain.TTransDtlFormResult;
-import com.supwisdom.dlpay.restaurant.service.AreaService;
import com.supwisdom.dlpay.restaurant.service.TransDtlFormService;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.data.domain.PageRequest;
-import org.springframework.data.domain.Pageable;
-import org.springframework.data.domain.Sort;
import org.springframework.stereotype.Service;
import java.util.List;
+
@Service
public class TransDtlFormServiceImpl implements TransDtlFormService {
@Autowired
- private TransDtlFormDao transDtlFormDao;
+ private TransDtlDao transDtlFormDao;
@Override
- public PageResult<TTransDtlFormResult> getTransDtlFormResult(Integer devgroupid,String startdate,String enddate) {
+ public List<TTransDtlFormResult> getTransDtlFormResult(Integer devgroupid, String startdate, String enddate) {
if(StringUtil.isEmpty(startdate)){
startdate= DateUtil.getNewDay(-7, "yyyyMMdd");
@@ -34,7 +27,7 @@
enddate=DateUtil.getNow("yyyyMMdd");
}
- return new PageResult<>(transDtlFormDao.getFormResult(devgroupid,startdate,enddate));
+ return transDtlFormDao.getFormResult(devgroupid,startdate,enddate);
}
}
diff --git a/src/main/java/com/supwisdom/dlpay/system/controller/DictPoolAction.java b/src/main/java/com/supwisdom/dlpay/system/controller/DictPoolAction.java
index ca616de..af00076 100644
--- a/src/main/java/com/supwisdom/dlpay/system/controller/DictPoolAction.java
+++ b/src/main/java/com/supwisdom/dlpay/system/controller/DictPoolAction.java
@@ -1,7 +1,8 @@
package com.supwisdom.dlpay.system.controller;
import com.supwisdom.dlpay.api.bean.JsonResult;
-import com.supwisdom.dlpay.system.common.DictPool;
+import com.supwisdom.dlpay.system.service.DictionaryDataService;
+import com.supwisdom.dlpay.system.service.DictionaryProxy;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@@ -13,18 +14,16 @@
@RestController
public class DictPoolAction {
@Autowired
- private DictPool dictPool;
+ private DictionaryProxy dictionaryProxy;
@GetMapping("/dictpool")
public Map getDictDataByDicttype(@FormParam("dicttype") String dictType, HttpServletRequest request) {
dictType = request.getParameter("dicttype");
- Map res = DictPool.getDictMap(dictType);
- return res;
+ return dictionaryProxy.getDictionaryAsMap(dictType);
}
@GetMapping("/dictrefresh")
public JsonResult refreshDict() {
- dictPool.init();
return JsonResult.ok();
}
diff --git a/src/main/java/com/supwisdom/dlpay/system/service/DictionaryDataService.java b/src/main/java/com/supwisdom/dlpay/system/service/DictionaryDataService.java
index 752db9d..48cc4df 100644
--- a/src/main/java/com/supwisdom/dlpay/system/service/DictionaryDataService.java
+++ b/src/main/java/com/supwisdom/dlpay/system/service/DictionaryDataService.java
@@ -1,7 +1,13 @@
package com.supwisdom.dlpay.system.service;
-import java.util.HashMap;
+import com.supwisdom.dlpay.framework.domain.TDictionary;
+import com.supwisdom.dlpay.framework.domain.TTranscode;
+
+import java.util.List;
public interface DictionaryDataService {
+ List<TDictionary> getDictionaryByDictType(String dicttype);
+
+ List<TTranscode> getTransCode();
}
diff --git a/src/main/java/com/supwisdom/dlpay/system/service/DictionaryProxy.java b/src/main/java/com/supwisdom/dlpay/system/service/DictionaryProxy.java
new file mode 100644
index 0000000..723e954
--- /dev/null
+++ b/src/main/java/com/supwisdom/dlpay/system/service/DictionaryProxy.java
@@ -0,0 +1,50 @@
+package com.supwisdom.dlpay.system.service;
+
+import com.supwisdom.dlpay.framework.domain.DictionaryTable;
+import com.supwisdom.dlpay.framework.util.Dictionary;
+import org.springframework.stereotype.Component;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+@Component
+public class DictionaryProxy {
+ private final DictionaryDataService dictionaryDataService;
+
+ private final ParamService paramService;
+
+ public DictionaryProxy(DictionaryDataService dictionaryDataService, ParamService paramService) {
+ this.dictionaryDataService = dictionaryDataService;
+ this.paramService = paramService;
+ }
+
+ @SuppressWarnings("UNCHECKED_CAST")
+ public <T> Map<String, T> getDictionaryObject(String dictType) {
+ List<T> list = getDictionaryAsList(dictType);
+ Map<String, T> result = new HashMap<>();
+ for (Object item : list) {
+ if (item instanceof DictionaryTable) {
+ result.put(((DictionaryTable) item).getDictKey(), (T) item);
+ }
+ }
+ return result;
+ }
+
+ public Map<String, Object> getDictionaryAsMap(String dictType) {
+ List list = getDictionaryAsList(dictType);
+ Map<String, Object> result = new HashMap<>();
+ for (Object item : list) {
+ if (item instanceof DictionaryTable) {
+ DictionaryTable it = (DictionaryTable) item;
+ result.put(it.getDictKey(), it.getDictValue());
+ }
+ }
+ return result;
+ }
+
+ @SuppressWarnings("UNCHECKED_CAST")
+ public <T> List<T> getDictionaryAsList(String dictType) {
+ return (List<T>) dictionaryDataService.getDictionaryByDictType(dictType);
+ }
+}
diff --git a/src/main/java/com/supwisdom/dlpay/system/service/impl/DictionaryDataServiceImpl.java b/src/main/java/com/supwisdom/dlpay/system/service/impl/DictionaryDataServiceImpl.java
index dae1a04..523bded 100644
--- a/src/main/java/com/supwisdom/dlpay/system/service/impl/DictionaryDataServiceImpl.java
+++ b/src/main/java/com/supwisdom/dlpay/system/service/impl/DictionaryDataServiceImpl.java
@@ -1,10 +1,45 @@
package com.supwisdom.dlpay.system.service.impl;
+import com.supwisdom.dlpay.framework.dao.DictionaryDao;
+import com.supwisdom.dlpay.framework.dao.TranscodeDao;
+import com.supwisdom.dlpay.framework.domain.TDictionary;
+import com.supwisdom.dlpay.framework.domain.TTranscode;
import com.supwisdom.dlpay.system.service.DictionaryDataService;
-import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.cache.annotation.Cacheable;
import org.springframework.stereotype.Service;
+import java.util.ArrayList;
+import java.util.List;
+
@Service
public class DictionaryDataServiceImpl implements DictionaryDataService {
+ private final DictionaryDao dictionaryDao;
+ private final TranscodeDao transcodeDao;
+ public DictionaryDataServiceImpl(DictionaryDao dictionaryDao,
+ TranscodeDao transcodeDao) {
+ this.dictionaryDao = dictionaryDao;
+ this.transcodeDao = transcodeDao;
+ }
+
+ @Override
+ @Cacheable(cacheNames = "dicationary_cache", key = "#p0")
+ public List<TDictionary> getDictionaryByDictType(String dicttype) {
+ List<TDictionary> list = dictionaryDao.findAllByDicttype(dicttype);
+ if (!list.isEmpty()) {
+ return list;
+ }
+ return new ArrayList<>();
+ }
+
+
+ @Override
+ @Cacheable(cacheNames = "trans_code_cache")
+ public List<TTranscode> getTransCode() {
+ List<TTranscode> list = transcodeDao.findAll();
+ if (!list.isEmpty()) {
+ return list;
+ }
+ return new ArrayList<>();
+ }
}
diff --git a/src/main/resources/static/custom/module/index.js b/src/main/resources/static/custom/module/index.js
index d82ed09..df14f67 100755
--- a/src/main/resources/static/custom/module/index.js
+++ b/src/main/resources/static/custom/module/index.js
@@ -5,7 +5,7 @@
var baseUrl = window.location.pathname;
var index = {
- pageTabs: false, // 是否开启多标签
+ pageTabs: true, // 是否开启多标签
// 路由注册
initRouter: function () {
// 自动扫描side菜单注册
diff --git a/src/main/resources/static/libs/custom.js b/src/main/resources/static/libs/custom.js
index 208bf94..bb28ba5 100644
--- a/src/main/resources/static/libs/custom.js
+++ b/src/main/resources/static/libs/custom.js
@@ -21,7 +21,7 @@
data: "dicttype=" + dictType,
contentType: "application/x-www-form-urlencoded",
success: function (data) {
- if (data == null || data == "") {
+ if (data == null || data === "") {
that.storage.removeItem(dictType);
} else {
that.storage.setItem(dictType, JSON.stringify(data));
@@ -60,15 +60,20 @@
},
initAll: function (url) {
this.url = url;
- this.addNewDict("allReverseflagList");
+ this.addNewDict("transtypeList")
+ .addNewDict("reverseFlagList")
+ .addNewDict("transtatusList")
+ .addNewDict("idtypeList")
+ .addNewDict("sexList")
+ .addNewDict("accountStatusList")
},
getDict: function (dictType) {
var dict, that = this;
- if (that.pool[dictType] != undefined) {
+ if (that.pool[dictType] !== undefined) {
return that.pool[dictType];
} else {
dict = that.storage.getItem(dictType);
- if (dict == undefined) {
+ if (dict === undefined) {
return null;
} else {
that.pool[dictType] = JSON.parse(dict);
@@ -83,7 +88,7 @@
return code;
} else {
var c = "" + code;
- return dict[c] == undefined ? code : dict[c];
+ return dict[c] === undefined ? code : dict[c];
}
}
}
diff --git a/src/main/resources/templates/restaurant/customer/index.html b/src/main/resources/templates/restaurant/customer/index.html
index 5d0a890..09fc1f2 100644
--- a/src/main/resources/templates/restaurant/customer/index.html
+++ b/src/main/resources/templates/restaurant/customer/index.html
@@ -9,14 +9,14 @@
<div class="layui-card-body">
<div class="layui-form toolbar">
搜索:
- <input id="search-value" class="layui-input search-input" type="text" placeholder="输入姓名"/> 
- <button id="btn-search" class="layui-btn icon-btn" data-type="search"><i class="layui-icon"></i>搜索
+ <input id="customer-search-value" class="layui-input search-input" type="text" placeholder="输入姓名"/> 
+ <button id="customer-btn-search" class="layui-btn icon-btn" data-type="search"><i class="layui-icon"></i>搜索
</button>
- <button id="btn-add" class="layui-btn icon-btn" data-type="add"><i class="layui-icon"></i>添加人员</button>
- <button id="btn-import" class="layui-btn icon-btn" ><i class="layui-icon"></i>批量导入</button>
+ <button id="customer-btn-add" class="layui-btn icon-btn" data-type="add"><i class="layui-icon"></i>添加人员</button>
+ <button id="customer-btn-import" class="layui-btn icon-btn" ><i class="layui-icon"></i>批量导入</button>
</div>
- <table class="layui-table" id="table" lay-filter="table"></table>
+ <table class="layui-table" id="customer-table" lay-filter="table"></table>
</div>
</div>
@@ -32,7 +32,7 @@
// 渲染表格
table.render({
- elem: '#table',
+ elem: '#customer-table',
url: '[[@{/customer/list}]]',
page: true,
cols: [
@@ -52,14 +52,14 @@
]
});
// 搜索按钮点击事件
- $('#btn-search').click(function () {
- let key = $('#search-value').val();
- table.reload('table', {where: {searchkey: key}, page: {curr: 1}});
+ $('#customer-btn-search').click(function () {
+ let key = $('#customer-search-value').val();
+ table.reload('customer-table', {where: {searchkey: key}, page: {curr: 1}});
});
- $('#btn-add').click(function () {
+ $('#customer-btn-add').click(function () {
showModel();
});
- $('#btn-import').click(function () {
+ $('#customer-btn-import').click(function () {
showDownload();
});
let showDownload = function () {
@@ -68,7 +68,7 @@
title: title,
path: '[[@{/customer/loadimport}]]',
finish: function () {
- table.reload('table', {});
+ table.reload('customer-table', {});
}
});
};
@@ -79,7 +79,7 @@
title: title,
path: '[[@{/customer/loadadd}]]',
finish: function () {
- table.reload('table', {});
+ table.reload('customer-table', {});
}
});
};
@@ -118,7 +118,7 @@
} else {
layer.msg(data.msg, {icon: 2});
}
- table.reload('table', {});
+ table.reload('customer-table', {});
}, function (ret) {
console.log(ret);
layer.closeAll('loading');
diff --git a/src/main/resources/templates/restaurant/device/index.html b/src/main/resources/templates/restaurant/device/index.html
index 1cc4d60..69479ec 100644
--- a/src/main/resources/templates/restaurant/device/index.html
+++ b/src/main/resources/templates/restaurant/device/index.html
@@ -9,14 +9,14 @@
<div class="layui-card-body">
<div class="layui-form toolbar">
搜索:
- <input id="search-value" class="layui-input search-input" type="text" placeholder="输入终端编号"/> 
- <button id="btn-search" class="layui-btn icon-btn" data-type="search"><i class="layui-icon"></i>搜索
+ <input id="device-search-value" class="layui-input search-input" type="text" placeholder="输入终端编号"/> 
+ <button id="device-btn-search" class="layui-btn icon-btn" data-type="search"><i class="layui-icon"></i>搜索
</button>
- <button id="btn-add" class="layui-btn icon-btn" data-type="add"><i class="layui-icon"></i>添加设备</button>
- <button id="btn-import" class="layui-btn icon-btn" ><i class="layui-icon"></i>批量导入</button>
+ <button id="device-btn-add" class="layui-btn icon-btn" data-type="add"><i class="layui-icon"></i>添加设备</button>
+ <button id="device-btn-import" class="layui-btn icon-btn" ><i class="layui-icon"></i>批量导入</button>
</div>
- <table class="layui-table" id="table" lay-filter="table"></table>
+ <table class="layui-table" id="device-table" lay-filter="table"></table>
</div>
</div>
@@ -35,7 +35,7 @@
// 渲染表格
table.render({
- elem: '#table',
+ elem: '#device-table',
url: '[[@{/device/list}]]',
page: true,
cols: [
@@ -54,14 +54,14 @@
]
});
// 搜索按钮点击事件
- $('#btn-search').click(function () {
- let key = $('#search-value').val();
- table.reload('table', {where: {searchkey: key}, page: {curr: 1}});
+ $('#device-btn-search').click(function () {
+ let key = $('#device-search-value').val();
+ table.reload('device-table', {where: {searchkey: key}, page: {curr: 1}});
});
- $('#btn-add').click(function () {
+ $('#device-btn-add').click(function () {
showModel();
});
- $('#btn-import').click(function () {
+ $('#device-btn-import').click(function () {
showDownload();
});
let showDownload = function () {
@@ -70,7 +70,7 @@
title: title,
path: '[[@{/device/loadimport}]]',
finish: function () {
- table.reload('table', {});
+ table.reload('device-table', {});
}
});
};
@@ -81,7 +81,7 @@
title: title,
path: '[[@{/device/loadadd}]]',
finish: function () {
- table.reload('table', {});
+ table.reload('device-table', {});
}
});
};
@@ -119,7 +119,7 @@
} else {
layer.msg(data.msg, {icon: 2});
}
- table.reload('table', {});
+ table.reload('device-table', {});
}, function (ret) {
console.log(ret);
layer.closeAll('loading');
diff --git a/src/main/resources/templates/restaurant/devicegroup/index.html b/src/main/resources/templates/restaurant/devicegroup/index.html
index f215d11..5b9efad 100644
--- a/src/main/resources/templates/restaurant/devicegroup/index.html
+++ b/src/main/resources/templates/restaurant/devicegroup/index.html
@@ -5,10 +5,10 @@
</div>
<div class="layui-card-body">
<div class="layui-form toolbar">
- <button id="btn-add" class="layui-btn icon-btn" data-type="add"><i class="layui-icon"></i>添加设备组</button>
+ <button id="devicegroup-btn-add" class="layui-btn icon-btn" data-type="add"><i class="layui-icon"></i>添加设备组</button>
</div>
- <div id="menuContent" class="menuContent " style="position: absolute;">
- <ul id="ztree-menu" class="ztree" style="margin-top:0;"></ul>
+ <div id="devicegroup-menuContent" class="menuContent " style="position: absolute;">
+ <ul id="devicegroup-ztree-menu" class="ztree" style="margin-top:0;"></ul>
</div>
</div>
</div>
@@ -25,16 +25,16 @@
<div class="layui-card-body ">
<div class="layui-form toolbar">
- <input id="search-value" class="layui-input search-input" type="hidden"/> 
+ <input id="devicegroup-search-value" class="layui-input search-input" type="hidden"/> 
<!-- <button id="btn-search" class="layui-btn icon-btn" data-type="search"><i class="layui-icon"></i>搜索
</button>-->
</div>
- <table class="layui-table" id="table" lay-filter="table"></table>
+ <table class="layui-table" id="devicegroup-table" lay-filter="table"></table>
</div>
</div>
-<script type="text/html" id="dev-tpl-state">
+<script type="text/html" id="devicegroup-dev-tpl-state">
<input type="checkbox" lay-filter="dev-tpl-state" value="{{d.id}}" lay-skin="switch" lay-text="正常|注销" disabled
{{d.state=='1'?'checked':''}} />
</script>
@@ -49,7 +49,7 @@
// 渲染表格
table.render({
- elem: '#table',
+ elem: '#devicegroup-table',
url: '[[@{/devicegroup/listDevice}]]',
page: true,
cols: [
@@ -58,17 +58,17 @@
{field: 'devicename', title: '设备名称',width: 160, sort: true},
{field: 'devphyid', sort: true, width: 120, title: '设备物理id'},
{field: 'shopid', sort: true, width: 100, title: '商户id'},
- {field: 'factoryid', sort: true, width: 150, title: '设备厂商'},
+ {field: 'factoryid', sort: true, width: 100, title: '设备厂商'},
{field: 'state', title: '状态', sort: true, width: 100, templet: '#dev-tpl-state'},
]
]
});
// 搜索按钮点击事件
- $('#btn-search').click(function () {
+ $('#devicegroup-btn-search').click(function () {
let key = $('#search-value').val();
- table.reload('table', {where: {searchkey: key}, page: {curr: 1}});
+ table.reload('devicegroup-table', {where: {searchkey: key}, page: {curr: 1}});
});
- $('#btn-add').click(function () {
+ $('#devicegroup-btn-add').click(function () {
showModel();
});
@@ -77,7 +77,7 @@
admin.putTempData('t_devgroup', data);
admin.popupCenter({
title: title,
- path: '/devicegroup/loadadd',
+ path: '[[@{/devicegroup/loadadd}]]',
finish: function () {
loadTree();
}
@@ -116,7 +116,7 @@
} else {
layer.msg(data.msg, {icon: 2});
}
- table.reload('table', {});
+ table.reload('devicegroup-table', {});
}, function (ret) {
console.log(ret);
layer.closeAll('loading');
@@ -127,7 +127,7 @@
function OnGrpClick(e, treeId, treeNode) {
console.log(treeNode.id);
- table.reload('table', {where: {searchkey: treeNode.id}, page: {curr: 1}});
+ table.reload('devicegroup-table', {where: {searchkey: treeNode.id}, page: {curr: 1}});
}
function loadZTree(eNodes) {
@@ -162,7 +162,7 @@
beforeRemove: beforeRemove
}
};
- $.fn.zTree.init($("#ztree-menu"), menuSetting, eNodes);
+ $.fn.zTree.init($("#devicegroup-ztree-menu"), menuSetting, eNodes);
}
$(document).ready(function () {
diff --git a/src/main/resources/templates/restaurant/devicemanage/index.html b/src/main/resources/templates/restaurant/devicemanage/index.html
index 7ca7cc3..92c05ad 100644
--- a/src/main/resources/templates/restaurant/devicemanage/index.html
+++ b/src/main/resources/templates/restaurant/devicemanage/index.html
@@ -9,24 +9,24 @@
<div class="layui-card-body">
<div class="layui-form toolbar">
设备名称:
- <input id="devicename" class="layui-input search-input" type="text"/> 
+ <input id="devicemanage-devicename" class="layui-input search-input" type="text"/> 
终端ID:
- <input id="termid" class="layui-input search-input" type="text" /> 
+ <input id="devicemanage-termid" class="layui-input search-input" type="text" /> 
设备物理ID:
- <input id="devphyid" class="layui-input search-input" type="text" /> 
+ <input id="devicemanage-devphyid" class="layui-input search-input" type="text" /> 
设备厂商:
- <select name="factoryid" id="factoryid" lay-verify="required">
+ <select name="factoryid" id="devicemanage-factoryid" lay-verify="required">
<option value="XKP">新开普</option>
</select>
- <button id="btn-search" class="layui-btn icon-btn" data-type="search"><i class="layui-icon"></i>搜索
+ <button id="devicemanage-btn-search" class="layui-btn icon-btn" data-type="search"><i class="layui-icon"></i>搜索
</button>
</div>
- <table class="layui-table" id="table" lay-filter="table"></table>
+ <table class="layui-table" id="devicemanage-table" lay-filter="table"></table>
</div>
</div>
-<script type="text/html" id="dev-tpl-state">
+<script type="text/html" id="devicemanage-dev-tpl-state">
<input type="checkbox" lay-filter="dev-tpl-state" value="{{d.id}}" lay-skin="switch" lay-text="正常|注销"
{{d.state=='1'?'checked':''}} />
</script>
@@ -41,7 +41,7 @@
// 渲染表格
table.render({
- elem: '#table',
+ elem: '#devicemanage-table',
url: '[[@{/devicemanage/list}]]',
page: true,
cols: [
@@ -61,12 +61,12 @@
]
});
// 搜索按钮点击事件
- $('#btn-search').click(function () {
- let devphyid = $('#devphyid').val();
- let id = $('#termid').val();
- let factoryid = $('#factoryid').val();
- let devicename = $('#devicename').val();
- table.reload('table', {where: {
+ $('#devicemanage-btn-search').click(function () {
+ let devphyid = $('#devicemanage-devphyid').val();
+ let id = $('#devicemanage-termid').val();
+ let factoryid = $('#devicemanage-factoryid').val();
+ let devicename = $('#devicemanage-devicename').val();
+ table.reload('devicemanage-table', {where: {
devphyid: devphyid,
id:id,
factoryid:factoryid,
@@ -81,7 +81,7 @@
title: title,
path: '[[@{/devicemanage/loadupdate}]]',
finish: function () {
- table.reload('table', {});
+ table.reload('devicemanage-table', {});
}
});
};
diff --git a/src/main/resources/templates/restaurant/transdtl/index.html b/src/main/resources/templates/restaurant/transdtl/index.html
index 6c720d1..d5c1b20 100644
--- a/src/main/resources/templates/restaurant/transdtl/index.html
+++ b/src/main/resources/templates/restaurant/transdtl/index.html
@@ -8,17 +8,17 @@
</div>
<div class="layui-card-body">
<div class="layui-form toolbar">
- <form id="form" >
+ <form id="transdtl-form" >
<div class="layui-form-item">
<div class="layui-inline">
<label class="layui-form-label">交易日期:</label>
<div class="layui-input-inline">
<input type="text" name="startdate" class="layui-input" th:value="${startDate}"
- id="startdate" placeholder="yyyy-MM-dd">
+ id="transdtl-startdate" placeholder="yyyy-MM-dd">
</div>
<div class="layui-input-inline">
<input type="text" name="enddate" class="layui-input" th:value="${endDate}"
- id="enddate" placeholder="yyyy-MM-dd">
+ id="transdtl-enddate" placeholder="yyyy-MM-dd">
</div>
</div>
</div>
@@ -26,19 +26,19 @@
<div class="layui-inline">
<label class="layui-form-label"> 姓名:</label>
<div class="layui-input-inline">
- <input id="custname" name="custname" class="layui-input" type="text"/>
+ <input id="transdtl-custname" name="custname" class="layui-input" type="text"/>
</div>
</div>
<div class="layui-inline">
<label class="layui-form-label"> 交易号:</label>
<div class="layui-input-inline">
- <input id="refno" name="refno" class="layui-input " type="text"/>
+ <input id="transdtl-refno" name="refno" class="layui-input " type="text"/>
</div>
</div>
<div class="layui-inline">
<label class="layui-form-label">终端号:</label>
<div class="layui-input-inline">
- <input id="termid" name="termid" class="layui-input " type="text"/>
+ <input id="transdtl-termid" name="termid" class="layui-input " type="text"/>
</div>
</div>
</div>
@@ -47,7 +47,7 @@
<div class="layui-inline">
<label class="layui-form-label"> 商户:</label>
<div class="layui-input-inline">
- <select name="shopid" id="shopid">
+ <select name="shopid" id="transdtl-shopid">
<option th:each="shop : ${shoplistForSelect}" th:value="${shop.shopid}">[[${shop.shopname}]]</option>
</select>
</div>
@@ -55,7 +55,7 @@
<div class="layui-inline">
<label class="layui-form-label">流水状态:</label>
<div class="layui-input-inline">
- <select name="status" id="status">
+ <select name="status" id="transdtl-status">
<option value="" selected>全部</option>
<option value="1">已入账</option>
<option value="0">未入账</option>
@@ -63,26 +63,26 @@
</div>
</div>
<div class="layui-inline" style="margin-left:5%">
- <button id="btn-search" class="layui-btn icon-btn" data-type="search">
+ <button id="transdtl-btn-search" class="layui-btn icon-btn" data-type="search">
<i class="layui-icon"></i>搜索
</button>
- <button id="btn-reset" class="layui-btn layui-btn-primary">重置
+ <button id="transdtl-btn-reset" class="layui-btn layui-btn-primary">重置
</button>
<!-- <button id="btn-export" lay-filter="form-submit" lay-submit class="layui-btn layui-btn-primary">导出
</button>-->
- <a id="btn-export" href="javascript:void(0);" class="layui-btn layui-btn-primary" >导出</a>
+ <a id="transdtl-btn-export" href="javascript:void(0);" class="layui-btn layui-btn-primary" >导出</a>
</div>
</div>
</form>
</div>
- <table class="layui-table" id="table" lay-filter="table"></table>
+ <table class="layui-table" id="transdtl-table" lay-filter="table"></table>
</div>
</div>
-<input hidden th:value="${shopList}" id="shoplist">
+<input hidden th:value="${shopList}" id="transdtl-shoplist">
<script>
- var rawlist = $("#shoplist").val();
+ var rawlist = $("#transdtl-shoplist").val();
var shoplist = JSON.parse(rawlist);
layui.use(['form', 'table', 'layer', 'admin', 'element', 'laydate'], function () {
@@ -90,19 +90,19 @@
let table = layui.table;
let admin = layui.admin;
- var enddate = $("#enddate").val();
- var startdate=$("#startdate").val();
+ var enddate = $("#transdtl-enddate").val();
+ var startdate=$("#transdtl-startdate").val();
form.render('select');
var laydate = layui.laydate;
laydate.render({
- elem: '#startdate',
+ elem: '#transdtl-startdate',
btns: ['now', 'confirm'],
trigger: 'click',
max: enddate
});
laydate.render({
- elem: '#enddate',
+ elem: '#transdtl-enddate',
btns: ['now', 'confirm'],
trigger: 'click',
max: enddate
@@ -110,7 +110,7 @@
// 渲染表格
table.render({
- elem: '#table',
+ elem: '#transdtl-table',
url: '[[@{/transdtl/list}]]',
where:{
startdate:startdate,
@@ -156,7 +156,6 @@
{
field: 'shopid',
title: '商户',
-
align: 'center',
templet: function (item) {
return shoplist[item.shopid];
@@ -165,59 +164,43 @@
{
field: 'status',
title: '流水状态',
-
align: 'center',
templet: function (item) {
- if (item.status == 0) {
- return '未入账';
- } else if (item.status == 1) {
- return '已入账';
- } else {
- return '未知';
- }
+ return getTempDictValue('transtatusList',item.status);
}
},
{
field: 'transtype',
title: '流水类型',
sort: true,
-
align: 'center',
templet: function (item) {
- if (item.transtype == 'lj') {
- return '联机';
- } else if (item.transtype == 'tj') {
- return '脱机';
- } else if (item.transtype == 'cz') {
- return '冲正';
- } else {
- return '未知';
- }
+ return getTempDictValue('transtypeList',item.transtype);
}
},
]
]
});
- $('#btn-export').click(function () {
+ $('#transdtl-btn-export').click(function () {
var url = '[[@{/transdtl/export}]]';
/* $("#form").attr("action",url);
$("#form").submit();*/
- var param = $("#form").serialize();
+ var param = $("#transdtl-form").serialize();
- $("#btn-export").attr("href", url + "?" + param);
- $("#btn-export")[0].click();
+ $("#transdtl-btn-export").attr("href", url + "?" + param);
+ $("#transdtl-btn-export")[0].click();
});
// 搜索按钮点击事件
- $('#btn-search').click(function () {
- let custname = $('#custname').val();
- let shopid = $('#shopid').val();
- let startdate = $('#startdate').val();
- let enddate = $('#enddate').val();
- let refno = $('#refno').val();
- let status = $('#status').val();
- let termid = $('#termid').val();
- table.reload('table', {
+ $('#transdtl-btn-search').click(function () {
+ let custname = $('#transdtl-custname').val();
+ let shopid = $('#transdtl-shopid').val();
+ let startdate = $('#transdtl-startdate').val();
+ let enddate = $('#transdtl-enddate').val();
+ let refno = $('#transdtl-refno').val();
+ let status = $('#transdtl-status').val();
+ let termid = $('#transdtl-termid').val();
+ table.reload('transdtl-table', {
where: {
custname: custname,
shopid: shopid,
@@ -234,11 +217,11 @@
});
- $('#btn-reset').click(function () {
+ $('#transdtl-btn-reset').click(function () {
$(".layui-input").val("");
$("select").val("");
- $("#startdate").val(startdate);
- $("#enddate").val(enddate);
+ $("#transdtl-startdate").val(startdate);
+ $("#transdtl-enddate").val(enddate);
return false;
});
diff --git a/src/main/resources/templates/restaurant/transdtlrev/index.html b/src/main/resources/templates/restaurant/transdtlrev/index.html
index 21b5497..5a0a06a 100644
--- a/src/main/resources/templates/restaurant/transdtlrev/index.html
+++ b/src/main/resources/templates/restaurant/transdtlrev/index.html
@@ -12,42 +12,42 @@
<div class="layui-inline">
<label class="layui-form-label"> 姓名:</label>
<div class="layui-input-inline">
- <input id="custname" name="custname" class="layui-input" type="text"/>
+ <input id="transdtlrev-custname" name="custname" class="layui-input" type="text"/>
</div>
</div>
<div class="layui-inline">
<label class="layui-form-label"> 交易号:</label>
<div class="layui-input-inline">
- <input id="refno" name="refno" class="layui-input " type="text"/>
+ <input id="transdtlrev-refno" name="refno" class="layui-input " type="text"/>
</div>
</div>
<div class="layui-inline">
<label class="layui-form-label">交易日期:</label>
<div class="layui-input-inline">
<input type="text" name="accdate" class="layui-input" th:value="${accdate}"
- id="accdate" placeholder="yyyy-MM-dd">
+ id="transdtlrev-accdate" placeholder="yyyy-MM-dd">
</div>
</div>
</div>
<div class="layui-form-item">
<div class="layui-inline" style="margin-left:5%">
- <button id="btn-search" class="layui-btn icon-btn" data-type="search">
+ <button id="transdtlrev-btn-search" class="layui-btn icon-btn" data-type="search">
<i class="layui-icon"></i>搜索
</button>
- <button id="btn-reset" class="layui-btn layui-btn-primary">重置
+ <button id="transdtlrev-btn-reset" class="layui-btn layui-btn-primary">重置
</button>
</div>
</div>
</div>
- <table class="layui-table" id="table" lay-filter="table"></table>
+ <table class="layui-table" id="transdtlrev-table" lay-filter="table"></table>
</div>
</div>
-<input hidden th:value="${shopList}" id="shoplist">
+<input hidden th:value="${shopList}" id="transdtlrev-shoplist">
<script>
- var rawlist = $("#shoplist").val();
+ var rawlist = $("#transdtlrev-shoplist").val();
var shoplist = JSON.parse(rawlist);
layui.use(['form', 'table', 'layer', 'admin', 'element', 'laydate'], function () {
@@ -55,12 +55,12 @@
let table = layui.table;
let admin = layui.admin;
- var accdate = $("#accdate").val();
+ var accdate = $("#transdtlrev-accdate").val();
form.render('select');
var laydate = layui.laydate;
laydate.render({
- elem: '#accdate',
+ elem: '#transdtlrev-accdate',
btns: ['now', 'confirm'],
trigger: 'click',
max: accdate
@@ -69,7 +69,7 @@
// 渲染表格
table.render({
- elem: '#table',
+ elem: '#transdtlrev-table',
url: '[[@{/transdtlrev/list}]]',
where:{
accdate:accdate
@@ -99,7 +99,6 @@
{
field: 'shopid',
title: '商户',
-
align: 'center',
templet: function (item) {
return shoplist[item.shopid];
@@ -108,16 +107,9 @@
{
field: 'status',
title: '流水状态',
-
align: 'center',
templet: function (item) {
- if (item.status == 0) {
- return '未入账';
- } else if (item.status == 1) {
- return '已入账';
- } else {
- return '未知';
- }
+ return getTempDictValue('transtatusList',item.status);
}
},
{
@@ -126,15 +118,7 @@
sort: true,
align: 'center',
templet: function (item) {
- if (item.transtype == 'lj') {
- return '联机';
- } else if (item.transtype == 'tj') {
- return '脱机';
- } else if (item.transtype == 'cz') {
- return '冲正';
- } else {
- return '未知';
- }
+ return getTempDictValue('transtypeList',item.transtype);
}
},
{
@@ -142,6 +126,7 @@
if(item.transtype!='cz'){
return ' <a class="layui-btn layui-btn-xs" lay-event="edit"><i class="layui-icon layui-icon-edit"></i>冲正</a> ';
}
+ return '';
}
}
@@ -149,7 +134,7 @@
]
});
- table.on('tool(table)', function (obj) {
+ table.on('tool(transdtlrev-table)', function (obj) {
let data = obj.data;
let layEvent = obj.event;
if (layEvent === 'edit') {
@@ -164,17 +149,17 @@
title: title,
path: '[[@{/transdtlrev/loadrevert}]]',
finish: function () {
- table.reload('table', {});
+ table.reload('transdtlrev-table', {});
}
});
};
// 搜索按钮点击事件
- $('#btn-search').click(function () {
- let custname = $('#custname').val();
- let refno = $('#refno').val();
- let accdate = $('#accdate').val();
- table.reload('table', {
+ $('#transdtlrev-btn-search').click(function () {
+ let custname = $('#transdtlrev-custname').val();
+ let refno = $('#transdtlrev-refno').val();
+ let accdate = $('#transdtlrev-accdate').val();
+ table.reload('transdtlrev-table', {
where: {
custname: custname,
accdate: accdate,
@@ -187,9 +172,9 @@
});
- $('#btn-reset').click(function () {
+ $('#transdtlrev-btn-reset').click(function () {
$(".layui-input").val("");
- $("#accdate").val(accdate);
+ $("#transdtlrev-accdate").val(accdate);
return false;
});