|
|
@ -11,44 +11,42 @@ |
|
|
|
<view class="p-3 pt-0" v-show="iconRef"> |
|
|
|
<!-- 提交人和时间信息 --> |
|
|
|
<view class="text-gray-400"> |
|
|
|
<span class="mr-2">{{ submitter }}</span> <span> {{ timeRef }}</span> |
|
|
|
<span class="mr-2">{{ submitter }}</span> <span> {{ dayjs(+timeRef).format('MM-DD HH:mm') }}</span> |
|
|
|
</view> |
|
|
|
<!-- 提交的链接信息 --> |
|
|
|
<view class="w-64 break-all text-blue-400 py-2"> http://192.168.0.99/gateway/defaultwbs/swagger-ui.html </view> |
|
|
|
<view class="w-64 break-all text-blue-400 py-2"> {{linkRef}} </view> |
|
|
|
<!-- 审核人信息 --> |
|
|
|
<view class="text-gray-400 flex justify-between"> |
|
|
|
<span>审核</span> |
|
|
|
<span class="text-blue-400">更多记录</span> |
|
|
|
</view> |
|
|
|
<view class="px-2"> |
|
|
|
<!-- 当前审核人(自己) --> |
|
|
|
<view class="mt-3"> |
|
|
|
<span class="text-sm mr-4">冯教授</span> |
|
|
|
<!-- 遍历审核人信息 --> |
|
|
|
<view class="mt-3 text-sm flex justify-between" v-for="item in checkerList"> |
|
|
|
<view> |
|
|
|
<view>{{item.checkerName}}</view> |
|
|
|
<view class="my-1">{{item.remark}}</view> |
|
|
|
<view class="my-1" v-if="item.checkTime > 0">{{dayjs(+item.checkTime).format('MM-DD HH:mm')}}</view> |
|
|
|
</view> |
|
|
|
<view v-show="item.isMine !== 1">{{item.status == null ? '待审核': item.status == '1' ? '已通过':'已驳回'}}</view> |
|
|
|
<!-- 判断是否是当前审核人 --> |
|
|
|
<view v-show="item.isMine === 1 && item.status == null"> |
|
|
|
<u-button size="mini" shape="circle" class="mr-4 h-1-4 leading-1-4" type="primary" @click="approved">通过</u-button> |
|
|
|
<u-button size="mini" shape="circle" class="h-1-4 leading-1-4" type="error" @click="rebut">驳回</u-button> |
|
|
|
</view> |
|
|
|
<!-- 其他审核人 --> |
|
|
|
<view class="mt-3 text-sm flex justify-between"> |
|
|
|
<!-- 当前审核人的审核状态并展示得分情况 --> |
|
|
|
<view v-show="item.isMine === 1 && item.status !== null" class="text-sm"> |
|
|
|
<view> |
|
|
|
<view class="pb-2">薇薇安</view> |
|
|
|
<view class="pb-2 text-gray-400">赞,很棒!</view> |
|
|
|
<view class="text-gray-400">12/28 12:55</view> |
|
|
|
{{item.status == '1' ? '已通过':'已驳回'}} |
|
|
|
</view> |
|
|
|
<view> |
|
|
|
<view>已通过</view> |
|
|
|
<!-- TODO:圆形进度条 --> |
|
|
|
<view> |
|
|
|
<!-- <u-circle-progress active-color="#FA8C16" :percent="80" width="90" border-width="7" class="mt-2"> |
|
|
|
<view v-if="item.score > 0"> |
|
|
|
<u-circle-progress active-color="#FA8C16" :percent="item.score" width="90" border-width="7" class="mt-2"> |
|
|
|
<view class="u-progress-content"> |
|
|
|
<view class="progressDot text-white text-center">80</view> |
|
|
|
</view> |
|
|
|
</u-circle-progress> --> |
|
|
|
<view class="progressDot text-white text-center">{{item.score}}</view> |
|
|
|
</view> |
|
|
|
</u-circle-progress> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
<view class="mt-3 text-sm flex justify-between"> |
|
|
|
<view> 周亮</view> |
|
|
|
<view>待审核</view> |
|
|
|
</view> |
|
|
|
</view> |
|
|
|
</view> |
|
|
@ -72,9 +70,6 @@ |
|
|
|
maxlength="30" |
|
|
|
v-model="adviceRef" |
|
|
|
></textarea> |
|
|
|
<!-- <view @click="adviceRef = '加油,再接再厉!' " class="mx-5"> |
|
|
|
加油,再接再厉! |
|
|
|
</view> --> |
|
|
|
<view class="common-list"> |
|
|
|
<view v-for="item in commonWords" class="h-12 leading-12 w-62 mx-5" @click="adviceRef = item"> |
|
|
|
{{item}} |
|
|
@ -101,9 +96,6 @@ |
|
|
|
maxlength="30" |
|
|
|
v-model="rebutRef" |
|
|
|
></textarea> |
|
|
|
<!-- <view @click="adviceRef = '加油,再接再厉!' " class="mx-5"> |
|
|
|
加油,再接再厉! |
|
|
|
</view> --> |
|
|
|
<view class="common-list"> |
|
|
|
<view v-for="item in rebutWords" class="h-12 leading-12 w-62 mx-5" @click="rebutRef = item"> |
|
|
|
{{item}} |
|
|
@ -124,12 +116,15 @@ |
|
|
|
<script setup> |
|
|
|
import { ref} from 'vue'; |
|
|
|
import { useStore } from 'vuex'; |
|
|
|
import dayjs from 'dayjs'; |
|
|
|
const props = defineProps({ task: { type: Object, default: () => {} } }); |
|
|
|
const store = useStore(); |
|
|
|
|
|
|
|
const nameRef = ref('入职插件V0.8原型输出'); |
|
|
|
const iconRef = ref(false); |
|
|
|
const submitter = ref('黛西'); |
|
|
|
const timeRef = ref('12/28 15:55'); |
|
|
|
const timeRef = ref(''); |
|
|
|
const linkRef = ref('') |
|
|
|
const approvedModal = ref(false); //审核通过的modal |
|
|
|
const rebutModal = ref(false) //审核驳回的modal |
|
|
|
const score = ref(1); //分数 |
|
|
@ -137,19 +132,34 @@ const adviceRef = ref('') // 审核通过的审批语 |
|
|
|
const rebutRef = ref('') // 审核驳回的审批语 |
|
|
|
const commonWords = ['加油,再接再厉!','很棒!','不错,很详细!','加油,再接再厉'] // 审核通过常用的审批语 |
|
|
|
const rebutWords = ['不详细','还有需要改进的地方','驳回审批1','驳回审批2'] //审核驳回常用的审批语 |
|
|
|
const checkerList = ref([]) |
|
|
|
|
|
|
|
// 获取到当前的用户信息 |
|
|
|
const member = store.state.role.members.filter(item => item.isMine === 1); |
|
|
|
|
|
|
|
// 获取当前审核信息 |
|
|
|
|
|
|
|
(async function getDeliverList(){ |
|
|
|
const param = { taskId:props.task.id} |
|
|
|
const data = await uni.$u.api.getDeliverByTaskId(param); |
|
|
|
// console.log(data) |
|
|
|
linkRef.value = data.details[0] |
|
|
|
timeRef.value = data.submitTime |
|
|
|
nameRef.value = data.deliverName |
|
|
|
checkerList.value = data.checkerList |
|
|
|
console.log(checkerList.value) |
|
|
|
})(); |
|
|
|
|
|
|
|
// 通过的按钮事件 |
|
|
|
async function approved() { |
|
|
|
// console.log('通过') |
|
|
|
approvedModal.value = true; |
|
|
|
|
|
|
|
} |
|
|
|
// 驳回的按钮事件 |
|
|
|
function rebut() { |
|
|
|
rebutModal.value = true |
|
|
|
console.log('驳回'); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// 审核通过发送相关请求 |
|
|
|
function confirmAdvice(){ |
|
|
|
// TODO:发送请求 |
|
|
@ -168,9 +178,23 @@ function confirmAdvice(){ |
|
|
|
} |
|
|
|
approvedModal.value = false |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// 审核驳回发送相关请求 |
|
|
|
function confirmReject(){ |
|
|
|
// TODO:发送请求 |
|
|
|
try { |
|
|
|
const param = { |
|
|
|
projectId: store.state.project.project.id, |
|
|
|
deliverRecordId:store.state.project.deliverRecordId, |
|
|
|
type:2, |
|
|
|
remark:rebutRef.value, |
|
|
|
score:'' |
|
|
|
} |
|
|
|
uni.$u.api.checkDeliver(param) |
|
|
|
} catch (error) { |
|
|
|
console.log('error: ', error); |
|
|
|
} |
|
|
|
rebutModal.value = false |
|
|
|
} |
|
|
|
</script> |
|
|
|