| src/api/cggl.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/api/jbzl.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/router/index.js | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/views/cggl/cgdd.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/views/scgl/zdpc.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| src/views/zzmx/chda.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/api/cggl.js
@@ -9,6 +9,14 @@ }) } // éè´è®¢åæç» export function PurchaseOrderSubSearch(data) { return request({ url: 'PurchaseOrder/PurchaseOrderSubSearch', method: 'get', params: data }) } // éè´è®¢åå é¤ export function DeletePurchaseOrder(data) { return request({ @@ -17,6 +25,14 @@ params: data }) } // éè´è®¢åå ³é export function ClosedPurchaseOrder(data) { return request({ url: 'PurchaseOrder/ClosedPurchaseOrder', method: 'post', params: data }) } // éè´è®¢åå®¡æ ¸ export function VerifyPurchaseOrder(data) { src/api/jbzl.js
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,19 @@ import request from '@/utils/request' // éè´ä¾æ¹ä¿¡æ¯æ¥è¯¢ export function PurchSupplierSelect(data) { return request({ url: 'BaseDate/PurchSupplierSelect', method: 'get', params: data }) } // é¨é¨ä¿¡æ¯æ¥è¯¢ export function DepartMentSelect(data) { return request({ url: 'BaseDate/DepartMentSelect', method: 'get', params: data }) } src/router/index.js
@@ -101,28 +101,28 @@ // { path: '*', redirect: '/404', hidden: true } ] export const asyncRoutes = [ { path: '/gtt', component: Layout, redirect: '/gtt/back', name: 'åºç¡è®¾ç½®', code: '1001', meta: { code: '1001', title: 'åºç¡è®¾ç½®', icon: 'tree' }, alwaysShow: true, // å½childrenåªæä¸ä¸ªæ¶ï¼ä¹æ¾ç¤ºç¶èå children: [{ path: 'back', name: 'YYQDCancel', code: '1011', component: () => import('@/views/gantt_back/gantt_back'), meta: { code: '1011', title: 'ç¨æ·æ¸ å', icon: '', keepAlive: true } }, { path: 'zdpc2', name: 'YYQDCancel', code: '1012', component: () => import('@/views/gantt_back/zdpc2'), meta: { code: '1012', title: 'èªå¨æç¨2', icon: '', keepAlive: true } }] }, // { // path: '/gtt', // component: Layout, // redirect: '/gtt/back', // name: 'åºç¡è®¾ç½®', // code: '1001', // meta: { code: '1001', title: 'åºç¡è®¾ç½®', icon: 'tree' }, // alwaysShow: true, // å½childrenåªæä¸ä¸ªæ¶ï¼ä¹æ¾ç¤ºç¶èå // children: [{ // path: 'back', // name: 'YYQDCancel', // code: '1011', // component: () => import('@/views/gantt_back/gantt_back'), // meta: { code: '1011', title: 'ç¨æ·æ¸ å', icon: '', keepAlive: true } // }, { // path: 'zdpc2', // name: 'YYQDCancel', // code: '1012', // component: () => import('@/views/gantt_back/zdpc2'), // meta: { code: '1012', title: 'èªå¨æç¨2', icon: '', keepAlive: true } // }] // }, { path: '/jcsz', component: Layout, src/views/cggl/cgdd.vue
@@ -41,36 +41,53 @@ <el-input v-model="form.mesordercode" placeholder="请è¾å ¥" style="width: 200px" /> </el-form-item> <el-form-item label="éè´ä¾æ¹" style=" display:flex;"> <el-input v-model="form.OrgName" placeholder="请è¾å ¥" style="width: 200px" /> <el-select v-model="form.customercode" :popper-append-to-body="false" filterable style="width: 200px" placeholder="è¯·éæ©" > <el-option v-for="item in customercodeArr" :key="item.code" :label="item.name" :value="item.code" /> </el-select> </el-form-item> <el-form-item label="åæ®æ¥æ" style="display: flex;"> <!-- <el-select v-model="form.orderdate" style="width: 200px" placeholder="è¯·éæ©">--> <!-- <el-date-picker--> <!-- v-model="form.orderdate"--> <!-- style="width: 200px"--> <!-- type="date"--> <!-- placeholder="éæ©æ¥æ"--> <!-- />--> <!-- </el-select>--> <el-date-picker v-model="form.orderdate" style="width: 200px" type="date" placeholder="éæ©æ¥æ" type="daterange" :clearable="false" class="timeMini" range-separator="~" start-placeholder="å¼å§æ¥æ" style="width: 200px;display: flex;line-height: 34px ;height: 34px ;" end-placeholder="ç»ææ¥æ" size="mini" /> </el-form-item> <el-form-item v-show="isExpandForm" label="æºååå·" style="display: flex;"> <el-input v-model="form.sourceorder" placeholder="请è¾å ¥" style="width: 200px" /> </el-form-item> <el-form-item v-show="isExpandForm" label="é¨é¨ä¿¡æ¯" style="display: flex;"> <el-cascader ref="cascader" <el-select v-model="form.deptcode" :popper-append-to-body="false" filterable popper-class="elCascader" :options="deptcodeArr" :props="defaultProps" @change="cascaderChange" style="width: 200px" placeholder="è¯·éæ©" > <el-option v-for="item in deptcodeArr" :key="item.code" :label="item.name" :value="item.code" /> </el-select> </el-form-item> <el-form-item v-show="isExpandForm" label="å建人å" style="display: flex;"> <el-input v-model="form.creatuser" placeholder="请è¾å ¥" style="width: 200px" /> @@ -78,13 +95,21 @@ <el-form-item v-show="isExpandForm" label="å建æ¶é´" style="display: flex;"> <el-date-picker v-model="form.createdate" style="width: 200px" type="date" placeholder="éæ©æ¥æ" type="daterange" :clearable="false" class="timeMini" range-separator="~" start-placeholder="å¼å§æ¥æ" style="width: 200px;display: flex;line-height: 34px ;height: 34px ;" end-placeholder="ç»ææ¥æ" size="mini" /> </el-form-item> </div> <div class="bodySearchReset" :style="{marginLeft:$store.state.app.sidebar.opened? $store.state.settings.menuIsHorizontal?'15%':'3%':'10%'}"> <div class="bodySearchReset" :style="{marginLeft:$store.state.app.sidebar.opened? $store.state.settings.menuIsHorizontal?'15%':'3%':'10%'}" > <el-button v-waves type="primary" icon="el-icon-search" @click="search">æ¥è¯¢</el-button> <el-button v-waves type="info" icon="el-icon-refresh" @click="reset">éç½®</el-button> </div> @@ -113,15 +138,28 @@ ref="tableDataRef" class="tableFixed" :data="tableData" :height="isExpandForm?tableHeight:(tableHeight+40)+'px'" :height="isExpandForm?(tableHeight+40):(tableHeight+80)+'px'" border :row-class-name="tableRowClassName" :style="{width: 100+'%',height:isExpandForm?tableHeight:(tableHeight+40)+'px',}" :style="{width: 100+'%',height:isExpandForm?(tableHeight+40):(tableHeight+80)+'px'}" highlight-current-row :header-cell-style="this.$headerCellStyle" :cell-style="this.$cellStyle" @sort-change="sortChange" @row-click="rowClick" > <el-table-column width="50" fixed > <template slot-scope="{row}"> <el-radio v-model="radioSelected" :label="row.ordercode" style="color: transparent;padding-left: 10px;" /> </template> </el-table-column> <el-table-column prop="RowNum" width="50" @@ -158,21 +196,36 @@ width="130" show-tooltip-when-overflow sortable="custom" /> > <template slot-scope="{row}"> <div v-if="row.deptname">{{ row.deptname }}</div> <div v-else>/</div> </template> </el-table-column> <el-table-column prop="customername" label="徿¥åä½" label="éè´ä¾æ¹" sortable="custom" min-width="180" show-tooltip-when-overflow /> > <template slot-scope="{row}"> <div v-if="row.customername">{{ row.customername }}</div> <div v-else>/</div> </template> </el-table-column> <el-table-column prop="saleorderCode" label="æºååå·" sortable="custom" width="160" show-tooltip-when-overflow /> > <template slot-scope="{row}"> <div v-if="row.saleorderCode">{{ row.saleorderCode }}</div> <div v-else>/</div> </template> </el-table-column> <el-table-column prop="acceptdate" label="é¢è®¡å°è´§æ¥æ" @@ -230,8 +283,13 @@ > <template slot-scope="{row}"> <div class="operationClass"> <el-tooltip class="item" effect="dark" content="ç¼è¾" placement="top"> <i class="el-icon-edit-outline" @click="edit('edit',row)" /> <el-tooltip class="item" effect="dark" content="å ³å" placement="top"> <i class="el-icon-switch-button" :style="{color:$store.state.settings.theme}" style="margin-right: 15px;cursor: pointer" @click="switchButton(row)" /> </el-tooltip> <el-tooltip v-del-tab-index class="item" effect="dark" content="å é¤" placement="top"> <i class="el-icon-delete" @click="del(row)" /> @@ -251,6 +309,130 @@ popper-class="select_bottom" @pagination="getPurchaseOrderSearch" /> <div class="elTableDiv"> <el-table :data="tableDataDetail" border height="210px" :row-class-name="tableRowClassName" highlight-current-row :header-cell-style="this.$headerCellStyle" :cell-style="this.$cellStyle" > <el-table-column width="50" type="index" label="åºå·" fixed /> <el-table-column prop="partcode" label="产åç¼ç " width="160" show-tooltip-when-overflow /> <el-table-column prop="partname" label="产ååç§°" width="200" show-tooltip-when-overflow /> <el-table-column label="产åè§æ ¼" prop="partspec" show-tooltip-when-overflow width="150" > <template slot-scope="{row}"> <div v-if="row.partspec">{{ row.partspec }}</div> <div v-else>/</div> </template> </el-table-column> <el-table-column label="åä½" show-tooltip-when-overflow prop="uomname" width="100" /> <el-table-column label="æ°é" show-tooltip-when-overflow prop="quantity" /> <el-table-column label="累积å°è´§æ°é" show-tooltip-when-overflow prop="countarrivalquantity" /> <el-table-column label="ç´¯è®¡å ¥åºæ°é" show-tooltip-when-overflow prop="countInquantity" > <template slot-scope="{row}"> <div v-if="row.countInquantity">{{ row.countInquantity }}</div> <div v-else>/</div> </template> </el-table-column> <el-table-column label="é¢è®¡å°è´§æ¥æ" show-tooltip-when-overflow prop="acceptdate" > <template slot-scope="{row}"> <div v-if="row.acceptdate">{{ row.acceptdate.substring(0, 11) }}</div> <div v-else>/</div> </template> </el-table-column> <el-table-column label="ä»åº" show-tooltip-when-overflow prop="housename" > <template slot-scope="{row}"> <div v-if="row.housename">{{ row.housename }}</div> <div v-else>/</div> </template> </el-table-column> <el-table-column label="æ¯å¦æ£éª" show-tooltip-when-overflow prop="is_incheck" > <template slot-scope="{row}"> <div v-if="row.is_incheck==='Y'"> <i class="el-icon-success" :style="{color:$store.state.settings.theme}" style="margin-right: 2px" /> æ¯ </div> <div v-if="row.is_incheck==='N'"> <i class="el-icon-info" style="margin-right: 2px" /> å¦ </div> </template> </el-table-column> <!-- <el-table-column--> <!-- label="æä½"--> <!-- width="120"--> <!-- fixed="right"--> <!-- >--> <!-- <template slot-scope="{row}">--> <!-- <div class="operationClass">--> <!-- <el-tooltip class="item" effect="dark" content="æå°å·¥åº" placement="top">--> <!-- <i--> <!-- class="el-icon-printer"--> <!-- :style="{color:$store.state.settings.theme}"--> <!-- style="cursor: pointer;margin-right: 15px"--> <!-- @click="supplementSmallClick(row)"--> <!-- />--> <!-- </el-tooltip>--> <!-- </div>--> <!-- </template>--> <!-- </el-table-column>--> </el-table> </div> </div> </div> @@ -258,17 +440,11 @@ <script> import Pagination from '@/components/Pagination' import { AddUpdateOrganization, DeleteOrganization, OrganizationSearch, PrentOrganization, UserOrganization } from '@/api/jcsz' import clearAllChildren, { validateCode } from '@/utils/global' import { handleDatetime } from '@/utils/global' import waves from '@/directive/waves' import { SeaveSearchErpOrder, SeaveSearchErpPurchaseOrder } from '@/api/ErpSyncMes' import { PurchaseOrderSearch } from '@/api/cggl' import { SeaveSearchErpPurchaseOrder } from '@/api/ErpSyncMes' import { ClosedPurchaseOrder, DeletePurchaseOrder, PurchaseOrderSearch, PurchaseOrderSubSearch } from '@/api/cggl' import { DepartMentSelect, PurchSupplierSelect } from '@/api/jbzl' export default { name: 'Zzjg', @@ -306,31 +482,76 @@ ], total: 10, tableData: [], defaultProps: { checkStrictly: true, value: 'code', label: 'name', children: 'children' }, deptcodeArr: [] // é¨é¨ä¿¡æ¯ radioSelected: '', deptcodeArr: [], // é¨é¨ä¿¡æ¯æ°ç» customercodeArr: [], // éè´ä¾æ¹æ°ç» tableDataDetail: [] } }, created() { this.getPurchaseOrderSearch() this.getUserOrganization() this.handleRequest() }, mounted() { window.addEventListener('resize', this.getHeight) this.getHeight() }, methods: { handleRequest() { this.getPurchaseOrderSearch().then(res => { if (res.code === '200') { this.getDepartMentSelect() this.getPurchSupplierSelect() } }) }, async getPurchaseOrderSearch() { const res = await PurchaseOrderSearch(this.form) let tempDate2 = this.form.orderdate if (tempDate2.length > 0) { tempDate2 = handleDatetime(tempDate2[0]) + '~' + handleDatetime(tempDate2[1]) } let tempDate = this.form.createdate if (tempDate.length > 0) { tempDate = handleDatetime(tempDate[0]) + '~' + handleDatetime(tempDate[1]) } const data = { mesorderstus: this.form.mesorderstus, mesordercode: this.form.mesordercode, customercode: this.form.customercode, orderdate: tempDate2, sourceorder: this.form.sourceorder, deptcode: this.form.deptcode, creatuser: this.form.creatuser, createdate: tempDate, prop: this.form.prop, // æåºå段 order: this.form.order, // æåºå段 page: this.form.page, // 第å 页 rows: this.form.rows // æ¯é¡µå¤å°æ¡ } const res = await PurchaseOrderSearch(data) this.tableData = res.data this.total = res.count return { code: res.code } }, // è·åé¨é¨ä¿¡æ¯ async getDepartMentSelect() { const { data: res } = await DepartMentSelect() // this.deptcodeArr = clearAllChildren(res) this.deptcodeArr = res }, // éè´ä¾æ¹ä¿¡æ¯æ¥è¯¢ async getPurchSupplierSelect() { const { data: res } = await PurchSupplierSelect() this.customercodeArr = res }, // æåºæ¹åæ¶ sortChange({ column, prop, order }) { if (order === 'descending') { @@ -358,19 +579,16 @@ this.form.deptcode = '' this.form.creatuser = '' this.form.createdate = '' this.$refs.cascader.checkedValue = ''// 级èéæ©å¨çæ¸ ç©º this.getPurchaseOrderSearch() }, // è·åé¨é¨ä¿¡æ¯ async getUserOrganization() { const { data: res } = await UserOrganization() this.deptcodeArr = clearAllChildren(res) console.log(this.deptcodeArr, 888) }, // 级è鿩卿¹åäºä»¶ cascaderChange(val) { this.form.deptcode = val[val.length - 1] async switchButton(row) { ClosedPurchaseOrder({ po: row.ordercode }).then(res => { if (res.code === '200') { this.$message.success('å ³åæåï¼') this.getPurchaseOrderSearch() } }) }, // å é¤æé® async del(row) { @@ -379,7 +597,7 @@ cancelButtonText: 'åæ¶', type: 'warning' }).then(() => { DeleteOrganization({ orgid: row.code }).then(res => { DeletePurchaseOrder({ po: row.ordercode }).then(res => { if (res.code === '200') { this.$message.success('å 餿å!') if (this.form.page > 1 && this.tableData.length === 1) { @@ -419,11 +637,24 @@ // } }) }, // è¡ç¹å»äºä»¶ async rowClick(row, event, column) { this.radioSelected = row.ordercode const { data: res } = await PurchaseOrderSubSearch({ purodercode: this.radioSelected }) this.tableDataDetail = res }, // è·å页é¢é«åº¦ getHeight() { this.$nextTick(() => { this.mainHeight = window.innerHeight - 85 this.tableHeight = this.mainHeight - 255 // this.tableHeight = this.mainHeight - 250 this.tableHeight = this.mainHeight - 515 if (window.innerHeight < 769) { this.tableHeight = this.tableHeight - 20 } this.isIpad = window.innerHeight < 769 && window.innerWidth < 1367 this.$refs.tableDataRef.doLayout() }) }, @@ -437,14 +668,21 @@ <!--å ¬å ±é¡µé¢æ ·å¼--> <style lang="scss" scoped> $main_color: #42b983; ::v-deep .el-radio__label { display: none !important; } ::v-deep .el-button--text{ font-size: 14px ; cursor: pointer ; } .el-icon-share ,.el-icon-delete,.el-icon-edit-outline{ color: $main_color; cursor: pointer; } .el-icon-edit-outline{ margin-right: 15px; } @@ -538,6 +776,7 @@ ::v-deep .el-table__fixed-right{ height: 100% !important; } ::v-deep .el-table__fixed{ height: 100% !important; } src/views/scgl/zdpc.vue
@@ -208,7 +208,7 @@ size="small" :picker-options="pickerOptions1" :clearable="false" @change="change_time" @change="dateChange" /> </el-form-item> <el-form-item label="æç¨æ¹å¼" style=" display: flex;"> @@ -216,7 +216,7 @@ v-model="formBottom.types" :disabled="radioSelectedId===''" style="width:120px" @change="changeTypes" @change="typesChange" > <el-option value="N" label="设å¤ä¼å " /> <el-option value="Y" label="æ¶é´ä¼å " /> @@ -254,7 +254,7 @@ :disabled="radioSelectedId===''" type="primary" icon="el-icon-document-remove" @click="click_schedule" @click="prepareArrange" >颿 </el-button> <el-button @@ -262,7 +262,7 @@ type="primary" :disabled="radioSelectedId===''" icon="el-icon-document-checked" @click="click_yes" @click="prepareSubmit" >æäº¤ </el-button> </div> @@ -309,7 +309,7 @@ <el-checkbox v-model="data.status" style="margin-right:5px;" @change="click_box(data)" @change="checkboxSingle(data)" /> {{ data.id }} {{ data.name }} </div> @@ -328,7 +328,7 @@ v-model="ganttCheckboxAll" class="box_style" :disabled="radioSelectedId===''" @change="changeLift()" @change="checkboxAll()" /> <input v-model.number="cellWidth" @@ -504,18 +504,26 @@ /* æç¨é¨åçæ¹æ³ */ resetFormcx() { this.$nextTick(() => { this.$refs.form.resetFields() }) }, // ç¡®ä¿æ¢åæ¶é´ä¸ºéè´æ° no_zero() { if (this.formBottom.times < 0) { this.formBottom.times = 0 } }, // å·¥ä½å表å¤éæ¡æä½ changeLift() { // æç¨æ¹å¼æ¹å typesChange() { this.getOnclickAdvancedSchedulingDevice() }, // æç¨æ¥æå¼æ¹åæ¶ dateChange() { this.time_data[0] = this.formBottom.scheDate[0] + ' 00:00' this.time_data[1] = this.formBottom.scheDate[1] + ' 23:59' this.forms.startdate = this.formBottom.scheDate[0] this.forms.enddate = this.formBottom.scheDate[1] this.getOnclickAdvancedSchedulingDevice() }, // å·¥ä½å表å¤éæ¡æä½ (å ¨éãå ¨ä¸é) checkboxAll() { if (this.ganttCheckboxAll) { this.ganttLeftArrId = [] this.getOnclickAdvancedSchedulingDevice() @@ -528,26 +536,15 @@ this.timeTopTempData[i].gtArray = [] } } // this.click_schedule() }, changeTypes() { this.getOnclickAdvancedSchedulingDevice() }, // æç¨æ¥æå¼æ¹åæ¶ change_time() { this.time_data[0] = this.formBottom.scheDate[0] + ' 00:00' this.time_data[1] = this.formBottom.scheDate[1] + ' 23:59' this.forms.startdate = this.formBottom.scheDate[0] this.forms.enddate = this.formBottom.scheDate[1] this.getOnclickAdvancedSchedulingDevice() // this.prepareArrange() }, // çç¹å¾å·¦ä¾§checkboxå¼é䏿è åæ¶æ¶ click_box(val) { checkboxSingle(val) { if (!val.status) { for (const i in this.timeTopTempData) { const new_arr = [] for (const j in this.timeTopTempData[i].gtArray) { if (this.timeTopTempData[i].gtArray[j].id == val.id) { if (this.timeTopTempData[i].gtArray[j].id === val.id) { } else { new_arr.push(this.timeTopTempData[i].gtArray[j]) } @@ -582,16 +579,15 @@ for (const i in this.schedulingData) { const arr = [] for (const j in this.schedulingData[i].gtArray) { if (this.schedulingData[i].gtArray[j].type != 'schedule') { if (this.schedulingData[i].gtArray[j].type !== 'schedule') { arr.push(this.schedulingData[i].gtArray[j]) } } this.schedulingData[i].gtArray = arr } this.formBottom.real_num = 0 // this.click_schedule() // this.prepareArrange() }, // ç¹å»å¸¦åºæ°æ® async getOnclickAdvancedSchedulingDevice() { const res = await OnclickAdvancedSchedulingDevice(this.forms) @@ -607,7 +603,7 @@ // å°äºä¸ªæ¶é´æ®µè¿è¡èµå¼ for (const i in data) { for (const j in data[i].children) { if (data[i].children[j].OneStartDate != '') { if (data[i].children[j].OneStartDate !== '') { data[i].children[ j ].OneStartDate = data[i].children[ @@ -622,7 +618,7 @@ ' ' + data[i].children[j].OneStartDate[1] } if (data[i].children[j].TwoStartDate != '') { if (data[i].children[j].TwoStartDate !== '') { data[i].children[ j ].TwoStartDate = data[i].children[ @@ -637,7 +633,7 @@ ' ' + data[i].children[j].TwoStartDate[1] } if (data[i].children[j].ThreeStartDate != '') { if (data[i].children[j].ThreeStartDate !== '') { data[i].children[ j ].ThreeStartDate = data[i].children[ @@ -652,7 +648,7 @@ ' ' + data[i].children[j].ThreeStartDate[1] } if (data[i].children[j].FourStartDate != '') { if (data[i].children[j].FourStartDate !== '') { data[i].children[ j ].FourStartDate = data[i].children[ @@ -667,7 +663,7 @@ ' ' + data[i].children[j].FourStartDate[1] } if (data[i].children[j].FiveStartDate != '') { if (data[i].children[j].FiveStartDate !== '') { data[i].children[ j ].FiveStartDate = data[i].children[ @@ -713,7 +709,7 @@ const newList = [] for (const i in data) { for (const j in data[i].children) { if (data[i].children[j].OneStartDate != '') { if (data[i].children[j].OneStartDate !== '') { const data1 = { id: '', start: '', @@ -728,7 +724,7 @@ 100 newList.push(data1) } if (data[i].children[j].TwoStartDate != '') { if (data[i].children[j].TwoStartDate !== '') { const data2 = { id: '', start: '', @@ -743,7 +739,7 @@ 100 newList.push(data2) } if (data[i].children[j].ThreeStartDate != '') { if (data[i].children[j].ThreeStartDate !== '') { const data3 = { id: '', start: '', @@ -760,7 +756,7 @@ 100 newList.push(data3) } if (data[i].children[j].FourStartDate != '') { if (data[i].children[j].FourStartDate !== '') { const data4 = { id: '', start: '', @@ -777,7 +773,7 @@ 100 newList.push(data4) } if (data[i].children[j].FiveStartDate != '') { if (data[i].children[j].FiveStartDate !== '') { const data5 = { id: '', start: '', @@ -803,10 +799,10 @@ this.schedulingData = list if (cont != '') { if (cont !== '') { for (const i in cont) { for (const j in this.schedulingData) { if (this.schedulingData[j].id == cont[i].eqp_code) { if (this.schedulingData[j].id === cont[i].eqp_code) { const data = { id: cont[i].eqp_code, number: cont[i].alloc_qty, @@ -817,7 +813,7 @@ // status: this.AdvaScheUom, start: cont[i].time_start, end: cont[i].time_end, type: cont[i].status == 'S' ? 'h_schedule' : 'bm_schedule' type: cont[i].status === 'S' ? 'h_schedule' : 'bm_schedule' } this.schedulingData[j].flag = 'isCont' this.schedulingData[j].gtArray.unshift(data) @@ -826,7 +822,7 @@ } } if (this.ganttLeftArrId != '') { if (this.ganttLeftArrId !== '') { for (const j in this.schedulingData) { if (this.ganttLeftArrId.indexOf(this.schedulingData[j].id) >= 0) { this.schedulingData[j].gtArray = [] @@ -870,11 +866,11 @@ AdvaDevicRhythm: '', gtArray: [] } if (data[i].children != '') { if (data[i].children !== '') { time.AdvaDevicRhythm = data[i].children[0].AdvaDevicRhythm } for (const j in data[i].children) { if (data[i].children[j].OneStartDate != '') { if (data[i].children[j].OneStartDate !== '') { const icu1 = { name: data[i].children[j].AdvaDevicName, id: data[i].children[j].AdvaDevicNumber, @@ -886,7 +882,7 @@ } time.gtArray.push(icu1) } if (data[i].children[j].TwoStartDate != '') { if (data[i].children[j].TwoStartDate !== '') { const icu2 = { name: data[i].children[j].AdvaDevicName, id: data[i].children[j].AdvaDevicNumber, @@ -898,7 +894,7 @@ } time.gtArray.push(icu2) } if (data[i].children[j].ThreeStartDate != '') { if (data[i].children[j].ThreeStartDate !== '') { const icu3 = { name: data[i].children[j].AdvaDevicName, id: data[i].children[j].AdvaDevicNumber, @@ -910,7 +906,7 @@ } time.gtArray.push(icu3) } if (data[i].children[j].FourStartDate != '') { if (data[i].children[j].FourStartDate !== '') { const icu4 = { name: data[i].children[j].AdvaDevicName, id: data[i].children[j].AdvaDevicNumber, @@ -922,7 +918,7 @@ } time.gtArray.push(icu4) } if (data[i].children[j].FiveStartDate != '') { if (data[i].children[j].FiveStartDate !== '') { const icu5 = { name: data[i].children[j].AdvaDevicName, id: data[i].children[j].AdvaDevicNumber, @@ -939,7 +935,7 @@ this.timeTopTempData.push(time) } if (cont != '') { if (cont !== '') { for (const i in cont) { for (const j in this.timeTopTempData) { const data = { @@ -953,7 +949,7 @@ end: cont[i].time_end, type: 'h_schedule' } if (this.timeTopTempData[j].date == data.date) { if (this.timeTopTempData[j].date === data.date) { this.timeTopTempData[j].gtArray.unshift(data) } } @@ -971,10 +967,10 @@ const t = new Date(time) console.log(t.getMinutes(), 800) t.setMinutes(t.getMinutes() + this.formBottom.times * 1) var now = const now = t.getFullYear() + '-' + this.add_one(t.getMonth()).toString().padStart(2, '0') + (t.getMonth() + 1).toString().padStart(2, '0') + '-' + t.getDate().toString().padStart(2, '0') + ' ' + @@ -986,14 +982,10 @@ console.log('now', now) return now }, // +1 add_one(date) { return parseInt(date) + 1 }, // æå ¥äº§è½æ¶é´æ®µ pushItem(newList, id, arr) { for (const i in newList) { if (newList[i].id == id) { if (newList[i].id === id) { const data = { start: newList[i].start, end: newList[i].end, @@ -1018,7 +1010,7 @@ this.formBottom.scheDate.push(handleDatetime(new Date())) // å½åæ¥æï¼ä»å¤©ï¼ this.formBottom.scheDate.push(row.AdvaScheEndDate) // è¦æ±äº¤ä»æ¶é´ if (this.formBottom.scheDate != '') { if (this.formBottom.scheDate !== '') { this.time_data[0] = this.formBottom.scheDate[0] + ' 00:00' // æç¨å¼å§æ¶é´ this.time_data[1] = this.formBottom.scheDate[1] + ' 23:59' // æç¨ç»ææ¶é´ } @@ -1033,7 +1025,7 @@ this.formUpdata.BotProceCode = row.AdvaScheBotProcid // å·¥èºè·¯çº¿ç¼ç }, // æäº¤æç¨ async click_yes() { async prepareSubmit() { if (this.formBottom.real_num !== this.formBottom.meter) { this.$message.error('æ°éæªæå®ï¼è¯·è®¾ç½®äº§è½æ¶é´ï¼') } else { @@ -1041,11 +1033,11 @@ for (const i in this.schedulingData) { const arr = [] for (const j in this.schedulingData[i].gtArray) { if (this.schedulingData[i].gtArray[j].type == 'schedule') { if (this.schedulingData[i].gtArray[j].type === 'schedule') { arr.push(this.schedulingData[i].gtArray[j]) } } if (arr != '') { if (arr !== '') { for (const i in arr) { const data = { AlreDevicNumber: '', @@ -1065,14 +1057,14 @@ // è¿æ»¤ let updata = [] for (const i in list) { if (list[i].AlreStartDate != '') { if (list[i].AlreStartDate !== '') { updata.push(list[i]) } } updata = JSON.stringify(updata) this.formUpdata.json = updata if (list == '') { if (list === '') { this.$message.error('请å 颿') return false } @@ -1095,7 +1087,7 @@ } }, // æ¶é´/设å¤ä¼å æç¨ click_schedule() { prepareArrange() { const timestamp = new Date().toLocaleDateString() if (new Date(this.formBottom.scheDate[1]) < new Date(timestamp)) { @@ -1106,11 +1098,11 @@ // 设å¤ä¼å æè æ¶é´ä¼å å¯¹æ°æ®è¿è¡çæ ¼å¼è½¬æ¢ if (this.schedulingData !== '' && this.formBottom.types === 'N') { // 设å¤ä¼å this.fun_time() this.eqpDataTransition() this.editLastValue(this.schedulingData) } else if (this.timeTopTempData !== '' && this.formBottom.types === 'Y') { // æ¶é´ä¼å this.filterAlreadyScheduleTime() // æå¨è¿æ»¤æææ¶é´å·²æç¨ this.fun_facility() this.timeDataTransition() this.dataTransition() this.editLastValue(this.schedulingData) } @@ -1148,7 +1140,7 @@ const len = 0 for (const i in arr) { for (const j in arr[i].gtArray) { if (arr[i].gtArray[j].type == 'schedule') { if (arr[i].gtArray[j].type === 'schedule') { arr_num.unshift(arr[i].gtArray[j]) } } @@ -1166,15 +1158,15 @@ mend_num = this.formBottom.meter - num } else { } if (this.formBottom.real_num * 1 == this.formBottom.meter * 1) { // mend_num = this.formBottom.meter - num } else { // this.submit_flag = true } // if (this.formBottom.real_num * 1 === this.formBottom.meter * 1) { // // mend_num = this.formBottom.meter - num // } else { // // this.submit_flag = true // } for (const i in this.schedulingData) { for (const j in this.schedulingData[i].gtArray) { if ( this.schedulingData[i].gtArray[j].type == 'schedule' && this.schedulingData[i].gtArray[j].type === 'schedule' && this.schedulingData[i].gtArray[j].end_num ) { this.schedulingData[i].gtArray[j].number = @@ -1183,21 +1175,24 @@ } } }, fun_time() { // 设å¤ä¼å æ°æ®æ ¼å¼è½¬æ¢ eqpDataTransition() { let all_num = this.formBottom.meter const all_time = [] let flag1 = 0 const mod = this.schedulingData[0].mod // let nowTime = this.schedulingData[0].AdvaDevicRhythm*all_num console.log(this.schedulingData.length, 31) for (const i in this.schedulingData) { console.log(i, 32) let end_arr = [] // å·²æç¨çæ°ç» let nend_arr = [] // å¾ æç¨çæ°ç» const add_arr = [] // å·²æç¨çæ°ç» let capacity_arr = [] // è¦æç¨çæ°ç» this.schedulingData[i].gtArray.sort((a, b) => new Date(a.end).getTime() - new Date(b.end).getTime()) // let capacity_end = '' end_arr = this.schedulingData[i].gtArray.filter(item => item.type == 'h_schedule') nend_arr = this.schedulingData[i].gtArray.filter(item => item.type == 'capacity') end_arr = this.schedulingData[i].gtArray.filter(item => item.type === 'h_schedule') nend_arr = this.schedulingData[i].gtArray.filter(item => item.type === 'capacity') if (end_arr && end_arr.length > 0) { capacity_arr = nend_arr.map(item => { // æé¤æå·²ç»æç¨çåå¨hsheduleï¼startï¼endé½ç¸ççæ åµ @@ -1210,15 +1205,15 @@ } const schedule1 = end_arr.filter(schedule => { return new Date(item.start).getTime() == new Date(schedule.start).getTime() && new Date(item.end).getTime() == new Date(schedule.end).getTime() return new Date(item.start).getTime() === new Date(schedule.start).getTime() && new Date(item.end).getTime() === new Date(schedule.end).getTime() }) if (schedule1 && schedule1.length > 0) { item.capacity = false } return item }).filter(item => item.capacity != false) }).filter(item => item.capacity !== false) } else { capacity_arr = nend_arr } @@ -1227,8 +1222,9 @@ id: '', start_time: '' } if (end_arr != '') { (id_obj.id = end_arr[0].id), (id_obj.start_time = end_arr[0].end) if (end_arr !== '') { id_obj.id = end_arr[0].id id_obj.start_time = end_arr[0].end } for (const w in capacity_arr) { let end_time = '' @@ -1245,8 +1241,8 @@ real_number: 0 } if ( id_obj.start_time != '' && flag1 == 0 && id_obj.start_time !== '' && flag1 === 0 && new Date(id_obj.start_time) >= new Date(capacity_arr[w].start) ) { data.start = this.MinutesTest(id_obj.start_time) @@ -1313,8 +1309,8 @@ } } }, // è®¾å¤æç¨æ¹æ³ fun_facility() { // æ¶é´ä¼å æ°æ®æ ¼å¼è½¬æ¢ timeDataTransition() { // æé¤æªå¾é项 for (const i in this.timeTopTempData) { const newArr = [] @@ -1338,9 +1334,9 @@ let nend_arr = [] // æç¨çæ°ç» const add_arr = [] // å·²æç¨çæ°ç» let capacity_arr = [] // è¦æç¨çæ°ç» // console.log(parseFloat('SV002'.substring(4, 5))) this.timeTopTempData[i].gtArray.sort((a, b) => new Date(a.end).getTime() - new Date(b.end).getTime()) // this.timeTopTempData[i].gtArray.sort((a, b) => parseFloat(a.id.substring(4, 5)) - parseFloat(b.id.substring(4, 5))) // let capacity_end = '' // console.log(JSON.stringify(this.timeTopTempData), 671) @@ -1352,14 +1348,15 @@ // console.log(JSON.stringify(end_arr), 672) // console.log(nend_arr, 673) // console.log(JSON.stringify(nend_arr), 673) capacity_arr = JSON.parse(JSON.stringify(nend_arr)) capacity_arr = JSON.parse(JSON.stringify(nend_arr)) // è¦æç¨çæ°ç» console.log(capacity_arr, 902) end_arr.forEach(item => { for (let i = 0; i < capacity_arr.length; i++) { if (new Date(capacity_arr[i].start).getTime() === new Date(item.start).getTime()) { // console.log(capacity_arr[i].start, 671) // console.log(capacity_arr[i].end, 671) console.log(i, capacity_arr[i], 'ååå') console.log(capacity_arr.splice(i, 1)) capacity_arr.splice(i, 1) break } } @@ -1367,7 +1364,9 @@ console.log(capacity_arr, '大西ç') if (!capacity_arr || capacity_arr.length === 0) break // const firstCapacity = capacity_arr[0] console.log(nend_arr, 'nend_arr') console.log(JSON.stringify(nend_arr), 'nend_arr') const schedule_arr = end_arr.filter(item => { const remain = nend_arr.some(it => { @@ -1375,30 +1374,24 @@ // new Date(item.end).getTime() < new Date(it.end).getTime()) || ( // new Date(it.end).getTime() === new Date(item.end).getTime() && // new Date(item.start).getTime() > new Date(it.start).getTime()) return (new Date(it.start).getTime() === new Date(item.start).getTime() && new Date(item.end).getTime() < new Date(it.end).getTime()) }) return remain }) // schedule_arr.sort((a, b) => new Date(b.end).getTime() - new Date(a.end).getTime()) // schedule_arr = schedule_arr.filter((currentValue, currentIndex, selfArr) => { // return selfArr.findIndex(item => item.id === currentValue.id) === currentIndex // }) // schedule_arr = [{ cl_code: '302', // cl_name: '8504å æº', // date: '2023-02-09', // end: '2023-02-09 14:53:20', // id: 'SB004', // number: 100, // start: '2023-02-09 13:30:00', // type: 'h_schedule', // work_order: 'MO-2022-11-0035_1' }] console.log(schedule_arr, 1002) // schedule_arr = [schedule_arr[0]] if (schedule_arr && schedule_arr.length > 0) { // æ¾å°åä¸è®¾å¤ä¸çendæå¤§å¼ // const maxEnd = schedule_arr.sort((a, b) => new Date(b.end).getTime() - new Date(a.end).getTime())[0].end const scheduleCan = schedule_arr.map(item => { const temp = nend_arr.filter(it => { if (it.id === item.id) { @@ -1406,20 +1399,32 @@ new Date(item.end).getTime() < new Date(it.end).getTime()) } })[0] console.log('capacity', temp) console.log('capacity', item.end) // console.log('capacity', temp) // console.log('capacity', item.end) // console.log('capacity', item.end === '2023-02-09 13:30:00') temp.start = this.MinutesTest(item.end) // temp.start = item.end // temp.start = maxEnd // temp.start = '2023-02-09 13:30:00' return temp }) console.log(scheduleCan, 'scheduleCan') // scheduleCan.sort((a, b) => new Date(a.start).getTime() - new Date(b.start).getTime()) // scheduleCan = scheduleCan.filter((currentValue, currentIndex, selfArr) => { // return selfArr.findIndex(item => item.id === currentValue.id) === currentIndex // }) // console.log(scheduleCan, 'scheduleCan2') const newSchedule = JSON.parse(JSON.stringify(scheduleCan)) capacity_arr = newSchedule.concat(capacity_arr) } console.log(schedule_arr) console.log('å¯æç¨æ°ç»', capacity_arr) const id_obj = {} if (end_arr != '') { (id_obj.id = end_arr[0].id), (id_obj.start_time = end_arr[0].end) if (end_arr !== '') { id_obj.id = end_arr[0].id id_obj.start_time = end_arr[0].end } for (const w in capacity_arr) { let end_time @@ -1441,7 +1446,7 @@ new Date(id_obj.start_time).getTime() >= new Date(capacity_arr[w].start).getTime() ) { if (data.id == id_obj.id) { if (data.id === id_obj.id) { data.start = this.MinutesTest(id_obj.start_time) console.log(data.start, 999) // flag1 =1 @@ -1456,24 +1461,15 @@ console.log(data.start, 1001) } // let nowTime = this.timeTopTempData[0].AdvaDevicRhythm*all_num let nowTime = (capacity_arr[w].rhythm * all_num) / capacity_arr[w].mod let nowTime = (capacity_arr[w].rhythm * all_num) / capacity_arr[w].mod end_time = this.formSeconds(nowTime, data.start) data.end = end_time mistiming = this.compareTime(end_time, capacity_arr[w].end) if (mistiming >= 0) { data.number = ((new Date(data.end) - new Date(data.start)) * capacity_arr[w].mod) / capacity_arr[w].rhythm / 1000 data.real_number = ((new Date(data.end) - new Date(data.start)) * capacity_arr[w].mod) / capacity_arr[w].rhythm / 1000 data.number = ((new Date(data.end) - new Date(data.start)) * capacity_arr[w].mod) / capacity_arr[w].rhythm / 1000 data.real_number = ((new Date(data.end) - new Date(data.start)) * capacity_arr[w].mod) / capacity_arr[w].rhythm / 1000 data.number = data.number.toFixed(0) data.end_num = true @@ -1508,7 +1504,7 @@ } } }, // ç»è®¾å¤è½¬æ¢æ ¼å¼ // æ¶é´ä¼å ç»è®¾å¤è½¬æ¢æ ¼å¼ dataTransition() { this.schedulingData = [] const data = this.timeTopTempData @@ -1538,7 +1534,7 @@ // æå ¥äº§è½æ¶é´æ®µ pushTimes(newList, id, arr) { for (const i in newList) { if (newList[i].id == id) { if (newList[i].id === id) { arr.push(newList[i]) } } src/views/zzmx/chda.vue
@@ -460,12 +460,12 @@ content="" placement="top" > <div slot="content" style="width: 300px">å¼å¯åè¯¥ç©æå¿ é¡»åå ¥åºæ£éªæè´¨éå¤æåæ ¼åæè½åå ¥åºååè¯¥ç©æè´¨éç¶æä¸ºå¾ æ£ç¶ææ¯ä¸å è®¸å ¥åºçã</div> <div slot="content" style="width: 300px">å¼å¯åè¯¥ç©æå¿ é¡»åå ¥åæ£éªæè´¨éå¤æåæ ¼åæè½åå ¥åååè¯¥ç©æè´¨éç¶æä¸ºå¾ æ£ç¶ææ¯ä¸å è®¸å ¥åçã</div> <i class="el-icon-question" :style="{color:$store.state.settings.theme}" /> </el-tooltip> </div> <div style="margin: 0 3px">å ¥åºæ£éªï¼</div> <div style="margin: 0 3px">å ¥åæ£éªï¼</div> <el-switch v-model="isInCheck" /> @@ -478,7 +478,7 @@ content="" placement="top" > <div slot="content" style="width: 300px">å¼å¯åè¯¥ç©æå¿ é¡»ååºåºæ£éªæè´¨éå¤æåæ ¼åæè½ååºåºï¼ååè¯¥ç©æè´¨éç¶æä¸ºå¾ æ£ç¶ææ¯ä¸å 许åºåºçã</div> <div slot="content" style="width: 300px">å¼å¯åè¯¥ç©æå¿ é¡»ååºåæ£éªæè´¨éå¤æåæ ¼åæè½ååºåï¼ååè¯¥ç©æè´¨éç¶æä¸ºå¾ æ£ç¶ææ¯ä¸å 许åºåçã</div> <i class="el-icon-question" :style="{color:$store.state.settings.theme}" /> </el-tooltip> </div> @@ -837,8 +837,8 @@ warehousecode: '', // æå±ä»åºç¼ç stocktypecode: '', // åè´§ç±»åç¼ç materialtypecode: '', // ç©æç±»åç¼ç minstockqty: '', // æå°åºå maxstockqty: '', // æå¤§åºå minstockqty: null, // æå°åºå maxstockqty: null, // æå¤§åºå OperType: '' // æä½ç±»å }, uomArr: [], // å使°ç»ç¼ç @@ -1126,6 +1126,7 @@ }, // å¯¹è¯æ¡ç¡®è®¤ dialogVisibleConfirm() { console.log(this.dialogForm.minstockqty, 1) this.$refs.dialogForm.validate(valid => { if (valid) { this.$store.state.app.buttonIsDisabled = true @@ -1138,8 +1139,8 @@ warehousecode: this.dialogForm.warehousecode, stocktypecode: this.dialogForm.stocktypecode, materialtypecode: this.dialogForm.materialtypecode, minstockqty: this.dialogForm.minstockqty === '' ? 0 : this.dialogForm.minstockqty, maxstockqty: this.dialogForm.maxstockqty === '' ? 0 : this.dialogForm.maxstockqty, minstockqty: this.dialogForm.minstockqty === null ? 0 : this.dialogForm.minstockqty, maxstockqty: this.dialogForm.maxstockqty === null ? 0 : this.dialogForm.maxstockqty, OperType: this.operation === 'add' ? 'Add' : 'Update', is_batchno: this.isBatchNo ? 'Y' : 'N', is_fifo: this.isFifo ? 'Y' : 'N',