Files
zszq-trs/YLErpWeb/Views/assetunit/assetunitList.cshtml
T
tengyufan 864a29d6a8 #EQD-6605 国联民生-确认书编号规则调整(不基于甲方乙方判定)
feat: 国联民生收益互换按簿记分类生成交易编号

簿记账户新增“簿记分类”字段,支持代客、融券,新增账户默认代客,历史账户统一初始化为代客
簿记账户分类设为必填,列表、编辑及详情页面同步展示
修改已被交易引用的簿记账户分类时增加二次确认,并提示关联交易数量
国联民生收益互换交易编号不再根据甲乙方判断,改为根据簿记账户分类生成
代客使用数字序号,融券使用字母序号,分别从已有同客户同日编号的最大序号继续递增
保留手工交易编号优先逻辑,标准格式的手工编号参与后续最大序号计算
生成候选编号后检查完整交易编号是否已存在,存在则继续递增
新增簿记分类编号格式、最大序号计算及数字字母序列隔离专项单测
2026-08-05 15:55:01 +08:00

119 lines
4.5 KiB
Plaintext

@{
ViewBag.Title = "簿记账户";
Layout = "~/Views/Shared/_MainLayout.cshtml";
var pageObj = new
{
HasGroup = ConsUserGroup.HasGroup,
IsDongGuan = PS.Config.Company==CompanyEnum.东莞
};
}
@section JS{
<script>
var page = @Json.Serialize(pageObj);
</script>
<script type="text/javascript">
$(function () {
var PostData = {};
$(".datepicker").datepicker({ changeMonth: true, changeYear: true, showButtonPanel: true, showOtherMonths: true, selectOtherMonths: true });
@Html.Raw(JqGridSimple.OutGrid("/assetunit/assetunitQuery"));
document.onkeydown = function (event) {
try {
var e = event ? event : (window.event ? window.event : null);
(e.keyCode == 13) && SearchClick(true);
} catch (e) { }
};
});
function rowdblclick(id) {
var encryptId = $('#listGrid').getRowData(id).EncryptId;
startassetunitView(encryptId);
}
var colModelGrid = [{
name: '', label: '操作', index: '', width: 90, formatter: showToolName, sortable: false
}, { name: 'id', label: 'id', index: 'id', width: 1, hidden: true
}, { name: 'EncryptId', label: 'EncryptId', index: 'EncryptId', width: 0, hidden: true
}, { name: 'Name', label: '簿记账户名称', index: 'Name', width: 150
}, { name: 'BookCategory', label: '簿记分类', index: 'BookCategory', width: 90
}, { name: 'UserGroup', label: "用户组", width: 150, hidden: !page.HasGroup, optionHide: !page.HasGroup
}, { name: 'GroupName', label: "账户组名称", index: 'GroupId', width: 150
}, { name: 'BaseCurrency', label: '基础币种', index: 'BaseCurrency', width: 90
}, { name: 'TraderNames', label: page.IsDongGuan ? '系统账号' : '交易员', index: 'TraderNames', width: 150,sortable: false,
}, { name: 'OptName', label: '操作人名', index: 'OptName', width: 90
}, { name: 'OptDate', label: '创建时间', index: 'OptDate', width: 90, formatter: 'date' }];
function showToolName(cellValue, options, rowObject) {
var html = "<input type=\"button\" class=\"wentiEdit\" title='查看簿记账户' onclick=\"startassetunitView('{0}')\" value=\"{1}\" />".template(rowObject.EncryptId, "查看");
return html;
}
function startAddassetunit() {
var newUrl = "/assetunit/assetunitEdit/0";
main.infopage("簿记账户新增", newUrl, { area: ['550px', '50%'] });
}
function startassetunitView(id) {
var url = "/assetunit/assetunitView/?enid=" + id;
main.infopage("簿记账户查看", url, { area: ['550px', '55%'] });
}
function reloadassetunit() {
//重新加载
SearchClick();
$('#modal-editassetunit').modal('hide');
}
function SearchClick(isSearchclick) {
var listGrid = $('#listGrid');
listGrid.appendPostData({ Name: $("#Name").val() });
listGrid.appendPostData({ UserGroup: $("#UserGroup").val() });
listGrid.appendPostData({ TraderIds: $("#TraderName").val() });
if (typeof (isSearchclick) != "undefined" && isSearchclick) {
//点击搜索时默认第一页
listGrid.jqGrid('setGridParam', {page: 1});
}
listGrid.trigger('reloadGrid');
}
</script>
}
<div class="searchdiv">
@Html.ShortInput("Name", "账户名称")
@if (ConsUserGroup.HasGroup)
{
<div class="search-group">
<span class="search-label">用户组</span>
<select id="UserGroup" name="UserGroup">
<option value="">全部</option>
@foreach (var item in ConsUserGroup.GetGroups())
{
<option value="@(item.ItemValue)">@(item.ItemDesc)</option>
}
</select>
</div>
}
@Html.MyAceDropdownInput("TraderName", "交易员", GlobalData.GetAllTrader())
@MyControls.SearchBtn()
@if (CurUser.系统管理.簿记账户新增)
{
@MyControls.Btn("新增", "startAddassetunit()")
}
</div>
<div class="tabbable">
<ul id="myTab" class="nav-main">
<li class='active'>
<a href="/assetunit/assetunitList">基本信息</a>
</li>
<li>
<a href="/AccountOpeningProcess/ApprovalAsset">簿记审批</a>
</li>
</ul>
</div>
@Html.Raw(JqGridSimple.OutTable())