|
@@ -1,7 +1,7 @@
|
|
|
<script setup>
|
|
|
import { ref, reactive,toRefs,onMounted } from 'vue';
|
|
|
import { useRoute } from 'vue-router';
|
|
|
-import { Icon, Toast,TreeSelect,Popup } from 'vant';
|
|
|
+import { Icon, Toast,TreeSelect,Popup,Cascader } from 'vant';
|
|
|
import moment from 'moment';
|
|
|
import 'moment/dist/locale/zh-cn';
|
|
|
moment.locale('zh-cn');
|
|
@@ -110,15 +110,45 @@ const rs_picker = ref({
|
|
|
const getResearcherList = async() => {
|
|
|
const { code,data } = await researcherList();
|
|
|
if(code !== 200) return;
|
|
|
- researcherArr.value = data.map(group => ({
|
|
|
+
|
|
|
+ /* researcherArr.value = data.map(group => ({
|
|
|
...group,
|
|
|
text: group.GroupName,
|
|
|
+ value:group.GroupId,
|
|
|
children: group.ResearcherList ? group.ResearcherList.map(child => ({
|
|
|
...child,
|
|
|
text: child.RealName,
|
|
|
- id: child.AdminId
|
|
|
+ id: child.AdminId,
|
|
|
+ value:child.AdminId
|
|
|
})) : []
|
|
|
- }));
|
|
|
+ })); */
|
|
|
+ const ficcList = formatResearcherList(data.find(i=>i.GroupName==='ficc').ResearcherList||[]);
|
|
|
+ const raiList = formatResearcherList(data.find(i=>i.GroupName==='权益').ResearcherList||[]);
|
|
|
+ researcherArr.value = [{
|
|
|
+ text:'ficc',
|
|
|
+ value:-1,
|
|
|
+ children:ficcList
|
|
|
+ },{
|
|
|
+ text:'权益',
|
|
|
+ value:-2,
|
|
|
+ children:raiList
|
|
|
+ }]
|
|
|
+}
|
|
|
+function formatResearcherList(list){
|
|
|
+ list.forEach((group) => {
|
|
|
+ // 对组做处理
|
|
|
+ group.text = group.GroupName
|
|
|
+ group.value = group.GroupId
|
|
|
+ // 如果有列表
|
|
|
+ group.ResearcherList && group.ResearcherList.forEach((item) => {
|
|
|
+ // 对研究员做处理
|
|
|
+ item.text = item.RealName
|
|
|
+ item.value = item.AdminId
|
|
|
+ })
|
|
|
+ group.children = group.ResearcherList||[]
|
|
|
+ })
|
|
|
+ // 去掉ficc全体选项
|
|
|
+ return list.filter((group) => group.GroupName !== "ficc全体");
|
|
|
}
|
|
|
onMounted(() => {
|
|
|
getResearcherList();
|
|
@@ -160,6 +190,11 @@ const confirmResearcher = () => {
|
|
|
const { eventList } = toRefs(state);
|
|
|
|
|
|
document.title = '研究员日历';
|
|
|
+
|
|
|
+function chooseResearcher(){
|
|
|
+ getEventList();
|
|
|
+ isResearcherPicker.value = false;
|
|
|
+}
|
|
|
</script>
|
|
|
|
|
|
<!-- -->
|
|
@@ -202,17 +237,25 @@ document.title = '研究员日历';
|
|
|
|
|
|
<!-- 选择研究员picker -->
|
|
|
<Popup v-model:show="isResearcherPicker" position="bottom">
|
|
|
- <view class="select-rs-header">
|
|
|
+ <!-- <view class="select-rs-header">
|
|
|
<text class="cancel" @click="cancelResearcher">取消</text>
|
|
|
<text class="ensure" @click="confirmResearcher">确认</text>
|
|
|
- </view>
|
|
|
- <TreeSelect
|
|
|
+ </view> -->
|
|
|
+ <!-- <TreeSelect
|
|
|
:items="researcherArr"
|
|
|
:main-active-index="rs_picker.firstindex"
|
|
|
:active-id="rs_picker.id"
|
|
|
@click-nav="clickFirstHandle"
|
|
|
@click-item="clickItemHandle"
|
|
|
- />
|
|
|
+ /> -->
|
|
|
+ <Cascader
|
|
|
+ title="请选择研究员"
|
|
|
+ active-color="#3385FF"
|
|
|
+ v-model="state.selectResearcher"
|
|
|
+ :options="researcherArr"
|
|
|
+ @close="cancelResearcher"
|
|
|
+ @finish="chooseResearcher"
|
|
|
+ />
|
|
|
</Popup>
|
|
|
</div>
|
|
|
</template>
|