517 lines
12 KiB
JavaScript
517 lines
12 KiB
JavaScript
// pages/temporaryToExamine/index.js
|
||
const app = getApp()
|
||
Page({
|
||
|
||
/**
|
||
* 页面的初始数据
|
||
*/
|
||
data: {
|
||
activeState:1,
|
||
a:0,
|
||
b:0,
|
||
c:0,
|
||
projectName:'',
|
||
projectId:'',
|
||
loginName:'',
|
||
userName:'',
|
||
|
||
//筛选条件
|
||
startDate:'',
|
||
endDate:'',
|
||
//列表数据
|
||
environList:[],
|
||
//数据加载参数
|
||
show:false,
|
||
initData:{},
|
||
|
||
stateShow:false,
|
||
nav:0,
|
||
|
||
//当前选中数量
|
||
number:0,
|
||
//是否全选
|
||
allchecked:false,
|
||
|
||
//审核结果信息
|
||
id:'',//当前数据ID
|
||
auditState:0,//审核结果(0:待审核;1:通过;2:驳回)
|
||
labelShow:true,
|
||
|
||
//数字化管控平台project
|
||
szhProjectId:'',
|
||
},
|
||
|
||
//项目切换 返回值
|
||
onProjectSelect(e){
|
||
this.onClickShow();
|
||
let projectId = e.detail.id;
|
||
let projectName = e.detail.text;
|
||
app.globalData.projectId = projectId;
|
||
app.globalData.projectName = projectName;
|
||
this.setData({
|
||
projectId:projectId,
|
||
projectName:projectName
|
||
})
|
||
// 获取当前项目对应劳务实名制的projectId
|
||
if(projectId != "" && projectId != undefined) {
|
||
this.getProjectInfo(projectId)
|
||
}
|
||
|
||
},
|
||
/**
|
||
* 获取当前项目对应关系
|
||
*/
|
||
getProjectInfo(projectId) {
|
||
var that = this;
|
||
wx.request({
|
||
url: app.globalData.reqUrl + '/weixin/training/getProjectCorrespondence',
|
||
data: {
|
||
"projectId": projectId
|
||
},
|
||
method: "get",
|
||
success: function (res) {
|
||
that.setData({
|
||
szhProjectId:res.data.szh
|
||
})
|
||
that.selectEnvironDayAndMonth(0);
|
||
}
|
||
})
|
||
|
||
|
||
},
|
||
showPopup() {
|
||
this.setData({ show: true });
|
||
},
|
||
/**
|
||
* 返回到更多功能页面
|
||
*/
|
||
goGCLB:function(){
|
||
wx.redirectTo({
|
||
url: '../../pages/gengduogongneng/gengduogongneng'
|
||
})
|
||
},
|
||
onClose() {
|
||
this.setData({ show: false });
|
||
},
|
||
onClickShow() {
|
||
this.setData({ show: true });
|
||
},
|
||
|
||
onClickHide() {
|
||
this.setData({ show: false });
|
||
},
|
||
|
||
//审核结果弹窗
|
||
onWarningInfo(e){
|
||
this.setData({
|
||
stateShow:true,
|
||
id:e.currentTarget.dataset.id,
|
||
})
|
||
},
|
||
|
||
//审核结果标签切换
|
||
onLabelNav(e){
|
||
this.setData({
|
||
nav:e.currentTarget.dataset.nav,
|
||
auditState:e.currentTarget.dataset.nav
|
||
})
|
||
},
|
||
|
||
// tab切换
|
||
trainingTypeJump(e){
|
||
var that = this
|
||
// this.onClickShow();
|
||
let index = e.currentTarget.dataset.index;
|
||
var videoList = []
|
||
let titleName = '';
|
||
|
||
|
||
switch(index) {
|
||
case '1':
|
||
titleName = '待审核';
|
||
this.selectEnvironDayAndMonth(0);
|
||
this.setData({labelShow:true});
|
||
break;
|
||
case '2':
|
||
titleName = '已通过';
|
||
this.selectEnvironDayAndMonth(1);
|
||
this.setData({labelShow:false})
|
||
break;
|
||
case '3':
|
||
titleName = '已驳回';
|
||
this.selectEnvironDayAndMonth(2);
|
||
this.setData({labelShow:false});
|
||
break;
|
||
default:
|
||
break
|
||
}
|
||
|
||
|
||
this.setData({
|
||
titleName:titleName,
|
||
activeState:index,
|
||
videoList:videoList,
|
||
pageNo:1,
|
||
type:1,
|
||
trainingType:index,
|
||
startDate:'',
|
||
endDate:'',
|
||
collaborateRanksId:''
|
||
});
|
||
},
|
||
|
||
/**
|
||
* 生命周期函数--监听页面加载
|
||
*/
|
||
onLoad: function (options) {
|
||
var that = this;
|
||
//启动蒙版
|
||
that.onClickShow();
|
||
//获取缓存数据
|
||
wx.getStorage({
|
||
key: 'userinfo',
|
||
success:function(res){
|
||
that.setData({
|
||
loginName:res.data.loginName,
|
||
userName:res.data.userName,
|
||
projectName: app.globalData.projectName,
|
||
projectId:app.globalData.projectId,
|
||
initData:{text:app.globalData.projectName,id:app.globalData.projectId}
|
||
})
|
||
that.getProjectInfo(app.globalData.projectId)
|
||
}
|
||
});
|
||
},
|
||
|
||
/**
|
||
* 加载待审核,已通过,已驳回审核列表信息
|
||
*/
|
||
selectEnvironDayAndMonth(auditState){
|
||
var that = this;
|
||
wx.request({
|
||
url: app.globalData.szhUrl+'/mkl/api/getTemporaryPersonnelRegistrationList',
|
||
data:{
|
||
"auditState":auditState,
|
||
"startDate":this.data.startDate,
|
||
"endDate":this.data.endDate,
|
||
"projectId":this.data.szhProjectId
|
||
},
|
||
method:"GET",
|
||
success:function(res){
|
||
//关闭蒙版
|
||
that.onClickHide();
|
||
that.setData({
|
||
environList:res.data.data,
|
||
a:res.data.dsh_num,
|
||
b:res.data.ytg_num,
|
||
c:res.data.ybh_num
|
||
})
|
||
}
|
||
})
|
||
},
|
||
|
||
/**
|
||
* 审核提交
|
||
*/
|
||
submit:function(){
|
||
var that = this;
|
||
if(this.data.auditState == 0){
|
||
app.toast("请选择审核结果!");
|
||
return;
|
||
}
|
||
|
||
var ids = []
|
||
var list = this.data.environList
|
||
for(let i = 0;i<list.length;i++){
|
||
if(list[i].selected)ids.push(list[i].id)
|
||
}
|
||
if(ids.length == 0){
|
||
app.toast("请选择待审核用户!");
|
||
return;
|
||
}
|
||
|
||
wx.request({
|
||
header: {
|
||
'content-type': 'application/x-www-form-urlencoded'
|
||
},
|
||
url:app.globalData.szhUrl+'/mkl/api/submitTemporaryPersonnelRegistrationAuditState',
|
||
data:{
|
||
// id:this.data.id,
|
||
ids: ids,
|
||
auditState:this.data.auditState,
|
||
},
|
||
method:"POST",
|
||
success:function(res){
|
||
if(res.data.code == '200'){
|
||
that.setData({ stateShow:false });
|
||
that.selectEnvironDayAndMonth(0);
|
||
//审核通过,临时人员信息同步到劳务实名制系统
|
||
if(that.data.auditState == 1){
|
||
that.synchronousTemporaryPersonnel(res.data.list);
|
||
}
|
||
}else{
|
||
app.toast(res.data.msg);
|
||
return;
|
||
}
|
||
}
|
||
})
|
||
},
|
||
|
||
/**
|
||
* 临时人员信息同步到劳务实名制平台
|
||
* @param {*} user
|
||
*/
|
||
synchronousTemporaryPersonnel(list){
|
||
var that = this
|
||
if(list){
|
||
for(let i = 0;i<list.length;i++){
|
||
var data = list[i];
|
||
if(data.employment_type == 1) {
|
||
//长期工
|
||
wx.request({
|
||
url: app.globalData.smzUrl+'/mkl/api/personSync',
|
||
data:{
|
||
"projectId":data.smz,
|
||
"idcardnum": data.id_card_no,
|
||
"name": data.id_card_name,
|
||
"teamid": data.labor_team_id,
|
||
"userphone": '',
|
||
"userphoto": data.half_body_photo,
|
||
"enterdate": this.getNowDate(),
|
||
"worktypeid": data.work_type_id,
|
||
"sex": data.sex,
|
||
"nation": data.nation,
|
||
"birthday": data.birth,
|
||
"address": data.id_card_address,
|
||
"organization": data.sign_of_origin,
|
||
"useStarttime": data.sign_of_date,
|
||
"useEndtime": data.end_of_date,
|
||
"idcardimg": data.id_card_front,
|
||
"idcardimg2": data.id_card_back,
|
||
"information_path":data.letter_commitment_url,
|
||
"signature":data.sign_img_url,
|
||
"employmentType":data.employment_type
|
||
},
|
||
method:"POST",
|
||
success:function(res){
|
||
if(res.data.state == "NO" && res.data.message == "该人员信息已存在") {
|
||
that.resynchronousTemporaryPersonnel(data)
|
||
}
|
||
}
|
||
})
|
||
} else {
|
||
//短期工
|
||
wx.request({
|
||
url: app.globalData.smzUrl+'/mkl/api/personSyncTemp',
|
||
data:{
|
||
"projectId":data.smz,
|
||
"idcardnum": data.id_card_no,
|
||
"name": data.id_card_name,
|
||
"teamid": data.labor_team_id,
|
||
"userphone": '',
|
||
"userphoto": data.half_body_photo,
|
||
"enterdate": this.getNowDate(),
|
||
"worktypeid": data.work_type_id,
|
||
"sex": data.sex,
|
||
"nation": data.nation,
|
||
"birthday": data.birth,
|
||
"address": data.id_card_address,
|
||
"organization": data.sign_of_origin,
|
||
"useStarttime": data.sign_of_date,
|
||
"useEndtime": data.end_of_date,
|
||
"idcardimg": data.id_card_front,
|
||
"idcardimg2": data.id_card_back,
|
||
"information_path":data.letter_commitment_url,
|
||
"signature":data.sign_img_url,
|
||
"employmentType":data.employment_type
|
||
},
|
||
method:"POST",
|
||
success:function(res){
|
||
if(res.data.state == "NO" && res.data.message == "该人员信息已存在") {
|
||
that.resynchronousTemporaryPersonnel(data)
|
||
}
|
||
}
|
||
})
|
||
}
|
||
|
||
}
|
||
}
|
||
},
|
||
|
||
/**
|
||
* 关闭
|
||
*/
|
||
closeBox(){
|
||
this.setData({
|
||
stateShow:false
|
||
})
|
||
},
|
||
|
||
orderChange(e){
|
||
let name = e.detail.name;
|
||
if(name == 'a'){
|
||
this.selectEnvironDayAndMonth(0);
|
||
this.setData({labelShow:true});
|
||
}else if(name == 'b'){
|
||
this.selectEnvironDayAndMonth(1);
|
||
this.setData({labelShow:false});
|
||
}else if(name == 'c'){
|
||
this.selectEnvironDayAndMonth(2);
|
||
this.setData({labelShow:false});
|
||
}
|
||
},
|
||
|
||
/**
|
||
* 获取当前年月日
|
||
*/
|
||
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;
|
||
return today;
|
||
},
|
||
|
||
/**
|
||
* 打开附件
|
||
* @param {url} e
|
||
*/
|
||
openFile(e){
|
||
var url = e.currentTarget.dataset.url
|
||
wx.downloadFile({
|
||
// 示例 url,并非真实存在
|
||
url: url,
|
||
success: function (res) {
|
||
const filePath = res.tempFilePath
|
||
wx.openDocument({
|
||
filePath: filePath,
|
||
success: function (res) {
|
||
console.log('打开文档成功')
|
||
}
|
||
})
|
||
}
|
||
})
|
||
},
|
||
|
||
/**
|
||
* 全选
|
||
*/
|
||
checkAll(){
|
||
var selectAllStatus = this.data.allchecked;
|
||
selectAllStatus = !selectAllStatus;
|
||
var dataList = this.data.environList;
|
||
for (let i = 0; i < dataList .length; i++) {
|
||
dataList [i].selected = selectAllStatus;
|
||
}
|
||
this.setData({
|
||
allchecked: selectAllStatus,
|
||
environList: dataList,
|
||
});
|
||
//计算已选数量
|
||
this.countSelectNum();
|
||
},
|
||
|
||
/**
|
||
* 选择
|
||
*/
|
||
selectList(e){
|
||
var index = e.currentTarget.dataset.index
|
||
let dataArr = this.data.environList
|
||
let selected = dataArr[index].selected
|
||
dataArr[index].selected = !selected
|
||
this.setData({
|
||
environList: dataArr
|
||
});
|
||
|
||
//判断全选
|
||
for (var i = 0; i < this.data.environList.length; i++) {
|
||
if (this.data.allchecked){
|
||
if (!this.data.environList[i].selected){
|
||
this.setData({
|
||
allchecked: false
|
||
});
|
||
break;
|
||
}
|
||
}else{
|
||
if (this.data.environList[i].selected) {
|
||
this.setData({
|
||
allchecked: true
|
||
});
|
||
} else {
|
||
this.setData({
|
||
allchecked: false
|
||
});
|
||
break;
|
||
}
|
||
}
|
||
}
|
||
//计算已选数量
|
||
this.countSelectNum()
|
||
},
|
||
|
||
/**
|
||
* 计算已选数量
|
||
*/
|
||
countSelectNum(){
|
||
var number = 0;
|
||
let dataArr = this.data.environList
|
||
for(let i = 0;i < dataArr.length;i++){
|
||
if(dataArr[i].selected)number++
|
||
}
|
||
this.setData({
|
||
number: number
|
||
});
|
||
},
|
||
|
||
//筛选待审核列表
|
||
screenCondition1(e){
|
||
this.setData({
|
||
startDate:e.detail.startDate,
|
||
endDate:e.detail.endDate,
|
||
})
|
||
this.selectEnvironDayAndMonth(0);
|
||
},
|
||
|
||
//筛选已通过列表
|
||
screenCondition2(e){
|
||
this.setData({
|
||
startDate:e.detail.startDate,
|
||
endDate:e.detail.endDate,
|
||
})
|
||
this.selectEnvironDayAndMonth(1);
|
||
},
|
||
|
||
//筛选已驳回列表
|
||
screenCondition3(e){
|
||
this.setData({
|
||
startDate:e.detail.startDate,
|
||
endDate:e.detail.endDate,
|
||
})
|
||
this.selectEnvironDayAndMonth(2);
|
||
},
|
||
|
||
//再次人员入场
|
||
resynchronousTemporaryPersonnel(data) {
|
||
//1 进场 2退场
|
||
wx.request({
|
||
url: app.globalData.smzUrl+'/mkl/api/userInfoTempEnterAndOut',
|
||
data:{
|
||
"projectId":data.smz,
|
||
"idcardnum": data.id_card_no,
|
||
"isWork":1
|
||
},
|
||
method:"POST",
|
||
success:function(res){
|
||
app.toast("人员已再次入场");
|
||
console.log(res)
|
||
}
|
||
})
|
||
|
||
}
|
||
|
||
|
||
|
||
}) |