新购验收

This commit is contained in:
zzyuan 2024-11-18 18:26:53 +08:00
parent 186a19dae0
commit 0f570c4924
4 changed files with 99 additions and 68 deletions

View File

@ -7,40 +7,35 @@
class="table-list-item" class="table-list-item"
v-for="(item, index) in tableList" v-for="(item, index) in tableList"
:key="index" :key="index"
@click="handleItem(item)" @click="handleItem(item)">
>
<div class="title"> <div class="title">
<span style="font-size: 15px; font-weight: 800">新购验收</span> <span style="font-size: 15px; font-weight: 800">新购验收</span>
<span v-if="item.status == 0" style="color: #ff4d4f">未验收</span> <span v-if="item.status == 2" style="color: #ff4d4f">未验收</span>
<span v-else-if="item.status == 1" style="color: #3784fb">已验收</span> <span v-else-if="item.status != 2" style="color: #3784fb">已验收</span>
<span v-else-if="item.status == 2" style="color: #ff4d4f">不合格</span> <!-- <span v-else-if="item.status == 12" style="color: #ff4d4f">不合格</span> -->
</div> </div>
<div class="line"></div> <div class="line"></div>
<uni-row :gutter="24"> <uni-row :gutter="24">
<uni-col :span="6">物资名称</uni-col> <uni-col :span="6">物资名称</uni-col>
<uni-col :span="18" <uni-col :span="18"
><div class="cont">{{ item.purchaseMaterialName }}</div></uni-col ><div class="cont">{{ item.maTypeName }}</div></uni-col>
>
</uni-row> </uni-row>
<uni-row :gutter="24"> <uni-row :gutter="24">
<uni-col :span="6">规格型号</uni-col> <uni-col :span="6">规格型号</uni-col>
<uni-col :span="18" <uni-col :span="18"
><div class="cont">{{ item.purchaseModel }}</div></uni-col ><div class="cont">{{ item.typeName }}</div></uni-col>
>
</uni-row> </uni-row>
<uni-row :gutter="24"> <uni-row :gutter="24">
<uni-col :span="6">到货数量</uni-col> <uni-col :span="6">到货数量</uni-col>
<uni-col :span="18" <uni-col :span="18"
><div class="cont">{{ item.arrivalQuantity }}</div></uni-col ><div class="cont">{{ item.purchaseNum }}</div></uni-col>
>
</uni-row> </uni-row>
<uni-row :gutter="24" v-if="item.status != 2"> <uni-row :gutter="24">
<uni-col :span="6">验收数量</uni-col> <uni-col :span="6">验收数量</uni-col>
<uni-col :span="18" <uni-col :span="18"
><div class="cont">{{ item.acceptQuantity }}</div></uni-col ><div class="cont">{{ item.purchaseNum }}</div></uni-col>
>
</uni-row> </uni-row>
<uni-row :gutter="24" v-if="item.status == 2"> <uni-row :gutter="24" v-if="item.status != 2">
<uni-col :span="6">原因</uni-col> <uni-col :span="6">原因</uni-col>
<uni-col :span="18"><div class="cont">{{ item.reason }}</div></uni-col> <uni-col :span="18"><div class="cont">{{ item.reason }}</div></uni-col>
</uni-row> </uni-row>
@ -50,39 +45,37 @@
<script setup> <script setup>
import { ref, reactive } from 'vue' import { ref, reactive } from 'vue'
import { getPurchaseInfo } from '../../../services/purchase.js';
import { onLoad } from '@dcloudio/uni-app'
const searchValue = ref('') const searchValue = ref('')
const tableList = reactive([ const id = ref('')
{ const taskId = ref('')
status: '1', // const statusList = ref(["2","12"])
purchaseMaterialName: '物资1', // const tableList = ref([])
purchaseModel: '规格1', // const getTableList = () => {
arrivalQuantity: '100', // let obj = {
acceptQuantity: '100', // "id":id.value,
}, "taskId":taskId.value,
{ "statusList":statusList.value,
status: '0', // }
purchaseMaterialName: '物资2', // console.log(obj)
purchaseModel: '规格2', // getPurchaseInfo(obj).then(res => {
arrivalQuantity: '100', // console.log(res)
acceptQuantity: '100', // tableList.value = res.data.purchaseCheckDetailsList;
}, console.log(tableList.value)
{ }).catch(error => {
status: '2', // console.log(error)
purchaseMaterialName: '物资2', // })
purchaseModel: '规格2', // }
arrivalQuantity: '100', //
reason: '原因',
},
])
const search = () => { const search = () => {
console.log('🚀 ~ search ~ searchValue:', searchValue.value) console.log('🚀 ~ search ~ searchValue:', searchValue.value)
} }
const handleItem = (item) => { const handleItem = (item) => {
console.log('🚀 ~ handleItem ~ item:', item) console.log('🚀 ~ handleItem ~ item:', item)
if (item.status == 0) { if (item.status == 2) {
uni.navigateTo({ url: '/pages/new-purchase/accept/conclusion' }) uni.navigateTo({ url: `/pages/new-purchase/accept/conclusion?item=${JSON.stringify(item)}` })
} else { } else {
// //
uni.showToast({ uni.showToast({
@ -91,6 +84,12 @@ const handleItem = (item) => {
}) })
} }
} }
onLoad((options)=>{
console.log(options)
id.value = options.id
taskId.value = options.taskId
getTableList()
})
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>

View File

@ -2,24 +2,24 @@
<view class="accept page-common"> <view class="accept page-common">
<div class="card"> <div class="card">
<uni-forms :model="formData" label-width="100" :border="true"> <uni-forms :model="formData" label-width="100" :border="true">
<uni-forms-item label="物资名称:" name="goodsName"> <uni-forms-item label="物资名称:" name="maTypeName">
<span>{{ goodsName }}</span> <span>{{ formData.maTypeName }}</span>
</uni-forms-item> </uni-forms-item>
<uni-forms-item label="物资规格:" name="goodsSpec"> <uni-forms-item label="物资规格:" name="typeName">
<span>{{ goodsSpec }}</span> <span>{{ formData.typeName }}</span>
</uni-forms-item> </uni-forms-item>
<uni-forms-item label="到货数量:" name="arrivalQuantity"> <uni-forms-item label="到货数量:" name="purchaseNum">
<span>{{ arrivalQuantity }}</span> <span>{{ formData.purchaseNum }}</span>
</uni-forms-item> </uni-forms-item>
<uni-forms-item label="质保材料:" name="warrantyMaterial"> <!-- <uni-forms-item label="质保材料:" name="warrantyMaterial">
<uni-easyinput v-model="warrantyMaterial" placeholder="请输入质保材料" /> <uni-easyinput v-model="warrantyMaterial" placeholder="请输入质保材料" />
</uni-forms-item> </uni-forms-item> -->
<uni-forms-item label="验收结论:" name="acceptConclusion"> <uni-forms-item label="验收结论:" name="checkResult">
<uni-easyinput v-model="acceptConclusion" placeholder="请输入验收结论" /> <uni-easyinput v-model="checkResult" placeholder="请输入验收结论" />
</uni-forms-item> </uni-forms-item>
<uni-forms-item label="原因:" name="reason"> <uni-forms-item label="原因:" name="reason">
@ -34,23 +34,42 @@
<div class="btn"> <div class="btn">
<button class="btn-cont" @click="">取消</button> <button class="btn-cont" @click="">取消</button>
<button class="btn-cont" @click="">确定</button> <button class="btn-cont" @click="pass">合格</button>
</div> </div>
</view> </view>
</template> </template>
<script setup> <script setup>
import { ref, reactive } from 'vue' import { ref, reactive } from 'vue'
import { onLoad } from '@dcloudio/uni-app'
import { innerVerify } from '../../../services/purchase.js';
const formData = ref({})
const checkResult = ref("")
const formData = reactive({ const pass = () => {
goodsName: '', // let obj = {
goodsSpec: '', // "taskId":formData.value.taskId,
arrivalQuantity: '', // "typeId":formData.value.typeId,
warrantyMaterial: '', // "manageType":formData.value.manageType,
acceptConclusion: '', // "status":3,
reason: '', // "checkResult":checkResult.value,
// }
imgList: [], console.log(obj)
let param = {
purchaseCheckDetailsList:[obj],
verifyPass:true
}
innerVerify(param).then(res => {
console.log(res)
}).catch(error => {
console.log(error)
})
}
onLoad((options)=>{
console.log(options)
formData.value = JSON.parse(options.item)
}) })
</script> </script>

View File

@ -35,9 +35,7 @@
<div class="table-list-item" v-for="(item, index) in tableList" :key="index" @click="handleItem(item)"> <div class="table-list-item" v-for="(item, index) in tableList" :key="index" @click="handleItem(item)">
<div class="title"> <div class="title">
<span style="font-size: 15px; font-weight: 800">新购验收</span> <span style="font-size: 15px; font-weight: 800">新购验收</span>
<span :style="{ color: item.status == 1 ? '#ff4d4f' : '#3784fb' }">{{ <span :style="{ color: active == 1 ? '#3784fb' : '#ff4d4f' }">{{active == 1 ? '已完成' : '未完成'}}</span>
item.taskStatus == 2 ? '未完成' : '已完成'
}}</span>
</div> </div>
<div class="line"></div> <div class="line"></div>
<uni-row :gutter="24"> <uni-row :gutter="24">
@ -101,7 +99,7 @@ const changeTab = (index) => {
const maskClick = () => {} const maskClick = () => {}
const handleItem = (item) => { const handleItem = (item) => {
console.log('🚀 ~ handleItem ~ item:', item) console.log('🚀 ~ handleItem ~ item:', item)
uni.navigateTo({ url: '/pages/new-purchase/accept/acceptDetails' }) uni.navigateTo({ url: `/pages/new-purchase/accept/acceptDetails?id=${item.id}&taskId=${item.taskId}` })
} }
onLoad((options)=>{ onLoad((options)=>{
getTableList() getTableList()

View File

@ -1,8 +1,6 @@
import { http } from '@/utils/http' import { http } from '@/utils/http'
/** // 列表接口
* 列表接口
*/
export const getPurchaseList = (data) => { export const getPurchaseList = (data) => {
return http({ return http({
method: 'GET', method: 'GET',
@ -10,3 +8,20 @@ export const getPurchaseList = (data) => {
data:data, data:data,
}) })
} }
// 详情接口
export const getPurchaseInfo = (data) => {
return http({
method: 'GET',
url: '/material/purchase_check_info/getInfo',
data:data,
})
}
// 验收接口
export const innerVerify = (data) => {
return http({
method: 'PUT',
url: '/material/purchase_check_info/innerVerify',
data:data,
})
}