Compare commits

...

3 Commits

Author SHA1 Message Date
Teng 0c9797f90f Merge branch 'main' of http://47.115.223.229:8888/yangjun/hldy_app_mini 2025-11-19 10:20:11 +08:00
Teng 0596eae454 合并 2025-11-19 10:18:41 +08:00
Teng fab9abe1ca 合并 2025-11-19 10:03:15 +08:00
5 changed files with 158 additions and 107 deletions

View File

@ -1575,8 +1575,9 @@
const shakyTable = ref(false);
const reldata = ref([]);
const deleteRuler = (index0 : number, index1 : number) => {
console.log("?????",timearr.value[index0].children[index1])
deleteDirective(timearr.value[index0].children[index1]).then((res : any) => {
console.log("?????",res)
if (res.success) {
geteverything()
}
@ -1859,7 +1860,7 @@
//
cleansettimeout.value = setTimeout(() => {
bottomItems.value[0].target = `#fff`;
// console.log("",pushValue)
console.log("即时指令看看进入了啥",pushValue)
addInstant(pushValue).then((res : any) => {
if (res.success) {
geteverything()
@ -1958,6 +1959,7 @@
index1: saveEditIndex.value.index1
}
whereEvent(data);
console.log("日常指令看看进入了啥",param)
if (haveValue) {
editDirective(param).then((res : any) => {
if (res.success) {
@ -2091,7 +2093,7 @@
directiveName: '' // directiveName
}))
}))
console.log("wtf",res.result.serviceList)
console.log("wtf",res)
res.result.serviceList.forEach((res : any) => {
timearr.value[res.positioning].children[res.positioningLong] = res;
})

View File

@ -158,6 +158,16 @@ export const getGysList = () => {
method: 'get'
})
}
//改价
export const editPrice = (params) => {
return request({
url: `${uni.getStorageSync('serverUrl')}/api/pad/invoicing/editPrice`,
method: 'post',
data: params,
})
}
//(业务)拣货、销账操作
export const pickingInfo = (params) => {
return request({
@ -165,6 +175,4 @@ export const pickingInfo = (params) => {
method: 'post',
data: params
})
}
}

View File

@ -2,7 +2,7 @@
<view class="contain">
<view v-show="moreindex!=-1 || topbuttontarget!=-1 || openjianhuo || opengaijia || opendata || opencgr "
class="mengban"
@click="moreindex=-1; topbuttontarget=-1;openjianhuo=false;opengaijia=false;opendata=false;opencgr=false;clickflag=false">
@click="moreindex=-1; topbuttontarget=-1;openjianhuo=false;opengaijia=false;opendata=false;opencgr=false">
</view>
<!-- 给模糊搜索用的 -->
<view v-show="filteredCgrListsecond.length&&gysvalue" class="mengban" @click="closefilteredCgrListsecond">
@ -39,7 +39,7 @@
<view style="width: 100%;margin-top: 50rpx;font-size: 30rpx;">
采购单价:
<text style="color: #888888;">
1.50
{{ gaijia }}
</text>
</view>
@ -47,17 +47,17 @@
<view style="font-size: 30rpx;margin-bottom: 10rpx;">
到货单价
</view>
<view class="gray-input">
¥1500.00
<view class="gray-input" style="width: 410rpx;">
¥ {{ gaijia }}
</view>
</view>
<view style="position: absolute;right: 30rpx;bottom: 30rpx;">
<view style="display: flex;">
<view
<view @click="opengaijia=false"
style="width: 160rpx;height: 75rpx;background-color: #ebeced;color: #888888;display: flex;justify-content: center;align-items: center;font-size: 30rpx;border-radius: 40rpx;">
取消
</view>
<view
<view @click="dogaijia"
style="width: 160rpx;height: 75rpx;;color: #0385FA;display: flex;justify-content: center;align-items: center;font-size: 30rpx;border-radius: 40rpx;border: 1rpx solid #0385FA;background: linear-gradient(to bottom,#E9F4FF,#CAE0F9);margin: 0 40rpx;">
确定
</view>
@ -66,50 +66,50 @@
</view>
<view class="jianhuo-jianpan" style="right: -40rpx;bottom: 150rpx;">
<view style="display: flex;width: 480rpx;">
<view class="gray-button-jianpan">
<view class="gray-button-jianpan" @click="press('1')">
1
</view>
<view class="gray-button-jianpan">
<view class="gray-button-jianpan" @click="press('2')">
2
</view>
<view class="gray-button-jianpan">
<view class="gray-button-jianpan" @click="press('3')">
3
</view>
</view>
<view style="display: flex;width: 480rpx;">
<view class="gray-button-jianpan">
<view class="gray-button-jianpan" @click="press('4')">
4
</view>
<view class="gray-button-jianpan">
<view class="gray-button-jianpan" @click="press('5')">
5
</view>
<view class="gray-button-jianpan">
<view class="gray-button-jianpan" @click="press('6')">
6
</view>
</view>
<view style="display: flex;width: 480rpx;">
<view class="gray-button-jianpan">
<view class="gray-button-jianpan" @click="press('7')">
7
</view>
<view class="gray-button-jianpan">
<view class="gray-button-jianpan" @click="press('8')">
8
</view>
<view class="gray-button-jianpan">
<view class="gray-button-jianpan" @click="press('9')">
9
</view>
</view>
<view style="display: flex;width: 480rpx;">
<view class="gray-button-jianpan">
<view class="gray-button-jianpan" @click="press('AC')">
AC
</view>
<view class="gray-button-jianpan">
<view class="gray-button-jianpan" @click="press('0')">
0
</view>
<view class="gray-button-jianpan">
<view class="gray-button-jianpan" @click="press('.')">
.
</view>
</view>
@ -263,28 +263,27 @@
</view>
</view>
<view style="display: flex;margin-top: 30rpx;margin-left: 20rpx;">
<view class="gray-button" @click="jjnum(-1)" @longpress="handleTouchStart(-1)" @touchend="handleTouchEnd">
<view class="gray-button">
-
</view>
<view class="gray-input" style="width:12vw;">
<text v-for="(v,i) in stringjh" :key="i">{{v}}</text>
<view class="gray-input">
{{showvalue.num}}
</view>
<!-- <text></text>{{showvalue.num}} -->
<view class="gray-button" @click="jjnum(1)" @longpress="handleTouchStart(1)" @touchend="handleTouchEnd">
<view class="gray-button">
+
</view>
</view>
<view class="jianhuobutton">
<view style="display: flex;">
<view @click="openjianhuo = false;clickflag = false"
<view @click="openjianhuo = false"
style="width: 160rpx;height: 75rpx;background-color: #ebeced;color: #888888;display: flex;justify-content: center;align-items: center;font-size: 30rpx;border-radius: 40rpx;">
关闭
</view>
<view @click="config(1)"
<view
style="width: 160rpx;height: 75rpx;;color: #0385FA;display: flex;justify-content: center;align-items: center;font-size: 30rpx;border-radius: 40rpx;border: 1rpx solid #0385FA;background: linear-gradient(to bottom,#E9F4FF,#CAE0F9);margin: 0 20rpx;">
销账
</view>
<view @click="config(0)"
<view
style="width: 160rpx;height: 75rpx;;color: #0385FA;display: flex;justify-content: center;align-items: center;font-size: 30rpx;border-radius: 40rpx;border: 1rpx solid #0385FA;background: linear-gradient(to bottom,#E9F4FF,#CAE0F9);">
入库
</view>
@ -379,7 +378,6 @@
</view>
</view>
<view class="photowall-other-one" v-if="topbuttontarget==1">
<view
style="width: 100%;height: 70%;display: flex;flex-direction: column;justify-content: center;align-items: center;background-color:#fafdff ;border: 1rpx solid #78B1EB;border-radius: 30rpx;">
<image style="width: 70rpx;height: 70rpx;margin-bottom: 5rpx;"
@ -643,10 +641,10 @@
随行单
</view>
</view>
<view :class="lefttarget==1?`contain-right-button`: `contain-right-button-bad`"
style="border-color: #D9DADC;box-shadow: 0 1rpx 3rpx #D9DADC;">
<view :class="!Number(plsbuy[lefttarget]?.status)?`contain-right-button`: `contain-right-button-bad`"
style="border-color: #D9DADC;box-shadow: 0 1rpx 3rpx #D9DADC;" @click="bebad">
<image class="buttont-img"
:src="`/static/index/warehouse/procurement/picking/bebad${lefttarget==1?``:`target`}.png`" />
:src="`/static/index/warehouse/procurement/picking/bebad${!Number(plsbuy[lefttarget]?.status)?``:`target`}.png`" />
<view class="button-font">
作废
</view>
@ -1072,26 +1070,70 @@
</view>
</view>
<view class="mengban" v-if="open>0" @click="open = 0"> </view>
<view class="mengban" v-if="open==1"> </view>
<equiment :open="open==1" @del="del()" @back="open = 0" :content="'是否删除此图片?'"></equiment>
<equiment :open="open==2" @del="sctp(1)" @back="open = 0" :content="'是否销账此物料?'"></equiment>
</view>
</template>
<script setup lang="ts">
import { ref, onMounted, reactive, onBeforeUnmount, computed, nextTick, defineProps, onUnmounted } from 'vue';
import { pickingInfo,queryInvoicingList, getCgdMaterialTreeData, queryNuInfoByNuId, updateKfstatus, queryCgdList, queryCgdInfoList, queryWlInfoByWlId, voidedCgdMain, getCgrLis, getGysList, upload } from './api/lunpan.js'
import { queryInvoicingList, getCgdMaterialTreeData, queryNuInfoByNuId, updateKfstatus, queryCgdList, queryCgdInfoList, queryWlInfoByWlId, voidedCgdMain, getCgrLis, getGysList, upload, editPrice } from './api/lunpan.js'
import { onShow, onLoad, onHide, onPageScroll } from "@dcloudio/uni-app"
import calendar from '@/component/public/calendar.vue'
import superpicker from '@/component/public/superpicker.vue'
import equiment from './components/equiment.vue';
const open = ref(0);
const typechange = ref(0);
const stringjh = ref(0)
const serverUrl = ref("");
const opengaijia = ref(false);
const openjianhuo = ref(false);
const opendata = ref(false);
const gaijia = ref("");
//
const dogaijia = () => {
// console.log("????",showvalue.value.id,gaijia.value)
editPrice({ id: showvalue.value.id, arrivalPrice: gaijia.value }).then((res) => {
// console.log("", showvalue.value.id,gaijia.value)
// console.log("res", res)
if (res.code == 200) {
showvalue.value.arrivalPrice = gaijia.value;
opengaijia.value = false;
}
})
}
//
function press(k : string) {
if (k === 'AC') {
gaijia.value = ''
return
}
//
if (k === '.') {
if (!gaijia.value.includes('.')) {
gaijia.value = gaijia.value === '' ? '0.' : gaijia.value + '.'
}
return
}
//
if (/^\d$/.test(k)) {
//
if (gaijia.value.includes('.')) {
const [i, d] = gaijia.value.split('.')
if ((d || '').length < 2) gaijia.value += k
return
}
// 4
let intPart = gaijia.value
if (intPart === '0') intPart = '' // 01
if (intPart.length < 4) gaijia.value = intPart + k
}
}
//
const gysclick = (res : any) => {
console.log("///", res);
@ -1103,7 +1145,6 @@
return
}
openjianhuo.value = true;
clickflag.value = true;
donghuaopo.value = false;
setTimeout(() => {
donghuaopo.value = true;
@ -1112,6 +1153,7 @@
const opengaijiaclick = () => {
opengaijia.value = true;
gaijia.value = (showvalue.value.arrivalPrice ? showvalue.value.arrivalPrice : showvalue.value.procurementPrice).toString()
donghuaopo.value = false;
setTimeout(() => {
donghuaopo.value = true;
@ -1247,6 +1289,7 @@
const opencgr = ref(false);
const opengys = ref(false);
const cgrlist = ref([]);
const gyslist = ref([]);
@ -1256,6 +1299,7 @@
})
getGysList().then((res : any) => {
gyslist.value = res.result;
console.log("isright", res)
})
}
@ -1319,10 +1363,12 @@
queryCgdList(plzinfo).then((res : any) => {
plsbuy.value.push(...res.result.records)
alltotal.value = res.result.total
console.log("请购单数据呢???", res)
if (res.result.records.length) {
form.cgdId = plsbuy.value[0].id
queryInvo();
}
if (res.result.records.length < plzinfo.pageSize) {
plzinfo.canpull = false;
}
@ -1360,7 +1406,15 @@
form.cgdId = plsbuy.value[index].id
form.pageNo = 1
form.canpull = true;
queryInvo()
// console.log("!!!!",form)
queryCgdInfoList(form).then(res => {
InvoicingList.value = []
// console.log("", res.result.records)
InvoicingList.value.push(...res.result.records);
if (form.pageNo) {
clickmiddle(0);
}
})
}
const showvalue = ref({
materialImg: ""
@ -1401,7 +1455,6 @@
if (Number(showvalue.value.status) == 0 || (Number(showvalue.value.status) > 0 && Number(showvalue.value.wrksl) > 0)) {
showvalue.value.maxnum = (showvalue.value.rksl == 0 && showvalue.value.wrksl == 0 && showvalue.value.xzsl == 0) ? showvalue.value.purchaseQuantity : showvalue.value.wrksl
showvalue.value.num = showvalue.value.maxnum;
stringjh.value = toFixed4ByPadStart(showvalue.value.num);
showvalue.value.jianhuobtn = true;
}
Object.assign(form, mobanform)
@ -1410,7 +1463,13 @@
const InvoicingList = ref([])
const queryInvo = () => {
queryCgdInfoList(form).then(res => {
InvoicingList.value=res.result.records;
// if (res.result.records.length == 1) {
// InvoicingList.value.push(...res.result.records);
// }
// console.log(res.result.records)
InvoicingList.value.push(...res.result.records);
clickmiddle(0);
})
}
@ -1436,21 +1495,21 @@
}
const moreindex = ref(-1);
const zuofeiindex = ref(-1);
const openmore = (index : number) => {
zuofeiindex.value = index;
if (plsbuy.value[index].cgdType == '9') {
setTimeout(() => {
uni.showToast({
title: '该采购单已作废',
icon: 'error', //
duration: 2000
})
}, 300)
// const openmore = (index : number) => {
// zuofeiindex.value = index;
// if (plsbuy.value[index].cgdType == '9') {
// setTimeout(() => {
// uni.showToast({
// title: '',
// icon: 'error', //
// duration: 2000
// })
// }, 300)
} else {
moreindex.value = index;
}
}
// } else {
// moreindex.value = index;
// }
// }
const shareShow = ref(false);
const deletedownisopacity = ref(false)
const share = () => {
@ -1481,13 +1540,21 @@
const badshow = ref(false);
const donghuacs = ref(false)
const bebad = () => {
badshow.value = true;
moreindex.value = -1;
donghuacs.value = false;
setTimeout(() => donghuacs.value = true, 50)
// console.log("ceshi",Number(plsbuy.value[lefttarget.value]?.status))
// console.log("right?",plsbuy.value[lefttarget.value])
if (!Number(plsbuy.value[lefttarget.value]?.status) && plsbuy.value.length) {
badshow.value = true;
moreindex.value = -1;
donghuacs.value = false;
setTimeout(() => donghuacs.value = true, 50)
}
// return
}
const zuofei = () => {
voidedCgdMain({ id: plsbuy.value[zuofeiindex.value].id }).then((res : any) => {
voidedCgdMain({ id: plsbuy.value[lefttarget.value].id }).then((res : any) => {
// console.log("res", res)
if (res.success) {
uni.showToast({
title: res.message,
@ -1509,6 +1576,7 @@
donghuaopo.value = false;
setTimeout(() => {
donghuaopo.value = true;
console.log("zzz", donghuaopo.value)
}, 100)
}
//
@ -1516,20 +1584,17 @@
const uplod = () => {
uni.chooseImage({
count: 1, //9
sizeType: ['compressed'], //
sizeType: ['original', 'compressed'], //
sourceType: ['camera'], //
crop:{
quality:60
},
success: (e) => {
console.log(JSON.stringify(e.tempFilePaths))
let ar = JSON.stringify(e.tempFilePaths)
uni.compressImage({
src: JSON.parse(ar)[0],
quality: 60,
success: res => {
albumlist.value.push(res.tempFilePath)
}
})
albumlist.value.push(JSON.parse(ar)[0])
// upload({file:url}).then(res=>{
// albumlist.value.push(res.result)
// console.log(albumlist.value)
// })
console.log(albumlist.value)
}
});
}
@ -1548,43 +1613,19 @@
open.value = 0;
}
//
const clickflag = ref(false);
const clknum = (item : any) => {
// showvalue.value.maxnum = showvalue.value.purchaseQuantity : showvalue.value.wrksl
// showvalue.value.num
if (item == "AC") {
showvalue.value.num = 0;
stringjh.value = toFixed4ByPadStart(showvalue.value.num);
return
}
if (item == "AE") {
showvalue.value.num = Math.trunc(showvalue.value.num / 10)
stringjh.value = toFixed4ByPadStart(showvalue.value.num);
return
}
if(clickflag.value==true){
showvalue.value.num = item;
clickflag.value = false;
stringjh.value = toFixed4ByPadStart(showvalue.value.num)
if (item == "CE") {
return
}
if (digitCountByString(showvalue.value.num) > 3) {
} else {
if (!showvalue.value.num) {
showvalue.value.num = item
} else {
showvalue.value.num = showvalue.value.num * 10 + item;
}
// cy()
stringjh.value = toFixed4ByPadStart(showvalue.value.num)
}
}
//
const digitCountByString=(n)=> {
const s = Math.abs(n).toString();
return s.length;
}
const toFixed4ByPadStart = (n) => {
const intPart = Math.floor(Math.abs(n));
return String(intPart).padStart(4, '0');
@ -1631,8 +1672,6 @@
})
addupimg.value = [];
openjianhuo.value = false;
open.value = 0;
form.cgdId = plsbuy.value[lefttarget.value].id
queryInvo()
})
}
@ -2087,6 +2126,7 @@
color: #888888;
text-align: center;
font-size: 25rpx;
overflow: hidden;
}
.middle-heng-father {
@ -3007,10 +3047,11 @@
// width: 100rpx;
padding: 0 30rpx;
letter-spacing: 10rpx;
height: 100rpx;
border: 1rpx solid #CBCFD0;
display: flex;
justify-content: center;
justify-content: flex-end;
align-items: center;
padding-left: 40rpx;
margin-right: 10rpx;

View File

@ -574,7 +574,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
)
]);
}
const camera = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["styles", [_style_0]], ["__file", "D:/项目/hldy_app_mini/pages/camera.nvue"]]);
const camera = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["styles", [_style_0]], ["__file", "D:/hldy_app_mini/pages/camera.nvue"]]);
export {
camera as default
};

View File

@ -577,7 +577,7 @@ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
)
]);
}
const fullcamera = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["styles", [_style_0]], ["__file", "D:/项目/hldy_app_mini/pages/fullcamera.nvue"]]);
const fullcamera = /* @__PURE__ */ _export_sfc(_sfc_main, [["render", _sfc_render], ["styles", [_style_0]], ["__file", "D:/hldy_app_mini/pages/fullcamera.nvue"]]);
export {
fullcamera as default
};