niucloud-admin/niucloud/public/wap/assets/app-pages-member-personal.c0180e19.js
2023-11-15 15:57:04 +08:00

2 lines
10 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import{A as e,B as t,C as a,q as i,t as n,i as r,j as l,d as o,J as u,c as s,a as m,r as c,n as d,w as h,k as p,G as f,H as y,m as x,_ as g,K as v,ag as k,ah as C,x as _,a6 as b,y as $,ai as w}from"./index-faf5e276.js";import{_ as D}from"./u-avatar.9784460f.js";import{_ as I}from"./u-upload.642152c9.js";import{_ as P,a as V,b as M}from"./u-action-sheet.f3e5b223.js";import{_ as H}from"./u-button.9384f0e3.js";import{_ as O}from"./app-link.vue_vue_type_script_setup_true_lang.8d02ecda.js";import{_ as j}from"./u-modal.0a434476.js";import{_ as T}from"./u-picker.c470df8e.js";import{d as B}from"./index.66e957cd.js";import{_ as N}from"./_plugin-vue_export-helper.1b428a4d.js";import"./u-icon.71776381.js";import"./u--text.c8005a3e.js";import"./u-loading-icon.a6d83e95.js";import"./u-line.0f7106aa.js";import"./u-line.vue_vue_type_style_index_0_scoped_45e31c7a_lang.501f5819.js";import"./u-popup.a69d5115.js";import"./u-transition.bcacef93.js";import"./u-safe-bottom.c1f1e254.js";const S=N({name:"datetime-picker",mixins:[t,a,{props:{show:{type:Boolean,default:e.datetimePicker.show},showToolbar:{type:Boolean,default:e.datetimePicker.showToolbar},modelValue:{type:[String,Number],default:e.datetimePicker.value},title:{type:String,default:e.datetimePicker.title},mode:{type:String,default:e.datetimePicker.mode},maxDate:{type:Number,default:e.datetimePicker.maxDate},minDate:{type:Number,default:e.datetimePicker.minDate},minHour:{type:Number,default:e.datetimePicker.minHour},maxHour:{type:Number,default:e.datetimePicker.maxHour},minMinute:{type:Number,default:e.datetimePicker.minMinute},maxMinute:{type:Number,default:e.datetimePicker.maxMinute},filter:{type:[Function,null],default:e.datetimePicker.filter},formatter:{type:[Function,null],default:e.datetimePicker.formatter},loading:{type:Boolean,default:e.datetimePicker.loading},itemHeight:{type:[String,Number],default:e.datetimePicker.itemHeight},cancelText:{type:String,default:e.datetimePicker.cancelText},confirmText:{type:String,default:e.datetimePicker.confirmText},cancelColor:{type:String,default:e.datetimePicker.cancelColor},confirmColor:{type:String,default:e.datetimePicker.confirmColor},visibleItemCount:{type:[String,Number],default:e.datetimePicker.visibleItemCount},closeOnClickOverlay:{type:Boolean,default:e.datetimePicker.closeOnClickOverlay},defaultIndex:{type:Array,default:e.datetimePicker.defaultIndex}}}],data:()=>({columns:[],innerDefaultIndex:[],innerFormatter:(e,t)=>t}),watch:{show(e,t){e&&this.updateColumnValue(this.innerValue)},propsChange(){this.init()}},computed:{propsChange(){return[this.mode,this.maxDate,this.minDate,this.minHour,this.maxHour,this.minMinute,this.maxMinute,this.filter]}},mounted(){this.init()},emits:["close","cancel","confirm","change","update:modelValue"],methods:{init(){this.innerValue=this.correctValue(this.modelValue),this.updateColumnValue(this.innerValue)},setFormatter(e){this.innerFormatter=e},close(){this.closeOnClickOverlay&&this.$emit("close")},cancel(){this.$emit("cancel")},confirm(){this.$emit("confirm",{value:this.innerValue,mode:this.mode}),this.$emit("update:modelValue",this.innerValue)},intercept(e,t){let a=e.match(/\d+/g);return a.length>1?(uni.$u.error("请勿在过滤或格式化函数时添加数字"),0):t&&4==a[0].length?a[0]:a[0].length>2?(uni.$u.error("请勿在过滤或格式化函数时添加数字"),0):a[0]},change(e){const{indexs:t,values:a}=e;let i="";if("time"===this.mode)i=`${this.intercept(a[0][t[0]])}:${this.intercept(a[1][t[1]])}`;else{const e=parseInt(this.intercept(a[0][t[0]],"year")),n=parseInt(this.intercept(a[1][t[1]]));let r=parseInt(a[2]?this.intercept(a[2][t[2]]):1),l=0,o=0;const u=B(`${e}-${n}`).daysInMonth();"year-month"===this.mode&&(r=1),r=Math.min(u,r),"datetime"===this.mode&&(l=parseInt(this.intercept(a[3][t[3]])),o=parseInt(this.intercept(a[4][t[4]]))),i=Number(new Date(e,n-1,r,l,o))}i=this.correctValue(i),this.innerValue=i,this.updateColumnValue(i),this.$emit("change",{value:i,picker:this.$refs.picker,mode:this.mode})},updateColumnValue(e){this.innerValue=e,this.updateColumns(),this.updateIndexs(e)},updateIndexs(e){let t=[];const a=this.formatter||this.innerFormatter,i=uni.$u.padZero;if("time"===this.mode){const i=e.split(":");t=[a("hour",i[0]),a("minute",i[1])]}else t=[a("year",`${B(e).year()}`),a("month",i(B(e).month()+1))],"date"===this.mode&&t.push(a("day",i(B(e).date()))),"datetime"===this.mode&&t.push(a("day",i(B(e).date())),a("hour",i(B(e).hour())),a("minute",i(B(e).minute())));const n=this.columns.map(((e,a)=>Math.max(0,e.findIndex((e=>e===t[a])))));this.innerDefaultIndex=n},updateColumns(){const e=this.formatter||this.innerFormatter,t=this.getOriginColumns().map((t=>t.values.map((a=>e(t.type,a)))));this.columns=t},getOriginColumns(){return this.getRanges().map((({type:e,range:t})=>{let a=function(e,t){let a=-1;const i=Array(e<0?0:e);for(;++a<e;)i[a]=t(a);return i}(t[1]-t[0]+1,(a=>{let i=t[0]+a;return i="year"===e?`${i}`:uni.$u.padZero(i),i}));return this.filter&&(a=this.filter(e,a)),{type:e,values:a}}))},generateArray:(e,t)=>Array.from(new Array(t+1).keys()).slice(e),correctValue(e){const t="time"!==this.mode;if(t&&!uni.$u.test.date(e)?e=this.minDate:t||e||(e=`${uni.$u.padZero(this.minHour)}:${uni.$u.padZero(this.minMinute)}`),t)return e=B(e).isBefore(B(this.minDate))?this.minDate:e,e=B(e).isAfter(B(this.maxDate))?this.maxDate:e;{if(-1===String(e).indexOf(":"))return uni.$u.error("时间错误请传递如12:24的格式");let[t,a]=e.split(":");return t=uni.$u.padZero(uni.$u.range(this.minHour,this.maxHour,Number(t))),a=uni.$u.padZero(uni.$u.range(this.minMinute,this.maxMinute,Number(a))),`${t}:${a}`}},getRanges(){if("time"===this.mode)return[{type:"hour",range:[this.minHour,this.maxHour]},{type:"minute",range:[this.minMinute,this.maxMinute]}];const{maxYear:e,maxDate:t,maxMonth:a,maxHour:i,maxMinute:n}=this.getBoundary("max",this.innerValue),{minYear:r,minDate:l,minMonth:o,minHour:u,minMinute:s}=this.getBoundary("min",this.innerValue),m=[{type:"year",range:[r,e]},{type:"month",range:[o,a]},{type:"day",range:[l,t]},{type:"hour",range:[u,i]},{type:"minute",range:[s,n]}];return"date"===this.mode&&m.splice(3,2),"year-month"===this.mode&&m.splice(2,3),m},getBoundary(e,t){const a=new Date(t),i=new Date(this[`${e}Date`]),n=B(i).year();let r=1,l=1,o=0,u=0;return"max"===e&&(r=12,l=B(a).daysInMonth(),o=23,u=59),B(a).year()===n&&(r=B(i).month()+1,B(a).month()+1===r&&(l=B(i).date(),B(a).date()===l&&(o=B(i).hour(),B(a).hour()===o&&(u=B(i).minute())))),{[`${e}Year`]:n,[`${e}Month`]:r,[`${e}Date`]:l,[`${e}Hour`]:o,[`${e}Minute`]:u}}}},[["render",function(e,t,a,o,u,s){const m=i(n("u-picker"),T);return r(),l(m,{ref:"picker",show:e.show,closeOnClickOverlay:e.closeOnClickOverlay,columns:u.columns,title:e.title,itemHeight:e.itemHeight,showToolbar:e.showToolbar,visibleItemCount:e.visibleItemCount,defaultIndex:u.innerDefaultIndex,cancelText:e.cancelText,confirmText:e.confirmText,cancelColor:e.cancelColor,confirmColor:e.confirmColor,onClose:s.close,onCancel:s.cancel,onConfirm:s.confirm,onChange:s.change},null,8,["show","closeOnClickOverlay","columns","title","itemHeight","showToolbar","visibleItemCount","defaultIndex","cancelText","confirmText","cancelColor","confirmColor","onClose","onCancel","onConfirm","onChange"])}],["__scopeId","data-v-e4f68153"]]),A=N(o({__name:"personal",setup(e){const t=u(),a=s((()=>t.info)),o=m({modal:!1,value:a.nickname||""}),T=e=>{o.value=e.detail.value},B=()=>{uni.$u.test.isEmpty(o.value)?g({title:v("nicknamePlaceholder"),icon:"none"}):k({field:"nickname",value:o.value}).then((e=>{t.info.nickname=o.value,o.modal=!1}))},N=c(!1),A=s((()=>[{name:v("man"),value:1},{name:v("woman"),value:2}])),F=e=>{k({field:"sex",value:e.value}).then((a=>{t.info.sex_name=e.name}))},Z=e=>{C({filePath:e.file.url,name:"file"}).then((e=>{k({field:"headimg",value:e.data.url}).then((()=>{t.info.headimg=e.data.url}))})).catch((()=>{}))},R=c(!1),Y=e=>{console.log(e.value||e.value+1),k({field:"birthday",value:uni.$u.date(e.value||e.value+1,"yyyy-mm-dd")}).then((()=>{t.info.birthday=uni.$u.date(e.value||e.value+1,"yyyy-mm-dd"),R.value=!1}))};return(e,t)=>{const u=i(n("u-avatar"),D),s=_,m=i(n("u-upload"),I),c=i(n("u-cell"),P),g=i(n("u-button"),H),k=i(n("app-link"),O),C=i(n("u-cell-group"),V),z=b,q=i(n("u-modal"),j),E=i(n("u-action-sheet"),M),G=i(n("u-datetime-picker"),S);return d(a)?(r(),l(s,{key:0,class:"w-full h-screen bg-page"},{default:h((()=>[p(s,{class:"flex flex-col items-center pt-[30rpx]"},{default:h((()=>[p(m,{onAfterRead:Z,maxCount:1},{default:h((()=>[p(u,{src:d($)(d(a).headimg),size:"60",leftIcon:"none"},null,8,["src"]),p(s,{class:"text-primary text-sm mt-[10rpx]"},{default:h((()=>[f(y(d(v)("updateHeadimg")),1)])),_:1})])),_:1})])),_:1}),p(s,{class:"m-[30rpx] bg-white rounded-md overflow-hidden px-[20rpx] py-[10rpx]"},{default:h((()=>[p(C,{border:!1},{default:h((()=>[p(c,{title:d(v)("nickname"),"is-link":!0,value:d(a).nickname,onClick:t[0]||(t[0]=e=>o.modal=!0)},null,8,["title","value"]),p(c,{title:d(v)("sex"),"is-link":!0,value:d(a).sex_name||d(v)("unknown"),onClick:t[1]||(t[1]=e=>N.value=!0)},null,8,["title","value"]),p(c,{title:d(v)("mobile")},{value:h((()=>[d(a).mobile?(r(),l(s,{key:0},{default:h((()=>[f(y(d(w)(d(a).mobile)),1)])),_:1})):x("v-if",!0),p(s,null,{default:h((()=>[p(k,{url:"/app/pages/auth/bind"},{default:h((()=>[p(g,{type:"primary",plain:!0,text:d(v)("bindMobile"),shape:"circle",size:"mini"},null,8,["text"])])),_:1})])),_:1})])),_:1},8,["title"]),p(c,{title:d(v)("birthday"),"is-link":!0,value:d(a).birthday||d(v)("unknown"),onClick:t[2]||(t[2]=e=>R.value=!0)},null,8,["title","value"])])),_:1})])),_:1}),p(q,{show:o.modal,closeOnClickOverlay:!0,onClose:t[4]||(t[4]=e=>o.modal=!1),"show-cancel-button":!0,onCancel:t[5]||(t[5]=e=>o.modal=!1),title:d(v)("updateNickname")},{confirmButton:h((()=>[p(s,{class:"mt-[10rpx]"},{default:h((()=>[p(g,{type:"primary",text:d(v)("confirm"),shape:"circle",onClick:B},null,8,["text"])])),_:1})])),default:h((()=>[p(s,{class:"w-full mt-[20rpx] border-0 border-b border-gray-300 border-solid py-[20rpx]"},{default:h((()=>[p(z,{type:"nickname",modelValue:o.value,"onUpdate:modelValue":t[3]||(t[3]=e=>o.value=e),placeholder:d(v)("nicknamePlaceholder"),onBlur:T},null,8,["modelValue","placeholder"])])),_:1})])),_:1},8,["show","title"]),p(E,{actions:d(A),show:N.value,closeOnClickOverlay:!0,safeAreaInsetBottom:!0,onClose:t[6]||(t[6]=e=>N.value=!1),onSelect:F},null,8,["actions","show"]),p(G,{show:R.value,mode:"date","confirm-text":d(v)("confirm"),maxDate:(new Date).valueOf(),minDate:0,"cancel-text":d(v)("cancel"),onCancel:t[7]||(t[7]=e=>R.value=!1),onConfirm:Y},null,8,["show","confirm-text","maxDate","cancel-text"])])),_:1})):x("v-if",!0)}}}),[["__scopeId","data-v-07a053dd"]]);export{A as default};