/**
* 用户详情对话框(可用于添加和修改对话框)
*/
var CoursePackageInfo = {
userInfoData: {},
};
/**
* 关闭此对话框
*/
CoursePackageInfo.close = function () {
parent.layer.close(window.parent.TStudent.layerIndex);
};
CoursePackageInfo.openDia = function (i) {
let index = layer.open({
type: 2,
title: '编辑',
area: ['80%', '80%'], //宽高
fix: false, //不固定
maxmin: true,
content: Feng.ctxPath + '/coursePackage/conpun/'+i
});
this.layerIndex = index;
};
CoursePackageInfo.openDia1 = function (i) {
var ids = $("#counpons"+i).val()
console.log($("#counpons"+i).val())
let index = layer.open({
type: 2,
title: '编辑',
area: ['80%', '80%'], //宽高
fix: false, //不固定
maxmin: true,
content: Feng.ctxPath + '/coursePackage/conpun1'+'/'+i+'?conpunids='+ids
});
this.layerIndex = index;
};
CoursePackageInfo.addTime = function (a) {
console.log("==========="+a)
var day = $.trim($('#time').val());
if (!day) {
$('#timeSlotTable').hide();
$('#noDataTip').show().text('请先选择预约日期');
return;
}
// 获取入场方式
var targetAudience = $('input[name="targetAudience"]:checked').val() || 1;
var type = $('input[name="type"]:checked').val() || 1;
// 获取半场名称
var halfId = document.getElementById("half");
var halfName = halfId && halfId.options[halfId.selectedIndex] ? halfId.options[halfId.selectedIndex].text : "";
// 获取场地名称
var nextSiteId = document.getElementById("nextSite");
var siteName = "";
if (nextSiteId && nextSiteId.options[nextSiteId.selectedIndex]) {
siteName = nextSiteId.options[nextSiteId.selectedIndex].text;
}
// 调用管理后台接口获取时间段数据
var ajax = new $ax(Feng.ctxPath + "/tSite/querySiteTimes", function(response){
console.log("时间段数据:", response)
if(response && response.code == 200 && response.data){
var timeSlots = response.data;
// 清空已选择的时间段
if (typeof selectedTimeSlots !== 'undefined') {
selectedTimeSlots = [];
}
if(timeSlots.length > 0) {
// 显示表格,隐藏提示
$('#timeSlotTable').show();
$('#noDataTip').hide();
// 生成表格内容
var tbody = '';
$.each(timeSlots, function(k, v) {
var priceText = '';
var priceClass = 'price-cell';
var rowClass = '';
var clickable = '';
var canBook = true;
// 判断是否可预订
if (targetAudience == 1) {
// 订场模式
if (v.isReserve == 1) {
// 被订场,不可预订
canBook = false;
} else if (v.selectCount >= v.selectMaxCount) {
// 散客数已满,不可预订
canBook = false;
}
} else {
// 散客模式
if (v.isReserve == 1) {
// 被订场,不可预订
canBook = false;
} else if (v.selectCount >= v.selectMaxCount) {
// 散客数已满,不可预订
canBook = false;
}
}
// 构建价格文本
var basePriceText = (v.cashPrice || 0) + '元 / ' + (v.coinPrice || 0) + '币';
if (!canBook || v.selectable == 0) {
// 不可预订
priceClass += ' price-unavailable';
priceText = basePriceText + '
(不可预订)';
rowClass = 'disabled';
clickable = 'style="cursor: not-allowed;"';
} else {
// 可预订
priceText = basePriceText;
// 散客模式显示预定人数
if (targetAudience == 2) {
priceText += '(' + (v.selectCount || 0) + '/' + (v.selectMaxCount || 0) + ')';
}
var jsonStr = JSON.stringify(v).replace(/"/g, '"');
clickable = 'onclick="toggleTimeSlot(this, ' + k + ')" style="cursor: pointer;" data-index="' + k + '"';
}
tbody += '
';
tbody += '| ' + v.time + ' | ';
tbody += '' + priceText + ' | ';
tbody += '
';
});
$('#timeSlotBody').html(tbody);
// 保存原始数据到全局变量
window.allTimeSlots = timeSlots;
} else {
// 没有数据
$('#timeSlotTable').hide();
$('#noDataTip').show();
$('#noDataTip').text('该日期暂无可预约时间段');
}
// 重置价格
$('#cash').val('');
$('#play').val('');
} else {
$('#timeSlotTable').hide();
$('#noDataTip').show();
$('#noDataTip').text('获取时间段失败');
}
}, function(error){
console.error("获取时间段失败:", error);
Feng.error("获取时间段失败!");
$('#timeSlotTable').hide();
$('#noDataTip').show();
$('#noDataTip').text('获取时间段失败');
});
ajax.set("id", $('#siteId').val());
ajax.set("day", day);
ajax.set("targetAudience", targetAudience);
console.log("类型")
console.log(type)
if(type==2 && halfName && halfName != "") {
ajax.set("halfName", halfName);
}
if(siteName && siteName != "") {
ajax.set("siteName", siteName);
}
ajax.start();
};
CoursePackageInfo.queryHalf = function (a) {
var ajax1 = new $ax(Feng.ctxPath + "/ball/halfName/"+ $('#siteId').val(), function(data){
console.log("================"+data)
if(data!=null){
let htmlStr = '';
for (let i = 0; i < data.length; i++) {
htmlStr += ''
}
$("#half").empty().append(htmlStr);
}
})
ajax1.start()
var ajax2 = new $ax(Feng.ctxPath + "/ball/nextName/"+ $('#siteId').val(), function(data){
console.log("================"+data)
if(data!=null){
let htmlStr = '';
if (data.length>1){
console.log(8888)
console.log(data.length)
for (let i = 0; i < data.length; i++) {
htmlStr += ''
}
$("#nextSite1").show()
$("#nextSite").empty().append(htmlStr);
}else {
console.log("9999")
$("#nextSite1").hide()
$("#nextSite").empty()
}
}
})
ajax2.start()
}
CoursePackageInfo.addTime1 = function (a) {
if ($('#siteId').val() != $('#selSiteId').val()||$('#time').val()!=$('#selDate').val()){
$("#ttt3").hide()
$("#ttt2").show()
}else {
$("#ttt3").show()
$("#ttt2").hide()
}
console.log("==========="+a)
var ajax = new $ax(Feng.ctxPath + "/ball/yuyuetimes/"+ $('#siteId').val(), function(data){
console.log("================"+data)
if(data!=null){
var content='';
$.each(data, function(k, v) {
var buttonClass = "layui-btn layui-btn-primary";
var style = "";
if (v.state === 0) {
style = "background-color: red;";
}
var disabledAttribute = v.state === 0 ? "disabled" : "";
content += '';
});
$("#ttt2").empty().append(content);
}
})
ajax.start()
var ajax1 = new $ax(Feng.ctxPath + "/ball/halfName/"+ $('#siteId').val(), function(data){
console.log("================"+data)
if(data!=null){
let htmlStr = '';
for (let i = 0; i < data.length; i++) {
htmlStr += ''
}
$("#half").empty().append(htmlStr);
}
})
ajax1.start()
};
/**
* 提交添加用户
*/
CoursePackageInfo.addSubmit = function () {
let province = $('#provinceCode option:checked').text();
let provinceCode = $('#provinceCode').val();
let city = $('#cityCode option:checked').text();
let cityCode = $('#cityCode').val();
let storeId = $('#storeId').val();
let siteId = $('#siteId').val();
let site = $('#nextSite').val();
console.log("===========")
console.log(site)
var radios = document.getElementsByName("type");
var selectedValue;
for (var i = 0; i < radios.length; i++) {
if (radios[i].checked) {
selectedValue = radios[i].value;
break;
}
}
let type = selectedValue;
let half = $('#half').val();
let date = $('#time').val();
// 获取入场方式
var targetAudience = $('input[name="targetAudience"]:checked').val() || 1;
// 使用新的方式收集选中的时间段
var values = "";
if (typeof selectedTimeSlots !== 'undefined' && selectedTimeSlots.length > 0) {
for (var i = 0; i < selectedTimeSlots.length; i++) {
values += date + " " + selectedTimeSlots[i].time + ";";
}
values = values.slice(0, -1);
} else {
// 兼容旧方式
var elements = document.getElementsByClassName("layui-btn layui-btn-primary green-button");
for (var i = 0; i < elements.length; i++) {
values += date +" "+ elements[i].innerText + ";";
}
values = values.slice(0, -1);
}
console.log("看看预约时间段")
console.log(values);
var times = values;
let cash = $('#cash').val();
let play = $('#play').val();
let booker = $('#booker').val();
let phone = $('#phone').val();
//提交信息
var ajax = new $ax(Feng.ctxPath + "/ball/ordersave", function (data) {
if(data.code == 200){
Feng.success("添加成功!");
CoursePackageInfo.close();
window.parent.TStudent.table.refresh();
}else{
Feng.error(data.msg);
}
}, function (data) {
Feng.error("添加失败!" + data.responseJSON.message + "!");
});
ajax.set("province",province)
ajax.set("provinceCode",provinceCode);
ajax.set("city",city);
ajax.set("cityCode",cityCode);
ajax.set("storeId",storeId);
if (type ==1){
ajax.set("isHalf",2);
}else {
ajax.set("isHalf",1);
}
ajax.set("siteId",siteId);
ajax.set("nextName",site);
ajax.set("halfName",half);
ajax.set("date",date);
ajax.set("times",times);
ajax.set("money",cash+","+play);
ajax.set("booker",booker);
ajax.set("phone",phone);
ajax.set("targetAudience",targetAudience);
ajax.start();
};
/**
* 新修改
*/
CoursePackageInfo.addSubmit1 = function () {
let province = $('#provinceCode option:checked').text();
let provinceCode = $('#provinceCode').val();
let city = $('#cityCode option:checked').text();
let cityCode = $('#cityCode').val();
let storeId = $('#storeId').val();
let siteId = $('#siteId').val();
let site = $('#siteId option:checked').text();
var radios = document.getElementsByName("type");
var selectedValue;
for (var i = 0; i < radios.length; i++) {
if (radios[i].checked) {
selectedValue = radios[i].value;
break;
}
}
let type = selectedValue;
let half = $('#half').val();
let date = $('#time').val();
var elements = document.getElementsByClassName("layui-btn layui-btn-primary green-button");
var values = "";
console.log("==============="+elements[0])
if ($('#siteId').val() != $('#selSiteId').val()||$('#time').val()!=$('#selDate').val()) {
for (var i = 0; i < elements.length; i++) {
if (elements[i].name != 'has') {
values += date + " " + elements[i].innerText + ";";
}
}
}else {
for (var i = 0; i < elements.length; i++) {
if (elements[i].name = 'has') {
values += date + " " + elements[i].innerText + ";";
}
}
}
// 去除最后一个逗号
values = values.slice(0, -1);
console.log(values);
var times = values;
let cash = $('#cash').val();
let play = $('#play').val();
let booker = $('#booker').val();
let phone = $('#phone').val();
let id = $('#id').val();
//提交信息
var ajax = new $ax(Feng.ctxPath + "/ball/orderedit", function (data) {
if(data.code == 200){
Feng.success("添加成功!");
CoursePackageInfo.close();
window.parent.TStudent.table.refresh();
}else{
Feng.error(data.msg);
}
}, function (data) {
Feng.error("添加失败!" + data.responseJSON.message + "!");
});
ajax.set("province",province)
ajax.set("provinceCode",provinceCode);
ajax.set("city",city);
ajax.set("cityCode",cityCode);
ajax.set("storeId",storeId);
ajax.set("isHalf",type);
ajax.set("siteId",siteId);
ajax.set("nextName",site);
ajax.set("halfName",half);
ajax.set("date",date);
ajax.set("times",times);
ajax.set("money",cash+","+play);
ajax.set("booker",booker);
ajax.set("phone",phone);
ajax.set("id",id);
ajax.start();
};
/**
* 提交修改
*/
CoursePackageInfo.editSubmit = function () {
let id = $('#id').val();
let province = $('#provinceCode option:checked').text();
let provinceCode = $('#provinceCode').val();
let city = $('#cityCode option:checked').text();
let cityCode = $('#cityCode').val();
let storeId = $('#storeId').val();
let coursePackageTypeId = $('#coursePackageTypeId').val();
let name = $('#name').val();
let siteId = $('#siteId').val();
let coachId = $('#coachId').val();
let maxSubscribeNumber = $('#maxSubscribeNumber').val();
let codeTime = $('#codeTime').val();
let type = $('#type').val();
let holitime = $('#holitime').val();
var inputElements = document.querySelectorAll('input[name="classStartTime"]');
let classStartTime = JSON.stringify(Array.from(inputElements).map(function(element) {
return element.value;
}))
// let classStartTime = $('#classStartTime').val();
let classWeeks = '';
$('input[name="classWeeks"]:checked').each(function (index, e) {
classWeeks += $(e).val() + ";";
})
let coverDrawing = $('#coverDrawing').val();
let detailDrawing = $('#detailDrawing').val();
let introduceDrawing = $('#introduceDrawing').val();
let sort = $('#sort').val();
let validDays = $('#validDays').val();
// let counpons = $($(e).find(".counpons")).val();
let price = [];
$('#price>.form-group').each(function (i, e) {
let classHours = $($(e).find(".classNumber_span input[class='classNumber']")[0]).val();
let cash = $($(e).find(".cash_span input[class='cash']")[0]).val();
let paiCoin = $($(e).find(".paiCoin_span input[class='paiCoin']")[0]).val();
let counpons = $($(e).find(".counpons")).val();
price.push({
classHours: classHours,
cashPayment: typeof cash == "undefined" ? 0 : cash,
playPaiCoin: typeof paiCoin == "undefined" ? 0 : paiCoin,
couponIds: typeof counpons == "undefined" ? 0 : counpons
})
});
if(null == provinceCode || '' == provinceCode){
Feng.error("所在省不能为空");
return
}
if(null == cityCode || '' == cityCode){
Feng.error("所在市不能为空");
return
}
if(null == storeId || '' == storeId){
Feng.error("所属门店不能为空");
return
}
if(null == coursePackageTypeId || '' == coursePackageTypeId){
Feng.error("课程类型不能为空");
return
}
if(null == name || '' == name){
Feng.error("课包名称不能为空");
return
}
if(null == siteId || '' == siteId){
Feng.error("上课场地不能为空");
return
}
if(null == coachId || '' == coachId){
Feng.error("授课教师不能为空");
return
}
// if(null == maxSubscribeNumber || '' == maxSubscribeNumber){
// Feng.error("最多预约人数不能为空");
// return
// }
// if(null == codeTime || '' == codeTime){
// Feng.error("扣除课时不能为空");
// return
// }
// if(null == classStartTime || '' == classStartTime){
// Feng.error("上课时间不能为空");
// return
// }
// if(null == classWeeks || '' == classWeeks){
// Feng.error("周不能为空");
// return
// }
classWeeks = classWeeks.substring(0, classWeeks.length - 1);
if(null == coverDrawing || '' == coverDrawing){
Feng.error("课包封面不能为空");
return
}
if(null == detailDrawing || '' == detailDrawing){
Feng.error("详情页不能为空");
return
}
if(null == introduceDrawing || '' == introduceDrawing){
Feng.error("课包介绍不能为空");
return
}
// if(null == validDays || '' == validDays){
// Feng.error("课时有效期不能为空");
// return
// }
let obj = {
id: id,
province: province,
provinceCode: provinceCode,
city: city,
cityCode: cityCode,
storeId: storeId,
coursePackageTypeId: coursePackageTypeId,
name: name,
siteId: siteId,
coachId: coachId,
maxSubscribeNumber: maxSubscribeNumber,
codeTime: codeTime,
type:type,
classStartTime: classStartTime,
// classEndTime: classStartTime.split(" - ")[1],
classWeeks: classWeeks,
coverDrawing: coverDrawing,
detailDrawing: detailDrawing,
introduceDrawing: introduceDrawing,
sort: sort,
validDays: validDays,
coursePackagePaymentConfig: JSON.stringify(price),
holitime:holitime
}
console.log("======="+obj)
//提交信息
var ajax = new $ax(Feng.ctxPath + "/coursePackage/updateCoursePackage", function (data) {
if(data.code == 200){
Feng.success("编辑成功!");
CoursePackageInfo.close();
window.parent.CoursePackage.table.refresh();
}else{
Feng.error(data.msg);
}
}, function (data) {
Feng.error("编辑失败!" + data.responseJSON.message + "!");
});
ajax.set(obj);
ajax.start();
};
function queryStore() {
let ajax = new $ax(Feng.ctxPath + "/coursePackage/queryStore", function (data) {
let htmlStr = '';
for (let i = 0; i < data.length; i++) {
htmlStr += ''
}
$('#storeId').html(htmlStr);
querySite();
}, function (data) {
Feng.error("获取失败!" + data.responseJSON.message + "!");
});
ajax.set("cityCode", $('#cityCode').val());
ajax.start();
}
function querySite(){
let ajax = new $ax(Feng.ctxPath + "/coursePackage/querySite", function (data) {
let htmlStr = '';
for (let i = 0; i < data.length; i++) {
htmlStr += ''
}
$('#siteId').html(htmlStr);
}, function (data) {
Feng.error("获取失败!" + data.responseJSON.message + "!");
});
ajax.set("storeId", $('#storeId').val());
ajax.start();
}
function queryCoach(){
let ajax = new $ax(Feng.ctxPath + "/coursePackage/queryCoach", function (data) {
let htmlStr = '';
for (let i = 0; i < data.length; i++) {
htmlStr += ''
}
$('#coachId').html(htmlStr);
}, function (data) {
Feng.error("获取失败!" + data.responseJSON.message + "!");
});
ajax.set("cityCode", $('#cityCode').val());
ajax.start();
}
function addPrice(y){
console.log("===="+y)
let cash = false;
let paiCoin = false;
$('input[name="payType"]:checked').each(function (index, e) {
let v = $(e).val();
if(v == 1){
cash = true;
}
if(v == 2){
paiCoin = true;
}
})
var i = $('#price > div').length+1
let htmlStr = ''
if (y===1){
htmlStr += '