commit
This commit is contained in:
+12
-13
@@ -21,10 +21,7 @@ import io.v.nutz.base.utils.ViTool;
|
|||||||
import io.v.nutz.sys.models.SysHoliday;
|
import io.v.nutz.sys.models.SysHoliday;
|
||||||
import io.v.nutz.sys.models.User;
|
import io.v.nutz.sys.models.User;
|
||||||
import io.v.nutz.web.commons.utils.ShiroUtil;
|
import io.v.nutz.web.commons.utils.ShiroUtil;
|
||||||
import io.v.nutz.zhgh.therapyRecuperation.model.TheRapyRecuperationBaseManagement;
|
import io.v.nutz.zhgh.therapyRecuperation.model.*;
|
||||||
import io.v.nutz.zhgh.therapyRecuperation.model.TheRapyRecuperationEnroll;
|
|
||||||
import io.v.nutz.zhgh.therapyRecuperation.model.TheRapyRecuperationLot;
|
|
||||||
import io.v.nutz.zhgh.therapyRecuperation.model.TheRapyRecuperationTravelAgency;
|
|
||||||
import io.v.nutz.zhgh.therapyRecuperation.service.baseManage.TheRapyRecuperationBaseManagerService;
|
import io.v.nutz.zhgh.therapyRecuperation.service.baseManage.TheRapyRecuperationBaseManagerService;
|
||||||
import org.apache.poi.ss.usermodel.Workbook;
|
import org.apache.poi.ss.usermodel.Workbook;
|
||||||
import org.apache.shiro.authz.annotation.Logical;
|
import org.apache.shiro.authz.annotation.Logical;
|
||||||
@@ -286,9 +283,11 @@ public class TheRapyRecuperationBaseManagerController {
|
|||||||
if (StrUtil.isBlank(id)) {
|
if (StrUtil.isBlank(id)) {
|
||||||
return Result.error("参数错误");
|
return Result.error("参数错误");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
TheRapyRecuperationConfig config = dao.fetch(TheRapyRecuperationConfig.class, Cnd.NEW());
|
||||||
//获取线路对应的标段
|
//获取线路对应的标段
|
||||||
TheRapyRecuperationBaseManagement management = dao.fetch(TheRapyRecuperationBaseManagement.class, id);
|
TheRapyRecuperationBaseManagement management = dao.fetch(TheRapyRecuperationBaseManagement.class, id);
|
||||||
TheRapyRecuperationLot lot = dao.fetch(TheRapyRecuperationLot.class, management.getLotId());
|
//TheRapyRecuperationLot lot = dao.fetch(TheRapyRecuperationLot.class, management.getLotId());
|
||||||
|
|
||||||
//获取当年的节假日
|
//获取当年的节假日
|
||||||
List<SysHoliday> holidayList = dao.query(SysHoliday.class, Cnd.where("year(day)", "=", DateUtil.thisYear()).asc("day"));
|
List<SysHoliday> holidayList = dao.query(SysHoliday.class, Cnd.where("year(day)", "=", DateUtil.thisYear()).asc("day"));
|
||||||
@@ -307,8 +306,8 @@ public class TheRapyRecuperationBaseManagerController {
|
|||||||
|
|
||||||
// 解析日期
|
// 解析日期
|
||||||
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
|
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
|
||||||
LocalDate startDate = LocalDate.parse(DateUtil.formatDate(management.getActivityStartTime()), formatter);
|
LocalDate startDate = LocalDate.parse(DateUtil.formatDate(config.getFragmentPlayStartTime()), formatter);
|
||||||
LocalDate endDate = LocalDate.parse(DateUtil.formatDate(management.getActivityEndTime()), formatter);
|
LocalDate endDate = LocalDate.parse(DateUtil.formatDate(config.getFragmentPlayEndTime()), formatter);
|
||||||
|
|
||||||
//现在的日期
|
//现在的日期
|
||||||
LocalDate now = LocalDate.parse(DateUtil.today(), formatter);
|
LocalDate now = LocalDate.parse(DateUtil.today(), formatter);
|
||||||
@@ -324,10 +323,10 @@ public class TheRapyRecuperationBaseManagerController {
|
|||||||
while (!currentDate.isAfter(endDate)) {
|
while (!currentDate.isAfter(endDate)) {
|
||||||
// 检查是否为节假日
|
// 检查是否为节假日
|
||||||
String currentDateString = currentDate.format(formatter);
|
String currentDateString = currentDate.format(formatter);
|
||||||
if (holidays.contains(currentDateString) && lot.getFilterHolidays()) {
|
/*if (holidays.contains(currentDateString) && lot.getFilterHolidays()) {
|
||||||
currentDate = currentDate.plusDays(1);
|
currentDate = currentDate.plusDays(1);
|
||||||
continue;
|
continue;
|
||||||
}
|
}*/
|
||||||
// 检查是否为需要排除的周几
|
// 检查是否为需要排除的周几
|
||||||
int dayOfWeek = currentDate.getDayOfWeek().getValue() % 7; // 1是周一,7是周日
|
int dayOfWeek = currentDate.getDayOfWeek().getValue() % 7; // 1是周一,7是周日
|
||||||
if (Lang.isNotEmpty(weeks) && !weeks.contains(dayOfWeek)) {
|
if (Lang.isNotEmpty(weeks) && !weeks.contains(dayOfWeek)) {
|
||||||
@@ -341,12 +340,12 @@ public class TheRapyRecuperationBaseManagerController {
|
|||||||
|
|
||||||
Sql schoolTimeSql = Sqls.create("select schoolTime from sys_user where id=@id").setParam("id", ShiroUtil.getPlatformUid());
|
Sql schoolTimeSql = Sqls.create("select schoolTime from sys_user where id=@id").setParam("id", ShiroUtil.getPlatformUid());
|
||||||
String schoolTime = (String) Daos.query(dao, schoolTimeSql.toString(), Sqls.callback.str());
|
String schoolTime = (String) Daos.query(dao, schoolTimeSql.toString(), Sqls.callback.str());
|
||||||
String minDate = DateUtil.formatDate(management.getActivityStartTime());
|
String minDate = DateUtil.formatDate(config.getFragmentPlayStartTime());
|
||||||
//如果入职日期在活动开始时间之后的
|
//如果入职日期在活动开始时间之后的
|
||||||
try {
|
try {
|
||||||
if (StrUtil.isNotBlank(schoolTime)
|
if (StrUtil.isNotBlank(schoolTime)
|
||||||
&& String.valueOf(DateUtil.thisYear() - 1).equals(DateUtil.format(DateUtil.parse(schoolTime), "yyyy"))
|
&& String.valueOf(DateUtil.thisYear() - 1).equals(DateUtil.format(DateUtil.parse(schoolTime), "yyyy"))
|
||||||
&& DateUtil.compare(DateUtil.parse(schoolTime), management.getActivityStartTime(), "MM") > 0) {
|
&& DateUtil.compare(DateUtil.parse(schoolTime), config.getFragmentPlayStartTime(), "MM") > 0) {
|
||||||
minDate = DateUtil.format(DateUtil.offset(DateUtil.parse(schoolTime), DateField.YEAR, 1), "yyyy-MM-dd");
|
minDate = DateUtil.format(DateUtil.offset(DateUtil.parse(schoolTime), DateField.YEAR, 1), "yyyy-MM-dd");
|
||||||
}
|
}
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
@@ -355,9 +354,9 @@ public class TheRapyRecuperationBaseManagerController {
|
|||||||
|
|
||||||
return Map.of("days", resultDates,
|
return Map.of("days", resultDates,
|
||||||
"holidays", holidays,
|
"holidays", holidays,
|
||||||
"lotValue", lot.getLotValue(),
|
"lotValue", 0,
|
||||||
"minDate", minDate,
|
"minDate", minDate,
|
||||||
"maxDate", DateUtil.formatDate(management.getActivityEndTime()));
|
"maxDate", DateUtil.formatDate(config.getFragmentPlayEndTime()));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
+8
-6
@@ -329,22 +329,24 @@ public class TheRapyRecuperationEnrollController {
|
|||||||
public Object canDelete(String id) {
|
public Object canDelete(String id) {
|
||||||
TheRapyRecuperationEnroll enroll = dao.fetch(TheRapyRecuperationEnroll.class, id);
|
TheRapyRecuperationEnroll enroll = dao.fetch(TheRapyRecuperationEnroll.class, id);
|
||||||
|
|
||||||
|
//如果成团了,不能取消
|
||||||
|
if(enroll.getHasLocked()) {
|
||||||
|
return Result.error("当前报名已经成团不能取消");
|
||||||
|
}
|
||||||
|
|
||||||
|
TheRapyRecuperationConfig config = dao.fetch(TheRapyRecuperationConfig.class, Cnd.NEW());
|
||||||
Date changeEndTime = null;
|
Date changeEndTime = null;
|
||||||
|
|
||||||
if (StrUtil.isNotBlank(enroll.getTakePartInLineId())) {
|
if (StrUtil.isNotBlank(enroll.getTakePartInLineId())) {
|
||||||
TheRapyRecuperationLineUnionSelect lineUnionSelect = dao.fetch(TheRapyRecuperationLineUnionSelect.class, enroll.getTakePartInLineId());
|
changeEndTime = config.getImplodeEndTime();
|
||||||
changeEndTime = lineUnionSelect.getChangeEndTime();
|
|
||||||
} else if (StrUtil.isNotBlank(enroll.getTakePartInTravelAgencyId())) {
|
} else if (StrUtil.isNotBlank(enroll.getTakePartInTravelAgencyId())) {
|
||||||
return null;
|
return null;
|
||||||
} else if (StrUtil.isNotBlank(enroll.getTakePartInBaseManagementId())) {
|
} else if (StrUtil.isNotBlank(enroll.getTakePartInBaseManagementId())) {
|
||||||
TheRapyRecuperationBaseManagement baseManagement = dao.fetch(TheRapyRecuperationBaseManagement.class, enroll.getTakePartInBaseManagementId());
|
changeEndTime = config.getFragmentEndTime();
|
||||||
changeEndTime = baseManagement.getChangeEndTime();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (DateUtil.compare(new Date(), changeEndTime) > 0) {
|
if (DateUtil.compare(new Date(), changeEndTime) > 0) {
|
||||||
return Result.error("抱歉,当前时间已经不能取消");
|
return Result.error("抱歉,当前时间已经不能取消");
|
||||||
}
|
}
|
||||||
|
|
||||||
return null;
|
return null;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+5
@@ -159,4 +159,9 @@ public class TheRapyRecuperationBaseManagement {
|
|||||||
|
|
||||||
@One(field = "travelAgencyId")
|
@One(field = "travelAgencyId")
|
||||||
private TheRapyRecuperationTravelAgency travelAgency;
|
private TheRapyRecuperationTravelAgency travelAgency;
|
||||||
|
|
||||||
|
@Column
|
||||||
|
@ColDefine(type = ColType.MYSQL_JSON)
|
||||||
|
@Comment("天数")
|
||||||
|
private List<Double> allowDay;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
package io.v.nutz.zhgh.therapyRecuperation.model;
|
package io.v.nutz.zhgh.therapyRecuperation.model;
|
||||||
|
|
||||||
|
import cn.hutool.core.date.DateTime;
|
||||||
import io.v.nutz.sys.models.Sys_file;
|
import io.v.nutz.sys.models.Sys_file;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.experimental.Accessors;
|
import lombok.experimental.Accessors;
|
||||||
@@ -113,4 +114,50 @@ public class TheRapyRecuperationConfig {
|
|||||||
@ColDefine(type = ColType.MYSQL_JSON)
|
@ColDefine(type = ColType.MYSQL_JSON)
|
||||||
@Comment("承诺书")
|
@Comment("承诺书")
|
||||||
private List<Sys_file> files;
|
private List<Sys_file> files;
|
||||||
|
|
||||||
|
@Column
|
||||||
|
@ColDefine(type = ColType.INT)
|
||||||
|
@Comment("常规团最少成团人数")
|
||||||
|
private Integer conventionalCount;
|
||||||
|
|
||||||
|
@Column
|
||||||
|
@ColDefine(type = ColType.INT)
|
||||||
|
@Comment("精品团最少成团人数")
|
||||||
|
private Integer boutiqueCount;
|
||||||
|
|
||||||
|
@Column
|
||||||
|
@ColDefine(type = ColType.INT)
|
||||||
|
@Comment("分段式最少成团人数")
|
||||||
|
private Integer fragmentCount;
|
||||||
|
|
||||||
|
@Column
|
||||||
|
@ColDefine(type = ColType.DATETIME)
|
||||||
|
@Comment("集中疗休养报名开始时间")
|
||||||
|
private DateTime implodeStartTime;
|
||||||
|
|
||||||
|
@Column
|
||||||
|
@ColDefine(type = ColType.DATETIME)
|
||||||
|
@Comment("集中疗休养报名结束时间")
|
||||||
|
private DateTime implodeEndTime;
|
||||||
|
|
||||||
|
@Column
|
||||||
|
@ColDefine(type = ColType.DATETIME)
|
||||||
|
@Comment("分段疗休养报名开始时间")
|
||||||
|
private DateTime fragmentStartTime;
|
||||||
|
|
||||||
|
@Column
|
||||||
|
@ColDefine(type = ColType.DATETIME)
|
||||||
|
@Comment("分段疗休养报名结束时间")
|
||||||
|
private DateTime fragmentEndTime;
|
||||||
|
|
||||||
|
@Column
|
||||||
|
@ColDefine(type = ColType.DATETIME)
|
||||||
|
@Comment("分段疗休养活动开始时间")
|
||||||
|
private DateTime fragmentPlayStartTime;
|
||||||
|
|
||||||
|
@Column
|
||||||
|
@ColDefine(type = ColType.DATETIME)
|
||||||
|
@Comment("分段疗休养活动结束时间")
|
||||||
|
private DateTime fragmentPlayEndTime;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -218,5 +218,10 @@ public class TheRapyRecuperationEnroll extends BaseModel {
|
|||||||
@Comment("是否被锁定了,如果被锁定了就不能取消报名了")
|
@Comment("是否被锁定了,如果被锁定了就不能取消报名了")
|
||||||
private Boolean hasLocked;
|
private Boolean hasLocked;
|
||||||
|
|
||||||
|
@Column
|
||||||
|
@ColDefine(type = ColType.INT)
|
||||||
|
@Comment("报酒店时选择的出行天数")
|
||||||
|
private Double playDay;
|
||||||
|
|
||||||
private String firstLetter;
|
private String firstLetter;
|
||||||
}
|
}
|
||||||
|
|||||||
+74
-113
@@ -1,5 +1,6 @@
|
|||||||
package io.v.nutz.zhgh.therapyRecuperation.service.impl;
|
package io.v.nutz.zhgh.therapyRecuperation.service.impl;
|
||||||
|
|
||||||
|
import cn.hutool.core.date.DateTime;
|
||||||
import cn.hutool.core.date.DateUtil;
|
import cn.hutool.core.date.DateUtil;
|
||||||
import cn.hutool.core.util.StrUtil;
|
import cn.hutool.core.util.StrUtil;
|
||||||
import cn.hutool.extra.pinyin.PinyinUtil;
|
import cn.hutool.extra.pinyin.PinyinUtil;
|
||||||
@@ -517,50 +518,40 @@ public class TheRapyRecuperationEnrollServiceImpl extends ViServiceImpl<TheRapyR
|
|||||||
return Map.of(false, "抱歉,您不在报名范围内!");
|
return Map.of(false, "抱歉,您不在报名范围内!");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//判断报名时间
|
||||||
|
Map<Boolean, String> validTime = this.validSignTime(enrollInfo);
|
||||||
|
if (validTime != null && validTime.containsKey(false)) {
|
||||||
|
return validTime;
|
||||||
|
}
|
||||||
|
|
||||||
//每年旅行频率
|
//每年旅行频率
|
||||||
Integer travelFrequency = config.getTravelFrequency();
|
Integer travelFrequency = config.getTravelFrequency();
|
||||||
//省外几年去一次
|
//省外几年去一次
|
||||||
Integer outsideNumber = config.getOutsideNumber();
|
Integer outsideNumber = config.getOutsideNumber();
|
||||||
//可以修改几次
|
|
||||||
Integer modifyNumber = config.getModifyNumber();
|
|
||||||
//省外最多报名人数
|
|
||||||
Integer allLineSignUpNumber = config.getAllLineSignUpNumber();
|
|
||||||
//省内起始年份
|
//省内起始年份
|
||||||
Integer provinceStartYear = config.getProvinceStartYear();
|
Integer provinceStartYear = config.getProvinceStartYear();
|
||||||
//活动范围
|
|
||||||
Integer activityGroupId = config.getActivityGroupId();
|
|
||||||
|
|
||||||
//如果报酒店
|
//先判断有没有报过
|
||||||
if (StrUtil.isNotBlank(enrollInfo.getTakePartInBaseManagementId()) && StrUtil.isBlank(enrollInfo.getId()) && enrollInfo.isNormal()) {
|
Map<Boolean, String> thisYearCount = this.validCountThisYear(loginName, travelFrequency);
|
||||||
Map<Boolean, String> oneYear = this.validCountOneYear(loginName, travelFrequency);
|
if (thisYearCount != null && thisYearCount.containsKey(false)) {
|
||||||
if (oneYear != null) {
|
return thisYearCount;
|
||||||
return oneYear;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Date signUpStartTime = null;
|
//如果报酒店,酒店可以一年报2次
|
||||||
Date signUpEndTime = null;
|
if (StrUtil.isNotBlank(enrollInfo.getTakePartInBaseManagementId()) && StrUtil.isBlank(enrollInfo.getId())) {
|
||||||
Date changeEndTime = null;
|
Map<Boolean, String> validResult = this.validBaseManagementCount(loginName, enrollInfo);
|
||||||
|
if(validResult != null && validResult.containsKey(false)) {
|
||||||
|
return validResult;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (StrUtil.isNotBlank(enrollInfo.getTakePartInLineId())) {
|
if (StrUtil.isNotBlank(enrollInfo.getTakePartInLineId())) {
|
||||||
//线路信息
|
//线路信息
|
||||||
TheRapyRecuperationLineUnionSelect lineUnionSelect = dao().fetch(TheRapyRecuperationLineUnionSelect.class, enrollInfo.getTakePartInLineId());
|
TheRapyRecuperationLineUnionSelect lineUnionSelect = dao().fetch(TheRapyRecuperationLineUnionSelect.class, enrollInfo.getTakePartInLineId());
|
||||||
TheRapyRecuperationLine lineInfo = dao().fetch(TheRapyRecuperationLine.class, lineUnionSelect.getLineId());
|
TheRapyRecuperationLine lineInfo = dao().fetch(TheRapyRecuperationLine.class, lineUnionSelect.getLineId());
|
||||||
|
|
||||||
signUpStartTime = lineUnionSelect.getSignUpStartTime();
|
|
||||||
signUpEndTime = lineUnionSelect.getSignUpEndTime();
|
|
||||||
changeEndTime = lineUnionSelect.getChangeEndTime();
|
|
||||||
|
|
||||||
if (DateUtil.compare(new Date(), signUpStartTime) < 0) {
|
|
||||||
return Map.of(false, "报名未开始,请耐心等待");
|
|
||||||
}
|
|
||||||
if (DateUtil.compare(new Date(), changeEndTime) > 0 && enrollInfo.isNormal()) {
|
|
||||||
return Map.of(false, "报名时间已过,抱歉不能报名");
|
|
||||||
}
|
|
||||||
|
|
||||||
TheRapyRecuperationType trrt = regionTypeLineMap.get(lineInfo.getRegionalNature());
|
TheRapyRecuperationType trrt = regionTypeLineMap.get(lineInfo.getRegionalNature());
|
||||||
if (StrUtil.isBlank(enrollInfo.getId()) && StrUtil.isNotBlank(enrollInfo.getTakePartInLineId())) {
|
if (StrUtil.isBlank(enrollInfo.getId()) && StrUtil.isNotBlank(enrollInfo.getTakePartInLineId())) {
|
||||||
|
|
||||||
//获取标段中的最大费用
|
//获取标段中的最大费用
|
||||||
List<TheRapyRecuperationLot> lotList = dao().query(TheRapyRecuperationLot.class, Cnd.NEW());
|
List<TheRapyRecuperationLot> lotList = dao().query(TheRapyRecuperationLot.class, Cnd.NEW());
|
||||||
//最大费用
|
//最大费用
|
||||||
@@ -569,11 +560,6 @@ public class TheRapyRecuperationEnrollServiceImpl extends ViServiceImpl<TheRapyR
|
|||||||
//获取当前报名线路对应的标段的费用
|
//获取当前报名线路对应的标段的费用
|
||||||
Integer currentLineCost = dao().fetch(TheRapyRecuperationLot.class, lineInfo.getLotId()).getActivityCost();
|
Integer currentLineCost = dao().fetch(TheRapyRecuperationLot.class, lineInfo.getLotId()).getActivityCost();
|
||||||
|
|
||||||
Map<Boolean, String> oneYear = this.validCountOneYear(loginName, travelFrequency);
|
|
||||||
if (oneYear != null && oneYear.containsKey(false)) {
|
|
||||||
return oneYear;
|
|
||||||
}
|
|
||||||
|
|
||||||
//获取起始年份到当前时间,是否报名
|
//获取起始年份到当前时间,是否报名
|
||||||
Sql sql = Sqls.create("""
|
Sql sql = Sqls.create("""
|
||||||
SELECT
|
SELECT
|
||||||
@@ -653,60 +639,70 @@ public class TheRapyRecuperationEnrollServiceImpl extends ViServiceImpl<TheRapyR
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//变更操作
|
|
||||||
if (StrUtil.isNotBlank(enrollInfo.getId())) {
|
|
||||||
int changeCount = dao().count(TheRapyRecuperationEnrollChangeRecord.class, Cnd.where("enrollId", "=", enrollInfo.getId()));
|
|
||||||
if (changeCount >= modifyNumber) {
|
|
||||||
return Map.of(false, "只能变更" + changeCount + "次!");
|
|
||||||
}
|
|
||||||
if (DateUtil.compare(new Date(), changeEndTime) > 0) {
|
|
||||||
return Map.of(false, "超过变更截至时间,无法变更!");
|
|
||||||
} else {
|
|
||||||
return Map.of(true, "验证成功");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return Map.of(true, "验证成功");
|
return Map.of(true, "验证成功");
|
||||||
}
|
}
|
||||||
|
|
||||||
public Map<Boolean, String> validSignCount(TheRapyRecuperationEnroll enrollInfo, TheRapyRecuperationConfig config, int estimatedFamilyNumbers, String type) {
|
public Map<Boolean, String> validSignTime(TheRapyRecuperationEnroll currentEnroll) {
|
||||||
int hasSignNumber = 0;//已经报名的人数
|
TheRapyRecuperationConfig config = dao().fetch(TheRapyRecuperationConfig.class, Cnd.NEW());
|
||||||
int currentSignNumber = 1;//当前报名人数,1表示自己,下面的if是加家属人数
|
DateTime signUpStartTime = null;
|
||||||
Cnd cnd = Cnd.where("takePartInLineId", "=", enrollInfo.getTakePartInLineId())
|
DateTime signUpEndTime = null;
|
||||||
.and("stateId", "in", Lang.array(TheRapyRecuperationState.UNIT, TheRapyRecuperationState.LINEUNIT, TheRapyRecuperationState.SCHOOL, TheRapyRecuperationState.PASS))
|
if(StrUtil.isNotBlank(currentEnroll.getTakePartInLineId())) {
|
||||||
.and("isNormal", "=", true);
|
signUpStartTime = config.getImplodeStartTime();
|
||||||
//如果是修改,排除自己的报名记录
|
signUpEndTime = config.getImplodeEndTime();
|
||||||
if("edit".equals(type)) {
|
} else if(StrUtil.isNotBlank(currentEnroll.getTakePartInBaseManagementId())) {
|
||||||
cnd.and("loginName", "!=", ShiroUtil.getPlatformLoginname());
|
signUpStartTime = config.getFragmentStartTime();
|
||||||
|
signUpEndTime = config.getFragmentEndTime();
|
||||||
|
}
|
||||||
|
if (DateUtil.compare(new Date(), signUpStartTime) < 0) {
|
||||||
|
return Map.of(false, "报名未开始,请耐心等待");
|
||||||
|
}
|
||||||
|
if (DateUtil.compare(new Date(), signUpEndTime) > 0) {
|
||||||
|
return Map.of(false, "报名时间已过,抱歉不能报名");
|
||||||
}
|
}
|
||||||
List<TheRapyRecuperationEnroll> enrolls = dao().query(TheRapyRecuperationEnroll.class, cnd);
|
|
||||||
|
|
||||||
//1表示在配置页面的家属配置的是数量,2是家属的List
|
|
||||||
/*if (config.getFamilyInfo() == 1) {
|
|
||||||
currentSignNumber += enrollInfo.getFamilyNumber() != null ? enrollInfo.getFamilyNumber() : 0;
|
|
||||||
int sum = enrolls.stream().mapToInt(TheRapyRecuperationEnroll::getFamilyNumber).sum();
|
|
||||||
hasSignNumber = enrolls.size() + sum;
|
|
||||||
} else {
|
|
||||||
currentSignNumber += enrollInfo.getCompanionList() != null ? enrollInfo.getCompanionList().size() : 0;
|
|
||||||
List<String> list = enrolls.stream().map(TheRapyRecuperationEnroll::getId).collect(Collectors.toList());
|
|
||||||
List<TheRapyRecuperationEnrollCompanion> companions = dao().query(TheRapyRecuperationEnrollCompanion.class, Cnd.where("trreId", "=", list));
|
|
||||||
hasSignNumber = enrolls.size() + companions.size();
|
|
||||||
}*/
|
|
||||||
//省外报名限制,不包含家属
|
|
||||||
// hasSignNumber += currentSignNumber + enrolls.size();
|
|
||||||
if (( currentSignNumber + enrolls.size()) > estimatedFamilyNumbers) {
|
|
||||||
return Map.of(false, "报名人数已满");
|
|
||||||
} else {
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Map<Boolean, String> validBaseManagementCount(String loginName, TheRapyRecuperationEnroll currentEnroll) {
|
||||||
|
//酒店可以一年报2次,查询是否有报第一次
|
||||||
|
List<TheRapyRecuperationEnroll> enrollList = dao().query(
|
||||||
|
TheRapyRecuperationEnroll.class,
|
||||||
|
Cnd.where("loginName", "=", loginName)
|
||||||
|
.and("isNormal", "=", true)
|
||||||
|
.and("takePartInBaseManagementId", "is not", null)
|
||||||
|
.and("YEAR(signingUptime)", "=", DateUtil.thisYear())
|
||||||
|
);
|
||||||
|
if(enrollList.size() >= 2) {
|
||||||
|
return Map.of(false, "您已经报名了%s次分段疗休养".formatted(enrollList.size()));
|
||||||
|
}
|
||||||
|
//如果报过第一次就要判断
|
||||||
|
if(Lang.isNotEmpty(enrollList)) {
|
||||||
|
TheRapyRecuperationEnroll lastEnroll = enrollList.get(0);
|
||||||
|
//判断这次报名的旅行社和上次的旅行社是否是一个
|
||||||
|
TheRapyRecuperationBaseManagement currentManagement = dao().fetch(TheRapyRecuperationBaseManagement.class, currentEnroll.getTakePartInBaseManagementId());
|
||||||
|
TheRapyRecuperationTravelAgency currentTravelAgency = dao().fetch(TheRapyRecuperationTravelAgency.class, currentManagement.getTravelAgencyId());
|
||||||
|
|
||||||
|
TheRapyRecuperationBaseManagement lastManagement = dao().fetch(TheRapyRecuperationBaseManagement.class, lastEnroll.getTakePartInBaseManagementId());
|
||||||
|
TheRapyRecuperationTravelAgency lastTravelAgency = dao().fetch(TheRapyRecuperationTravelAgency.class, lastManagement.getTravelAgencyId());
|
||||||
|
if(!Objects.equals(currentTravelAgency.getId(), lastTravelAgency.getId())) {
|
||||||
|
return Map.of(false, "当前报名酒店的旅行社与上次出行不一致");
|
||||||
|
}
|
||||||
|
//如果是一个,再判断天数
|
||||||
|
if(currentEnroll.getPlayDay() != null) {
|
||||||
|
if((currentEnroll.getPlayDay() + lastEnroll.getPlayDay()) != 5) {
|
||||||
|
return Map.of(false, "您选择的出行天数有误");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
//判断一年报几次
|
//判断一年报几次
|
||||||
public Map<Boolean, String> validCountOneYear(String loginName, int travelFrequency) {
|
public Map<Boolean, String> validCountThisYear(String loginName, int travelFrequency) {
|
||||||
Cnd cnd = Cnd.NEW();
|
Cnd cnd = Cnd.NEW();
|
||||||
cnd.and("loginName", "=", loginName);
|
cnd.and("loginName", "=", loginName);
|
||||||
cnd.and("isNormal", "=", true);
|
cnd.and("isNormal", "=", true);
|
||||||
cnd.and("YEAR(signingUptime)", "=", io.v.nutz.base.utils.DateUtil.getYear());
|
cnd.and("takePartInBaseManagementId", "is", null);
|
||||||
|
cnd.and("YEAR(signingUptime)", "=", DateUtil.thisYear());
|
||||||
int joinCount = dao().count(TheRapyRecuperationEnroll.class, cnd);
|
int joinCount = dao().count(TheRapyRecuperationEnroll.class, cnd);
|
||||||
|
|
||||||
if (joinCount >= travelFrequency) {
|
if (joinCount >= travelFrequency) {
|
||||||
@@ -718,23 +714,18 @@ public class TheRapyRecuperationEnrollServiceImpl extends ViServiceImpl<TheRapyR
|
|||||||
int inCount = dao().count("the_rapy_recuperation_enroll", Cnd.where("loginName", "=", io.v.nutz.web.commons.utils.ShiroUtil.getPrincipalProperty("loginname"))
|
int inCount = dao().count("the_rapy_recuperation_enroll", Cnd.where("loginName", "=", io.v.nutz.web.commons.utils.ShiroUtil.getPrincipalProperty("loginname"))
|
||||||
.and("takePartInLineId", "in", unionInSelects.stream().map(TheRapyRecuperationLineUnionSelect::getId).collect(Collectors.toList()))
|
.and("takePartInLineId", "in", unionInSelects.stream().map(TheRapyRecuperationLineUnionSelect::getId).collect(Collectors.toList()))
|
||||||
.and("isNormal", "=", true)
|
.and("isNormal", "=", true)
|
||||||
.and("YEAR(signingUptime)", "=", io.v.nutz.base.utils.DateUtil.getYear()));
|
.and("YEAR(signingUptime)", "=", DateUtil.thisYear()));
|
||||||
//是否报省外
|
//是否报省外
|
||||||
int outCount = dao().count("the_rapy_recuperation_enroll", Cnd.where("loginName", "=", io.v.nutz.web.commons.utils.ShiroUtil.getPrincipalProperty("loginname"))
|
int outCount = dao().count("the_rapy_recuperation_enroll", Cnd.where("loginName", "=", io.v.nutz.web.commons.utils.ShiroUtil.getPrincipalProperty("loginname"))
|
||||||
.and("takePartInLineId", "in", unionOutSelects.stream().map(TheRapyRecuperationLineUnionSelect::getId).collect(Collectors.toList()))
|
.and("takePartInLineId", "in", unionOutSelects.stream().map(TheRapyRecuperationLineUnionSelect::getId).collect(Collectors.toList()))
|
||||||
.and("isNormal", "=", true)
|
.and("isNormal", "=", true)
|
||||||
.and("YEAR(signingUptime)", "=", io.v.nutz.base.utils.DateUtil.getYear()));
|
.and("YEAR(signingUptime)", "=", DateUtil.thisYear()));
|
||||||
//是否报旅行社
|
//是否报旅行社
|
||||||
int travelCount = dao().count("the_rapy_recuperation_enroll", Cnd.where("loginName", "=", io.v.nutz.web.commons.utils.ShiroUtil.getPrincipalProperty("loginname"))
|
int travelCount = dao().count("the_rapy_recuperation_enroll", Cnd.where("loginName", "=", io.v.nutz.web.commons.utils.ShiroUtil.getPrincipalProperty("loginname"))
|
||||||
.and(Cnd.exps("takePartInLineId", "is", null).or("takePartInLineId", "=", ""))
|
.and(Cnd.exps("takePartInLineId", "is", null).or("takePartInLineId", "=", ""))
|
||||||
.and("isNormal", "=", true)
|
.and("isNormal", "=", true)
|
||||||
.and("takePartInTravelAgencyId", "is not", null)
|
.and("takePartInTravelAgencyId", "is not", null)
|
||||||
.and("YEAR(signingUptime)", "=", io.v.nutz.base.utils.DateUtil.getYear()));
|
.and("YEAR(signingUptime)", "=", DateUtil.thisYear()));
|
||||||
//是否报酒店
|
|
||||||
int hotelCount = dao().count("the_rapy_recuperation_enroll", Cnd.where("loginName", "=", io.v.nutz.web.commons.utils.ShiroUtil.getPrincipalProperty("loginname"))
|
|
||||||
.and("takePartInLineId", "is", null).and("isNormal", "=", true)
|
|
||||||
.and("takePartInBaseManagementId", "is not", null)
|
|
||||||
.and("YEAR(signingUptime)", "=", io.v.nutz.base.utils.DateUtil.getYear()));
|
|
||||||
String str = "";
|
String str = "";
|
||||||
if (inCount > 0) {
|
if (inCount > 0) {
|
||||||
str = "省内线路";
|
str = "省内线路";
|
||||||
@@ -742,40 +733,10 @@ public class TheRapyRecuperationEnrollServiceImpl extends ViServiceImpl<TheRapyR
|
|||||||
str = "省外线路";
|
str = "省外线路";
|
||||||
} else if (travelCount > 0) {
|
} else if (travelCount > 0) {
|
||||||
str = "旅行社";
|
str = "旅行社";
|
||||||
} else if (hotelCount > 0) {
|
|
||||||
str = "酒店";
|
|
||||||
}
|
}
|
||||||
return Map.of(false, "一年只能报" + travelFrequency + "次,您已报" + str + ",请先在我的疗休养中删除,方可报名!");
|
return Map.of(false, "一年只能报" + travelFrequency + "次,您已报" + str + ",请先在我的疗休养中删除,方可报名!");
|
||||||
}
|
}
|
||||||
return Map.of(true, "成功");
|
return null;
|
||||||
}
|
|
||||||
|
|
||||||
public int getCountByOutLine(TheRapyRecuperationType trrt, String loginName, int outsideNumber) {
|
|
||||||
//省外 outsideNumber 年内是否去过
|
|
||||||
if (trrt.getValue() == TheRapyRecuperationType.provinceOutLine.getValue()) {
|
|
||||||
Sql lineJoinSql = Sqls.create("""
|
|
||||||
SELECT
|
|
||||||
count(*)
|
|
||||||
FROM
|
|
||||||
the_rapy_recuperation_enroll ren
|
|
||||||
LEFT JOIN the_rapy_recuperation_line rl on ren.takePartInLineId = rl.id
|
|
||||||
$condition
|
|
||||||
""");
|
|
||||||
|
|
||||||
Cnd lineCnd = Cnd.NEW();
|
|
||||||
lineCnd.and("loginName", "=", loginName);
|
|
||||||
lineCnd.and("isNormal", "=", true);
|
|
||||||
lineCnd.and("takePartInLineId", "IS NOT", null);
|
|
||||||
lineCnd.and("YEAR ( signingUptime )", ">=", io.v.nutz.base.utils.DateUtil.getYear() - outsideNumber);
|
|
||||||
lineCnd.and("YEAR ( signingUptime )", "<=", io.v.nutz.base.utils.DateUtil.getYear() - 1);
|
|
||||||
lineCnd.and("regionalNature", "=", TheRapyRecuperationType.provinceOutLine.getValue());
|
|
||||||
|
|
||||||
lineJoinSql.setCondition(lineCnd);
|
|
||||||
|
|
||||||
//lineCnd.and(new SqlExpressionGroup().andBetween("YEAR(signingUptime)", io.v.nutz.base.utils.DateUtil.getYear() - 1, io.v.nutz.base.utils.DateUtil.getYear() - outsideNumber));
|
|
||||||
return baseService.count(lineJoinSql);
|
|
||||||
}
|
|
||||||
return 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -95,7 +95,7 @@
|
|||||||
url: url,
|
url: url,
|
||||||
container: "#container",
|
container: "#container",
|
||||||
maxCacheLength: 0,
|
maxCacheLength: 0,
|
||||||
push: false,
|
push: true,
|
||||||
replace: true,
|
replace: true,
|
||||||
fragment: "#container",
|
fragment: "#container",
|
||||||
timeout: 8000,
|
timeout: 8000,
|
||||||
|
|||||||
@@ -263,9 +263,9 @@ layout("/mobile/platform.html"){
|
|||||||
<div class="container">
|
<div class="container">
|
||||||
<div class="header">
|
<div class="header">
|
||||||
<div class="title">
|
<div class="title">
|
||||||
<van-tag size="large" color="#1867b0" style="color: white;position: relative; top: -2px">
|
<!--<van-tag size="large" color="#1867b0" style="color: white;position: relative; top: -2px">
|
||||||
{{baseData.lotName}}
|
{{baseData.regionalNature}}
|
||||||
</van-tag>
|
</van-tag>-->
|
||||||
{{baseData.baseName}}
|
{{baseData.baseName}}
|
||||||
</div>
|
</div>
|
||||||
<div style="margin-top: 10px">
|
<div style="margin-top: 10px">
|
||||||
@@ -279,13 +279,13 @@ layout("/mobile/platform.html"){
|
|||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<span>报名时间:</span>
|
<span>报名时间:</span>
|
||||||
{{moment(baseData.signUpStartTime).format('YYYY-MM-DD HH:mm') + ' ~ ' +
|
{{moment(configData.fragmentStartTime).format('YYYY-MM-DD HH:mm') + ' ~ ' +
|
||||||
moment(baseData.signUpEndTime).format('YYYY-MM-DD HH:mm')}}
|
moment(configData.fragmentEndTime).format('YYYY-MM-DD HH:mm')}}
|
||||||
</div>
|
</div>
|
||||||
<div>
|
<div>
|
||||||
<span>活动时间:</span>
|
<span>活动时间:</span>
|
||||||
{{moment(baseData.activityStartTime).format('YYYY-MM-DD HH:mm') + ' ~ ' +
|
{{moment(configData.fragmentPlayStartTime).format('YYYY-MM-DD HH:mm') + ' ~ ' +
|
||||||
moment(baseData.activityEndTime).format('YYYY-MM-DD HH:mm')}}
|
moment(configData.fragmentPlayEndTime).format('YYYY-MM-DD HH:mm')}}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -311,13 +311,9 @@ layout("/mobile/platform.html"){
|
|||||||
<van-button @click="join" class="join">我要报名</van-button>
|
<van-button @click="join" class="join">我要报名</van-button>
|
||||||
</template>
|
</template>
|
||||||
<template v-else>
|
<template v-else>
|
||||||
<van-button v-if="moment().unix() <= moment(baseData.signUpEndTime).unix()" @click="join" class="join">我要报名
|
<van-button v-if="moment().unix() >= moment(configData.fragmentStartTime).unix() && moment().unix() <= moment(configData.fragmentEndTime).unix()"
|
||||||
</van-button>
|
@click="join" class="join">我要报名</van-button>
|
||||||
<!--<van-button
|
<van-button v-if="moment().unix() > moment(configData.fragmentEndTime).unix()" class="join">报名结束</van-button>
|
||||||
v-if="moment().unix() <= moment(baseData.signUpEndTime).unix() && ${@shiro.hasRole('sysadmin')||@shiro.hasRole('A06')||@shiro.hasRole('H03')}"
|
|
||||||
@click="helpJoin" class="join">替他人报名
|
|
||||||
</van-button>-->
|
|
||||||
<van-button v-if="moment().unix() > moment(baseData.signUpEndTime).unix()" class="join">报名结束</van-button>
|
|
||||||
</template>
|
</template>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -334,13 +330,7 @@ layout("/mobile/platform.html"){
|
|||||||
</div>
|
</div>
|
||||||
<div class="van-card-body">
|
<div class="van-card-body">
|
||||||
|
|
||||||
<van-field v-if="isHelpJoin" label="姓名" readonly v-model="formData.userName"></van-field>
|
<van-field label="姓名" readonly v-model="formData.userName"></van-field>
|
||||||
|
|
||||||
<van-field v-else="!isHelpJoin" label="姓名"
|
|
||||||
:rules="[{ required: true }]"
|
|
||||||
placeholder="请输入工号或姓名进行查询" required
|
|
||||||
@click="show = true"
|
|
||||||
v-model="formData.userName"></van-field>
|
|
||||||
|
|
||||||
<van-field label="工号" readonly v-model="formData.loginName"></van-field>
|
<van-field label="工号" readonly v-model="formData.loginName"></van-field>
|
||||||
<van-field label="身份证号" name="idCard" :rules="[{ required: true }]"
|
<van-field label="身份证号" name="idCard" :rules="[{ required: true }]"
|
||||||
@@ -349,7 +339,10 @@ layout("/mobile/platform.html"){
|
|||||||
placeholder="请填写手机号" v-model="formData.mobile"></van-field>
|
placeholder="请填写手机号" v-model="formData.mobile"></van-field>
|
||||||
<van-field label="所属工会" readonly v-model="formData.unionName"></van-field>
|
<van-field label="所属工会" readonly v-model="formData.unionName"></van-field>
|
||||||
<van-field label="报名酒店" readonly v-model="formData.baseName"></van-field>
|
<van-field label="报名酒店" readonly v-model="formData.baseName"></van-field>
|
||||||
<van-field label="活动时间" readonly @click="if(fromUrlByMy != 'find')timeVisible = true"
|
<van-field label="出行天数" readonly @click="if(fromUrlByMy != 'find')playDayVisible = true"
|
||||||
|
:rules="[{ required: true }]" placeholder="请选择出行天数" required
|
||||||
|
is-link v-model="formData.playDay" name="playDay"></van-field>
|
||||||
|
<van-field label="活动时间" readonly @click="specificTimeClick"
|
||||||
:rules="[{ required: true }]" placeholder="请选择活动时间" required
|
:rules="[{ required: true }]" placeholder="请选择活动时间" required
|
||||||
is-link v-model="formData.specificTime" name="specificTime"></van-field>
|
is-link v-model="formData.specificTime" name="specificTime"></van-field>
|
||||||
</div>
|
</div>
|
||||||
@@ -464,6 +457,15 @@ layout("/mobile/platform.html"){
|
|||||||
</div>
|
</div>
|
||||||
</van-popup>
|
</van-popup>
|
||||||
|
|
||||||
|
<van-popup position="bottom" round v-model="playDayVisible">
|
||||||
|
<van-picker
|
||||||
|
title="出行天数" show-toolbar
|
||||||
|
:columns="playDayColumns"
|
||||||
|
@confirm="playDayConfirm"
|
||||||
|
@cancel="playDayVisible = false">
|
||||||
|
</van-picker>
|
||||||
|
</van-popup>
|
||||||
|
|
||||||
<!--房间类型弹出框-->
|
<!--房间类型弹出框-->
|
||||||
<van-popup position="bottom" round v-model="roomVisible">
|
<van-popup position="bottom" round v-model="roomVisible">
|
||||||
<van-picker
|
<van-picker
|
||||||
@@ -495,16 +497,6 @@ layout("/mobile/platform.html"){
|
|||||||
</van-picker>
|
</van-picker>
|
||||||
</van-popup>
|
</van-popup>
|
||||||
|
|
||||||
<!--时间弹出框-->
|
|
||||||
<!--<van-popup position="bottom" round v-model="timeVisible">
|
|
||||||
<van-picker
|
|
||||||
title="具体时间" show-toolbar
|
|
||||||
:columns="timeArray"
|
|
||||||
@confirm="(value, index) => {formData.specificTime = value; timeVisible = false}"
|
|
||||||
@cancel="timeVisible = false">
|
|
||||||
</van-picker>
|
|
||||||
</van-popup>-->
|
|
||||||
|
|
||||||
<van-calendar type="range" v-model="timeVisible"
|
<van-calendar type="range" v-model="timeVisible"
|
||||||
ref="cal" @confirm="calConfirm"
|
ref="cal" @confirm="calConfirm"
|
||||||
:min-date="minDate" :max-date="maxDate"
|
:min-date="minDate" :max-date="maxDate"
|
||||||
@@ -512,24 +504,6 @@ layout("/mobile/platform.html"){
|
|||||||
@select="daySelect"
|
@select="daySelect"
|
||||||
:max-range="lotValue" :style="{ height: '660px' }"></van-calendar>
|
:max-range="lotValue" :style="{ height: '660px' }"></van-calendar>
|
||||||
|
|
||||||
<van-popup position="bottom" round v-model="show" :style="{ height: '60%' }" closeable>
|
|
||||||
<van-search v-model="result" show-action style="padding: 10px;margin-top: 45px" placeholder="请输入工号或姓名搜索"
|
|
||||||
@input="delaySearch">
|
|
||||||
</van-search>
|
|
||||||
<van-cell-group>
|
|
||||||
<div>
|
|
||||||
<van-checkbox-group style="text-align: center">
|
|
||||||
<van-cell-group>
|
|
||||||
<van-cell v-for="(item, index) in userList" :key="item.index" clickable
|
|
||||||
:title="item.name"
|
|
||||||
@click="toResult(item.loginname)">
|
|
||||||
</van-cell>
|
|
||||||
</van-cell-group>
|
|
||||||
</van-checkbox-group>
|
|
||||||
</div>
|
|
||||||
</van-cell-group>
|
|
||||||
</van-popup>
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<script>
|
<script>
|
||||||
function getQueryString(name) {
|
function getQueryString(name) {
|
||||||
@@ -555,7 +529,6 @@ layout("/mobile/platform.html"){
|
|||||||
tarBarActive: 0,
|
tarBarActive: 0,
|
||||||
roomColumns: ['大床房', '标准间'],
|
roomColumns: ['大床房', '标准间'],
|
||||||
bedColumns: ['1', '2'],
|
bedColumns: ['1', '2'],
|
||||||
//companionColumns: ['亲属', '朋友'],
|
|
||||||
companionColumns: ['配偶', '子女'],
|
companionColumns: ['配偶', '子女'],
|
||||||
bedVisible: false,
|
bedVisible: false,
|
||||||
roomVisible: false,
|
roomVisible: false,
|
||||||
@@ -584,13 +557,9 @@ layout("/mobile/platform.html"){
|
|||||||
enrollId: '',
|
enrollId: '',
|
||||||
timeArray: [],
|
timeArray: [],
|
||||||
defaultIndex: 0,
|
defaultIndex: 0,
|
||||||
|
|
||||||
isHelpJoin: false,
|
|
||||||
|
|
||||||
userList: [],
|
userList: [],
|
||||||
show: false,
|
show: false,
|
||||||
result: '',
|
result: '',
|
||||||
helpUser: 1,
|
|
||||||
weekList: {
|
weekList: {
|
||||||
0: '周日',
|
0: '周日',
|
||||||
1: '周一',
|
1: '周一',
|
||||||
@@ -601,14 +570,32 @@ layout("/mobile/platform.html"){
|
|||||||
6: '周六',
|
6: '周六',
|
||||||
},
|
},
|
||||||
chooseDate: [],
|
chooseDate: [],
|
||||||
|
configData: {},
|
||||||
|
|
||||||
|
playDayVisible: false,
|
||||||
|
playDayColumns: [],
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
playDayConfirm(val) {
|
||||||
|
this.formData.playDay = val.value
|
||||||
|
this.lotValue = val.value === 2.5 ? 3 : val.value
|
||||||
|
this.playDayVisible = false
|
||||||
|
},
|
||||||
|
specificTimeClick() {
|
||||||
|
if(!this.formData.playDay) {
|
||||||
|
this.$toast('请先选择出行天数')
|
||||||
|
return
|
||||||
|
}
|
||||||
|
if(this.fromUrlByMy !== 'find') this.timeVisible = true
|
||||||
|
},
|
||||||
pageBack() {
|
pageBack() {
|
||||||
if(this.fromUrlByMy !== 'find') {
|
window.removeEventListener('scroll', this.scrollToTop)
|
||||||
pjaxReplace('/platform/mobile/theRapyRecuperation/mobileLineListPage')
|
document.removeEventListener('click', this.handleClick)
|
||||||
} else {
|
if(['find', 'editDo'].includes(this.fromUrlByMy)) {
|
||||||
pjaxReplace('/platform/mobile/theRapyRecuperation/myRecuperation')
|
pjaxReplace('/platform/mobile/theRapyRecuperation/myRecuperation')
|
||||||
|
} else {
|
||||||
|
pjaxReplace('/platform/mobile/theRapyRecuperation/mobileLineListPage')
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
calConfirm(date) {
|
calConfirm(date) {
|
||||||
@@ -693,15 +680,12 @@ layout("/mobile/platform.html"){
|
|||||||
return value != null
|
return value != null
|
||||||
},
|
},
|
||||||
async joinSubmit() {
|
async joinSubmit() {
|
||||||
let toast = null
|
let toast = vant.Toast.loading({
|
||||||
if (!this.enrollId) {
|
|
||||||
toast = vant.Toast.loading({
|
|
||||||
duration: 0,
|
duration: 0,
|
||||||
forbidClick: true,
|
forbidClick: true,
|
||||||
overlay: true,
|
overlay: true,
|
||||||
message: '努力提交中',
|
message: '努力提交中',
|
||||||
})
|
})
|
||||||
}
|
|
||||||
const cloneData = clone(this.formData)
|
const cloneData = clone(this.formData)
|
||||||
cloneData.companionList.forEach((item, index) => {
|
cloneData.companionList.forEach((item, index) => {
|
||||||
if (item.userName === '') {
|
if (item.userName === '') {
|
||||||
@@ -711,38 +695,17 @@ layout("/mobile/platform.html"){
|
|||||||
const resp = await $.post('/platform/theRapyRecuperation/line/enroll/doSignUpForBaseManagement', {
|
const resp = await $.post('/platform/theRapyRecuperation/line/enroll/doSignUpForBaseManagement', {
|
||||||
enroll: JSON.stringify(cloneData),
|
enroll: JSON.stringify(cloneData),
|
||||||
})
|
})
|
||||||
if (this.enrollId) {
|
toast.close()
|
||||||
if (resp.code === 0) {
|
if (resp.code === 0) {
|
||||||
vant.Dialog.alert({
|
vant.Dialog.alert({
|
||||||
title: '温馨提示',
|
title: '温馨提示',
|
||||||
message: '修改成功,请务必联系并告知旅行社',
|
message: this.enrollId ? '修改成功,请务必联系并告知旅行社' : resp.msg,
|
||||||
}).then(() => {
|
}).then(() => {
|
||||||
if (this.helpUser === 1) {
|
pjaxReplace('/platform/mobile/theRapyRecuperation/myRecuperation?index=' + this.index)
|
||||||
location.href = '/platform/mobile/theRapyRecuperation/myRecuperation?index=' + this.index
|
|
||||||
}
|
|
||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
vant.Toast(resp.msg)
|
vant.Toast(resp.msg)
|
||||||
}
|
}
|
||||||
} else {
|
|
||||||
setTimeout(() => {
|
|
||||||
if (resp.code === 0) {
|
|
||||||
toast.message = '提交成功'
|
|
||||||
toast.type = 'success'
|
|
||||||
} else {
|
|
||||||
toast.message = resp.msg
|
|
||||||
toast.type = 'fail'
|
|
||||||
}
|
|
||||||
setTimeout(() => {
|
|
||||||
toast.clear()
|
|
||||||
}, 500)
|
|
||||||
if (resp.code === 0 && this.helpUser === 1) {
|
|
||||||
location.href = '/platform/mobile/theRapyRecuperation/myRecuperation?index=' + this.index
|
|
||||||
} else {
|
|
||||||
this.helpJoin();
|
|
||||||
}
|
|
||||||
}, 1000)
|
|
||||||
}
|
|
||||||
},
|
},
|
||||||
addCompanion() {
|
addCompanion() {
|
||||||
this.formData.companionList.push({userName: '', loginName: '', sex: '', relation: '', bedInfo: {}})
|
this.formData.companionList.push({userName: '', loginName: '', sex: '', relation: '', bedInfo: {}})
|
||||||
@@ -750,26 +713,7 @@ layout("/mobile/platform.html"){
|
|||||||
delCompanion() {
|
delCompanion() {
|
||||||
this.formData.companionList.splice(this.active, 1)
|
this.formData.companionList.splice(this.active, 1)
|
||||||
},
|
},
|
||||||
async helpJoin() {
|
|
||||||
this.formData = {
|
|
||||||
userName: "",
|
|
||||||
loginName: "",
|
|
||||||
unionName: "",
|
|
||||||
idCard: "",
|
|
||||||
mobile: "",
|
|
||||||
baseName: this.baseData.baseName,
|
|
||||||
takePartInBaseManagementId: this.baseData.id,
|
|
||||||
companionList: [],
|
|
||||||
bedInfo: {},
|
|
||||||
}
|
|
||||||
this.helpUser = 0;
|
|
||||||
if(this.index == 3) {
|
|
||||||
await this.getTimeArray()
|
|
||||||
}
|
|
||||||
this.joinPopup = true
|
|
||||||
},
|
|
||||||
async join() {
|
async join() {
|
||||||
this.helpUser = 1
|
|
||||||
if (this.fromUrlByMy !== 'find') {
|
if (this.fromUrlByMy !== 'find') {
|
||||||
const re = await $.post('/platform/theRapyRecuperation/line/enroll/validSignUpInfo', {
|
const re = await $.post('/platform/theRapyRecuperation/line/enroll/validSignUpInfo', {
|
||||||
enroll: JSON.stringify({
|
enroll: JSON.stringify({
|
||||||
@@ -834,12 +778,15 @@ layout("/mobile/platform.html"){
|
|||||||
this.formData.baseName = this.baseData.baseName
|
this.formData.baseName = this.baseData.baseName
|
||||||
this.skeLoading = false
|
this.skeLoading = false
|
||||||
|
|
||||||
//如果是四晚五天,就获取周一到周五
|
if(this.baseData.allowDay) {
|
||||||
/*if (this.baseData.lotName === '四晚五天') {
|
this.playDayColumns = []
|
||||||
this.timeArray = this.getTimeByLot1()
|
const list = JSON.parse(this.baseData.allowDay)
|
||||||
} else if (this.baseData.lotName === '两晚三天') {
|
list.forEach(item => {
|
||||||
this.timeArray = this.getTimeByLot2()
|
this.playDayColumns.push({
|
||||||
}*/
|
text: item + '天', value: item
|
||||||
|
})
|
||||||
|
})
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
async getTimeArray() {
|
async getTimeArray() {
|
||||||
@@ -848,51 +795,10 @@ layout("/mobile/platform.html"){
|
|||||||
})
|
})
|
||||||
this.timeArray = res.data.days
|
this.timeArray = res.data.days
|
||||||
this.holidays = res.data.holidays
|
this.holidays = res.data.holidays
|
||||||
this.lotValue = Number(res.data.lotValue)
|
//this.lotValue = Number(res.data.lotValue)
|
||||||
this.minDate = new Date(res.data.minDate)
|
this.minDate = new Date(res.data.minDate)
|
||||||
this.maxDate = new Date(res.data.maxDate)
|
this.maxDate = new Date(res.data.maxDate)
|
||||||
},
|
},
|
||||||
getTimeByLot1() {
|
|
||||||
let timeArray = []
|
|
||||||
let now_date = moment()//当前时间
|
|
||||||
let start_date = moment(this.baseData.activityStartTime) // 时间区间开始日期
|
|
||||||
let end_date = moment(this.baseData.activityEndTime) // 时间区间结束日期
|
|
||||||
while (start_date <= end_date) {
|
|
||||||
if (start_date.day() === 1) {
|
|
||||||
const week_start = start_date.format('MM月DD日')
|
|
||||||
const week_end = start_date.clone().add(4, 'day')
|
|
||||||
if (week_end <= end_date && now_date < start_date) {
|
|
||||||
timeArray.push(week_start + '-' + week_end.format('MM月DD日'))
|
|
||||||
}
|
|
||||||
start_date.add(7, 'day')
|
|
||||||
} else {
|
|
||||||
start_date.add(1, 'day')
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return timeArray
|
|
||||||
},
|
|
||||||
getTimeByLot2() {
|
|
||||||
let timeArray = []
|
|
||||||
let now_date = moment()//当前时间
|
|
||||||
let start_date = moment(this.baseData.activityStartTime) // 时间区间开始日期
|
|
||||||
let end_date = moment(this.baseData.activityEndTime) // 时间区间结束日期
|
|
||||||
while (start_date <= end_date) {
|
|
||||||
if (start_date.day() === 5) {
|
|
||||||
const week_start = start_date.format('MM月DD日')
|
|
||||||
const week_end = start_date.clone().add(2, 'day')
|
|
||||||
if (week_end <= end_date && now_date < start_date) {
|
|
||||||
timeArray.push(week_start + '-' + week_end.format('MM月DD日'))
|
|
||||||
}
|
|
||||||
start_date.add(7, 'day')
|
|
||||||
} else {
|
|
||||||
start_date.add(1, 'day')
|
|
||||||
}
|
|
||||||
}
|
|
||||||
timeArray = timeArray.filter(v => {
|
|
||||||
return v !== '09月29日-10月01日' && v !== '10月06日-10月08日' && v !== '09月15日-09月17日'
|
|
||||||
})
|
|
||||||
return timeArray
|
|
||||||
},
|
|
||||||
// 点击图片回到顶部方法,加计时器是为了过渡顺滑
|
// 点击图片回到顶部方法,加计时器是为了过渡顺滑
|
||||||
backTop() {
|
backTop() {
|
||||||
const that = this
|
const that = this
|
||||||
@@ -953,6 +859,10 @@ layout("/mobile/platform.html"){
|
|||||||
this.userList = data
|
this.userList = data
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
async getConfigData() {
|
||||||
|
const resp = await $.get('/platform/theRapyRecuperation/TheRapyConfig/findOne')
|
||||||
|
this.configData = resp.data
|
||||||
|
},
|
||||||
async toResult(loginname) {
|
async toResult(loginname) {
|
||||||
const res = await $.post('/platform/theRapyRecuperation/line/enroll/validSignUpInfo', {
|
const res = await $.post('/platform/theRapyRecuperation/line/enroll/validSignUpInfo', {
|
||||||
enroll: JSON.stringify({
|
enroll: JSON.stringify({
|
||||||
@@ -1022,6 +932,7 @@ layout("/mobile/platform.html"){
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
async created() {
|
async created() {
|
||||||
|
await this.getConfigData()
|
||||||
this.id = getQueryString('id') ? getQueryString('id') : ''
|
this.id = getQueryString('id') ? getQueryString('id') : ''
|
||||||
this.enrollId = getQueryString('enrollId') ? getQueryString('enrollId') : ''
|
this.enrollId = getQueryString('enrollId') ? getQueryString('enrollId') : ''
|
||||||
this.index = getQueryString('index') ? getQueryString('index') : ''
|
this.index = getQueryString('index') ? getQueryString('index') : ''
|
||||||
@@ -1044,7 +955,7 @@ layout("/mobile/platform.html"){
|
|||||||
})
|
})
|
||||||
}catch (e) {
|
}catch (e) {
|
||||||
this.isPdf = true
|
this.isPdf = true
|
||||||
document.addEventListener('click', (event) => this.handleClick(event))
|
//document.addEventListener('click', (event) => this.handleClick(event))
|
||||||
}
|
}
|
||||||
|
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
@@ -1055,8 +966,7 @@ layout("/mobile/platform.html"){
|
|||||||
window.addEventListener('scroll', this.scrollToTop)
|
window.addEventListener('scroll', this.scrollToTop)
|
||||||
},
|
},
|
||||||
destroyed() {
|
destroyed() {
|
||||||
window.removeEventListener('scroll', this.scrollToTop)
|
|
||||||
document.removeEventListener('click', (event) => this.handleClick(event))
|
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@@ -591,10 +591,12 @@ layout("/mobile/platform.html"){
|
|||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
pageBack() {
|
pageBack() {
|
||||||
if(this.fromUrlByMy !== 'find') {
|
window.removeEventListener('scroll', this.scrollToTop)
|
||||||
pjaxReplace('/platform/mobile/theRapyRecuperation/mobileLineListPage')
|
document.removeEventListener('click', this.handleClick)
|
||||||
} else {
|
if(['find', 'editDo'].includes(this.fromUrlByMy)) {
|
||||||
pjaxReplace('/platform/mobile/theRapyRecuperation/myRecuperation')
|
pjaxReplace('/platform/mobile/theRapyRecuperation/myRecuperation')
|
||||||
|
} else {
|
||||||
|
pjaxReplace('/platform/mobile/theRapyRecuperation/mobileLineListPage')
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
openRead() {
|
openRead() {
|
||||||
@@ -794,8 +796,11 @@ layout("/mobile/platform.html"){
|
|||||||
this.configData = resp.data
|
this.configData = resp.data
|
||||||
},
|
},
|
||||||
handleClick(event, classArray = [], imagesArray = []) {
|
handleClick(event, classArray = [], imagesArray = []) {
|
||||||
|
if(event == null) {
|
||||||
|
return
|
||||||
|
}
|
||||||
if (event.target.tagName === 'IMG' && event.target.className !== 'top_icon') {
|
if (event.target.tagName === 'IMG' && event.target.className !== 'top_icon') {
|
||||||
if(imagesArray.length > 0) {
|
if(classArray.length > 0) {
|
||||||
const index = classArray.indexOf(event.target.className)
|
const index = classArray.indexOf(event.target.className)
|
||||||
if(index !== -1) {
|
if(index !== -1) {
|
||||||
vant.ImagePreview({
|
vant.ImagePreview({
|
||||||
@@ -813,6 +818,7 @@ layout("/mobile/platform.html"){
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
readPDFPicture(pdf) {
|
readPDFPicture(pdf) {
|
||||||
|
const that = this
|
||||||
if(pdf != null) {
|
if(pdf != null) {
|
||||||
pdf.on("complete", function () {
|
pdf.on("complete", function () {
|
||||||
const imgDoc = document.querySelectorAll('img')
|
const imgDoc = document.querySelectorAll('img')
|
||||||
@@ -852,21 +858,18 @@ layout("/mobile/platform.html"){
|
|||||||
pdfh5 = new Pdfh5('#demo', {
|
pdfh5 = new Pdfh5('#demo', {
|
||||||
pdfurl: href,
|
pdfurl: href,
|
||||||
})
|
})
|
||||||
|
this.readPDFPicture(pdfh5)
|
||||||
})
|
})
|
||||||
}catch (e) {
|
}catch (e) {
|
||||||
this.isPdf = true
|
this.isPdf = true
|
||||||
document.addEventListener('click', (event) => this.handleClick(event))
|
//document.addEventListener('click', (event) => this.handleClick(event, [], []))
|
||||||
}
|
}
|
||||||
this.$nextTick(() => {
|
|
||||||
this.readPDFPicture(pdfh5)
|
|
||||||
})
|
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
window.addEventListener('scroll', this.scrollToTop)
|
window.addEventListener('scroll', this.scrollToTop)
|
||||||
},
|
},
|
||||||
destroyed() {
|
destroyed() {
|
||||||
window.removeEventListener('scroll', this.scrollToTop)
|
|
||||||
document.removeEventListener('click', (event) => this.handleClick(event))
|
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@@ -265,7 +265,7 @@ layout("/mobile/platform.html"){
|
|||||||
<span>{{o.baseName}}</span>
|
<span>{{o.baseName}}</span>
|
||||||
<div>
|
<div>
|
||||||
<van-tag color="#1867b0">{{o.regionalNature}}</van-tag>
|
<van-tag color="#1867b0">{{o.regionalNature}}</van-tag>
|
||||||
<van-tag color="#1867b0">{{o.lotName}}</van-tag>
|
<!--<van-tag color="#1867b0">{{o.lotName}}</van-tag>-->
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="desc_info">
|
<div class="desc_info">
|
||||||
|
|||||||
@@ -297,11 +297,11 @@ layout("/mobile/platform.html"){
|
|||||||
<div class="list-card" v-for="o in tableData">
|
<div class="list-card" v-for="o in tableData">
|
||||||
<div @click="findOne(o)" class="content">
|
<div @click="findOne(o)" class="content">
|
||||||
<van-image
|
<van-image
|
||||||
height="100"
|
height="92"
|
||||||
radius="8"
|
radius="8"
|
||||||
:src="CREATE_PREVIEW_URL(o.fileId)"
|
:src="CREATE_PREVIEW_URL(o.fileId)"
|
||||||
width="150"
|
width="130">
|
||||||
></van-image>
|
</van-image>
|
||||||
|
|
||||||
<div
|
<div
|
||||||
v-if="pageForm.theRapyRecuperationType != '2' && pageForm.theRapyRecuperationType != '3'"
|
v-if="pageForm.theRapyRecuperationType != '2' && pageForm.theRapyRecuperationType != '3'"
|
||||||
@@ -378,7 +378,7 @@ layout("/mobile/platform.html"){
|
|||||||
<span>{{o.baseName}}</span>
|
<span>{{o.baseName}}</span>
|
||||||
<div>
|
<div>
|
||||||
<van-tag color="#1867b0">{{o.regionalNature}}</van-tag>
|
<van-tag color="#1867b0">{{o.regionalNature}}</van-tag>
|
||||||
<van-tag color="#1867b0">{{o.lotName}}</van-tag>
|
<van-tag color="#1867b0">{{o.playDay}}天</van-tag>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="desc_info">
|
<div class="desc_info">
|
||||||
@@ -406,13 +406,12 @@ layout("/mobile/platform.html"){
|
|||||||
评 价
|
评 价
|
||||||
</van-button>
|
</van-button>
|
||||||
<van-button
|
<van-button
|
||||||
v-if="pageForm.theRapyRecuperationType != '2' && moment().unix() < moment(o.changeEndTime).unix()
|
v-if="editButtonShow(o)"
|
||||||
&& ![2715,2725,2735].includes(o.stateId)"
|
|
||||||
@click="edit(o)"
|
@click="edit(o)"
|
||||||
type="info"
|
type="info"
|
||||||
size="small"
|
size="small"
|
||||||
color="#1867b0"
|
color="#1867b0"
|
||||||
:disabled="o.isTakePartIn == true || getDisabled(o)"
|
:disabled="o.isTakePartIn == true || getDisabled(o) || o.hasLocked == true"
|
||||||
>
|
>
|
||||||
修 改
|
修 改
|
||||||
</van-button>
|
</van-button>
|
||||||
@@ -595,6 +594,16 @@ layout("/mobile/platform.html"){
|
|||||||
};
|
};
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
editButtonShow(o) {
|
||||||
|
const type = Number(this.pageForm.theRapyRecuperationType)
|
||||||
|
if(type === 2) {
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
let stateValid = ![2715,2725,2735].includes(o.stateId)
|
||||||
|
let lineValid = [0, 1].includes(type) && moment().unix() < moment(this.configData.implodeEndTime).unix()
|
||||||
|
let baseValid = [3].includes(type) && moment().unix() < moment(this.configData.fragmentEndTime).unix()
|
||||||
|
return stateValid && (lineValid || baseValid);
|
||||||
|
},
|
||||||
async openEvaluate(o) {
|
async openEvaluate(o) {
|
||||||
if (o.isTakePartIn === false) {
|
if (o.isTakePartIn === false) {
|
||||||
this.$modal.msg("参加后才能评价");
|
this.$modal.msg("参加后才能评价");
|
||||||
|
|||||||
+27
-24
@@ -153,12 +153,12 @@ layout("/layouts/platform.html"){
|
|||||||
<el-row :gutter="20">
|
<el-row :gutter="20">
|
||||||
<el-col :md="12" :sm="24" :xs="24">
|
<el-col :md="12" :sm="24" :xs="24">
|
||||||
<el-form-item label="目的地名称" prop="baseName">
|
<el-form-item label="目的地名称" prop="baseName">
|
||||||
<el-input maxlength="50" v-model="formData.baseName"></el-input>
|
<el-input maxlength="50" v-model="formData.baseName" placeholder="请输入目的地名称"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :md="12" :sm="24" :xs="24">
|
<el-col :md="12" :sm="24" :xs="24">
|
||||||
<el-form-item label="旅行社名称" prop="travelAgencyId">
|
<el-form-item label="旅行社名称" prop="travelAgencyId">
|
||||||
<el-select clearable filterable style="width: 100%" v-model="formData.travelAgencyId">
|
<el-select clearable filterable style="width: 100%" v-model="formData.travelAgencyId" placeholder="请选择旅行社名称">
|
||||||
<el-option :key="item.id"
|
<el-option :key="item.id"
|
||||||
:label="item.travelAgencyName+'('+ item.year +'年)'"
|
:label="item.travelAgencyName+'('+ item.year +'年)'"
|
||||||
:value="item.id"
|
:value="item.id"
|
||||||
@@ -169,18 +169,14 @@ layout("/layouts/platform.html"){
|
|||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-row :gutter="20">
|
<el-row :gutter="20">
|
||||||
<el-col :md="12" :sm="24" :xs="24">
|
<!--<el-col :md="12" :sm="24" :xs="24">
|
||||||
<el-form-item label="组织形式" prop="createMode">
|
<el-form-item label="组织形式" prop="createMode">
|
||||||
<el-radio-group size="small" v-model="formData.createMode">
|
<el-radio-group size="small" v-model="formData.createMode">
|
||||||
<el-radio :label="1" border>校工会组织</el-radio>
|
<el-radio :label="1" border>校工会组织</el-radio>
|
||||||
<el-radio :label="2" border>分工会组织</el-radio>
|
<el-radio :label="2" border>分工会组织</el-radio>
|
||||||
</el-radio-group>
|
</el-radio-group>
|
||||||
<!--<div class="text-primary">-->
|
|
||||||
<!-- <i class="el-icon-warning"></i>-->
|
|
||||||
<!-- 温馨提醒:校工会可以为基层工会创建线路,分工会自行选择并设置活动相关时间。-->
|
|
||||||
<!--</div>-->
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>-->
|
||||||
<el-col :md="12" :sm="24" :xs="24">
|
<el-col :md="12" :sm="24" :xs="24">
|
||||||
<el-form-item label="活动范围" prop="regionalNature">
|
<el-form-item label="活动范围" prop="regionalNature">
|
||||||
<el-radio-group size="small" v-model="formData.regionalNature">
|
<el-radio-group size="small" v-model="formData.regionalNature">
|
||||||
@@ -189,23 +185,27 @@ layout("/layouts/platform.html"){
|
|||||||
</el-radio-group>
|
</el-radio-group>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
|
||||||
|
|
||||||
<el-row :gutter="20">
|
|
||||||
<el-col :md="12" :sm="24" :xs="24">
|
<el-col :md="12" :sm="24" :xs="24">
|
||||||
<el-form-item label="标段时间" prop="lotId">
|
<el-form-item label="天数" prop="allowDay">
|
||||||
<!--<el-input clearable maxlength="50" v-model="formData.lotId"></el-input>-->
|
<!--<el-select clearable filterable style="width: 100%" v-model="formData.lotId"
|
||||||
<el-select clearable filterable style="width: 100%" v-model="formData.lotId"
|
|
||||||
@change="doBdModify">
|
@change="doBdModify">
|
||||||
<el-option :key="item"
|
<el-option :key="item"
|
||||||
:label="item.lotName"
|
:label="item.lotName"
|
||||||
:value="item.id"
|
:value="item.id"
|
||||||
v-for="item in modifyBdList"
|
v-for="item in modifyBdList"
|
||||||
></el-option>
|
></el-option>
|
||||||
|
</el-select>-->
|
||||||
|
<el-select clearable multiple filterable style="width: 100%" v-model="formData.allowDay" placeholder="请选择天数">
|
||||||
|
<el-option value="3">3天</el-option>
|
||||||
|
<el-option value="2">2天</el-option>
|
||||||
|
<el-option value="2.5">2.5天</el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :md="12" :sm="24" :xs="24">
|
</el-row>
|
||||||
|
|
||||||
|
<el-row :gutter="20">
|
||||||
|
<!--<el-col :md="12" :sm="24" :xs="24">
|
||||||
<el-form-item label="预计费用(元/人次)" prop="estimatedCost">
|
<el-form-item label="预计费用(元/人次)" prop="estimatedCost">
|
||||||
<el-select clearable filterable style="width: 100%" v-model="formData.estimatedCost">
|
<el-select clearable filterable style="width: 100%" v-model="formData.estimatedCost">
|
||||||
<el-option :key="item.id"
|
<el-option :key="item.id"
|
||||||
@@ -215,7 +215,7 @@ layout("/layouts/platform.html"){
|
|||||||
></el-option>
|
></el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>-->
|
||||||
</el-row>
|
</el-row>
|
||||||
|
|
||||||
<el-row :gutter="20">
|
<el-row :gutter="20">
|
||||||
@@ -223,7 +223,7 @@ layout("/layouts/platform.html"){
|
|||||||
<el-form-item label="周几入住" prop="weekIn">
|
<el-form-item label="周几入住" prop="weekIn">
|
||||||
<el-radio-group size="small" v-model="formData.weekIn" @input="weekChange">
|
<el-radio-group size="small" v-model="formData.weekIn" @input="weekChange">
|
||||||
<el-radio :label="1" border>不限</el-radio>
|
<el-radio :label="1" border>不限</el-radio>
|
||||||
<el-radio :label="2" border>读取标段配置</el-radio>
|
<el-radio :label="2" border>自定义</el-radio>
|
||||||
</el-radio-group>
|
</el-radio-group>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
@@ -231,6 +231,7 @@ layout("/layouts/platform.html"){
|
|||||||
<el-form-item label="入住时间" prop="weekCheckIn">
|
<el-form-item label="入住时间" prop="weekCheckIn">
|
||||||
<el-select clearable filterable multiple
|
<el-select clearable filterable multiple
|
||||||
:disabled="formData.weekIn === 1"
|
:disabled="formData.weekIn === 1"
|
||||||
|
placeholder="请选择入住时间"
|
||||||
style="width: 100%" v-model="formData.weekCheckIn">
|
style="width: 100%" v-model="formData.weekCheckIn">
|
||||||
<el-option label="周一" :value="1"></el-option>
|
<el-option label="周一" :value="1"></el-option>
|
||||||
<el-option label="周二" :value="2"></el-option>
|
<el-option label="周二" :value="2"></el-option>
|
||||||
@@ -247,17 +248,17 @@ layout("/layouts/platform.html"){
|
|||||||
<el-row :gutter="20">
|
<el-row :gutter="20">
|
||||||
<el-col :md="12" :sm="24" :xs="24">
|
<el-col :md="12" :sm="24" :xs="24">
|
||||||
<el-form-item label="目的地联系人" prop="baseContactPerson">
|
<el-form-item label="目的地联系人" prop="baseContactPerson">
|
||||||
<el-input clearable maxlength="20" v-model="formData.baseContactPerson"></el-input>
|
<el-input clearable maxlength="20" v-model="formData.baseContactPerson" placeholder="请输入目的地联系人"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :md="12" :sm="24" :xs="24">
|
<el-col :md="12" :sm="24" :xs="24">
|
||||||
<el-form-item label="联系人电话" prop="baseContactNumber">
|
<el-form-item label="联系人电话" prop="baseContactNumber">
|
||||||
<el-input clearable maxlength="20" v-model="formData.baseContactNumber"></el-input>
|
<el-input clearable maxlength="20" v-model="formData.baseContactNumber" placeholder="请输入联系人电话"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
|
|
||||||
<template>
|
<!--<template>
|
||||||
<el-row :gutter="20">
|
<el-row :gutter="20">
|
||||||
<el-col :md="12" :sm="24" :xs="24">
|
<el-col :md="12" :sm="24" :xs="24">
|
||||||
<el-form-item label="报名开始时间" prop="signUpStartTime">
|
<el-form-item label="报名开始时间" prop="signUpStartTime">
|
||||||
@@ -333,7 +334,7 @@ layout("/layouts/platform.html"){
|
|||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
</template>
|
</template>-->
|
||||||
|
|
||||||
<el-row :gutter="20">
|
<el-row :gutter="20">
|
||||||
<el-col :md="24" :sm="24" :xs="24">
|
<el-col :md="24" :sm="24" :xs="24">
|
||||||
@@ -508,13 +509,14 @@ layout("/layouts/platform.html"){
|
|||||||
signUpEndTime: '',
|
signUpEndTime: '',
|
||||||
changeEndTime: '',
|
changeEndTime: '',
|
||||||
files: [],
|
files: [],
|
||||||
createMode: '',
|
createMode: 1,
|
||||||
estimatedCost: '',
|
estimatedCost: '',
|
||||||
activityStartTime: '',
|
activityStartTime: '',
|
||||||
activityEndTime: '',
|
activityEndTime: '',
|
||||||
baseContactPerson: '',
|
baseContactPerson: '',
|
||||||
baseContactNumber: '',
|
baseContactNumber: '',
|
||||||
weekIn: 1,
|
weekIn: 1,
|
||||||
|
allowDay: [],
|
||||||
},
|
},
|
||||||
tableColumns: [
|
tableColumns: [
|
||||||
{label: '年度', prop: 'year', sortable: true},
|
{label: '年度', prop: 'year', sortable: true},
|
||||||
@@ -556,6 +558,7 @@ layout("/layouts/platform.html"){
|
|||||||
trigger: ['change', 'blur']
|
trigger: ['change', 'blur']
|
||||||
}],
|
}],
|
||||||
estimatedCost: [{required: true, message: '请输入预计费用', trigger: ['change', 'blur']}],
|
estimatedCost: [{required: true, message: '请输入预计费用', trigger: ['change', 'blur']}],
|
||||||
|
allowDay: [{required: true, message: '请选择天数', trigger: ['change', 'blur']}],
|
||||||
},
|
},
|
||||||
//目的地导入
|
//目的地导入
|
||||||
importVisible: false,
|
importVisible: false,
|
||||||
@@ -565,7 +568,7 @@ layout("/layouts/platform.html"){
|
|||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
weekChange(val) {
|
weekChange(val) {
|
||||||
if (val === 1) {
|
/*if (val === 1) {
|
||||||
this.formData.weekCheckIn = []
|
this.formData.weekCheckIn = []
|
||||||
this.$forceUpdate()
|
this.$forceUpdate()
|
||||||
} else {
|
} else {
|
||||||
@@ -576,7 +579,7 @@ layout("/layouts/platform.html"){
|
|||||||
}
|
}
|
||||||
const lot = this.modifyBdList.find(o => o.id === this.formData.lotId)
|
const lot = this.modifyBdList.find(o => o.id === this.formData.lotId)
|
||||||
this.formData.weekCheckIn = lot ? lot.weekCheckIn : []
|
this.formData.weekCheckIn = lot ? lot.weekCheckIn : []
|
||||||
}
|
}*/
|
||||||
},
|
},
|
||||||
async doSearch() {
|
async doSearch() {
|
||||||
this.formData.year = this.pageForm.year;
|
this.formData.year = this.pageForm.year;
|
||||||
|
|||||||
+100
-53
@@ -50,10 +50,10 @@ layout("/layouts/platform.html"){
|
|||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item label="省外最多成团人数" prop="outsideQuota">
|
<!--<el-form-item label="省外最多成团人数" prop="outsideQuota">
|
||||||
<el-input v-model.number="formData.outsideQuota"
|
<el-input v-model.number="formData.outsideQuota"
|
||||||
placeholder="请输入每条省外线路最多成团人数"></el-input>
|
placeholder="请输入每条省外线路最多成团人数"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>-->
|
||||||
|
|
||||||
|
|
||||||
<el-form-item label="省外名额分配比例" prop="outsideQuotaProportion">
|
<el-form-item label="省外名额分配比例" prop="outsideQuotaProportion">
|
||||||
@@ -62,7 +62,6 @@ layout("/layouts/platform.html"){
|
|||||||
</el-input>
|
</el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
|
|
||||||
<el-form-item label="省外几年去一次" prop="outsideNumber">
|
<el-form-item label="省外几年去一次" prop="outsideNumber">
|
||||||
<el-input max="100"
|
<el-input max="100"
|
||||||
placeholder="请输入省外几年去一次"
|
placeholder="请输入省外几年去一次"
|
||||||
@@ -75,23 +74,74 @@ layout("/layouts/platform.html"){
|
|||||||
v-model.number="formData.travelFrequency"></el-input>
|
v-model.number="formData.travelFrequency"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item label="最少教工人数" prop="groupNumber">
|
<el-form-item label="常规团最少成团人数" prop="conventionalCount">
|
||||||
|
<el-input max="100" placeholder="请输入常规团最少成团人数(不包含家属)"
|
||||||
|
v-model.number="formData.conventionalCount"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
|
||||||
|
<el-form-item label="精品团最少成团人数" prop="boutiqueCount">
|
||||||
|
<el-input max="100" placeholder="请输入精品团最少成团人数(不包含家属)"
|
||||||
|
v-model.number="formData.boutiqueCount"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
|
||||||
|
<el-form-item label="分段式最少成团人数" prop="fragmentCount">
|
||||||
|
<el-input max="100" placeholder="请输入分段式最少成团人数(不包含家属)"
|
||||||
|
v-model.number="formData.fragmentCount"></el-input>
|
||||||
|
</el-form-item>
|
||||||
|
|
||||||
|
<el-form-item label="集中疗休养报名时间" prop="implodeTimes">
|
||||||
|
<el-date-picker
|
||||||
|
style="width: 100%"
|
||||||
|
v-model="formData.implodeTimes"
|
||||||
|
type="datetimerange"
|
||||||
|
range-separator="至"
|
||||||
|
value-format="yyyy-MM-dd HH:mm:ss"
|
||||||
|
start-placeholder="集中疗休养报名开始日期"
|
||||||
|
end-placeholder="集中疗休养报名结束日期">
|
||||||
|
</el-date-picker>
|
||||||
|
</el-form-item>
|
||||||
|
|
||||||
|
<el-form-item label="分段疗休养报名时间" prop="fragmentTimes">
|
||||||
|
<el-date-picker
|
||||||
|
style="width: 100%"
|
||||||
|
v-model="formData.fragmentTimes"
|
||||||
|
type="datetimerange"
|
||||||
|
range-separator="至"
|
||||||
|
value-format="yyyy-MM-dd HH:mm:ss"
|
||||||
|
start-placeholder="分段疗休养报名开始日期"
|
||||||
|
end-placeholder="分段疗休养报名结束日期">
|
||||||
|
</el-date-picker>
|
||||||
|
</el-form-item>
|
||||||
|
|
||||||
|
<el-form-item label="分段疗休养活动时间" prop="fragmentPlayTimes">
|
||||||
|
<el-date-picker
|
||||||
|
style="width: 100%"
|
||||||
|
v-model="formData.fragmentPlayTimes"
|
||||||
|
type="datetimerange"
|
||||||
|
range-separator="至"
|
||||||
|
value-format="yyyy-MM-dd HH:mm:ss"
|
||||||
|
start-placeholder="分段疗休养活动开始日期"
|
||||||
|
end-placeholder="分段疗休养活动结束日期">
|
||||||
|
</el-date-picker>
|
||||||
|
</el-form-item>
|
||||||
|
|
||||||
|
<!--<el-form-item label="最少教工人数" prop="groupNumber">
|
||||||
<el-input max="100"
|
<el-input max="100"
|
||||||
placeholder="请输入最少教工人数"
|
placeholder="请输入最少教工人数"
|
||||||
v-model.number="formData.groupNumber"></el-input>
|
v-model.number="formData.groupNumber"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>-->
|
||||||
|
|
||||||
<el-form-item label="不可取消修改天数" prop="modifyDays">
|
<!--<el-form-item label="不可取消修改天数" prop="modifyDays">
|
||||||
<el-input max="100"
|
<el-input max="100"
|
||||||
placeholder="请输入不可取消修改天数"
|
placeholder="请输入不可取消修改天数"
|
||||||
v-model.number="formData.modifyDays"></el-input>
|
v-model.number="formData.modifyDays"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>-->
|
||||||
|
|
||||||
<el-form-item label="可以修改几次" prop="modifyNumber">
|
<!--<el-form-item label="可以修改几次" prop="modifyNumber">
|
||||||
<el-input max="100"
|
<el-input max="100"
|
||||||
placeholder="请输入可以修改几次"
|
placeholder="请输入可以修改几次"
|
||||||
v-model.number="formData.modifyNumber"></el-input>
|
v-model.number="formData.modifyNumber"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>-->
|
||||||
|
|
||||||
<el-form-item label="省内线路是否需要审核" prop="isSnLine">
|
<el-form-item label="省内线路是否需要审核" prop="isSnLine">
|
||||||
<el-radio-group v-model="formData.isSnLine">
|
<el-radio-group v-model="formData.isSnLine">
|
||||||
@@ -107,11 +157,11 @@ layout("/layouts/platform.html"){
|
|||||||
</el-radio-group>
|
</el-radio-group>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item label="全批次最多报名人数" prop="allLineSignUpNumber">
|
<!--<el-form-item label="全批次最多报名人数" prop="allLineSignUpNumber">
|
||||||
<el-input max="100"
|
<el-input max="100"
|
||||||
placeholder="请输入全批次最多报名人数"
|
placeholder="请输入全批次最多报名人数"
|
||||||
v-model.number="formData.allLineSignUpNumber"></el-input>
|
v-model.number="formData.allLineSignUpNumber"></el-input>
|
||||||
</el-form-item>
|
</el-form-item>-->
|
||||||
|
|
||||||
<el-form-item label="省内起始年份" prop="provinceStartYear">
|
<el-form-item label="省内起始年份" prop="provinceStartYear">
|
||||||
<el-input max="100"
|
<el-input max="100"
|
||||||
@@ -203,7 +253,7 @@ layout("/layouts/platform.html"){
|
|||||||
<!--# } #-->
|
<!--# } #-->
|
||||||
</el-table>
|
</el-table>
|
||||||
|
|
||||||
<vi-title title="服务须知"></vi-title>
|
<vi-title title="服务须知" class="mt20"></vi-title>
|
||||||
<el-form-item label="疗休养服务须知" prop="notice">
|
<el-form-item label="疗休养服务须知" prop="notice">
|
||||||
<text-editor v-model="formData.notice"></text-editor>
|
<text-editor v-model="formData.notice"></text-editor>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@@ -289,51 +339,24 @@ layout("/layouts/platform.html"){
|
|||||||
configName: [{required: true, message: '请填写配置名称', trigger: ['blur', 'change']}],
|
configName: [{required: true, message: '请填写配置名称', trigger: ['blur', 'change']}],
|
||||||
isSnLine: [{required: true, message: '请选择省内线路是否需要审核', trigger: ['blur', 'change']}],
|
isSnLine: [{required: true, message: '请选择省内线路是否需要审核', trigger: ['blur', 'change']}],
|
||||||
isSwLine: [{required: true, message: '请选择省外线路是否需要审核', trigger: ['blur', 'change']}],
|
isSwLine: [{required: true, message: '请选择省外线路是否需要审核', trigger: ['blur', 'change']}],
|
||||||
outsideQuota: [{
|
outsideQuota: [{required: true, message: '请输入每条省外线路最多成团人数', trigger: ['blur', 'change']}],
|
||||||
required: true,
|
outsideNumber: [{required: true, message: '请填写省外几年去一次', trigger: ['blur', 'change']}],
|
||||||
message: '请输入每条省外线路最多成团人数',
|
travelFrequency: [{required: true, message: '请填写每年旅行频率', trigger: ['blur', 'change']}],
|
||||||
trigger: ['blur', 'change']
|
groupNumber: [{required: true, message: '请填写最少教工人数', trigger: ['blur', 'change']}],
|
||||||
}],
|
modifyDays: [{required: true, message: '请填写不可取消修改天数', trigger: ['blur', 'change']}],
|
||||||
outsideNumber: [{
|
modifyNumber: [{required: true, message: '请填写可以修改几次', trigger: ['blur', 'change']}],
|
||||||
required: true,
|
outsideQuotaProportion: [{required: true, message: '请填写比例', trigger: ['blur', 'change']}],
|
||||||
message: '请填写省外几年去一次',
|
allLineSignUpNumber: [{required: true, message: '请输入全批次最多报名人数', trigger: ['blur', 'change']}],
|
||||||
trigger: ['blur', 'change']
|
|
||||||
}],
|
|
||||||
travelFrequency: [{
|
|
||||||
required: true,
|
|
||||||
message: '请填写每年旅行频率',
|
|
||||||
trigger: ['blur', 'change']
|
|
||||||
}],
|
|
||||||
groupNumber: [{
|
|
||||||
required: true,
|
|
||||||
message: '请填写最少教工人数',
|
|
||||||
trigger: ['blur', 'change']
|
|
||||||
}],
|
|
||||||
modifyDays: [{
|
|
||||||
required: true,
|
|
||||||
message: '请填写不可取消修改天数',
|
|
||||||
trigger: ['blur', 'change']
|
|
||||||
}],
|
|
||||||
modifyNumber: [{
|
|
||||||
required: true,
|
|
||||||
message: '请填写可以修改几次',
|
|
||||||
trigger: ['blur', 'change']
|
|
||||||
}],
|
|
||||||
outsideQuotaProportion: [{
|
|
||||||
required: true,
|
|
||||||
message: '请填写比例',
|
|
||||||
trigger: ['blur', 'change']
|
|
||||||
}],
|
|
||||||
allLineSignUpNumber: [{
|
|
||||||
required: true,
|
|
||||||
message: '请输入全批次最多报名人数',
|
|
||||||
trigger: ['blur', 'change']
|
|
||||||
}],
|
|
||||||
notice: [{required: true, message: '请输入详细内容', trigger: ['change', 'blur']}],
|
notice: [{required: true, message: '请输入详细内容', trigger: ['change', 'blur']}],
|
||||||
provinceStartYear: [{required: true, message: '请输入省内起始年份', trigger: ['change', 'blur']}],
|
provinceStartYear: [{required: true, message: '请输入省内起始年份', trigger: ['change', 'blur']}],
|
||||||
bedInfo: [{required: true, message: '请选择床位信息', trigger: ['change', 'blur']}],
|
bedInfo: [{required: true, message: '请选择床位信息', trigger: ['change', 'blur']}],
|
||||||
familyInfo: [{required: true, message: '请选择家属信息', trigger: ['change', 'blur']}],
|
familyInfo: [{required: true, message: '请选择家属信息', trigger: ['change', 'blur']}],
|
||||||
|
conventionalCount: [{required: true, message: '请输入常规团最少成团人数', trigger: ['change', 'blur']}],
|
||||||
|
boutiqueCount: [{required: true, message: '请输入精品团最少成团人数', trigger: ['change', 'blur']}],
|
||||||
|
fragmentCount: [{required: true, message: '请输入分段式最少成团人数', trigger: ['change', 'blur']}],
|
||||||
|
implodeTimes: [{required: true, message: '请选择集中疗休养报名时间', trigger: ['change', 'blur']}],
|
||||||
|
fragmentTimes: [{required: true, message: '请选择分段疗休养报名时间', trigger: ['change', 'blur']}],
|
||||||
|
fragmentPlayTimes: [{required: true, message: '请选择分段疗休养活动时间', trigger: ['change', 'blur']}],
|
||||||
},
|
},
|
||||||
marks: [],
|
marks: [],
|
||||||
lotDeleteList: [],
|
lotDeleteList: [],
|
||||||
@@ -390,6 +413,21 @@ layout("/layouts/platform.html"){
|
|||||||
})
|
})
|
||||||
const cloneData = clone(this.formData)
|
const cloneData = clone(this.formData)
|
||||||
|
|
||||||
|
if(this.formData.implodeTimes && this.formData.implodeTimes.length > 0) {
|
||||||
|
cloneData.implodeStartTime = this.formData.implodeTimes[0]
|
||||||
|
cloneData.implodeEndTime = this.formData.implodeTimes[1]
|
||||||
|
}
|
||||||
|
|
||||||
|
if(this.formData.fragmentTimes && this.formData.fragmentTimes.length > 0) {
|
||||||
|
cloneData.fragmentStartTime = this.formData.fragmentTimes[0]
|
||||||
|
cloneData.fragmentEndTime = this.formData.fragmentTimes[1]
|
||||||
|
}
|
||||||
|
|
||||||
|
if(this.formData.fragmentPlayTimes && this.formData.fragmentPlayTimes.length > 0) {
|
||||||
|
cloneData.fragmentPlayStartTime = this.formData.fragmentPlayTimes[0]
|
||||||
|
cloneData.fragmentPlayEndTime = this.formData.fragmentPlayTimes[1]
|
||||||
|
}
|
||||||
|
|
||||||
if (this.formData.files && this.formData.files.length > 0) {
|
if (this.formData.files && this.formData.files.length > 0) {
|
||||||
cloneData.files = JSON.stringify(this.formData.files)
|
cloneData.files = JSON.stringify(this.formData.files)
|
||||||
}
|
}
|
||||||
@@ -417,6 +455,15 @@ layout("/layouts/platform.html"){
|
|||||||
if (data.outsideQuotaProportion) {
|
if (data.outsideQuotaProportion) {
|
||||||
data.outsideQuotaProportion = data.outsideQuotaProportion * 1000 / 10
|
data.outsideQuotaProportion = data.outsideQuotaProportion * 1000 / 10
|
||||||
}
|
}
|
||||||
|
if(data.implodeStartTime && data.implodeEndTime) {
|
||||||
|
data.implodeTimes = [data.implodeStartTime, data.implodeEndTime]
|
||||||
|
}
|
||||||
|
if(data.fragmentStartTime && data.fragmentEndTime) {
|
||||||
|
data.fragmentTimes = [data.fragmentStartTime, data.fragmentEndTime]
|
||||||
|
}
|
||||||
|
if(data.fragmentPlayStartTime && data.fragmentPlayEndTime) {
|
||||||
|
data.fragmentPlayTimes = [data.fragmentPlayStartTime, data.fragmentPlayEndTime]
|
||||||
|
}
|
||||||
if (!data.lots) {
|
if (!data.lots) {
|
||||||
data.lots = []
|
data.lots = []
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user