修改结算管理bug,添加财务经理角色
parent
c7aa3b3bbe
commit
d2df4c512e
|
|
@ -14,9 +14,10 @@ import java.util.List;
|
||||||
* 300 注册用户
|
* 300 注册用户
|
||||||
* 400 占位
|
* 400 占位
|
||||||
* <p>
|
* <p>
|
||||||
* 500 公司总经理,权限:查看、付费审核、退费审核
|
* 500 公司总经理,权限:查看、配额
|
||||||
* 501 公司财务人员,权限:查看、付费、退费
|
* 501 公司财务人员,权限:查看、付费、退费
|
||||||
* 502 公司领导,权限:查看
|
* 502 公司领导,权限:查看
|
||||||
|
* 503 公司财务经理 付费审核、退费审核
|
||||||
*/
|
*/
|
||||||
public enum RoleEnum {
|
public enum RoleEnum {
|
||||||
DEVOPS(99),
|
DEVOPS(99),
|
||||||
|
|
@ -32,6 +33,7 @@ public enum RoleEnum {
|
||||||
PRESIDENT(500),
|
PRESIDENT(500),
|
||||||
TREASURER(501),
|
TREASURER(501),
|
||||||
PRESIDENTVIEW(502),
|
PRESIDENTVIEW(502),
|
||||||
|
FINANCEMANAGER(503),
|
||||||
|
|
||||||
CHAISHA(600);
|
CHAISHA(600);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -125,6 +125,17 @@ public class SysuserSyncService extends BaseService {
|
||||||
return roleid.equals(RoleEnum.TRANCOADMIN.getRoleid());
|
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());
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 是否是司机
|
* 是否是司机
|
||||||
*
|
*
|
||||||
|
|
|
||||||
|
|
@ -25,6 +25,10 @@ public class TicketInvalidVerifySyncService {
|
||||||
return Result.failedstr("按 %s 没有找到订单信息", order_sn);
|
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());
|
TicketReceive receive = TicketReceiveService.me.checkReceive(CliCacheData.SUP.getId(), order.getTicketCode());
|
||||||
if (receive == null) {
|
if (receive == null) {
|
||||||
return Result.failed("没有有效的结算单领用记录,或者订单没有开具有效的结算单");
|
return Result.failed("没有有效的结算单领用记录,或者订单没有开具有效的结算单");
|
||||||
|
|
|
||||||
|
|
@ -262,7 +262,13 @@ public class InvoiceLogSyncService extends BaseSyncService {
|
||||||
return Result.failed("未找到发票记录");
|
return Result.failed("未找到发票记录");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (invoiceLog.getInvoiceType() == 1) {
|
||||||
return cancelType1(invoiceLog, invalid_memo, sysuser);
|
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("发票使用信息错误");
|
return Result.failed("发票使用信息错误");
|
||||||
}
|
}
|
||||||
|
|
||||||
List<TicketLog> 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()
|
|
||||||
);
|
|
||||||
|
|
||||||
if (ticketloglist.isEmpty()) {
|
|
||||||
return Result.failed("发票使用信息错误");
|
|
||||||
}
|
|
||||||
|
|
||||||
Map<Integer, SyncTask> map = new HashMap<>();
|
Map<Integer, SyncTask> map = new HashMap<>();
|
||||||
Map<String, OrderTemp> ordmap = new HashMap<>();
|
Map<String, OrderTemp> ordmap = new HashMap<>();
|
||||||
Date now = new Date();
|
Date now = new Date();
|
||||||
Record logrecord = new Record();
|
Record logrecord = new Record();
|
||||||
|
List<String> sql = new ArrayList<>();
|
||||||
|
List<Object> ticketparams = new ArrayList<>();
|
||||||
|
|
||||||
|
ticketparams.add(OrderStateEnum.RECEIVED.getStateid());
|
||||||
|
|
||||||
logrecord.set("state", OrderStateEnum.INVALID.getStateid());
|
logrecord.set("state", OrderStateEnum.INVALID.getStateid());
|
||||||
logrecord.set("invoice_type", invoiceLog.getInvoiceType());
|
logrecord.set("invoice_type", invoiceLog.getInvoiceType());
|
||||||
|
|
@ -431,6 +428,17 @@ public class InvoiceLogSyncService extends BaseSyncService {
|
||||||
|
|
||||||
map.get(supermarket_id).addUpdateData(o);
|
map.get(supermarket_id).addUpdateData(o);
|
||||||
ordmap.put(o.getSn(), o);
|
ordmap.put(o.getSn(), o);
|
||||||
|
|
||||||
|
ticketparams.add(o.getTicketCode());
|
||||||
|
sql.add("?");
|
||||||
|
}
|
||||||
|
|
||||||
|
List<TicketLog> ticketloglist = TicketLog.dao.find("select * from ticket_log t \n" +
|
||||||
|
" where t.state = ? \n" +
|
||||||
|
" and t.ticket_code in(" + StrKit.join(sql, ",") + ")", ticketparams.toArray());
|
||||||
|
|
||||||
|
if (ticketloglist.isEmpty()) {
|
||||||
|
return Result.failed("结算单使用信息错误");
|
||||||
}
|
}
|
||||||
|
|
||||||
for (InvoiceLog o : loglist) {
|
for (InvoiceLog o : loglist) {
|
||||||
|
|
|
||||||
|
|
@ -90,7 +90,7 @@ public class PrepayDetailSyncService extends BaseSyncService {
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public Result verify(String id, int state, String memo, Sysuser user) {
|
public Result verify(String id, int state, String memo, Sysuser user) {
|
||||||
if (!SysuserSyncService.me.isPresident(user.getRole())) { // 总经理审核预付费
|
if (!SysuserSyncService.me.isFinanceManager(user.getRole())) { // 财务经理审核预付费
|
||||||
return Result.permissionDenied();
|
return Result.permissionDenied();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -106,7 +106,7 @@ public class RefundDetailSyncService extends BaseSyncService {
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
public Result verify(String id, int state, String memo, Sysuser user) {
|
public Result verify(String id, int state, String memo, Sysuser user) {
|
||||||
if (!SysuserSyncService.me.isPresident(user.getRole())) { // 总经理审核退费
|
if (!SysuserSyncService.me.isFinanceManager(user.getRole())) { // 财务审核退费
|
||||||
return Result.permissionDenied();
|
return Result.permissionDenied();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -136,6 +136,17 @@ public class SysuserSyncService extends BaseSyncService {
|
||||||
return roleid.equals(RoleEnum.TRANCOADMIN.getRoleid());
|
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());
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 是否是司机
|
* 是否是司机
|
||||||
*
|
*
|
||||||
|
|
@ -237,6 +248,7 @@ public class SysuserSyncService extends BaseSyncService {
|
||||||
&& !isConfigAdmin(model.getRole())
|
&& !isConfigAdmin(model.getRole())
|
||||||
&& !isChaisha(model.getRole())
|
&& !isChaisha(model.getRole())
|
||||||
&& !isPresidentView(model.getRole())
|
&& !isPresidentView(model.getRole())
|
||||||
|
&& !isFinanceManager(model.getRole())
|
||||||
) {
|
) {
|
||||||
// 不是财务、经理、采砂局的时候,按照原来的规则检查
|
// 不是财务、经理、采砂局的时候,按照原来的规则检查
|
||||||
if (checkEntityId(model) == null) {
|
if (checkEntityId(model) == null) {
|
||||||
|
|
@ -755,6 +767,7 @@ public class SysuserSyncService extends BaseSyncService {
|
||||||
&& !isTreasurer(sysuser.getRole())
|
&& !isTreasurer(sysuser.getRole())
|
||||||
&& !isCustomer(sysuser.getRole())
|
&& !isCustomer(sysuser.getRole())
|
||||||
&& !isChaisha(sysuser.getRole())
|
&& !isChaisha(sysuser.getRole())
|
||||||
|
&& !isFinanceManager(sysuser.getRole())
|
||||||
) {
|
) {
|
||||||
return Result.permissionDenied();
|
return Result.permissionDenied();
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -125,7 +125,7 @@ public class TicketLogController extends Controller {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
String ticket_code = get("ticket_code");
|
String ticket_code = get("code");
|
||||||
String invalid_memo = get("invalid_memo");
|
String invalid_memo = get("invalid_memo");
|
||||||
|
|
||||||
renderJson(TicketLogSyncService.me.cancelByCode(ticket_code, invalid_memo, tokenuser));
|
renderJson(TicketLogSyncService.me.cancelByCode(ticket_code, invalid_memo, tokenuser));
|
||||||
|
|
|
||||||
|
|
@ -189,6 +189,10 @@ public class TicketLogSyncService extends BaseSyncService {
|
||||||
logrecord.set("ticket_code", ticketLog.getTicketCode());
|
logrecord.set("ticket_code", ticketLog.getTicketCode());
|
||||||
|
|
||||||
for (OrderTemp o : ordlist) {
|
for (OrderTemp o : ordlist) {
|
||||||
|
if(o.getInvoiceType() == 2 && o.getInvoiceCode() != null){
|
||||||
|
return Result.failed("已经开专票的结算单不能取消");
|
||||||
|
}
|
||||||
|
|
||||||
o.setTicketCode(null);
|
o.setTicketCode(null);
|
||||||
|
|
||||||
int supermarket_id = o.getSupermarketId();
|
int supermarket_id = o.getSupermarketId();
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue