diff --git a/env/.env.development b/env/.env.development
index 44dd13a..096ebec 100644
--- a/env/.env.development
+++ b/env/.env.development
@@ -4,5 +4,5 @@ NODE_ENV = 'development'
VITE_DELETE_CONSOLE = false
# 是否开启sourcemap
VITE_SHOW_SOURCEMAP = true
-VITE_SERVER_BASEURL = 'http://10.75.15.249:8080/jeecg-boot'
+VITE_SERVER_BASEURL = 'http://10.75.15.247:8080/jeecg-boot'
#VITE_SERVER_BASEURL = 'https://36.112.48.190/jeecg-boot'
\ No newline at end of file
diff --git a/src/api/process/index.ts b/src/api/process/index.ts
index f3f67c3..a1db58f 100644
--- a/src/api/process/index.ts
+++ b/src/api/process/index.ts
@@ -66,3 +66,12 @@ export function getHisInfo(config : Object) {
data: config
})
}
+
+
+export function taskEntrust(config : Object) { //委托
+ return http({
+ url: '/act/task/taskEntrust',
+ method: 'PUT',
+ data: config
+ })
+}
diff --git a/src/components/SelectDept/SelectDept.vue b/src/components/SelectDept/SelectDept.vue
index 22328e3..69823ef 100644
--- a/src/components/SelectDept/SelectDept.vue
+++ b/src/components/SelectDept/SelectDept.vue
@@ -54,7 +54,7 @@ const props = defineProps({
},
rowKey: {
type: String,
- default: 'key',
+ default: 'id',
},
labelKey: {
type: String,
@@ -81,6 +81,7 @@ const confirm = () => {
const titles = treeValue.value.map((item) => item.title)
const keys = treeValue.value.map((item) => item.key).join(',')
showText.value = titles.join(',')
+ console.log(showText)
popupShow.value = false
emit('update:modelValue', keys)
emit('change', keys)
@@ -114,6 +115,7 @@ const handleTreeChange = (value, record) => {
const transformField = (result) => {
for (let i of result) {
i.value = i.key
+ i.name = i.title
if (i.isLeaf == false) {
i.leaf = false
} else if (i.isLeaf == true) {
@@ -131,9 +133,11 @@ const asyncLoadTreeData = ({ originItem }) => {
http
.get(api.queryDepartTreeSync, param)
.then((res: any) => {
+ console.log(res)
if (res.success) {
const { result } = res
transformField(result)
+ console.log(result)
resolve(result)
} else {
resolve(null)
@@ -155,6 +159,7 @@ function loadRoot() {
if (result && result.length > 0) {
transformField(result)
treeData.value = result
+ console.log(result)
}
} else {
console.error('部门组件加载根节点数据失败~')
@@ -172,14 +177,16 @@ function loadItemByCode() {
// @ts-ignore
value = value.join(',')
}
+ console.log(treeData)
if (value === treeData.value.map((item) => item.key).join(',')) {
// 说明是刚选完,内部已有翻译。不需要再请求
return
}
http
- .get(api.queryDepartTreeSync, { ids: value })
+ .get(api.queryDepartTreeSync, { ids: value,primaryKey: props.rowKey})
.then((res: any) => {
if (res.success) {
+ console.log(res)
const { result = [] } = res
showText.value = result.map((item) => item[props.labelKey]).join(',')
} else {
diff --git a/src/components/SelectUser/components/SelectUserModal.vue b/src/components/SelectUser/components/SelectUserModal.vue
index 97cfc92..c5f46fc 100644
--- a/src/components/SelectUser/components/SelectUserModal.vue
+++ b/src/components/SelectUser/components/SelectUserModal.vue
@@ -23,7 +23,12 @@
@search="handleSearch"
@clear="handleClear"
/>
+
+
+
+
+
@@ -39,6 +44,7 @@
账号:{{ item.username }}
姓名:{{ item.realname }}
+ 部门:{{ item.orgCode_dictText }}
@@ -64,6 +70,7 @@
账号:{{ item.username }}
姓名:{{ item.realname }}
+ 部门:{{ item.orgCode_dictText }}
@@ -87,6 +94,9 @@ import { http } from '@/utils/http'
import { isArray, isString } from '@/utils/is'
import { cache, getFileAccessHttpUrl } from '@/common/uitls'
import defaultAvatar from '@/static/default-avatar.png'
+import SelectDept from '@/components/SelectDept/SelectDept.vue'
+
+
defineOptions({
name: 'SelectUserModal',
options: {
@@ -121,12 +131,14 @@ const paging = ref(null)
const dataList = ref([])
const checkedValue: any = ref(props.multi ? [] : '')
const checkboxRef = ref(null)
+const dept = ref('')
const search = reactive({
keyword: '',
placeholder: '输入姓名可搜索',
field: 'realname',
})
+
const handleClose = () => {
setTimeout(() => {
emit('close')
@@ -155,6 +167,10 @@ const handleCancel = () => {
handleClose()
console.log('取消了~')
}
+const bmChange = (value)=>{ //部门发生改变 by 闵
+ paging.value.reload()
+}
+
// 搜索
function handleSearch() {
paging.value.reload()
@@ -162,6 +178,7 @@ function handleSearch() {
// 清除搜索条件
function handleClear() {
search.keyword = ''
+ dept.value = '' //清空部门 min
handleSearch()
}
const hanldeCheck = (index, username) => {
@@ -197,9 +214,13 @@ const queryList = (pageNo, pageSize) => {
if (search.keyword) {
pararms[search.field] = `*${search.keyword}*`
}
+ if(dept.value){
+ pararms['orgCode'] = dept.value
+ }
http
.get(`${api.userlist}`, pararms)
.then((res: any) => {
+ console.log(res)
if (res.success && res.result.records) {
paging.value.complete(res.result.records ?? [])
} else {
diff --git a/src/pages/process/components/myTask.vue b/src/pages/process/components/myTask.vue
index c4679a4..03647db 100644
--- a/src/pages/process/components/myTask.vue
+++ b/src/pages/process/components/myTask.vue
@@ -33,7 +33,7 @@
办理
- 委托
+ 委托
@@ -51,6 +51,15 @@
正在加载...
+
+ (modalShow = false)"
+ >
@@ -65,7 +74,12 @@
onReachBottom,
onPullDownRefresh
} from '@dcloudio/uni-app';
+ import {
+ taskEntrust
+ } from '@/api/process'
import { useToast, useMessage } from 'wot-design-uni'
+ import SelectUserModal from '@/components/SelectUser/components/SelectUserModal.vue'
+
defineOptions({
name: 'myTask',
options: {
@@ -78,7 +92,9 @@
let pageSize = 10
let loading = false
const list = ref([])
-
+ const user = ref('')
+ const modalShow = ref(false)
+ const userTask = ref({}) //点击的流程节点
const getList = () => {
@@ -96,6 +112,31 @@
})
}
+ const entrust = (item)=>{ //委托
+ modalShow.value = true;
+ userTask.value = {};
+ userTask.value = item;
+ }
+
+ const handleChange = (data) => {
+ const rowkey = data.map((item) => item.username).join(',')
+ console.log(rowkey)
+ // var params = {
+ // taskId:userTask.value.id,
+ // taskAssignee:rowkey
+ // };//查询条件
+ // taskEntrust(params).then(res=>{
+ // if(res.success){
+ // toast.success(res.message)
+ // uni.redirectTo({
+ // url: './approvalTabbar'
+ // });
+ // }else{
+ // toast.error(res.message)
+ // }
+ // })
+ }
+
const goToPage = (item)=>{
//判断是否是签收项目,提示是否签收
if(item.taskAssigneeName&&item.taskAssigneeName!=''){
@@ -111,10 +152,16 @@
title: '确认签收吗',
})
.then(() => {
- claim({taskId:item.id}).then(()=>{
- uni.redirectTo({
- url: './approvalTabbar'
- });
+ claim({taskId:item.id}).then((res)=>{
+ if(res.success){
+ toast.success(res.message)
+ uni.redirectTo({
+ url: './approvalTabbar'
+ });
+ }else{
+ toast.error(res.message)
+ }
+
})
})
}
diff --git a/src/pages/process/taskHandle.vue b/src/pages/process/taskHandle.vue
index db05e3b..4b0461e 100644
--- a/src/pages/process/taskHandle.vue
+++ b/src/pages/process/taskHandle.vue
@@ -29,11 +29,11 @@
-
+
流程节点:{{item.name=='start'?'开始':item.name}}
负责人:{{item.assigneeName}}
开始时间:{{item.startTime}}
- 结束时间:{{item.endTime}}
+ 结束时间:{{item.endTime}}
{{item.deleteReason}}
@@ -128,7 +128,11 @@
if (res.success) {
console.log(res)
dataSource.value = res.result.records
- completedNum.value = res.result.records.length-1
+ //查找最后一个,结束时间
+ completedNum.value = res.result.records.length
+ res.result.records.forEach((item,index)=>{
+ if(item.endTime) completedNum.value = index+1
+ })
}
})
})
@@ -171,6 +175,15 @@
color: #fff;
}
+ .bg-green {
+ background-color: #39b54a;
+ color: #fff;
+ }
+
+ .bg-gray {
+ background-color: #f0f0f0;
+ color: #333;
+ }
.content{
padding: 5px 25px 5px 15px;
}