| | |
| | | { field: 'specs', label: 'container.matSpec' }, |
| | | { field: 'batch', label: 'container.matBatch' }, |
| | | { field: 'anfme', label: 'container.matQty' } |
| | | ], |
| | | containerBindingEditFields: [ |
| | | { |
| | | field: 'batch', |
| | | label: 'container.matBatch', |
| | | type: 'text' |
| | | }, |
| | | { |
| | | field: 'anfme', |
| | | label: 'container.matQty', |
| | | type: 'number' |
| | | } |
| | | ] |
| | | } |
| | | uni.setStorageSync('appSettings', appSettings) |
| | |
| | | "fieldName": "字段名", |
| | | "fieldLabel": "显示名称(i18n key)", |
| | | "restoreDefault": "恢复默认", |
| | | "fieldRequired": "字段名和显示名称不能为空" |
| | | "fieldRequired": "字段名和显示名称不能为空", |
| | | "containerBindingEditFields": "组托修改弹窗可编辑字段", |
| | | "fieldType": "类型(text/number)" |
| | | }, |
| | | "common": { |
| | | "confirm": "确认", |
| | |
| | | <u-form-item :label="$t('container.code')"> |
| | | <text class="popup-text-val">{{ editMatnr }}</text> |
| | | </u-form-item> |
| | | <u-form-item :label="$t('container.matBatch')"> |
| | | <u--input |
| | | v-model="batch" |
| | | :placeholder="$t('matSelected.inputBatch')" |
| | | border="surround" |
| | | ></u--input> |
| | | </u-form-item> |
| | | <u-form-item :label="$t('container.matQty')"> |
| | | <u-form-item |
| | | v-for="(ef, efIdx) in editFields" |
| | | :key="efIdx" |
| | | :label="$t(ef.label)" |
| | | > |
| | | <u-number-box |
| | | v-model="count" |
| | | v-if="ef.type === 'number'" |
| | | v-model="editFormData[ef.field]" |
| | | :step="0.01" |
| | | :max="9999999" |
| | | @change="changeValue" |
| | | ></u-number-box> |
| | | <u--input |
| | | v-else |
| | | v-model="editFormData[ef.field]" |
| | | :placeholder="$t('settings.inputPlaceholder')" |
| | | border="surround" |
| | | ></u--input> |
| | | </u-form-item> |
| | | </u--form> |
| | | </view> |
| | |
| | | { field: 'specs', label: 'container.matSpec' }, |
| | | { field: 'batch', label: 'container.matBatch' }, |
| | | { field: 'anfme', label: 'container.matQty' } |
| | | ] |
| | | ], |
| | | editFields: [ |
| | | { field: 'batch', label: 'container.matBatch', type: 'text' }, |
| | | { field: 'anfme', label: 'container.matQty', type: 'number' } |
| | | ], |
| | | editFormData: {} |
| | | } |
| | | }, |
| | | onShow() { |
| | |
| | | this.orderCombStartPos = settings.orderCombStartPos !== undefined ? Number(settings.orderCombStartPos) : 3 |
| | | if (settings.containerBindingFields && settings.containerBindingFields.length > 0) { |
| | | this.displayFields = settings.containerBindingFields |
| | | } |
| | | if (settings.containerBindingEditFields && settings.containerBindingEditFields.length > 0) { |
| | | this.editFields = settings.containerBindingEditFields |
| | | } |
| | | } else { |
| | | this.orderCombNeedSplit = true |
| | |
| | | }, |
| | | revise(item, i) { |
| | | this.editMatnr = this.dataList[i].matnr |
| | | this.count = this.dataList[i].anfme |
| | | this.batch = this.dataList[i].batch |
| | | this.weight = this.dataList[i].weight |
| | | this.rowNum = i |
| | | var formData = {} |
| | | this.editFields.forEach(ef => { |
| | | formData[ef.field] = this.dataList[i][ef.field] !== undefined ? String(this.dataList[i][ef.field]) : '' |
| | | }) |
| | | this.editFormData = formData |
| | | this.showRevise = true |
| | | }, |
| | | changeValue(e) { |
| | | this.count = e.value |
| | | }, |
| | | reviseConfirm() { |
| | | this.dataList[this.rowNum].anfme = this.count |
| | | this.dataList[this.rowNum].batch = this.batch |
| | | this.dataList[this.rowNum].weight = this.weight |
| | | this.editFields.forEach(ef => { |
| | | this.dataList[this.rowNum][ef.field] = this.editFormData[ef.field] |
| | | }) |
| | | this.editMatnr = '' |
| | | this.$showToast({ type: 'success', message: this.$t('toast.modifySuccess') }) |
| | | this.showRevise = false |
| | |
| | | > |
| | | <view class="field-info"> |
| | | <text class="field-name">{{ field.field }}</text> |
| | | <text class="field-label">{{ $t(field.label) }}</text> |
| | | <text class="field-label">{{ $t(field.label) }}<text v-if="editingFieldsKey.indexOf('Edit') > -1"> ({{ field.type || 'text' }})</text></text> |
| | | </view> |
| | | <u-icon |
| | | name="minus-circle-fill" |
| | |
| | | customStyle="flex: 1;" |
| | | ></u--input> |
| | | </view> |
| | | <view class="add-field-row" v-if="editingFieldsKey.indexOf('Edit') > -1" style="margin-top: 16rpx; padding: 16rpx 20rpx; background-color: #f5f7fa; border-radius: 8rpx;"> |
| | | <text style="font-size: 26rpx; color: #606266; margin-right: 16rpx;">{{ $t('settings.fieldType') }}</text> |
| | | <u-radio-group v-model="newFieldType" placement="row"> |
| | | <u-radio label="text" name="text" customStyle="margin-right: 30rpx;"></u-radio> |
| | | <u-radio label="number" name="number"></u-radio> |
| | | </u-radio-group> |
| | | </view> |
| | | <u-button |
| | | type="primary" |
| | | size="small" |
| | | :text="$t('settings.addField')" |
| | | @click="addField" |
| | | customStyle="margin-top: 16rpx;" |
| | | customStyle="margin-top: 30rpx;" |
| | | ></u-button> |
| | | </view> |
| | | |
| | |
| | | { field: 'specs', label: 'container.matSpec' }, |
| | | { field: 'batch', label: 'container.matBatch' }, |
| | | { field: 'anfme', label: 'container.matQty' } |
| | | ], |
| | | containerBindingEditFields: [ |
| | | { field: 'batch', label: 'container.matBatch', type: 'text' }, |
| | | { field: 'anfme', label: 'container.matQty', type: 'number' } |
| | | ] |
| | | }, |
| | | showFieldsPopup: false, |
| | |
| | | editingFields: [], |
| | | newFieldName: '', |
| | | newFieldLabel: '', |
| | | defaultContainerBindingFields: [ |
| | | { field: 'maktx', label: 'container.matName' }, |
| | | { field: 'specs', label: 'container.matSpec' }, |
| | | { field: 'batch', label: 'container.matBatch' }, |
| | | { field: 'anfme', label: 'container.matQty' } |
| | | ] |
| | | newFieldType: 'text', |
| | | defaultFieldsMap: { |
| | | containerBindingFields: [ |
| | | { field: 'maktx', label: 'container.matName' }, |
| | | { field: 'specs', label: 'container.matSpec' }, |
| | | { field: 'batch', label: 'container.matBatch' }, |
| | | { field: 'anfme', label: 'container.matQty' } |
| | | ], |
| | | containerBindingEditFields: [ |
| | | { field: 'batch', label: 'container.matBatch', type: 'text' }, |
| | | { field: 'anfme', label: 'container.matQty', type: 'number' } |
| | | ] |
| | | } |
| | | } |
| | | }, |
| | | computed: { |
| | |
| | | iconName: 'grid-fill', |
| | | iconBgColor: 'bg-green', |
| | | type: 'displayFields' |
| | | }, |
| | | { |
| | | key: 'containerBindingEditFields', |
| | | title: this.$t('settings.containerBindingEditFields'), |
| | | iconName: 'edit-pen-fill', |
| | | iconBgColor: 'bg-yellow', |
| | | type: 'displayFields' |
| | | } |
| | | ] |
| | | } |
| | |
| | | this.editingFields = JSON.parse(JSON.stringify(this.appSettings[key] || [])) |
| | | this.newFieldName = '' |
| | | this.newFieldLabel = '' |
| | | this.newFieldType = 'text' |
| | | this.showFieldsPopup = true |
| | | }, |
| | | removeField(idx) { |
| | |
| | | } |
| | | this.editingFields.push({ |
| | | field: this.newFieldName, |
| | | label: this.newFieldLabel |
| | | label: this.newFieldLabel, |
| | | type: this.newFieldType || 'text' |
| | | }) |
| | | this.newFieldName = '' |
| | | this.newFieldLabel = '' |
| | | this.newFieldType = 'text' |
| | | }, |
| | | restoreDefaultFields() { |
| | | this.editingFields = JSON.parse(JSON.stringify(this.defaultContainerBindingFields)) |
| | | var defaults = this.defaultFieldsMap[this.editingFieldsKey] |
| | | if (defaults) { |
| | | this.editingFields = JSON.parse(JSON.stringify(defaults)) |
| | | } |
| | | }, |
| | | saveFields() { |
| | | this.appSettings[this.editingFieldsKey] = JSON.parse(JSON.stringify(this.editingFields)) |