Files
zszq-trs/YLErpWeb/Views/trade/entryexitEdit.cshtml
T
2024-05-09 14:06:26 +08:00

185 lines
6.8 KiB
Plaintext

@model ClientCashInCashOut
@{
ViewBag.Title = "新增资金记录";
Layout = "~/Views/Shared/_InfoLayout.cshtml";
var changeBeforeConfirm = Model.State == "未确认" || Model.State == "" || (Model.Direction.Contains("其他") && CurUser.结算管理_已确认资金记录维护);
var isChangeAfterConfirm = CurUser.交易管理_已确认交易资金维护;
}
@section CSS{
<link href="~/Statics/libs/datetime/flatpickr/flatpickr.min.css" rel="stylesheet" />
<style>
#Comments { align-content: center; width: 152px; height: 60px; }
</style>
}
@section JS{
<script src="~/Statics/libs/datetime/flatpickr/flatpickr.min.js?v=@(HtmlUtil.JsVersion)"></script>
<script type="text/javascript">
var changeable = "@changeBeforeConfirm" == "True";
var changeableafterconfirm = "@isChangeAfterConfirm" == "True";
$(function () {
$(".datepicker").datepicker({ changeMonth: true, changeYear: true, showButtonPanel: true, showOtherMonths: true, selectOtherMonths: true });
$(".singleline").removeClass("col-md-6");
$(".formlabel").removeClass("col-auto pl-0");
const fp = flatpickr(".form_datetime", {
enableTime: true, dateFormat: "Y-m-d",
allowInput: true, time_24hr: true
});
var moneytemp = $("#Money").val();
var moneystr = $("#MoneyStr").val();
if (moneytemp != null && moneytemp != undefined && _.trim(_.toString(moneystr))) {
changeForm(Number(moneytemp).toFixed(2) + "");
};
$('#MoneyStr').keyup(function () {
changePrice();
});
});
$(function () {
$("#Direction").parent().addClass("productNumber");
$("#MoneyStr").parent().addClass("productNumber");
$("#Comments").parent().addClass("productNumber");
if (!changeable) {
if (!changeableafterconfirm) {
$("#MoneyStr").prop("disabled", true);
}
$("#HappenDate").prop("disabled", true);
$("#Direction").prop("disabled", true);
}
});
function changeForm(s) {
var arr = s.split(",");
var newArr = arr.join("");
//var arr = newArr.split(".");
$("#Money").val = newArr;
//var newArr = arr.join("");
var newArr = toAmountMoney(newArr);
$("#MoneyStr").next().html("{0}".template(newArr));
//document.getElementById("moneyForm").innerHTML = newArr;
}
//转换为大写金额
function toAmountMoney(n) {
var unit = "千百拾亿千百拾万千百拾元角分", str = "";
var p = n.indexOf('.');
if (p >= 0)
n = n.substring(0, p) + n.substr(p + 1, 2);
unit = unit.substr(unit.length - n.length);
for (var i = 0; i < n.length; i++)
str += '零壹贰叁肆伍陆柒捌玖'.charAt(n.charAt(i)) + unit.charAt(i);
return str.replace(/零(千|百|拾|角)/g, "零").replace(/(零)+/g, "零").replace(/零(万|亿|元)/g, "$1").replace(/(亿)万|壹(拾)/g, "$1$2").replace(/^元零?|零分/g, "").replace(/元$/g, "元");
}
function changePrice() {
$("#MoneyStr").val($("#MoneyStr").val().match(/\d{1,}/) == null ? '' : $("#MoneyStr").val().replace(/[^0-9.-]/g, ''));
//cc()方法 转换成财务计数时,超过两位小数是去尾处理的,所以这边也去尾处理,保持一致
var money = main.formatNumber($("#MoneyStr").val(), { rounded: false });
$("#Money").val(money);
changeForm(money + "");
}
function moneyOnFocus() {
var moneyStr = $("#MoneyStr").val().replace(/,/g, "");
$("#MoneyStr").val(moneyStr);
}
//转换成财务计数
function cc(s) {
if (/[^0-9\.]/.test(s)) {
main.message("金额必须大于0");
return "";
}
s = s.replace(/^(\d*)$/, "$1.");
s = (s + "00").replace(/(\d*\.\d\d)\d*/, "$1");
s = s.replace(".", ",");
var re = /(\d)(\d{3},)/;
while (re.test(s))
s = s.replace(re, "$1,$2");
s = s.replace(/,(\d\d)$/, ".$1");
return s.replace(/^\./, "0.")
}
function saveentryexi() {
var ratioValue = $("#Ratio").val();
if (ratioValue && ratioValue <= 0) {
main.message("追保系数应大于0");
return;
}
var ratioValue1 = $("#Ratio1").val();
if (ratioValue1 && ratioValue1 <= 0) {
main.message("预警系数应大于0");
return;
}
if (!checkSubmitData()) return false;
var data = $("#clientlevelEditForm").serialize();
main.post("/clientlevel/clientlevelEditJson", data).done(function (res) {
window.location.href = "/clientlevel/clientlevelview?enid=" + res.obj.EncryptId;
try {
window.parent.reloadclientlevel();
}
catch (e) { }
});
}
function saveentryexit() {
if (!checkSubmitData()) return false;
var data = $("#entryexitEditForm").serialize();
main.post("/Trade/entryexitEditJson", data).done(function (res) {
layer.closeMe();
});
}
function checkSubmitData() {
var pass = $('#entryexitEditForm').valid();
if (!$("#HappenDate").val()) {
main.message("请设置出入金时间!");
return false;
}
if (!$("#Money").val()) {
main.message("请设置出入金金额!");
return false;
}
return pass;
}
</script>
}
@using (Html.BeginForm("entryexitEdit", "entryexit", FormMethod.Post, new { id = "entryexitEditForm" }))
{
<div class="form-layout">
<input type="hidden" value="@Model.id" name="id" id="id" />
<input type="hidden" value="@Model.TradeId" name="TradeId" id="TradeId" />
<input type="hidden" value="@Model.TradeNumber" name="TradeNumber" id="TradeNumber" />
<input type="hidden" value="@Model.ClientId" name="ClientId" id="ClientId" />
<input type="hidden" value="@Model.ClientNumber" name="ClientNumber" id="ClientNumber" />
@Html.HiddenFor(model => model.Money)
@Html.HiddenFor(model => model.EncryptId)
@if (changeBeforeConfirm)
{
@Html.MyDropdownFor(model => model.Direction, GlobalData.GetSelectItems(new List<string> { "其他收入", "其他支出" }), null, "", false)
}
else
{
@Html.MyTextFor(model => model.Direction);
}
@Html.MyTextFor(model => model.MoneyStr, new { onkeyup = "changePrice()", onfocus = "moneyOnFocus()", onblur = "this.value=cc(this.value)" })
@Html.MyDateTimeFor(model => model.HappenDate)
@Html.MyTextFor(model => model.Comments)
@if (Model.id > 0)
{
@Html.MyTextFor(model => model.Explain)
}
</div>
<div class="form-buttons">
@MyControls.Btn("保存", "saveentryexit()")
@MyControls.Btn("关闭", "layer.closeMe()")
</div>
}