|
@ -3,7 +3,7 @@ |
|
|
<!-- TODO: if 是测试用的 --> |
|
|
<!-- TODO: if 是测试用的 --> |
|
|
<view class="my-2 bg-white p-2 rounded-md relative" @longpress.prevent="showMask = true" v-if="deliverRef"> |
|
|
<view class="my-2 bg-white p-2 rounded-md relative" @longpress.prevent="showMask = true" v-if="deliverRef"> |
|
|
<!-- 插件名称输入和提交 --> |
|
|
<!-- 插件名称输入和提交 --> |
|
|
<view class="flex item-center justify-between py-3 pl-2" > |
|
|
<view class="flex item-center justify-between py-3 pl-2"> |
|
|
<!-- <u-input v-model="iptValue" type="text" :border="false" placeholder="请编辑交付物名称" /> --> |
|
|
<!-- <u-input v-model="iptValue" type="text" :border="false" placeholder="请编辑交付物名称" /> --> |
|
|
<!-- TODO: 可能会有多个交付物 需要遍历 或者展示第一个 --> |
|
|
<!-- TODO: 可能会有多个交付物 需要遍历 或者展示第一个 --> |
|
|
<!-- TODO: 应该是交付物的名称 --> |
|
|
<!-- TODO: 应该是交付物的名称 --> |
|
@ -23,22 +23,23 @@ |
|
|
<!-- 插件上传方式 --> |
|
|
<!-- 插件上传方式 --> |
|
|
<view> |
|
|
<view> |
|
|
<view class="linkBox"> |
|
|
<view class="linkBox"> |
|
|
<u-input v-model="linkValue" type="text" :border="true" placeholder="请输入交付物地址/链接" class="input"> </u-input> |
|
|
<u-input v-model="linkValue" type="text" :border="true" placeholder="请输入交付物地址/链接" class="input"> </u-input> |
|
|
</view> |
|
|
</view> |
|
|
<view class="mt-3"> |
|
|
<view class="mt-3"> |
|
|
<u-button size="mini" :plain="true" class="mr-3 btns" @click="paste">粘贴</u-button> |
|
|
<u-button size="mini" :plain="true" class="mr-3 btns" @click="paste">粘贴</u-button> |
|
|
<u-button size="mini" :plain="true" class="mr-3 btns" @click="uploadFile">文件</u-button> |
|
|
<u-button size="mini" :plain="true" class="mr-3 btns" @click="uploadFile">文件</u-button> |
|
|
<u-button size="mini" :plain="true" class="mr-3 btns" @click="uploadPhoto">拍照</u-button> |
|
|
<u-button size="mini" :plain="true" class="mr-3 btns" @click="uploadPhoto">拍照</u-button> |
|
|
</view> |
|
|
</view> |
|
|
</view> |
|
|
</view> |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<!-- 编辑和删除的遮罩层 --> |
|
|
<!-- 编辑和删除的遮罩层 --> |
|
|
<view class="mask flex items-center justify-center bg-grey" v-show="showMask" @click="showMask = false"> |
|
|
<view class="mask flex items-center justify-center bg-grey" v-show="showMask" @click="showMask = false"> |
|
|
<view class="bg-yellow-500 text-white w-12 h-12 text-center leading-12 rounded-w-12 mx-8" @click.stop="showEditModal = true">修改</view> |
|
|
<view class="bg-yellow-500 text-white w-12 h-12 text-center leading-12 rounded-w-12 mx-8" @click.stop="showEditModal = true" |
|
|
|
|
|
>修改</view |
|
|
|
|
|
> |
|
|
<view class="bg-red-500 text-white w-12 h-12 text-center leading-12 rounded-w-12 mx-8" @click.stop="deleteDeliver">删除</view> |
|
|
<view class="bg-red-500 text-white w-12 h-12 text-center leading-12 rounded-w-12 mx-8" @click.stop="deleteDeliver">删除</view> |
|
|
<!-- 删除的二次提示modal --> |
|
|
<!-- 删除的二次提示modal --> |
|
|
<u-modal v-model="showDeleteModal" :content="content" :show-cancel-button="true" @confirm="confirmDelete"></u-modal> |
|
|
<u-modal v-model="showDeleteModal" :content="content" :show-cancel-button="true" @confirm="confirmDelete"></u-modal> |
|
|
</view> |
|
|
</view> |
|
|
|
|
|
|
|
|
<!-- 编辑交付物标题的modal --> |
|
|
<!-- 编辑交付物标题的modal --> |
|
@ -66,25 +67,20 @@ |
|
|
</template> |
|
|
</template> |
|
|
|
|
|
|
|
|
<script setup> |
|
|
<script setup> |
|
|
import { ref, computed} from 'vue'; |
|
|
import { ref, computed } from 'vue'; |
|
|
|
|
|
|
|
|
const props = defineProps({ task: { type: Object, default: () => {} } }) |
|
|
const props = defineProps({ task: { type: Object, default: () => {} } }); |
|
|
// console.log(props.task.name) |
|
|
// console.log(props.task.name) |
|
|
|
|
|
|
|
|
// 插件名称 |
|
|
// 插件名称 |
|
|
const deliverRef = ref(true); // 交付物插件的显示与销毁 |
|
|
const deliverRef = ref(true); // 交付物插件的显示与销毁 |
|
|
const linkValue = ref(''); // 链接的值 |
|
|
const linkValue = ref(''); // 链接的值 |
|
|
const showMask = ref(false); // 编辑和删除页面 |
|
|
const showMask = ref(false); // 编辑和删除页面 |
|
|
const showEditModal = ref(false); // 编辑交付物标题的modal |
|
|
const showEditModal = ref(false); // 编辑交付物标题的modal |
|
|
<<<<<<< HEAD |
|
|
|
|
|
const newInputRef = ref(taskRef.task.name); // 修改的插件名的值 |
|
|
const newInputRef = ref(taskRef.task.name); // 修改的插件名的值 |
|
|
======= |
|
|
const showDeleteModal = ref(false); // 删除二次提示的modal |
|
|
const newInputRef = ref(props.task.name); // 修改的插件名的值 |
|
|
const content = '是否确定删除'; |
|
|
// const reviewerData = ref(); // 获取选中的审核人 |
|
|
const uBadgeShow = ref(false); // u-badge的显示与隐藏 |
|
|
>>>>>>> 5ae68e2ac8215a85885453cb2cfd4fdbf68f1795 |
|
|
|
|
|
const showDeleteModal = ref(false) // 删除二次提示的modal |
|
|
|
|
|
const content ='是否确定删除' |
|
|
|
|
|
const uBadgeShow = ref(false) //u-badge的显示与隐藏 |
|
|
|
|
|
const deliver = ref(null); |
|
|
const deliver = ref(null); |
|
|
|
|
|
|
|
|
// 判断提交按钮的状态 |
|
|
// 判断提交按钮的状态 |
|
@ -92,17 +88,17 @@ const submitState = computed(() => !linkValue.value); |
|
|
|
|
|
|
|
|
// 根据任务id获取交付物信息 |
|
|
// 根据任务id获取交付物信息 |
|
|
(async function getDeliverData() { |
|
|
(async function getDeliverData() { |
|
|
try{ |
|
|
try { |
|
|
const { id: taskId } = props.task; |
|
|
const { id: taskId } = props.task; |
|
|
if (!taskId) return; |
|
|
if (!taskId) return; |
|
|
const param = { "taskId": props.task.id } |
|
|
const param = { taskId: props.task.id }; |
|
|
const data = await uni.$u.api.getDeliverByTaskId(param) |
|
|
const data = await uni.$u.api.getDeliverByTaskId(param); |
|
|
deliver.value = data; |
|
|
deliver.value = data; |
|
|
}catch(error){ |
|
|
} catch (error) { |
|
|
console.log('error: ', error); |
|
|
console.log('error: ', error); |
|
|
uni.$ui.showToast('获取交付物信息失败'); |
|
|
uni.$ui.showToast('获取交付物信息失败'); |
|
|
} |
|
|
} |
|
|
})(); |
|
|
}()); |
|
|
|
|
|
|
|
|
// (async function getDeliverData(){ |
|
|
// (async function getDeliverData(){ |
|
|
// try{ |
|
|
// try{ |
|
@ -117,7 +113,6 @@ const submitState = computed(() => !linkValue.value); |
|
|
// } |
|
|
// } |
|
|
// }) |
|
|
// }) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 提交后验证链接并修改状态 |
|
|
// 提交后验证链接并修改状态 |
|
|
function submit() { |
|
|
function submit() { |
|
|
const reg = /^http(s)?:\/\/([\w-]+\.)+[\w-]+(\/[\w- ./?%&=]*)?$/; |
|
|
const reg = /^http(s)?:\/\/([\w-]+\.)+[\w-]+(\/[\w- ./?%&=]*)?$/; |
|
@ -125,15 +120,13 @@ function submit() { |
|
|
// 显示toast信息 |
|
|
// 显示toast信息 |
|
|
uni.$ui.showToast('请输入正确的链接'); |
|
|
uni.$ui.showToast('请输入正确的链接'); |
|
|
} else { |
|
|
} else { |
|
|
|
|
|
uBadgeShow.value = true; |
|
|
uBadgeShow.value = true |
|
|
|
|
|
|
|
|
|
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
// 查看历史记录 |
|
|
// 查看历史记录 |
|
|
function openDeliverHistory() { |
|
|
function openDeliverHistory() { |
|
|
uni.navigateTo({ url: '/pages/submitList/submitList'}); |
|
|
uni.navigateTo({ url: '/pages/submitList/submitList' }); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
// 粘贴上传 |
|
|
// 粘贴上传 |
|
@ -146,24 +139,33 @@ function paste() { |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
// 文件上传 |
|
|
// 文件上传 |
|
|
async function uploadFile(){ |
|
|
async function uploadFile() { |
|
|
try{ |
|
|
try { |
|
|
const data = await uni.$upload.chooseAndUpload('https://test.tall.wiki/filedeal/file/upload/multiple',{}, ['.xls', '.xlsx','.zip','.exe','.pdf','.doc','.docx','.ppt','.pptx'] , 'files') |
|
|
const data = await uni.$upload.chooseAndUpload( |
|
|
// console.log(data[0]) |
|
|
'https://test.tall.wiki/filedeal/file/upload/multiple', |
|
|
linkValue.value = data[0].visitUrl |
|
|
{}, |
|
|
}catch(error){ |
|
|
['.xls', '.xlsx', '.zip', '.exe', '.pdf', '.doc', '.docx', '.ppt', '.pptx'], |
|
|
|
|
|
'files', |
|
|
|
|
|
); |
|
|
|
|
|
// console.log(data[0]) |
|
|
|
|
|
linkValue.value = data[0].visitUrl; |
|
|
|
|
|
} catch (error) { |
|
|
console.error('error: ', error); |
|
|
console.error('error: ', error); |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// 拍照上传 |
|
|
// 拍照上传 |
|
|
async function uploadPhoto() { |
|
|
async function uploadPhoto() { |
|
|
try{ |
|
|
try { |
|
|
const data = await uni.$upload.chooseAndUpload('https://test.tall.wiki/filedeal/file/upload/multiple',{}, ['.xls', '.xlsx','.zip','.exe','.pdf','.doc','.docx','.ppt','.pptx'] , 'files') |
|
|
const data = await uni.$upload.chooseAndUpload( |
|
|
// console.log(data[0]) |
|
|
'https://test.tall.wiki/filedeal/file/upload/multiple', |
|
|
linkValue.value = data[0].visitUrl |
|
|
{}, |
|
|
}catch(error){ |
|
|
['.xls', '.xlsx', '.zip', '.exe', '.pdf', '.doc', '.docx', '.ppt', '.pptx'], |
|
|
|
|
|
'files', |
|
|
|
|
|
); |
|
|
|
|
|
// console.log(data[0]) |
|
|
|
|
|
linkValue.value = data[0].visitUrl; |
|
|
|
|
|
} catch (error) { |
|
|
console.error('error: ', error); |
|
|
console.error('error: ', error); |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
@ -172,36 +174,35 @@ async function uploadPhoto() { |
|
|
function confirmEditDeliverName() { |
|
|
function confirmEditDeliverName() { |
|
|
// TODO: 发请求 请求成功后更新task里的交付物信息 |
|
|
// TODO: 发请求 请求成功后更新task里的交付物信息 |
|
|
if (!newInputRef.value) { |
|
|
if (!newInputRef.value) { |
|
|
//TODO: 提示不能为空 |
|
|
// TODO: 提示不能为空 |
|
|
uni.$ui.showToast("输入不能为空"); |
|
|
uni.$ui.showToast('输入不能为空'); |
|
|
}else{ |
|
|
} else { |
|
|
// 请求成功 才会清空 请求失败保留 |
|
|
// 请求成功 才会清空 请求失败保留 |
|
|
showEditModal.value = false |
|
|
showEditModal.value = false; |
|
|
showMask.value = false |
|
|
showMask.value = false; |
|
|
uBadgeShow.value = false |
|
|
uBadgeShow.value = false; |
|
|
newInputRef.value = ''; |
|
|
newInputRef.value = ''; |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
// 删除交付物按钮 |
|
|
// 删除交付物按钮 |
|
|
|
|
|
|
|
|
function deleteDeliver(){ |
|
|
function deleteDeliver() { |
|
|
showDeleteModal.value = true |
|
|
showDeleteModal.value = true; |
|
|
} |
|
|
} |
|
|
// 删除二次确认 |
|
|
// 删除二次确认 |
|
|
async function confirmDelete() { |
|
|
async function confirmDelete() { |
|
|
// TODO: 删除二次确认 |
|
|
// TODO: 删除二次确认 |
|
|
// TODO: 确定后 发删除交付物的请求 |
|
|
// TODO: 确定后 发删除交付物的请求 |
|
|
try { |
|
|
try { |
|
|
showDeleteModal.value = true |
|
|
showDeleteModal.value = true; |
|
|
await uni.$u.api.deleteDeliver(); |
|
|
await uni.$u.api.deleteDeliver(); |
|
|
uni.$ui.showToast("删除交付物成功"); |
|
|
uni.$ui.showToast('删除交付物成功'); |
|
|
} catch (error) { |
|
|
} catch (error) { |
|
|
console.error('error: ', error); |
|
|
console.error('error: ', error); |
|
|
} |
|
|
} |
|
|
deliverRef.value = false; |
|
|
deliverRef.value = false; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
</script> |
|
|
</script> |
|
|
|
|
|
|
|
|
<style scoped lang="scss"> |
|
|
<style scoped lang="scss"> |
|
|