353 lines
10 KiB
JavaScript
353 lines
10 KiB
JavaScript
|
// pages/educations-add/index.js
|
|||
|
const app = getApp()
|
|||
|
Page({
|
|||
|
|
|||
|
/**
|
|||
|
* 页面的初始数据
|
|||
|
*/
|
|||
|
data: {
|
|||
|
loadShow:false,
|
|||
|
loginName:'',
|
|||
|
userName:'',
|
|||
|
deptId:'',
|
|||
|
projectName:'',
|
|||
|
projectId:'',
|
|||
|
//参数
|
|||
|
fileDataList:[],
|
|||
|
educationTypeList:[],
|
|||
|
cooperationTeamList:[],
|
|||
|
trainingType:'',
|
|||
|
trainingStartTime:'',
|
|||
|
trainingEndTime:'',
|
|||
|
|
|||
|
trainingStartTime2:'',
|
|||
|
trainingEndTime2:'',
|
|||
|
|
|||
|
trainingContent:'',
|
|||
|
collaborateRanksId:'',
|
|||
|
collaborateRanksName:'',
|
|||
|
attendNumber:'',
|
|||
|
activeName:'',
|
|||
|
activeIndex:'',
|
|||
|
// defaultStartTime:"",
|
|||
|
// defaultEndTime:"",
|
|||
|
maxDate:new Date(2100,1,1).getTime(),
|
|||
|
|
|||
|
},
|
|||
|
|
|||
|
//选择培训类型
|
|||
|
onSelectEducationType(e){
|
|||
|
this.setData({
|
|||
|
trainingType:e.detail.id
|
|||
|
})
|
|||
|
if(e.detail.id == 4) {
|
|||
|
this.setData({
|
|||
|
trainingStartTime:this.dateFormat("yyyy-MM-dd",new Date()),
|
|||
|
trainingStartTime2:new Date().getTime(),
|
|||
|
trainingEndTime:this.addDay(this.dateFormat("yyyy-MM-dd",new Date()),8),
|
|||
|
trainingEndTime2:new Date(this.addDay(this.dateFormat("yyyy-MM-dd",new Date()),8)).getTime()
|
|||
|
})
|
|||
|
} else {
|
|||
|
this.setData({
|
|||
|
trainingStartTime:this.dateFormat("yyyy-MM-dd",new Date()),
|
|||
|
trainingStartTime2:new Date().getTime(),
|
|||
|
trainingEndTime:this.dateFormat("yyyy-MM-dd",new Date()),
|
|||
|
trainingEndTime2:new Date().getTime()
|
|||
|
})
|
|||
|
}
|
|||
|
},
|
|||
|
//培训开始时间
|
|||
|
onStartTime(e){
|
|||
|
var that = this
|
|||
|
that.setData({
|
|||
|
trainingStartTime:e.detail,
|
|||
|
trainingStartTime2:new Date(e.detail).getTime()
|
|||
|
})
|
|||
|
let trainingEndTime = e.detail
|
|||
|
let trainingEndTime2 = new Date(e.detail).getTime()
|
|||
|
if(that.data.trainingType == 4) {
|
|||
|
trainingEndTime = that.addDay(e.detail,8)
|
|||
|
trainingEndTime2 = new Date(that.addDay(e.detail,8)).getTime()
|
|||
|
}
|
|||
|
that.setData({
|
|||
|
trainingEndTime:trainingEndTime,
|
|||
|
trainingEndTime2 :trainingEndTime2
|
|||
|
})
|
|||
|
|
|||
|
},
|
|||
|
//培训结束时间
|
|||
|
onEndTime(e){
|
|||
|
this.setData({
|
|||
|
trainingEndTime:e.detail
|
|||
|
})
|
|||
|
},
|
|||
|
//培训内容
|
|||
|
onInputContent(e){
|
|||
|
this.setData({
|
|||
|
trainingContent:e.detail.value
|
|||
|
})
|
|||
|
},
|
|||
|
//协作队伍
|
|||
|
onCooperationTeam(e){
|
|||
|
let collaborateRanksId = '';
|
|||
|
let collaborateRanksName = '';
|
|||
|
for(let i = 0;i<e.detail.length;i++){
|
|||
|
collaborateRanksId += e.detail[i].id+ ","
|
|||
|
collaborateRanksName += e.detail[i].text+ ","
|
|||
|
}
|
|||
|
if (collaborateRanksId.length > 0) {
|
|||
|
collaborateRanksId = collaborateRanksId.substr(0, collaborateRanksId.length - 1);
|
|||
|
}if (collaborateRanksName.length > 0) {
|
|||
|
collaborateRanksName = collaborateRanksName.substr(0, collaborateRanksName.length - 1);
|
|||
|
}
|
|||
|
|
|||
|
this.setData({
|
|||
|
collaborateRanksId:collaborateRanksId,
|
|||
|
collaborateRanksName:collaborateRanksName,
|
|||
|
})
|
|||
|
},
|
|||
|
//参与人数
|
|||
|
onInputNumber(e){
|
|||
|
this.setData({
|
|||
|
attendNumber:e.detail.value
|
|||
|
})
|
|||
|
},
|
|||
|
|
|||
|
onClickShow() {
|
|||
|
this.setData({ loadShow: true });
|
|||
|
},
|
|||
|
|
|||
|
onClickHide() {
|
|||
|
this.setData({ loadShow: false });
|
|||
|
},
|
|||
|
|
|||
|
/**
|
|||
|
* 生命周期函数--监听页面加载
|
|||
|
*/
|
|||
|
onLoad(options) {
|
|||
|
var that = this;
|
|||
|
//获取缓存数据
|
|||
|
wx.getStorage({
|
|||
|
key: 'userinfo',
|
|||
|
success:function(res){
|
|||
|
let educationTypeList = [{text:'三级安全教育',id:4},{text:'班前讲话',id:5},{text:'专项培训',id:3},{text:'应急演练',id:6}];
|
|||
|
let activeName;
|
|||
|
let activeIndex;
|
|||
|
let trainingType;
|
|||
|
let trainingStartTime = that.getNowDate()
|
|||
|
let trainingEndTime;
|
|||
|
for(let i = 0;i<educationTypeList.length;i++){
|
|||
|
if(options.activeState == educationTypeList[i].id){
|
|||
|
activeName = educationTypeList[i].text;
|
|||
|
activeIndex = i;
|
|||
|
trainingType = educationTypeList[i].id;
|
|||
|
break;
|
|||
|
}
|
|||
|
}
|
|||
|
if(trainingType == 4) {
|
|||
|
trainingEndTime = that.addDay(that.dateFormat("yyyy-MM-dd",new Date()),8)
|
|||
|
|
|||
|
} else {
|
|||
|
trainingEndTime = that.getNowDate()
|
|||
|
}
|
|||
|
that.setData({
|
|||
|
loginName:res.data.loginName,
|
|||
|
userName:res.data.userName,
|
|||
|
deptId:res.data.deptId,
|
|||
|
projectId:options.projectId,
|
|||
|
projectName:options.projectName,
|
|||
|
activeName:activeName,
|
|||
|
activeIndex:activeIndex,
|
|||
|
educationTypeList:educationTypeList,
|
|||
|
trainingType:trainingType,
|
|||
|
trainingStartTime:trainingStartTime,
|
|||
|
trainingStartTime2:new Date(trainingStartTime).getTime(),
|
|||
|
trainingEndTime:trainingEndTime,
|
|||
|
trainingEndTime2:new Date(trainingEndTime).getTime()
|
|||
|
})
|
|||
|
|
|||
|
that.getCollaborativeTeam();
|
|||
|
}
|
|||
|
})
|
|||
|
},
|
|||
|
|
|||
|
/**
|
|||
|
* 获取当前年月日
|
|||
|
*/
|
|||
|
getNowDate(){
|
|||
|
var date = new Date();
|
|||
|
var year = date.getFullYear();
|
|||
|
var month = date.getMonth() + 1;
|
|||
|
var day = date.getDate();
|
|||
|
month = (month > 9) ? month : ("0" + month);
|
|||
|
day = (day < 10) ? ("0" + day) : day;
|
|||
|
var today = year + "-" + month + "-" + day;
|
|||
|
console.log(today);
|
|||
|
return today;
|
|||
|
},
|
|||
|
|
|||
|
addDay(datetime, days) {
|
|||
|
var old_time = new Date(datetime.replace(/-/g, "/")); //替换字符,js不认2013-01-31,只认2013/01/31
|
|||
|
var fd = new Date(old_time.valueOf() + days * 24 * 60 * 60 * 1000); //日期加上指定的天数
|
|||
|
var new_time = fd.getFullYear() + "-";
|
|||
|
var month = fd.getMonth() + 1;
|
|||
|
if (month >= 10) {
|
|||
|
new_time += month + "-";
|
|||
|
} else {
|
|||
|
//在小于10的月份上补0
|
|||
|
new_time += "0" + month + "-";
|
|||
|
}
|
|||
|
if (fd.getDate() >= 10) {
|
|||
|
new_time += fd.getDate();
|
|||
|
} else {
|
|||
|
//在小于10的日期上补0
|
|||
|
new_time += "0" + fd.getDate();
|
|||
|
}
|
|||
|
return new_time; //输出格式:2013-01-02
|
|||
|
},
|
|||
|
|
|||
|
dateFormat(fmt, date) {
|
|||
|
let ret;
|
|||
|
const opt = {
|
|||
|
'y+': date.getFullYear().toString(), // 年
|
|||
|
'M+': (date.getMonth() + 1).toString(), // 月
|
|||
|
'd+': date.getDate().toString(), // 日
|
|||
|
'H+': date.getHours().toString(), // 时
|
|||
|
'm+': date.getMinutes().toString(), // 分
|
|||
|
's+': date.getSeconds().toString(), // 秒
|
|||
|
// 有其他格式化字符需求可以继续添加,必须转化成字符串
|
|||
|
};
|
|||
|
for (let k in opt) {
|
|||
|
ret = new RegExp('(' + k + ')').exec(fmt);
|
|||
|
if (ret) {
|
|||
|
fmt = fmt.replace(ret[1], ret[1].length == 1 ? opt[k] : opt[k].padStart(ret[1].length, '0'));
|
|||
|
}
|
|||
|
}
|
|||
|
return fmt;
|
|||
|
},
|
|||
|
|
|||
|
|
|||
|
/**
|
|||
|
* 协助队伍
|
|||
|
*/
|
|||
|
getCollaborativeTeam(){
|
|||
|
var that = this;
|
|||
|
wx.request({
|
|||
|
url: app.globalData.reqUrl+'/weixin/training/getCollaborativeTeam',
|
|||
|
data:{
|
|||
|
"projectId":this.data.projectId,
|
|||
|
},
|
|||
|
method:"get",
|
|||
|
success:function(res){
|
|||
|
let array = [];
|
|||
|
for(let i =0;i<res.data.length;i++){
|
|||
|
if(array.length <= 0){
|
|||
|
array.push({
|
|||
|
"id":res.data[i].unitId,
|
|||
|
"text":res.data[i].uninName,
|
|||
|
"type":false
|
|||
|
})
|
|||
|
}else{
|
|||
|
if(!array.some(item1=>item1.id == res.data[i].unitId)){
|
|||
|
array.push({
|
|||
|
"id":res.data[i].unitId,
|
|||
|
"text":res.data[i].uninName,
|
|||
|
"type":false
|
|||
|
})
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
that.setData({
|
|||
|
cooperationTeamList:array
|
|||
|
})
|
|||
|
}
|
|||
|
})
|
|||
|
},
|
|||
|
|
|||
|
onImagesArr(e){
|
|||
|
this.setData({fileDataList:[]});
|
|||
|
let fileDataList = [];
|
|||
|
for(let i = 0;i<e.detail.length;i++){
|
|||
|
wx.uploadFile({
|
|||
|
//图片上传地址
|
|||
|
url: app.globalData.reqUrl+'/weixin/security/fileUpload',
|
|||
|
filePath: e.detail[i],
|
|||
|
name: 'file',
|
|||
|
header: {
|
|||
|
"Content-Type": "application/x-www-form-urlencoded;charset=UTF-8"
|
|||
|
},
|
|||
|
formData: { user: 'test' },
|
|||
|
success:res => {
|
|||
|
let data = JSON.parse(res.data);
|
|||
|
fileDataList.push(data.url);
|
|||
|
},
|
|||
|
});
|
|||
|
}
|
|||
|
this.setData({ fileDataList:fileDataList});
|
|||
|
},
|
|||
|
|
|||
|
add:function(){
|
|||
|
//判断值是否为空
|
|||
|
if(this.data.trainingType == '' || this.data.trainingType == undefined){
|
|||
|
app.toast("请选择培训类型");
|
|||
|
return;
|
|||
|
}else if(this.data.trainingStartTime == '' || this.data.trainingStartTime == undefined){
|
|||
|
app.toast("请选择培训开始时间");
|
|||
|
return;
|
|||
|
}else if(this.data.trainingEndTime == '' || this.data.trainingEndTime == undefined){
|
|||
|
app.toast("请选择培训结束时间");
|
|||
|
return;
|
|||
|
}else if(this.data.trainingContent == '' || this.data.trainingContent == undefined){
|
|||
|
app.toast("请填写培训内容");
|
|||
|
return;
|
|||
|
}else if(this.data.collaborateRanksId == '' || this.data.collaborateRanksId == undefined){
|
|||
|
app.toast("请选择协作队伍");
|
|||
|
return;
|
|||
|
}else if(this.data.attendNumber == '' || this.data.attendNumber == undefined){
|
|||
|
app.toast("请选择参加人数");
|
|||
|
return;
|
|||
|
}
|
|||
|
|
|||
|
wx.request({
|
|||
|
header: {
|
|||
|
'content-type': 'application/x-www-form-urlencoded'
|
|||
|
},
|
|||
|
url:app.globalData.reqUrl+'/weixin/training/addTrainingData',
|
|||
|
data:{
|
|||
|
projectId:this.data.projectId,
|
|||
|
projectName:this.data.projectName,
|
|||
|
trainingType:this.data.trainingType,
|
|||
|
trainingStartTime:this.data.trainingStartTime,
|
|||
|
trainingEndTime:this.data.trainingEndTime,
|
|||
|
trainingContent:this.data.trainingContent,
|
|||
|
collaborateRanksId:this.data.collaborateRanksId,
|
|||
|
collaborateRanksName:this.data.collaborateRanksName,
|
|||
|
attendNumber:this.data.attendNumber,
|
|||
|
createUser:this.data.loginName,
|
|||
|
fileDataList:JSON.stringify(this.data.fileDataList)
|
|||
|
},
|
|||
|
method:"POST",
|
|||
|
success:function(res){
|
|||
|
if(res.data.code == 0){
|
|||
|
wx.redirectTo({
|
|||
|
url: '../educations-list/index',
|
|||
|
})
|
|||
|
}else{
|
|||
|
app.toast("添加失败");
|
|||
|
return;
|
|||
|
}
|
|||
|
}
|
|||
|
})
|
|||
|
},
|
|||
|
|
|||
|
/**
|
|||
|
* 返回教育培训列表
|
|||
|
*/
|
|||
|
goGCLB:function(){
|
|||
|
wx.redirectTo({
|
|||
|
url: '../educations-list/index'
|
|||
|
})
|
|||
|
},
|
|||
|
})
|