diff --git a/ssjygl-xsx-common/src/main/java/com/cowr/common/enums/RoleEnum.java b/ssjygl-xsx-common/src/main/java/com/cowr/common/enums/RoleEnum.java
index b9615c0..095a0e7 100644
--- a/ssjygl-xsx-common/src/main/java/com/cowr/common/enums/RoleEnum.java
+++ b/ssjygl-xsx-common/src/main/java/com/cowr/common/enums/RoleEnum.java
@@ -14,9 +14,10 @@ import java.util.List;
* 300 注册用户
* 400 占位
*
- * 500 公司总经理,权限:查看、付费审核、退费审核
+ * 500 公司总经理,权限:查看、配额
* 501 公司财务人员,权限:查看、付费、退费
* 502 公司领导,权限:查看
+ * 503 公司财务经理 付费审核、退费审核
*/
public enum RoleEnum {
DEVOPS(99),
@@ -32,6 +33,7 @@ public enum RoleEnum {
PRESIDENT(500),
TREASURER(501),
PRESIDENTVIEW(502),
+ FINANCEMANAGER(503),
CHAISHA(600);
diff --git a/ssjygl-xsx-local/src/main/java/com/cowr/local/ssjygl/system/sysuser/SysuserSyncService.java b/ssjygl-xsx-local/src/main/java/com/cowr/local/ssjygl/system/sysuser/SysuserSyncService.java
index fe9b336..ce5fcd5 100644
--- a/ssjygl-xsx-local/src/main/java/com/cowr/local/ssjygl/system/sysuser/SysuserSyncService.java
+++ b/ssjygl-xsx-local/src/main/java/com/cowr/local/ssjygl/system/sysuser/SysuserSyncService.java
@@ -125,6 +125,17 @@ public class SysuserSyncService extends BaseService {
return roleid.equals(RoleEnum.TRANCOADMIN.getRoleid());
}
+ /**
+ * 是否财务经理
+ * 预付费审批、退费审批
+ * @param roleid
+ * @return
+ */
+ public boolean isFinanceManager(Integer roleid){
+ if (roleid == null) return false;
+ return roleid.equals(RoleEnum.FINANCEMANAGER.getRoleid());
+ }
+
/**
* 是否是司机
*
diff --git a/ssjygl-xsx-local/src/main/java/com/cowr/local/ssjygl/ticket/invalidverify/TicketInvalidVerifySyncService.java b/ssjygl-xsx-local/src/main/java/com/cowr/local/ssjygl/ticket/invalidverify/TicketInvalidVerifySyncService.java
index 1f47e4a..52821a2 100644
--- a/ssjygl-xsx-local/src/main/java/com/cowr/local/ssjygl/ticket/invalidverify/TicketInvalidVerifySyncService.java
+++ b/ssjygl-xsx-local/src/main/java/com/cowr/local/ssjygl/ticket/invalidverify/TicketInvalidVerifySyncService.java
@@ -25,6 +25,10 @@ public class TicketInvalidVerifySyncService {
return Result.failedstr("按 %s 没有找到订单信息", order_sn);
}
+ if (order.getInvoiceType() == 2 && order.getInvoiceCode() != null) {
+ return Result.failed("已经开专票的结算单不能取消");
+ }
+
TicketReceive receive = TicketReceiveService.me.checkReceive(CliCacheData.SUP.getId(), order.getTicketCode());
if (receive == null) {
return Result.failed("没有有效的结算单领用记录,或者订单没有开具有效的结算单");
diff --git a/ssjygl-xsx-service/src/main/java/com/cowr/service/ssjygl/invoice/log/InvoiceLogSyncService.java b/ssjygl-xsx-service/src/main/java/com/cowr/service/ssjygl/invoice/log/InvoiceLogSyncService.java
index f3f9d9d..68663b2 100644
--- a/ssjygl-xsx-service/src/main/java/com/cowr/service/ssjygl/invoice/log/InvoiceLogSyncService.java
+++ b/ssjygl-xsx-service/src/main/java/com/cowr/service/ssjygl/invoice/log/InvoiceLogSyncService.java
@@ -262,7 +262,13 @@ public class InvoiceLogSyncService extends BaseSyncService {
return Result.failed("未找到发票记录");
}
- return cancelType1(invoiceLog, invalid_memo, sysuser);
+ if (invoiceLog.getInvoiceType() == 1) {
+ return cancelType1(invoiceLog, invalid_memo, sysuser);
+ } else if (invoiceLog.getInvoiceType() == 2) {
+ return cancelType2(invoiceLog, invalid_memo, sysuser);
+ } else {
+ return Result.failed("发票记录错误");
+ }
}
@@ -395,23 +401,14 @@ public class InvoiceLogSyncService extends BaseSyncService {
return Result.failed("发票使用信息错误");
}
- List ticketloglist = TicketLog.dao.find("select * from ticket_log t \n" +
- " where t.state = ? \n" +
- " and t.invoice_number = ? \n" +
- " and t.ticket_code = ? ",
- OrderStateEnum.RECEIVED.getStateid(),
- invoiceLog.getInvoiceNumber(),
- invoiceLog.getCode()
- );
+ Map map = new HashMap<>();
+ Map ordmap = new HashMap<>();
+ Date now = new Date();
+ Record logrecord = new Record();
+ List sql = new ArrayList<>();
+ List