| | |
| | | <view> |
| | | <view class="form"> |
| | | <view class="form-item"> |
| | | <view class="title">条码:</view> |
| | | <view class="title">{{$t("Gy.HBarCode")}}:</view> |
| | | <view class="right" style="width: 380rpx;"> |
| | | <input :focus="BarCodeFocus" v-model="hform.HBarCode" placeholder="请扫描(或输入)条码" |
| | | <input :focus="BarCodeFocus" v-model="hform.HBarCode" :placeholder="$t('Gy.HBarCode_Placeholder')" |
| | | @confirm="getCode(hform.HBarCode)" /> |
| | | </view> |
| | | <uni-icons type="scan" |
| | |
| | | size="20" @click="toScanCode"></uni-icons> |
| | | </view> |
| | | <view class="form-item"> |
| | | <view class="title">数量:</view> |
| | | <view class="title">{{$t("Gy.HQty")}}:</view> |
| | | <view class="right"> |
| | | <input v-model="hform.HQty" placeholder="请输入数量" /> |
| | | <input v-model="hform.HQty" :placeholder="$t('Gy.HQty_Placeholder')" /> |
| | | </view> |
| | | </view> |
| | | <view class="form-item"> |
| | | <view class="title">仓库:</view> |
| | | <view class="title">{{$t("Gy.HWHName")}}:</view> |
| | | <view class="right"> |
| | | <uni-combox :candidates="arrayHWHName" placeholder="请输入(或扫描)仓库" v-model="hform.HWHName" |
| | | @input="HWHNameChange"></uni-combox> |
| | | <uni-combox :candidates="arrayHWHName" :placeholder="$t('Gy.HWHName_Placeholder')" |
| | | v-model="hform.HWHName" @input="HWHNameChange"></uni-combox> |
| | | </view> |
| | | </view> |
| | | <view class="form-item"> |
| | | <view class="title">仓位:</view> |
| | | <view class="title">{{$t("Gy.HStockPlaceName")}}:</view> |
| | | <view class="right" v-show="showHStockPlaceName"> |
| | | <uni-combox :candidates="HStockPlaceNameListComputed" placeholder="请输入(或扫描)仓位" |
| | | v-model="hform.HStockPlaceName" @input="HStockPlaceNameChange" @confirm="HStockPlaceNameScan"></uni-combox> |
| | | <uni-combox :candidates="HStockPlaceNameListComputed" |
| | | :placeholder="$t('Gy.HStockPlaceName_Placeholder')" v-model="hform.HStockPlaceName" |
| | | @input="HStockPlaceNameChange" @confirm="HStockPlaceNameScan"></uni-combox> |
| | | </view> |
| | | <view class="righton" v-show="!showHStockPlaceName"><input v-model="hform.HStockPlaceName" |
| | | placeholder="不可操作" /></view> |
| | | :placeholder="$t('Gy.OperationDisabled')" /></view> |
| | | </view> |
| | | |
| | | <view class="tabs"> |
| | | <view :class="tabs == 0 ? 'on':''" @tap="tabs = 0">选择源单</view> |
| | | <view :class="tabs == 1 ? 'on':''" @tap="tabs = 1">表头信息</view> |
| | | <view :class="tabs == 2 ? 'on':''" @tap="tabs = 2">物料信息</view> |
| | | <view :class="tabs == 3 ? 'on':''" @tap="tabs = 3">条码信息</view> |
| | | <view :class="tabs == 0 ? 'on':''" @tap="tabs = 0">{{$t("Gy.SourceBillSelect")}}</view> |
| | | <view :class="tabs == 1 ? 'on':''" @tap="tabs = 1">{{$t("Gy.TableHeaderInfo")}}</view> |
| | | <view :class="tabs == 2 ? 'on':''" @tap="tabs = 2">{{$t("Gy.MaterInfo")}}</view> |
| | | <view :class="tabs == 3 ? 'on':''" @tap="tabs = 3">{{$t("Gy.BarCodeInfo")}}</view> |
| | | </view> |
| | | |
| | | <view v-if="tabs == 0"> |
| | | <view class="form-item"> |
| | | <view class="title">源单类型:</view> |
| | | <view class="title">{{$t("Gy.HMainSourceBillType")}}:</view> |
| | | <view class="right" v-show="showHMainSourceBillType"> |
| | | <picker :range="arrayHMainSourceBillType" v-model="HMainSourceBillType" |
| | | @change="HMainSourceBillTypeChange"> |
| | | <input name="HMainSourceBillType" disabled v-model="HMainSourceBillType" |
| | | placeholder="请选择源单类型" /> |
| | | :placeholder="$t('Gy.HMainSourceBillType_Placeholder')" /> |
| | | <view class="picker-overlay"></view> |
| | | </picker> |
| | | </view> |
| | | <view class="righton" v-show="!showHMainSourceBillType"> |
| | | <input name="HMainSourceBillType" disabled v-model="HMainSourceBillType" |
| | | placeholder="请选择源单类型" /> |
| | | :placeholder="$t('Gy.HMainSourceBillType_Placeholder')" /> |
| | | </view> |
| | | </view> |
| | | <view class="form-item"> |
| | | <view class="title">源单单号:</view> |
| | | <view class="title">{{$t("Gy.HMainSourceBillNo")}}:</view> |
| | | <view class="right" style="width: 380rpx;" v-show="showHSourceBillNo"> |
| | | <input v-model="hform.HSourceBillNo" :focus="HSourceBillNoFocus" |
| | | @confirm="onHSourceBillNoConfirmHandler" placeholder="请扫描(或输入)源单单号" /> |
| | | @confirm="onHSourceBillNoConfirmHandler" |
| | | :placeholder="$t('Gy.HMainSourceBillNo_Placeholder')" /> |
| | | </view> |
| | | <uni-icons v-show="showHSourceBillNo" type="scan" |
| | | style="margin-left: 10rpx;background-color: #3A78FF;padding: 6rpx;color: #fff;border-radius: 100%;" |
| | | size="20" @click="toScanCodeA()"></uni-icons> |
| | | <view class="righton" v-show="!showHSourceBillNo"> |
| | | <input name="HSourceBillNo" disabled v-model="hform.HSourceBillNo" placeholder="请输入源单单号" /> |
| | | <input name="HSourceBillNo" disabled v-model="hform.HSourceBillNo" |
| | | :placeholder="$t('Gy.HMainSourceBillNo_Placeholder')" /> |
| | | </view> |
| | | </view> |
| | | <view class="form-item"> |
| | | <view class="title">日期:</view> |
| | | <view class="title">{{$t("Gy.HDate")}}:</view> |
| | | <view class="right"> |
| | | <picker mode="date" v-model="hform.HDate" @change="HDateChange"> |
| | | <input disabled v-model="hform.HDate" placeholder="请选择日期" /> |
| | | <input disabled v-model="hform.HDate" :placeholder="$t('Gy.HDate_Placeholder')" /> |
| | | <view class="picker-overlay"></view> |
| | | </picker> |
| | | </view> |
| | | </view> |
| | | <view class="form-item"> |
| | | <view class="title">制单人:</view> |
| | | <view class="title">{{$t("Gy.HMaker")}}:</view> |
| | | <view class="righton"> |
| | | <input name="HMaker" disabled v-model="hform.HMaker" /> |
| | | </view> |
| | | </view> |
| | | <view class="form-item"> |
| | | <view class="title">单据号:</view> |
| | | <view class="title">{{$t("Gy.HBillNo")}}:</view> |
| | | <view class="righton"> |
| | | <input name="HBillNo" disabled v-model="hform.HBillNo" /> |
| | | </view> |
| | |
| | | |
| | | </view> |
| | | <view class="form-item"> |
| | | <view class="title">单据ID:</view> |
| | | <view class="title">{{$t("Gy.HInterID")}}:</view> |
| | | <view class="righton"> |
| | | <input name="HInterID" disabled v-model="hform.HInterID" /> |
| | | </view> |
| | |
| | | |
| | | <view v-if="tabs == 1"> |
| | | <view class="form-item"> |
| | | <view class="title">保管:</view> |
| | | <view class="title">{{$t("Gy.HKeeperName")}}:</view> |
| | | <view class="right"> |
| | | <uni-combox :candidates="arrayHEmpName" placeholder="请选择保管员" v-model="hform.HKeeperName" |
| | | @input="HKeeperNameChange"></uni-combox> |
| | | <uni-combox :candidates="arrayHEmpName" :placeholder="$t('Gy.HKeeperName_Placeholder')" |
| | | v-model="hform.HKeeperName" @input="HKeeperNameChange"></uni-combox> |
| | | </view> |
| | | </view> |
| | | <view class="form-item"> |
| | | <view class="title">验收:</view> |
| | | <view class="title">{{$t("Gy.HSecManagerName")}}:</view> |
| | | <view class="right"> |
| | | <uni-combox :candidates="arrayHEmpName" placeholder="请选择验收员" v-model="hform.HSecManagerName" |
| | | @input="HSecManagerNameChange"></uni-combox> |
| | | <uni-combox :candidates="arrayHEmpName" :placeholder="$t('Gy.HSecManagerName_Placeholder')" |
| | | v-model="hform.HSecManagerName" @input="HSecManagerNameChange"></uni-combox> |
| | | </view> |
| | | </view> |
| | | <view class="form-item"> |
| | | <view class="title">部门:</view> |
| | | <view class="title">{{$t("Gy.HDeptName")}}:</view> |
| | | <view class="right"> |
| | | <uni-combox :candidates="arrayHDeptName" placeholder="请选择部门" v-model="hform.HDeptName" |
| | | @input="HDeptNameChange"></uni-combox> |
| | | <uni-combox :candidates="arrayHDeptName" :placeholder="$t('Gy.HDeptName_Placeholder')" |
| | | v-model="hform.HDeptName" @input="HDeptNameChange"></uni-combox> |
| | | </view> |
| | | </view> |
| | | <view class="form-item"> |
| | | <view class="title">客户:</view> |
| | | <view class="title">{{$t("Gy.HCusName")}}:</view> |
| | | <!-- <view class="right" v-show="showHSupName"> |
| | | <uni-combox :candidates="arrayHSupName" placeholder="请选择客户" v-model="hform.HSupName" |
| | | @input="HSupNameChange"></uni-combox> |
| | |
| | | </view> |
| | | </view> |
| | | <view class="form-item"> |
| | | <view class="title">组织:</view> |
| | | <view class="title">{{$t("Gy.HStockOrgName")}}:</view> |
| | | <view class="righton"> |
| | | <input name="HStockOrgName" disabled v-model="hform.HStockOrgName" /> |
| | | </view> |
| | |
| | | <view class="list" v-for="(item,index) in Materlist" :key="index"> |
| | | <uni-card :title="item.物料名称" :extra="item.物料代码" style="margin: 10px;" @tap="delMater(item)"> |
| | | <view class="card-detail"> |
| | | <view class="detail"> |
| | | <text>源单单号:</text>{{item.源单单号}} |
| | | </view> |
| | | <view class="detail"> |
| | | <text>源单数量:</text>{{item.源单数量}} |
| | | </view> |
| | | <view class="detail"> |
| | | <text>数量:</text>{{item.数量}} |
| | | </view> |
| | | <view class="detail"> |
| | | <text>条码个数:</text>{{item.条码个数}} |
| | | </view> |
| | | <view class="detail" v-if="item.规格型号"> |
| | | <text>规格型号:</text>{{item.规格型号}} |
| | | </view> |
| | | <view class="detail" v-if="item.辅助属性"> |
| | | <text>辅助属性:</text>{{item.辅助属性}} |
| | | </view> |
| | | |
| | | <template v-for="(HBillField, index) in HFieldList"> |
| | | <view class="detail" v-if="HBillField.ColmType == 'DateTime'"> |
| | | <text>{{ $t(`${HModName}.${HBillField.ColmCols}`) }}:</text>{{ item[HBillField.ColmCols] ? dayjs(item[HBillField.ColmCols]).format("YYYY-MM-DD HH:mm:ss") : "" }} |
| | | </view> |
| | | <view class="detail" v-else> |
| | | <text>{{ $t(`${HModName}.${HBillField.ColmCols}`) }}:</text>{{ item[HBillField.ColmCols] }} |
| | | </view> |
| | | </template> |
| | | <!-- 兴达客户 功能 --> |
| | | <view class="detail" v-if="materMeta[0].HWHName && /兴达/.test(hform.HStockOrgName |
| | | )"> |
| | |
| | | |
| | | <view v-if="tabs == 3"> |
| | | <view class="form-item"> |
| | | <view class="title">条码:</view> |
| | | <view class="title">{{$t("Gy.HBarCode_B")}}:</view> |
| | | <view class="righton"> |
| | | <input name="HBarCode_B" disabled v-model="hform.HBarCode_B" /> |
| | | </view> |
| | | </view> |
| | | <view class="form-item"> |
| | | <view class="title">物料:</view> |
| | | <view class="title">{{$t("Gy.HMaterName_B")}}:</view> |
| | | <view class="righton"> |
| | | <input disabled v-model="hform.HMaterName_B" /> |
| | | </view> |
| | | </view> |
| | | <view class="form-item"> |
| | | <view class="title">规格:</view> |
| | | <view class="title">{{$t("Gy.HMaterModel_B")}}:</view> |
| | | <view class="righton"> |
| | | <input disabled v-model="hform.HMaterModel_B" /> |
| | | </view> |
| | | </view> |
| | | <view class="form-item"> |
| | | <view class="title">批次:</view> |
| | | <view class="title">{{$t("Gy.HBatchNo_B")}}:</view> |
| | | <view class="righton"> |
| | | <input disabled v-model="hform.HBatchNo_B" /> |
| | | </view> |
| | | </view> |
| | | <view class="form-item"> |
| | | <view class="title">单位:</view> |
| | | <view class="title">{{$t("Gy.HUnitName_B")}}:</view> |
| | | <view class="righton"> |
| | | <input disabled v-model="hform.HUnitName_B" /> |
| | | </view> |
| | | </view> |
| | | <view class="form-item"> |
| | | <view class="title">数量:</view> |
| | | <view class="title">{{$t("Gy.HQty_B")}}:</view> |
| | | <view class="righton"> |
| | | <input disabled v-model="hform.HQty_B" /> |
| | | </view> |
| | | </view> |
| | | <view class="form-item"> |
| | | <view class="title">容量:</view> |
| | | <view class="title">{{$t("Gy.HTMQty_B")}}:</view> |
| | | <view class="righton"> |
| | | <input disabled v-model="hform.HTMQty_B" /> |
| | | </view> |
| | | </view> |
| | | <view class="form-item"> |
| | | <view class="title">仓库:</view> |
| | | <view class="title">{{$t("Gy.HWHName_B")}}:</view> |
| | | <view class="righton"> |
| | | <input disabled v-model="hform.HWHName_B" /> |
| | | </view> |
| | | </view> |
| | | <view class="form-item"> |
| | | <view class="title">仓位:</view> |
| | | <view class="title">{{$t("Gy.HSPName_B")}}:</view> |
| | | <view class="righton"> |
| | | <input disabled v-model="hform.HSPName_B" /> |
| | | </view> |
| | |
| | | </view> |
| | | |
| | | <view class="bottom-btn"> |
| | | <button class="btn-a" size="mini" @tap="submit">提交</button> |
| | | <button class="btn-a" size="mini" @tap="submit">{{$t("Gy.submit")}}</button> |
| | | <view style="flex: 1;"></view> |
| | | <button class="btn-a" size="mini" @tap="addNew">新增</button> |
| | | <button class="btn-c" size="mini" @tap="goBack">退出</button> |
| | | <button class="btn-a" size="mini" @tap="addNew">{{$t("Gy.addNew")}}</button> |
| | | <button class="btn-c" size="mini" @tap="goBack">{{$t("Gy.goBack")}}</button> |
| | | </view> |
| | | </view> |
| | | <BarCodePopupVue ref="barcodePopup"></BarCodePopupVue> |
| | |
| | | getUserStockRelation |
| | | } from '../../utils/userRelationManager'; |
| | | import BarCodePopupVue from "../../components/BarCodePopup/BarCodePopup.vue"; |
| | | import { CommonUtils } from '../../utils/common'; |
| | | import { |
| | | CommonUtils |
| | | } from '../../utils/common'; |
| | | export default { |
| | | components: { |
| | | BarCodePopupVue |
| | |
| | | }, |
| | | data() { |
| | | return { |
| | | CommonUtils, |
| | | userInfo: getUserInfo(), |
| | | serverUrl: uni.getStorageSync('serverUrl') || 'http://47.96.97.237/API', |
| | | HModName: 'Kf_SellOutBackBill_PDA', |
| | |
| | | tabs: 0, |
| | | HMainSourceBillType: '退货通知单', |
| | | arrayHMainSourceBillType: ['退货通知单', '销售订单', '手工录入'], |
| | | arrayHMainSourceBillValue: [1403, 1401, -1], |
| | | |
| | | linterid: '', |
| | | HBillNo: '', |
| | |
| | | |
| | | Materlist: [], |
| | | materMeta: [], |
| | | HFieldList: [], // 字段列表 |
| | | hform: { |
| | | HBillType: 1247, |
| | | HBillerID: uni.getStorageSync('HBillerID'), |
| | |
| | | this.getHDeptList() |
| | | |
| | | this.getRelationStore() |
| | | this.GetSourceBillType() |
| | | }, |
| | | methods: { |
| | | async HWHNameScan(e) { |
| | |
| | | // 扫描仓位码 |
| | | console.log('仓位码: ', e); |
| | | let index = this.HStockPlaceNameList.findIndex(elem => elem['条码编号'] == e.trim()) |
| | | // 不先置空的话,数据再次扫描相同的仓位码 不会触发组件内的刷新 |
| | | // 不先置空的话,数据再次扫描相同的仓位码 不会触发组件内的刷新 |
| | | this.hform.HStockPlaceID = 0 |
| | | this.hform.HStockPlaceName = '' |
| | | await this.$nextTick() |
| | |
| | | title: err |
| | | }) |
| | | } |
| | | }, |
| | | async GetSourceBillType() { |
| | | CommonUtils.doRequest2({ |
| | | url: '/Web/GetHSourceBillTypeByBillType', |
| | | data: { |
| | | HBillType: this.hform.HBillType, |
| | | Num: 2 |
| | | }, |
| | | resFunction: (res) => { |
| | | let { |
| | | data, |
| | | count, |
| | | Message |
| | | } = res.data |
| | | if (count == 1) { |
| | | // console.log('data: ', data); |
| | | if (data.length == 0) { |
| | | // 数据库中没有配置,默认使用本地 |
| | | for (let i = 0; i < this.HMainSourceBillType; i++) { |
| | | let transed = this.$t(`${this.HModName}.HSourceBillType${i}`).split( |
| | | "@") |
| | | this.arrayHMainSourceBillType.push(transed[0]) |
| | | this.arrayHMainSourceBillValue.push(transed[1]) |
| | | } |
| | | return |
| | | } |
| | | this.arrayHMainSourceBillType = [] |
| | | this.arrayHMainSourceBillValue = [] |
| | | let i |
| | | for (i = 0; i < data.length; i++) { |
| | | let tranItem = this.$t(`${this.HModName}.HSourceBillType${i}`).split( |
| | | "@") |
| | | this.arrayHMainSourceBillType.push(tranItem[0]) |
| | | this.arrayHMainSourceBillValue.push(tranItem[1]) |
| | | } |
| | | |
| | | let trans = (this.$t(`${this.HModName}.HSourceBillType${i}`)).split("@") |
| | | this.arrayHMainSourceBillType.push(trans[0]) |
| | | this.arrayHMainSourceBillValue.push(trans[1]) |
| | | |
| | | this.HMainSourceBillType = this.arrayHMainSourceBillType[0] |
| | | this.hform.HMainSourceBillType = this.arrayHMainSourceBillValue[0] |
| | | } else { |
| | | // 数据库中没有配置,则使用本地的配置 |
| | | for (let i = 0; i < this.HMainSourceBillType; i++) { |
| | | let transed = this.$t(`${this.HModName}.HSourceBillType${i}`).split("@") |
| | | this.arrayHMainSourceBillType.push(transed[0]) |
| | | this.arrayHMainSourceBillValue.push(transed[1]) |
| | | } |
| | | } |
| | | } |
| | | }) |
| | | }, |
| | | async getRelationStore() { |
| | | let { |
| | |
| | | for (var i = 0; i < res.data.data.length; i++) { |
| | | this.arrayHWHName[i] = res.data.data[i].仓库名称 |
| | | } |
| | | |
| | | |
| | | this.HWHNameChange(getUserInfo()["HWhName"]) |
| | | } else { |
| | | uni.showToast({ |
| | |
| | | }, |
| | | //选择源单类型 |
| | | HMainSourceBillTypeChange(e) { |
| | | this.HMainSourceBillType = this.arrayHMainSourceBillType[e.detail.value] |
| | | if (this.HMainSourceBillType == '退货通知单') { |
| | | this.hform.HMainSourceBillType = 1403 |
| | | this.getHYDList() |
| | | } else if (this.HMainSourceBillType == '销售订单') { |
| | | this.hform.HMainSourceBillType = 1401 |
| | | this.getHYDList() |
| | | } else { |
| | | this.hform.HMainSourceBillType = -1 |
| | | let index = e.detail.value |
| | | if (index != -1) { |
| | | this.HMainSourceBillType = this.arrayHMainSourceBillType[index] |
| | | this.hform.HMainSourceBillType = this.arrayHMainSourceBillValue[index] |
| | | // this.showHMainSourceBillType = false |
| | | this.getHYDList() |
| | | } |
| | | }, |
| | |
| | | this.hform.HSourceBillNo = data.hSourceBillNoField |
| | | //获取源单类型、源单单号 |
| | | this.hform.HMainSourceBillType = data.hSourceBillTypeField |
| | | if (data.hSourceBillTypeField == "1403") { |
| | | this.HMainSourceBillType = '退货通知单' |
| | | this.hform.HMainSourceBillType = 1403 |
| | | this.showHMainSourceBillType = false |
| | | } else if (data.hSourceBillTypeField == "1401") { |
| | | this.HMainSourceBillType = '销售订单' |
| | | this.hform.HMainSourceBillType = 1401 |
| | | this.showHMainSourceBillType = false |
| | | } else { |
| | | this.HMainSourceBillType = '手工录入' |
| | | this.hform.HMainSourceBillType = -1 |
| | | let index = this.arrayHMainSourceBillValue.findIndex(e => e == data |
| | | .hSourceBillTypeField) |
| | | if (index != -1) { |
| | | this.HMainSourceBillType = this.arrayHMainSourceBillType[index] |
| | | this.hform.HMainSourceBillType = data.hSourceBillTypeField |
| | | this.showHMainSourceBillType = false |
| | | } |
| | | if (data.hMulSourceFlagField == 0) { |
| | |
| | | this.hform.HMainSourceBillType = data.hSourceBillTypeField |
| | | this.showHMainSourceBillType = false |
| | | } |
| | | // if (data.hSourceBillTypeField == "1103") { |
| | | // this.HMainSourceBillType = '收料通知单' |
| | | // this.hform.HMainSourceBillType = 1103 |
| | | // this.showHMainSourceBillType = false |
| | | // } else if (data.hSourceBillTypeField == "1102") { |
| | | // this.HMainSourceBillType = '采购订单' |
| | | // this.hform.HMainSourceBillType = 1102 |
| | | // this.showHMainSourceBillType = false |
| | | // } else { |
| | | // this.HMainSourceBillType = '手工录入' |
| | | // this.hform.HMainSourceBillType = -1 |
| | | // this.showHMainSourceBillType = false |
| | | // } |
| | | |
| | | if (data.hMulSourceFlagField == 0) { |
| | | this.showHSourceBillNo = false |
| | | } |
| | |
| | | }, |
| | | success: (res) => { |
| | | console.log('物料', res.data) |
| | | |
| | | if (res.data.count == 1) { |
| | | let list = res.data.list |
| | | var data = res.data.data |
| | | this.materMeta = data.BarCodeDetailslist |
| | | this.Materlist = data.Materlist |
| | | this.HFieldList = CommonUtils.fieldListFilterRole({ |
| | | FieldList: list, |
| | | ExcludeKeys: ["物料名称", "物料代码"], |
| | | }).data |
| | | |
| | | console.log('字段列表: ',CommonUtils.fieldListFilterRole({ |
| | | FieldList: list, |
| | | ExcludeKeys: ["物料名称", "物料代码"], |
| | | }).data); |
| | | |
| | | if (/兴达/.test(uni.getStorageSync("Organization"))) { |
| | | // 兴达客户 带出 仓库 |
| | | console.log("兴达带出默认仓库") |
| | |
| | | icon: 'none' |
| | | }) |
| | | } |
| | | |
| | | |
| | | // uni.request({ |
| | | // url: this.serverUrl + '/WEBSController/set_SaveSellOutBackBill_Json', |
| | | // method: 'POST', |