| | |
| | | // uuid: '0000', |
| | | // code: '0000' |
| | | // }) |
| | | let res = await testLogin({ // ææ¦ |
| | | username: '18656077929', |
| | | password: '123456', |
| | | companyId: '111', |
| | | uuid: '0000', |
| | | code: '0000' |
| | | }) |
| | | // let res = await testLogin({ // è¡å
ä¸ |
| | | // username: '17751132561', |
| | | // let res = await testLogin({ // ææ¦ |
| | | // username: '18656077929', |
| | | // password: '123456', |
| | | // companyId: '1', |
| | | // companyId: '111', |
| | | // uuid: '0000', |
| | | // code: '0000' |
| | | // }) |
| | | let res = await testLogin({ // å¼ ç£é« |
| | | username: '15256913207', |
| | | password: '123456', |
| | | companyId: '8', |
| | | uuid: '0000', |
| | | code: '0000' |
| | | }) |
| | | |
| | | // let res = await testLogin({ |
| | | // username: '15056231084', |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <template>
|
| | | <u-popup :show="show" :round="10" closeable @close="show=false">
|
| | | <view class="loaction-content bbox p30">
|
| | | <scroll-view scroll-y="true" refresher-enabled="true" :refresher-triggered="refreshing"
|
| | | @refresherrefresh="onRefresh">
|
| | | <div class="content_list">
|
| | | <div class="content_list_item" v-for="(item, i) in list" :key="i" @click="jump(item)">
|
| | | <div class="wl">
|
| | | <div class="content_list_item_name">å
¥åºè´§ä½ï¼{{item.unionName}} | {{item.code}}</div>
|
| | | </div>
|
| | | </div>
|
| | | </div>
|
| | | </scroll-view>
|
| | | </view>
|
| | | </u-popup>
|
| | | </template>
|
| | |
|
| | | <script>
|
| | | import {
|
| | | getListByWarehouseId
|
| | | } from '@/util/api/WorkOrderAPI'
|
| | | export default {
|
| | | name: "SelectLoaction",
|
| | | data() {
|
| | | return {
|
| | | show: false,
|
| | | refreshing: false,
|
| | | wareHouseId: '',
|
| | | list: []
|
| | | };
|
| | | },
|
| | | methods: {
|
| | | open(target) {
|
| | | this.show = true
|
| | | this.refreshing = false
|
| | | this.wareHouseId = target.wareHouseId
|
| | | this.onRefresh()
|
| | | },
|
| | |
|
| | | onRefresh() {
|
| | | if (this.refreshing) return
|
| | | this.refreshing = true;
|
| | | getListByWarehouseId({
|
| | | wareHouseId: this.wareHouseId
|
| | | }).then(res => {
|
| | | this.list = res.data
|
| | | }).catch((err) => {
|
| | | this.list = []
|
| | | }).finally(() => {
|
| | | this.refreshing = false;
|
| | | })
|
| | | },
|
| | | jump(item) { |
| | | this.$emit('selected', item) |
| | | this.show = false |
| | | }
|
| | | }
|
| | | }
|
| | | </script>
|
| | |
|
| | | <style lang="scss" scoped>
|
| | | .loaction-content {
|
| | | height: 1200rpx;
|
| | | }
|
| | |
|
| | | .content_list {
|
| | | width: 100%;
|
| | | height: 100%;
|
| | | display: flex;
|
| | | flex-direction: column;
|
| | |
|
| | | .content_list_item {
|
| | | padding: 30rpx;
|
| | | display: flex;
|
| | | flex-direction: column;
|
| | | border-bottom: 1rpx solid #ececec;
|
| | |
|
| | | .wl {
|
| | | display: flex;
|
| | | align-items: center;
|
| | |
|
| | | .content_list_item_status {
|
| | | font-size: 28rpx;
|
| | | margin-right: 10rpx;
|
| | | }
|
| | |
|
| | | .content_list_item_name {
|
| | | font-size: 30rpx;
|
| | | font-weight: 500;
|
| | | color: #111111;
|
| | | }
|
| | | }
|
| | |
|
| | | .sx {
|
| | | margin-top: 15rpx;
|
| | |
|
| | | span {
|
| | | font-size: 26rpx;
|
| | | font-weight: 400;
|
| | | color: #444444;
|
| | | }
|
| | | }
|
| | |
|
| | | .zl {
|
| | | margin-top: 15rpx;
|
| | |
|
| | | span {
|
| | | font-size: 24rpx;
|
| | | font-weight: 400;
|
| | | color: #666666;
|
| | | }
|
| | | }
|
| | | }
|
| | | }
|
| | | </style> |
| | |
| | | <u-popup :show="show" :round="10" closeable @close="show=false">
|
| | | <view class="material-content bbox p30 rp">
|
| | | <view class="tc b f24 c2 mb20">éæ©ç©æ</view>
|
| | | <v-Search ref="V" @searchInput="searchInput" @submit="submit" :isShow="false" placeholder="æç´¢ç©æåç§°/ç¼ç ">
|
| | | </v-Search>
|
| | | <!-- <v-Search ref="V" @searchInput="searchInput" @submit="submit" :isShow="false" placeholder="æç´¢ç©æåç§°/ç¼ç ">
|
| | | </v-Search> -->
|
| | | <div class="content_total">å
±{{pages.total}}æ¡æ°æ®</div>
|
| | | <view class="scroll-content"> |
| | | <scroll-view scroll-y="true" refresher-enabled="true" :refresher-triggered="refreshing" @scrolltolower="loadMore" |
| | |
| | | </template>
|
| | |
|
| | | <script>
|
| | | import vSearch from '@/components/Search.vue'
|
| | | // import vSearch from '@/components/Search.vue'
|
| | | import {
|
| | | choiceStockPageByTransfer
|
| | | } from '@/util/api/ExWarehouse'
|
| | | export default {
|
| | | name: "selectTraMultipleMaterial",
|
| | | components: {
|
| | | vSearch
|
| | | },
|
| | | // components: {
|
| | | // vSearch
|
| | | // },
|
| | | data() {
|
| | | return {
|
| | | show: false,
|
| | |
| | | open(target) {
|
| | | this.show = true |
| | | this.refreshing = false
|
| | | this.isAll = false
|
| | | this.transferId = target.transferId
|
| | | this.warehouseId = target.warehouseId
|
| | | this.list = [] |
| | |
| | | ...this.pages,
|
| | | model: {
|
| | | transferId: this.transferId,
|
| | | deviceId: this.deviceId
|
| | | warehouseId: this.warehouseId
|
| | | }
|
| | | }).then(res => { |
| | | let {data} = res |
| | |
| | | } else { |
| | | this.selectIndex.splice(i) |
| | | }
|
| | | if (this.selectIndex.length == this.list.length) { |
| | | this.isAll = true |
| | | } else { |
| | | this.isAll = false |
| | | }
|
| | | },
|
| | | selectAll() { |
| | | this.selectIndex = [] |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <template>
|
| | | <u-popup :show="show" :round="10" closeable @close="show=false">
|
| | | <view class="loaction-content bbox p30">
|
| | | <div class="content_list">
|
| | | <div class="page_content" v-for="(item1, idx) in list" :key="idx" @click="jump(item1)">
|
| | | <div class="page_content_title">
|
| | | <div class="page_content_title_top">
|
| | | <span v-if="item1.batch">{{ item1.materialName + ' | ' + item1.materialCode }}</span>
|
| | | <span v-else>{{ item1.materialName + ' | ' + item1.materialCode }}</span>
|
| | | <span>{{item1.outActnum}}{{item1.unitName}}</span>
|
| | | </div>
|
| | | <div class="page_content_title_bottom">
|
| | | <span class="green" v-if="item1.qualityType === 0">åæ ¼ <span
|
| | | class="black">/</span> </span>
|
| | | <span class="warning" v-else-if="item1.qualityType === 1">ä¸è¯ <span
|
| | | class="black">/</span> </span>
|
| | | <span class="error" v-else-if="item1.qualityType === 2">æ¥åº <span
|
| | | class="black">/</span> </span>
|
| | | <span v-else>- / </span>
|
| | | <span>{{item1.procedureName ? item1.procedureName : '-'}} / </span>
|
| | | <span>{{item1.batch ? item1.batch : '-'}}</span>
|
| | | </div>
|
| | | </div>
|
| | | </div>
|
| | | </div>
|
| | | </view>
|
| | | </u-popup>
|
| | | </template>
|
| | |
|
| | | <script>
|
| | | export default {
|
| | | name: "materialIn",
|
| | | data() {
|
| | | return {
|
| | | show: false, |
| | | list: [],
|
| | | };
|
| | | }, |
| | | methods: { |
| | | open(target) { |
| | | this.show = true |
| | | this.list = target.list |
| | | }, |
| | | jump(item) { |
| | | |
| | | } |
| | | }
|
| | | }
|
| | | </script>
|
| | |
|
| | | <style lang="scss" scoped>
|
| | | .loaction-content { |
| | | |
| | | height: 1200rpx;
|
| | | }
|
| | |
|
| | | .content_list {
|
| | | width: 100%;
|
| | | height: 100%;
|
| | | display: flex;
|
| | | padding: 0 30rpx;
|
| | | box-sizing: border-box;
|
| | | flex-direction: column;
|
| | |
|
| | | .page_content {
|
| | | margin-top: 36rpx;
|
| | |
|
| | | .page_content_title {
|
| | | display: flex;
|
| | | flex-direction: column;
|
| | | margin-bottom: 10rpx;
|
| | |
|
| | | .page_content_title_top {
|
| | | display: flex;
|
| | | align-items: center;
|
| | | justify-content: space-between;
|
| | |
|
| | | span {
|
| | | &:nth-child(1) {
|
| | | font-size: 30rpx;
|
| | | font-weight: 500;
|
| | | color: #222222;
|
| | | }
|
| | |
|
| | | &:nth-child(2) {
|
| | | flex-shrink: 0;
|
| | | font-size: 24rpx;
|
| | | font-weight: 400;
|
| | | color: #333333;
|
| | |
|
| | | span {
|
| | | font-size: 24rpx;
|
| | | color: $nav-color;
|
| | | }
|
| | | }
|
| | | }
|
| | | }
|
| | |
|
| | | .page_content_title_bottom {
|
| | | .green {
|
| | | color: $nav-stateColor7 !important;
|
| | |
|
| | | .black {
|
| | | color: black !important;
|
| | | }
|
| | | }
|
| | |
|
| | | .warning {
|
| | | color: $nav-stateColor5 !important;
|
| | |
|
| | | .black {
|
| | | color: black !important;
|
| | | }
|
| | | }
|
| | |
|
| | | .error {
|
| | | color: $nav-stateColor4 !important;
|
| | |
|
| | | .black {
|
| | | color: black !important;
|
| | | }
|
| | | }
|
| | |
|
| | | span {
|
| | | font-size: 24rpx;
|
| | | font-weight: 400;
|
| | | color: #666666;
|
| | | }
|
| | | }
|
| | | }
|
| | |
|
| | | .lineBorder {
|
| | | border: none !important;
|
| | | padding-bottom: 0 !important;
|
| | | margin-bottom: 24rpx;
|
| | | }
|
| | |
|
| | | .page_content_list {
|
| | | width: 100%;
|
| | | display: flex;
|
| | | align-items: center;
|
| | | flex-wrap: wrap;
|
| | |
|
| | | &:first-child {
|
| | | margin: 0;
|
| | | }
|
| | |
|
| | | &:last-child {
|
| | | border: none;
|
| | | }
|
| | |
|
| | | .page_content_list_nums {
|
| | | width: 30%;
|
| | | display: flex;
|
| | |
|
| | | .page_content_list_num_label {
|
| | | font-size: 26rpx;
|
| | | font-weight: 400;
|
| | | color: #666666;
|
| | | }
|
| | |
|
| | | .page_content_list_num_nr {
|
| | | font-size: 26rpx;
|
| | | font-weight: 400;
|
| | | color: #222222;
|
| | | }
|
| | | }
|
| | |
|
| | | .page_content_list_num {
|
| | | width: 70%;
|
| | | display: flex;
|
| | |
|
| | | .page_content_list_num_label {
|
| | | font-size: 26rpx;
|
| | | font-weight: 400;
|
| | | color: #666666;
|
| | | }
|
| | |
|
| | | .page_content_list_num_nr {
|
| | | font-size: 26rpx;
|
| | | font-weight: 400;
|
| | | color: #222222;
|
| | | }
|
| | | }
|
| | |
|
| | | .page_content_list_items {
|
| | | width: 30%;
|
| | | display: flex;
|
| | | margin-top: 24rpx;
|
| | |
|
| | | .page_content_list_item_label {
|
| | | font-size: 26rpx;
|
| | | font-weight: 400;
|
| | | color: #666666;
|
| | | flex-shrink: 0;
|
| | | }
|
| | |
|
| | | .page_content_list_item_nr {
|
| | | font-size: 26rpx;
|
| | | font-weight: 400;
|
| | | color: #222222;
|
| | | }
|
| | | }
|
| | |
|
| | | .page_content_list_item {
|
| | | width: 70%;
|
| | | display: flex;
|
| | |
|
| | | .page_content_list_item_label {
|
| | | font-size: 26rpx;
|
| | | font-weight: 400;
|
| | | color: #666666;
|
| | | flex-shrink: 0;
|
| | | }
|
| | |
|
| | | .page_content_list_item_nr {
|
| | | font-size: 26rpx;
|
| | | font-weight: 400;
|
| | | color: #222222;
|
| | | }
|
| | | }
|
| | | }
|
| | | }
|
| | | }
|
| | | </style> |
| | |
| | | this.loadData()
|
| | | },
|
| | | loadData() {
|
| | | // this.list = [{
|
| | | // batch: '1',
|
| | | // materialName: 'dsadas',
|
| | | // materialCode: '1m0001',
|
| | | // locationName: 'aä»2å·ä½',
|
| | | // num: '1',
|
| | | // unitName: 'å',
|
| | | // qualityType: 0,
|
| | | // procedureName: 'åå¶',
|
| | | // }]
|
| | | choiceStockPageForStandard({
|
| | | ...this.pages,
|
| | | model: {
|
| | |
| | | <InOutInfo :info="info" />
|
| | |
|
| | | <uni-collapse @change="change" @close="close" @open="open">
|
| | | <uni-collapse-item v-for="(item, index) in wtransferWarehouseList" :key="index">
|
| | | <uni-collapse-item v-if="type==7" v-for="(item1, index) in wtransferWarehouseList" :key="index"
|
| | | :open="item1.wtransferDetailList.length">
|
| | | <view class="p30 cY" style="border-bottom: 4rpx solid #f7f7f7;" slot="title">
|
| | | <image src="../../static/chuku_ic_cangku@2x.png" class="img36 mr10" mode=""></image>
|
| | | <view>{{ item.warehouseName }}</view>
|
| | | <view>{{ item1.warehouseName }}</view>
|
| | | </view>
|
| | | <view class="p30">
|
| | | <div class="page_dck">
|
| | |
| | | <span>å¾
å
¥åºç©æ</span>
|
| | | </div>
|
| | | </div>
|
| | | <div class="page_content" v-for="(item, index) in info.woutboundDetailsWait" :key="index"
|
| | | <div class="page_content" v-for="(item, index) in item1.wtransferDetailList" :key="index"
|
| | | :name="index">
|
| | | <div class="page_content_title">
|
| | | <div class="page_content_title_top">
|
| | |
| | | <span>{{item.batch ? item.batch : '-'}}</span>
|
| | | </div>
|
| | | </div>
|
| | | <div class="page_content_list">
|
| | | <div class="page_content_list" v-for="(childer, idxs) in item.wstockExtListVOList" :key="idxs">
|
| | | <div class="page_content_list_item">
|
| | | <div class="page_content_list_item_label">å
¥åºè´§ä½ï¼</div>
|
| | | <div class="page_content_list_item_nr">
|
| | | {{item.locationName ? item.locationName : '-'}}
|
| | | </div>
|
| | | <div class="page_content_list_item_nr">{{ childer.locationName }}</div>
|
| | | </div>
|
| | | <div class="page_content_list_items">
|
| | | <div class="page_content_list_item_label">æ°éï¼</div>
|
| | | <div class="page_content_list_item_nr">{{item.num ? item.num : '-'}}{{item.unitName}}
|
| | | </div>
|
| | | <div class="page_content_list_item_nr">{{ childer.num }}{{ childer.unitName }}</div>
|
| | | </div>
|
| | | </div>
|
| | | </div>
|
| | |
| | | </div>
|
| | | </div> |
| | | <SelectMultipleMaterial ref="selectMultipleMaterial" />
|
| | | <SelectLoaction ref="selectLoaction" @selected="selectLocation"/> |
| | | <MaterialIn ref="materialIn" @selected="selectLocation"/>
|
| | | </view>
|
| | | </template>
|
| | |
|
| | | <script>
|
| | | import InOutInfo from '@/components/InOutInfo.vue' |
| | | import SelectMultipleMaterial from '@/components/SelectMultipleMaterial.vue' |
| | | import { QRCodeType } from '@/common/config.js'
|
| | | import SelectLoaction from '@/components/SelectLoaction.vue' |
| | | import MaterialIn from '@/components/materialIn.vue'
|
| | | import {
|
| | | QRCodeType
|
| | | } from '@/common/config.js'
|
| | | import {
|
| | | getList,
|
| | | outScanAppliances,
|
| | | getLocationInfo,
|
| | | saveIn,
|
| | | getInByWTransferId,
|
| | | wTransferForInOut,
|
| | | wOutBoundForInOut,
|
| | | wOutBoundForUpload,
|
| | | transferToInNew
|
| | | } from '@/util/api/ExWarehouse'
|
| | | import {
|
| | | wTransferForInOutUpload
|
| | | } from '@/util/api/ExWarehouse'
|
| | | import {
|
| | | getBarcodeContent,
|
| | | getListByCondition,
|
| | | getListByWarehouseId
|
| | | } from '@/util/api/WorkOrderAPI'
|
| | | import {
|
| | | getDB
|
| | | } from '@/util/api/agencyAPI'
|
| | | export default {
|
| | | components: {
|
| | | InOutInfo, |
| | | SelectLoaction, |
| | | MaterialIn,
|
| | | SelectMultipleMaterial
|
| | | },
|
| | | data() {
|
| | | return { |
| | | type: '', |
| | | id: '', |
| | | wareHouseId: '',
|
| | | isZKD: false, |
| | | show: false,
|
| | | info: {
|
| | | outPlandate: '2022/02/14',
|
| | | originType: 1, |
| | | wtransferRedisCodeBeanList: [],
|
| | | remark: 'Vueæ¯å端å¼åä¸å¹¿æ³ä½¿ç¨çä¸ä¸ªJavaScriptæ¡æ¶ï¼å®å¯ä»¥è®©æä»¬æ´è½»æ¾å°ç®¡ç页é¢çç¶æãæ¸²æå交äºã使¯å¨ç¼åVueåºç¨æ¶ï¼ææ¶ä¼éå°âSyntaxError: Unexpected tokenâæ¥éï¼è¿ä¸ªé误æç¤ºæå³ç代ç ä¸åå¨è¯æ³é误ï¼JavaScriptå¼ææ æ³è§£æï¼ä»è导è´ç¨åºè¿è¡å¤±è´¥ãæ¬ç¯æç« å°ä»ç»å¸¸è§å¼èµ·âSyntaxError: Unexpected tokenâçåå 以åè§£å³æ¹æ³ã'
|
| | | }, |
| | | info: {},
|
| | | ids: [],
|
| | | wtransferWarehouseList: [{
|
| | | warehouseName: 'æµè¯åº'
|
| | | }]
|
| | | location: '', |
| | | locationName: '',
|
| | | wtransferWarehouseList: [],
|
| | | MateriaList: []
|
| | | };
|
| | | }, |
| | | onLoad(option) { |
| | | this.type = option.type||'ZKD' |
| | | this.type = option.type
|
| | | this.id = option.id
|
| | | this.isZKD = this.type==QRCodeType.ZKD |
| | | // console.log(this.type, QRCodeType.ZKD, this.type==QRCodeType.ZKD); |
| | | if (option.dbid) {
|
| | | this.getDBs(option.dbid)
|
| | | } else {
|
| | | this.getInfo()
|
| | | }
|
| | | },
|
| | | methods: {
|
| | | getDBs(dbid) {
|
| | | getDB(dbid)
|
| | | .then(res => {
|
| | | let {
|
| | | data
|
| | | } = res
|
| | | if (data.status == 1) {
|
| | | // 已宿
|
| | | } else {
|
| | | this.getInfo()
|
| | | }
|
| | | })
|
| | | .catch(err => {})
|
| | | },
|
| | | getInfo() {
|
| | | let infoAction
|
| | | let data = {
|
| | | id: this.id
|
| | | }
|
| | | console.log(this.type, QRCodeType.CKD);
|
| | | if (this.type == QRCodeType.CKD) {
|
| | | infoAction = wOutBoundForInOut
|
| | | data.wOutboundType = '1'
|
| | | } else if (this.type == QRCodeType.ZKD) {
|
| | | infoAction = wTransferForInOut
|
| | | data.wTransferType = '1'
|
| | | }
|
| | | infoAction(data).then(res => {
|
| | | if (this.isZKD) {
|
| | | this.info = res.data.wtransfer |
| | | this.wareHouseId = res.data.wtransfer.inWarehouseId
|
| | | this.wtransferWarehouseList = res.data.wtransferWarehouseList
|
| | | this.MateriaList = res.data.wtransferWarehouseList[0].wtransferDetailList
|
| | | } else {
|
| | | this.info = res.data.woutbound
|
| | | this.woutboundDetailsWait = res.data.woutboundDetailsWait
|
| | | }
|
| | | }).catch(err => {
|
| | | uni.$u.toast(err)
|
| | | uni.navigateBack()
|
| | | })
|
| | | },
|
| | | change() {},
|
| | | close() {},
|
| | | open() {}, |
| | | openxz() { |
| | | let arr = [] |
| | | if (this.info.wtransferRedisCodeBeanList.length !== 0) { |
| | | this.info.wtransferRedisCodeBeanList.forEach(element => { |
| | | arr.push(element.appliancesId) |
| | | getListByWarehouseId({
|
| | | wareHouseId: this.wareHouseId
|
| | | }) |
| | | this.ids = arr.join(',') |
| | | .then(res => {
|
| | | if (res.data.length === 1) { |
| | | this.location = res.data[0].id |
| | | this.locationName = res.data[0].unionName |
| | | this.$refs.materialIn.open({list: this.MateriaList}) |
| | | } else { |
| | | this.ids = '' |
| | | this.$refs.selectLoaction.open({wareHouseId: this.wareHouseId}) |
| | | } |
| | | this.$refs.selectMultipleMaterial.open({}) |
| | | })
|
| | | }, |
| | | selectLocation(item) { |
| | | this.location = item.id |
| | | this.locationName = item.unionName |
| | | this.$refs.materialIn.open({list: this.MateriaList}) |
| | | }
|
| | | }
|
| | | }
|
| | | </script>
|
| | |
| | | <view>
|
| | | <InOutInfo :info="info" />
|
| | | <uni-collapse @change="change" @close="close" @open="open">
|
| | | <uni-collapse-item v-if="type==7" v-for="(item1, index) in warehouseList" :key="index">
|
| | | <uni-collapse-item :open="item1.wtransferDetailList.length" v-if="type==7" v-for="(item1, index) in warehouseList" :key="index">
|
| | | <view class="p30 cY" style="border-bottom: 4rpx solid #f7f7f7;" slot="title">
|
| | | <image src="../../static/chuku_ic_cangku@2x.png" class="img36 mr10" mode=""></image>
|
| | | <view>{{ item1.warehouseName }}</view>
|
| | |
| | | <div class="page_content_title">
|
| | | <div class="page_content_title_top">
|
| | | <span>{{ item.materialName + ' | ' + item.materialCode }}</span>
|
| | | <span>å¾
åº{{ item.materialName + ' | ' + item.materialCode }}</span>
|
| | | <span>å¾
åº<span>{{ item.outPlannum }}</span> {{ item.unitName }}</span>
|
| | | </div>
|
| | | <div class="page_content_title_bottom">
|
| | | <span class="green" v-if="item.qualityType === 0">åæ ¼ <span
|
| | |
| | | <span>{{item.batch ? item.batch : '-'}}</span>
|
| | | </div>
|
| | | </div>
|
| | | <div class="page_content_list">
|
| | | <div class="page_content_list" v-for="(childer, idxs) in item.wstockExtListVOList" :key="idxs">
|
| | | <div class="page_content_list_item">
|
| | | <div class="page_content_list_item_label">åºåºè´§ä½ï¼</div>
|
| | | <div class="page_content_list_item_nr">
|
| | | {{item.outLocationName ? item.outLocationName : '-'}}
|
| | | </div>
|
| | | <div class="page_content_list_item_nr">{{ childer.locationName }}</div>
|
| | | </div>
|
| | | <div class="page_content_list_items">
|
| | | <div class="page_content_list_item_label">æ°éï¼</div>
|
| | | <div class="page_content_list_item_nr">
|
| | | {{item.outPlannum ? item.outPlannum : '-'}}{{item.unitName}}
|
| | | <div class="page_content_list_item_nr">{{ childer.num }}{{ childer.unitName }}</div>
|
| | | </div>
|
| | | <div class="page_content_list_item">
|
| | | <div class="page_content_list_item_label">æ¹æ¬¡å·ï¼</div>
|
| | | <div class="page_content_list_item_nr">{{ childer.batch ? childer.batch : '-' }}</div>
|
| | | </div>
|
| | | </div>
|
| | | </div>
|
| | |
| | | <span>确认åºåº</span>
|
| | | </div>
|
| | | </div>
|
| | | <SelectTraMultipleMaterial ref="selectTraMultipleMaterial" />
|
| | | <SelectTraMultipleMaterial ref="selectTraMultipleMaterial" @selectes="selectMaterail" />
|
| | | </view>
|
| | | </template>
|
| | |
|
| | |
| | | close() {},
|
| | | open() {},
|
| | | openxz() {
|
| | | // let arr = []
|
| | | // if (this.info.wtransferRedisCodeBeanList.length !== 0) {
|
| | | // this.info.wtransferRedisCodeBeanList.forEach(element => {
|
| | | // arr.push(element.appliancesId)
|
| | | // })
|
| | | // this.ids = arr.join(',')
|
| | | // } else {
|
| | | // this.ids = ''
|
| | | // }
|
| | | this.$refs.selectTraMultipleMaterial.open({ |
| | | transferId: this.id, |
| | | warehouseId: this.warehouseId |
| | | })
|
| | | },
|
| | | selectMaterail(v) {
|
| | | let tempList = this.warehouseList[0].wtransferDetailList
|
| | | let materials = v.materials
|
| | |
|
| | | materials.forEach(materail => {
|
| | | tempList.forEach(item => {
|
| | | if (materail.materialId == item.materialId && materail.procedureId == item
|
| | | .procedureId && materail.qualityType == item.qualityType && materail.batch ==
|
| | | item.batch) {
|
| | | let isExist = false
|
| | | this.outboundList.forEach(selected => {
|
| | | if (selected.newId == materail.id) {
|
| | | isExist = true
|
| | | return
|
| | | }
|
| | | })
|
| | | if (isExist) {
|
| | | uni.$u.toast('è¯¥ç©ææ¹æ¬¡å·²åå¨')
|
| | | return
|
| | | }
|
| | | let obj = JSON.parse(JSON.stringify(materail))
|
| | | obj.newId = item.id
|
| | | this.outboundList.push(obj)
|
| | | }
|
| | | })
|
| | | })
|
| | | },
|
| | | submit() {
|
| | | if (this.type == QRCodeType.ZKD) {
|
| | | if (this.outboundList.length > 0) {
|
| | | let result = this.outboundList.reduce((a, b) => {
|
| | | if (a[b.newId]) {
|
| | | a[b.newId].push(b);
|
| | | } else {
|
| | | a[b.newId] = [b];
|
| | | }
|
| | | return a;
|
| | | }, {});
|
| | | let tempList = this.warehouseList[0].wtransferDetailList
|
| | |
|
| | | for (let i = 0; i < tempList.length; i++) {
|
| | | let item = tempList[i]
|
| | | for (let a in result) {
|
| | | if (item.id == a) {
|
| | | let total = 0
|
| | | for (let b = 0; b < result[a].length; b++) {
|
| | | total = Number(total) + Number(result[a][b].num)
|
| | | }
|
| | | if (!total || total <= 0) {
|
| | | uni.$u.toast('åºåºç©ææ°éå¿
须大äº0')
|
| | | return
|
| | | }
|
| | | console.log(total, item.outPlannum);
|
| | | if (total > item.outPlannum) {
|
| | | uni.$u.toast('åºåºæ°éä¸è½å¤§äºå¾
åºåºæ°é')
|
| | | return
|
| | | }
|
| | | }
|
| | | }
|
| | | }
|
| | | let submitTransferOutDetailDTOList = []
|
| | | this.outboundList.forEach(item => {
|
| | | tempList.forEach(child => {
|
| | | if (item.newId == child.id) {
|
| | | submitTransferOutDetailDTOList.push({
|
| | | outNum: item.num,
|
| | | wstockId: item.id,
|
| | | wtransferDetailId: child.id
|
| | | })
|
| | | }
|
| | | })
|
| | | })
|
| | | transferToOutNew({
|
| | | submitTransferOutDetailDTOList,
|
| | | wtransferId: this.id
|
| | | }).then(res => {
|
| | | if (res.code === 200) {
|
| | | this.$store.dispatch.dispatch('getUpcomingNum')
|
| | | uni.$u.toast('æä½æå')
|
| | | // setTimeout(() => {
|
| | | // router.replace({ name: 'wTransferDetail', query: { id: info.value.wtransfer.id, dbid: route.query.dbid } })
|
| | | // }, 2000)
|
| | | }
|
| | | })
|
| | | } else {
|
| | | uni.$u.toast('è¯·éæ©åºåºç©æ')
|
| | | }
|
| | | } else if (this.type === QRCodeType.CKD) {
|
| | | wOutBoundForUpload({
|
| | | id: info.value.woutbound.id,
|
| | | wOutboundType: 0
|
| | | }).then(res => {
|
| | | if (res.code === 200) {
|
| | | this.$store.dispatch.dispatch('getUpcomingNum')
|
| | | uni.$u.toast('æä½æå')
|
| | | // setTimeout(() => {
|
| | | // // router.go(-1)
|
| | | // router.replace({ name: 'wOutboundDetail', query: { id: info.value.wtransfer.id } })
|
| | | // }, 2000)
|
| | | }
|
| | | })
|
| | | }
|
| | | }
|
| | | }
|
| | | }
|
| | | </script>
|
| | |
| | |
|
| | | .page_yxwl_list_item_num {
|
| | | display: flex;
|
| | | flex-direction: column;
|
| | | position: relative; |
| | | margin-top: 36rpx; |
| | |
|
| | | // margin-top: 30rpx;
|
| | | &:first-child {
|
| | | margin-top: 0;
|
| | | }
|
| | |
|
| | | .dis {
|
| | | display: flex;
|
| | | }
|
| | |
|
| | | .itemy {
|
| | | margin-top: 20rpx;
|
| | | width: 100%;
|
| | | display: flex;
|
| | | align-items: center;
|
| | | position: relative;
|
| | |
|
| | | .itemy_item {
|
| | | flex: 1;
|
| | | display: flex;
|
| | | align-items: center;
|
| | |
|
| | | .label {
|
| | | font-size: 26rpx;
|
| | | font-weight: 400;
|
| | | color: #666666;
|
| | | flex-shrink: 0;
|
| | | }
|
| | |
|
| | | .nr {
|
| | | font-size: 26rpx;
|
| | | font-weight: 400;
|
| | | color: #222222;
|
| | |
|
| | | input {
|
| | | width: 100rpx;
|
| | | height: 35rpx;
|
| | | border-radius: 8rpx;
|
| | | border: 1rpx solid #E5E5E5;
|
| | | margin-right: 10rpx;
|
| | | margin-left: 5rpx;
|
| | | }
|
| | |
|
| | | span {
|
| | | font-size: 26rpx;
|
| | | font-weight: 400;
|
| | | color: #222222;
|
| | | }
|
| | | }
|
| | | }
|
| | |
|
| | | .dele {
|
| | |
| | | height: 100%;
|
| | | }
|
| | | }
|
| | | }
|
| | |
|
| | | .items {
|
| | | .item { |
| | | width: 50%;
|
| | | display: flex;
|
| | | align-items: center;
|
| | |
|
| | | .label {
|
| | | flex-shrink: 0; |
| | | font-size: 26rpx;
|
| | | font-weight: 400;
|
| | | color: #666666;
|
| | |
| | | }
|
| | |
|
| | | .nr {
|
| | | font-size: 26rpx;
|
| | | font-weight: 400;
|
| | | color: #222222;
|
| | |
|
| | | input {
|
| | | width: 100rpx;
|
| | | height: 40rpx;
|
| | | margin-right: 10rpx;
|
| | | }
|
| | |
|
| | | span {
|
| | | font-size: 26rpx;
|
| | | font-weight: 400;
|
| | | color: #222222;
|
| | | }
|
| | | }
|
| | | }
|
| | |
|
| | | .item {
|
| | | width: 70%;
|
| | | flex: 1; |
| | | display: flex;
|
| | | align-items: center;
|
| | |
|
| | | .label {
|
| | | font-size: 26rpx;
|
| | | font-weight: 400;
|
| | | color: #666666;
|
| | | flex-shrink: 0;
|
| | | }
|
| | |
|
| | | .nr {
|
| | | font-size: 26rpx;
|
| | | font-weight: 400;
|
| | | color: #222222;
|
| | |
|
| | | input {
|
| | | width: 100rpx;
|
| | | width: 130rpx; |
| | | height: 40rpx;
|
| | | border-radius: 8rpx; |
| | | border: 1rpx solid #E5E5E5; |
| | | margin-right: 10rpx;
|
| | | }
|
| | |
|
| | |
| | | return
|
| | | }
|
| | | uni.navigateTo({
|
| | | url: '/pages/InOperation/InOperation',
|
| | | query: {
|
| | | id: item.objId,
|
| | | dbid: item.id,
|
| | | type: 7
|
| | | }
|
| | | url: `/pages/InOperation/InOperation?id=${item.objId}&dbid=${item.id}&type=7`
|
| | | })
|
| | | // router.push({
|
| | | // name: 'warehousing',
|