release
gaorl 2 years ago
commit 0dbf17d48f
  1. 2
      order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/buyer/dao/BuyerMapper.java
  2. 5
      order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/buyer/model/BuyerEntity.java
  3. 5
      order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/buyer/model/BuyerImportExcel.java
  4. 5
      order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/buyer/model/BuyerImportExcelEnum.java
  5. 34
      order-management-base-service/src/main/resources/mybatis/mapper/BuyerMapper.xml
  6. 6
      order-management-common/src/main/java/com/dxhy/order/constant/OrderInfoEnum.java
  7. 135
      order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/manager/service/impl/InvoiceServiceImpl.java
  8. 13
      order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/controller/BuyerController.java
  9. 2
      order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/impl/OrderSplitServiceImpl.java
  10. BIN
      order-management-consumer/src/main/resources/download/BuyerExcel.xlsx
  11. 4
      order-management-invoice/src/main/java/com/dxhy/order/invoice/module/invoice/controller/InvoiceDetailsController.java
  12. 6
      order-management-invoice/src/main/java/com/dxhy/order/invoice/module/invoice/service/impl/OfdToPngSDEnergyServiceImpl.java
  13. 3
      升级sql/V1.0.5.sql

@ -106,4 +106,6 @@ public interface BuyerMapper {
* @return
*/
int insertBuyerByList(@Param("list") List<BuyerEntity> buyerEntityList);
BuyerEntity queryBuyerInfoByGhfIdAndEntId(@Param("ghfId") String ghfId, @Param("entId") String entId);
}

@ -140,4 +140,9 @@ public class BuyerEntity implements Serializable {
private String entId;
private String deptId;
/**
* 开票是否校验银行账号信息 0否 1是
*/
private String checkBankFlag;
}

@ -66,4 +66,9 @@ public class BuyerImportExcel {
private String ghfSjh;
private String khzt;
/**
* 开票是否校验银行账号信息 0否 1是
*/
private String checkBankFlag;
}

@ -75,6 +75,11 @@ public enum BuyerImportExcelEnum {
// private String status;
KH_ZT("客户状态", BuyerImportExcel.class.getDeclaredFields()[10].getName()),
/**
* 开票是否校验银行账号信息 0否 1是
*/
CHECK_BANK_FLAG("开票是否校验银行账号信息", BuyerImportExcel.class.getDeclaredFields()[11].getName()),
;

@ -27,6 +27,7 @@
<result column="status" jdbcType="VARCHAR" property="status"/>
<result column="sync_order" jdbcType="VARCHAR" property="syncOrder"/>
<result column="ent_id" jdbcType="VARCHAR" property="deptId"/>
<result column="check_bank_flag" jdbcType="VARCHAR" property="checkBankFlag"/>
<collection property="buyerEntityDetail" ofType="com.dxhy.order.baseservice.module.buyer.model.BuyerEntityDetail">
<id column="consumer_id" property="consumerId"/>
<result column="buyer_manage_id" jdbcType="VARCHAR" property="buyerManageId"/>
@ -149,7 +150,8 @@
bmid.phone as bmid_phone,
bmid.default_mark,
bmid.create_user,
bmid.update_user
bmid.update_user,
bmi.check_bank_flag
FROM
buyer_manage_info bmi left join buyer_manage_info_detail bmid on bmi.id = bmid.buyer_manage_id
@ -181,7 +183,8 @@
rownum as rowno,
status,
sync_order,
ent_id
ent_id,
check_bank_flag
FROM
buyer_manage_info
<where>
@ -312,6 +315,9 @@
<if test="buyer.deptId != null ">
ent_id = #{buyer.deptId,jdbcType=VARCHAR},
</if>
<if test="buyer.checkBankFlag != null ">
check_bank_flag = #{buyer.checkBankFlag,jdbcType=VARCHAR},
</if>
</set>
<where>
id = #{buyer.id,jdbcType=VARCHAR}
@ -406,6 +412,9 @@
<if test="buyer.deptId != null and buyer.deptId != ''">
ent_id = #{buyer.deptId,jdbcType=VARCHAR},
</if>
<if test="buyer.checkBankFlag != null ">
check_bank_flag = #{buyer.checkBankFlag,jdbcType=VARCHAR},
</if>
</set>
<where>
id in
@ -535,7 +544,9 @@
<if test="deptId != null">
ent_id,
</if>
<if test="checkBankFlag != null ">
check_bank_flag,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
@ -614,6 +625,10 @@
<if test="deptId != null">
#{deptId,jdbcType=VARCHAR},
</if>
<if test="checkBankFlag != null ">
#{checkBankFlag,jdbcType=VARCHAR},
</if>
</trim>
</insert>
@ -834,7 +849,8 @@
mdm_multicode_json,
status,
sync_order,
ent_id
ent_id,
check_bank_flag
)
values
<foreach collection="list" item="item" index="index"
@ -863,7 +879,8 @@
#{item.mdmMulticodeJson,jdbcType=VARCHAR},
#{item.status,jdbcType=VARCHAR},
#{item.syncOrder,jdbcType=VARCHAR},
#{item.entId,jdbcType=VARCHAR}
#{item.entId,jdbcType=VARCHAR},
#{item.checkBankFlag,jdbcType=VARCHAR}
)
</foreach>
</insert>
@ -1141,4 +1158,11 @@
</if>
</where>
</select>
<select id="queryBuyerInfoByGhfIdAndEntId"
resultMap="BaseResultMap">
select * from buyer_manage_info where buyer_code=#{ghfId} and ent_id=#{entId} order by modify_time desc limit 1
</select>
</mapper>

@ -1283,6 +1283,12 @@ public enum OrderInfoEnum {
INVOICE_REMARK_SET_BZDH("BZDH","报账单号"),
INVOICE_REMARK_SET_KB("KB","矿别"),
/**
*
* 开票是否校验银行账号信息 0否 1是
*/
CHECK_BANK_FLAG_YES("1", "是"),
CHECK_BANK_FLAG_NO("0", "否"),
;

@ -14,6 +14,7 @@ import com.dxhy.order.baseservice.module.base.model.RuleSplitEntity;
import com.dxhy.order.baseservice.module.base.service.BaseService;
import com.dxhy.order.baseservice.module.base.service.DrawerInfoService;
import com.dxhy.order.baseservice.module.base.service.RuleSplitService;
import com.dxhy.order.baseservice.module.buyer.dao.BuyerMapper;
import com.dxhy.order.baseservice.module.buyer.model.BuyerEntity;
import com.dxhy.order.baseservice.module.buyer.service.BuyerService;
import com.dxhy.order.baseservice.module.taxclass.dao.TaxClassCodeMapper;
@ -22,6 +23,9 @@ import com.dxhy.order.baseservice.module.thirdservice.redis.service.RedisService
import com.dxhy.order.baseservice.module.thirdservice.simsback.service.SimsBackService;
import com.dxhy.order.baseservice.module.thirdservice.user.service.UserInfoService;
import com.dxhy.order.constant.*;
import com.dxhy.order.consumer.model.page.PageCommonOrderInfo;
import com.dxhy.order.consumer.model.page.PageOrderInfo;
import com.dxhy.order.consumer.model.page.PageOrderItemInfo;
import com.dxhy.order.consumer.modules.manager.service.InvoiceService;
import com.dxhy.order.consumer.modules.order.model.PageInvoiceItem;
import com.dxhy.order.consumer.modules.order.model.PageInvoiceReq;
@ -46,6 +50,7 @@ import com.dxhy.order.utils.JsonUtils;
import com.dxhy.order.utils.NsrsbhUtils;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@ -135,8 +140,11 @@ public class InvoiceServiceImpl implements InvoiceService {
@Resource
private TaxClassCodeMapper taxClassCodeMapper;
private static final DecimalFormat DECIMAL_FORMAT = new DecimalFormat("#0000");
private static final String CF = "cf";
@Autowired
private BuyerMapper buyerMapper;
@Resource
private OrderSplitService orderSplitService;
@Override
@ -146,13 +154,42 @@ public class InvoiceServiceImpl implements InvoiceService {
//查询数据列表
List<CommonOrderInfo> commonOrderInfos = orderInfoService.batchQueryOrderInfoByOrderIdsAndNsrsbh(pageInvoiceItemList);
log.info("commonOrderInfos---->batch query order info"+JSON.toJSONString(commonOrderInfos));
//存储成品油和非成品油不是混开的结算单
List<CommonOrderInfo> commonOrderInfoList=new ArrayList<CommonOrderInfo>();
//存储成品油和非成品油混开的结算单
List<List<PageCommonOrderInfo>> lists=new ArrayList<>();
//购方是否为空、税编是否为空校验、成品油校验
for(CommonOrderInfo commonOrderInfo:commonOrderInfos){
if(StrUtil.isBlank(commonOrderInfo.getOrderInfo().getGhfNsrsbh()) || StrUtil.isBlank(commonOrderInfo.getOrderInfo().getGhfMc()) ){
List<PageCommonOrderInfo> mixCommonOrderInfoList=new ArrayList<>();
if (StrUtil.isBlank(commonOrderInfo.getOrderInfo().getGhfMc())) {
return R.error("结算单:"+commonOrderInfo.getOrderInfo().getDdh()+"购方信息为空,请补全!");
}
BuyerEntity buyerEntity = buyerMapper.queryBuyerInfoByGhfIdAndEntId(commonOrderInfo.getOrderInfo().getGhfId(), commonOrderInfo.getOrderInfo().getEntId());
if (buyerEntity == null) {
return R.error("结算单:"+commonOrderInfo.getOrderInfo().getDdh()+"购方信息为空,请补全!");
}
// String cpy = "";
if (OrderInfoEnum.CHECK_BANK_FLAG_YES.getKey().equals(buyerEntity.getCheckBankFlag())) {
log.info("开始校验客户信息完整");
if (StrUtil.isBlank(commonOrderInfo.getOrderInfo().getGhfNsrsbh())) {
return R.error("结算单:"+commonOrderInfo.getOrderInfo().getDdh()+"购方纳税人识别号为空,请补全!");
}
if (StrUtil.isBlank(commonOrderInfo.getOrderInfo().getGhfDz())) {
return R.error("结算单:"+commonOrderInfo.getOrderInfo().getDdh()+"购方地址为空,请补全!");
}
if (StrUtil.isBlank(commonOrderInfo.getOrderInfo().getGhfDh())) {
return R.error("结算单:"+commonOrderInfo.getOrderInfo().getDdh()+"购方电话为空,请补全!");
}
if (StrUtil.isBlank(commonOrderInfo.getOrderInfo().getGhfYh())) {
return R.error("结算单:"+commonOrderInfo.getOrderInfo().getDdh()+"购方开户行为空,请补全!");
}
if (StrUtil.isBlank(commonOrderInfo.getOrderInfo().getGhfZh())) {
return R.error("结算单:"+commonOrderInfo.getOrderInfo().getDdh()+"购方银行账号为空,请补全!");
}
}
// if(StrUtil.isBlank(commonOrderInfo.getOrderInfo().getGhfNsrsbh()) || StrUtil.isBlank(commonOrderInfo.getOrderInfo().getGhfMc()) ){
// return R.error("结算单:"+commonOrderInfo.getOrderInfo().getDdh()+"购方信息为空,请补全!");
// }
String cpy = "";
String kcp = baseServiceConfig.getKcp();
boolean kcpMark = kcp.contains(commonOrderInfo.getOrderItemInfo().get(0).getSpbm());
List<OrderItemInfo> cpyOrderItems = new ArrayList<OrderItemInfo>();
@ -162,14 +199,6 @@ public class InvoiceServiceImpl implements InvoiceService {
return R.error("结算单:"+commonOrderInfo.getOrderInfo().getDdh()+"第"+orderItemInfo.getSphxh()+"行商品税编为空,请补全!");
}else {
TaxClassCodeEntity taxClassCodeEntity = taxClassCodeMapper.selectTaxClassCodeBySpbm(orderItemInfo.getSpbm());
// if(StrUtil.isNotBlank(cpy)){
// if(!cpy.equals(taxClassCodeEntity.getCpy())){
// return R.error("结算单:"+commonOrderInfo.getOrderInfo().getDdh()+"成品油和非成品油税编不能混开,请做手动拆分处理!");
// }
// }else {
// cpy = taxClassCodeEntity.getCpy();
// }
//
if(ConfigureConstant.STRING_Y.equals(taxClassCodeEntity.getCpy())){
//成品油明细
cpyOrderItems.add(orderItemInfo);
@ -187,41 +216,61 @@ public class InvoiceServiceImpl implements InvoiceService {
commonOrderInfo.setOrderItemInfo(CollectionUtils.isEmpty(cpyOrderItems)?nocpyOrderItems:nocpyOrderItems);
commonOrderInfoList.add(commonOrderInfo);
}else {
//封装成品油
PageCommonOrderInfo cpyPageCommonOrderInfo = new PageCommonOrderInfo();
//拼接自动按照明细行拆分所需要的数据
log.info("cpyOrderItems》》》》》》》》"+JSON.toJSONString(cpyOrderItems));
log.info("nocpyOrderItems》》》》》》》》"+JSON.toJSONString(nocpyOrderItems));
//成品油和非成品油混合
OrderInfo cpyOrderInfo = new OrderInfo();
BeanUtils.copyProperties(commonOrderInfo.getOrderInfo(),cpyOrderInfo);
cpyOrderInfo.setHjbhsje(cpyOrderItems.stream().map(m->new BigDecimal(m.getXmje())).reduce(BigDecimal.ZERO, BigDecimal::add).toString());
cpyOrderInfo.setHjse(cpyOrderItems.stream().map(m->new BigDecimal(m.getSe())).reduce(BigDecimal.ZERO, BigDecimal::add).toString());
cpyOrderInfo.setDdh(commonOrderInfo.getOrderInfo().getDdh() + CF + DECIMAL_FORMAT.format(1));
CommonOrderInfo cpyCommonOrderInfo = new CommonOrderInfo();
BeanUtils.copyProperties(commonOrderInfo,cpyCommonOrderInfo);
cpyCommonOrderInfo.setOrderItemInfo(cpyOrderItems);
cpyCommonOrderInfo.setOrderInfo(cpyOrderInfo);
commonOrderInfoList.add(cpyCommonOrderInfo);
OrderInfo nocpyOrderInfo = new OrderInfo();
BeanUtils.copyProperties(commonOrderInfo.getOrderInfo(),nocpyOrderInfo);
nocpyOrderInfo.setHjbhsje(nocpyOrderItems.stream().map(m->new BigDecimal(m.getXmje())).reduce(BigDecimal.ZERO, BigDecimal::add).toString());
nocpyOrderInfo.setHjse(nocpyOrderItems.stream().map(m->new BigDecimal(m.getSe())).reduce(BigDecimal.ZERO, BigDecimal::add).toString());
nocpyOrderInfo.setDdh(commonOrderInfo.getOrderInfo().getDdh() + CF + DECIMAL_FORMAT.format(2));
CommonOrderInfo nocpyCommonOrderInfo = new CommonOrderInfo();
BeanUtils.copyProperties(commonOrderInfo,nocpyCommonOrderInfo);
nocpyCommonOrderInfo.setOrderItemInfo(nocpyOrderItems);
nocpyCommonOrderInfo.setOrderInfo(nocpyOrderInfo);
commonOrderInfoList.add(nocpyCommonOrderInfo);
PageOrderInfo cpyPageOrderInfo = new PageOrderInfo();
BeanUtils.copyProperties(commonOrderInfo.getOrderInfo(),cpyPageOrderInfo);
cpyPageOrderInfo.setKphjje(cpyOrderItems.stream().map(m->new BigDecimal(m.getSe()).add(new BigDecimal(m.getXmje()))).reduce(BigDecimal.ZERO, BigDecimal::add).toString());
List<PageOrderItemInfo> cpyOrderItemInfo = new ArrayList<PageOrderItemInfo>();
for (OrderItemInfo cpyOrderItem : cpyOrderItems) {
PageOrderItemInfo pageOrderItemInfo = new PageOrderItemInfo();
BeanUtils.copyProperties(cpyOrderItem,pageOrderItemInfo);
cpyOrderItemInfo.add(pageOrderItemInfo);
}
cpyPageCommonOrderInfo.setOrderInfo(cpyPageOrderInfo);
cpyPageCommonOrderInfo.setOrderItemInfo(cpyOrderItemInfo);
mixCommonOrderInfoList.add(cpyPageCommonOrderInfo);
//封装非成品油
PageCommonOrderInfo nocpyPageCommonOrderInfo = new PageCommonOrderInfo();
//成品油和非成品油混合
PageOrderInfo nocpyPageOrderInfo = new PageOrderInfo();
BeanUtils.copyProperties(commonOrderInfo.getOrderInfo(),nocpyPageOrderInfo);
nocpyPageOrderInfo.setKphjje(nocpyOrderItems.stream().map(m->new BigDecimal(m.getSe()).add(new BigDecimal(m.getXmje()))).reduce(BigDecimal.ZERO, BigDecimal::add).toString());
List<PageOrderItemInfo> nocpyOrderItemInfo = new ArrayList<PageOrderItemInfo>();
for (OrderItemInfo nocpyOrderItem : nocpyOrderItems) {
PageOrderItemInfo pageOrderItemInfo = new PageOrderItemInfo();
BeanUtils.copyProperties(nocpyOrderItem,pageOrderItemInfo);
nocpyOrderItemInfo.add(pageOrderItemInfo);
}
nocpyPageCommonOrderInfo.setOrderInfo(nocpyPageOrderInfo);
nocpyPageCommonOrderInfo.setOrderItemInfo(nocpyOrderItemInfo);
mixCommonOrderInfoList.add(nocpyPageCommonOrderInfo);
}
if(cpyOrderItems.size()>ConfigureConstant.INT_8){
return R.error("结算单:"+commonOrderInfo.getOrderInfo().getDdh()+"是成品油发票,明细行数不能超过8行,请先进行手动拆分!");
}
// if(ConfigureConstant.STRING_Y.equals(cpy) && commonOrderInfo.getOrderItemInfo().size()>ConfigureConstant.INT_8){
// return R.error("结算单:"+commonOrderInfo.getOrderInfo().getDdh()+"是成品油发票,明细行数不能超过8行,请先进行手动拆分!");
// }
lists.add(mixCommonOrderInfoList);
}
//如果是混开的 走明细拆分
if(!CollectionUtils.isEmpty(lists)){
try {
for (List<PageCommonOrderInfo> list : lists) {
orderSplitService.saveOrderSplitOrder(list);
}
} catch (Exception e) {
throw new RuntimeException(e.getMessage());
}
}
//如果不是混开的 走原来的逻辑
if(CollectionUtils.isEmpty(commonOrderInfoList)){
return R.ok("生成预制发票成功,请到【发票处理中心】页面查看");
}
//客户冻结状态校验、确认智能赋码、单价误差校验
List<Map<String,String>> consumerList = new ArrayList<>();
List<Map<String,String>> confirmList = new ArrayList<>();
@ -294,17 +343,21 @@ public class InvoiceServiceImpl implements InvoiceService {
}
} else {
log.error("{}校验单价容差范围发生错误:在原结算单中未匹配到唯一明细,找到了{}条", LOGGER_MSG, collect.size());
R.error("校验单价容差范围发生错误:在原结算单中未匹配到唯一明细");
// R.error("校验单价容差范围发生错误:在原结算单中未匹配到唯一明细");
throw new RuntimeException("校验单价容差范围发生错误:在原结算单中未匹配到唯一明细");
}
});
});
}
if(consumerList.size()>0){
return R.error(ConfigureConstant.STRING_9001, "以下结算单中客户的状态为“冻结”状态,不能进行开票。",consumerList);
// return R.error(ConfigureConstant.STRING_9001, "以下结算单中客户的状态为“冻结”状态,不能进行开票。",consumerList);
throw new RuntimeException(String.format("以下结算单中%s客户的状态为“冻结”状态,不能进行开票。",consumerList));
}else if((StrUtil.isBlank(pageInvoiceReq.getConfirmZnfm()) || !ConfigureConstant.STRING_0.equals(pageInvoiceReq.getConfirmZnfm())) && confirmList.size()>0){
return R.error(ConfigureConstant.STRING_9002,"请将以下物料同步至公司库,再进行生成预制",confirmList);
// return R.error(ConfigureConstant.STRING_9002,"请确认以下物料税收分类编码是否准确",confirmList);
throw new RuntimeException(String.format("请将以下物料同步至公司库,再进行生成预制",confirmList));
}else if(djOverflowList.size() > 0){
return R.error(ConfigureConstant.STRING_9003, "以下订单自动拆分时单价超过设定范围,请手动拆分",djOverflowList);
// return R.error(ConfigureConstant.STRING_9003, "以下订单自动拆分时单价超过设定范围,请手动拆分",djOverflowList);
throw new RuntimeException(String.format("以下订单自动拆分时单价超过设定范围,请手动拆分",djOverflowList));
}else {
for (CommonOrderInfo f : commonOrderInfoList) {
TaxClassCodeEntity taxClassCodeEntity = taxClassCodeMapper.selectTaxClassCodeBySpbm(f.getOrderItemInfo().get(0).getSpbm());

@ -188,10 +188,10 @@ public class BuyerController {
if(buyerEntity.getBuyerEntityDetail() != null && buyerEntity.getBuyerEntityDetail().size() > 0 ){
buyerEntity.getBuyerEntityDetail().forEach(t->{
if("0".equals(t.getDefaultMark())){
orderInfo.setGhfDz(StringUtils.isBlank(buyerEntity.getAddress())?null:buyerEntity.getAddress());
orderInfo.setGhfDh(StringUtils.isBlank(buyerEntity.getPhone())?null:buyerEntity.getPhone());
orderInfo.setGhfYh(StringUtils.isBlank(buyerEntity.getBankOfDeposit())?null:buyerEntity.getBankOfDeposit());
orderInfo.setGhfZh(StringUtils.isBlank(buyerEntity.getBankNumber())?null:buyerEntity.getBankNumber());
orderInfo.setGhfDz(StringUtils.isBlank(t.getAddress())?null:t.getAddress());
orderInfo.setGhfDh(StringUtils.isBlank(t.getPhone())?null:t.getPhone());
orderInfo.setGhfYh(StringUtils.isBlank(t.getBankName())?null:t.getBankName());
orderInfo.setGhfZh(StringUtils.isBlank(t.getBankAccount())?null:t.getBankAccount());
}
});
}
@ -304,6 +304,11 @@ public class BuyerController {
if("冻结".equals(buyerImportExcel.getKhzt())){
buyerEntity.setStatus("0");
}
// 开票是否校验银行账号信息 0否 1是
buyerEntity.setCheckBankFlag("0");
if ("是".equals(buyerImportExcel.getCheckBankFlag())) {
buyerEntity.setCheckBankFlag("1");
}
//购方名称 带中文括号的转换成英文括号
// 购方名称 带中文括号的转换成英文括号
buyerEntity.setPurchaseName(StringUtil.replaceStr(buyerEntity.getPurchaseName(), true));

@ -267,6 +267,8 @@ public class OrderSplitServiceImpl implements OrderSplitService {
OrderItemInfo orderItemInfo = new OrderItemInfo();
BeanUtils.copyProperties(pageOrderItemInfo, orderItemInfo);
TaxClassCodeEntity taxClassCodeEntity = taxClassCodeMapper.selectTaxClassCodeBySpbm(orderItemInfo.getSpbm());
log.info("OrderItemInfo.getSpbm() = " + orderItemInfo.getSpbm());
log.info("taxClassCodeEntity = " + taxClassCodeEntity);
if(taxClassCodeEntity != null && "Y".contains(taxClassCodeEntity.getCpy())){
cpy++;
}

@ -97,8 +97,8 @@ public class InvoiceDetailsController {
private String yxisuse;
@GetMapping("priviewOfd")
public R priviewOfd() throws IOException {
File file = new File("C:\\Users\\10216\\Desktop\\042002200113_04440777.ofd");
public R priviewOfd(@RequestParam("path") String path) throws IOException {
File file = new File(path);
FileInputStream fis = null;
ByteArrayOutputStream bos = new ByteArrayOutputStream(1000);

@ -12,11 +12,7 @@ import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import java.io.IOException;
import java.lang.reflect.Array;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
@Service
@ -32,7 +28,7 @@ public class OfdToPngSDEnergyServiceImpl implements OfdToPngSDEnergyService {
@Override
public OfdToPngResponse getOfdPngBySDenergy(byte[] bytes) {
Long timestamp = new Date().getTime();
Long timestamp = System.currentTimeMillis();
String md5Str = DigestUtil.md5Hex(timestamp + simsSalt);
String url = yxurl + "/yxSims/ofdToImage?timestamp="+timestamp+"&md5Str="+md5Str;

@ -0,0 +1,3 @@
-- 任务4631 客户信息增加校验银行信息开关
ALTER TABLE buyer_manage_info add check_bank_flag VARCHAR(1) DEFAULT '0' COMMENT '开票是否校验银行账号信息 0否 1是';
Loading…
Cancel
Save