| | |
| | | <el-input v-model="form.partspec" style="width: 200px" placeholder="请输入" /> |
| | | </el-form-item> |
| | | |
| | | <div v-show="isExpandForm" style="display:flex;justify-content: center;align-items: center;position: relative"> |
| | | |
| | | <el-popover |
| | | v-model="cycleTimePopoverIsShow" |
| | | placement="bottom" |
| | | width="500" |
| | | trigger="hover" |
| | | @show="cycleTimePopoverIsShow=true" |
| | | > |
| | | <div class="popoverList"> |
| | | <div class="popoverListItem"> |
| | | <div style="width: 40px">周</div> |
| | | <el-button |
| | | :class="cycleTime===1?'selectButton':''" |
| | | @click="cycleTimeClick(1)" |
| | | >本 周</el-button> |
| | | <el-button |
| | | :class="cycleTime===2?'selectButton':''" |
| | | @click="cycleTimeClick(2)" |
| | | >上 周</el-button> |
| | | </div> |
| | | <div class="popoverListItem"> |
| | | <div style="width: 40px">月</div> |
| | | <el-button |
| | | :class="cycleTime===3?'selectButton':''" |
| | | @click="cycleTimeClick(3)" |
| | | >本 月</el-button> |
| | | <el-button |
| | | :class="cycleTime===4?'selectButton':''" |
| | | @click="cycleTimeClick(4)" |
| | | >上 月</el-button> |
| | | </div> |
| | | <div class="popoverListItem"> |
| | | <div style="width: 40px">季</div> |
| | | <el-button |
| | | :class="cycleTime===5?'selectButton':''" |
| | | @click="cycleTimeClick(5)" |
| | | >本 季</el-button> |
| | | <el-button |
| | | :class="cycleTime===6?'selectButton':''" |
| | | @click="cycleTimeClick(6)" |
| | | >上 季</el-button> |
| | | </div> |
| | | <div class="popoverListItem"> |
| | | <div style="width: 40px">年</div> |
| | | <el-button |
| | | :class="cycleTime===7?'selectButton':''" |
| | | @click="cycleTimeClick(7)" |
| | | >本 年</el-button> |
| | | <el-button |
| | | :class="cycleTime===8?'selectButton':''" |
| | | @click="cycleTimeClick(8)" |
| | | >上 年</el-button> |
| | | </div> |
| | | <div class="popoverListItem"> |
| | | <div style="width: 40px">其他</div> |
| | | <el-button |
| | | :class="cycleTime===9?'selectButton':''" |
| | | @click="cycleTimeClick(9)" |
| | | >近3天</el-button> |
| | | <el-button |
| | | :class="cycleTime===10?'selectButton':''" |
| | | @click="cycleTimeClick(10)" |
| | | >近7天</el-button> |
| | | <el-button |
| | | :class="cycleTime===11?'selectButton':''" |
| | | @click="cycleTimeClick(11)" |
| | | >近14天</el-button> |
| | | <el-button |
| | | :class="cycleTime===12?'selectButton':''" |
| | | @click="cycleTimeClick(12)" |
| | | >今 天</el-button> |
| | | <el-button |
| | | :class="cycleTime===13?'selectButton':''" |
| | | @click="cycleTimeClick(13)" |
| | | >昨 天</el-button> |
| | | </div> |
| | | |
| | | </div> |
| | | |
| | | <div |
| | | slot="reference" |
| | | style="width:15px;height:15px;background:transparent; |
| | | cursor: pointer;position:absolute;z-index: 100;left: 110px;top:13px" |
| | | /> |
| | | |
| | | </el-popover> |
| | | |
| | | <el-popover |
| | | placement="bottom" |
| | | width="100" |
| | | trigger="hover" |
| | | :value="datatypePopoverIsShow" |
| | | @show="datatypePopoverIsShow=true" |
| | | > |
| | | <div class="popoverList"> |
| | | <div class="popoverListItem2"> |
| | | <el-button |
| | | :class="form.datatype==='PS'?'selectButton':''" |
| | | @click="form.datatype='PS';datatypePopoverIsShow=false" |
| | | >预计开工日期</el-button> |
| | | </div> |
| | | <div class="popoverListItem2"> |
| | | <el-button |
| | | :class="form.datatype==='PE'?'selectButton':''" |
| | | @click="form.datatype='PE';datatypePopoverIsShow=false" |
| | | >预计完工日期</el-button> |
| | | </div> |
| | | <div class="popoverListItem2"> |
| | | <el-button |
| | | :class="form.datatype==='ED'?'selectButton':''" |
| | | @click="form.datatype='ED';datatypePopoverIsShow=false" |
| | | >预计交付日期</el-button> |
| | | </div> |
| | | </div> |
| | | |
| | | <div |
| | | slot="reference" |
| | | style="color: #a7a7a7; |
| | | font-weight: 600; |
| | | font-family:'Helvetica Neue, Helvetica, PingFang SC, Hiragino Sans GB, Microsoft YaHei, Arial, sans-serif'; |
| | | font-size:14px;width: 100px;text-align: center" |
| | | > {{ form.datatype==='PS'? '预计开工日期':form.datatype==='PE'?'预计完工日期':'预计交付日期' }} |
| | | </div> |
| | | |
| | | </el-popover> |
| | | |
| | | <el-date-picker |
| | | v-model="form.timeValue" |
| | | type="daterange" |
| | | range-separator="~" |
| | | class="timeMini" |
| | | size="mini" |
| | | style="width: 200px;display: flex;line-height: 34px;height: 34px;margin-right: 10px" |
| | | :clearable="false" |
| | | start-placeholder="开始日期" |
| | | end-placeholder="结束日期" |
| | | value-format="yyyy-MM-dd" |
| | | @change="pickerChange" |
| | | /> |
| | | <!-- :picker-options="pickerOptions"--> |
| | | </div> |
| | | |
| | | <!-- <el-form-item--> |
| | | <!-- v-show="isExpandForm"--> |
| | | <!-- label="预计开工时间"--> |
| | |
| | | <!-- >--> |
| | | <!-- <el-date-picker--> |
| | | <!-- v-model="form.paystartdate"--> |
| | | <!-- type="daterange"--> |
| | | <!-- type="datetimerange"--> |
| | | <!-- range-separator="~"--> |
| | | <!-- class="timeMini"--> |
| | | <!-- size="mini"--> |
| | |
| | | <!-- :clearable="false"--> |
| | | <!-- start-placeholder="开始日期"--> |
| | | <!-- end-placeholder="结束日期"--> |
| | | <!-- :picker-options="pickerOptions"--> |
| | | <!-- value-format="yyyy-MM-dd"--> |
| | | <!-- @change="pickerChange"--> |
| | | <!-- />--> |
| | | <!-- </el-form-item>--> |
| | | |
| | | <!-- <el-form-item--> |
| | | <!-- v-show="isExpandForm"--> |
| | | <!-- label="预计完工时间"--> |
| | |
| | | <!-- </template>--> |
| | | <!-- </el-table-column>--> |
| | | <el-table-column |
| | | prop="planenddate" |
| | | label="预计开工日期" |
| | | sortable="custom" |
| | | show-tooltip-when-overflow |
| | | width="130" |
| | | > |
| | | <template slot-scope="{row}"> |
| | | <div v-if="row.planenddate">{{ row.planenddate.substring(0, 11) }}</div> |
| | | <div v-else>/</div> |
| | | </template> |
| | | </el-table-column> |
| | | |
| | | <el-table-column |
| | | prop="planstartdate" |
| | | label="预计完工日期" |
| | | sortable="custom" |
| | | show-tooltip-when-overflow |
| | | width="130" |
| | | > |
| | | <template slot-scope="{row}"> |
| | | <div v-if="row.planstartdate">{{ row.planstartdate.substring(0, 11) }}</div> |
| | | <div v-else>/</div> |
| | | </template> |
| | | </el-table-column> |
| | | |
| | | <el-table-column |
| | | prop="saleOrderDeliveryDate" |
| | | label="预计交付日期" |
| | | sortable="custom" |
| | |
| | | <div v-else>/</div> |
| | | </template> |
| | | </el-table-column> |
| | | |
| | | <el-table-column |
| | | show-tooltip-when-overflow |
| | | prop="createuser" |
| | |
| | | } from '@/api/WorkOrder' |
| | | import { SeaveSearchErpOrder } from '@/api/ErpSyncMes' |
| | | import { PrentOrganizationNoCompany } from '@/api/GeneralBasicData' |
| | | import moment from 'moment' |
| | | |
| | | const SER_HZ = /^[\u4e00-\u9fa5]+$/ |
| | | export default { |
| | |
| | | paystartdate: '', // 预计开工时间 |
| | | payenddate: '', // 预计完工时间 |
| | | createdate: '', // 创建时间 |
| | | |
| | | datatype: 'ED', // 时间类型 |
| | | timeValue: [], // 时间值 |
| | | |
| | | prop: 'wo', // 排序字段 |
| | | order: 'desc', // 排序字段 |
| | | page: 1, // 第几页 |
| | | rows: 20 // 每页多少条 |
| | | }, |
| | | datatypePopoverIsShow: false, |
| | | cycleTime: null, // 时间周期 |
| | | cycleTimePopoverIsShow: false, |
| | | erporderstusArr: [ |
| | | { code: 'NEW', name: '新订单' }, |
| | | { code: 'CREATING', name: '部分下达' }, |
| | |
| | | |
| | | }, |
| | | pickerOptions: { |
| | | disabledDate(time) { |
| | | return time.getTime() < Date.now() - 8.64e7 |
| | | } |
| | | shortcuts: [ |
| | | { |
| | | text: '当天', |
| | | onClick(picker) { |
| | | const end = new Date() |
| | | const start = new Date() |
| | | start.setTime(start.getTime()) |
| | | picker.$emit('pick', [start, end]) |
| | | } |
| | | }, { |
| | | text: '近三天', |
| | | onClick(picker) { |
| | | const end = new Date() |
| | | const start = new Date() |
| | | start.setTime(start.getTime() - 3600 * 1000 * 24 * 3) |
| | | console.log([start, end], '[start, end]') |
| | | picker.$emit('pick', [start, end]) |
| | | } |
| | | }, { |
| | | text: '近一周', |
| | | onClick(picker) { |
| | | const end = new Date() |
| | | const start = new Date() |
| | | start.setTime(start.getTime() - 3600 * 1000 * 24 * 7) |
| | | picker.$emit('pick', [start, end]) |
| | | } |
| | | }, { |
| | | text: '近一个月', |
| | | onClick(picker) { |
| | | const end = new Date() |
| | | const start = new Date() |
| | | start.setTime(start.getTime() - 3600 * 1000 * 24 * 30) |
| | | picker.$emit('pick', [start, end]) |
| | | } |
| | | }, { |
| | | text: '近三个月', |
| | | onClick(picker) { |
| | | const end = new Date() |
| | | const start = new Date() |
| | | start.setTime(start.getTime() - 3600 * 1000 * 24 * 90) |
| | | picker.$emit('pick', [start, end]) |
| | | } |
| | | }] |
| | | }, |
| | | multipleSelection: [] |
| | | |
| | |
| | | this.getHeight() |
| | | }, |
| | | methods: { |
| | | |
| | | cycleTimeClick(value) { |
| | | this.cycleTimePopoverIsShow = false |
| | | |
| | | const date = new Date() |
| | | const cWeek = moment(date).format('E') |
| | | let newDate = [] |
| | | switch (value) { |
| | | case 1:// 本周 |
| | | newDate = [ |
| | | moment(date).subtract(Number(cWeek) - 1, 'days').format('YYYY-MM-DD'), |
| | | moment(moment().week(moment().week()).endOf('week').valueOf()).format('YYYY-MM-DD') |
| | | ] |
| | | break |
| | | case 2:// 上周 |
| | | newDate = [ |
| | | moment(moment().add(-13, 'days').startOf('day').valueOf()).format('YYYY-MM-DD'), |
| | | moment(moment().add(-6, 'days').startOf('day').valueOf()).format('YYYY-MM-DD') |
| | | ] |
| | | break |
| | | |
| | | case 3:// 本月 |
| | | newDate = [ |
| | | moment(moment().month(moment().month()).startOf('month').valueOf()).format('YYYY-MM-DD'), |
| | | moment(moment().month(moment().month()).endOf('month').valueOf()).format('YYYY-MM-DD') |
| | | ] |
| | | break |
| | | |
| | | case 4:// 上月 |
| | | newDate = [ |
| | | moment(moment().month(moment().month() - 1).startOf('month').valueOf()).format('YYYY-MM-DD'), |
| | | moment(moment().month(moment().month()).startOf('month').valueOf()).add(-1, 'days').format('YYYY-MM-DD') |
| | | ] |
| | | break |
| | | |
| | | case 5:// 本季度 |
| | | newDate = [ |
| | | moment(moment().quarter(moment().quarter()).startOf('quarter').valueOf()).format('YYYY-MM-DD'), |
| | | moment(moment().quarter(moment().quarter()).endOf('quarter').valueOf()).format('YYYY-MM-DD') |
| | | ] |
| | | break |
| | | |
| | | case 6:// 上季度 |
| | | newDate = [ |
| | | moment(moment().quarter(moment().quarter() - 1).startOf('quarter').valueOf()).format('YYYY-MM-DD'), |
| | | moment(moment().quarter(moment().quarter() - 1).endOf('quarter').valueOf()).format('YYYY-MM-DD') |
| | | ] |
| | | break |
| | | |
| | | case 7:// 本年 |
| | | newDate = [ |
| | | moment(moment().year(moment().year()).startOf('year').valueOf()).format('YYYY-MM-DD'), |
| | | moment(moment().year(moment().year()).endOf('year').valueOf()).format('YYYY-MM-DD') |
| | | ] |
| | | break |
| | | |
| | | case 8:// 去年 |
| | | newDate = [ |
| | | moment(moment().year(moment().year() - 1).startOf('year').valueOf()).format('YYYY-MM-DD'), |
| | | moment(moment().year(moment().year() - 1).endOf('year').valueOf()).format('YYYY-MM-DD') |
| | | ] |
| | | break |
| | | |
| | | case 9:// 近3天 |
| | | newDate = [ |
| | | moment(moment().add(-2, 'days').startOf('day').valueOf()).format('YYYY-MM-DD'), |
| | | moment(moment().startOf('day').valueOf()).format('YYYY-MM-DD') |
| | | ] |
| | | break |
| | | case 10:// 近7天 |
| | | newDate = [ |
| | | moment(moment().add(-6, 'days').startOf('day').valueOf()).format('YYYY-MM-DD'), |
| | | moment(moment().startOf('day').valueOf()).format('YYYY-MM-DD') |
| | | ] |
| | | break |
| | | case 11:// 近14天 |
| | | newDate = [ |
| | | moment(moment().add(-13, 'days').startOf('day').valueOf()).format('YYYY-MM-DD'), |
| | | moment(moment().startOf('day').valueOf()).format('YYYY-MM-DD') |
| | | ] |
| | | break |
| | | case 12:// 今天 |
| | | newDate = [ |
| | | moment(moment().startOf('day').valueOf()).format('YYYY-MM-DD'), |
| | | moment(moment().startOf('day').valueOf()).format('YYYY-MM-DD') |
| | | ] |
| | | break |
| | | case 13:// 昨天 |
| | | newDate = [ |
| | | moment(moment().add(-1, 'days').startOf('day').valueOf()).format('YYYY-MM-DD'), |
| | | moment(moment().startOf('day').valueOf()).format('YYYY-MM-DD') |
| | | ] |
| | | break |
| | | } |
| | | |
| | | this.form.timeValue = newDate |
| | | this.cycleTime = value |
| | | }, |
| | | |
| | | pickerChange(value) { |
| | | console.log(value, 123) |
| | | this.cycleTime = null |
| | | }, |
| | | |
| | | async getPrentOrganizationNoCompany() { |
| | | const { data: res } = await PrentOrganizationNoCompany() |
| | | this.wkshopcodeArr = res |
| | | }, |
| | | async getErpOrderSearch() { |
| | | console.log(this.form, 1) |
| | | let tempDate2 = this.form.paystartdate |
| | | if (tempDate2.length > 0) { |
| | | tempDate2 = handleDatetime(tempDate2[0]) + '~' + handleDatetime(tempDate2[1]) |
| | | } |
| | | |
| | | let tempDate = this.form.payenddate |
| | | if (tempDate.length > 0) { |
| | | tempDate = handleDatetime(tempDate[0]) + '~' + handleDatetime(tempDate[1]) |
| | | } |
| | | // let tempDate2 = this.form.paystartdate |
| | | // if (tempDate2.length > 0) { |
| | | // tempDate2 = handleDatetime(tempDate2[0]) + '~' + handleDatetime(tempDate2[1]) |
| | | // } |
| | | // |
| | | // let tempDate = this.form.payenddate |
| | | // if (tempDate.length > 0) { |
| | | // tempDate = handleDatetime(tempDate[0]) + '~' + handleDatetime(tempDate[1]) |
| | | // } |
| | | |
| | | const data = { |
| | | wkshopcode: this.form.wkshopcode, |
| | | |
| | | erporderstus: this.form.erporderstus, // 订单状态码 |
| | | wkshopcode: this.form.wkshopcode, // 车间编码 |
| | | erpordercode: this.form.erpordercode, // 订单编号 |
| | | saleordercode: this.form.saleordercode, // 销售单号 |
| | | |
| | | partcode: this.form.partcode, // 产品编码 |
| | | partname: this.form.partname, // 产品名称 |
| | | partspec: this.form.partspec, // 产品规格 |
| | | paystartdate: tempDate2, // 交付时间 |
| | | payenddate: tempDate, // 交付时间 |
| | | saleordercode: this.form.saleordercode, |
| | | |
| | | datatype: this.form.datatype, // 日期类型(计划开工(PS)、计划完工(PE)、预计交付(ED)) |
| | | searchdate: this.form.timeValue.join('~'), // 时间段 |
| | | // paystartdate: tempDate2, // 交付时间 |
| | | // payenddate: tempDate, // 交付时间 |
| | | |
| | | creatuser: this.form.creatuser, // 创建人员 |
| | | // createdate: this.form.createdate.toString().length > 0 ? handleDatetime(this.form.createdate) : '', // 创建时间 |
| | | |
| | | prop: this.form.prop, // 排序字段 |
| | | order: this.form.order, // 排序字段 |
| | |
| | | this.form.creatuser = '' |
| | | this.form.erpordercode = '' |
| | | this.form.createdate = '' |
| | | |
| | | this.form.timeValue = [] |
| | | this.cycleTime = null |
| | | this.getErpOrderSearch() |
| | | }, |
| | | // 单选框选中获取当前行信息 |
| | |
| | | <style lang="scss" scoped> |
| | | $main_color: #42b983; |
| | | |
| | | .popoverList { |
| | | display: flex; |
| | | flex-direction: column; |
| | | } |
| | | |
| | | .popoverListItem { |
| | | height: 50px; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: flex-start; |
| | | } |
| | | |
| | | .popoverListItem2 { |
| | | height: 40px; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: flex-start; |
| | | } |
| | | |
| | | .selectButton { |
| | | color: #42B983; |
| | | } |
| | | |
| | | ::v-deep .el-range__icon { |
| | | line-height: 28px !important; |
| | | } |
| | |
| | | margin-top: -3px; |
| | | } |
| | | } |
| | | ::v-deep .el-icon-delete { |
| | | |
| | | ::v-deep .el-icon-delete { |
| | | cursor: pointer; |
| | | margin-right: 0px !important; |
| | | } |
| | |
| | | .el-loading-text { |
| | | font-size: 26px !important; |
| | | } |
| | | |
| | | .el-picker-panel__footer { |
| | | display: flex !important; |
| | | justify-content: flex-end !important; |
| | | } |
| | | |
| | | </style> |
| | | |