projects/mesxc-dy #368
@@ -1,20 +1,61 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Author: zwq
 | 
			
		||||
 * @Date: 2023-08-01 14:55:51
 | 
			
		||||
 * @LastEditors: zhp
 | 
			
		||||
 * @LastEditTime: 2024-04-07 16:25:19
 | 
			
		||||
 * @LastEditors: DY
 | 
			
		||||
 * @LastEditTime: 2024-04-25 14:42:53
 | 
			
		||||
 * @Description:
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
  <div class="app-container">
 | 
			
		||||
    <search-bar :formConfigs="formConfig" ref="searchBarForm" @headBtnClick="buttonClick" />
 | 
			
		||||
    <base-table :max-height="tableH" :table-props="tableProps" :page="listQuery.pageNo" :limit="listQuery.pageSize"
 | 
			
		||||
    <!-- <search-bar :formConfigs="formConfig" ref="searchBarForm" @headBtnClick="buttonClick" /> -->
 | 
			
		||||
    <el-form
 | 
			
		||||
			:inline="true"
 | 
			
		||||
			:model="listQuery"
 | 
			
		||||
			class="blueTip">
 | 
			
		||||
      <el-form-item label="合格证号" prop="certificateNumber">
 | 
			
		||||
				<el-input size="small" v-model="listQuery.certificateNumber" clearable placeholder="合格证号" @blur="countTimes(1)" @clear="countArray[0] = false"></el-input>
 | 
			
		||||
			</el-form-item>
 | 
			
		||||
      <el-form-item label="成品周转编号" prop="packagingCode">
 | 
			
		||||
				<el-input size="small" v-model="listQuery.packagingCode" clearable placeholder="成品周转编号" @blur="countTimes(2)" @clear="countArray[1] = false"></el-input>
 | 
			
		||||
			</el-form-item>
 | 
			
		||||
      <el-form-item label="原片周转编号" prop="glassCode">
 | 
			
		||||
				<el-input size="small" v-model="listQuery.glassCode" clearable placeholder="原片周转编号" @blur="countTimes(3)" @clear="countArray[2] = false"></el-input>
 | 
			
		||||
			</el-form-item>
 | 
			
		||||
			<el-form-item label="包装全检时间及产线" prop="val">
 | 
			
		||||
				<el-date-picker
 | 
			
		||||
					v-model="listQuery.timeVal"
 | 
			
		||||
					value-format="timestamp"
 | 
			
		||||
					type="datetimerange"
 | 
			
		||||
					size="small"
 | 
			
		||||
          clearable
 | 
			
		||||
					start-placeholder="包装全检开始时间"
 | 
			
		||||
          end-placeholder="包装全检结束时间"
 | 
			
		||||
          range-separator="-"
 | 
			
		||||
          @change="countTimes('timestamp3')"
 | 
			
		||||
        />
 | 
			
		||||
        <el-select v-model="listQuery.lineName" size="small" clearable filterable placeholder="产线" @change="countTimes('timestamp3')" style="margin-left: 5px">
 | 
			
		||||
          <el-option label="区域一" value="shanghai"></el-option>
 | 
			
		||||
        </el-select>
 | 
			
		||||
			</el-form-item>
 | 
			
		||||
      <el-form-item>
 | 
			
		||||
        <el-button
 | 
			
		||||
          v-if="this.$auth.hasPermi('monitoring:rawMaterial-traceability:query')"
 | 
			
		||||
          type="primary"
 | 
			
		||||
          size="small"
 | 
			
		||||
          @click="getList">
 | 
			
		||||
          查询
 | 
			
		||||
        </el-button>
 | 
			
		||||
      </el-form-item>
 | 
			
		||||
		</el-form>
 | 
			
		||||
    <!-- <base-table :max-height="tableH" :table-props="tableProps" :page="listQuery.pageNo" :limit="listQuery.pageSize"
 | 
			
		||||
      :table-data="list"> -->
 | 
			
		||||
    <base-table :max-height="tableH" :table-props="tableProps"
 | 
			
		||||
      :table-data="list">
 | 
			
		||||
      <!-- <method-btn v-if="tableBtn.length" slot="handleBtn" :width="120" label="操作" :method-list="tableBtn"
 | 
			
		||||
        @clickBtn="handleClick" /> -->
 | 
			
		||||
    </base-table>
 | 
			
		||||
    <pagination :limit.sync="listQuery.pageSize" :page.sync="listQuery.pageNo" :total="listQuery.total"
 | 
			
		||||
      @pagination="getList" />
 | 
			
		||||
    <!-- <pagination :limit.sync="listQuery.pageSize" :page.sync="listQuery.pageNo" :total="listQuery.total"
 | 
			
		||||
      @pagination="getList" /> -->
 | 
			
		||||
    <!-- <add-or-update v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getDataList" /> -->
 | 
			
		||||
  </div>
 | 
			
		||||
</template>
 | 
			
		||||
@@ -34,35 +75,17 @@ import {
 | 
			
		||||
} from '@/api/quality/rawMaterialTraceability';
 | 
			
		||||
 | 
			
		||||
const tableProps = [
 | 
			
		||||
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'orderName',
 | 
			
		||||
    label: '订单名称',
 | 
			
		||||
    prop: 'certificateNumber',
 | 
			
		||||
    label: '合格证号',
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'workOrderName',
 | 
			
		||||
    label: '工单名称',
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'palletNumber',
 | 
			
		||||
    label: '托号',
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'transportQuantity',
 | 
			
		||||
    label: '该托片数',
 | 
			
		||||
    prop: 'boxNumber',
 | 
			
		||||
    label: '箱号',
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'packagingCode',
 | 
			
		||||
    label: '包装条码',
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'originalGlassLineName',
 | 
			
		||||
    label: '原片产线',
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'originalGlassOutputTime',
 | 
			
		||||
    label: '原片下片时间',
 | 
			
		||||
    filter: parseTime
 | 
			
		||||
    label: '成品周转编号',
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'deepProcessingLineName',
 | 
			
		||||
@@ -74,10 +97,23 @@ const tableProps = [
 | 
			
		||||
    filter: parseTime
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'productionOutputTime',
 | 
			
		||||
    prop: 'deepProcessingOutputTime',
 | 
			
		||||
    label: '深加工下片时间',
 | 
			
		||||
    filter: parseTime
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'glassCode',
 | 
			
		||||
    label: '原片周转编码',
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'originalGlassLineName',
 | 
			
		||||
    label: '原片产线',
 | 
			
		||||
  },
 | 
			
		||||
  {
 | 
			
		||||
    prop: 'originalGlassOutputTime',
 | 
			
		||||
    label: '原片下片时间',
 | 
			
		||||
    filter: parseTime
 | 
			
		||||
  },
 | 
			
		||||
  // {
 | 
			
		||||
  //   prop: 'scrapDetail',
 | 
			
		||||
  //   label: '详情',
 | 
			
		||||
@@ -115,37 +151,70 @@ export default {
 | 
			
		||||
      // ].filter((v) => v),
 | 
			
		||||
      list: [],
 | 
			
		||||
      listQuery: {
 | 
			
		||||
        pageSize: 10,
 | 
			
		||||
        pageNo: 1,
 | 
			
		||||
        total: 0,
 | 
			
		||||
        workOrderId: undefined,
 | 
			
		||||
        startTime: undefined,
 | 
			
		||||
        endTime:undefined,
 | 
			
		||||
        // pageSize: 10,
 | 
			
		||||
        // pageNo: 1,
 | 
			
		||||
        // total: 0,
 | 
			
		||||
        certificateNumber: undefined,
 | 
			
		||||
        packagingCode: undefined,
 | 
			
		||||
        timeVal:undefined,
 | 
			
		||||
        lineName: undefined,
 | 
			
		||||
        glassCode: undefined
 | 
			
		||||
      },
 | 
			
		||||
      count: 0,
 | 
			
		||||
      useTime: false,
 | 
			
		||||
      countArray: [],
 | 
			
		||||
      // tableH: this.tableHeight(260),
 | 
			
		||||
      formConfig: [
 | 
			
		||||
        // {
 | 
			
		||||
        //   type: 'select',
 | 
			
		||||
        //   label: '工单',
 | 
			
		||||
        //   selectOptions: [],
 | 
			
		||||
        //   labelField: 'name',
 | 
			
		||||
        //   valueField: 'name',
 | 
			
		||||
        //   param: 'workOrderName',
 | 
			
		||||
        //   filterable: true
 | 
			
		||||
        // },
 | 
			
		||||
        {
 | 
			
		||||
          type: 'input',
 | 
			
		||||
          label: '合格证号',
 | 
			
		||||
          placeholder: '合格证号',
 | 
			
		||||
          param: 'certificateNumber',
 | 
			
		||||
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
          type: 'input',
 | 
			
		||||
          label: '成品周转编号',
 | 
			
		||||
          placeholder: '成品周转编号',
 | 
			
		||||
          param: 'packagingCode'
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
          type: 'datePicker',
 | 
			
		||||
          label: '包装全检时间及产线',
 | 
			
		||||
          dateType: 'datetimerange',
 | 
			
		||||
          format: 'timestamp',
 | 
			
		||||
          valueFormat: "timestamp",
 | 
			
		||||
          rangeSeparator: '-',
 | 
			
		||||
          startPlaceholder: '开始时间',
 | 
			
		||||
          endPlaceholder: '结束时间',
 | 
			
		||||
          param: 'timeVal',
 | 
			
		||||
          defaultSelect: [],
 | 
			
		||||
          width: 250
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
          type: 'select',
 | 
			
		||||
          label: '工单',
 | 
			
		||||
          label: '',
 | 
			
		||||
          selectOptions: [],
 | 
			
		||||
          labelField: 'name',
 | 
			
		||||
          valueField: 'name',
 | 
			
		||||
          param: 'workOrderName',
 | 
			
		||||
          param: 'lineName',
 | 
			
		||||
          filterable: true
 | 
			
		||||
        },
 | 
			
		||||
        // {
 | 
			
		||||
        //   type: 'datePicker',
 | 
			
		||||
        //   label: '时间段',
 | 
			
		||||
        //   dateType: 'daterange',
 | 
			
		||||
        //   format: 'yyyy-MM-dd',
 | 
			
		||||
        //   valueFormat: "yyyy-MM-dd",
 | 
			
		||||
        //   rangeSeparator: '-',
 | 
			
		||||
        //   startPlaceholder: '开始时间',
 | 
			
		||||
        //   endPlaceholder: '结束时间',
 | 
			
		||||
        //   param: 'timeVal',
 | 
			
		||||
        //   defaultSelect: [],
 | 
			
		||||
        //   width: 250
 | 
			
		||||
        // },
 | 
			
		||||
        {
 | 
			
		||||
          type: 'input',
 | 
			
		||||
          label: '原片周转编号',
 | 
			
		||||
          placeholder: '原片周转编号',
 | 
			
		||||
          param: 'glassCode'
 | 
			
		||||
        },
 | 
			
		||||
        {
 | 
			
		||||
 | 
			
		||||
          type: this.$auth.hasPermi('monitoring:rawMaterial-traceability:query') ? 'button' : '',
 | 
			
		||||
@@ -191,17 +260,58 @@ export default {
 | 
			
		||||
    // window.addEventListener('resize', () => {
 | 
			
		||||
    //   this.tableH = this.tableHeight(260)
 | 
			
		||||
    // })
 | 
			
		||||
    this.getList()
 | 
			
		||||
    this.count = 0
 | 
			
		||||
    this.useTime = false
 | 
			
		||||
    // this.getList()
 | 
			
		||||
    this.getDict()
 | 
			
		||||
  },
 | 
			
		||||
  methods: {
 | 
			
		||||
    countTimes(val) {
 | 
			
		||||
      if (val === 1) {
 | 
			
		||||
        let temp = this.listQuery?.certificateNumber !== ''
 | 
			
		||||
        this.countArray[0] = temp
 | 
			
		||||
        console.log('你好', this.countArray)
 | 
			
		||||
      }
 | 
			
		||||
      if (val && val !== '') {
 | 
			
		||||
        if (val === 'timestamp3') {
 | 
			
		||||
          if (this.listQuery.timeVal.length > 0 || this.listQuery?.lineName !== '') {
 | 
			
		||||
            this.useTime = true
 | 
			
		||||
          } else {
 | 
			
		||||
            this.useTime = false
 | 
			
		||||
          }
 | 
			
		||||
        } else {
 | 
			
		||||
          this.count ++
 | 
			
		||||
        }
 | 
			
		||||
      } else {
 | 
			
		||||
        this.count --
 | 
			
		||||
      }
 | 
			
		||||
    },
 | 
			
		||||
    getList() {
 | 
			
		||||
      // console.log('nihc ', this.count, this.listQuery)
 | 
			
		||||
      // if (this.count > 1) {
 | 
			
		||||
      //   this.$message.error('请选择一个条件进行查询!')
 | 
			
		||||
      // } else {
 | 
			
		||||
      //   if (this.useTime === true) {
 | 
			
		||||
      //     if (this.listQuery.timeVal.length > 0 && this.listQuery?.lineName !== '') {
 | 
			
		||||
      //       getOriginalGlassRetrace({ ...this.listQuery }).then(res => {
 | 
			
		||||
      //         console.log(res);
 | 
			
		||||
      //         this.list = res.data || []
 | 
			
		||||
      //         console.log(this.list);
 | 
			
		||||
      //         // this.listQuery.total = res.data.total || 0
 | 
			
		||||
      //       })
 | 
			
		||||
      //     } else {
 | 
			
		||||
      //       this.$message.error('选择包装全检时,时间和产线必填!')
 | 
			
		||||
      //     }
 | 
			
		||||
      //   } else {
 | 
			
		||||
      getOriginalGlassRetrace({ ...this.listQuery }).then(res => {
 | 
			
		||||
        console.log(res);
 | 
			
		||||
        this.list = res.data || []
 | 
			
		||||
        console.log(this.list);
 | 
			
		||||
        // this.listQuery.total = res.data.total || 0
 | 
			
		||||
      })
 | 
			
		||||
      //   }
 | 
			
		||||
      // }
 | 
			
		||||
      
 | 
			
		||||
    },
 | 
			
		||||
    getDict() {
 | 
			
		||||
      // 获取产品的属性列表
 | 
			
		||||
@@ -243,7 +353,7 @@ export default {
 | 
			
		||||
    buttonClick(val) {
 | 
			
		||||
      console.log(val)
 | 
			
		||||
      if (val.btnName === 'search') {
 | 
			
		||||
        this.listQuery.workOrderName = val.workOrderName ? val.workOrderName :undefined
 | 
			
		||||
        this.listQuery.certificateNumber = val.certificateNumber ? val.certificateNumber :undefined
 | 
			
		||||
        // this.queryParams.status = val.status
 | 
			
		||||
        // if (val.timeVal && val.timeVal.length != 0 ) {
 | 
			
		||||
        // this.listQuery.startTime =  val.timeVal[0] + ' 00:00:00'
 | 
			
		||||
@@ -272,3 +382,17 @@ export default {
 | 
			
		||||
  },
 | 
			
		||||
};
 | 
			
		||||
</script>
 | 
			
		||||
 | 
			
		||||
<style scoped>
 | 
			
		||||
.blueTip::before {
 | 
			
		||||
	display: inline-block;
 | 
			
		||||
	content: '';
 | 
			
		||||
	width: 4px;
 | 
			
		||||
	height: 18px;
 | 
			
		||||
	background: #0b58ff;
 | 
			
		||||
	border-radius: 1px;
 | 
			
		||||
	margin-right: 8px;
 | 
			
		||||
	margin-top: 8px;
 | 
			
		||||
	margin-left: 16px;
 | 
			
		||||
}
 | 
			
		||||
</style>
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Author: Do not edit
 | 
			
		||||
 * @Date: 2024-04-22 15:49:56
 | 
			
		||||
 * @LastEditTime: 2024-04-25 09:53:41
 | 
			
		||||
 * @LastEditTime: 2024-04-25 14:30:44
 | 
			
		||||
 * @LastEditors: DY
 | 
			
		||||
 * @Description: 
 | 
			
		||||
-->
 | 
			
		||||
@@ -12,11 +12,11 @@
 | 
			
		||||
			:model="listQuery"
 | 
			
		||||
			class="blueTip">
 | 
			
		||||
			<el-form-item
 | 
			
		||||
				label="月"
 | 
			
		||||
				label="月份"
 | 
			
		||||
				prop="reportTime">
 | 
			
		||||
				<el-date-picker
 | 
			
		||||
					v-model="listQuery.time"
 | 
			
		||||
					value-format="yyyy-MM-dd HH:mm:ss"
 | 
			
		||||
					value-format="timestamp"
 | 
			
		||||
					type="month"
 | 
			
		||||
					size="small"
 | 
			
		||||
					placeholder="选择月"></el-date-picker>
 | 
			
		||||
@@ -94,8 +94,8 @@ export default {
 | 
			
		||||
    now.setHours(0, 0, 0, 0)
 | 
			
		||||
    now.setDate(1)
 | 
			
		||||
    let startOfMonth = now.getTime()
 | 
			
		||||
    let firstDayOfMonth = new Date(startOfMonth)
 | 
			
		||||
    this.listQuery.time = parseTime(firstDayOfMonth)
 | 
			
		||||
    // let firstDayOfMonth = new Date(startOfMonth)
 | 
			
		||||
    this.listQuery.time = startOfMonth
 | 
			
		||||
	},
 | 
			
		||||
	mounted() {
 | 
			
		||||
		this.getList();
 | 
			
		||||
 
 | 
			
		||||
@@ -1,14 +1,14 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Author: Do not edit
 | 
			
		||||
 * @Date: 2024-04-22 15:49:56
 | 
			
		||||
 * @LastEditTime: 2024-04-24 15:28:44
 | 
			
		||||
 * @LastEditTime: 2024-04-25 14:31:53
 | 
			
		||||
 * @LastEditors: DY
 | 
			
		||||
 * @Description: 
 | 
			
		||||
-->
 | 
			
		||||
<template>
 | 
			
		||||
  <div class="weekly">
 | 
			
		||||
    <el-form :inline="true" :model="listQuery" class="blueTip">
 | 
			
		||||
      <el-form-item>
 | 
			
		||||
      <el-form-item label="周" prop="reportTime">
 | 
			
		||||
        <el-date-picker v-model="reportTime" type="week" size="small" @change="changeTime"
 | 
			
		||||
          :picker-options="{firstDayOfWeek: 4}" :format="'yyyy 第 WW 周' + '\u3000' + startTimeStamp + '-' + endTimeStamp"
 | 
			
		||||
          style="width: 350px" placeholder="选择周">
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
<!--
 | 
			
		||||
 * @Author: Do not edit
 | 
			
		||||
 * @Date: 2024-04-22 15:49:56
 | 
			
		||||
 * @LastEditTime: 2024-04-25 09:54:39
 | 
			
		||||
 * @LastEditTime: 2024-04-25 11:14:34
 | 
			
		||||
 * @LastEditors: DY
 | 
			
		||||
 * @Description: 
 | 
			
		||||
-->
 | 
			
		||||
@@ -12,11 +12,11 @@
 | 
			
		||||
			:model="listQuery"
 | 
			
		||||
			class="blueTip">
 | 
			
		||||
			<el-form-item
 | 
			
		||||
				label="月"
 | 
			
		||||
				label="年份"
 | 
			
		||||
				prop="reportTime">
 | 
			
		||||
				<el-date-picker
 | 
			
		||||
					v-model="listQuery.time"
 | 
			
		||||
					value-format="yyyy-MM-dd HH:mm:ss"
 | 
			
		||||
					value-format="timestamp"
 | 
			
		||||
					type="year"
 | 
			
		||||
					size="small"
 | 
			
		||||
					placeholder="选择年"></el-date-picker>
 | 
			
		||||
@@ -93,9 +93,11 @@ export default {
 | 
			
		||||
		let now = new Date()
 | 
			
		||||
    now.setHours(0, 0, 0, 0)
 | 
			
		||||
    now.setDate(1)
 | 
			
		||||
		now.setMonth(0)
 | 
			
		||||
    let startOfMonth = now.getTime()
 | 
			
		||||
    let firstDayOfMonth = new Date(startOfMonth)
 | 
			
		||||
    this.listQuery.time = parseTime(firstDayOfMonth)
 | 
			
		||||
    // let firstDayOfMonth = new Date(startOfMonth)
 | 
			
		||||
		// console.log('看看', parseTime(firstDayOfMonth))
 | 
			
		||||
    this.listQuery.time = startOfMonth
 | 
			
		||||
	},
 | 
			
		||||
	mounted() {
 | 
			
		||||
		this.getList();
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user