524 lines
19 KiB
Plaintext
524 lines
19 KiB
Plaintext
@{
|
|
ViewBag.Title = "开户管理";
|
|
Layout = "~/Views/Shared/_MainLayout.cshtml";
|
|
var pageObj = new
|
|
{
|
|
isClientNew = CurUser.客户管理.客户新增,
|
|
approvalList = CurUser.风险控制_接口审批列表,
|
|
approvalMode = YLErp.PS.Config.ClientElement.InterfaceApprovalMode,
|
|
isClientEdit = CurUser.客户管理.客户修改,
|
|
roles = CurUser.Roles.Select(s => s.Id).ToList()
|
|
};
|
|
}
|
|
@section CSS{
|
|
<link href="~/Style/Css/bankcardView.css" />
|
|
}
|
|
<style>
|
|
.OptName-wrap, .date-wrap {
|
|
display: none !important;
|
|
}
|
|
|
|
.spanNone {
|
|
display: none;
|
|
}
|
|
|
|
.no-skin {
|
|
position: initial !important;
|
|
}
|
|
</style>
|
|
@section JS{
|
|
<script>
|
|
const page = @Json.Serialize(pageObj);
|
|
</script>
|
|
<script type="text/javascript">
|
|
var g_grid = {};
|
|
var query_data = {};
|
|
$(function () {
|
|
var PostData = {};
|
|
$(".datepicker").datepicker({
|
|
changeMonth: true,
|
|
changeYear: true,
|
|
showButtonPanel: true,
|
|
showOtherMonths: true,
|
|
selectOtherMonths: true
|
|
});
|
|
@Html.Raw(JqGridSimple.OutGrid("/client/clientOpeningProcessQuery"));
|
|
g_grid = jQuery('#listGrid');
|
|
|
|
function keyEnter(event) {
|
|
try {
|
|
var e = event ? event : (window.event ? window.event : null);
|
|
(e.keyCode == 13)&& SearchClick(true);
|
|
} catch (e) {}
|
|
}
|
|
|
|
document.onkeydown = keyEnter;
|
|
SetAceDropDown();
|
|
});
|
|
|
|
function isAuthorize(roleId) {
|
|
if (roleId === 'undefined') return false;
|
|
var roleIdStr = roleId + "";
|
|
if (roleIdStr === "") return false;
|
|
var rolesArr = page.roles;
|
|
var len = rolesArr.length;
|
|
if (len <= 0) return false;
|
|
for (var i = 0; i < len; i++) {
|
|
if (rolesArr[i] == roleIdStr) {
|
|
return true;
|
|
}
|
|
}
|
|
return false;
|
|
}
|
|
|
|
var colModelGrid = [
|
|
{
|
|
name: 'id',
|
|
hidden: true,
|
|
optionHide: true
|
|
}, {
|
|
name: 'EncryptId',
|
|
hidden: true,
|
|
optionHide: true
|
|
},
|
|
{
|
|
name: 'RejectLog',
|
|
hidden: true,
|
|
optionHide: true
|
|
}, {
|
|
name: 'ProcessStatus',
|
|
label: '开户状态',
|
|
index: 'ProcessStatus',
|
|
width: 100,
|
|
classes: 'ProcessStatus',
|
|
formatter: processStatusFormat
|
|
},
|
|
{
|
|
name: 'ProcessRoleName',
|
|
label: '审批角色',
|
|
index: 'ProcessRoleName',
|
|
sortable: false,
|
|
width: 90,
|
|
hidden: false,
|
|
classes: 'ProcessRoleName'
|
|
}, {
|
|
name: 'Name',
|
|
label: '客户名称',
|
|
index: 'Name',
|
|
width: 250,
|
|
classes: 'Name',
|
|
formatter: nameFormat
|
|
}, {
|
|
name: 'CustomerNature1',
|
|
label: '客户性质1',
|
|
index: 'CustomerNature1',
|
|
width: 130,
|
|
sortable: false
|
|
}, {
|
|
name: 'CustomerNature2',
|
|
label: '客户性质2',
|
|
index: 'CustomerNature2',
|
|
width: 130,
|
|
sortable: false
|
|
}, {
|
|
name: 'Level',
|
|
label: '客户等级',
|
|
index: 'Level',
|
|
width: 60,
|
|
classes: 'Level'
|
|
}, {
|
|
name: 'CustomerManager',
|
|
label: '客户经理',
|
|
index: 'CustomerManager',
|
|
width: 90,
|
|
classes: 'CustomerManager'
|
|
}, {
|
|
name: 'ContactName',
|
|
label: '联系人姓名',
|
|
index: 'ContactName',
|
|
sortable: false,
|
|
width: 90,
|
|
classes: 'ContactName'
|
|
}, {
|
|
name: 'Phone',
|
|
label: '联系人电话',
|
|
index: 'Phone',
|
|
sortable: false,
|
|
width: 90,
|
|
classes: 'Phone'
|
|
}, {
|
|
name: 'Email',
|
|
label: '联系人邮箱',
|
|
index: 'Email',
|
|
sortable: false,
|
|
width: 150,
|
|
classes: 'Email'
|
|
}, {
|
|
name: 'SalesDepartment',
|
|
label: '归属营业部',
|
|
index: 'SalesDepartment',
|
|
sortable: false,
|
|
width: 90,
|
|
classes: 'SalesDepartment'
|
|
}, {
|
|
name: 'ProperClientClass',
|
|
label: '适当性分类',
|
|
index: 'ProperClientClass',
|
|
width: 130,
|
|
align: 'left',
|
|
classes: 'ProperClientClass'
|
|
}, {
|
|
name: 'Seller',
|
|
label: '营业部销售',
|
|
index: 'Seller',
|
|
width: 90,
|
|
classes: 'Seller'
|
|
}, {
|
|
name: 'SamePeerDesc',
|
|
label: '同业/非同业',
|
|
index: 'SamePeerDesc',
|
|
sortable: false,
|
|
width: 90,
|
|
align: 'left'
|
|
}, {
|
|
name: '',
|
|
label: '操作',
|
|
index: '',
|
|
sortable: false,
|
|
width: 220,
|
|
formatter: showToolName,
|
|
classes: 'actrion'
|
|
}
|
|
];
|
|
|
|
function gridComplete() {
|
|
main.setcolumnChooser(jQuery('#listGrid'), "@configcolumn_data.开户管理");
|
|
}
|
|
|
|
function rowdblclick(rowid) {
|
|
var rowData = $(this).getRowData(rowid);
|
|
startclientView(rowData.EncryptId);
|
|
}
|
|
|
|
function customButton(cellValue, options, rowObject) {
|
|
var imageHtml = "<input type=\"button\" value=\"删除\" class=\"btn-warning\" onclick=\"deleteclient('" +
|
|
rowObject.EncryptId +
|
|
"');\" />";
|
|
return imageHtml;
|
|
}
|
|
|
|
function deleteclient(encryptId) {
|
|
if (confirm("确定删除吗?")) {
|
|
$.ajax({
|
|
type: "Post",
|
|
url: "/client/Deleteclient",
|
|
data: { id: encryptId, d: new Date() },
|
|
success: function (data) {
|
|
showmiddlemessage(data.obj);
|
|
|
|
$('#listGrid').trigger('reloadGrid');
|
|
},
|
|
error: function (msg) {
|
|
alert("error:" + msg);
|
|
}
|
|
});
|
|
}
|
|
}
|
|
|
|
function ProcessOptDateFilter(cellValue, options, rowObject) {
|
|
if (rowObject.ProcessStatus === '未提交') {
|
|
return '';
|
|
}
|
|
return rowObject.ProcessOptDate;
|
|
}
|
|
|
|
function showToolName(cellValue, options, rowObject) {
|
|
var html =
|
|
"<input type=\"button\" class=\"wentiEdit\" title='查看客户信息' onclick=\"startclientView('{0}')\" value=\"{1}\" />"
|
|
.template(rowObject.EncryptId, "查看");
|
|
if (rowObject.ProcessStatus === '未提交' || rowObject.ProcessStatus === '已拒绝') {
|
|
html = html +
|
|
"<input type=\"button\" class=\"wentiEdit\" title='删除' onclick=\"deleteclient('{0}')\" value=\"{1}\" />"
|
|
.template(rowObject.EncryptId, "删除");
|
|
} else if (page.approvalMode != 1){
|
|
if (isAuthorize(rowObject.ProcessRoleId)) {
|
|
html = html +
|
|
"<input type=\"button\" class=\"wentiEdit\" title='审批' onclick=\"passorreject('{0}')\" value=\"{1}\" />"
|
|
.template(rowObject.id, "审批");
|
|
} else {
|
|
html = html +
|
|
"<input type=\"button\" class=\"wentiEdit\" title='审批' disabled='disabled' value=\"{1}\" />"
|
|
.template(rowObject.EncryptId, "审批");
|
|
}
|
|
}
|
|
if (page.approvalMode > 0 && page.approvalList) {
|
|
html = html +
|
|
"<input type=\"button\" class=\"wentiEdit\" title='匹配接口审批记录' onclick=\"approvalList('{0}')\" value=\"{1}\" />"
|
|
.template(rowObject.Name, "匹配审批");
|
|
}
|
|
|
|
return html;
|
|
}
|
|
|
|
function approvalList(name) {
|
|
main.open("审批记录", "/trade/InterfaceApprovalRecord?type=2&code=" + name, { area: ["1200px", "600px"] });
|
|
}
|
|
|
|
function processStatusFormat(cellValue, options, rowObject) {
|
|
return "<span title=\"{0}\">{1}</span>".template(rowObject.RejectLog, cellValue);
|
|
}
|
|
|
|
function nameFormat(c, o, r) {
|
|
var html = r.Name;
|
|
|
|
if (!r.HasDocuments) {
|
|
html += "<img title='未上传任何文件' style='width:16px;' src='/images/light_yellow.png'/>";
|
|
}
|
|
return html;
|
|
}
|
|
|
|
function passorreject(eid) {
|
|
var url = "/processlog/processlogListInner?eid=" + eid;
|
|
main.open("审批", url, { area: ["60%", "65%"] });
|
|
}
|
|
|
|
function rowclick(id) {
|
|
|
|
}
|
|
|
|
function startAddclient() {
|
|
var srcurl = "/client/clientEditV2";
|
|
if (page.isClientNew) {
|
|
main.open("新增客户", srcurl, { area: ['1300px', '800px'] });
|
|
}
|
|
else {
|
|
console.warn("InVaild Operation!");
|
|
}
|
|
|
|
}
|
|
|
|
function startclientView(id) {
|
|
var srcurl = "/client/clientEditV2?enid=" + id;
|
|
main.open("查看客户信息", srcurl, { area: ['1300px', '800px']});
|
|
}
|
|
|
|
function reloadclient() {
|
|
//重新加载
|
|
SearchClick();
|
|
window.layer.closeAll();
|
|
}
|
|
|
|
function reloadclient2() {
|
|
//重新加载
|
|
SearchClick();
|
|
}
|
|
|
|
function uploadClient(id) {
|
|
var scrurl = "/client/clientUpload/?enid=" + id;
|
|
if (page.isClientNew) {
|
|
main.open("客户导入", scrurl, {area:['650px','450px']});
|
|
}
|
|
else {
|
|
console.warn("InVaild Operation!");
|
|
}
|
|
}
|
|
|
|
function exportClientChoose() {
|
|
var htmlContent =
|
|
'<div style="padding:30px">' +
|
|
'<input class="btn btn-primary " type="button" style="width:auto;height:29px;border: none;border-radius: 3px;margin-right:20px" onclick="exprotChooseColumn();return false;" value="导出可选列">' +
|
|
'<input class="btn btn-primary " type="button" style="width:auto;height:29px;border: none;border-radius: 3px;margin-right:20px" onclick="exportClientMouldExcel();return false;" value="导出客户基本信息模板">' +
|
|
'<input class="btn btn-primary " type="button" style="width:auto;height:29px;border: none;border-radius: 3px;margin-right:20px" onclick="exportClientDutyMouldExcel();return false;" value="导出客户人员信息模板">' +
|
|
'<input class="btn btn-primary " type="button" style="width:auto;height:29px;border: none;border-radius: 3px;" onclick="exportClientBankcardMouldExcel();return false;" value="导出客户银行账号信息模板">' +
|
|
'</div>';
|
|
layer.open({
|
|
type: 1,
|
|
title: "导出客户列表",
|
|
shadeClose: false,
|
|
shade: 0.4,
|
|
area: ['800px', '150px'],
|
|
content: htmlContent
|
|
});
|
|
}
|
|
|
|
function exprotChooseColumn() {
|
|
var dateTemp = new Date().Format("yyyyMMddhhmmss");
|
|
var fileName = "待开客户(配置列)_" + dateTemp;
|
|
main.toExcel("listGrid", fileName, "csv", null, "操作人,操作时间,操作", [
|
|
{
|
|
colName: "客户编号",
|
|
formatter: "text"
|
|
}, {
|
|
colName: "联系人证件号码",
|
|
formatter: "text"
|
|
}, {
|
|
colName: "联系人电话",
|
|
formatter: "text"
|
|
}, {
|
|
colName: "证照编号",
|
|
formatter: "text"
|
|
}]);
|
|
return;
|
|
|
|
$.ajax({
|
|
type: "Post",
|
|
url: "/accountOpeningProcess/clientQueryForDown",
|
|
data: query_data,
|
|
success: function (data) {
|
|
var dateTemp = new Date().Format("yyyyMMddhhmmss");
|
|
var elHtml = "";
|
|
var exKey = "待开客户(配置列)" + "_" + dateTemp;
|
|
var excelStrArray = {};
|
|
|
|
var colModelOriginal = $("#listGrid").jqGrid('getGridParam', 'colModel');
|
|
var colModel = new Array();
|
|
for (var i = 0; i < colModelOriginal.length; i++) {
|
|
if (colModelOriginal[i].label != "操作人" && colModelOriginal[i].label != "操作时间" && colModelOriginal[i].label != "操作") {
|
|
colModel.push(colModelOriginal[i])
|
|
}
|
|
}
|
|
|
|
for (var i = 0; i < data.length; i++) {
|
|
if (excelStrArray[exKey] !== "undefined" && excelStrArray[exKey] != null && excelStrArray[exKey].length > 0) {
|
|
elHtml = excelStrArray[exKey];
|
|
} else {
|
|
//csv表栏信息
|
|
for (var j = 0; j < colModel.length; j++) {
|
|
if (colModel[j].hidden == false)
|
|
elHtml = elHtml + "\t" + colModel[j].label + ",";
|
|
}
|
|
elHtml = elHtml + "\r\n";
|
|
}
|
|
for (var k = 0; k < colModel.length; k++) {
|
|
var value = colModel[k].name;
|
|
if (colModel[k].hidden == false) {
|
|
elHtml = elHtml + "\t" + (data[i][value] == null || data[i][value] === "undefined" ? "" : data[i][value]) + ",";
|
|
}
|
|
}
|
|
|
|
elHtml = elHtml + "\r\n";
|
|
excelStrArray[exKey] = elHtml;
|
|
}
|
|
|
|
if (data.length <= 0) {
|
|
showmiddlemessage("根据条件未查找到数据!");
|
|
return;
|
|
} else {
|
|
if (jQuery.isEmptyObject(excelStrArray) ||
|
|
(excelStrArray[exKey] == "undefined" ||
|
|
excelStrArray[exKey] == null ||
|
|
excelStrArray[exKey].length <= 0)) {
|
|
showmiddlemessage("根据条件未查找到数据!");
|
|
return;
|
|
} else {
|
|
for (var exkey in excelStrArray) {
|
|
downCsv(exkey, excelStrArray[exkey]);
|
|
}
|
|
}
|
|
}
|
|
},
|
|
error: function (msg) {
|
|
alert("error:导出客户时后台报错!");
|
|
}
|
|
});
|
|
}
|
|
|
|
function exportClientMouldExcel() {
|
|
window.open("../App_Docs/客户导入_基本信息模板.xlsx");
|
|
}
|
|
|
|
function exportClientDutyMouldExcel() {
|
|
window.open("../App_Docs/客户导入_人员信息模板.xlsx");
|
|
}
|
|
|
|
function exportClientBankcardMouldExcel() {
|
|
window.open("../App_Docs/客户导入_银行卡模板.xlsx");
|
|
}
|
|
|
|
$("#Name").change(function () {
|
|
var value = $("#Name").val();
|
|
$("#Name").attr("title", value);
|
|
|
|
});
|
|
|
|
function downCsv(fileName, exStrr) {
|
|
var isIE = (navigator.userAgent.indexOf('MSIE') >= 0);
|
|
if (isIE) {
|
|
var strHTML = exStrr;
|
|
var winSave = window.open();
|
|
winSave.document.open("text", "utf-8");
|
|
winSave.document.write(strHTML);
|
|
winSave.document.execCommand("SaveAs", true, fileName + ".csv");
|
|
winSave.close();
|
|
} else {
|
|
var mimeType = 'text/plain';
|
|
$('#createInvote').attr('download', fileName + ".csv");
|
|
//\uFEFF bom
|
|
$('#createInvote').attr('href',
|
|
'data:' + mimeType + ';charset=utf-8,\uFEFF' + encodeURIComponent(exStrr));
|
|
document.getElementById('createInvote').click();
|
|
}
|
|
}
|
|
|
|
function SearchClick(isSearchclick) {
|
|
var listGrid = $('#listGrid');
|
|
|
|
listGrid.appendPostData({ Name: $("#Name").val() });
|
|
listGrid.appendPostData({ LicenseCode: $("#LicenseCode").val() });
|
|
listGrid.appendPostData({ ProcessStatus: $("#ProcessStatus").val() == null ? "" : $("#ProcessStatus").val().join(",") });
|
|
listGrid.appendPostData({ ProperClientClass: $("#ProperClientClass").val() });
|
|
listGrid.appendPostData({ CustomerManagerIds:$("#CustomerManagerIds").val() });
|
|
listGrid.appendPostData({ CustomerManagerString: $("#CustomerManagerString").val() });
|
|
|
|
query_data = {
|
|
Name: $("#Name").val(),
|
|
ProcessStatus: $("#ProcessStatus").val() == null ? "" : $("#ProcessStatus").val().join(","),
|
|
ProperClientClass: $("#ProperClientClass").val() ,
|
|
CustomerManagerIds: $("#CustomerManagerIds").val(),
|
|
CustomerManagerString: $("#CustomerManagerString").val()
|
|
}
|
|
|
|
if (typeof (isSearchclick) != "undefined" && isSearchclick) {
|
|
//点击搜索时默认第一页
|
|
listGrid.jqGrid('setGridParam',{page: 1});
|
|
}
|
|
listGrid.trigger('reloadGrid');
|
|
}
|
|
|
|
function showcolumnChooser() {
|
|
main.showcolumnChooser(jQuery('#listGrid'), "@configcolumn_data.开户管理");
|
|
}
|
|
|
|
$(function () {
|
|
|
|
$("#OptName").parent().addClass("OptName-wrap");
|
|
$("#DateFromOptDate").parent().addClass("date-wrap");
|
|
});
|
|
</script>
|
|
}
|
|
|
|
<div class="searchdiv">
|
|
<div>
|
|
@Html.ShortInput("Name", "客户名称")
|
|
|
|
@Html.MyAceDropdownInput("ProcessStatus", "开户状态", ClientDataModel.GetPendingStatusForQuery())
|
|
@Html.ShortInput("OptName", "操作人名")
|
|
@Html.SearchDateRange("OptDate", "操作时间")
|
|
</div>
|
|
<div>
|
|
@MyControls.SearchBtn()
|
|
@if (pageObj.isClientNew)
|
|
{
|
|
@MyControls.Btn("新增客户", "startAddclient()")
|
|
@MyControls.Btn("批量客户导入", "uploadClient()")
|
|
}
|
|
|
|
@MyControls.Btn("导出客户列表", "exportClientChoose()")
|
|
<div style="width:30px;display:inline;" onclick="showcolumnChooser();return false;">
|
|
<img src="~/Images/configure.png" />
|
|
</div>
|
|
</div>
|
|
</div>
|
|
@Html.Raw(JqGridSimple.OutTable())
|
|
|