| | |
| | | :printLabelInfo="printLabelInfo" |
| | | /> |
| | | </basic-container> |
| | | <el-dialog title="选择同步日期" :visible.sync="syncDateVisible" width="21%"> |
| | | <div style="display: flex;justify-content: center"> |
| | | <el-form |
| | | :model="dataForm" |
| | | :inline="true" |
| | | :rules="dataRule" |
| | | ref="dataForm" |
| | | class="l-mes" |
| | | > |
| | | <el-form-item label="日期" prop="selectTime"> |
| | | <el-date-picker |
| | | v-model="dataForm.selectTime" |
| | | type="datetime" |
| | | placeholder="选择日期时间" |
| | | value-format="yyyy-MM-dd HH:mm:ss" |
| | | > |
| | | </el-date-picker> |
| | | </el-form-item> |
| | | </el-form> |
| | | </div> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-button @click="syncDateVisible = false">取 消</el-button> |
| | | <el-button type="primary" @click="syncIfs">确 定</el-button> |
| | | </span> |
| | | </el-dialog> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import { fetchList, delObj, syncIfs, syncPart } from '@/api/basic/part' |
| | | import { fetchList, delObj, syncPart } from '@/api/basic/part' |
| | | import TableForm from './part-form' |
| | | import { mapGetters } from 'vuex' |
| | | import ttable from '@/views/common/ztt-table.vue' |
| | |
| | | export default { |
| | | data() { |
| | | return { |
| | | dataRule: { |
| | | selectTime: [ |
| | | { required: true, message: '同步日期不能为空', trigger: 'change' } |
| | | ] |
| | | }, |
| | | dataForm: { |
| | | selectTime: null |
| | | }, |
| | | syncDateVisible: false, |
| | | ajaxFun: fetchList, |
| | | addOrUpdateVisible: false, |
| | | multipleSelection: [], |
| | |
| | | multiSelect: true, // |
| | | seqNo: true, |
| | | isShowHide: true, // 是否显示显影按钮 |
| | | isSearch: false, // 高级查询按钮 |
| | | isSearch: false, // 高级查询按钮, |
| | | isRefresh: true, // 是否显示刷新按钮 |
| | | defaultOrderBy: { column: 'id', direction: 'desc' } |
| | | }, |
| | | table: { |
| | |
| | | { |
| | | minWidth: '120', |
| | | prop: 'sunit', |
| | | label: '单位2', |
| | | label: '重量单位', |
| | | sort: true, |
| | | isTrue: true, |
| | | isSearch: true, |
| | |
| | | searchInfoType: 'text' |
| | | }, |
| | | // 一级分类 |
| | | { |
| | | { |
| | | minWidth: '120', |
| | | prop: 'assortment', |
| | | label: '一级分类', |
| | |
| | | optList: () => { |
| | | return this.getThreeLevelClassification() |
| | | } |
| | | }, |
| | | }, |
| | | // 规格 |
| | | { |
| | | minWidth: '140', |
| | |
| | | searchInfoType: 'text' |
| | | }, |
| | | // 型号 |
| | | { |
| | | /* { |
| | | minWidth: '140', |
| | | prop: 'partModel', |
| | | label: '型号', |
| | |
| | | optList: () => { |
| | | return this.lotTrackingIfsOptions |
| | | } |
| | | }, |
| | | }, */ |
| | | // 版本号 |
| | | { |
| | | minWidth: '140', |
| | |
| | | isTrue: true, |
| | | isSearch: true, |
| | | searchInfoType: 'text' |
| | | }, |
| | | }/* , |
| | | // 计划方法 |
| | | { |
| | | minWidth: '140', |
| | |
| | | optList: () => { |
| | | return this.planningMethodOptions |
| | | } |
| | | }, |
| | | }, */ |
| | | // 图号 |
| | | { |
| | | /* { |
| | | minWidth: '140', |
| | | prop: 'drawingNumber', |
| | | label: '图号', |
| | |
| | | isTrue: true, |
| | | isSearch: true, |
| | | searchInfoType: 'text' |
| | | }, |
| | | }, */ |
| | | // 检验员 |
| | | { |
| | | /* { |
| | | minWidth: '140', |
| | | prop: 'examiner', |
| | | label: '检验员', |
| | |
| | | isTrue: true, |
| | | isSearch: true, |
| | | searchInfoType: 'text' |
| | | } |
| | | } */ |
| | | ], |
| | | toolbar: [ |
| | | { |
| | |
| | | fun: this.addOrUpdateHandle |
| | | }, |
| | | { |
| | | text: '同步ERP', |
| | | text: '同步MDM', |
| | | type: 'primary', |
| | | fun: this.syncIfs, |
| | | fun: () => (this.syncDateVisible = true), |
| | | loading: false |
| | | }, |
| | | } |
| | | // { |
| | | // text: '大标签', |
| | | // type: 'primary', |
| | |
| | | created() { |
| | | this.table.column.find((e) => e.label === 'IFS启用批次管理').isTrue = false |
| | | this.table.column.find((e) => e.label === '计划方法').isTrue = false |
| | | this.getUnitType('unit') |
| | | this.getMaterialType('material_type') |
| | | this.getCategoryType('category') |
| | | this.getAssortmentType('assortment') |
| | | this.getPlanningMethodType('planning_method_type') |
| | | this.getThreeLevelClassificationType('three_classification_type') |
| | | this.getMaterialAttributeType() |
| | | this.getExaminerDict('examiner_type') |
| | | }, |
| | | mounted(){ |
| | | this.getUnitType('unit') |
| | | this.getMaterialType('material_type') |
| | | this.getMaterialAttributeType() |
| | | }, |
| | | computed: { |
| | | ...mapGetters(['permissions']) |
| | |
| | | // } |
| | | // }, |
| | | syncIfs() { |
| | | syncPart({}) |
| | | .then((res) => { |
| | | const data = res.data |
| | | if (data.code === 0) { |
| | | this.$message.success('开始同步') |
| | | } else { |
| | | this.$message.error('同步ERP失败') |
| | | } |
| | | }) |
| | | .catch((e) => { |
| | | // this.$message.error('同步ERP失败:' + e) |
| | | }) |
| | | this.$refs.dataForm.validate((valid) => { |
| | | if (valid) { |
| | | this.syncDateVisible = false |
| | | this.table.toolbar.find((e) => e.text === '同步MDM').loading = true |
| | | syncPart({ updateTime: this.dataForm.selectTime }) |
| | | .then((res) => { |
| | | const data = res.data |
| | | if (data.code === 0) { |
| | | this.$message.success(data.msg) |
| | | } else { |
| | | this.$message.error('同步MDM失败') |
| | | } |
| | | this.getData() |
| | | this.table.toolbar.find( |
| | | (e) => e.text === '同步MDM' |
| | | ).loading = false |
| | | }) |
| | | .catch((e) => { |
| | | this.$message.error('同步MDM失败:' + e) |
| | | }) |
| | | } |
| | | }) |
| | | }, |
| | | printLabel() { |
| | | if (this.multipleSelection && this.multipleSelection.length > 0) { |
| | |
| | | this.$message.error('请选择零件') |
| | | } |
| | | } |
| | | }, |
| | | watch: { |
| | | syncDateVisible(newVal) { |
| | | if (!newVal) { |
| | | this.$refs.dataForm.resetFields() |
| | | } |
| | | } |
| | | } |
| | | } |
| | | </script> |