Merge branch 'dev' of http://git.sinoecare.com/sinoecare/digital_village_cp/dv_cp_wechat_app into dev
This commit is contained in:
		| @@ -6,7 +6,7 @@ | ||||
|           <u-grid-item v-for="(item,index) in grid" :key="index" :custom-style="{padding:'14px 0'}" | ||||
|                        @click="handleClick(index)"> | ||||
|             <u-icon :name="item.icon" :size="64"></u-icon> | ||||
|             <view class="label">{{item.label}}</view> | ||||
|             <view class="label">{{ item.label }}</view> | ||||
|           </u-grid-item> | ||||
|         </u-grid> | ||||
|       </ai-top-fixed> | ||||
| @@ -14,26 +14,30 @@ | ||||
|         <header>待参加的会议</header> | ||||
|         <template v-if="meetingList.length"> | ||||
|           <div class="card" v-for="(item,index) in meetingList" :key="index" @click="detail(item)"> | ||||
|             <header>{{item.title}}</header> | ||||
|             <header>{{ item.title }}</header> | ||||
|             <u-row justify="between"> | ||||
|               <div class="time"> | ||||
|                 <span>{{item.startTime|format}}</span> | ||||
|                 <span>{{item.startTime|formatDate(0)}}年{{item.startTime|formatDate(1)}}月{{item.startTime|formatDate(2)}}日 周{{item.startTime|formatWeek}}</span> | ||||
|                 <span>{{ item.startTime|format }}</span> | ||||
|                 <span>{{ item.startTime|formatDate(0) }}年{{ | ||||
|                     item.startTime|formatDate(1) | ||||
|                   }}月{{ item.startTime|formatDate(2) }}日 周{{ item.startTime|formatWeek }}</span> | ||||
|               </div> | ||||
|               <div class="arrow"></div> | ||||
|               <div class="time"> | ||||
|                 <span>{{item.endTime|format}}</span> | ||||
|                 <span>{{item.endTime|formatDate(0)}}年{{item.endTime|formatDate(1)}}月{{item.endTime|formatDate(2)}}日 周{{item.endTime|formatWeek}}</span> | ||||
|                 <span>{{ item.endTime|format }}</span> | ||||
|                 <span>{{ item.endTime|formatDate(0) }}年{{ item.endTime|formatDate(1) }}月{{ | ||||
|                     item.endTime|formatDate(2) | ||||
|                   }}日 周{{ item.endTime|formatWeek }}</span> | ||||
|               </div> | ||||
|             </u-row> | ||||
|             <u-row class="info"> | ||||
|               <span>发起人员:</span> | ||||
|               <span>{{item.userName}}</span> | ||||
|               <ai-open-data type="userName" :openid="item.createUserId"/> | ||||
|             </u-row> | ||||
|             <u-gap height="20"></u-gap> | ||||
|             <u-row class="info"> | ||||
|               <span>会议地点:</span> | ||||
|               <span>{{item.address}}</span> | ||||
|               <span>{{ item.address }}</span> | ||||
|             </u-row> | ||||
|             <div class="tag" :style="{background:'url(' + $cdn + tag(item.joinStatus) + ')'}"></div> | ||||
|           </div> | ||||
| @@ -50,224 +54,225 @@ | ||||
| </template> | ||||
|  | ||||
| <script> | ||||
|   import AiEmpty from "../../components/AiEmpty"; | ||||
|   import AiTopFixed from "../../components/AiTopFixed"; | ||||
|   import AiAdd from "../../components/AiAdd"; | ||||
|   import {addMeeting, belongToMe, detail, meetingList} from './components' | ||||
| import AiEmpty from "../../components/AiEmpty"; | ||||
| import AiTopFixed from "../../components/AiTopFixed"; | ||||
| import AiAdd from "../../components/AiAdd"; | ||||
| import {addMeeting, belongToMe, detail, meetingList} from './components' | ||||
| import AiOpenData from "../../components/AiOpenData"; | ||||
|  | ||||
|   export default { | ||||
|     name: "AppMeetingNotice", | ||||
|     appName: "会议通知", | ||||
|     components: {AiEmpty, AiTopFixed, AiAdd, addMeeting, belongToMe, detail, meetingList}, | ||||
|     data() { | ||||
|       return { | ||||
|         meetingList: [], | ||||
|         isList: true, | ||||
|         comp: "", | ||||
|         params: null, | ||||
|       } | ||||
|     }, | ||||
|     created() { | ||||
|       this.$dict.load("meetingNoticeBefore", "meetingNoticeAfter", "meetStatus"); | ||||
|     }, | ||||
|     computed: { | ||||
|       grid() { | ||||
|         return [ | ||||
|           { | ||||
|             icon: this.$cdn + "/common/iconlshy.png", | ||||
|             label: "历史会议" | ||||
|           }, | ||||
|           { | ||||
|             icon: this.$cdn + "/common/iconwfqd.png", | ||||
|             label: "我发起的" | ||||
|           }, | ||||
|           { | ||||
|             icon: this.$cdn + "/common/iconcgx.png", | ||||
|             label: "草稿箱" | ||||
|           } | ||||
|         ] | ||||
|       } | ||||
|     }, | ||||
|     methods: { | ||||
|       emitShow(){ | ||||
|         const {id} = this.$route.query | ||||
|         if(id){ | ||||
|           this.comp = "detail"; | ||||
|           this.params = id; | ||||
|           this.isList = false; | ||||
| export default { | ||||
|   name: "AppMeetingNotice", | ||||
|   appName: "会议通知", | ||||
|   components: {AiOpenData, AiEmpty, AiTopFixed, AiAdd, addMeeting, belongToMe, detail, meetingList}, | ||||
|   data() { | ||||
|     return { | ||||
|       meetingList: [], | ||||
|       isList: true, | ||||
|       comp: "", | ||||
|       params: null, | ||||
|     } | ||||
|   }, | ||||
|   created() { | ||||
|     this.$dict.load("meetingNoticeBefore", "meetingNoticeAfter", "meetStatus"); | ||||
|   }, | ||||
|   computed: { | ||||
|     grid() { | ||||
|       return [ | ||||
|         { | ||||
|           icon: this.$cdn + "/common/iconlshy.png", | ||||
|           label: "历史会议" | ||||
|         }, | ||||
|         { | ||||
|           icon: this.$cdn + "/common/iconwfqd.png", | ||||
|           label: "我发起的" | ||||
|         }, | ||||
|         { | ||||
|           icon: this.$cdn + "/common/iconcgx.png", | ||||
|           label: "草稿箱" | ||||
|         } | ||||
|         this.getData() | ||||
|       }, | ||||
|       tag(status) { | ||||
|         return { | ||||
|           "0": "common/1wqr.png", | ||||
|           "1": "common/1yqr.png", | ||||
|           "2": "common/1yqj.png", | ||||
|           "3": "common/toDo.png", | ||||
|         }[status] | ||||
|       }, | ||||
|       detail({id}) { | ||||
|       ] | ||||
|     } | ||||
|   }, | ||||
|   methods: { | ||||
|     emitShow() { | ||||
|       const {id} = this.$route.query | ||||
|       if (id) { | ||||
|         this.comp = "detail"; | ||||
|         this.params = id; | ||||
|         this.isList = false; | ||||
|       }, | ||||
|       getData() { | ||||
|         this.$http.post("/app/appmeetinginfo/list", null, { | ||||
|           params: { | ||||
|             listType: "1", | ||||
|             meetingStatus: "1|2", | ||||
|             size: 999 | ||||
|           } | ||||
|         }).then(res => { | ||||
|           if (res && res.data) { | ||||
|             this.meetingList = res.data.records | ||||
|           } | ||||
|         }) | ||||
|       }, | ||||
|       handleClick(index) { | ||||
|         this.params = index; | ||||
|         this.isList = false; | ||||
|         if (index == 0 || index == 2) { | ||||
|           this.comp = "meetingList"; | ||||
|         } else if (index == 1) { | ||||
|           this.comp = "belongToMe"; | ||||
|       } | ||||
|       this.getData() | ||||
|     }, | ||||
|     tag(status) { | ||||
|       return { | ||||
|         "0": "common/1wqr.png", | ||||
|         "1": "common/1yqr.png", | ||||
|         "2": "common/1yqj.png", | ||||
|         "3": "common/toDo.png", | ||||
|       }[status] | ||||
|     }, | ||||
|     detail({id}) { | ||||
|       this.comp = "detail"; | ||||
|       this.params = id; | ||||
|       this.isList = false; | ||||
|     }, | ||||
|     getData() { | ||||
|       this.$http.post("/app/appmeetinginfo/list", null, { | ||||
|         params: { | ||||
|           listType: "1", | ||||
|           meetingStatus: "1|2", | ||||
|           size: 999 | ||||
|         } | ||||
|       }, | ||||
|       add() { | ||||
|         this.isList = false; | ||||
|         this.comp = "addMeeting"; | ||||
|       }).then(res => { | ||||
|         if (res && res.data) { | ||||
|           this.meetingList = res.data.records | ||||
|         } | ||||
|       }) | ||||
|     }, | ||||
|     handleClick(index) { | ||||
|       this.params = index; | ||||
|       this.isList = false; | ||||
|       if (index == 0 || index == 2) { | ||||
|         this.comp = "meetingList"; | ||||
|       } else if (index == 1) { | ||||
|         this.comp = "belongToMe"; | ||||
|       } | ||||
|     }, | ||||
|     add() { | ||||
|       this.isList = false; | ||||
|       this.comp = "addMeeting"; | ||||
|     } | ||||
|   }, | ||||
|  | ||||
|     filters: { | ||||
|       format(date) { | ||||
|         return date.split(" ")[1].substr(0, 5) | ||||
|       }, | ||||
|       formatDate(date, index) { | ||||
|         return date.split(" ")[0].split("-")[index] | ||||
|       }, | ||||
|       formatWeek(date) { | ||||
|         return "日一二三四五六".charAt((new Date(date.split(" ")[0]).getDay())) | ||||
|       } | ||||
|   filters: { | ||||
|     format(date) { | ||||
|       return date.split(" ")[1].substr(0, 5) | ||||
|     }, | ||||
|     formatDate(date, index) { | ||||
|       return date.split(" ")[0].split("-")[index] | ||||
|     }, | ||||
|     formatWeek(date) { | ||||
|       return "日一二三四五六".charAt((new Date(date.split(" ")[0]).getDay())) | ||||
|     } | ||||
|   }, | ||||
|  | ||||
|   } | ||||
| } | ||||
| </script> | ||||
|  | ||||
| <style lang="scss" scoped> | ||||
|   .meeting { | ||||
|     min-height: 100%; | ||||
|     background: #F5F5F5; | ||||
|     padding-bottom: 48px; | ||||
| .meeting { | ||||
|   min-height: 100%; | ||||
|   background: #F5F5F5; | ||||
|   padding-bottom: 48px; | ||||
|  | ||||
|     .label { | ||||
|       font-size: 28px; | ||||
|       font-weight: 400; | ||||
|   .label { | ||||
|     font-size: 28px; | ||||
|     font-weight: 400; | ||||
|     color: #333333; | ||||
|     line-height: 48px; | ||||
|     margin-top: 8px; | ||||
|   } | ||||
|  | ||||
|   .body { | ||||
|     box-sizing: border-box; | ||||
|     padding: 40px 32px; | ||||
|  | ||||
|     & > header { | ||||
|       font-size: 36px; | ||||
|       font-weight: 600; | ||||
|       color: #333333; | ||||
|       line-height: 48px; | ||||
|       margin-top: 8px; | ||||
|       margin-bottom: 38px; | ||||
|     } | ||||
|  | ||||
|     .body { | ||||
|     .card { | ||||
|       background-color: #FFFFFF; | ||||
|       box-sizing: border-box; | ||||
|       padding: 40px 32px; | ||||
|       padding: 32px; | ||||
|       border-radius: 8px; | ||||
|       margin-bottom: 32px; | ||||
|       position: relative; | ||||
|  | ||||
|       &:last-child { | ||||
|         margin-bottom: 0; | ||||
|       } | ||||
|  | ||||
|       & > header { | ||||
|         font-size: 36px; | ||||
|         font-size: 32px; | ||||
|         font-weight: 600; | ||||
|         color: #333333; | ||||
|         margin-bottom: 38px; | ||||
|       } | ||||
|  | ||||
|       .card { | ||||
|         background-color: #FFFFFF; | ||||
|         box-sizing: border-box; | ||||
|         padding: 32px; | ||||
|         border-radius: 8px; | ||||
|         margin-bottom: 32px; | ||||
|         position: relative; | ||||
|       .time { | ||||
|         display: flex; | ||||
|         flex-direction: column; | ||||
|         margin: 46px 0; | ||||
|  | ||||
|         &:last-child { | ||||
|           margin-bottom: 0; | ||||
|         } | ||||
|  | ||||
|         & > header { | ||||
|           font-size: 32px; | ||||
|         & > span:first-child { | ||||
|           font-size: 60px; | ||||
|           font-weight: 600; | ||||
|           color: #333333; | ||||
|           line-height: 84px; | ||||
|         } | ||||
|  | ||||
|         .time { | ||||
|           display: flex; | ||||
|           flex-direction: column; | ||||
|           margin: 46px 0; | ||||
|  | ||||
|           & > span:first-child { | ||||
|             font-size: 60px; | ||||
|             font-weight: 600; | ||||
|             color: #333333; | ||||
|             line-height: 84px; | ||||
|           } | ||||
|  | ||||
|           & > span:last-child { | ||||
|             font-size: 22px; | ||||
|             color: #333333; | ||||
|           } | ||||
|         } | ||||
|  | ||||
|         .arrow { | ||||
|           width: 28px; | ||||
|           height: 68px; | ||||
|           overflow: hidden; | ||||
|           position: relative; | ||||
|           transform: rotate(180deg); | ||||
|  | ||||
|           &:before, &:after { | ||||
|             content: ""; | ||||
|             width: 50px; | ||||
|             height: 50px; | ||||
|             position: absolute; | ||||
|             transform: scaleY(1.3) translate(30%, -40px) rotate(45deg); | ||||
|           } | ||||
|  | ||||
|           &:before { | ||||
|             top: 59px; | ||||
|             background-color: #CCCCCC; | ||||
|           } | ||||
|  | ||||
|           &:after { | ||||
|             left: 7px; | ||||
|             top: 59px; | ||||
|             background-color: #FFFFFF; | ||||
|           } | ||||
|         } | ||||
|  | ||||
|         .info { | ||||
|           & > span:first-child { | ||||
|             font-size: 30px; | ||||
|             color: #999999; | ||||
|           } | ||||
|  | ||||
|           & > span:last-child { | ||||
|             font-size: 30px; | ||||
|             color: #343D65; | ||||
|           } | ||||
|         } | ||||
|  | ||||
|         .tag { | ||||
|           width: 112px; | ||||
|           height: 112px; | ||||
|           background-repeat: no-repeat !important; | ||||
|           background-size: 100% 100% !important; | ||||
|           position: absolute; | ||||
|           top: 0; | ||||
|           right: 0; | ||||
|         & > span:last-child { | ||||
|           font-size: 22px; | ||||
|           color: #333333; | ||||
|         } | ||||
|       } | ||||
|     } | ||||
|  | ||||
|     ::v-deep .content { | ||||
|       padding: 0 !important; | ||||
|       .arrow { | ||||
|         width: 28px; | ||||
|         height: 68px; | ||||
|         overflow: hidden; | ||||
|         position: relative; | ||||
|         transform: rotate(180deg); | ||||
|  | ||||
|         &:before, &:after { | ||||
|           content: ""; | ||||
|           width: 50px; | ||||
|           height: 50px; | ||||
|           position: absolute; | ||||
|           transform: scaleY(1.3) translate(30%, -40px) rotate(45deg); | ||||
|         } | ||||
|  | ||||
|         &:before { | ||||
|           top: 59px; | ||||
|           background-color: #CCCCCC; | ||||
|         } | ||||
|  | ||||
|         &:after { | ||||
|           left: 7px; | ||||
|           top: 59px; | ||||
|           background-color: #FFFFFF; | ||||
|         } | ||||
|       } | ||||
|  | ||||
|       .info { | ||||
|         & > span:first-child { | ||||
|           font-size: 30px; | ||||
|           color: #999999; | ||||
|         } | ||||
|  | ||||
|         & > span:last-child { | ||||
|           font-size: 30px; | ||||
|           color: #343D65; | ||||
|         } | ||||
|       } | ||||
|  | ||||
|       .tag { | ||||
|         width: 112px; | ||||
|         height: 112px; | ||||
|         background-repeat: no-repeat !important; | ||||
|         background-size: 100% 100% !important; | ||||
|         position: absolute; | ||||
|         top: 0; | ||||
|         right: 0; | ||||
|       } | ||||
|     } | ||||
|   } | ||||
|  | ||||
|   ::v-deep .content { | ||||
|     padding: 0 !important; | ||||
|   } | ||||
| } | ||||
| </style> | ||||
|   | ||||
| @@ -158,7 +158,11 @@ export default { | ||||
|   methods: { | ||||
|     ...mapActions(['selectEnterpriseContact']), | ||||
|     handleSelectUser() { | ||||
|       this.selectEnterpriseContact({fromDepartmentId:0,type:["department", "user"]}).then(res => { | ||||
|       this.selectEnterpriseContact({ | ||||
|         fromDepartmentId:0, | ||||
|         type:["department", "user"], | ||||
|         selectedUserIds: this.form.attendees?.map(e=>e.id) | ||||
|       }).then(res => { | ||||
|         this.change(res?.userList || []) | ||||
|       }) | ||||
|     }, | ||||
|   | ||||
| @@ -6,26 +6,26 @@ | ||||
|     <div class="body"> | ||||
|       <template v-if="list.length"> | ||||
|         <div class="card" v-for="(item,index) in list" :key="index" @click="handleClick(item)"> | ||||
|           <header>{{item.title}}</header> | ||||
|           <header>{{ item.title }}</header> | ||||
|           <u-row justify="between"> | ||||
|             <div class="time"> | ||||
|               <span>{{item.startTime|formatTime}}</span> | ||||
|               <span>{{item.startTime|formatDate(0)}}年{{item.startTime|formatDate(1)}}月{{item.startTime|formatDate(2)}}日 周{{item.startTime|formatWeek}}</span> | ||||
|               <span>{{ item.startTime|formatTime }}</span> | ||||
|               <span>{{ item.startTime|formatDate(0) }}年{{ item.startTime|formatDate(1) }}月{{ item.startTime|formatDate(2) }}日 周{{ item.startTime|formatWeek }}</span> | ||||
|             </div> | ||||
|             <div class="arrow"></div> | ||||
|             <div class="time"> | ||||
|               <span>{{item.endTime|formatTime}}</span> | ||||
|               <span>{{item.endTime|formatDate(0)}}年{{item.endTime|formatDate(1)}}月{{item.endTime|formatDate(2)}}日 周{{item.endTime|formatWeek}}</span> | ||||
|               <span>{{ item.endTime|formatTime }}</span> | ||||
|               <span>{{ item.endTime|formatDate(0) }}年{{ item.endTime|formatDate(1) }}月{{ item.endTime|formatDate(2) }}日 周{{ item.endTime|formatWeek }}</span> | ||||
|             </div> | ||||
|           </u-row> | ||||
|           <u-row class="info"> | ||||
|             <span>发起单位:</span> | ||||
|             <span>{{item.unitName}}</span> | ||||
|             <ai-open-data type="departmentName" :openid="item.unitName"/> | ||||
|           </u-row> | ||||
|           <u-gap height="20"></u-gap> | ||||
|           <u-row class="info"> | ||||
|             <span>会议地点:</span> | ||||
|             <span>{{item.address}}</span> | ||||
|             <span>{{ item.address }}</span> | ||||
|           </u-row> | ||||
|           <div class="tag" :style="{background:'url(' + tag(item.status) + ')'}"></div> | ||||
|         </div> | ||||
| @@ -39,192 +39,193 @@ | ||||
| </template> | ||||
|  | ||||
| <script> | ||||
|   import AiTopFixed from "../../../components/AiTopFixed"; | ||||
|   import AiBack from "../../../components/AiBack"; | ||||
|   import AiEmpty from "../../../components/AiEmpty"; | ||||
| import AiTopFixed from "../../../components/AiTopFixed"; | ||||
| import AiBack from "../../../components/AiBack"; | ||||
| import AiEmpty from "../../../components/AiEmpty"; | ||||
| import AiOpenData from "../../../components/AiOpenData"; | ||||
|  | ||||
|   export default { | ||||
|     name: "belongToMe", | ||||
|     components: {AiTopFixed, AiBack, AiEmpty}, | ||||
|     data() { | ||||
|       return { | ||||
|         index: 0, | ||||
|         current: 1, | ||||
|         list: [], | ||||
|         status: "加载更多", | ||||
|       } | ||||
|     }, | ||||
|     computed: { | ||||
|       tabs() { | ||||
|         return [ | ||||
|           {name: "全部"}, | ||||
|           {name: "未开始"}, | ||||
|           {name: "进行中"}, | ||||
|           {name: "已取消"}, | ||||
|           {name: "已结束"}, | ||||
|         ] | ||||
|       } | ||||
|     }, | ||||
|     created() { | ||||
| export default { | ||||
|   name: "belongToMe", | ||||
|   components: {AiOpenData, AiTopFixed, AiBack, AiEmpty}, | ||||
|   data() { | ||||
|     return { | ||||
|       index: 0, | ||||
|       current: 1, | ||||
|       list: [], | ||||
|       status: "加载更多", | ||||
|     } | ||||
|   }, | ||||
|   computed: { | ||||
|     tabs() { | ||||
|       return [ | ||||
|         {name: "全部"}, | ||||
|         {name: "未开始"}, | ||||
|         {name: "进行中"}, | ||||
|         {name: "已取消"}, | ||||
|         {name: "已结束"}, | ||||
|       ] | ||||
|     } | ||||
|   }, | ||||
|   created() { | ||||
|     this.getList() | ||||
|   }, | ||||
|   methods: { | ||||
|     emitReachBottom() { | ||||
|       this.current = this.current + 1; | ||||
|       this.getList() | ||||
|     }, | ||||
|     methods: { | ||||
|       emitReachBottom(){ | ||||
|         this.current = this.current + 1; | ||||
|         this.getList() | ||||
|       }, | ||||
|       tag(status) { | ||||
|         return { | ||||
|           "1": this.$cdn + 'common/1wks.png', | ||||
|           "2": this.$cdn + 'common/1jxz.png', | ||||
|           "3": this.$cdn + 'common/1yqx.png', | ||||
|           "4": this.$cdn + 'common/1yjs.png' | ||||
|         }[status] | ||||
|       }, | ||||
|       getList() { | ||||
|         this.$http.post("/app/appmeetinginfo/list", null, { | ||||
|           params: { | ||||
|             listType: 0, | ||||
|             meetingStatus: this.index == 0 ? "-1" : this.index, | ||||
|             size: 10, | ||||
|             current: this.current | ||||
|           } | ||||
|         }).then(res => { | ||||
|           if (res && res.data) { | ||||
|             if (this.current > 1 && this.current > res.data.pages) { | ||||
|               this.status = "已经到底啦" | ||||
|             } | ||||
|             this.list = this.current > 1 ? [...this.list, ...res.data.records] : res.data.records | ||||
|           } | ||||
|         }) | ||||
|       }, | ||||
|       handleClick({id}) { | ||||
|         this.$parent.params = id; | ||||
|         this.$parent.isList = false; | ||||
|         this.$parent.comp = "detail" | ||||
|       }, | ||||
|       change(e) { | ||||
|         this.index = e | ||||
|         this.current = 1 | ||||
|         this.getList() | ||||
|       }, | ||||
|     tag(status) { | ||||
|       return { | ||||
|         "1": this.$cdn + 'common/1wks.png', | ||||
|         "2": this.$cdn + 'common/1jxz.png', | ||||
|         "3": this.$cdn + 'common/1yqx.png', | ||||
|         "4": this.$cdn + 'common/1yjs.png' | ||||
|       }[status] | ||||
|     }, | ||||
|     getList() { | ||||
|       this.$http.post("/app/appmeetinginfo/list", null, { | ||||
|         params: { | ||||
|           listType: 0, | ||||
|           meetingStatus: this.index == 0 ? "-1" : this.index, | ||||
|           size: 10, | ||||
|           current: this.current | ||||
|         } | ||||
|       }).then(res => { | ||||
|         if (res && res.data) { | ||||
|           if (this.current > 1 && this.current > res.data.pages) { | ||||
|             this.status = "已经到底啦" | ||||
|           } | ||||
|           this.list = this.current > 1 ? [...this.list, ...res.data.records] : res.data.records | ||||
|         } | ||||
|       }) | ||||
|     }, | ||||
|     handleClick({id}) { | ||||
|       this.$parent.params = id; | ||||
|       this.$parent.isList = false; | ||||
|       this.$parent.comp = "detail" | ||||
|     }, | ||||
|     change(e) { | ||||
|       this.index = e | ||||
|       this.current = 1 | ||||
|       this.getList() | ||||
|     }, | ||||
|   }, | ||||
|  | ||||
|     filters: { | ||||
|       formatTime(date) { | ||||
|         return date.split(" ")[1]?.substr(0, 5) | ||||
|       }, | ||||
|       formatDate(date, i) { | ||||
|         return date.split(" ")[0]?.split("-")[i] | ||||
|       }, | ||||
|       formatWeek(date) { | ||||
|         return "日一二三四五六".charAt(new Date(date.split(" ")[0]).getDay()) | ||||
|       }, | ||||
|     } | ||||
|   filters: { | ||||
|     formatTime(date) { | ||||
|       return date.split(" ")[1]?.substr(0, 5) | ||||
|     }, | ||||
|     formatDate(date, i) { | ||||
|       return date.split(" ")[0]?.split("-")[i] | ||||
|     }, | ||||
|     formatWeek(date) { | ||||
|       return "日一二三四五六".charAt(new Date(date.split(" ")[0]).getDay()) | ||||
|     }, | ||||
|   } | ||||
| } | ||||
| </script> | ||||
|  | ||||
| <style lang="scss" scoped> | ||||
|   .belong-to-me { | ||||
|     min-height: 100%; | ||||
|     background-color: #F5F5F5; | ||||
| .belong-to-me { | ||||
|   min-height: 100%; | ||||
|   background-color: #F5F5F5; | ||||
|  | ||||
|     ::v-deep .content { | ||||
|       padding: 0 !important; | ||||
|     } | ||||
|   ::v-deep .content { | ||||
|     padding: 0 !important; | ||||
|   } | ||||
|  | ||||
|     .body { | ||||
|   .body { | ||||
|     box-sizing: border-box; | ||||
|     padding: 40px 32px; | ||||
|  | ||||
|     .card { | ||||
|       background-color: #FFFFFF; | ||||
|       box-sizing: border-box; | ||||
|       padding: 40px 32px; | ||||
|       padding: 32px; | ||||
|       border-radius: 8px; | ||||
|       margin-bottom: 32px; | ||||
|       position: relative; | ||||
|  | ||||
|       .card { | ||||
|         background-color: #FFFFFF; | ||||
|         box-sizing: border-box; | ||||
|         padding: 32px; | ||||
|         border-radius: 8px; | ||||
|         margin-bottom: 32px; | ||||
|         position: relative; | ||||
|       &:last-child { | ||||
|         margin-bottom: 0; | ||||
|       } | ||||
|  | ||||
|         &:last-child { | ||||
|           margin-bottom: 0; | ||||
|         } | ||||
|       & > header { | ||||
|         font-size: 32px; | ||||
|         font-weight: 600; | ||||
|         color: #333333; | ||||
|       } | ||||
|  | ||||
|         & > header { | ||||
|           font-size: 32px; | ||||
|       .time { | ||||
|         display: flex; | ||||
|         flex-direction: column; | ||||
|         margin: 46px 0; | ||||
|  | ||||
|         & > span:first-child { | ||||
|           font-size: 60px; | ||||
|           font-weight: 600; | ||||
|           color: #333333; | ||||
|           line-height: 84px; | ||||
|         } | ||||
|  | ||||
|         .time { | ||||
|           display: flex; | ||||
|           flex-direction: column; | ||||
|           margin: 46px 0; | ||||
|  | ||||
|           & > span:first-child { | ||||
|             font-size: 60px; | ||||
|             font-weight: 600; | ||||
|             color: #333333; | ||||
|             line-height: 84px; | ||||
|           } | ||||
|  | ||||
|           & > span:last-child { | ||||
|             font-size: 22px; | ||||
|             color: #333333; | ||||
|           } | ||||
|         & > span:last-child { | ||||
|           font-size: 22px; | ||||
|           color: #333333; | ||||
|         } | ||||
|       } | ||||
|  | ||||
|         .arrow { | ||||
|           width: 28px; | ||||
|           height: 68px; | ||||
|           overflow: hidden; | ||||
|           position: relative; | ||||
|           transform: rotate(180deg); | ||||
|       .arrow { | ||||
|         width: 28px; | ||||
|         height: 68px; | ||||
|         overflow: hidden; | ||||
|         position: relative; | ||||
|         transform: rotate(180deg); | ||||
|  | ||||
|           &:before, &:after { | ||||
|             content: ""; | ||||
|             width: 50px; | ||||
|             height: 50px; | ||||
|             position: absolute; | ||||
|             transform: scaleY(1.3) translate(30%, -40px) rotate(45deg); | ||||
|           } | ||||
|  | ||||
|           &:before { | ||||
|             top: 59px; | ||||
|             background-color: #CCCCCC; | ||||
|           } | ||||
|  | ||||
|           &:after { | ||||
|             left: 7px; | ||||
|             top: 59px; | ||||
|             background-color: #FFFFFF; | ||||
|           } | ||||
|         } | ||||
|  | ||||
|         .info { | ||||
|           flex-wrap: nowrap; | ||||
|  | ||||
|           & > span:first-child { | ||||
|             font-size: 30px; | ||||
|             color: #999999; | ||||
|             flex-shrink: 0; | ||||
|           } | ||||
|  | ||||
|           & > span:last-child { | ||||
|             font-size: 30px; | ||||
|             color: #343D65; | ||||
|           } | ||||
|         } | ||||
|  | ||||
|         .tag { | ||||
|           width: 112px; | ||||
|           height: 112px; | ||||
|           background-repeat: no-repeat; | ||||
|           background-size: 100% 100% !important; | ||||
|         &:before, &:after { | ||||
|           content: ""; | ||||
|           width: 50px; | ||||
|           height: 50px; | ||||
|           position: absolute; | ||||
|           top: 0; | ||||
|           right: 0; | ||||
|           transform: scaleY(1.3) translate(30%, -40px) rotate(45deg); | ||||
|         } | ||||
|  | ||||
|         &:before { | ||||
|           top: 59px; | ||||
|           background-color: #CCCCCC; | ||||
|         } | ||||
|  | ||||
|         &:after { | ||||
|           left: 7px; | ||||
|           top: 59px; | ||||
|           background-color: #FFFFFF; | ||||
|         } | ||||
|       } | ||||
|  | ||||
|       .info { | ||||
|         flex-wrap: nowrap; | ||||
|  | ||||
|         & > span:first-child { | ||||
|           font-size: 30px; | ||||
|           color: #999999; | ||||
|           flex-shrink: 0; | ||||
|         } | ||||
|  | ||||
|         & > span:last-child { | ||||
|           font-size: 30px; | ||||
|           color: #343D65; | ||||
|         } | ||||
|       } | ||||
|  | ||||
|       .tag { | ||||
|         width: 112px; | ||||
|         height: 112px; | ||||
|         background-repeat: no-repeat; | ||||
|         background-size: 100% 100% !important; | ||||
|         position: absolute; | ||||
|         top: 0; | ||||
|         right: 0; | ||||
|       } | ||||
|     } | ||||
|   } | ||||
| } | ||||
| </style> | ||||
|   | ||||
| @@ -121,8 +121,13 @@ | ||||
|     methods: { | ||||
|       ...mapActions(['selectEnterpriseContact']), | ||||
|       handleSelectUser() { | ||||
|         this.selectEnterpriseContact({fromDepartmentId:0,type:["department", "user"]}).then(res => { | ||||
|         this.selectEnterpriseContact({ | ||||
|           fromDepartmentId:0, | ||||
|           type:["department", "user"], | ||||
|           selectedUserIds: this.form.persons?.map(e=>e.id) | ||||
|         }).then(res => { | ||||
|           this.form.persons = res?.userList || [] | ||||
|           console.log(this.form.persons); | ||||
|         }) | ||||
|       }, | ||||
|       confirm(e){ | ||||
|   | ||||
| @@ -1,5 +1,5 @@ | ||||
| <template> | ||||
|   <div :type="type" :openid="openid" v-text="openid"/> | ||||
|   <div :type="type" :openid="oid" v-text="oid"/> | ||||
| </template> | ||||
|  | ||||
| <script> | ||||
| @@ -8,6 +8,14 @@ import {mapActions} from "vuex"; | ||||
| export default { | ||||
|   name: "AiOpenData", | ||||
|   props: ['type', 'openid'], | ||||
|   computed: { | ||||
|     oid() { | ||||
|       /** | ||||
|        * 后端返回格式(cropId|userId) | ||||
|        */ | ||||
|       return this.openid?.split("|")?.[1] || this.openid || "" | ||||
|     } | ||||
|   }, | ||||
|   methods: { | ||||
|     ...mapActions(['injectJWeixin']) | ||||
|   }, | ||||
|   | ||||
		Reference in New Issue
	
	Block a user