bug修改

This commit is contained in:
zzyuan 2024-10-30 09:17:04 +08:00
parent e00fbfe5b1
commit bed0117466
9 changed files with 341 additions and 28 deletions

View File

@ -329,7 +329,7 @@
{ {
//- //-
"path": "pages/realName/workbench/peopleLibrary/detail", "path": "pages/realName/workbench/peopleLibrary/detail",
"style": { "style": {
"navigationStyle": "custom" "navigationStyle": "custom"
} }
},{ },{
@ -347,6 +347,13 @@
"navigationStyle": "custom" "navigationStyle": "custom"
} }
}, },
{
//-pdf
"path": "pages/realName/workbench/contractWitness/contractPdf",
"style": {
"navigationStyle": "custom"
}
},
// //
{ {
//- //-
@ -371,6 +378,13 @@
} }
}, },
// //
{
//-
"path": "pages/realName/workbench/electronicContract/contractTip",
"style": {
"navigationStyle": "custom"
}
},
{ {
//- //-
"path": "pages/realName/workbench/electronicContract/contractVideo", "path": "pages/realName/workbench/electronicContract/contractVideo",

View File

@ -510,6 +510,8 @@ export default {
this.queryParams.params.workerType = '' this.queryParams.params.workerType = ''
this.activeIndex4 = 0 this.activeIndex4 = 0
this.queryParams.params.ageType = '' this.queryParams.params.ageType = ''
this.queryParams.params.startAge = '0'
this.queryParams.params.endAge = '99'
this.activeIndex5 = 0 this.activeIndex5 = 0
this.queryParams.params.sex = '' this.queryParams.params.sex = ''
this.activeIndex6 = 0 this.activeIndex6 = 0

View File

@ -54,7 +54,7 @@
<view>临时</view> <view>临时</view>
<view style="color: #3f9dfd; font-weight: bold">{{item.temporaryPersonNum}}</view> <view style="color: #3f9dfd; font-weight: bold">{{item.temporaryPersonNum}}</view>
</view> </view>
<view style="width: 20%;margin:0 20rpx;display: flex;align-items: center;justify-content: space-between;" @tap="goTempPersonListPage(item)"> <view style="width: 20%;margin:0 20rpx;display: flex;align-items: center;justify-content: space-between;" @tap="goAttPersonListPage(item)">
<view>今日考勤</view> <view>今日考勤</view>
<view style="color: #3f9dfd; font-weight: bold">{{item.attPersonNum}}</view> <view style="color: #3f9dfd; font-weight: bold">{{item.attPersonNum}}</view>
</view> </view>
@ -274,6 +274,9 @@ export default {
goTempPersonListPage(row) { goTempPersonListPage(row) {
uni.navigateTo({ url: `/pages/realName/index/pages/personList?teamId=${row.teamId}&workerType=0` }) uni.navigateTo({ url: `/pages/realName/index/pages/personList?teamId=${row.teamId}&workerType=0` })
}, },
goAttPersonListPage(row) {
uni.navigateTo({ url: `/pages/realName/index/pages/personList?teamId=${row.teamId}&isAtt=0` })
},
/* 点击跳转人员-灯 */ /* 点击跳转人员-灯 */
goLightPersonListPage(row,type) {//绿2 1 0 goLightPersonListPage(row,type) {//绿2 1 0
uni.navigateTo({ url: `/pages/realName/index/pages/personList?teamId=${row.teamId}&lightStatus=${type}` }) uni.navigateTo({ url: `/pages/realName/index/pages/personList?teamId=${row.teamId}&lightStatus=${type}` })

View File

@ -0,0 +1,85 @@
<template>
<view class="page">
<u-navbar class="u-navbar" title="PDF查看" placeholder @leftClick="leftClick" leftIconColor="#fff" bgColor="#00337A" :titleStyle="{ color: '#FFF', fontSize: '32rpx' }"/>
<view class="file-box">
<PdfView :path="webUrl1" style="width: 100%;height: 80%!important;"/>
</view>
<view class="bottom-box">
<view class="btn1" @click="leftClick">返回</view>
</view>
</view>
</template>
<script>
import PdfView from '../../components/PdfView.vue'
import config from '@/config'
export default {
components: { PdfView },
data() {
return {
webUrl1:"",
}
},
onLoad(option) {
var url = plus.io.convertLocalFileSystemURL(option.pdfUrl)
console.log(url)
this.webUrl1=plus.io.convertLocalFileSystemURL(option.pdfUrl)||"";
console.log('?? ~ mounted ~ mounted-index:')
},
onShow() {
},
methods: {
//
leftClick() {
console.log('返回')
uni.navigateBack({
delta: 1 //
});
}
},
}
</script>
<style lang="scss">
.page {
width: 100vw;
height: 100vh;
background-color: #EFEFEF;
box-sizing: border-box;
position: relative;
.file-box{
width: 100%;
height: 80vh;
// overflow-y: auto;
}
.bottom-box{
width: 90%;
margin: 0 auto;
height: 120rpx;
display: flex;
justify-content: center;
align-items: center;
.btn1{
width: 90%;
height: 80rpx;
display: flex;
align-items: center;justify-content: center;
color: #FFF;
background: #00337A;
border-radius: 10rpx;
}
.btn2{
width: 40%;
height: 80rpx;
display: flex;
align-items: center;justify-content: center;
color: #FFF;
background: #00337A;
border-radius: 10rpx;
}
}
}
</style>

View File

@ -13,9 +13,12 @@
<view class="img-item upload-btn" @click="open()"> <view class="img-item upload-btn" @click="open()">
<image class="img" src="@/static/realName/tianjia-img.png" mode=""></image> <image class="img" src="@/static/realName/tianjia-img.png" mode=""></image>
</view> </view>
<view class="img-item" v-if="imgUrl!=''"> <view class="img-item" v-if="imgUrl!=''" @click="openImg">
<image class="img" :src="imgUrl" mode=""></image> <image class="img" :src="imgUrl" mode=""></image>
</view> </view>
<view class="img-item" v-if="pdfUrl!=''" @click="openPdf">
<image class="img" src="../../../../static/realName/pdf.png" mode=""></image>
</view>
<xe-upload ref="XeUpload" :options="uploadOptions" @callback="handleUploadCallback"></xe-upload> <xe-upload ref="XeUpload" :options="uploadOptions" @callback="handleUploadCallback"></xe-upload>
</view> </view>
</view> </view>
@ -52,9 +55,9 @@
<view style="width:25%;height: 100%;margin: 20rpx;"> <view style="width:25%;height: 100%;margin: 20rpx;">
<text>合同期限类型</text> <text>合同期限类型</text>
</view> </view>
<u-form-item prop='laborContractType' style="width:96%;height: 100%;margin: 0 auto;" > <u-form-item prop='laborContractType' style="width:98%;height: 100%;margin: 0 auto;" >
<u-radio-group v-model="entryContractBean.laborContractType" placement="row" style="border: 1rpx solid #ccc;padding:20rpx 00rpx;border-radius: 10rpx;display: flex;"> <u-radio-group v-model="entryContractBean.laborContractType" placement="row" style="border: 1rpx solid #ccc;padding:20rpx 0rpx;border-radius: 10rpx;display: flex;">
<u-radio label="完成一定工作为期限的合同" name="以完成一定工作为期限的合同" style="margin-right: 10rpx;transform:scale(0.8);"></u-radio> <u-radio label="完成一定工作为期限的合同" name="以完成一定工作为期限的合同" style="margin-right: 0rpx;transform:scale(0.8);"></u-radio>
<u-radio label="固定期限合同" name="固定期限合同" style="transform:scale(0.8);"></u-radio> <u-radio label="固定期限合同" name="固定期限合同" style="transform:scale(0.8);"></u-radio>
</u-radio-group> </u-radio-group>
</u-form-item> </u-form-item>
@ -165,7 +168,13 @@
</view> </view>
</u-popup> </u-popup>
<u-popup :show="showImgPopup" mode="center" @close="closeImg" >
<view style="width:500rpx;height: 100%;position: relative;background-color: #fff;">
<view class="popup-content" style="height: 50vh;">
<image style="width: 100%;height: 100%;" :src="imgUrl" mode=""></image>
</view>
</view>
</u-popup>
</view> </view>
@ -179,7 +188,9 @@ export default {
data() { data() {
return { return {
showPopup:false, showPopup:false,
showImgPopup:false,
imgUrl:'', imgUrl:'',
pdfUrl:'',
faceData:{}, faceData:{},
proName:"xxx工程", proName:"xxx工程",
proId:uni.getStorageSync('realNameUser').proId, proId:uni.getStorageSync('realNameUser').proId,
@ -317,6 +328,9 @@ export default {
}, },
open(){this.showPopup=true;}, open(){this.showPopup=true;},
close(){this.showPopup=false;}, close(){this.showPopup=false;},
openImg(){this.showImgPopup=true;},
closeImg(){this.showImgPopup=false;},
// //
openPhotograph() { openPhotograph() {
this.showPopup = false this.showPopup = false
@ -374,7 +388,8 @@ export default {
console.log(e) console.log(e)
console.log(e.data[0].tempFilePath) console.log(e.data[0].tempFilePath)
if(e.type=="choose"){ if(e.type=="choose"){
uni.uploadFile({ if(e.data[0].type.split("/")[1]=="pdf"){
uni.uploadFile({
url: config.realFileUrl+`file/upload`, // url: config.realFileUrl+`file/upload`, //
// fileType:"image",//ZFB, // fileType:"image",//ZFB,
filePath: e.data[0].tempFilePath,// filePath: e.data[0].tempFilePath,//
@ -386,13 +401,17 @@ export default {
console.log(uploadFileRes); console.log(uploadFileRes);
if(uploadFileRes.statusCode==200){ if(uploadFileRes.statusCode==200){
this.entryContractBean.witnessPath=JSON.parse(uploadFileRes.data).data.url; this.entryContractBean.witnessPath=JSON.parse(uploadFileRes.data).data.url;
this.imgUrl="../../../../static/realName/pdf.png" this.pdfUrl = e.data[0].tempFilePath
uni.$u.toast('上传成功'); uni.$u.toast('上传成功');
}else{ }else{
uni.$u.toast('上传失败'); uni.$u.toast('上传失败');
} }
} }
}); });
}else{
uni.$u.toast('只能上传Pdf文件');
}
} }
// e.type: ['choose', 'success', 'warning'] // e.type: ['choose', 'success', 'warning']
// choose optionsurl // choose optionsurl
@ -400,13 +419,15 @@ export default {
// warning // warning
// ...... // ......
}, },
chooseFiles(){ chooseFiles(){
this.showPopup = false this.showPopup = false
this.$refs.XeUpload.upload('file', {}); this.$refs.XeUpload.upload('file', {});
// chooseFile((path)=>{ },
// console.log('111111111',path); openPdf(){
console.log("pdf")
uni.navigateTo({
url: `/pages/realName/workbench/contractWitness/contractPdf?pdfUrl=${this.pdfUrl}`
})
}, },
sumbit(){ sumbit(){
this.entryContractBean.id=this.uuid() this.entryContractBean.id=this.uuid()

View File

@ -0,0 +1,163 @@
<template>
<view class="page">
<u-navbar class="u-navbar" title="电子合同" placeholder @leftClick="leftClick" leftIconColor="#fff" bgColor="#00337A" :titleStyle="{ color: '#FFF', fontSize: '32rpx' }"/>
<scroll-view class="popup-content" scroll-y="true">
<view>电子劳动合同是指用人单位与劳动者按照中华人民共和国劳动合同法中华人民共和国民法典中华人民共和国电子签名法等法律法规规定经协商一致以可视为书面形式的数据电文为载体使用可靠的电子签名订立的劳动合同
依法订立的电子劳动合同具有法律效力用人单位与劳动者应当按照电子劳动合同的约定全面履行各自的义务
电子劳动合同信息保护与安全的具体要求如下</view>
<view>电子劳动合同信息的管理调取和应用要符合中华人民共和国网络安全法互联网信息服务管理办法等法律法规不得侵害信息主体合法权益</view>
<view>电子劳动合同订立平台及其所依赖的服务环境要按照信息安全等级保护管理办法第三级的相关要求实施网络安全等级保护确保平台稳定运行提供连续服务防止所收集或使用的身份信息合同内容信息日志信息泄漏篡改丢失</view>
<view>电子劳动合同订立平台要建立健全电子劳动合同信息保护制度不得非法收集使用加工传输提供公开电子劳动合同信息</view>
<view>未经信息主体同意或者法律法规授权电子劳动合同订立平台不得向他人非法提供电子劳动合同查阅调取等服务</view>
<view>以上就是电子劳动合同信息保护与安全的一些要求可以看出大多是从平台的网络安全防护不得泄露信息等角度由此可见数据安全的重要性在电子合同数据安全上平台也是多举措保障采用防篡改技可信时间戳区块链存证等技术来保障数据的不被篡改及签名安全</view>
<view>可按上班满5天允许补卡一天的原则进行调整</view>
</scroll-view>
<view class="popup-submit-box">
<u-button type="primary" shape="square" :disabled="timeNum>0" class="submit-edit-2" @click="confirm">确认<text v-if="timeNum>0">({{timeNum}})</text></u-button>
</view>
</view>
</template>
<script>
import config from '@/config';
export default {
data() {
return {
timme:null,
timeNum:15,
}
},
onLoad() {
console.log('?? ~ mounted ~ mounted-index:')
this.Time();//
},
onShow() {
},
methods: {
//
Time() {
this.timme = setInterval(() => {
if(this.timeNum>0){
this.timeNum=this.timeNum-1
}else{
clearInterval(this.timme);
}
}, 1000);
},
confirm(){
uni.showModal({
title: `确认进行下一步?`,
cancelText: '取消',
confirmText: '确定',
success: res => {
if (res.confirm) {
uni.navigateTo({
url: `/pages/realName/workbench/electronicContract/contractVideo`
})
}
}
});
},
//
leftClick() {
console.log('返回')
uni.navigateBack({
delta: 1 //
});
}
},
destroyed() {
clearInterval(this.timme);
}
}
</script>
<style lang="scss">
.page {
width: 100vw;
height: 100vh;
background-color: #EFEFEF;
box-sizing: border-box;
position: relative;
.content{
width: 100%;
height: 92vh;
// margin-top: 20rpx;
padding-bottom: 40rpx;
background-color: #FFF;
}
.file-box{
width: 100%;
height: 80vh;
// overflow-y: auto;
}
.bottom-box{
width: 90%;
margin: 0 auto;
height: 120rpx;
display: flex;
justify-content: space-between;
align-items: center;
.btn1{
width: 40%;
height: 80rpx;
display: flex;
align-items: center;justify-content: center;
color: #FFF;
background: #00337A;
border-radius: 10rpx;
}
.btn2{
width: 40%;
height: 80rpx;
display: flex;
align-items: center;justify-content: center;
color: #FFF;
background: #00337A;
border-radius: 10rpx;
}
}
.popup-header{
width: 100%;
height: 80rpx;
margin: 0 auto;
display: flex;
justify-content: space-between;
align-items: center;
background-color: #fff;
}
.popup-content{
width: 96%;
padding: 20rpx;
height: 80vh;
font-size: 36rpx;
background-color: #fff;
}
.popup-submit-box {
width: 100%;
height: 120rpx;
display: flex;
padding-bottom: 20rpx;
justify-content: space-between;
align-items: center;
background-color: #FFF;
.submit-edit-1{
width:45%;
margin: 0 auto;
height: 65rpx;
font-size: 26rpx;
background: #F5F5F5;
}
.submit-edit-2{
width: 45%;
margin: 0 auto;
height: 80rpx;
font-size: 32rpx;
background: #0052D9;
}
}
}
</style>

View File

@ -21,9 +21,9 @@
<u-popup :show="showPopup" mode="center" @close="closePopup"> <u-popup :show="showPopup" mode="center" @close="closePopup">
<view style="width:650rpx;height: 100%;position: relative;background-color: #fff;"> <view style="width:650rpx;height: 100%;position: relative;background-color: #fff;">
<view class="popup-header"> <view class="popup-header">
<view style="width: 5%;height: 80rpx;"></view> <view style="width: 10%;height: 80rpx;"></view>
<view style="width: 85%;height: 80rpx;line-height: 80rpx;font-weight: bold;">电子合同</view> <view style="width: 80%;height: 80rpx;line-height: 80rpx;font-weight: bold;text-align:center;font-size: 32rpx;">电子合同</view>
<u-icon style="width: 10%;" name="close" color="#000" size="32" @click="closePopup"></u-icon> <u-icon style="width: 10%;" name="close" color="#000" size="24" @click="closePopup"></u-icon>
</view> </view>
<scroll-view class="popup-content" scroll-y="true"> <scroll-view class="popup-content" scroll-y="true">
<view>电子劳动合同是指用人单位与劳动者按照中华人民共和国劳动合同法中华人民共和国民法典中华人民共和国电子签名法等法律法规规定经协商一致以可视为书面形式的数据电文为载体使用可靠的电子签名订立的劳动合同 <view>电子劳动合同是指用人单位与劳动者按照中华人民共和国劳动合同法中华人民共和国民法典中华人民共和国电子签名法等法律法规规定经协商一致以可视为书面形式的数据电文为载体使用可靠的电子签名订立的劳动合同
@ -37,7 +37,7 @@
<view>可按上班满5天允许补卡一天的原则进行调整</view> <view>可按上班满5天允许补卡一天的原则进行调整</view>
</scroll-view> </scroll-view>
<view class="popup-submit-box"> <view class="popup-submit-box">
<u-button type="primary" shape="square" class="submit-edit-2" @click="confirm"> </u-button> <u-button type="primary" shape="square" :disabled="timeNum>0" class="submit-edit-2" @click="confirm"><text v-if="timeNum>0">({{timeNum}})</text></u-button>
</view> </view>
</view> </view>
</u-popup> </u-popup>
@ -52,6 +52,8 @@ import config from '@/config';
export default { export default {
data() { data() {
return { return {
timme:null,
timeNum:15,
videoSrc:"", videoSrc:"",
videoUrl:"", videoUrl:"",
autoPlay:false, autoPlay:false,
@ -60,11 +62,23 @@ export default {
}, },
onLoad() { onLoad() {
console.log('?? ~ mounted ~ mounted-index:') console.log('?? ~ mounted ~ mounted-index:')
this.showPopup=true; this.chooseVideo()
// this.Time();//
// this.showPopup=true;
}, },
onShow() { onShow() {
}, },
methods: { methods: {
//
Time() {
this.timme = setInterval(() => {
if(this.timeNum>0){
this.timeNum=this.timeNum-1
}else{
clearInterval(this.timme);
}
}, 1000);
},
chooseVideo(){ chooseVideo(){
uni.chooseVideo({ uni.chooseVideo({
count: 1, count: 1,
@ -115,6 +129,9 @@ export default {
}); });
} }
}, },
destroyed() {
clearInterval(this.timme);
}
} }
</script> </script>
@ -167,8 +184,9 @@ export default {
background-color: #fff; background-color: #fff;
} }
.popup-content{ .popup-content{
width: 100%; width: 94%;
height: 50vh; margin: 0 auto;
height: 70vh;
background-color: #fff; background-color: #fff;
} }
.popup-submit-box { .popup-submit-box {

View File

@ -128,7 +128,7 @@
}) })
}else if(name=='电子合同'){ }else if(name=='电子合同'){
uni.navigateTo({ uni.navigateTo({
url: `/pages/realName/workbench/electronicContract/contractVideo` url: `/pages/realName/workbench/electronicContract/contractTip`
}) })
}else if(name=='电子合同签署'){ }else if(name=='电子合同签署'){
uni.navigateTo({ uni.navigateTo({

View File

@ -13,7 +13,7 @@
<view class="img-item upload-btn" @click="openPhotograph()"> <view class="img-item upload-btn" @click="openPhotograph()">
<image class="img" src="@/static/realName/tianjia-img.png" mode=""></image> <image class="img" src="@/static/realName/tianjia-img.png" mode=""></image>
</view> </view>
<view class="img-item" v-if="imgUrl!=''"> <view class="img-item" v-if="imgUrl!=''" @click="openImg">
<image class="img" :src="imgUrl" mode=""></image> <image class="img" :src="imgUrl" mode=""></image>
</view> </view>
</view> </view>
@ -75,16 +75,26 @@
</scroll-view> </scroll-view>
<u-popup :show="showImgPopup" mode="center" @close="closeImg" >
<view style="width:500rpx;height: 100%;position: relative;background-color: #fff;">
<view class="popup-content" style="height: 50vh;">
<image style="width: 100%;height: 100%;" :src="imgUrl" mode=""></image>
</view>
</view>
</u-popup>
</view> </view>
</template> </template>
<script> <script>
import { pathToBase64, base64ToPath } from 'image-tools'; import { pathToBase64, base64ToPath } from 'image-tools';
import chooseFile from '../../util/chooseFile.js';
import config from '@/config' import config from '@/config'
export default { export default {
data() { data() {
return { return {
showImgPopup:false,
idNumber:uni.getStorageSync('realNameUser').idNumber, idNumber:uni.getStorageSync('realNameUser').idNumber,
proId:uni.getStorageSync('realNameUser').proId, proId:uni.getStorageSync('realNameUser').proId,
imgUrl:'', imgUrl:'',
@ -304,11 +314,8 @@ export default {
}) })
}) })
}, },
chooseFile(){ openImg(){this.showImgPopup=true;},
chooseFile((path)=>{ closeImg(){this.showImgPopup=false;},
console.log('111111111',path);
})
},
sumbit(){ sumbit(){
this.entryBankBean.id=this.uuid() this.entryBankBean.id=this.uuid()
if(this.entryBankBean.path==''){ if(this.entryBankBean.path==''){