226 lines
7.5 KiB
JavaScript
226 lines
7.5 KiB
JavaScript
$(document).ready(function () {
|
|
model.ObservationDates = sessionStorage.getItem(model.BtnId + "_observationdates");
|
|
$("#ObservationDates").val(model.ObservationDates);
|
|
var fieldList0 = model.ObservationDates.split(',');
|
|
fieldList0 = fieldList0[0] == "" ? null : fieldList0;
|
|
var str = GetTableString(fieldList0);
|
|
$("#divItems").html(str);
|
|
$(".delete").click(function () {
|
|
$(this).parent().remove();
|
|
});
|
|
});
|
|
|
|
function GetTableString(fieldList0) {
|
|
var str = "<ol id='ol' style='text-align:left;'><span style='min-width:100px;display: inline-block;'>日期</span>";
|
|
$.each(fieldList0, function (i) {
|
|
str += "<li><input type='text' class='field1' style='width:86px;margin-right:1rem;' value='" + (this.length > 0 ? new moment(this).format("YYYY-MM-DD") : "") + "'/>";
|
|
str += "<a href='#' class='delete'><span class='glyphicon glyphicon-remove'></span></a>";
|
|
str += "</li>";
|
|
});
|
|
str += "</ol><input type='button' class='btn btn-primary' onclick='addnewitem();' value='添加'/>";
|
|
return str;
|
|
}
|
|
|
|
function GetObservationDates() {
|
|
var observationNum = $("#ObservationNum").val();
|
|
if (observationNum == 0) {
|
|
main.message("观察日间隔不能设为0");
|
|
return;
|
|
}
|
|
var observationUnit = $("#ObservationUnit").val();
|
|
var observationHolidayType = $("#ObservationHolidayType").val();
|
|
var alignEnd = $("#AlignEnd").val();
|
|
var postDate = { startDate: $("#startTime").val(), endDate: $("#endTime").val(), termStr: observationNum + observationUnit, holidayAdjustment: observationHolidayType, alignEnd: alignEnd, calcMode: "11" };
|
|
main.post("/trade/GetObservationDateList", postDate).done(
|
|
function (res) {
|
|
$("#ObservationDates").val(res.obj);
|
|
var str = "<ol id='ol' style='text-align:left;'><span style='min-width:100px;display: inline-block;'>日期</span>";
|
|
$.each(res.obj, function (i) {
|
|
str += "<li><input type='text' class='field1' style='width:86px;margin-right:1rem;' value='" + (this.length > 0 ? new moment(this).format("YYYY-MM-DD") : "") + "'/>";
|
|
str += "<a href='#' class='delete'><span class='glyphicon glyphicon-remove'></span></a>";
|
|
str += "</li>";
|
|
});
|
|
str += "</ol><input type='button' class='btn btn-primary' onclick='addnewitem();' value='添加'/>";
|
|
$("#divItems").html(str);
|
|
$(".delete").click(function () {
|
|
$(this).parent().remove();
|
|
});
|
|
});
|
|
}
|
|
|
|
function addnewitem() {
|
|
var li = "<li><input type='text' class='field1' style='width:86px;margin-right:1rem;' onBlur='sort()'/>";
|
|
li += "<a href='#' class='delete'><span class='glyphicon glyphicon-remove'></span></a>";
|
|
li += "</li>";
|
|
$("#ol").append(li);
|
|
$(".delete").click(function () {
|
|
$(this).parent().remove();
|
|
});
|
|
}
|
|
|
|
function sort() {
|
|
var field1 = $(".field1");
|
|
var arr1 = [];
|
|
field1.each(function () {
|
|
var dateFormat = /^(\d{4})-(\d{2})-(\d{2})$/;
|
|
if (dateFormat.test($(this).val())) {
|
|
arr1.push($(this).val());
|
|
}
|
|
else {
|
|
hasTimeError = true;
|
|
}
|
|
});
|
|
var str = GetTableString(arr1.sort());
|
|
$("#divItems").html(str);
|
|
}
|
|
|
|
function Confirm() {
|
|
var startTime = $("#startTime").val();
|
|
var endTime = $("#endTime").val()
|
|
var tradeDate = $("#tradeDate").val()
|
|
var observationNum = $("#ObservationNum").val();
|
|
var observationUnit = $("#ObservationUnit").val();
|
|
var observationHolidayType = $("#ObservationHolidayType").val();
|
|
var field1 = $(".field1");
|
|
var arr1 = [];
|
|
var hasTimeError = false;
|
|
var TradeEndDateCompareState = false;
|
|
field1.each(function () {
|
|
var dateFormat = /^(\d{4})-(\d{2})-(\d{2})$/;
|
|
if (dateFormat.test($(this).val())) {
|
|
if (Date.parse(new Date(endTime).Format("yyyy-MM-dd")) < Date.parse($(this).val())) {
|
|
TradeEndDateCompareState = true;
|
|
}
|
|
arr1.push($(this).val());
|
|
}
|
|
else {
|
|
hasTimeError = true;
|
|
}
|
|
});
|
|
if (hasTimeError) {
|
|
alert("日期格式有误,请输入正确格式");
|
|
return false;
|
|
}
|
|
if (TradeEndDateCompareState) {
|
|
alert("结算日期不能大于到期日期,请输入正确日期");
|
|
return false;
|
|
}
|
|
var observationDates = arr1.join(',');
|
|
var hasNumberError = false;
|
|
if (hasNumberError) {
|
|
alert("请输入正确的数字格式");
|
|
return false;
|
|
}
|
|
|
|
var btnId = $("#btnId").val();
|
|
var Comments = $("#Comments").val();
|
|
window.parent.getObservationDatesSetting(startTime, observationNum, observationUnit, observationHolidayType, observationDates, true, btnId, Comments);
|
|
closeParentWindow();
|
|
}
|
|
|
|
function GetObservationDatesText() {
|
|
var field1 = $(".field1");
|
|
var arr1 = [];
|
|
var hasTimeError = false;
|
|
field1.each(function () {
|
|
var dateFormat = /^(\d{4})-(\d{2})-(\d{2})$/;
|
|
if (dateFormat.test($(this).val())) {
|
|
arr1.push($(this).val());
|
|
}
|
|
else {
|
|
hasTimeError = true;
|
|
}
|
|
});
|
|
if (hasTimeError) {
|
|
alert("日期格式有误,请输入正确格式");
|
|
return false;
|
|
}
|
|
var hasNumberError = false;
|
|
if (hasNumberError) {
|
|
alert("请输入正确的数字格式");
|
|
return false;
|
|
}
|
|
}
|
|
|
|
function SetObservationDates() {
|
|
var field1 = $(".field1");
|
|
var arr1 = [];
|
|
var hasTimeError = false;
|
|
field1.each(function () {
|
|
var dateFormat = /^(\d{4})-(\d{2})-(\d{2})$/;
|
|
if (dateFormat.test($(this).val())) {
|
|
arr1.push($(this).val());
|
|
}
|
|
else {
|
|
hasTimeError = true;
|
|
}
|
|
});
|
|
if (arr1.length > 0) {
|
|
var observationDates = arr1.join(";\n") + ";";
|
|
vueDetails.observationDates = observationDates;
|
|
} else {
|
|
vueDetails.observationDates = "";
|
|
}
|
|
$("#myModal").modal("show");
|
|
}
|
|
|
|
function closeParentWindow() {
|
|
try { window.parent.layer.closeAll(); } catch (e) { }
|
|
}
|
|
|
|
|
|
var vueDetails = new Vue({
|
|
el: "#myModal",
|
|
data: { observationDates: "" },
|
|
methods: {
|
|
closeModal: function () {
|
|
$('#myModal').modal('hide');
|
|
},
|
|
saveModal: function () {
|
|
var observationDates = vueDetails.observationDates.trim().replace("\n", "");
|
|
var fieldList0 = [];
|
|
var items = observationDates.split(";").filter(o => o);
|
|
items.forEach(function (item) {
|
|
if (item) {
|
|
var values = item.split(",");
|
|
fieldList0.push(values[0]);
|
|
}
|
|
});
|
|
var str = GetTableString(fieldList0);
|
|
$("#divItems").html(str);
|
|
$('#myModal').modal('hide');
|
|
},
|
|
// 粘贴功能
|
|
pasteMe(e, rowData, index) {
|
|
let copyData = '';
|
|
if (e.clipboardData || e.originalEvent) {
|
|
var list = [];
|
|
var clipboardData = (e.clipboardData || e.originalEvent.clipboardData);
|
|
copyData = clipboardData.getData('Text');
|
|
var arr = copyData.replace(/\t/g, ', ').replace(/\r/g, '').split('\n');
|
|
arr.forEach((v, i) => {
|
|
if (v && !v.trim().endsWith(';')) {
|
|
arr[i] = v + ";";
|
|
}
|
|
});
|
|
this.observationDates = arr.join('\r\n');
|
|
e.preventDefault();
|
|
}
|
|
}
|
|
},
|
|
components: {
|
|
}
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|