Files
zszq-trs/YLErpWeb/Views/clientblack/clientblackView.cshtml
T
tengyufan 8afd449c40 feat(ClientBlack): 新增客户黑名单审批流程
- 黑名单新增、删除、批量导入、批量移出在配置审批节点后,审批通过才生效
- 新增黑名单待提交后可提交审批;仅首节点未审批时可撤回,进入后续节点禁止撤回
- 增加黑名单审批列表、审批弹窗、审批操作日志及状态筛选
- 支持审批配置中的“黑名单审批”流程及对应菜单、模块权限、操作权限
- 黑名单审批中禁止同名记录覆盖备注;已在黑名单中的同名导入会明确提示本次将修改备注
- 未配置审批节点时保持原有直接生效行为
- 增加黑名单审批状态机单测,39/39 通过
- 修正撤回全部失败时仍提示“撤回审批成功”的问题
2026-08-13 17:21:04 +08:00

46 lines
1.9 KiB
Plaintext

@using YLErp.Modules.ClientModule
@model YLErp.Model.client_black
@{
ViewBag.Title = "黑名单客户审批";
Layout = "~/Views/Shared/_InfoLayout.cshtml";
var process = new ClientBlackService(CurUser).ProcessList();
var currentNode = process.FirstOrDefault(x => x.order == Model?.ApprovalProcess);
var canAudit = currentNode != null && UserBLL.GetRolesByUserId(CurUser.UserId).Any(x => x.Id == currentNode.roleId);
}
@section JS {
<script>
function audit(status) {
main.confirmPost(status === 'pass' ? '确认审批通过?' : '确认拒绝?', '/clientblack/Auditclientblack', {
enid: '@(Model?.EncryptId)', status: status, auditComment: $('#AuditComment').val()
}).done(function (data) {
if (!data.success) return;
window.parent.location.reload();
window.close();
});
}
</script>
}
<div class="toolbarDiv" style="height:70px">
<div style="display:inline-block;float:left;">
@if (canAudit)
{
@MyControls.Btn("审批通过", "audit('pass');")
@MyControls.Btn("拒绝", "audit('reject');")
}
</div>
</div>
<div class="yc-panel">
<table class="table table-bordered">
<colgroup><col span="1" width="200" /></colgroup>
<tr><th class="tdRight">客户名称</th><td>@Model?.Name</td></tr>
<tr><th class="tdRight">黑名单备注</th><td>@Model?.Remarks</td></tr>
<tr><th class="tdRight">审批状态</th><td>@Model?.State</td></tr>
<tr><th class="tdRight">提交审批人</th><td>@Model?.ApprovalOptName</td></tr>
<tr><th class="tdRight">提交审批时间</th><td>@Model?.ApprovalOptDate?.ToString("yyyy-MM-dd HH:mm:ss")</td></tr>
<tr>
<th class="tdRight">审批说明</th>
<td><textarea class="text-box text-left" rows="3" id="AuditComment" style="width:700px;height:70px;"></textarea></td>
</tr>
</table>
</div>