Browse Source

添加下载班组操作

qin_v16
herenshan112 9 months ago
parent
commit
cf73730339
  1. 961
      src/components/DesignForm/app/index.vue
  2. 141
      src/components/DesignForm/public/expand/org.vue
  3. 14
      src/components/DesignForm/public/form/form.vue
  4. 3
      src/components/DesignForm/public/form/formGroup.vue
  5. 908
      src/components/DesignForm/tableListPage/index.vue
  6. 79
      src/views/hr/teams/index.vue
  7. 13
      src/views/sysworkflow/lowcodepage/appPage/appMenus.vue
  8. 3
      src/views/sysworkflow/lowcodepage/appPage/appPageForm/pageList.vue
  9. 3
      src/views/sysworkflow/lowcodepage/appPage/appSetUp/setup.vue

961
src/components/DesignForm/app/index.vue

File diff suppressed because it is too large

141
src/components/DesignForm/public/expand/org.vue

@ -3,88 +3,87 @@
@ 时间: 2024-09-12 10:03:22
@ 备注: 行政组织选择
-->
<script lang='ts' setup>
import { orgInfo } from '@/api/hr/org/type'
import { getOrgTreeList } from '@/api/hr/org/index'
<script lang="ts" setup>
import { orgInfo } from "@/api/hr/org/type";
import { getOrgTreeList } from "@/api/hr/org/index";
const props = withDefaults(
defineProps<{
modelValue?: string
disabled?: boolean
}>(),
{}
)
defineProps<{
modelValue?: string;
disabled?: boolean;
}>(),
{}
);
const emits = defineEmits<{
(e: 'update:modelValue', value: string): void
}>()
(e: "update:modelValue", value: string): void;
}>();
const value = computed({
get: () => {
if (props.modelValue != "" && props.modelValue != undefined){
return props.modelValue*1
}else{
return props.modelValue
}
},
set: (newVal: any) => {
emits('update:modelValue', newVal)
// let newValJson:criteriaForPeopleList[] = JSON.parse(newVal)
// if(newValJson.length > 0){
// let userAry = new Array
// let userKeyAry = new Array
// newValJson.forEach(item =>{
// userAry.push(item.name+"("+item.number+")")
// userKeyAry.push(item.userkey.toString())
// })
// emits('update:modelValue', userAry.join(','))
// // userlist.value = userAry.join(',')
// //
// }else{
// emits('update:modelValue', "")
// }
},
get: () => {
if (props.modelValue != "" && props.modelValue != undefined) {
return props.modelValue * 1;
} else {
return props.modelValue;
}
},
set: (newVal: any) => {
emits("update:modelValue", newVal);
// let newValJson:criteriaForPeopleList[] = JSON.parse(newVal)
// if(newValJson.length > 0){
// let userAry = new Array
// let userKeyAry = new Array
// newValJson.forEach(item =>{
// userAry.push(item.name+"("+item.number+")")
// userKeyAry.push(item.userkey.toString())
// })
// emits('update:modelValue', userAry.join(','))
// // userlist.value = userAry.join(',')
// //
// }else{
// emits('update:modelValue', "")
// }
},
});
const orgTreeList = ref<orgInfo[]>();
const orgTreeLoading = ref(false); //
const orgTreeProps ={
children: 'child',
label: 'name',
} //
const orgTreeList = ref<orgInfo[]>();
const orgTreeLoading = ref(false); //
const orgTreeProps = {
children: "child",
label: "name",
}; //
function haveOrgTreeInfo(){
orgTreeLoading.value = true;
getOrgTreeList({"orgid": 309})
.then(({ data })=>{
orgTreeList.value = data
}).finally(()=>{orgTreeLoading.value = false;})
function haveOrgTreeInfo() {
orgTreeLoading.value = true;
getOrgTreeList({ orgid: 309 })
.then(({ data }) => {
console.log("行政组织树对照值", data);
orgTreeList.value = data;
})
.finally(() => {
orgTreeLoading.value = false;
});
}
onBeforeMount(() => {
haveOrgTreeInfo();
})
haveOrgTreeInfo();
});
onMounted(() => {
// console.log("value---1--",value.value,props.modelValue)
nextTick(() => {})
})
// console.log("value---1--",value.value,props.modelValue)
nextTick(() => {
haveOrgTreeInfo();
});
});
</script>
<template>
<el-tree-select
v-bind="$props"
v-model="value"
v-loading="orgTreeLoading"
node-key="id"
:props="orgTreeProps"
:data="orgTreeList"
check-strictly
:render-after-expand="false"
/>
<el-tree-select
v-bind="$props"
v-model="value"
v-loading="orgTreeLoading"
node-key="id"
:props="orgTreeProps"
:data="orgTreeList"
check-strictly
:render-after-expand="false"
/>
<div></div>
</template>
<style lang='scss' scoped>
</style>
<style lang="scss" scoped></style>

14
src/components/DesignForm/public/form/form.vue

@ -486,13 +486,13 @@ watch(
// tProp
provide(constControlChange, ({ key, value, data, tProp, type, attribute }: any) => {
/* console.log("----------1--------->",key)
console.log("表单组件值改变事件----------2--------->",value)
console.log("表单组件值改变事件----------3--------->",data)
console.log("表单组件值改变事件----------4--------->",tProp)
console.log("表单组件值改变事件----------5--------->",type)
console.log("表单组件值改变事件----------6--------->",attribute)
console.log("表单组件值改变事件----------11--------->",model.value) */
// console.log("----------1--------->", key);
// console.log("----------2--------->", value);
// console.log("----------3--------->", data);
// console.log("----------4--------->", tProp);
// console.log("----------5--------->", type);
// console.log("----------6--------->", attribute);
// console.log("----------11--------->", model.value);
let fieldVal = {};
for (let i in model.value) {
if (i == key) {

3
src/components/DesignForm/public/form/formGroup.vue

@ -265,13 +265,14 @@ const groupClick = (item: any, ele?: string) => {
inputStyle: {},
};
}
// console.log("--->",getGroupName(item))
store.setActiveKey(getGroupName(item));
store.setControlAttr(item);
// grid
state.gridAdd = item.type === "grid";
// state.clone = !notNested(item.type)
state.clone = !notNestedTableFlex(item.type);
console.log("点击激活当前--->", store);
};
//
const getFormItemStyle = (ele: FormList) => {

908
src/components/DesignForm/tableListPage/index.vue

File diff suppressed because it is too large

79
src/views/hr/teams/index.vue

@ -10,8 +10,11 @@ import {
addteamcont,
eiteteamcont,
} from "@/api/hr/org/index";
import { govthree } from "@/api/opk/opk/api";
import BatchImportTimePeople from "@/views/hr/teams/batchImportTimePeople.vue";
const downloadUrlStis =
import.meta.env.VITE_APP_BASE_API + "/systemapi/rongxin/downLoadTearms";
const searchFormRef = ref(ElForm);
const addFormRef = ref(ElForm);
@ -26,6 +29,8 @@ const tiemList = ref([]);
const selectTableLength = ref(0);
const tableIds = ref<string[]>([]); //ID
const daochuOpen = ref(false);
/**
@ 作者: 秦东
@ 时间: 2025-01-13 13:48:00
@ -42,7 +47,17 @@ const gainTimeList = () => {
loadLing.value = false;
});
};
/**
@ 作者: 秦东
@ 时间: 2025-02-27 10:47:14
@ 功能: 获取公司信息
*/
const orgList = ref<any>([]);
const govthrees = () => {
govthree({ id: 309, all: 1 }).then((data) => {
orgList.value = data.data;
});
};
/**
@ 作者: 秦东
@ 时间: 2025-01-13 13:54:15
@ -50,6 +65,7 @@ const gainTimeList = () => {
*/
onMounted(() => {
gainTimeList();
govthrees();
});
/**
@ 作者: 秦东
@ -253,6 +269,26 @@ const closeBatchImport = () => {
setupTeimTitle.value = "";
setupOpen.value = false;
};
/**
@ 作者: 秦东
@ 时间: 2025-02-27 10:34:02
@ 功能: 打开导出页面
*/
const upLoadOrg = reactive({
orgId: "",
});
const openUploadPage = () => {
daochuOpen.value = true;
};
const closeUploadPeople = () => {
daochuOpen.value = false;
};
const orgTreeProps = {
label: "name",
children: "child",
};
//
const downloadPage = () => {};
</script>
<template>
<div class="app-container">
@ -289,16 +325,16 @@ const closeBatchImport = () => {
<i-ep-plus />
新增
</el-button>
<!-- <el-button
<el-button
v-hasPerm="['339372760021086208']"
plain
type="primary"
:disabled="tiemList.length === 0"
@click="handleDeleteOrgClass()"
@click="openUploadPage()"
>
<i-ep-delete />删除
<i class="fa fa-upload" />导出人员
</el-button>
<span class="select-text">已选 {{ selectTableLength }} </span> -->
<!--<span class="select-text">已选 {{ selectTableLength }} </span> -->
</div>
<el-table
@ -425,6 +461,39 @@ const closeBatchImport = () => {
@closeOpen="closeBatchImport"
/>
</el-dialog>
<el-dialog
v-model="daochuOpen"
title="导出班组人员"
width="250"
:before-close="closeUploadPeople"
>
<el-form ref="addFormRef" :model="upLoadOrg">
<el-form-item label="行政组织" prop="orgId">
<el-tree-select
v-model="upLoadOrg.orgId"
:data="orgList"
filterable
check-strictly
style="width: 240px"
:props="orgTreeProps"
node-key="id"
clearable
/>
</el-form-item>
<el-form-item>
<el-link
type="primary"
:underline="false"
:href="downloadUrlStis + '?org=' + upLoadOrg.orgId"
target="_blank"
>
<el-button type="primary"> 确定下载 </el-button>
</el-link>
<el-button @click="closeUploadPeople"> 取消 </el-button>
</el-form-item>
</el-form>
</el-dialog>
</div>
</template>
<style lang="scss" scoped>

13
src/views/sysworkflow/lowcodepage/appPage/appMenus.vue

@ -326,7 +326,18 @@ const openAppPage = (val: any) => {
<template #default="{ node, data }">
<div class="appMenuTitle">
<el-space wrap>
<svg-icon prefix="icon" :icon-class="data.svg" @click="setAppMenusSvg(data)" />
<el-image
v-if="data.icon != ''"
style="width: 15px; height: 15px"
:src="data.icon"
:fit="fit"
/>
<svg-icon
v-else
prefix="icon"
:icon-class="data.svg"
@click="setAppMenusSvg(data)"
/>
<!-- <el-tooltip :content="node.label" placement="top" effect="dark">
<el-text class="w-120px mb-2" truncated @click="openAppPage(data)">{{node.label}}</el-text>
</el-tooltip> -->

3
src/views/sysworkflow/lowcodepage/appPage/appPageForm/pageList.vue

@ -1665,7 +1665,8 @@ const dialogConfirm = (editVal: string) => {
</el-collapse-item>
</el-collapse>
</div>
<el-divider content-position="left">功能按钮</el-divider><!-- liwenxuan -->
<el-divider content-position="left">功能按钮</el-divider
><!-- liwenxuan 添加扫码功能 -->
<div class="form_tabs">
<el-table
ref="tableAttrBut"

3
src/views/sysworkflow/lowcodepage/appPage/appSetUp/setup.vue

@ -134,8 +134,7 @@ const beforeAvatarUpload: UploadProps["beforeUpload"] = (rawFile) => {
};
</script>
<template>
<el-card shadow="always"
>{{ props }}
<el-card shadow="always">
<el-divider content-position="left">App基础设置</el-divider>
<el-form
ref="ruleFormRef"

Loading…
Cancel
Save