package com.zy.common.service.erp;
|
|
import com.core.common.Cools;
|
import com.core.common.DateUtils;
|
import com.zy.common.service.erp.dto.VoucherDto;
|
import com.zy.common.service.erp.entity.Goods;
|
import com.zy.common.service.erp.entity.Voucher;
|
import com.zy.common.service.erp.entity.VoucherDetail;
|
import lombok.extern.slf4j.Slf4j;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.jdbc.core.JdbcTemplate;
|
import org.springframework.stereotype.Service;
|
|
import java.text.MessageFormat;
|
import java.util.ArrayList;
|
import java.util.Date;
|
import java.util.List;
|
|
/**
|
* Created by vincent on 2020/11/27
|
*/
|
@Slf4j
|
@Service
|
public class ErpService {
|
|
@Autowired
|
private ErpSqlServer erpSqlServer;
|
@Autowired
|
private JdbcTemplate jdbcTemplate;
|
|
//////////////////////成品、原材料入库通知单数据提取//////////////////////////////////////////////////
|
|
/**
|
* 获取GOODS表
|
*/
|
public List<Goods> selectGoods(Integer state) {
|
String sql = "select * from Goods where state = '" + state + "'";
|
return erpSqlServer.select(sql, Goods.class);
|
}
|
|
public Goods selectGoodsOne(String barCode) {
|
String sql = "select top 1 * from Goods where BarCode = '" + barCode + "'";
|
List<Goods> select = erpSqlServer.select(sql, Goods.class);
|
if (Cools.isEmpty(select)) {
|
return null;
|
} else {
|
return select.get(0);
|
}
|
}
|
|
public List<VoucherDto> selectOrder(Integer state) {
|
List<VoucherDto> list = new ArrayList<>();
|
List<Voucher> voucherList = this.selectVoucher(state);
|
if (!Cools.isEmpty(voucherList)) {
|
for (Voucher voucher : voucherList) {
|
VoucherDto dto = new VoucherDto();
|
dto.setVoucher(voucher);
|
List<VoucherDetail> voucherDetails = this.selectVoucherDetail(voucher.getVoucherID());
|
if (!Cools.isEmpty(voucherDetails)) {
|
dto.setDetails(voucherDetails);
|
}
|
list.add(dto);
|
}
|
}
|
return list;
|
}
|
|
|
/**
|
* 获取Voucher表
|
*/
|
public List<Voucher> selectVoucher(Integer state) {
|
String sql = "select * from Voucher where state = '" + state + "'";
|
return erpSqlServer.select(sql, Voucher.class);
|
}
|
|
/**
|
* 获取VoucherDetail表
|
*/
|
public List<VoucherDetail> selectVoucherDetail(String VoucherID) {
|
String sql = "select * from VoucherDetail where VoucherID = '" + VoucherID + "'";
|
return erpSqlServer.select(sql, VoucherDetail.class);
|
}
|
|
|
/**
|
* 修改 Goods 表 state
|
*/
|
public boolean updateStateForGoods(String barcode, Integer state){
|
String sql = "update Goods set State = ''{1}'', LastUpdatedDate = ''{2}'' where BarCode = ''{0}''";
|
sql = MessageFormat.format(sql, barcode, state, DateUtils.convert(new Date()));
|
return erpSqlServer.update(sql) > 0;
|
}
|
|
/**
|
* 修改 Goods 表 state, location
|
*/
|
public boolean updateStateAndLocForGoods(String barcode, Integer state, String loc){
|
String sql = "update Goods set State = ''{1}'', LastUpdatedDate = ''{2}'', Location = ''{3}'' where BarCode = ''{0}''";
|
sql = MessageFormat.format(sql, barcode, state, DateUtils.convert(new Date()), loc);
|
return erpSqlServer.update(sql) > 0;
|
}
|
|
/**
|
* 修改 Voucher 表 state
|
*/
|
public boolean updateStateForVoucher(String voucherID, Integer state){
|
String sql = "update Voucher set State = ''{1}'', LastUpdatedDate = ''{2}'' where VoucherID = ''{0}''";
|
sql = MessageFormat.format(sql, voucherID, state, DateUtils.convert(new Date()));
|
return erpSqlServer.update(sql) > 0;
|
}
|
|
/**
|
* 修改 VoucherDetail 表
|
*/
|
public boolean updateTimeForVoucherDetail(String voucherID){
|
String sql = "update VoucherDetail set LastUpdatedDate = ''{1}'' where VoucherID = ''{0}''";
|
sql = MessageFormat.format(sql, voucherID, DateUtils.convert(new Date()));
|
return erpSqlServer.update(sql) > 0;
|
}
|
|
/**
|
* 新增 VoucherDetail 表
|
*/
|
public boolean insertVoucherDetail(VoucherDetail voucherDetail){
|
String sql = "update VoucherDetail set LastUpdatedDate = ''{1}'' where VoucherID = ''{0}''";
|
sql = MessageFormat.format(sql, voucherID, DateUtils.convert(new Date()));
|
return erpSqlServer.update(sql) > 0;
|
}
|
|
}
|