新购验收

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

View File

@ -2,24 +2,24 @@
<view class="accept page-common">
<div class="card">
<uni-forms :model="formData" label-width="100" :border="true">
<uni-forms-item label="物资名称:" name="goodsName">
<span>{{ goodsName }}</span>
<uni-forms-item label="物资名称:" name="maTypeName">
<span>{{ formData.maTypeName }}</span>
</uni-forms-item>
<uni-forms-item label="物资规格:" name="goodsSpec">
<span>{{ goodsSpec }}</span>
<uni-forms-item label="物资规格:" name="typeName">
<span>{{ formData.typeName }}</span>
</uni-forms-item>
<uni-forms-item label="到货数量:" name="arrivalQuantity">
<span>{{ arrivalQuantity }}</span>
<uni-forms-item label="到货数量:" name="purchaseNum">
<span>{{ formData.purchaseNum }}</span>
</uni-forms-item>
<uni-forms-item label="质保材料:" name="warrantyMaterial">
<!-- <uni-forms-item label="质保材料:" name="warrantyMaterial">
<uni-easyinput v-model="warrantyMaterial" placeholder="请输入质保材料" />
</uni-forms-item>
</uni-forms-item> -->
<uni-forms-item label="验收结论:" name="acceptConclusion">
<uni-easyinput v-model="acceptConclusion" placeholder="请输入验收结论" />
<uni-forms-item label="验收结论:" name="checkResult">
<uni-easyinput v-model="checkResult" placeholder="请输入验收结论" />
</uni-forms-item>
<uni-forms-item label="原因:" name="reason">
@ -34,23 +34,42 @@
<div class="btn">
<button class="btn-cont" @click="">取消</button>
<button class="btn-cont" @click="">确定</button>
<button class="btn-cont" @click="pass">合格</button>
</div>
</view>
</template>
<script setup>
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({
goodsName: '', //
goodsSpec: '', //
arrivalQuantity: '', //
warrantyMaterial: '', //
acceptConclusion: '', //
reason: '', //
//
imgList: [],
const pass = () => {
let obj = {
"taskId":formData.value.taskId,
"typeId":formData.value.typeId,
"manageType":formData.value.manageType,
"status":3,
"checkResult":checkResult.value,
}
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>

View File

@ -35,9 +35,7 @@
<div class="table-list-item" v-for="(item, index) in tableList" :key="index" @click="handleItem(item)">
<div class="title">
<span style="font-size: 15px; font-weight: 800">新购验收</span>
<span :style="{ color: item.status == 1 ? '#ff4d4f' : '#3784fb' }">{{
item.taskStatus == 2 ? '未完成' : '已完成'
}}</span>
<span :style="{ color: active == 1 ? '#3784fb' : '#ff4d4f' }">{{active == 1 ? '已完成' : '未完成'}}</span>
</div>
<div class="line"></div>
<uni-row :gutter="24">
@ -101,7 +99,7 @@ const changeTab = (index) => {
const maskClick = () => {}
const handleItem = (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)=>{
getTableList()

View File

@ -1,8 +1,6 @@
import { http } from '@/utils/http'
/**
* 列表接口
*/
// 列表接口
export const getPurchaseList = (data) => {
return http({
method: 'GET',
@ -10,3 +8,20 @@ export const getPurchaseList = (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,
})
}