提交 c9c9c92b authored 作者: lidongxu's avatar lidongxu

style(inspectiontask/*): 修改:门店类型由 vant 改成 element 组件样式下拉效果

上级 a784c35d
...@@ -56,12 +56,28 @@ ...@@ -56,12 +56,28 @@
</van-field> </van-field>
</div> </div>
<!-- 门店类型选择 --> <!-- 门店类型选择 -->
<van-field :model-value="form.selectedType.join('')" <van-field label-width="150px"
label-position="top"
label="门店类型:"
:model-value="form.selectedType"
placeholder="请选择">
<template #input>
<el-select v-model="form.selectedType"
placeholder="请选择"
@change="handleTypeConfirm">
<el-option v-for="item in typeOptions"
:label="item.text"
:value="item.value" />
</el-select>
</template>
</van-field>
<!-- <van-field :model-value="form.selectedType.join('')"
readonly readonly
label="门店类型" label="门店类型"
label-align="top" label-align="top"
placeholder="请选择" placeholder="请选择"
@click="showTypePopup = true" /> @click="showTypePopup = true"
class="store-type" />
<van-popup v-model:show="showTypePopup" <van-popup v-model:show="showTypePopup"
position="bottom" position="bottom"
@close="showTypePopup = false"> @close="showTypePopup = false">
...@@ -69,7 +85,7 @@ ...@@ -69,7 +85,7 @@
:columns="typeOptions" :columns="typeOptions"
@confirm="handleTypeConfirm" @confirm="handleTypeConfirm"
@cancel="showTypePopup = false" /> @cancel="showTypePopup = false" />
</van-popup> </van-popup> -->
<!-- 信息填写组 --> <!-- 信息填写组 -->
<van-tabs v-model:active="active" <van-tabs v-model:active="active"
class="tabs" class="tabs"
...@@ -191,7 +207,7 @@ const form = reactive({ // 当前页信息总对象 ...@@ -191,7 +207,7 @@ const form = reactive({ // 当前页信息总对象
longTimePictureArr: [], // 大日期产品照片 longTimePictureArr: [], // 大日期产品照片
// 前端特有属性和后端接口不一致 // 前端特有属性和后端接口不一致
commitStorePicture: [], // 上报拍摄的门店照片 commitStorePicture: [], // 上报拍摄的门店照片
selectedType: [], // 门店类型 selectedType: "", // 门店类型
}) })
// 稽查任务详情 // 稽查任务详情
...@@ -201,7 +217,7 @@ const getInspectionTaskDetailFn = async () => { ...@@ -201,7 +217,7 @@ const getInspectionTaskDetailFn = async () => {
}) })
if (res.data) { if (res.data) {
Object.assign(form, res.data) Object.assign(form, res.data)
const { storeName, lhldArr, longTimePictureArr, storePicture, storeType, skuNum, cgclRiskRArr } = res.data const { storeName, lhldArr, longTimePictureArr, storePicture, storeType, skuNum, cgclRiskRArr, dqclRiskRArr } = res.data
// 终端门店照片一直应该是路由上的照片参数,如果路由上没有门头照证明上一个页面列表里这个门店就本身没有照片,那就用门头照拍摄的 // 终端门店照片一直应该是路由上的照片参数,如果路由上没有门头照证明上一个页面列表里这个门店就本身没有照片,那就用门头照拍摄的
if (route.query.storePicture) form.storePicture = route.query.storePicture if (route.query.storePicture) form.storePicture = route.query.storePicture
// 详情接口有门头照照片,需要设置到特有的属性commitStorePicture // 详情接口有门头照照片,需要设置到特有的属性commitStorePicture
...@@ -211,6 +227,7 @@ const getInspectionTaskDetailFn = async () => { ...@@ -211,6 +227,7 @@ const getInspectionTaskDetailFn = async () => {
// 详情接口门店名称如果是空的就用路由传递的 // 详情接口门店名称如果是空的就用路由传递的
if (!storeName) form.storeName = route.query.storeName if (!storeName) form.storeName = route.query.storeName
if (!lhldArr) form.lhldArr = [] if (!lhldArr) form.lhldArr = []
if (!longTimePictureArr) form.longTimePictureArr = [] if (!longTimePictureArr) form.longTimePictureArr = []
else { else {
// 前端特有结构数据格式处理 // 前端特有结构数据格式处理
...@@ -220,14 +237,15 @@ const getInspectionTaskDetailFn = async () => { ...@@ -220,14 +237,15 @@ const getInspectionTaskDetailFn = async () => {
} }
if (skuNum === 0) form.skuNum = '' if (skuNum === 0) form.skuNum = ''
if (!cgclRiskRArr) form.cgclRiskRArr = [] if (!cgclRiskRArr) form.cgclRiskRArr = []
if (route.query.selectedType) form.selectedType = [route.query.selectedType] if (!dqclRiskRArr) form.dqclRiskRArr = []
if (route.query.selectedType) form.selectedType = route.query.selectedType
// 如果从新建稽查任务页面过来的,门头照路由上传递过来的 // 如果从新建稽查任务页面过来的,门头照路由上传递过来的
if (route.query.taskStatus && route.query.storePicture) form.commitStorePicture = [{ if (route.query.taskStatus && route.query.storePicture) form.commitStorePicture = [{
url: route.query.storePicture url: route.query.storePicture
}] }]
if (storeType) form.selectedType = [storeType] if (storeType) form.selectedType = storeType
} else { } else {
// 没有的话调用新建接口,得到一个总体稽查任务 id // 没有的话调用新建接口,得到一个总体稽查任务 id
...@@ -356,13 +374,11 @@ const deleteCommitStorePhotos = async () => { ...@@ -356,13 +374,11 @@ const deleteCommitStorePhotos = async () => {
const typeOptions = ref(typeOption) // 门店类型 const typeOptions = ref(typeOption) // 门店类型
const showTypePopup = ref(false) const showTypePopup = ref(false)
// 确认门店类型 // 确认门店类型
const handleTypeConfirm = async ({ selectedValues }) => { const handleTypeConfirm = async () => {
form.selectedType = selectedValues
showTypePopup.value = false
await createInspectionTaskAPI({ await createInspectionTaskAPI({
storeCode: form.storeCode, storeCode: form.storeCode,
rstId: form.rstId, rstId: form.rstId,
storeType: selectedValues.join(',') storeType: form.selectedType
}) })
} }
...@@ -403,7 +419,7 @@ const handleRemarkChange = async () => { ...@@ -403,7 +419,7 @@ const handleRemarkChange = async () => {
// 大日期照片上传 // 大日期照片上传
const longTimePictureArrRead = async (file) => { const longTimePictureArrRead = async (file) => {
const date = new Date() const date = new Date()
const month = date.getMonth() + 1 const month = date.getMonth() + 1
const theDate = date.getDate() const theDate = date.getDate()
const pictureUrl = await uploadFileToOSSAPI(`risk/${date.getFullYear()}-${month}/longTimePicture/${useUserStore().empInfo.empNo}/${form.storeCode}/${uuidv4()}.png`, file.file) const pictureUrl = await uploadFileToOSSAPI(`risk/${date.getFullYear()}-${month}/longTimePicture/${useUserStore().empInfo.empNo}/${form.storeCode}/${uuidv4()}.png`, file.file)
...@@ -428,7 +444,6 @@ const deleteLongTimePictureArr = async (file, { name, index }) => { ...@@ -428,7 +444,6 @@ const deleteLongTimePictureArr = async (file, { name, index }) => {
showNotify({ type: 'success', message: '大日期产品照片,删除成功' }) showNotify({ type: 'success', message: '大日期产品照片,删除成功' })
} }
</script> </script>
<style scoped <style scoped
...@@ -447,6 +462,8 @@ const deleteLongTimePictureArr = async (file, { name, index }) => { ...@@ -447,6 +462,8 @@ const deleteLongTimePictureArr = async (file, { name, index }) => {
font-weight: bold; font-weight: bold;
} }
/* 终端名称信息 */ /* 终端名称信息 */
.terminal-wrap { .terminal-wrap {
margin-top: 10px; margin-top: 10px;
...@@ -490,6 +507,13 @@ const deleteLongTimePictureArr = async (file, { name, index }) => { ...@@ -490,6 +507,13 @@ const deleteLongTimePictureArr = async (file, { name, index }) => {
} }
.store-type {
::v-deep(input) {
border-bottom: 1px solid gray;
}
}
/* 位置信息 */ /* 位置信息 */
.location-wrap { .location-wrap {
margin-top: 10px; margin-top: 10px;
......
...@@ -2,15 +2,14 @@ ...@@ -2,15 +2,14 @@
<div class="mobile-page-container"> <div class="mobile-page-container">
<!-- 类型选择 --> <!-- 类型选择 -->
<div class="category-select"> <div class="category-select">
<van-field label-width="150px" <van-field label-width="3.8rem"
label-position="left" label-position="left"
label="品类选择:" label="品类选择:"
:model-value="selectedTypeObj.label" :model-value="selectedTypeObj.label"
placeholder="请输入"> placeholder="请输入">
<template #input> <template #input>
<el-select v-model="selectedTypeObj" <el-select v-model="selectedTypeObj"
placeholder="请选择" placeholder="请选择">
filterable>
<el-option v-for="item in typeOptions" <el-option v-for="item in typeOptions"
:label="item.label" :label="item.label"
:value="item" /> :value="item" />
...@@ -20,7 +19,7 @@ ...@@ -20,7 +19,7 @@
<van-field v-model="selectedTypeObj.price" <van-field v-model="selectedTypeObj.price"
type="number" type="number"
:label="selectedTypeObj.label + ' 价格:'" :label="selectedTypeObj.label + ' 价格:'"
label-width="150px" label-width="3.8rem"
placeholder="请输入价格" placeholder="请输入价格"
clearable clearable
class="search-input" class="search-input"
...@@ -310,17 +309,6 @@ const typeOptions = ref([ ...@@ -310,17 +309,6 @@ const typeOptions = ref([
]); ]);
const selectedTypeObj = ref(typeOptions.value[0]) const selectedTypeObj = ref(typeOptions.value[0])
// 创建任务
const createTask = async () => {
const { data } = await createInspectionTaskDetailAPI({
taskDetail: {
rstId: props.form.rstId,
detailName: '品类信息'
}
})
displayGroup.value.push(data)
}
// 价格改变 // 价格改变
const handlePriceChange = async () => { const handlePriceChange = async () => {
const res = await createInspectionTaskDetailAPI({ const res = await createInspectionTaskDetailAPI({
...@@ -368,6 +356,15 @@ const init = () => { ...@@ -368,6 +356,15 @@ const init = () => {
return return
} }
} }
// 手动创建品类信息,得到 rstdId
createInspectionTaskDetailAPI({
taskDetail: {
rstId: props.form.rstId,
detailName: '品类信息'
}
}).then(res => {
nowRstdId.value = res.data.rstdId
})
} }
defineExpose({ defineExpose({
init init
...@@ -398,6 +395,10 @@ defineExpose({ ...@@ -398,6 +395,10 @@ defineExpose({
.search-input { .search-input {
margin-top: .2667rem; margin-top: .2667rem;
::v-deep(input) {
border-bottom: 1px solid gray;
}
} }
} }
......
...@@ -62,7 +62,7 @@ ...@@ -62,7 +62,7 @@
<!-- 总体判定 --> <!-- 总体判定 -->
<div class="overall"> <div class="overall">
<p class="title">档期陈列总体判定结果:</p> <p class="title">档期陈列总体判定结果:</p>
<van-checkbox-group v-model="form.cgclRiskRArr" <van-checkbox-group v-model="form.dqclRiskRArr"
direction="horizontal" direction="horizontal"
shape="square" shape="square"
@change="handleOverallChange"> @change="handleOverallChange">
...@@ -232,7 +232,7 @@ const handleOverallChange = async () => { ...@@ -232,7 +232,7 @@ const handleOverallChange = async () => {
if (props.isInitializing) return if (props.isInitializing) return
await createInspectionTaskAPI({ await createInspectionTaskAPI({
rstId: props.form.rstId, rstId: props.form.rstId,
cgclRiskRArr: props.form.cgclRiskRArr dqclRiskRArr: props.form.dqclRiskRArr
}) })
showNotify({ type: 'success', message: '核查结果,保存成功' }) showNotify({ type: 'success', message: '核查结果,保存成功' })
} }
......
...@@ -32,7 +32,21 @@ ...@@ -32,7 +32,21 @@
</van-field> </van-field>
</div> </div>
<!-- 门店类型选择 --> <!-- 门店类型选择 -->
<van-field :model-value="form.selectedType.join('')" <van-field label-width="150px"
label-position="top"
label="门店类型:"
:model-value="form.selectedType"
placeholder="请选择">
<template #input>
<el-select v-model="form.selectedType"
placeholder="请选择">
<el-option v-for="item in typeOptions"
:label="item.text"
:value="item.value" />
</el-select>
</template>
</van-field>
<!-- <van-field :model-value="form.selectedType.join('')"
readonly readonly
label="门店类型" label="门店类型"
label-align="top" label-align="top"
...@@ -46,7 +60,7 @@ ...@@ -46,7 +60,7 @@
:columns="typeOptions" :columns="typeOptions"
@confirm="handleTypeConfirm" @confirm="handleTypeConfirm"
@cancel="showTypePopup = false" /> @cancel="showTypePopup = false" />
</van-popup> </van-popup> -->
</van-form> </van-form>
</div> </div>
</div> </div>
...@@ -74,7 +88,7 @@ const router = useRouter(); ...@@ -74,7 +88,7 @@ const router = useRouter();
const form = reactive({ const form = reactive({
storeName: '', storeName: '',
storePicture: [], storePicture: [],
selectedType: [] selectedType: ''
}) })
const typeOptions = ref(typeOption); // 门店类型 const typeOptions = ref(typeOption); // 门店类型
const showTypePopup = ref(false); const showTypePopup = ref(false);
...@@ -97,10 +111,10 @@ const deletePosPhotos = async () => { ...@@ -97,10 +111,10 @@ const deletePosPhotos = async () => {
} }
// 确认门店类型 // 确认门店类型
const handleTypeConfirm = ({ selectedValues }) => { // const handleTypeConfirm = ({ selectedValues }) => {
form.selectedType = selectedValues; // form.selectedType = selectedValues;
showTypePopup.value = false; // showTypePopup.value = false;
}; // };
// 创建任务(跳转路由传参即可) // 创建任务(跳转路由传参即可)
const myFormRef = ref(null) const myFormRef = ref(null)
...@@ -115,7 +129,7 @@ const handleCreateTask = () => { ...@@ -115,7 +129,7 @@ const handleCreateTask = () => {
storeName: form.storeName, storeName: form.storeName,
storeCode: null, storeCode: null,
storePicture: form.storePicture[0]?.url, storePicture: form.storePicture[0]?.url,
selectedType: form.selectedType[0] selectedType: form.selectedType
} }
}) })
}) })
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论