2 lines
5.5 KiB
JavaScript
2 lines
5.5 KiB
JavaScript
"use strict";const e=require("../../../common/vendor.js"),l=require("../../../common/libraries/apiLoading.js"),o=require("../../../gen/Apis.js"),n=require("./model.js"),u=require("../../../common/libraries/naviHelper.js");require("../../../common/libraries/request.js");const a=require("../../../common/store/useWatermarkStore.js"),i=require("../../../common/store/useWeAppAuthStore.js");require("../../../common/store/useWorkStore.js");const t=require("../../../common/libraries/mapDistance.js"),d=require("../../../common/libraries/day.js"),s=require("../../../common/libraries/tools.js");i.useWeAppAuthStore();const r=a.useWatermarkStore(),c=(e,u)=>{l.getApiLoading(o.Apis.Attendance.AttendanceSchedules.GetAttendanceShiftPeriod,e).then(e=>{var l,o,a,i,d,s,r,c,v,h;n.useModel.showData.value=null==e?void 0:e.data,n.useModel.distanceNumber.value=t.CalculateDistance(u,null==(l=null==e?void 0:e.data)?void 0:l.project),(null==(i=null==(a=null==(o=null==e?void 0:e.data)?void 0:o.checkin_status)?void 0:a.start)?void 0:i.checked)&&(n.useModel.current.value=1),(null==(r=null==(s=null==(d=null==e?void 0:e.data)?void 0:d.checkin_status)?void 0:s.start)?void 0:r.checked)&&(null==(h=null==(v=null==(c=null==e?void 0:e.data)?void 0:c.checkin_status)?void 0:v.end)?void 0:h.checked)&&(n.useModel.current.value=3),setTimeout(()=>{n.useModel.loading.value=!0},300),console.log(n.useModel.metaData.value,"useModel.metaData.value")})};let v=null,h=!1;const m=l=>{e.index.getLocation({type:"wgs84",altitude:!0,isHighAccuracy:!0,success:o=>(console.log(o,"经纬度"),n.useModel.currentLocation.value={latitude:o.latitude,longitude:o.longitude},e.index.hideLoading(),null==l?void 0:l(o)),fail(l){e.index.hideLoading(),e.index.showModal({title:"提示",content:"请先允许定位!",success:function(l){l.confirm?(e.index.openSetting(),console.log("用户点击确定")):l.cancel&&console.log("用户点击取消")}}),console.log(l,"获取经纬度失败")}})},g=s.debounce(function(e){m(e)},1200),M={handleUpdateLocation(){if(n.useModel.mapNumber.value>3)return u.showToast("操作太频繁!");e.index.showLoading({title:"加载中...",mask:!0}),g(l=>{var o,u,a,i,d;n.useModel.mapNumber.value+=1,e.index.hideLoading(),n.useModel.distanceNumber.value=t.CalculateDistance(null==(u=null==(o=n.useModel)?void 0:o.currentLocation)?void 0:u.value,null==(d=null==(i=null==(a=n.useModel)?void 0:a.showData)?void 0:i.value)?void 0:d.project)})},init(){var e;let l=null==(e=null==r?void 0:r.watermarkInfo)?void 0:e.value;(null==l?void 0:l.length)&&(n.useModel.formData.value.photo=JSON.parse(JSON.stringify(l)),r.watermarkInfo.value=[],console.log(l,"watermarkInfo"))},getLocation(e){m(l=>{c(e,l)})},onPreviewMedia(l){console.log(l,"url1"),l&&e.index.previewMedia({sources:[{url:l,type:"image"}],current:0})},handleDelete(){n.useModel.formData.value.photo=[]},handleCheckin(){var a,i,s,r,g,M,p,k,D,f,w,A,L,_,j,q,C,T,b,x,S;return h?u.showToast("请勿重复点击"):d.isWithinTimeRange(`${null==(s=null==(i=null==(a=n.useModel)?void 0:a.formData)?void 0:i.value)?void 0:s.date} ${"CheckOut"===(null==(M=null==(g=null==(r=n.useModel)?void 0:r.formData)?void 0:g.value)?void 0:M.checkin_type)?null==(f=null==(D=null==(k=null==(p=n.useModel)?void 0:p.showData)?void 0:k.value)?void 0:D.period)?void 0:f.work_end_time:null==(_=null==(L=null==(A=null==(w=n.useModel)?void 0:w.showData)?void 0:A.value)?void 0:L.period)?void 0:_.work_start_time}`)?(null==(C=null==(q=null==(j=n.useModel)?void 0:j.attendanceConfigData)?void 0:q.value)?void 0:C.require_photo)&&!(null==(S=null==(x=null==(b=null==(T=n.useModel)?void 0:T.formData)?void 0:b.value)?void 0:x.photo)?void 0:S.length)?u.showToast("请上传拍照!"):void m(()=>{var a,i,d,s,r,m,g,M;let p=t.CalculateDistance(null==(i=null==(a=n.useModel)?void 0:a.currentLocation)?void 0:i.value,null==(r=null==(s=null==(d=n.useModel)?void 0:d.showData)?void 0:s.value)?void 0:r.project);if(n.useModel.distanceNumber.value=p,p>(null==(M=null==(g=null==(m=n.useModel)?void 0:m.attendanceConfigData)?void 0:g.value)?void 0:M.check_in_range))return u.showToast("打卡距离超出范围!");v&&clearTimeout(v),h=!0,v=setTimeout(()=>{var a,i;l.getApiLoading(o.Apis.Attendance.AttendanceRecords.Checkin,{...n.useModel.formData.value,...null==(i=null==(a=n.useModel)?void 0:a.currentLocation)?void 0:i.value}).then(l=>{var o,u,a,i;c(null==(u=null==(o=n.useModel)?void 0:o.formData)?void 0:u.value,null==(i=null==(a=n.useModel)?void 0:a.currentLocation)?void 0:i.value),e.index.showToast({title:"打卡成功",icon:"success"})}).catch(e=>{console.error("打卡失败:",e),u.showToast("打卡失败,请重试")}).finally(()=>{setTimeout(()=>{h=!1},1e3)})},500)}):u.showToast("不在打卡时间内!")},YesNoCheckinStatus(){var e,l,o,u,a,i,t,d,s,r,c,v,h,m,g,M;return"CheckOut"===(null==(o=null==(l=null==(e=n.useModel)?void 0:e.formData)?void 0:l.value)?void 0:o.checkin_type)&&!(null==(d=null==(t=null==(i=null==(a=null==(u=n.useModel)?void 0:u.showData)?void 0:a.value)?void 0:i.checkin_status)?void 0:t.end)?void 0:d.checked)||"CheckIn"===(null==(c=null==(r=null==(s=n.useModel)?void 0:s.formData)?void 0:r.value)?void 0:c.checkin_type)&&!(null==(M=null==(g=null==(m=null==(h=null==(v=n.useModel)?void 0:v.showData)?void 0:h.value)?void 0:m.checkin_status)?void 0:g.start)?void 0:M.checked)},getAttendanceConfig(){l.getApiLoading(o.Apis.Attendance.AttendanceSchedules.GetAttendanceConfig,{}).then(e=>{n.useModel.attendanceConfigData.value=null==e?void 0:e.data})},toUpload(){e.index.navigateTo({url:"/INDEX/watermark_camera/index?source=current"})}};exports.method=M;
|