diff --git a/jianshui-admin/src/main/java/com/jianshui/api/controller/webservice/income/v1/impl/InvoiceCheckWebServiceImpl.java b/jianshui-admin/src/main/java/com/jianshui/api/controller/webservice/income/v1/impl/InvoiceCheckWebServiceImpl.java index 5fe9dda..3237ca1 100644 --- a/jianshui-admin/src/main/java/com/jianshui/api/controller/webservice/income/v1/impl/InvoiceCheckWebServiceImpl.java +++ b/jianshui-admin/src/main/java/com/jianshui/api/controller/webservice/income/v1/impl/InvoiceCheckWebServiceImpl.java @@ -1,6 +1,7 @@ package com.jianshui.api.controller.webservice.income.v1.impl; import cn.hutool.core.collection.CollectionUtil; +import cn.hutool.core.util.ReUtil; import cn.hutool.core.util.XmlUtil; import com.alibaba.fastjson.JSONObject; // import com.jianshui.api.controller.webservice.income.v1.InvoiceCheckWebService; @@ -8,6 +9,7 @@ import com.jianshui.common.core.domain.AjaxResult; import com.jianshui.common.core.domain.entity.Companyservice; import com.jianshui.common.utils.DateUtils; import com.jianshui.common.utils.StringUtils; +import com.jianshui.common.utils.ToLowerBeanUtil; import com.jianshui.income.domain.entity.InvoiceCheck; import com.jianshui.income.domain.entity.InvoiceCheckDetail; import com.jianshui.income.domain.vo.render.*; @@ -123,6 +125,10 @@ public class InvoiceCheckWebServiceImpl { if (StringUtils.isEmpty(InvTime)) { return buildResult(result, "1", "开票日期不能为空", null); } + boolean isMatch = ReUtil.isMatch("^\\d{4}-\\d{2}-\\d{2}$", InvTime); + if(!isMatch){ + return buildResult(result, "1", "开票日期格式错误 yyyy-MM-dd", null); + } // 如果Jym这个参数为空,我就去判断InvOther是否为6位且不带小数点,如果确实如此,那就直接将InvOther作为校验码传给大象 // 2023.03.09 如果InvOtherNode是6位且不到小数点,那么就直接将InvOtherNode作为校验码传给大象 String Jym = InvOtherElementNode != null ? InvOtherElementNode.getNodeValue() : ""; @@ -331,6 +337,7 @@ public class InvoiceCheckWebServiceImpl { } private Element json2Element(Document result, String elementName, JSONObject jsonObject) { + Element parent = result.createElement(elementName); jsonObject.keySet().forEach(key -> { String value = jsonObject.getString(key); @@ -368,9 +375,8 @@ public class InvoiceCheckWebServiceImpl { vo.setResult(responseCheckResultVO); resp.setDATA(vo); - return resp; - + return resp; } // private WebServiceRespVO buildResult(Document result, String code, String message, Element fp) { diff --git a/jianshui-admin/src/main/resources/application.yml b/jianshui-admin/src/main/resources/application.yml index 895842e..7b20ab2 100644 --- a/jianshui-admin/src/main/resources/application.yml +++ b/jianshui-admin/src/main/resources/application.yml @@ -46,7 +46,7 @@ spring: # 国际化资源文件路径 basename: i18n/messages profiles: - active: dev-local + active: dev # 文件上传 servlet: multipart: diff --git a/jianshui-common/src/main/java/com/jianshui/common/utils/InvoiceUtils.java b/jianshui-common/src/main/java/com/jianshui/common/utils/InvoiceUtils.java index 45fc631..7ceb872 100644 --- a/jianshui-common/src/main/java/com/jianshui/common/utils/InvoiceUtils.java +++ b/jianshui-common/src/main/java/com/jianshui/common/utils/InvoiceUtils.java @@ -87,4 +87,27 @@ public class InvoiceUtils { } return ""; } + + + /** + * 匹配手机号、电话号 + */ + public static String getPhoneNew(final String raw) { + String regularExpression = "0?[1-9]{2,3}-?[0-9]{5,10}"; + ReUtil.findAll(regularExpression, raw, 0, new ArrayList()); + List resultFindAll = ReUtil.findAll(regularExpression, raw, 0, new ArrayList()); + if (resultFindAll.size() > 0) { + return resultFindAll.get(0); + } + return ""; + } + + + + + + + + + } diff --git a/jianshui-common/src/main/java/com/jianshui/common/utils/ToLowerBeanUtil.java b/jianshui-common/src/main/java/com/jianshui/common/utils/ToLowerBeanUtil.java new file mode 100644 index 0000000..3bc58dd --- /dev/null +++ b/jianshui-common/src/main/java/com/jianshui/common/utils/ToLowerBeanUtil.java @@ -0,0 +1,61 @@ +package com.jianshui.common.utils; + +import cn.hutool.core.bean.BeanUtil; + +import java.util.Map; + +/** +* @Author: kk +* @Description: 将类转换为小写 +* @DateTime: 2023/5/23 16:44 +* @Params: +* @Return +*/ +public class ToLowerBeanUtil { + + /** + * 获取对象属性值-忽略大小写 + * + * @param bean 对象 + * @param fieldName 属性名 + * @return 属性值 + */ + public static Object getPropertyIgnoreCase(Object bean, String fieldName) { + if (bean == null) { + return null; + } + + Map map = BeanUtil.beanToMap(bean, false, true); + for (Map.Entry entry : map.entrySet()) { + if (entry.getKey().toLowerCase().equals(fieldName.toLowerCase())) { + return entry.getValue(); + } + } + + return null; + } + + /** + * 将Bean的属性名转为小写 + * + * @param bean 对象 + */ + public static void toLowerCase(Object bean) { + if (bean == null) { + return; + } + + Map map = BeanUtil.beanToMap(bean, false, true); + for (Map.Entry entry : map.entrySet()) { + String key = entry.getKey(); + if (!key.equals(key.toLowerCase())) { + Object value = entry.getValue(); + BeanUtil.setFieldValue(bean, key, null); + BeanUtil.setFieldValue(bean, key.toLowerCase(), value); + } + } + } + + + +} diff --git a/jianshui-income/src/main/java/com/jianshui/income/service/impl/EleCheckInvoiceImpl.java b/jianshui-income/src/main/java/com/jianshui/income/service/impl/EleCheckInvoiceImpl.java index 79e2270..7838262 100644 --- a/jianshui-income/src/main/java/com/jianshui/income/service/impl/EleCheckInvoiceImpl.java +++ b/jianshui-income/src/main/java/com/jianshui/income/service/impl/EleCheckInvoiceImpl.java @@ -726,10 +726,7 @@ public class EleCheckInvoiceImpl implements ICheckInvoice { // 2022.09.16 浪潮新增需求,新增销货方地址电话拆分为两个字段 String xhfdzdh = invoiceCheck.getXhfdzdh(); if (StringUtils.isNotEmpty(xhfdzdh)) { - String dh = InvoiceUtils.getMobile(xhfdzdh); - if (StringUtils.isEmpty(dh)) { - dh = InvoiceUtils.getPhone(xhfdzdh); - } + String dh = InvoiceUtils.getPhoneNew(xhfdzdh); if (StringUtils.isNotEmpty(dh)) { invoiceCheck.setXhfdz(xhfdzdh.replace(dh, "")); invoiceCheck.setXhfdh(dh); diff --git a/jianshui-income/src/main/java/com/jianshui/income/utils/elephant/ElephantUtils.java b/jianshui-income/src/main/java/com/jianshui/income/utils/elephant/ElephantUtils.java index 7ef1bfc..754b525 100644 --- a/jianshui-income/src/main/java/com/jianshui/income/utils/elephant/ElephantUtils.java +++ b/jianshui-income/src/main/java/com/jianshui/income/utils/elephant/ElephantUtils.java @@ -121,7 +121,6 @@ public class ElephantUtils { stringBuffer.append(str); } result = JSONObject.parseObject(stringBuffer.toString()); - } catch (Exception e) { result = null; e.printStackTrace();