diff --git a/src/components/mescroll-api/more.vue b/src/components/mescroll-api/more.vue
new file mode 100644
index 0000000..9cb5e27
--- /dev/null
+++ b/src/components/mescroll-api/more.vue
@@ -0,0 +1,134 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/mescroll-api/one.vue b/src/components/mescroll-api/one.vue
new file mode 100644
index 0000000..ed283ff
--- /dev/null
+++ b/src/components/mescroll-api/one.vue
@@ -0,0 +1,65 @@
+
+
+
+
+
+
+
+
diff --git a/src/pages.json b/src/pages.json
index 0eeabd1..eff52a7 100644
--- a/src/pages.json
+++ b/src/pages.json
@@ -121,6 +121,12 @@
"navigationBarTitleText": "任务提交"
}
},
+ {
+ "path": "task_hygienes_submit",
+ "style": {
+ "navigationBarTitleText": "清洁任务提交"
+ }
+ },
{
"path": "detail",
"style": {
@@ -161,6 +167,7 @@
"navigationBarBackgroundColor": "#FFFFFF",
"backgroundColor": "#FFFFFF",
"navigationStyle": "custom",
+ "backgroundColorTop":"#FFFFFF",
"app-plus": {
"bounce": "none",
"scrollIndicator": "none"
diff --git a/src/pages/expense-account/index.vue b/src/pages/expense-account/index.vue
index 1e3613b..cda2230 100644
--- a/src/pages/expense-account/index.vue
+++ b/src/pages/expense-account/index.vue
@@ -2,7 +2,11 @@
- 申请
+ 申请
@@ -13,36 +17,63 @@
:list="tabList"
>
-
-
-
- 报销申请
- 待完成
-
-
- 报销金额
- 12313
-
-
- 报销时间
- 2022-01-01
-
-
-
- 报销原因:
- 报销原因报销原因报销原因报销原因报销原因报销原因报销原因报销原因报销原因报销原因
+
+
+
+
+ {{ item.type.name }}
+ {{ item.workflow_check.check_status_text }}
+
+
+ 报销金额
+ {{ item.expense }}
+
+
+ 报销时间
+ {{ timeFormat(item.created_at) }}
+
+
+
+ 报销原因:
+ {{ item.reason }}
+
-
+
diff --git a/src/pages/expense-account/submit.vue b/src/pages/expense-account/submit.vue
index 9ce2b6e..6013d65 100644
--- a/src/pages/expense-account/submit.vue
+++ b/src/pages/expense-account/submit.vue
@@ -11,40 +11,37 @@
ref="formRef"
labelPosition="left"
>
-
-
+
+
+ {{ type.name }}
+
+
-
+
+
+
@@ -55,7 +52,14 @@
required
>
-
+
@@ -65,11 +69,18 @@
提交
+
+
@@ -79,42 +90,125 @@ import CuNavbar from '@/components/cu-navbar/index'
import Cell from '@/components/cell/index'
import { ref, reactive } from 'vue'
import { http } from '@/utils/request'
+import { onLoad } from '@dcloudio/uni-app'
+const typeRef = ref(null)
+const typeList = ref([])
+const type = ref({})
const modalRef = ref(null)
const formRef = ref(null)
+const loading = ref(false)
const form = reactive({
- content: '',
+ reimbursement_type_id: '',
+ expense: '',
+ reason: '',
photos: [],
})
const rules = reactive({
- content: [
- { required: true, message: '请输入投诉内容' },
- { min: 20, message: '至少20字' },
- { max: 200, message: '最多200字' },
+ reimbursement_type_id: [
+ {
+ required: true,
+ message: '请选择报销分类',
+ },
],
+ expense: [{ required: true, message: '请输入报销金额' }],
+ reason: [{ required: true, message: '请输入报销原因' }],
photos: {
type: 'array',
+ required: true,
+ message: '请上传报销凭证',
},
})
+onLoad(() => {
+ getTypes()
+})
+
const submit = () => {
formRef.value.validate().then((res) => {
modalRef.value.open()
})
}
+const onSubmit = async () => {
+ if (loading.value) return
+ loading.value = true
+ try {
+ const resData = await http.post('/reimbursements', {
+ reimbursement_type_id: form.reimbursement_type_id,
+ expense: form.expense,
+ reason: form.reason,
+ photos: form.photos.map((item) => item.url),
+ })
+ uni.showToast({
+ title: '提交成功',
+ icon: 'none',
+ })
+ formRef.value.resetFields()
+ uni.$emit('ex:submit', resData)
+ uni.navigateBack()
+ } catch (error) {
+ } finally {
+ loading.value = false
+ }
+}
-const changePassword = () => {
- // http
- // .post('/auth/profile', {
- // password: form.password,
- // password_confirmation: form.password2,
- // })
- // .then((ress) => {
- // uni.showToast({
- // title: '修改成功',
- // duration: 2000,
- // icon: 'none',
- // })
- // formRef.value.resetFields()
- // })
+const afterRead = async (event) => {
+ let lists = [].concat(event.file)
+ let fileListLen = form[event.name].length
+
+ lists.map((item) => {
+ form[event.name].push({
+ ...item,
+ status: 'uploading',
+ message: '上传中',
+ })
+ })
+ for (let i = 0; i < lists.length; i++) {
+ const result = await uploadFilePromise(lists[i].url)
+ let item = form[event.name][fileListLen]
+ form[event.name].splice(
+ fileListLen,
+ 1,
+ Object.assign(item, {
+ status: 'success',
+ message: '',
+ url: result,
+ })
+ )
+ fileListLen++
+ }
+}
+
+const uploadFilePromise = (url) => {
+ return new Promise((resolve, reject) => {
+ http
+ .upload('/fileupload', {
+ filePath: url,
+ name: 'file',
+ })
+ .then((res) => {
+ resolve(res.url)
+ })
+ .catch((err) => {
+ reject(err)
+ })
+ })
+}
+
+const deletePic = (event) => {
+ form[event.name].splice(event.index, 1)
+}
+const getTypes = () => {
+ http.get('/keyword?parent_key=reimbursement_type').then((res) => {
+ typeList.value = res
+ })
+}
+
+const typeConfirm = ({ value }) => {
+ type.value = value[0]
+ form.reimbursement_type_id = type.value.id
+}
+
+const openType = () => {
+ typeRef.value.open()
}
diff --git a/src/pages/home/components/store-drop-down/index.vue b/src/pages/home/components/store-drop-down/index.vue
index b823119..3f27438 100644
--- a/src/pages/home/components/store-drop-down/index.vue
+++ b/src/pages/home/components/store-drop-down/index.vue
@@ -1,7 +1,7 @@
-
+
全部区域
+
+
+ {{ item.name }}
+ {{ statusFun(item.taskable.status, item.taskable_type, 'name') }}
+
+
+ 任务时间:{{ timeFormat(item.start_at, 'yyyy年mm月dd日') }} -
+ {{ timeFormat(item.end_at, 'yyyy年mm月dd日') }}
+
+
+
+
+
+
+
+ 去完成
+
+
+
+
+
+
diff --git a/src/pages/task/index copy.vue b/src/pages/task/index copy.vue
new file mode 100644
index 0000000..d9cdff6
--- /dev/null
+++ b/src/pages/task/index copy.vue
@@ -0,0 +1,74 @@
+
+
+
+
+
+
+
+
+
+ 月度清洁任务
+
+ 任务时间:2022年03月01号 - 2022年03月31号
+
+ 待完成
+
+
+
+
+
+
diff --git a/src/pages/task/index.vue b/src/pages/task/index.vue
index 8eeedb5..64a472c 100644
--- a/src/pages/task/index.vue
+++ b/src/pages/task/index.vue
@@ -3,32 +3,72 @@
-
-
- 月度清洁任务
-
- 任务时间:2022年03月01号 - 2022年03月31号
+
+
+
+
+
+
+
- 待完成
-
-
+
+
+
diff --git a/src/pages/task/task_hygienes_submit.vue b/src/pages/task/task_hygienes_submit.vue
new file mode 100644
index 0000000..2abdc04
--- /dev/null
+++ b/src/pages/task/task_hygienes_submit.vue
@@ -0,0 +1,154 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 提交
+
+
+
+
+
+
diff --git a/src/pages/user/components/item.vue b/src/pages/user/components/item.vue
new file mode 100644
index 0000000..81e9fec
--- /dev/null
+++ b/src/pages/user/components/item.vue
@@ -0,0 +1,40 @@
+
+
+
+
+
+
+
+ {{ item.name }}
+
+
+
+
+
+ 电话:{{ item.phone }}
+ 门店:{{ item.store.address }}
+
+
+
+
+
diff --git a/src/pages/user/detail.vue b/src/pages/user/detail.vue
index f4c298f..827a9d9 100644
--- a/src/pages/user/detail.vue
+++ b/src/pages/user/detail.vue
@@ -38,13 +38,27 @@
cancelText="取消"
>
+
+
diff --git a/src/pages/user/index copy.vue b/src/pages/user/index copy.vue
new file mode 100644
index 0000000..52cbb9b
--- /dev/null
+++ b/src/pages/user/index copy.vue
@@ -0,0 +1,128 @@
+
+
+
+
+ 添加
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ item.name }}
+
+
+
+
+
+ {{
+ item.phone
+ }}
+ {{ item.store.address }}
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/pages/user/index.vue b/src/pages/user/index.vue
index 36491ee..f835e45 100644
--- a/src/pages/user/index.vue
+++ b/src/pages/user/index.vue
@@ -8,110 +8,44 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ item.name }}
-
-
-
-
-
- {{
- item.phone
- }}
- {{ item.store.address }}
-
-
-
-
+
+
+
+
+
-
-
-
+
+