1.看板部署2.存货绑定工艺路线弹出框显示默认选中的
| | |
| | | |
| | | NProgress.configure({ showSpinner: false }) // NProgress Configuration |
| | | |
| | | const whiteList = ['/login', '/zhkb', '/cj', '/ckgl'] // no redirect whitelist |
| | | const whiteList = ['/login', '/zhkb', '/zpcj', '/jghjcj', '/ckgl'] // no redirect whitelist |
| | | |
| | | router.beforeEach(async(to, from, next) => { |
| | | // start progress bar |
| | |
| | | component: () => import('@/views/kanbanManager/zhkb'), |
| | | hidden: true |
| | | }, { |
| | | path: '/cj', |
| | | component: () => import('@/views/kanbanManager/cj'), |
| | | path: '/zpcj', |
| | | component: () => import('@/views/kanbanManager/zpcj'), |
| | | hidden: true |
| | | }, { |
| | | path: '/jghjcj', |
| | | component: () => import('@/views/kanbanManager/jghjcj'), |
| | | hidden: true |
| | | }, { |
| | | path: '/ckgl', |
| | |
| | | // è·åecharts |
| | | getEcharts() { |
| | | ProcureOutsourcRightTop().then(res => { |
| | | loadEcharts('bar03', bar02(res.data.filter(i => i.qty > 0).map(i => i.qty), res.data.filter(i => i.qty > 0).map(i => i.materiel_name))) |
| | | loadEcharts('bar03', bar02(res.data.filter(i => i.qty > 0).map(i => i.qty), res.data.filter(i => i.qty > 0).map(i => i.materiel_name + i.specification))) |
| | | }) |
| | | |
| | | ProductionStockedInRightBottom().then(res => { |
| | | loadEcharts('bar04', bar02(res.data.filter(i => i.qty > 0).map(i => i.qty), res.data.filter(i => i.qty > 0).map(i => i.materiel_name))) |
| | | loadEcharts('bar04', bar02(res.data.filter(i => i.qty > 0).map(i => i.qty), res.data.filter(i => i.qty > 0).map(i => i.materiel_name + i.specification))) |
| | | }) |
| | | |
| | | this.echartsRightTop = setInterval(() => { |
| | | ProcureOutsourcRightTop().then(res => { |
| | | loadEcharts('bar03', bar02(res.data.filter(i => i.qty > 0).map(i => i.qty), res.data.filter(i => i.qty > 0).map(i => i.materiel_name))) |
| | | loadEcharts('bar03', bar02(res.data.filter(i => i.qty > 0).map(i => i.qty), res.data.filter(i => i.qty > 0).map(i => i.materiel_name + i.specification))) |
| | | }) |
| | | }, 1000 * 15) |
| | | |
| | | this.echartsRightBottom = setInterval(() => { |
| | | ProductionStockedInRightBottom().then(res => { |
| | | loadEcharts('bar04', bar02(res.data.filter(i => i.qty > 0).map(i => i.qty), res.data.filter(i => i.qty > 0).map(i => i.materiel_name))) |
| | | loadEcharts('bar04', bar02(res.data.filter(i => i.qty > 0).map(i => i.qty), res.data.filter(i => i.qty > 0).map(i => i.materiel_name + i.specification))) |
| | | }) |
| | | }, 1000 * 15) |
| | | }, |
copy from src/views/kanbanManager/cj.vue
copy to src/views/kanbanManager/jghjcj.vue
| Îļþ´Ó src/views/kanbanManager/cj.vue ¸´ÖÆ |
| | |
| | | <span>æµæ±é¿é²å
å¥èº«å¨ææéå
¬å¸</span> |
| | | </div> |
| | | |
| | | <div class="kb_headTime kb_header_text" style="top: 35px;left: 828px"> |
| | | <span>è½¦é´æ°ååçæ¿</span> |
| | | <div class="kb_headTime kb_header_text" style="top: 35px;left: 772px"> |
| | | <span>éå·¥çæ¥è½¦é´æ°ååçæ¿</span> |
| | | </div> |
| | | |
| | | <div class="kb_headTime" style="top: 35px;right: 25px"> |
| | |
| | | }, |
| | | methods: { |
| | | async getWorkShopProduceTopData() { |
| | | WorkShopProduceTopData({ wkshopcode: '1' }).then(res => { |
| | | WorkShopProduceTopData({ wkshopcode: '02,03' }).then(res => { |
| | | const flag = this.compareArrays(this.configTableTop.data, res.data) |
| | | if (!flag) { |
| | | this.configTableTop.data = res.data.map(i => |
| | |
| | | // { code: '04', name: 'å·æ¼' }, |
| | | // { code: '05', name: 'ç»è£
æå' } |
| | | |
| | | { code: '1', name: 'ç产é¨' } |
| | | { code: '02', name: 'é工车é´' }, |
| | | { code: '03', name: 'çæ¥è½¦é´' } |
| | | ] |
| | | |
| | | const res4 = await WorkShopProduceBottomLeftData({ wkshopcode: temp.map(i => i.code).join(',') }) |
| | | // this.cjzl03_xData = res4.data['101,001'].map(i => i.click_date) |
| | | // this.cjzl03_yData = res4.data['101,001'].map(i => i.count) |
| | | |
| | | const a = res4.data['1'].map(i => i.click_date) // echartsæ¨ªåæ |
| | | const a = res4.data['004'].map(i => i.click_date) // echartsæ¨ªåæ |
| | | const b = temp.map(i => i.name)// legendDataå¼ |
| | | const c = [ |
| | | // res4.data['01'].map(i => i.count), |
| | |
| | | // res4.data['03'].map(i => i.count), |
| | | // res4.data['04'].map(i => i.count), |
| | | // res4.data['05'].map(i => i.count) |
| | | res4.data['1'].map(i => i.count) |
| | | res4.data['004'].map(i => i.count) |
| | | ]// çºµåæ å¼ |
| | | |
| | | loadEcharts('cjzl03', cjzl03(a, b, c)) |
| | |
| | | // { code: '04', name: 'å·æ¼' }, |
| | | // { code: '05', name: 'ç»è£
æå' } |
| | | |
| | | { code: '1', name: 'ç产é¨' } |
| | | { code: '02', name: 'é工车é´' }, |
| | | { code: '03', name: 'çæ¥è½¦é´' } |
| | | ] |
| | | const res5 = await WorkShopProduceBottomRightData({ wkshopcode: temp.map(i => i.code).join(',') }) |
| | | this.RightBottom = res5.data |
| ÎļþÃû´Ó src/views/kanbanManager/cj.vue ÐÞ¸Ä |
| | |
| | | <span>æµæ±é¿é²å
å¥èº«å¨ææéå
¬å¸</span> |
| | | </div> |
| | | |
| | | <div class="kb_headTime kb_header_text" style="top: 35px;left: 828px"> |
| | | <span>è½¦é´æ°ååçæ¿</span> |
| | | <div class="kb_headTime kb_header_text" style="top: 35px;left: 800px"> |
| | | <span>è£
é
è½¦é´æ°ååçæ¿</span> |
| | | </div> |
| | | |
| | | <div class="kb_headTime" style="top: 35px;right: 25px"> |
| | |
| | | }, |
| | | methods: { |
| | | async getWorkShopProduceTopData() { |
| | | WorkShopProduceTopData({ wkshopcode: '1' }).then(res => { |
| | | WorkShopProduceTopData({ wkshopcode: '004' }).then(res => { |
| | | const flag = this.compareArrays(this.configTableTop.data, res.data) |
| | | if (!flag) { |
| | | this.configTableTop.data = res.data.map(i => |
| | |
| | | // { code: '04', name: 'å·æ¼' }, |
| | | // { code: '05', name: 'ç»è£
æå' } |
| | | |
| | | { code: '1', name: 'ç产é¨' } |
| | | { code: '004', name: 'è£
é
车é´' } |
| | | ] |
| | | |
| | | const res4 = await WorkShopProduceBottomLeftData({ wkshopcode: temp.map(i => i.code).join(',') }) |
| | | // this.cjzl03_xData = res4.data['101,001'].map(i => i.click_date) |
| | | // this.cjzl03_yData = res4.data['101,001'].map(i => i.count) |
| | | |
| | | const a = res4.data['1'].map(i => i.click_date) // echartsæ¨ªåæ |
| | | const a = res4.data['004'].map(i => i.click_date) // echartsæ¨ªåæ |
| | | const b = temp.map(i => i.name)// legendDataå¼ |
| | | const c = [ |
| | | // res4.data['01'].map(i => i.count), |
| | |
| | | // res4.data['03'].map(i => i.count), |
| | | // res4.data['04'].map(i => i.count), |
| | | // res4.data['05'].map(i => i.count) |
| | | res4.data['1'].map(i => i.count) |
| | | res4.data['004'].map(i => i.count) |
| | | ]// çºµåæ å¼ |
| | | |
| | | loadEcharts('cjzl03', cjzl03(a, b, c)) |
| | |
| | | // { code: '04', name: 'å·æ¼' }, |
| | | // { code: '05', name: 'ç»è£
æå' } |
| | | |
| | | { code: '1', name: 'ç产é¨' } |
| | | { code: '004', name: 'è£
é
车é´' } |
| | | ] |
| | | const res5 = await WorkShopProduceBottomRightData({ wkshopcode: temp.map(i => i.code).join(',') }) |
| | | this.RightBottom = res5.data |
| | |
| | | // let waitFlag = false// åæ¾çå¾
æ¯å¦æ¾è¡ |
| | | |
| | | this.dialogFormRoute.routeOperationArr.forEach((item, index) => { |
| | | item.isSelected1 = false |
| | | item.isSelected1 = this.defaultroute_code === item.code |
| | | item.isSelected2 = false |
| | | if (index === 0) { |
| | | item.isSelected1 = true |
| | | if (item.isSelected1) { |
| | | this.projectTableData = item.Data |
| | | } |
| | | if (item.flag === 'Y') { |
| | |
| | | </div> |
| | | </div> |
| | | <div class="content2" style="width: 60%;margin-left: 30px;"> |
| | | <div class="orderMsg">æ¹æ¡åç§°ï¼{{ form.checkstandname }}</div> |
| | | <div class="orderMsg">æ¹æ¡åç§°ï¼ |
| | | <el-select |
| | | v-model="form.checkstandcode" |
| | | placeholder="è¯·éæ©" |
| | | @change="selectChange" |
| | | > |
| | | <el-option |
| | | v-for="item in checkstandArr" |
| | | :key="item.checkstandcode" |
| | | :label="item.checkstandname" |
| | | :value="item.checkstandcode" |
| | | /> |
| | | </el-select> |
| | | </div> |
| | | <!-- <div class="orderMsg">æ¹æ¡åç§°ï¼{{ form.checkstandname }}</div>--> |
| | | <div class="orderMsg">æ½æ ·æ¹å¼ï¼{{ |
| | | form.sampmethod === 'FIXED' ? 'åºæ¶æ½æ£' : form.sampmethod === 'SCARE' ? 'æ¯ä¾æ½æ£' : '' |
| | | }} |
| | |
| | | stepActive: 0, // å½åå¤äºç¬¬å ä»¶ |
| | | |
| | | checkItemArr: [], |
| | | check_result: '' |
| | | check_result: '', |
| | | |
| | | checkstandArr: [] |
| | | |
| | | } |
| | | }, |
| | |
| | | this.getFocus() |
| | | }, |
| | | methods: { |
| | | // 䏿忢 |
| | | async selectChange(val) { |
| | | this.stepActive = 0 |
| | | const t = this.checkstandArr.find(i => i.checkstandcode === val) |
| | | this.form.sampmethod = t.sampmethod |
| | | this.form.sampscare = t.sampmethod === 'FIXED' ? t.sampscare : Math.ceil(this |
| | | .form.good_qty * t.sampscare / 100) |
| | | this.form.sampscare = this.form.sampscare <= this.form.good_qty ? this.form.sampscare : this.form.good_qty |
| | | |
| | | await this.getMesOrderStepCheckItemList() |
| | | }, |
| | | |
| | | // è·åèç¦ |
| | | getFocus() { |
| | | this.$nextTick(() => { |
| | |
| | | this.form.stepname = res.labcont[0].stepname |
| | | this.form.good_qty = res.labcont[0].good_qty |
| | | |
| | | this.checkstandArr = res.chekstand |
| | | |
| | | this.form.checkstandcode = res.chekstand[0].checkstandcode |
| | | this.form.checkstandname = res.chekstand[0].checkstandname |
| | | this.form.sampmethod = res.chekstand[0].sampmethod |