158 lines
4.0 KiB
Vue
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<template>
<view class="app status-bar-gap">
<view class="page">
<l-header :title="state.FBillNo" sticky></l-header>
<view class="data-item" :style="[{'background-color':'#ffffff'}]">
<view class="dataText">
<view class="itemBox">
<view>{{ t('index.cpmc') }}</view>
<view class="zongjian"></view>
<view>{{ formatLangTextValue(state.viewData.MaterialName) }}</view>
</view>
<view class="itemBox">
<view>{{ t('index.scdd') }}</view>
<view class="zongjian"></view>
<view>{{ state.FBillNo }}</view>
</view>
<view class="itemBox">
<view>{{ t('index.cpbm') }}</view>
<view class="zongjian"></view>
<view>{{ state.viewData.MaterialNumber }}</view>
</view>
<view class="itemBox">
<view>{{ t('public.qty') }}</view>
<view class="zongjian"></view>
<view>{{ state.viewData.Qty }}</view>
</view>
<view class="itemBox">
<view>{{ t('index.llts') }}</view>
<view class="zongjian"></view>
<view style="width: 50%;">
<up-input :placeholder="t('index.llts')" clearable inputAlign="right" inputmode="numeric"
@change="quantityStrChange" v-model="state.quantityStr">
</up-input>
</view>
</view>
</view>
<view class="btnList">
<up-button class="btnItem" type="primary" shape="circle" :text="t('public.confirm')" @click="WholeSetPushFun"></up-button>
</view>
</view>
</view>
</view>
</template>
<script setup lang="ts">
import { reactive, nextTick, onMounted, ref, computed, watch } from 'vue';
import { onLoad, onShow, onReachBottom, } from '@dcloudio/uni-app'
import { PRD_MOEnterIntoPro, PRD_MOPushIntoPro, PRD_MORPTSave, PRD_MOView, PRD_MOViewIntoPro, WholeSetPush, WholeSetView } from '../../common/request/api/api';
import { timeFormat } from '@/uni_modules/uview-plus';
import { pageDataInfo } from '../../stores/info.js';
import { useI18n } from 'vue-i18n'
const getI18n = useI18n()
const { t, locale } = getI18n
const pageDataInfoCom = pageDataInfo()
const state = reactive({
id: '',
FBillNo: '',
quantityStr: '',//开始汇报时间
viewData: {}
})
onLoad((pageData : any) => {
state.id = pageData.id
state.FBillNo = pageData.fBillNo
getPRD_MOViewFun()
})
const quantityStrChange = (e : any) => {
if (Number(state.viewData.Qty) < Number(e)) {
uni.$u.toast(t('index.llthbddy'))
}
}
const WholeSetPushFun = () => {
WholeSetPush({
FBillNo:state.FBillNo,
SetsQty:state.quantityStr
}).then((res:any) => {
if(res.code === 200){
uni.$u.toast(t('public.cg'))
}
})
}
//获取详情数据
const getPRD_MOViewFun = () => {
WholeSetView({ Id: state.id }).then((res : any) => {
if (res.code === 200) {
state.viewData = res.data.Entry[0]
}
})
}
const formatLangTextValue = (val : any) => {
if (!val || !Array.isArray(val)) { // 检查 val 是否存在且为数组
return ''; // 返回默认值或空字符串
}
let lang_Id = uni.getStorageSync('locale');
let item = val.find((p : any) => p.Key === (lang_Id === 'cn' ? 2052 : 1033));
return item ? item.Value : (val[0]?.Value || '');
};
</script>
<style lang="scss" scoped>
:deep(.uni-date__x-input) {
color: black !important;
}
.app {
background-color: #F5F5F5;
.page {
padding: 18px 32rpx;
display: flex;
flex-direction: column;
height: 100%;
flex: 1;
.data-item {
border: 1px solid #efeaea;
border-radius: 20rpx;
padding: 20rpx 22rpx;
background-color: #ffffff;
flex: 1;
display: flex;
flex-direction: column;
justify-content: space-between;
.btnList {
display: flex;
margin-bottom: 32rpx;
.btnItem {
width: 40%;
}
}
.timebox {
display: flex;
align-items: center;
margin-top: 32rpx;
}
.itemBox {
line-height: 50rpx;
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 32rpx;
.zongjian {
height: 1px;
flex: 1;
background-color: #f0f0f0;
margin: 0 16rpx;
}
}
}
}
}
</style>