思迅同步销售流水和支付流水
This commit is contained in:
parent
d4a7c4b3fb
commit
eaf1a87db8
@ -9,6 +9,7 @@ import com.google.gson.Gson;
|
||||
import com.small.client.Utils.BigDecimalFormatter;
|
||||
import com.small.client.Utils.CommonUtil;
|
||||
import com.small.client.Utils.HttpUtils;
|
||||
import com.small.client.Utils.SqlBuilder;
|
||||
import com.small.client.dto.*;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang3.math.NumberUtils;
|
||||
@ -20,6 +21,7 @@ import org.springframework.web.client.RestTemplate;
|
||||
import java.math.BigDecimal;
|
||||
import java.math.RoundingMode;
|
||||
import java.sql.*;
|
||||
import java.sql.Date;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@ -50,6 +52,8 @@ public class SxDataDao extends BaseDao{
|
||||
|
||||
//private final static String T_IM_BRANCH_STOCK="t_im_branch_stock";//库存表
|
||||
|
||||
private final static String T_BD_BRANCH_INFO="t_bd_branch_info";//仓库表
|
||||
|
||||
private final static String T_IM_BRANCH_STOCK="(" +
|
||||
"select * from( " +
|
||||
" select ROW_NUMBER() OVER( " +
|
||||
@ -470,17 +474,21 @@ public class SxDataDao extends BaseDao{
|
||||
* @param dataBaseInfo
|
||||
* @param map
|
||||
*/
|
||||
public void updateStoreData(DataBaseInfo dataBaseInfo, Map map,List<ProductQuantityConsumptionDto> productQuantityConsumptionDtoList,
|
||||
public void updateStoreData(DataBaseInfo dataBaseInfo, Map map,Map<String,ProductQuantityConsumptionDto> pqMap,List<ProductQuantityConsumptionDto> productQuantityConsumptionDtoList,
|
||||
CommentModel commentModel){
|
||||
if(CollectionUtil.isEmpty(map)){
|
||||
log.info("同步数据为空");
|
||||
return;
|
||||
}
|
||||
Connection conn =getConnection(dataBaseInfo.getIp(),dataBaseInfo.getUserName(),
|
||||
String brachNo=getLocalBranch(dataBaseInfo);//获取总店铺分仓编号
|
||||
Map<String,ItemInfo> itemInfoMap= findItemInfoList(dataBaseInfo,map);//查询商品信息
|
||||
Connection conn =getConnection(dataBaseInfo.getIp(),dataBaseInfo.getUserName(),
|
||||
dataBaseInfo.getPassword(), dataBaseInfo.getDbPort(),dataBaseInfo.getDataBaseName());
|
||||
try {
|
||||
conn.setAutoCommit(false); // 关闭自动提交,开启事务
|
||||
//String sql = "update t_im_branch_stock set stock_qty= stock_qty+(?),oper_date=? where item_no=?";
|
||||
List<RmSaleflow> rmSaleflowList=new ArrayList<>();
|
||||
List<TRmPayflow> tRmPayflowList=new ArrayList<>();
|
||||
String sql = "WITH TopStock AS ( " +
|
||||
" SELECT TOP(1) * " +
|
||||
" FROM t_im_branch_stock " +
|
||||
@ -491,15 +499,29 @@ public class SxDataDao extends BaseDao{
|
||||
" SET stock_qty = stock_qty+(?),oper_date=?;";
|
||||
Timestamp timestamp = new Timestamp(System.currentTimeMillis());
|
||||
try (PreparedStatement ps = conn.prepareStatement(sql)) {
|
||||
int batchSize = 1000; // 每批处理1000条
|
||||
int batchSize = 100; // 每批处理1000条
|
||||
int count = 0;
|
||||
Set<Map.Entry> sme=map.entrySet();
|
||||
for (Map.Entry entry : sme) {
|
||||
|
||||
BigDecimal stock_qty= (BigDecimal) entry.getValue();
|
||||
if(stock_qty.compareTo(BigDecimal.ZERO)==0){
|
||||
continue;
|
||||
}
|
||||
ps.setString(1, (String) entry.getKey());
|
||||
String itemNo = (String) entry.getKey();
|
||||
ProductQuantityConsumptionDto productQuantityConsumptionDto=pqMap.get(itemNo);
|
||||
BigDecimal unitPrice = productQuantityConsumptionDto.getUnitPrice();
|
||||
RmSaleflow rmSaleflow=new RmSaleflow();
|
||||
rmSaleflow.setItemNo(itemNo);
|
||||
rmSaleflow.setSalePrice(unitPrice);
|
||||
rmSaleflow.setSaleQnty(stock_qty);
|
||||
rmSaleflow.setFlownoRand(productQuantityConsumptionDto.getOrderId());//随机子单号 设置网上订单号
|
||||
rmSaleflow= fixRmSaleFlow(rmSaleflow,brachNo,itemInfoMap);
|
||||
TRmPayflow trmPayflow=fixTRmPayflow(rmSaleflow);
|
||||
|
||||
rmSaleflowList.add(rmSaleflow);
|
||||
|
||||
ps.setString(1, itemNo);
|
||||
ps.setDouble(2, stock_qty.doubleValue());
|
||||
ps.setTimestamp(3, timestamp);
|
||||
ps.addBatch(); // 添加至批处理
|
||||
@ -513,6 +535,9 @@ public class SxDataDao extends BaseDao{
|
||||
// 执行剩余未满 batchSize 的批次
|
||||
int[] remainingCounts = ps.executeBatch();
|
||||
|
||||
//todo 新增流水
|
||||
updateStoreSaleFlow(dataBaseInfo,rmSaleflowList,tRmPayflowList);
|
||||
|
||||
List<String> consumIds=productQuantityConsumptionDtoList
|
||||
.stream()
|
||||
.map(ProductQuantityConsumptionDto::getConsumeId)
|
||||
@ -548,6 +573,310 @@ public class SxDataDao extends BaseDao{
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 补充字段
|
||||
* @param rmSaleflow
|
||||
* @return
|
||||
*/
|
||||
public RmSaleflow fixRmSaleFlow(RmSaleflow rmSaleflow,String branchNo,Map<String,ItemInfo> itemInfoMap){
|
||||
//自定义单号 start
|
||||
rmSaleflow.setFlowId(1);
|
||||
String orderId=rmSaleflow.getFlownoRand();
|
||||
String[] orderIdSplits= orderId.split("_");
|
||||
String DateStr=DateUtil.format(new java.util.Date(),"yyyyMMdd");
|
||||
String flowNo="99"+DateStr+orderIdSplits[orderIdSplits.length-1];
|
||||
rmSaleflow.setFlowNo(flowNo);//订单号 todo
|
||||
//自定义 单号 end
|
||||
|
||||
//判断取值 start
|
||||
rmSaleflow.setSellWay("A");
|
||||
rmSaleflow.setRetQnty(rmSaleflow.getSaleQnty());
|
||||
if(rmSaleflow.getSaleQnty().compareTo(BigDecimal.ZERO)<0){
|
||||
rmSaleflow.setSellWay("B");
|
||||
BigDecimal saleQnty=rmSaleflow.getSaleQnty();//销售数量
|
||||
rmSaleflow.setSaleQnty(saleQnty);
|
||||
rmSaleflow.setRetQnty(BigDecimal.ZERO);
|
||||
}
|
||||
//判断取值 end
|
||||
|
||||
//数据库查询取值start todo
|
||||
ItemInfo itemInfo=itemInfoMap.get(rmSaleflow.getItemNo());
|
||||
if(itemInfo!=null){
|
||||
rmSaleflow.setInPrice(itemInfo.getPrice());
|
||||
rmSaleflow.setOperDate(new Date(System.currentTimeMillis()));
|
||||
}
|
||||
rmSaleflow.setBranchNo(branchNo);
|
||||
|
||||
//数据库查询取值end
|
||||
|
||||
//远程配置取值start todo
|
||||
rmSaleflow.setOperId("9999");
|
||||
rmSaleflow.setSaleMan("9999");
|
||||
rmSaleflow.setCounterNo("9999");
|
||||
//远程配置取值end
|
||||
|
||||
//统一默认值 start
|
||||
rmSaleflow.setNStan(BigDecimal.ZERO);
|
||||
rmSaleflow.setChrStan("0");
|
||||
rmSaleflow.setFlownoType("0");
|
||||
rmSaleflow.setPrefAmt(BigDecimal.ZERO);
|
||||
rmSaleflow.setComFlag("0");
|
||||
rmSaleflow.setRemoteFlag("0");
|
||||
//统一默认值 end
|
||||
return rmSaleflow;
|
||||
}
|
||||
|
||||
/**
|
||||
* 支付流水赋值
|
||||
* @return
|
||||
*/
|
||||
public TRmPayflow fixTRmPayflow(RmSaleflow rmSaleflow){
|
||||
TRmPayflow rmPayflow=new TRmPayflow();
|
||||
rmPayflow.setFlowId(rmSaleflow.getFlowId());
|
||||
rmPayflow.setFlowNo(rmSaleflow.getFlowNo());
|
||||
BigDecimal saleAmount=rmSaleflow.getSalePrice().multiply(rmSaleflow.getSaleQnty()).setScale(2, RoundingMode.HALF_UP);
|
||||
rmPayflow.setSaleAmount(saleAmount);
|
||||
rmPayflow.setBranchNo(rmSaleflow.getBranchNo());
|
||||
rmPayflow.setPayWay("RMB");//人民币
|
||||
rmPayflow.setSellWay(rmSaleflow.getSellWay());
|
||||
rmPayflow.setCardNo("");
|
||||
rmPayflow.setVipNo(null);
|
||||
rmPayflow.setCoinNo("RMB");//
|
||||
rmPayflow.setCoinRate(new BigDecimal("1"));//利率
|
||||
rmPayflow.setPayAmount(saleAmount);
|
||||
rmPayflow.setOperDate(rmSaleflow.getOperDate());
|
||||
rmPayflow.setOperId(rmSaleflow.getOperId());
|
||||
rmPayflow.setCounterNo(rmSaleflow.getCounterNo());
|
||||
rmPayflow.setSaleMan(rmSaleflow.getSaleMan());
|
||||
rmPayflow.setMemo("");
|
||||
rmPayflow.setVoucherNo("");//退货单号 退货时要填
|
||||
rmPayflow.setRemoteFlag("0");
|
||||
rmPayflow.setExchangeFlag(null);
|
||||
rmPayflow.setShiftNo("");
|
||||
rmPayflow.setComFlag("0");
|
||||
rmPayflow.setPosid("01");
|
||||
rmPayflow.setUptime(null);
|
||||
rmPayflow.setFlownoRand(rmSaleflow.getFlownoRand());
|
||||
rmPayflow.setCiceroniNo("0");
|
||||
rmPayflow.setCiceroniId(null);
|
||||
rmPayflow.setFlownoType(rmSaleflow.getFlownoType());
|
||||
rmPayflow.setTransType(null);
|
||||
rmPayflow.setUpBatchno("");//todo
|
||||
rmPayflow.setUpVipacc("0");
|
||||
rmPayflow.setCashNo("00");
|
||||
if("B".equals(rmSaleflow.getSellWay())){//退货
|
||||
rmPayflow.setMemo("正常退货");
|
||||
rmPayflow.setVoucherNo("");//退货单号 退货时要填
|
||||
rmPayflow.setRemoteFlag("");
|
||||
rmPayflow.setExchangeFlag("0");
|
||||
rmPayflow.setUpVipacc(null);
|
||||
}
|
||||
|
||||
return rmPayflow;
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询商品,返回map
|
||||
* @param dataBaseInfo
|
||||
* @param map
|
||||
* @return
|
||||
*/
|
||||
public Map<String,ItemInfo> findItemInfoList(DataBaseInfo dataBaseInfo,Map map){
|
||||
if(CollectionUtil.isEmpty(map)){
|
||||
return null;
|
||||
}
|
||||
Map<String,ItemInfo> resultMap=new HashMap<>();
|
||||
Set<Map.Entry> sme=map.entrySet();
|
||||
String where = "where 1=1";
|
||||
List<String> itemNos = sme.stream()
|
||||
.map(entry -> (String) entry.getKey())
|
||||
.collect(Collectors.toList());
|
||||
where += SqlBuilder.buildInCondition("item_no", itemNos);
|
||||
ResultDto resultDto= this.baseFindList(dataBaseInfo.getIp(),dataBaseInfo.getUserName(),dataBaseInfo.getPassword(),
|
||||
dataBaseInfo.getDbPort(),dataBaseInfo.getDataBaseName(),T_BD_ITEM_INFO,where);
|
||||
ResultSet rs= resultDto.getResultSet();
|
||||
try {
|
||||
while (rs.next()) {
|
||||
ItemInfo itemInfo=new ItemInfo();
|
||||
String itemNo=rs.getString("item_no");
|
||||
itemInfo.setItemNo(itemNo);//
|
||||
itemInfo.setItemSubno(rs.getString("item_subno"));
|
||||
itemInfo.setItemName(rs.getString("item_name"));
|
||||
itemInfo.setItemBrand(rs.getString("item_brand"));//品牌
|
||||
itemInfo.setPrice(rs.getBigDecimal("price"));//进货价
|
||||
itemInfo.setItemClsno(rs.getString("item_clsno"));
|
||||
resultMap.put(itemNo,itemInfo);
|
||||
}
|
||||
} catch (SQLException e) {
|
||||
throw new RuntimeException(e);
|
||||
} finally {
|
||||
try {
|
||||
resultDto.getConnection().close();
|
||||
} catch (SQLException e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
}
|
||||
return resultMap;
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量新增销售流水
|
||||
* @param dataBaseInfo
|
||||
* @param rmSaleflowList
|
||||
*/
|
||||
public void updateStoreSaleFlow(DataBaseInfo dataBaseInfo,List<RmSaleflow> rmSaleflowList,List<TRmPayflow> payflowList){
|
||||
if(CollectionUtil.isEmpty(rmSaleflowList)){
|
||||
log.info("销售流水记录为空");
|
||||
return;
|
||||
}
|
||||
Connection conn =getConnection(dataBaseInfo.getIp(),dataBaseInfo.getUserName(),
|
||||
dataBaseInfo.getPassword(), dataBaseInfo.getDbPort(),dataBaseInfo.getDataBaseName());
|
||||
try {
|
||||
conn.setAutoCommit(false); // 关闭自动提交,开启事务
|
||||
String sql = "INSERT INTO t_rm_saleflow (" +
|
||||
"flow_id, flow_no, branch_no, item_no, source_price, sale_price, " +
|
||||
"sale_qnty, sale_money, sell_way, oper_id, sale_man, counter_no, " +
|
||||
"oper_date, remote_flag, shift_no, com_flag, spec_flag, pref_amt, " +
|
||||
"in_price, n_stan, chr_stan, posid, uptime, flowno_rand, ret_qnty, " +
|
||||
"flowno_type, spec_sheet_no, cic_sheet_no, share_cardid, item_no_Fresh" +
|
||||
") VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
|
||||
String sql2 = "INSERT INTO t_rm_payflow (" +
|
||||
"flow_id, flow_no, sale_amount, branch_no, pay_way, sell_way, " +
|
||||
"card_no, vip_no, coin_no, coin_rate, pay_amount, oper_date, " +
|
||||
"oper_id, counter_no, sale_man, memo,remote_flag, " +
|
||||
"exchange_flag, shift_no, com_flag, uptime, flowno_rand, " +
|
||||
"ciceroni_no, ciceroni_id, flowno_type, trans_type, up_batchno, " +
|
||||
"remark, cash_no" +
|
||||
") VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
|
||||
try {
|
||||
PreparedStatement ps = conn.prepareStatement(sql);//销售流水
|
||||
PreparedStatement ps2 = conn.prepareStatement(sql2);//资金流水
|
||||
int batchSize = 10; // 每批处理10条
|
||||
int count = 0;
|
||||
for (int i=0;i<rmSaleflowList.size();i++) {
|
||||
//rmSaleflow start-------------
|
||||
RmSaleflow rmSaleflow=rmSaleflowList.get(i);
|
||||
ps.setInt(1,rmSaleflow.getFlowId());
|
||||
ps.setString(2, rmSaleflow.getFlowNo());
|
||||
ps.setString(3, rmSaleflow.getBranchNo());
|
||||
ps.setString(4, rmSaleflow.getItemNo());
|
||||
ps.setBigDecimal(5, rmSaleflow.getSourcePrice());
|
||||
ps.setBigDecimal(6, rmSaleflow.getSalePrice());
|
||||
|
||||
ps.setBigDecimal(7, rmSaleflow.getSaleQnty());
|
||||
ps.setBigDecimal(8, rmSaleflow.getSaleMoney());
|
||||
ps.setString(9, rmSaleflow.getSellWay());
|
||||
ps.setString(10, rmSaleflow.getOperId());
|
||||
ps.setString(11, rmSaleflow.getSaleMan());
|
||||
ps.setString(12, rmSaleflow.getCounterNo());
|
||||
|
||||
ps.setDate(13, rmSaleflow.getOperDate());//OperDate
|
||||
ps.setString(14, rmSaleflow.getRemoteFlag());
|
||||
ps.setString(15, rmSaleflow.getShiftNo());
|
||||
ps.setString(16, rmSaleflow.getComFlag());
|
||||
ps.setString(17, rmSaleflow.getSpecFlag());
|
||||
ps.setBigDecimal(18, rmSaleflow.getPrefAmt());
|
||||
|
||||
ps.setBigDecimal(19, rmSaleflow.getInPrice());
|
||||
ps.setBigDecimal(20, rmSaleflow.getNStan());
|
||||
ps.setString(21, rmSaleflow.getChrStan());
|
||||
ps.setString(22, rmSaleflow.getPosid());
|
||||
ps.setTimestamp(23, null);//Uptime
|
||||
ps.setString(24, rmSaleflow.getFlownoRand());
|
||||
ps.setBigDecimal(25, rmSaleflow.getRetQnty());
|
||||
|
||||
ps.setString(26, rmSaleflow.getFlownoType());
|
||||
ps.setString(27, rmSaleflow.getSpecSheetNo());
|
||||
ps.setString(28, rmSaleflow.getCicSheetNo());
|
||||
ps.setString(29, rmSaleflow.getShareCardid());
|
||||
ps.setString(30, rmSaleflow.getItemNoFresh());
|
||||
|
||||
ps.addBatch(); // 添加至批处理
|
||||
//rmSaleflow end-------------
|
||||
|
||||
//rmPayflow start-------------
|
||||
TRmPayflow rmPayflow=payflowList.get(i);
|
||||
|
||||
//rmPayflow end-------------
|
||||
ps2.setInt(1,rmPayflow.getFlowId());
|
||||
ps2.setString(2, rmPayflow.getFlowNo());
|
||||
ps2.setBigDecimal(3, rmPayflow.getSaleAmount());
|
||||
ps2.setString(4, rmPayflow.getBranchNo());
|
||||
ps2.setString(5, rmPayflow.getPayWay());
|
||||
ps2.setString(6, rmPayflow.getSellWay());
|
||||
|
||||
ps2.setString(7, rmPayflow.getCardNo());
|
||||
ps2.setString(8, rmPayflow.getVipNo());
|
||||
ps2.setString(9, rmPayflow.getCoinNo());
|
||||
ps2.setBigDecimal(10, rmPayflow.getCoinRate());
|
||||
ps2.setBigDecimal(11, rmPayflow.getPayAmount());
|
||||
ps2.setDate(12, rmPayflow.getOperDate());
|
||||
|
||||
ps2.setString(13, rmPayflow.getOperId());//OperDate
|
||||
ps2.setString(14, rmPayflow.getCounterNo());
|
||||
ps2.setString(15, rmPayflow.getSaleMan());
|
||||
ps2.setString(16, rmPayflow.getMemo());
|
||||
// ps2.setString(17, rmPayflow.getVoucherNo());
|
||||
ps2.setString(17, rmPayflow.getRemoteFlag());
|
||||
|
||||
ps2.setString(18, rmPayflow.getExchangeFlag());
|
||||
ps2.setString(29, rmPayflow.getShiftNo());
|
||||
ps2.setString(20, rmPayflow.getComFlag());
|
||||
//ps2.setString(22, rmPayflow.getPosid());
|
||||
ps2.setTimestamp(21, null);//Uptime
|
||||
ps2.setString(22, rmPayflow.getFlownoRand());
|
||||
|
||||
ps2.setString(23, rmPayflow.getCiceroniNo());
|
||||
ps2.setString(24, rmPayflow.getCiceroniId());
|
||||
ps2.setString(25, rmPayflow.getFlownoType());
|
||||
ps2.setString(26, rmPayflow.getTransType());
|
||||
ps2.setString(27, rmPayflow.getUpBatchno());
|
||||
|
||||
|
||||
// ps2.setString(30, rmPayflow.getUpVipacc());
|
||||
ps2.setString(28, rmPayflow.getRemark());
|
||||
ps2.setString(29, rmPayflow.getCashNo());
|
||||
// ps2.setString(33, rmPayflow.getCheckData());
|
||||
|
||||
ps2.addBatch(); // 添加至批处理
|
||||
count++;
|
||||
if (count % batchSize == 0) {
|
||||
ps.executeBatch();
|
||||
ps2.executeBatch();
|
||||
|
||||
ps.clearBatch();
|
||||
ps2.clearBatch();
|
||||
log.info("已提交批次: {}", count);
|
||||
}
|
||||
}
|
||||
// 执行剩余未满 batchSize 的批次
|
||||
int[] remainingCounts = ps.executeBatch();
|
||||
int[] remainingCounts2 = ps2.executeBatch();
|
||||
log.info("销售流水记录剩余批次更新数: {}", Arrays.toString(remainingCounts));
|
||||
log.info("支付流水记录剩余批次更新数: {}", Arrays.toString(remainingCounts));
|
||||
conn.commit(); // 最终提交事务
|
||||
log.info("销售-支付-流水记录批量更新完成,总记录数: {}" , count);
|
||||
//baseUpdateImBrancStock(dataBaseInfo);
|
||||
} catch (Exception e) {
|
||||
conn.rollback(); // 出错时回滚整个事务
|
||||
log.info("销售支付流水记录业务失败:: {}", e.getMessage());
|
||||
throw new RuntimeException("销售支付流水记录业务失败:: {}"+e.getMessage());
|
||||
}
|
||||
} catch (SQLException e) {
|
||||
log.info("sql失败:: {}", e.getMessage());
|
||||
throw new RuntimeException("sql失败:: {}"+e.getMessage());
|
||||
}finally {
|
||||
if(conn!=null){
|
||||
try {
|
||||
conn.close();
|
||||
} catch (SQLException e) {
|
||||
log.info("最后sql失败:: {}", e.getMessage());
|
||||
throw new RuntimeException("sql关闭失败:: {}"+e.getMessage());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
*获取促销活动价格 时段特价单
|
||||
* @param dataBaseInfo
|
||||
@ -895,4 +1224,29 @@ public class SxDataDao extends BaseDao{
|
||||
return getTotalSpecShop(dataBaseInfo.getIp(),dataBaseInfo.getUserName(),dataBaseInfo.getPassword(),dataBaseInfo.getDbPort(),
|
||||
dataBaseInfo.getDataBaseName(),where);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取本地仓库
|
||||
* @return
|
||||
*/
|
||||
public String getLocalBranch(DataBaseInfo dataBaseInfo){
|
||||
ResultDto resultDto= this.baseFindList(dataBaseInfo.getIp(),dataBaseInfo.getUserName(),dataBaseInfo.getPassword(),
|
||||
dataBaseInfo.getDbPort(),dataBaseInfo.getDataBaseName(),T_BD_BRANCH_INFO,"where property =2 ");
|
||||
ResultSet rs= resultDto.getResultSet();
|
||||
String branch_no = "";
|
||||
try {
|
||||
while (rs.next()) {
|
||||
branch_no=rs.getString("branch_no");//
|
||||
}
|
||||
} catch (SQLException e) {
|
||||
throw new RuntimeException(e);
|
||||
} finally {
|
||||
try {
|
||||
resultDto.getConnection().close();
|
||||
} catch (SQLException e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
}
|
||||
return branch_no;
|
||||
}
|
||||
}
|
||||
|
||||
@ -42,9 +42,4 @@ public class ItemInfo {
|
||||
* 进货价格
|
||||
*/
|
||||
private BigDecimal price;
|
||||
|
||||
/**
|
||||
* 零售价
|
||||
*/
|
||||
private BigDecimal salePrice;
|
||||
}
|
||||
|
||||
@ -23,6 +23,9 @@ public class ProductQuantityConsumptionDto {
|
||||
@ApiModelProperty("商品编号")
|
||||
private String productNumber;
|
||||
|
||||
@ApiModelProperty("商品单价,如果是切割商品要算回来每公斤多少")
|
||||
private BigDecimal unitPrice;
|
||||
|
||||
@ApiModelProperty("数量(正数表示入库/增加,负数表示出库/减少)")
|
||||
private BigDecimal quantity;
|
||||
|
||||
|
||||
@ -4,7 +4,6 @@ import lombok.Data;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.sql.Date;
|
||||
import java.sql.Timestamp;
|
||||
|
||||
@Data
|
||||
public class RmSaleflow {
|
||||
@ -21,7 +20,7 @@ public class RmSaleflow {
|
||||
private String operId;
|
||||
private String saleMan;
|
||||
private String counterNo;
|
||||
private Timestamp operDate;
|
||||
private Date operDate;
|
||||
private String remoteFlag;
|
||||
private String shiftNo;
|
||||
private String comFlag;
|
||||
@ -39,5 +38,4 @@ public class RmSaleflow {
|
||||
private String cicSheetNo;
|
||||
private String shareCardid;
|
||||
private String itemNoFresh;
|
||||
|
||||
}
|
||||
|
||||
@ -4,7 +4,6 @@ import lombok.Data;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.sql.Date;
|
||||
import java.sql.Timestamp;
|
||||
|
||||
@Data
|
||||
public class TRmPayflow {
|
||||
@ -71,7 +70,7 @@ public class TRmPayflow {
|
||||
/**
|
||||
* 操作时间
|
||||
*/
|
||||
private Timestamp operDate;
|
||||
private Date operDate;
|
||||
|
||||
/**
|
||||
* 操作员ID
|
||||
|
||||
@ -754,7 +754,13 @@ public class SxDataServiceImp extends SxDataAbstService implements SxDataService
|
||||
BigDecimal::add
|
||||
)
|
||||
));
|
||||
sxDataDao.updateStoreData(dataBaseInfo,map,productQuantityConsumptionDtoList,commentModel);
|
||||
Map<String,ProductQuantityConsumptionDto> productQuantityConsumptionDtoMap=new HashMap<>();
|
||||
|
||||
productQuantityConsumptionDtoList.forEach(productQuantityConsumptionDto -> {
|
||||
productQuantityConsumptionDtoMap.put(productQuantityConsumptionDto.getProductNumber(),productQuantityConsumptionDto);
|
||||
});
|
||||
|
||||
sxDataDao.updateStoreData(dataBaseInfo,map,productQuantityConsumptionDtoMap,productQuantityConsumptionDtoList,commentModel);
|
||||
}
|
||||
|
||||
}
|
||||
@ -812,6 +818,9 @@ public class SxDataServiceImp extends SxDataAbstService implements SxDataService
|
||||
dataBaseInfo.setWhere(where);
|
||||
total = sxDataDao.getTotalSpecShop(dataBaseInfo);
|
||||
if(total==0){
|
||||
HttpUtils.postData(restTemplate,remoteIp+HttpUtils.URL_SYNC_REFRESH
|
||||
+"?appKey="+commentModel.getAppKey()
|
||||
+"&sign="+commentModel.getAppId(), new JSONArray());
|
||||
log.info("暂无活动商品同步");
|
||||
return;
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user