master
parent
368c0dce7f
commit
1351b0f357
|
|
@ -106,9 +106,9 @@ public class OrderTempController extends BaseController {
|
||||||
String invoice_code = get("invoice_code");
|
String invoice_code = get("invoice_code");
|
||||||
String memo = get("memo");
|
String memo = get("memo");
|
||||||
String printer = get("printer", Enums.PrinterIdEnum.printer1.name());
|
String printer = get("printer", Enums.PrinterIdEnum.printer1.name());
|
||||||
int req_receipt = getInt("req_receipt", 0); // 是否需要发票,0 默认不需要,1需要
|
// int req_receipt = getInt("req_receipt", 0); // 是否需要发票,0 默认不需要,1需要
|
||||||
|
|
||||||
renderJson(OrderTempSyncService.me.payordercluster(uuid, transport_id, ordercluster_id, invoice_number, invoice_code, memo, printer, tokenuser, req_receipt));
|
renderJson(OrderTempSyncService.me.payordercluster(uuid, transport_id, ordercluster_id, invoice_number, invoice_code, memo, printer, tokenuser));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Before(OrderTempPrepayValidator.class)
|
@Before(OrderTempPrepayValidator.class)
|
||||||
|
|
|
||||||
|
|
@ -224,8 +224,7 @@ public class OrderTempSyncService {
|
||||||
String invoice_code,
|
String invoice_code,
|
||||||
String memo,
|
String memo,
|
||||||
String printerId,
|
String printerId,
|
||||||
Sysuser sysuser,
|
Sysuser sysuser
|
||||||
int req_receipt
|
|
||||||
) {
|
) {
|
||||||
OrderTemp order = new OrderTemp();
|
OrderTemp order = new OrderTemp();
|
||||||
|
|
||||||
|
|
@ -259,11 +258,6 @@ public class OrderTempSyncService {
|
||||||
return Result.failedstr("毛重 %.2f 吨,不能超过 %s 吨", transport.getSecondWeight(), Config.configprop.getInt("weigh.max"));
|
return Result.failedstr("毛重 %.2f 吨,不能超过 %s 吨", transport.getSecondWeight(), Config.configprop.getInt("weigh.max"));
|
||||||
}
|
}
|
||||||
|
|
||||||
InvoiceReceive receive = InvoiceReceiveService.me.checkReceive(transport.getSupermarketId(), invoice_number, invoice_code);
|
|
||||||
if (receive == null) {
|
|
||||||
return Result.failed("没有有效的发票领用记录,或者发票已经被使用");
|
|
||||||
}
|
|
||||||
|
|
||||||
BigDecimal net_weight = transport.getSecondWeight().subtract(transport.getFirstWeight()); // 销售的用第二次减第一次
|
BigDecimal net_weight = transport.getSecondWeight().subtract(transport.getFirstWeight()); // 销售的用第二次减第一次
|
||||||
|
|
||||||
OrderclusterTruck ot = OrderclusterTruck.dao.findFirst("select * from ordercluster_truck t \n" +
|
OrderclusterTruck ot = OrderclusterTruck.dao.findFirst("select * from ordercluster_truck t \n" +
|
||||||
|
|
@ -302,13 +296,26 @@ public class OrderTempSyncService {
|
||||||
return Result.failedstr("未查到有效的单价信息");
|
return Result.failedstr("未查到有效的单价信息");
|
||||||
}
|
}
|
||||||
|
|
||||||
Date now = new Date();
|
InvoiceReceive receive = null;
|
||||||
SyncTask synctask = new SyncTask();
|
|
||||||
|
// 零散客户需要开具发票的,需要检查是否有有效的领用记录
|
||||||
|
if (ordercluster.getReqReceipt() == 1) {
|
||||||
|
receive = InvoiceReceiveService.me.checkReceive(transport.getSupermarketId(), invoice_number, invoice_code);
|
||||||
|
|
||||||
|
if (receive == null) {
|
||||||
|
return Result.failed("没有有效的发票领用记录,或者发票已经被使用");
|
||||||
|
}
|
||||||
|
|
||||||
// if (req_receipt == 1) { // 需要同时开具发票
|
|
||||||
order.setInvoiceCode(invoice_code);
|
order.setInvoiceCode(invoice_code);
|
||||||
order.setInvoiceNumber(invoice_number);
|
order.setInvoiceNumber(invoice_number);
|
||||||
// }
|
|
||||||
|
order.setInvoiceType(1); // 需要开发票的,都是冠名发票
|
||||||
|
} else {
|
||||||
|
order.setInvoiceType(2); // 不需要开发票的,都是要专票的
|
||||||
|
}
|
||||||
|
|
||||||
|
Date now = new Date();
|
||||||
|
SyncTask synctask = new SyncTask();
|
||||||
|
|
||||||
order.setTransportId(transport.getId());
|
order.setTransportId(transport.getId());
|
||||||
order.setSupermarketId(transport.getSupermarketId());
|
order.setSupermarketId(transport.getSupermarketId());
|
||||||
|
|
@ -381,6 +388,7 @@ public class OrderTempSyncService {
|
||||||
transport.setArriveTime(now);
|
transport.setArriveTime(now);
|
||||||
transport.setType(OrderTypeEnum.TEMP.getTypeid());
|
transport.setType(OrderTypeEnum.TEMP.getTypeid());
|
||||||
|
|
||||||
|
InvoiceReceive finalReceive = receive;
|
||||||
boolean ret = Db.tx(new IAtom() {
|
boolean ret = Db.tx(new IAtom() {
|
||||||
@Override
|
@Override
|
||||||
public boolean run() {
|
public boolean run() {
|
||||||
|
|
@ -420,12 +428,12 @@ public class OrderTempSyncService {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
// if (req_receipt == 1) { // 需要同时开具发票
|
if (ordercluster.getReqReceipt() == 1) { // 需要同时开具发票
|
||||||
// 这里的 finalReceive 在前面肯定验证过了
|
// 这里的 finalReceive 在前面肯定验证过了
|
||||||
receive.setSurplus(receive.getSurplus() - 1);
|
finalReceive.setSurplus(finalReceive.getSurplus() - 1);
|
||||||
receive.setCurrentCode(invoice_code);
|
finalReceive.setCurrentCode(invoice_code);
|
||||||
|
|
||||||
ret = receive.update();
|
ret = finalReceive.update();
|
||||||
|
|
||||||
if (!ret) {
|
if (!ret) {
|
||||||
log.error("发票领用信息更新失败", invoice_code);
|
log.error("发票领用信息更新失败", invoice_code);
|
||||||
|
|
@ -434,7 +442,7 @@ public class OrderTempSyncService {
|
||||||
|
|
||||||
InvoiceLog invoiceLog = new InvoiceLog();
|
InvoiceLog invoiceLog = new InvoiceLog();
|
||||||
invoiceLog.setId(StrKit.getRandomUUID());
|
invoiceLog.setId(StrKit.getRandomUUID());
|
||||||
invoiceLog.setInvoiceReceiveId(receive.getId());
|
invoiceLog.setInvoiceReceiveId(finalReceive.getId());
|
||||||
invoiceLog.setCode(invoice_code);
|
invoiceLog.setCode(invoice_code);
|
||||||
invoiceLog.setInvoiceNumber(invoice_number);
|
invoiceLog.setInvoiceNumber(invoice_number);
|
||||||
invoiceLog.setState(OrderStateEnum.RECEIVED.getStateid());
|
invoiceLog.setState(OrderStateEnum.RECEIVED.getStateid());
|
||||||
|
|
@ -451,8 +459,8 @@ public class OrderTempSyncService {
|
||||||
}
|
}
|
||||||
|
|
||||||
synctask.addSaveData(invoiceLog);
|
synctask.addSaveData(invoiceLog);
|
||||||
synctask.addUpdateData(receive);
|
synctask.addUpdateData(finalReceive);
|
||||||
// }
|
}
|
||||||
|
|
||||||
// 在这里更新sn字段之后存入
|
// 在这里更新sn字段之后存入
|
||||||
synctask.addSaveData(order);
|
synctask.addSaveData(order);
|
||||||
|
|
@ -573,7 +581,8 @@ public class OrderTempSyncService {
|
||||||
InvoiceReceive receive = null;
|
InvoiceReceive receive = null;
|
||||||
|
|
||||||
// 2020-09-29 需要开具专票的,先开具结算单,不打发票
|
// 2020-09-29 需要开具专票的,先开具结算单,不打发票
|
||||||
if (CliCacheData.SUP.getInvoiceType() == 2 && customer.getInvoiceType() == 2) {
|
// 2020-10-12 所有超市都可以开结算单
|
||||||
|
if ( customer.getInvoiceType() == 2) {
|
||||||
order.setInvoiceType(2);
|
order.setInvoiceType(2);
|
||||||
// 需要专票的,在结算开了专票之后,再修改 invoice_site 字段
|
// 需要专票的,在结算开了专票之后,再修改 invoice_site 字段
|
||||||
} else {
|
} else {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue