| New file |
| | |
| | | <template> |
| | | <view> |
| | | <uni-popup ref="popup" type="bottom" @change="popupChangeHandler"> |
| | | <view class="form"> |
| | | <!-- 合格数量 --> |
| | | <view class="form-item"> |
| | | <view class="title">合格数量:</view> |
| | | <view class="right"> |
| | | <input v-model="hform.HQty" placeholder="请输入合格数量" /> |
| | | </view> |
| | | </view> |
| | | <!-- 不良数量 --> |
| | | <view class="form-item"> |
| | | <view class="title">不良数量:</view> |
| | | <view class="right"> |
| | | <input v-model="hform.HBadCount" placeholder="请输入不良数量" /> |
| | | </view> |
| | | </view> |
| | | <!-- 报废数量 --> |
| | | <view class="form-item"> |
| | | <view class="title">报废数量:</view> |
| | | <view class="right"> |
| | | <input v-model="hform.HWasterQty" placeholder="请输入报废数量" /> |
| | | </view> |
| | | </view> |
| | | <!-- 生产资源 --> |
| | | <view class="form-item"> |
| | | <view class="title">生产资源:</view> |
| | | <view class="right"> |
| | | <uni-combox :candidates="arrayHSourceName" placeholder="请选择生产资源" v-model="hform.HSourceName" |
| | | @input="HSourceNameChange"></uni-combox> |
| | | </view> |
| | | </view> |
| | | <!-- 工作中心 --> |
| | | <view class="form-item"> |
| | | <view class="title">工作中心:</view> |
| | | <view class="right"> |
| | | <uni-combox :candidates="arrayHCenterName" placeholder="请选择工作中心" v-model="hform.HCenterName" |
| | | @input="HCenterNameChange"></uni-combox> |
| | | </view> |
| | | </view> |
| | | <!-- 生产班组 --> |
| | | <view class="form-item"> |
| | | <view class="title">生产班组:</view> |
| | | <view class="right"> |
| | | <uni-combox :candidates="arrayHGroupName" placeholder="请选择生产班组" v-model="hform.HGroupName" |
| | | @input="HGroupNameChange"></uni-combox> |
| | | </view> |
| | | </view> |
| | | <!-- 操作员 --> |
| | | <view class="form-item"> |
| | | <view class="title"><text>*</text>操作员:</view> |
| | | <view class="right"> |
| | | <uni-combox :candidates="arrayHEmpName" placeholder="请选择操作员" v-model="hform.HEmpName" |
| | | @input="HEmpNameChange"></uni-combox> |
| | | </view> |
| | | </view> |
| | | |
| | | <!-- 底部提交按钮 --> |
| | | <view class="bottom-btn"> |
| | | <button class="btn-a" size="mini" @tap="submit">提交</button> |
| | | </view> |
| | | </view> |
| | | </uni-popup> |
| | | </view> |
| | | </template> |
| | | |
| | | <script> |
| | | import getDateTime from '@/utils/getdateTime.js'; |
| | | import { |
| | | getUserInfo |
| | | } from "@/utils/auth.js"; |
| | | import { |
| | | CommonUtils |
| | | } from '../../utils/common'; |
| | | |
| | | export default { |
| | | name: "BillListPopup_gongxuOut", |
| | | data() { |
| | | return { |
| | | userInfo: getUserInfo(), |
| | | serverUrl: uni.getStorageSync('serverUrl') || 'http://47.96.97.237/API', |
| | | // 下拉框候选数组 |
| | | arrayHSourceName: [], |
| | | HSourceNameList: [], |
| | | arrayHGroupName: [], |
| | | HGroupNameList: [], |
| | | arrayHEmpName: [], |
| | | HEmpNameList: [], |
| | | arrayHCenterName: [], |
| | | HCenterNameList: [], |
| | | |
| | | hform: { |
| | | HInterID: '', // 内部使用,不展示 |
| | | HBillNo: '', // 内部使用,不展示 |
| | | HQty: '', |
| | | HBadCount: 0, |
| | | HWasterQty: 0, |
| | | HSourceName: '', |
| | | HSourceID: 0, |
| | | HCenterName: '', |
| | | HCenterID: 0, |
| | | HGroupName: '', |
| | | HGroupID: 0, |
| | | HEmpName: '', |
| | | HEmpID: 0, |
| | | } |
| | | } |
| | | }, |
| | | |
| | | mounted() { |
| | | this.getNewData(); // 获取新单号 |
| | | this.getHSourceList(); // 生产资源 |
| | | this.getHGroupList(); // 生产班组 |
| | | this.getHEmpList(); // 操作员 |
| | | this.getHCenterList(); // 工作中心 |
| | | this.getDefValByUser(); // 用户默认值 |
| | | }, |
| | | |
| | | methods: { |
| | | // 弹窗开关处理 |
| | | popupChangeHandler(e) { |
| | | if (e.show === false) { |
| | | // 关闭时重置数量 |
| | | this.hform.HQty = ''; |
| | | this.hform.HBadCount = 0; |
| | | this.hform.HWasterQty = 0; |
| | | this.getNewData(); |
| | | } |
| | | }, |
| | | |
| | | // 打开弹窗 |
| | | showPopup(item) { |
| | | this.hform.HInterID=item.HInterID |
| | | this.hform.HQty=item.接收合格数量 |
| | | this.hform.HWasterQty=item.报废数量 |
| | | this.hform.HBadCount=item.不良数量 |
| | | this.hform.HSourceID=item.HSourceID |
| | | |
| | | this.hform.HSourceID=item.HSourceID |
| | | this.hform.HSourceName=item.生产资源 |
| | | this.hform.HCenterID=item.HCenterID |
| | | this.hform.HCenterName=item.工作中心 |
| | | this.hform.HGroupID=item.HGroupID |
| | | this.hform.HGroupName=item.班组 |
| | | this.hform.HEmpID=item.HEmpID |
| | | this.hform.HEmpName=item.操作员 |
| | | this.$refs.popup.open(); |
| | | }, |
| | | |
| | | // 通过登录用户获取默认值 |
| | | getDefValByUser() { |
| | | uni.request({ |
| | | url: this.serverUrl + '/Cj_StationInBill/GetDefValByUser', |
| | | method: "GET", |
| | | async: false, |
| | | data: { |
| | | "Czybm": this.userInfo.Czybm, |
| | | "Czymc": this.userInfo.Czymc |
| | | }, |
| | | success: (res) => { |
| | | if (res.data.count == 1) { |
| | | var data = res.data.data[0]; |
| | | this.hform.HGroupID = data.HGroupID; |
| | | this.hform.HGroupName = data.生产班组名称; |
| | | this.hform.HEmpID = data.HEmpID; |
| | | this.hform.HEmpName = data.操作员名称; |
| | | this.hform.HSourceID = data.HSourceID; |
| | | this.hform.HSourceName = data.生产资源名称; |
| | | this.hform.HCenterID = data.HWorkCenterID; |
| | | this.hform.HCenterName = data.工作中心名称; |
| | | } else { |
| | | uni.showToast({ |
| | | title: '获取默认值失败', |
| | | icon: 'none' |
| | | }); |
| | | } |
| | | }, |
| | | fail: () => { |
| | | uni.showToast({ |
| | | title: '接口请求失败', |
| | | icon: 'none' |
| | | }); |
| | | }, |
| | | }); |
| | | }, |
| | | |
| | | // 生产资源列表 |
| | | getHSourceList() { |
| | | uni.request({ |
| | | url: this.serverUrl + '/api/newBill/getSourceList', |
| | | data: { sWhere: '' }, |
| | | success: (res) => { |
| | | if (res.data.code == 1) { |
| | | this.HSourceNameList = res.data.data.Gy_Source; |
| | | this.arrayHSourceName = this.HSourceNameList.map(item => item.生产资源); |
| | | this.$forceUpdate(); |
| | | } else { |
| | | uni.showToast({ title: res.data.Message, icon: 'none' }); |
| | | } |
| | | }, |
| | | fail: () => { |
| | | uni.showToast({ title: '接口请求失败', icon: 'none' }); |
| | | }, |
| | | }); |
| | | }, |
| | | HSourceNameChange(e) { |
| | | const found = this.HSourceNameList.find(item => item.生产资源 == e); |
| | | if (found) this.hform.HSourceID = found.HItemID; |
| | | }, |
| | | |
| | | // 生产班组列表 |
| | | getHGroupList() { |
| | | uni.request({ |
| | | url: this.serverUrl + '/Web/GetProductionTeamList_Json', |
| | | data: { sWhere: "and HUSEORGID = " + uni.getStorageSync('OrganizationID') }, |
| | | success: (res) => { |
| | | if (res.data.count == 1) { |
| | | this.HGroupNameList = res.data.data; |
| | | this.arrayHGroupName = this.HGroupNameList.map(item => item.班组); |
| | | this.$forceUpdate(); |
| | | } else { |
| | | uni.showToast({ title: res.data.Message, icon: 'none' }); |
| | | } |
| | | }, |
| | | fail: () => { |
| | | uni.showToast({ title: '接口请求失败', icon: 'none' }); |
| | | }, |
| | | }); |
| | | }, |
| | | HGroupNameChange(e) { |
| | | const found = this.HGroupNameList.find(item => item.班组 == e); |
| | | if (found) this.hform.HGroupID = found.HItemID; |
| | | }, |
| | | |
| | | // 操作员列表 |
| | | getHEmpList() { |
| | | uni.request({ |
| | | url: this.serverUrl + '/Web/GetEmployeeList_Json', |
| | | data: { |
| | | Employee: '', |
| | | HGroupID: 0, |
| | | HDeptID: uni.getStorageSync("HDeptID") |
| | | }, |
| | | success: (res) => { |
| | | if (res.data.count == 1) { |
| | | this.HEmpNameList = res.data.data; |
| | | this.arrayHEmpName = this.HEmpNameList.map(item => item.HName); |
| | | this.$forceUpdate(); |
| | | } else { |
| | | uni.showToast({ title: res.data.Message, icon: 'none' }); |
| | | } |
| | | }, |
| | | fail: () => { |
| | | uni.showToast({ title: '接口请求失败', icon: 'none' }); |
| | | }, |
| | | }); |
| | | }, |
| | | HEmpNameChange(e) { |
| | | const found = this.HEmpNameList.find(item => item.HName == e); |
| | | if (found) this.hform.HEmpID = found.HItemID; |
| | | }, |
| | | |
| | | // 工作中心列表 |
| | | getHCenterList() { |
| | | uni.request({ |
| | | url: this.serverUrl + '/api/newBill/getWorkCenterList', |
| | | data: { sWhere: '' }, |
| | | success: (res) => { |
| | | if (res.data.code == 1) { |
| | | this.HCenterNameList = res.data.data.Gy_Source; |
| | | this.arrayHCenterName = this.HCenterNameList.map(item => item.工作中心); |
| | | this.$forceUpdate(); |
| | | } else { |
| | | uni.showToast({ title: res.data.Message, icon: 'none' }); |
| | | } |
| | | }, |
| | | fail: () => { |
| | | uni.showToast({ title: '接口请求失败', icon: 'none' }); |
| | | }, |
| | | }); |
| | | }, |
| | | HCenterNameChange(e) { |
| | | const found = this.HCenterNameList.find(item => item.工作中心 == e); |
| | | if (found) this.hform.HCenterID = found.HItemID; |
| | | }, |
| | | |
| | | // 获取新单据号(内部使用) |
| | | getNewData() { |
| | | uni.request({ |
| | | url: this.serverUrl + '/Web/GetMAXNum', |
| | | data: { HBillType: '3791' }, |
| | | success: (res) => { |
| | | if (res.data.count == 1) { |
| | | this.hform.HInterID = res.data.data[0].HInterID; |
| | | this.hform.HBillNo = res.data.data[0].HBillNo; |
| | | } else { |
| | | uni.showToast({ title: res.data.Message, icon: 'none' }); |
| | | } |
| | | }, |
| | | fail: () => { |
| | | uni.showToast({ title: '接口请求失败', icon: 'none' }); |
| | | }, |
| | | }); |
| | | }, |
| | | |
| | | // 提交前校验 |
| | | preSubmitCheck() { |
| | | if (CommonUtils.isEmpty(this.hform.HQty)) { |
| | | return { pass: false, message: '合格数量不能为空' }; |
| | | } |
| | | if (CommonUtils.isEmpty(this.hform.HBadCount)) { |
| | | return { pass: false, message: '不良数量不能为空' }; |
| | | } |
| | | if (CommonUtils.isEmpty(this.hform.HWasterQty)) { |
| | | return { pass: false, message: '报废数量不能为空' }; |
| | | } |
| | | if (!this.hform.HEmpName) { |
| | | return { pass: false, message: '请选择操作员' }; |
| | | } |
| | | return { pass: true, message: '' }; |
| | | }, |
| | | |
| | | // 提交 |
| | | submit() { |
| | | const { pass, message } = this.preSubmitCheck(); |
| | | if (!pass) { |
| | | return uni.showToast({ icon: 'none', title: message }); |
| | | } |
| | | |
| | | uni.showLoading({ title: '提交中...' }); |
| | | |
| | | |
| | | const submitData = { |
| | | HInterID: this.hform.HInterID, |
| | | HBillNo: this.hform.HBillNo, |
| | | HQty: this.hform.HQty, |
| | | HBadCount: this.hform.HBadCount, |
| | | HWasterQty: this.hform.HWasterQty, |
| | | HSourceID: this.hform.HSourceID, |
| | | HSourceName: this.hform.HSourceName, |
| | | HCenterID: this.hform.HCenterID, |
| | | HCenterName: this.hform.HCenterName, |
| | | HGroupID: this.hform.HGroupID, |
| | | HGroupName: this.hform.HGroupName, |
| | | HEmpID: this.hform.HEmpID, |
| | | HEmpName: this.hform.HEmpName, |
| | | |
| | | }; |
| | | |
| | | uni.request({ |
| | | url: this.serverUrl + '/Cj_StationEntrustOutBill/setOtherProperty', |
| | | method: 'POST', |
| | | data: { |
| | | oMain: JSON.stringify(submitData)+ ";" + uni.getStorageSync('HUserName'), |
| | | |
| | | }, |
| | | success: (res) => { |
| | | uni.hideLoading(); |
| | | if (res.data.count == 1) { |
| | | uni.showToast({ title: '提交成功', icon: 'none' }); |
| | | setTimeout(() => { |
| | | this.$refs.popup.close(); |
| | | }, 1500); |
| | | } else { |
| | | uni.showToast({ title: res.data.Message, icon: 'none' }); |
| | | } |
| | | }, |
| | | fail: () => { |
| | | uni.hideLoading(); |
| | | uni.showToast({ title: '接口请求失败', icon: 'none' }); |
| | | }, |
| | | }); |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style lang="scss" scoped> |
| | | .form { |
| | | box-sizing: border-box; |
| | | border-radius: 15rpx 15rpx 0 0; |
| | | padding: 20rpx 20rpx 160rpx 20rpx; |
| | | background-color: #fff; |
| | | display: flex; |
| | | flex-direction: column; |
| | | gap: 10rpx; |
| | | overflow-y: auto; |
| | | // max-height: 70vh; |
| | | max-height: calc(80vh - 120px); |
| | | } |
| | | |
| | | .form-item { |
| | | display: flex; |
| | | align-items: center; |
| | | font-size: 30rpx; |
| | | padding: 6rpx 0; |
| | | |
| | | .title { |
| | | width: 180rpx; |
| | | flex-shrink: 0; |
| | | |
| | | text { |
| | | color: red; |
| | | font-weight: bold; |
| | | } |
| | | } |
| | | |
| | | .right { |
| | | flex: 1; |
| | | border-radius: 22rpx; |
| | | border: 1px solid #acacac; |
| | | } |
| | | |
| | | input, .uni-combox { |
| | | width: 100%; |
| | | padding: 8rpx 20rpx; |
| | | font-size: 30rpx; |
| | | } |
| | | } |
| | | |
| | | .bottom-btn { |
| | | width: 100%; |
| | | box-sizing: border-box; |
| | | position: fixed; |
| | | bottom: 0; |
| | | left: 0; |
| | | background-color: #fff; |
| | | box-shadow: 0 2rpx 10rpx 2rpx rgba(0, 0, 0, 0.4); |
| | | padding: 30rpx 40rpx 40rpx 40rpx; |
| | | display: flex; |
| | | justify-content: center; |
| | | |
| | | button { |
| | | border-radius: 50rpx; |
| | | width: 300rpx; |
| | | height: 66rpx; |
| | | line-height: 66rpx; |
| | | font-size: 28rpx; |
| | | background-color: #3A78FF; |
| | | color: #fff; |
| | | } |
| | | } |
| | | </style> |