loulijun2021
2023-06-17 ff76b3ed3494474e9301c49cf635f1553d49ecc5
1.生产管理、报表管理引入分车间概念
已修改13个文件
929 ■■■■ 文件已修改
src/api/produceManager.js 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/qualityManager.js 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/basicSettings/userList.vue 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/produceManager/produceStartOrder.vue 105 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/qualityManager/processCheckItem.vue 56 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/qualityManager/qualityPlaning.vue 91 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/reportManager/defectDetailList.vue 114 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/reportManager/groupSalaryList.vue 131 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/reportManager/installationLampList.vue 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/reportManager/personSalaryList.vue 129 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/reportManager/produceSchedule.vue 41 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/reportManager/repairDetailList.vue 109 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/reportManager/subcontractingOperation.vue 109 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/produceManager.js
@@ -118,10 +118,11 @@
}
// 生产开报工:报工时获取生产班组下拉框
export function MesOrderStepReportSelectUserGroup() {
export function MesOrderStepReportSelectUserGroup(data) {
  return request({
    url: 'ProductionManagement/MesOrderStepReportSelectUserGroup',
    method: 'get'
    method: 'get',
    params: data
  })
}
src/api/qualityManager.js
@@ -46,10 +46,11 @@
}
// 工序检验标准新增、编辑获取检验项目下拉列表
export function StepCheckItemSelect() {
export function StepCheckItemSelect(data) {
  return request({
    url: 'QualityManagement/StepCheckItemSelect',
    method: 'get'
    method: 'get',
    params: data
  })
}
src/views/basicSettings/userList.vue
@@ -323,7 +323,7 @@
                  />
                </el-tooltip>
                <el-tooltip v-del-tab-index class="item" effect="dark" content="删除" placement="top">
                  <i :style="{color:$store.state.settings.theme}" class="el-icon-delete" @click="del(row.id)" />
                  <i :style="{color:$store.state.settings.theme}" class="el-icon-delete" @click="del(row)" />
                </el-tooltip>
              </div>
            </template>
@@ -1146,13 +1146,16 @@
      this.getUserOrganization2()
    },
    // 删除按钮
    async del(id) {
    async del(row) {
      if (getCookie('admin') === row.usercode) {
        return this.$message.info('无法删除用户本身!')
      }
      this.$confirm('是否确认删除?', '提示', {
        confirmButtonText: '确定',
        cancelButtonText: '取消',
        type: 'warning'
      }).then(() => {
        DeleteUser({ Userid: id }).then(res => {
        DeleteUser({ Userid: row.id }).then(res => {
          if (res.code === '200') {
            this.$message.success('删除成功!')
            if (this.form.page > 1 && this.tableData.length === 1) {
src/views/produceManager/produceStartOrder.vue
@@ -542,7 +542,7 @@
          <div style="width: 200px">{{ dialogForm.partname }}</div>
        </el-form-item>
        <el-form-item label="产品规格:" style="margin: 0 10px 0 0">
          <div style="width: 200px">{{ dialogForm.partspec }}</div>
          <div style="width: 200px">{{ dialogForm.partspec?dialogForm.partspec:'/' }}</div>
        </el-form-item>
        <el-form-item label="当前工序:" style="margin: 0 10px 0 0">
          <div style="width: 200px">{{ dialogForm.stepname }}</div>
@@ -594,6 +594,14 @@
          <div style="width: 200px">{{ dialogForm.nextstepname }}</div>
        </el-form-item>
        <el-form-item v-if="dialogTitle==='自制报工'" label="车间名称:">
          <div style="width: 200px">{{ dialogForm.wkshopname }}</div>
        </el-form-item>
        <el-form-item v-if="dialogTitle==='自制报工'" label="设备名称:" style="margin: 0 10px 0 0">
          <div style="width: 200px">{{ dialogForm.eqpname }}</div>
        </el-form-item>
        <el-form-item v-if="dialogTitle==='自制报工'" prop="reckway" label="计件方式:">
          <el-radio-group v-model="dialogForm.reckway" style="width: 200px;" @change="reckwayChange">
@@ -634,20 +642,20 @@
          </el-select>
        </el-form-item>
        <el-form-item v-if="dialogTitle==='自制报工'" label="设备名称:" prop="eqpcode">
          <el-select
            v-model="dialogForm.eqpcode"
            style="width: 200px;"
            placeholder="请选择"
          >
            <el-option
              v-for="item in ZZeqpArr"
              :key="item.code"
              :label="item.name"
              :value="item.code"
            />
          </el-select>
        </el-form-item>
        <!--        <el-form-item v-if="dialogTitle==='自制报工'" label="设备名称:" prop="eqpcode">-->
        <!--          <el-select-->
        <!--            v-model="dialogForm.eqpcode"-->
        <!--            style="width: 200px;"-->
        <!--            placeholder="请选择"-->
        <!--          >-->
        <!--            <el-option-->
        <!--              v-for="item in ZZeqpArr"-->
        <!--              :key="item.code"-->
        <!--              :label="item.name"-->
        <!--              :value="item.code"-->
        <!--            />-->
        <!--          </el-select>-->
        <!--        </el-form-item>-->
        <el-form-item v-if="dialogTitle==='自制报工'" label="合格数量:" prop="startqty">
          <el-input v-model="dialogForm.startqty" oninput="value=value.replace(/[^0-9.]/g,'')" style="width: 200px;" />
          <!--          <el-input v-model="dialogForm.noreportqty" oninput="value=value.replace(/[^0-9.]/g,'')" style="width: 200px;" />-->
@@ -784,7 +792,7 @@
            :page.sync="Userform.page"
            :limit.sync="Userform.rows"
            align="right"
            layout="total,prev, pager, next,sizes,jumper"
            layout="total,prev, pager, next,sizes"
            popper-class="select_bottom"
            @pagination="getMesOrderStepSearch"
          />
@@ -851,12 +859,13 @@
            v-model="dialogForm.wxcode"
            style="width: 200px;"
            placeholder="请选择"
            @change="wxCodeChange"
          >
            <el-option
              v-for="item in WXouterprovide"
              :key="item.code"
              :label="item.name"
              :value="item.code"
              v-for="item in WXouterprovide2"
              :key="item.Name"
              :label="item.tp"
              :value="item.Name"
            />
          </el-select>
        </el-form-item>
@@ -939,6 +948,32 @@
          <el-input v-model="dialogForm.remarks" type="textarea" style="width: 200px;" />
        </el-form-item>
      </el-form>
      <div v-if="dialogTitle==='外协收料'" style="display: flex;flex-direction: column">
        <!--明天接着写外协收料,供应商对应的已收未收详情-->
        <div style="height: 30px;margin-left:30px;">
          可收料供应商:
        </div>
        <div
          v-for="(item,index) in dialogForm.list"
          v-if="item.acceptQty>0"
          :key="item.Name"
          style="display: flex;line-height: 26px;height: 26px;margin-left:30px;align-items: center"
        >
          <div
            style="color: #fff;width: 22px;height: 22px;display: flex;justify-content: center;align-items: center;border-radius: 50%"
            :style="{backgroundColor:$store.state.settings.theme}"
          >{{ index+1 }}</div>
          <div style="margin-left:30px;width: 160px;" class="ellipsis">
            {{ item.tp }}
          </div>
          <div style="margin-left:30px;">
            可收数量:{{ item.acceptQty }}
          </div>
        </div>
      </div>
      <span slot="footer" class="dialog-footer">
        <div class="footerButton">
          <el-button v-waves @click="dialogVisibleCancel">取 消</el-button>
@@ -1098,7 +1133,7 @@
          <div style="width: 200px">{{ badDialogForm.partname }}</div>
        </el-form-item>
        <el-form-item label="产品规格:">
          <div style="width: 200px">{{ badDialogForm.partspec }}</div>
          <div style="width: 200px">{{ badDialogForm.partspec?badDialogForm.partspec:'/' }}</div>
        </el-form-item>
        <el-form-item label="当前工序:">
          <div style="width: 200px">{{ badDialogForm.stepname }}</div>
@@ -1380,6 +1415,7 @@
      ZZeqpArr: [], // 自制设备名称
      badArr: [], // 不良原因数组
      WXouterprovide: [], // 外协供方数组
      WXouterprovide2: [], // 外协供方收料数组
      WXoutuser: [], // 发料人员数组
      userTableData: [], // 人员列表
      UserTotal: 0,
@@ -1821,6 +1857,12 @@
        this.dialogForm.startqtySum = obj.noreportqty
        this.dialogForm.eqpname = obj.eqpname
        this.dialogForm.eqpcode = obj.eqpcode
        this.dialogForm.wkshopcode = obj.wkshopcode
        this.dialogForm.wkshopname = obj.wkshopname
        this.$refs.userTableDataRef.doLayout()
      })
@@ -1859,11 +1901,24 @@
      await this.getMesOrderStepSelectWX()
      await this.getMesOrderSelectUser()
    },
    wxCodeChange(val) {
      this.dialogForm.sqty = this.WXouterprovide2.find(i => i.Name === val).acceptQty
    },
    // 外协收料
    async WXback(obj) {
      // if (this.WXform.orderstepqrcode === '') {
      //   return this.$message.info('请先输入工序!')
      // }
      this.WXouterprovide2 = []
      obj.list.forEach(i => {
        i.acceptQty = parseFloat(i.fqty) - parseFloat(i.sqty) - parseFloat(i.ng_qty) - parseFloat(i.bad_qty)
        if (i.acceptQty > 0) {
          this.WXouterprovide2.push(i)
        }
      })
      console.log(this.WXouterprovide2, 2)
      this.dialogTitle = '外协收料'
      this.dialogVisible = true
@@ -1887,6 +1942,8 @@
        this.dialogForm.sqty = obj.startqty
        this.dialogForm.startqtySum = obj.startqty
        this.dialogForm.list = obj.list
      })
      await this.getMesOrderStepSelectWX()
      await this.getMesOrderSelectUser()
@@ -1899,7 +1956,7 @@
    },
    // 获取自制报工生产班组下拉列表
    async getMesOrderStepReportSelectUserGroup() {
      const { data: res } = await MesOrderStepReportSelectUserGroup()
      const { data: res } = await MesOrderStepReportSelectUserGroup({ wkshopcode: this.dialogForm.wkshopcode })
      this.ZZtreams = res
    },
    // 获取自制报工表格user所有
@@ -2160,6 +2217,10 @@
              return this.$message.info('收料数量加不良数量不能大于了未收数量!')
            }
            if (this.WXouterprovide2.find(i => i.Name === this.dialogForm.wxcode).acceptQty < parseFloat(this.dialogForm.sqty) + parseFloat(this.dialogForm.noputqty)) {
              return this.$message.info('收料数量加不良数量不能大于该供应商可收数量!')
            }
            if (parseFloat(this.dialogForm.noputqty) > 0) {
              if (this.dialogForm.badcode.length < 1) {
                return this.$message.info('请选择不良原因!')
src/views/qualityManager/processCheckItem.vue
@@ -119,6 +119,21 @@
        <el-form-item label="项目名称" prop="checkitemname">
          <el-input v-model="dialogForm.checkitemname" style="width: 200px" />
        </el-form-item>
        <el-form-item label="所属车间" prop="workshopcode">
          <el-select
            v-model="dialogForm.workshopcode"
            filterable
            style="width: 200px"
            placeholder="请选择"
          >
            <el-option
              v-for="item in WorkShopArr"
              :key="item.code"
              :label="item.name"
              :value="item.code"
            />
          </el-select>
        </el-form-item>
        <el-form-item label="项目描述" prop="checkitemdescr">
          <el-input v-model="dialogForm.checkitemdescr" type="textarea" style="width: 200px" />
        </el-form-item>
@@ -146,6 +161,7 @@
import elDragDialog from '@/directive/el-drag-dialog'
import waves from '@/directive/waves'
import TableColumnSettings from '@/components/TableColumnSettings'
import { WorkShopSelect } from '@/api/deviceManager'
export default {
  name: 'Xxxx',
@@ -192,11 +208,30 @@
          sortable: true
        },
        {
          minWidth: 110,
          width: false,
          prop: 'org_code',
          label: '所属车间编码',
          id: 5,
          show: false,
          fixed: false,
          sortable: true
        }, {
          minWidth: 110,
          width: false,
          prop: 'org_name',
          label: '所属车间',
          id: 6,
          show: true,
          fixed: false,
          sortable: true
        },
        {
          minWidth: 330,
          width: false,
          prop: 'descr',
          label: '标准描述',
          id: 5,
          id: 7,
          show: true,
          fixed: false,
          sortable: true
@@ -206,7 +241,7 @@
          width: false,
          prop: 'lm_user',
          label: '创建人员',
          id: 6,
          id: 8,
          show: true,
          fixed: false,
          sortable: true
@@ -216,7 +251,7 @@
          width: false,
          prop: 'lm_date',
          label: '创建时间',
          id: 7,
          id: 9,
          show: true,
          fixed: false,
          sortable: true
@@ -237,18 +272,28 @@
        ],
        checkitemname: [
          { required: true, message: '请输入名称', trigger: ['blur', 'change'] }
        ],
        workshopcode: [
          { required: true, message: '请选择所属车间', trigger: ['blur', 'change'] }
        ]
      }
      },
      WorkShopArr: [] // 所属车间数组
    }
  },
  created() {
    this.getStepCheckItemSearch()
    this.getWorkShopSelect()
  },
  mounted() {
    window.addEventListener('resize', this.getHeight)
    this.getHeight()
  },
  methods: {
    // 获取所属车间下拉
    async getWorkShopSelect() {
      const { data: res } = await WorkShopSelect()
      this.WorkShopArr = res
    },
    tableColumnUpdate(val, isCopyTrue) {
      if (isCopyTrue) {
        this.tableColumnSettingsArray = val
@@ -302,6 +347,7 @@
      this.$nextTick(() => {
        this.dialogForm.checkitemcode = row.code
        this.dialogForm.checkitemname = row.name
        this.dialogForm.workshopcode = row.org_code
        this.dialogForm.checkitemdescr = row.descr
      })
    },
@@ -330,6 +376,7 @@
      this.dialogForm.checkitemcode = ''
      this.dialogForm.checkitemname = ''
      this.dialogForm.checkitemdescr = ''
      this.dialogForm.workshopcode = ''
      this.$refs.dialogForm.clearValidate()
    },
    // 对话框取消
@@ -345,6 +392,7 @@
            checkitemcode: this.dialogForm.checkitemcode,
            checkitemname: this.dialogForm.checkitemname,
            checkitemdescr: this.dialogForm.checkitemdescr,
            wkshopcode: this.dialogForm.workshopcode,
            OperType: this.operation === 'add' ? 'Add' : 'Update'
          }
          AddUpdateStepCheckItem(data).then(res => {
src/views/qualityManager/qualityPlaning.vue
@@ -296,6 +296,24 @@
            />
          </el-select>
        </el-form-item>
        <el-form-item label="所属车间" prop="wkshopcode">
          <el-select
            v-model="dialogForm.wkshopcode"
            filterable
            :popper-append-to-body="false"
            style="width: 200px"
            placeholder="请选择"
            @change="getStepSelect"
          >
            <el-option
              v-for="item in WorkShopArr"
              :key="item.code"
              :label="item.name"
              :value="item.code"
            />
          </el-select>
        </el-form-item>
        <br>
        <el-form-item prop="checktype" label="质检类型">
          <el-radio-group v-model="dialogForm.checktype">
@@ -336,7 +354,6 @@
            style="width: 200px"
            multiple
            filterable
            collapse-tags
            placeholder="请选择"
            :popper-append-to-body="false"
@@ -378,10 +395,10 @@
            />
          </el-select>
        </el-form-item>
        <el-form-item label="检验方案描述">
          <el-input v-model="dialogForm.descr" type="textarea" :autosize="{ minRows: 2 }" />
        </el-form-item>
      </el-form>
      <div style="display: flex;align-items: center;margin-bottom: 10px;">
@@ -712,6 +729,7 @@
  StepCheckItemSelect
} from '@/api/qualityManager'
import TableColumnSettings from '@/components/TableColumnSettings'
import { WorkShopSelect } from '@/api/deviceManager'
export default {
  name: 'Zzjg',
@@ -816,12 +834,33 @@
          fixed: false,
          sortable: true
        },
        {
          minWidth: false,
          width: 110,
          prop: 'org_code',
          label: '所属车间编码',
          id: 9,
          show: false,
          fixed: false,
          sortable: true
        }, {
          minWidth: false,
          width: 110,
          prop: 'org_name',
          label: '所属车间',
          id: 10,
          show: true,
          fixed: false,
          sortable: true
        },
        {
          minWidth: false,
          width: 110,
          prop: 'stepcode',
          label: '工序编码',
          id: 9,
          id: 11,
          show: false,
          fixed: false,
          sortable: true
@@ -830,7 +869,7 @@
          width: false,
          prop: 'stepname',
          label: '工序名称',
          id: 10,
          id: 12,
          show: true,
          fixed: false,
          sortable: true
@@ -840,7 +879,7 @@
          width: 110,
          prop: 'username',
          label: '创建人员',
          id: 11,
          id: 13,
          show: true,
          fixed: false,
          sortable: true
@@ -850,7 +889,7 @@
          width: 160,
          prop: 'lm_date',
          label: '创建时间',
          id: 12,
          id: 14,
          show: true,
          fixed: false,
          sortable: true
@@ -869,6 +908,7 @@
        suitobject: 'P', // 适用对象
        suitpart: [], // 适用物料
        stepcode: '', // 工序
        wkshopcode: '', // 所属车间
        descr: '' // /描述
      },
      operation: '',
@@ -902,6 +942,9 @@
        ],
        stepcode: [
          { required: true, message: '请选择工序名称', trigger: ['blur', 'change'] }
        ],
        wkshopcode: [
          { required: true, message: '请选择所属车间', trigger: ['blur', 'change'] }
        ]
      },
      checkitem: [],
@@ -918,6 +961,7 @@
      CheckItemSelectArr: [], // 检验项目
      StepSelectArr: [], // 工序名称下拉所有
      WorkShopArr: [], // 所属车间数组
      isCancel: true// 是否可取消
    }
@@ -942,16 +986,25 @@
      this.getQualityInspectionSearch().then(res => {
        if (res.code === '200') {
          // this.getUomSelect()
          this.getStepCheckItemSelect()
          // this.getStepCheckItemSelect()
          this.getPartSelect()
          this.getStockTypeSelect()
          this.getStepSelect()
          this.getWorkShopSelect()
        }
      })
    },
    async getStepSelect() {
      const { data: res } = await StepSelect()
    // 获取所属车间下拉
    async getWorkShopSelect() {
      const { data: res } = await WorkShopSelect()
      this.WorkShopArr = res
    },
    async getStepSelect(val) {
      this.dialogForm.stepcode = ''
      const { data: res } = await StepSelect({ WorkShop: val })
      this.StepSelectArr = res
      await this.getStepCheckItemSelect(val)
    },
    async getQualityInspectionSearch() {
      const res = await QualityInspectionSearch(this.form)
@@ -1017,6 +1070,7 @@
        this.dialogForm.suitobject = row.suitobject
        this.dialogForm.suitpart = row.suitpart.split(',')
        this.dialogForm.descr = row.descr
        this.dialogForm.wkshopcode = row.org_code
        this.checkitem = res
        this.$refs.tableDataRef2.doLayout()
@@ -1060,6 +1114,7 @@
        this.dialogForm.suitobject = row.suitobject
        this.dialogForm.suitpart = row.suitpart.split(',')
        this.dialogForm.descr = row.descr
        this.dialogForm.wkshopcode = row.org_code
        this.checkitem = res
        // console.log(this.checkitem, 2)
        this.$refs.tableDataRef2.doLayout()
@@ -1105,9 +1160,9 @@
      this.dialogForm.suitpart = []
    },
    // 获取检验项目下拉接口
    async getStepCheckItemSelect() {
      const { data: res } = await StepCheckItemSelect()
    async getStepCheckItemSelect(val) {
      const { data: res } = await StepCheckItemSelect({ WorkShop: val })
      this.CheckItemSelectArr = []
      res.forEach(i => {
        this.CheckItemSelectArr.push({
          code: i.code,
@@ -1210,7 +1265,8 @@
        sampscale: '',
        suitobject: 'P',
        suitpart: [],
        descr: ''
        descr: '',
        wkshopcode: ''
      }
      this.isCancel = true
@@ -1228,6 +1284,12 @@
        if (valid) {
          if (this.checkitem.length < 1) {
            return this.$message.info('质检列表不能为空!')
          }
          if (this.checkitem.find(i => i.isVisible === 1)) {
            return this.$message.info('请先保存质检列表!')
          }
          if (this.dialogForm.checktype === 'InCheck' || this.dialogForm.checktype === 'OutCheck') {
            this.dialogForm.stepcode = ''
          }
          const checkitem = []
@@ -1257,6 +1319,7 @@
            suitpart: this.dialogForm.suitpart.join(','),
            type: this.operation === 'add' ? 'Add' : 'Update',
            descr: this.dialogForm.descr,
            wkshopcode: this.dialogForm.wkshopcode,
            checkitem
          }
src/views/reportManager/defectDetailList.vue
@@ -14,6 +14,16 @@
          style="display: flex;"
        >
          <div class="elForm">
            <el-form-item label="生产车间" style="display: flex;">
              <el-select v-model="form.wkshopcode" style="width: 200px" placeholder="请选择">
                <el-option
                  v-for="item in WorkShopArr"
                  :key="item.code"
                  :label="item.name"
                  :value="item.code"
                />
              </el-select>
            </el-form-item>
            <el-form-item label="工单编号" style=" display: flex;">
              <el-input v-model="form.wocode" placeholder="请输入" style="width: 200px" />
            </el-form-item>
@@ -23,7 +33,7 @@
            <el-form-item label="产品名称" style=" display: flex;">
              <el-input v-model="form.partname" style="width: 200px" placeholder="请输入" />
            </el-form-item>
            <el-form-item label="规格型号" style=" display: flex;">
            <el-form-item v-show="isExpandForm" label="规格型号" style=" display: flex;">
              <el-input v-model="form.partspec" style="width: 200px" placeholder="请输入" />
            </el-form-item>
            <el-form-item v-show="isExpandForm" label="工序名称" style=" display: flex;">
@@ -131,6 +141,18 @@
          >
            <template slot-scope="{row}">
              <div v-if="row.partspec">{{ row.partspec }}</div>
              <div v-else>/</div>
            </template>
          </el-table-column>
          <el-table-column
            prop="wkshp_name"
            label="生产车间"
            width="110"
            show-tooltip-when-overflow
            sortable="custom"
          >
            <template slot-scope="{row}">
              <div v-if="row.wkshp_name">{{ row.wkshp_name }}</div>
              <div v-else>/</div>
            </template>
          </el-table-column>
@@ -265,6 +287,7 @@
import { MesOrderStepReportSelectUserGroup } from '@/api/produceManager'
import elDragDialog from '@/directive/el-drag-dialog'
import waves from '@/directive/waves'
import { WorkShopSelect } from '@/api/deviceManager'
export default {
  name: 'Zzjg',
@@ -279,6 +302,7 @@
      mainHeight: 0,
      tableHeight: 0,
      form: {
        wkshopcode: this.$store.state.settings.orgType === 'W' ? getCookie('stu_torgcode') : '', // 所属车间
        wocode: '', // 工单编号
        partcode: '', // 产品编码
        partname: '', // 产品名称
@@ -293,6 +317,7 @@
        page: 1, // 第几页
        rows: 20 // 每页多少条
      },
      WorkShopArr: [],
      // groupArr: [],
      total: 10,
      tableData: [],
@@ -341,10 +366,16 @@
  methods: {
    handleRequest() {
      this.getDefectDetailsReportSearch().then(res => {
        // if (res.code === '200') {
        if (res.code === '200') {
        //   this.getMesOrderStepReportSelectUserGroup()
        // }
          this.getWorkShopSelect()
        }
      })
    },
    // 获取所属车间下拉
    async getWorkShopSelect() {
      const { data: res } = await WorkShopSelect()
      this.WorkShopArr = res
    },
    async getDefectDetailsReportSearch() {
      let tempDate = this.form.reportdate
@@ -360,6 +391,7 @@
        defectcode: this.form.defectcode,
        defectname: this.form.defectname,
        reportname: this.form.reportname,
        wkshopcode: this.form.wkshopcode,
        reportdate: tempDate,
        prop: this.form.prop,
        order: this.form.order,
@@ -406,6 +438,7 @@
        defectcode: this.form.defectcode,
        defectname: this.form.defectname,
        reportname: this.form.reportname,
        wkshopcode: this.form.wkshopcode,
        reportdate: tempDate
      }
@@ -435,81 +468,8 @@
      this.form.defectname = ''
      this.form.reportname = ''
      this.form.reportdate = ''
      this.form.wkshopcode = this.$store.state.settings.orgType === 'W' ? getCookie('stu_torgcode') : '' // 所属车间
      this.getDefectDetailsReportSearch()
    },
    // 新增按钮
    add(operation) {
      this.operation = operation
      this.dialogVisible = true
    },
    // 修改按钮
    async edit(operation, row) {
      this.operation = operation
      this.dialogVisible = true
      const res = await GroupSalaryReportSearchUser({ id: row.id })
      this.tagArr = res.data.map(r => r.reportname)
      // this.tagArr = ['楼李俊', '张三', '李四']
      // this.$nextTick(() => {
      //   this.dialogForm.OrgCode = row.org_code
      //   this.dialogForm.OrgName = row.org_name
      //   this.dialogForm.SupUnit = row.parent_id
      // })
    },
    // 删除按钮
    async del(row) {
      // this.$confirm('是否确认删除?', '提示', {
      //   confirmButtonText: '确定',
      //   cancelButtonText: '取消',
      //   type: 'warning'
      // }).then(() => {
      //   DeleteOrganization({ orgid: row.code }).then(res => {
      //     if (res.code === '200') {
      //       this.$message.success('删除成功!')
      //       if (this.form.page > 1 && this.tableData.length === 1) {
      //         this.form.page--
      //       }
      //       this.getDefectDetailsReportSearch()
      //     }
      //   })
      // }).catch(() => {
      //   this.$message.info('已取消删除')
      // })
    },
    // 对话框关闭事件
    handleClose() {
      this.dialogForm.OrgType = ''
      this.dialogForm.OrgCode = ''
      this.dialogForm.OrgName = ''
      this.dialogForm.SupUnit = ''
      this.$refs.dialogForm.clearValidate()
    },
    // 对话框取消
    dialogVisibleCancel() {
      this.dialogVisible = false
    },
    // 对话框确认
    dialogVisibleConfirm() {
      this.$refs.dialogForm.validate(valid => {
        if (valid) {
          const data = {
            OrganCode: this.dialogForm.OrgCode,
            OrganName: this.dialogForm.OrgName,
            OperType: this.operation === 'add' ? 'Add' : 'Update',
            Operator: getCookie('admin')
          }
          // AddUpdateOrganization(data).then(res => {
          //   if (res.code === '200') {
          //     this.$message.success(this.operation === 'add' ? '添加成功!' : '修改成功!')
          //     this.dialogVisible = false
          //     this.getDefectDetailsReportSearch()
          //   } else {
          //     this.$message.error(this.operation === 'add' ? '添加失败!' : '修改失败!')
          //   }
          // })
        }
      })
    },
    // 获取页面高度
    getHeight() {
src/views/reportManager/groupSalaryList.vue
@@ -40,6 +40,16 @@
          style="display: flex;"
        >
          <div class="elForm">
            <el-form-item label="生产车间" style=" display: flex;">
              <el-select v-model="form.wkshopcode" style="width: 200px" placeholder="请选择">
                <el-option
                  v-for="item in WorkShopArr"
                  :key="item.code"
                  :label="item.name"
                  :value="item.code"
                />
              </el-select>
            </el-form-item>
            <el-form-item label="工单编号" style="display: flex;">
              <el-input v-model="form.wocode" placeholder="请输入" style="width: 200px" />
            </el-form-item>
@@ -49,9 +59,9 @@
            <el-form-item label="产品名称" style=" display: flex;">
              <el-input v-model="form.partname" style="width: 200px" placeholder="请输入" />
            </el-form-item>
            <el-form-item label="规格型号" style=" display: flex;">
              <el-input v-model="form.partspec" style="width: 200px" placeholder="请输入" />
            </el-form-item>
            <!--            <el-form-item label="规格型号" style=" display: flex;">-->
            <!--              <el-input v-model="form.partspec" style="width: 200px" placeholder="请输入" />-->
            <!--            </el-form-item>-->
            <el-form-item v-show="isExpandForm" label="工序名称" style="display: flex;">
              <el-input v-model="form.stepname" style="width: 200px" placeholder="请输入" />
            </el-form-item>
@@ -190,6 +200,18 @@
                show-tooltip-when-overflow
                sortable="custom"
              />
              <el-table-column
                prop="wkshp_name"
                label="生产车间"
                width="110"
                show-tooltip-when-overflow
                sortable="custom"
              >
                <template slot-scope="{row}">
                  <div v-if="row.wkshp_name">{{ row.wkshp_name }}</div>
                  <div v-else>/</div>
                </template>
              </el-table-column>
              <el-table-column
                prop="group_name"
                label="生产班组"
@@ -355,6 +377,18 @@
                sortable="custom"
              />
              <el-table-column
                prop="wkshp_name"
                label="生产车间"
                width="110"
                show-tooltip-when-overflow
                sortable="custom"
              >
                <template slot-scope="{row}">
                  <div v-if="row.wkshp_name">{{ row.wkshp_name }}</div>
                  <div v-else>/</div>
                </template>
              </el-table-column>
              <el-table-column
                prop="group_name"
                label="生产班组"
                width="110"
@@ -502,6 +536,7 @@
import elDragDialog from '@/directive/el-drag-dialog'
import waves from '@/directive/waves'
import { StepSelect } from '@/api/makeModel'
import { WorkShopSelect } from '@/api/deviceManager'
export default {
  name: 'Zzjg',
@@ -524,6 +559,7 @@
        stepname: '', // 工序名称
        groupcode: '', // 生产班组
        username: '', // 操作人员
        wkshopcode: this.$store.state.settings.orgType === 'W' ? getCookie('stu_torgcode') : '', // 所属车间
        operdate: '', // 操作时间
        rejectstepcode: [], // 剔除工序(固定薪资工序不参与计算
        compute: 'last', // 计件方式  逐道工序:contin   末道工序:last
@@ -558,6 +594,8 @@
      },
      WorkShopArr: [], // 所属车间数组
      title_value: '数据导入 / 点检部位',
      code: '4',
      shows: false
@@ -589,9 +627,15 @@
      this.getGroupSalaryReportSearch().then(res => {
        if (res.code === '200') {
          this.getMesOrderStepReportSelectUserGroup()
          this.getStepSelect()
          this.getWorkShopSelect()
          // this.getStepSelect()
        }
      })
    },
    // 获取所属车间下拉
    async getWorkShopSelect() {
      const { data: res } = await WorkShopSelect()
      this.WorkShopArr = res
    },
    // 获取工序下拉接口
    async getStepSelect() {
@@ -643,6 +687,7 @@
        stepname: this.form.stepname,
        groupcode: this.form.groupcode,
        username: this.form.username,
        wkshopcode: this.form.wkshopcode,
        operdate: tempDate,
        rejectstepcode: this.form.rejectstepcode.join(','),
        compute: this.form.compute,
@@ -666,7 +711,7 @@
    },
    async getMesOrderStepReportSelectUserGroup() {
      const { data: res } = await MesOrderStepReportSelectUserGroup()
      const { data: res } = await MesOrderStepReportSelectUserGroup({ wkshopcode: this.form.wkshopcode })
      this.groupArr = res
    },
    tabClick(val) {
@@ -701,6 +746,7 @@
        stepname: this.form.stepname,
        groupcode: this.form.groupcode,
        username: this.form.username,
        wkshopcode: this.form.wkshopcode,
        operdate: tempDate,
        compute: this.form.compute
      }
@@ -730,81 +776,8 @@
      this.form.groupcode = ''
      this.form.username = ''
      this.form.operdate = ''
      this.form.wkshopcode = this.$store.state.settings.orgType === 'W' ? getCookie('stu_torgcode') : '' // 所属车间
      this.getGroupSalaryReportSearch()
    },
    // 新增按钮
    add(operation) {
      this.operation = operation
      this.dialogVisible = true
    },
    // 修改按钮
    async edit(operation, row) {
      this.operation = operation
      this.dialogVisible = true
      const res = await GroupSalaryReportSearchUser({ id: row.id })
      this.tagArr = res.data.map(r => r.username)
      // this.tagArr = ['楼李俊', '张三', '李四']
      // this.$nextTick(() => {
      //   this.dialogForm.OrgCode = row.org_code
      //   this.dialogForm.OrgName = row.org_name
      //   this.dialogForm.SupUnit = row.parent_id
      // })
    },
    // 删除按钮
    async del(row) {
      // this.$confirm('是否确认删除?', '提示', {
      //   confirmButtonText: '确定',
      //   cancelButtonText: '取消',
      //   type: 'warning'
      // }).then(() => {
      //   DeleteOrganization({ orgid: row.code }).then(res => {
      //     if (res.code === '200') {
      //       this.$message.success('删除成功!')
      //       if (this.form.page > 1 && this.tableData.length === 1) {
      //         this.form.page--
      //       }
      //       this.getGroupSalaryReportSearch()
      //     }
      //   })
      // }).catch(() => {
      //   this.$message.info('已取消删除')
      // })
    },
    // 对话框关闭事件
    handleClose() {
      this.dialogForm.OrgType = ''
      this.dialogForm.OrgCode = ''
      this.dialogForm.OrgName = ''
      this.dialogForm.SupUnit = ''
      this.$refs.dialogForm.clearValidate()
    },
    // 对话框取消
    dialogVisibleCancel() {
      this.dialogVisible = false
    },
    // 对话框确认
    dialogVisibleConfirm() {
      this.$refs.dialogForm.validate(valid => {
        if (valid) {
          const data = {
            OrganCode: this.dialogForm.OrgCode,
            OrganName: this.dialogForm.OrgName,
            OperType: this.operation === 'add' ? 'Add' : 'Update',
            Operator: getCookie('admin')
          }
          // AddUpdateOrganization(data).then(res => {
          //   if (res.code === '200') {
          //     this.$message.success(this.operation === 'add' ? '添加成功!' : '修改成功!')
          //     this.dialogVisible = false
          //     this.getGroupSalaryReportSearch()
          //   } else {
          //     this.$message.error(this.operation === 'add' ? '添加失败!' : '修改失败!')
          //   }
          // })
        }
      })
    },
    // 获取页面高度
    getHeight() {
src/views/reportManager/installationLampList.vue
@@ -18,9 +18,9 @@
              <el-select v-model="form.wkshopcode" style="width: 200px" placeholder="请选择">
                <el-option
                  v-for="item in wkshopSelectArr"
                  :key="item.org_code"
                  :label="item.org_name"
                  :value="item.org_code"
                  :key="item.code"
                  :label="item.name"
                  :value="item.code"
                />
              </el-select>
            </el-form-item>
@@ -118,9 +118,9 @@
              >
                <el-option
                  v-for="item in wkshopSelectArr"
                  :key="item.org_code"
                  :label="item.org_name"
                  :value="item.org_code"
                  :key="item.code"
                  :label="item.name"
                  :value="item.code"
                />
              </el-select>
            </el-form-item>
@@ -348,9 +348,10 @@
  AnDonReportSumExcelSearch,
  AnDonReportSumSearch
} from '@/api/reportManager'
import { ShopSearch } from '@/api/kanbanManager'
import waves from '@/directive/waves'
import TableColumnSettings from '@/components/TableColumnSettings'
import { WorkShopSelect } from '@/api/deviceManager'
import { getCookie } from '@/utils/auth'
export default {
  name: 'Zzjg',
@@ -365,7 +366,7 @@
      mainHeight: 0,
      tableHeight: 0,
      form: {
        wkshopcode: '', // 车间编码
        wkshopcode: this.$store.state.settings.orgType === 'W' ? getCookie('stu_torgcode') : '', // 所属车间
        calltypecode: '', // 呼叫类型编码
        calluser: '', // 呼叫人员
        calldate: '', // 呼叫时间
@@ -493,7 +494,7 @@
      currentTabPositionName: '安灯明细', // Tab标签位于的位置 默认第‘0’个
      formSum: {
        wkshopcode: '', // 车间编码
        wkshopcode: this.$store.state.settings.orgType === 'W' ? getCookie('stu_torgcode') : '', // 所属车间
        calltypecode: '', // 呼叫类型编码
        calldate: '', // 呼叫时间
        eqpcode: '', // 设备编码
@@ -608,6 +609,10 @@
        if (res.code === '200') {
          this.getShopSearch()
          this.getAnDengTypeSearch()
          if (this.$store.state.settings.orgType === 'W') {
            this.getWhkspIsEqpSearch(getCookie('stu_torgcode'))
          }
        }
      })
    },
@@ -669,7 +674,7 @@
    },
    // 获取生产车间
    async getShopSearch() {
      const { data: res } = await ShopSearch()
      const { data: res } = await WorkShopSelect()
      this.wkshopSelectArr = res
    },
    // 获取呼叫类型
src/views/reportManager/personSalaryList.vue
@@ -40,6 +40,16 @@
          style="display: flex; "
        >
          <div class="elForm">
            <el-form-item label="生产车间" style=" display: flex;">
              <el-select v-model="form.wkshopcode" style="width: 200px" placeholder="请选择">
                <el-option
                  v-for="item in WorkShopArr"
                  :key="item.code"
                  :label="item.name"
                  :value="item.code"
                />
              </el-select>
            </el-form-item>
            <el-form-item label="工单编号" style="display: flex;">
              <el-input v-model="form.wocode" placeholder="请输入" style="width: 200px" />
            </el-form-item>
@@ -49,9 +59,9 @@
            <el-form-item label="产品名称" style=" display: flex;">
              <el-input v-model="form.partname" style="width: 200px" placeholder="请输入" />
            </el-form-item>
            <el-form-item label="规格型号" style=" display: flex;">
              <el-input v-model="form.partspec" style="width: 200px" placeholder="请输入" />
            </el-form-item>
            <!--            <el-form-item label="规格型号" style=" display: flex;">-->
            <!--              <el-input v-model="form.partspec" style="width: 200px" placeholder="请输入" />-->
            <!--            </el-form-item>-->
            <el-form-item v-show="isExpandForm" label="工序名称" style=" display: flex;">
              <el-input v-model="form.stepname" style="width: 200px" placeholder="请输入" />
            </el-form-item>
@@ -189,6 +199,18 @@
                show-tooltip-when-overflow
                sortable="custom"
              />
              <el-table-column
                prop="wkshp_name"
                label="生产车间"
                width="110"
                show-tooltip-when-overflow
                sortable="custom"
              >
                <template slot-scope="{row}">
                  <div v-if="row.wkshp_name">{{ row.wkshp_name }}</div>
                  <div v-else>/</div>
                </template>
              </el-table-column>
              <el-table-column
                prop="group_name"
                label="生产班组"
@@ -348,6 +370,18 @@
                sortable="custom"
              />
              <el-table-column
                prop="wkshp_name"
                label="生产车间"
                width="110"
                show-tooltip-when-overflow
                sortable="custom"
              >
                <template slot-scope="{row}">
                  <div v-if="row.wkshp_name">{{ row.wkshp_name }}</div>
                  <div v-else>/</div>
                </template>
              </el-table-column>
              <el-table-column
                prop="group_name"
                label="生产班组"
                width="110"
@@ -475,6 +509,7 @@
import elDragDialog from '@/directive/el-drag-dialog'
import waves from '@/directive/waves'
import { StepSelect } from '@/api/makeModel'
import { WorkShopSelect } from '@/api/deviceManager'
export default {
  name: 'Zzjg',
@@ -498,6 +533,7 @@
        groupcode: '', // 生产班组
        reportname: '', // 操作人员
        reportdate: '', // 操作时间
        wkshopcode: this.$store.state.settings.orgType === 'W' ? getCookie('stu_torgcode') : '', // 所属车间
        rejectstepcode: [], // 剔除工序(固定薪资工序不参与计算
        compute: 'last', // 计件方式
        prop: 'partcode', // 排序字段
@@ -505,6 +541,7 @@
        page: 1, // 第几页
        rows: 20 // 每页多少条
      },
      WorkShopArr: [],
      groupArr: [],
      total: 10,
      tableData: [],
@@ -562,9 +599,15 @@
      this.getPeopleSalaryReportSearch().then(res => {
        if (res.code === '200') {
          this.getMesOrderStepReportSelectUserGroup()
          this.getStepSelect()
          this.getWorkShopSelect()
          // this.getStepSelect()
        }
      })
    },
    // 获取所属车间下拉
    async getWorkShopSelect() {
      const { data: res } = await WorkShopSelect()
      this.WorkShopArr = res
    },
    // 获取工序下拉接口
    async  getStepSelect() {
@@ -624,6 +667,7 @@
        stepname: this.form.stepname,
        groupcode: this.form.groupcode,
        compute: this.form.compute,
        wkshopcode: this.form.wkshopcode,
        reportname: this.form.reportname,
        rejectstepcode: this.form.rejectstepcode.join(','),
        reportdate: tempDate,
@@ -647,7 +691,7 @@
    },
    async getMesOrderStepReportSelectUserGroup() {
      const { data: res } = await MesOrderStepReportSelectUserGroup()
      const { data: res } = await MesOrderStepReportSelectUserGroup({ wkshopcode: this.form.wkshopcode })
      this.groupArr = res
    },
    tabClick(val) {
@@ -682,6 +726,7 @@
        groupcode: this.form.groupcode,
        compute: this.form.compute,
        reportname: this.form.reportname,
        wkshopcode: this.form.wkshopcode,
        reportdate: tempDate
      }
@@ -710,82 +755,10 @@
      this.form.groupcode = ''
      this.form.reportname = ''
      this.form.reportdate = ''
      this.form.wkshopcode = this.$store.state.settings.orgType === 'W' ? getCookie('stu_torgcode') : '' // 所属车间
      this.getPeopleSalaryReportSearch()
    },
    // 新增按钮
    add(operation) {
      this.operation = operation
      this.dialogVisible = true
    },
    // 修改按钮
    async edit(operation, row) {
      this.operation = operation
      this.dialogVisible = true
      const res = await GroupSalaryReportSearchUser({ id: row.id })
      this.tagArr = res.data.map(r => r.reportname)
      // this.tagArr = ['楼李俊', '张三', '李四']
      // this.$nextTick(() => {
      //   this.dialogForm.OrgCode = row.org_code
      //   this.dialogForm.OrgName = row.org_name
      //   this.dialogForm.SupUnit = row.parent_id
      // })
    },
    // 删除按钮
    async del(row) {
      // this.$confirm('是否确认删除?', '提示', {
      //   confirmButtonText: '确定',
      //   cancelButtonText: '取消',
      //   type: 'warning'
      // }).then(() => {
      //   DeleteOrganization({ orgid: row.code }).then(res => {
      //     if (res.code === '200') {
      //       this.$message.success('删除成功!')
      //       if (this.form.page > 1 && this.tableData.length === 1) {
      //         this.form.page--
      //       }
      //       this.getPeopleSalaryReportSearch()
      //     }
      //   })
      // }).catch(() => {
      //   this.$message.info('已取消删除')
      // })
    },
    // 对话框关闭事件
    handleClose() {
      this.dialogForm.OrgType = ''
      this.dialogForm.OrgCode = ''
      this.dialogForm.OrgName = ''
      this.dialogForm.SupUnit = ''
      this.$refs.dialogForm.clearValidate()
    },
    // 对话框取消
    dialogVisibleCancel() {
      this.dialogVisible = false
    },
    // 对话框确认
    dialogVisibleConfirm() {
      this.$refs.dialogForm.validate(valid => {
        if (valid) {
          const data = {
            OrganCode: this.dialogForm.OrgCode,
            OrganName: this.dialogForm.OrgName,
            OperType: this.operation === 'add' ? 'Add' : 'Update',
            Operator: getCookie('admin')
          }
          // AddUpdateOrganization(data).then(res => {
          //   if (res.code === '200') {
          //     this.$message.success(this.operation === 'add' ? '添加成功!' : '修改成功!')
          //     this.dialogVisible = false
          //     this.getPeopleSalaryReportSearch()
          //   } else {
          //     this.$message.error(this.operation === 'add' ? '添加失败!' : '修改失败!')
          //   }
          // })
        }
      })
    },
    // 获取页面高度
    getHeight() {
      this.$nextTick(() => {
src/views/reportManager/produceSchedule.vue
@@ -15,6 +15,16 @@
          style="display: flex;"
        >
          <div class="elForm">
            <el-form-item label="生产车间" style=" display: flex;">
              <el-select v-model="form.wkshopcode" style="width: 200px" placeholder="请选择">
                <el-option
                  v-for="item in WorkShopArr"
                  :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.status" style="width: 200px" placeholder="请选择">
                <el-option
@@ -31,7 +41,7 @@
            <el-form-item label="工艺路线编码" style=" display: flex;">
              <el-input v-model="form.routecode" placeholder="请输入" style="width: 200px" />
            </el-form-item>
            <el-form-item label="工艺路线名称" style=" display: flex;">
            <el-form-item v-show="isExpandForm" label="工艺路线名称" style=" display: flex;">
              <el-input v-model="form.routename" placeholder="请输入" style="width: 200px" />
            </el-form-item>
            <el-form-item v-show="isExpandForm" label="产品编码" style=" display: flex;">
@@ -40,9 +50,9 @@
            <el-form-item v-show="isExpandForm" label="产品名称" style=" display: flex;">
              <el-input v-model="form.partname" placeholder="请输入" style="width: 200px" />
            </el-form-item>
            <el-form-item v-show="isExpandForm" label="规格型号" style=" display: flex;">
              <el-input v-model="form.partspec" placeholder="请输入" style="width: 200px" />
            </el-form-item>
            <!--            <el-form-item v-show="isExpandForm" label="规格型号" style=" display: flex;">-->
            <!--              <el-input v-model="form.partspec" placeholder="请输入" style="width: 200px" />-->
            <!--            </el-form-item>-->
            <el-form-item v-show="isExpandForm" label="单据日期" style="display: flex;align-items: center">
              <el-date-picker
                v-model="form.lm_date"
@@ -139,6 +149,13 @@
            prop="partname"
            label="产品名称"
            width="155"
            show-tooltip-when-overflow
            sortable="custom"
          />
          <el-table-column
            prop="wkshp_name"
            label="生产车间"
            width="105"
            show-tooltip-when-overflow
            sortable="custom"
          />
@@ -254,6 +271,8 @@
  ProductionScheduleReportExcelSearch,
  ProductionScheduleReportSearch
} from '@/api/reportManager'
import { WorkShopSelect } from '@/api/deviceManager'
import { getCookie } from '@/utils/auth'
export default {
  name: 'Zzjg',
@@ -275,6 +294,7 @@
        partcode: '', // 产品编码
        partname: '', // 产品名称
        partspec: '', // 规格型号
        wkshopcode: this.$store.state.settings.orgType === 'W' ? getCookie('stu_torgcode') : '', // 所属车间
        lm_date: '', // 单据日期
        prop: 'lm_date', // 排序字段
        order: 'desc', // 排序字段
@@ -288,19 +308,27 @@
      ],
      total: 10,
      tableData: []
      tableData: [],
      WorkShopArr: [] // 所属车间数组
    }
  },
  created() {
    this.getProductionScheduleReportSearch()
    this.getWorkShopSelect()
  },
  mounted() {
    window.addEventListener('resize', this.getHeight)
    this.getHeight()
  },
  methods: {
    // 获取所属车间下拉
    async getWorkShopSelect() {
      const { data: res } = await WorkShopSelect()
      this.WorkShopArr = res
    },
    async getProductionScheduleReportSearch() {
      let tempDate = this.form.lm_date
      if (tempDate.length > 0) {
@@ -314,6 +342,7 @@
        partcode: this.form.partcode,
        partname: this.form.partname,
        partspec: this.form.partspec,
        wkshopcode: this.form.wkshopcode,
        lm_date: tempDate,
        prop: this.form.prop,
        order: this.form.order,
@@ -340,6 +369,7 @@
        partcode: this.form.partcode,
        partname: this.form.partname,
        partspec: this.form.partspec,
        wkshopcode: this.form.wkshopcode,
        lm_date: tempDate
      }
@@ -373,6 +403,7 @@
      this.form.partname = ''
      this.form.partspec = ''
      this.form.lm_date = ''
      this.form.wkshopcode = this.$store.state.settings.orgType === 'W' ? getCookie('stu_torgcode') : ''// 所属车间
      this.getProductionScheduleReportSearch()
    },
src/views/reportManager/repairDetailList.vue
@@ -14,6 +14,16 @@
          style="display: flex;"
        >
          <div class="elForm">
            <el-form-item label="生产车间" style=" display: flex;">
              <el-select v-model="form.wkshopcode" style="width: 200px" placeholder="请选择">
                <el-option
                  v-for="item in WorkShopArr"
                  :key="item.code"
                  :label="item.name"
                  :value="item.code"
                />
              </el-select>
            </el-form-item>
            <el-form-item label="工单编号" style=" display: flex;">
              <el-input v-model="form.wocode" placeholder="请输入" style="width: 200px" />
            </el-form-item>
@@ -23,7 +33,7 @@
            <el-form-item label="产品名称" style=" display: flex;">
              <el-input v-model="form.partname" style="width: 200px" placeholder="请输入" />
            </el-form-item>
            <el-form-item label="规格型号" style=" display: flex;">
            <el-form-item v-show="isExpandForm" label="规格型号" style=" display: flex;">
              <el-input v-model="form.partspec" style="width: 200px" placeholder="请输入" />
            </el-form-item>
            <el-form-item v-show="isExpandForm" label="工序名称" style=" display: flex;">
@@ -142,6 +152,13 @@
              <div v-else>/</div>
            </template>
          </el-table-column>
          <el-table-column
            prop="wkshp_name"
            label="生产车间"
            width="110"
            show-tooltip-when-overflow
            sortable="custom"
          />
          <el-table-column
            prop="stepcode"
            label="工序编码"
@@ -273,6 +290,7 @@
} from '@/api/reportManager'
import elDragDialog from '@/directive/el-drag-dialog'
import waves from '@/directive/waves'
import { WorkShopSelect } from '@/api/deviceManager'
export default {
  name: 'Zzjg',
@@ -287,6 +305,7 @@
      mainHeight: 0,
      tableHeight: 0,
      form: {
        wkshopcode: this.$store.state.settings.orgType === 'W' ? getCookie('stu_torgcode') : '', // 所属车间
        wocode: '', // 工单编号
        partcode: '', // 产品编码
        partname: '', // 产品名称
@@ -301,6 +320,7 @@
        page: 1, // 第几页
        rows: 20 // 每页多少条
      },
      WorkShopArr: [],
      styleArr: [
        { code: 'B', name: '报工' },
        { code: 'S', name: '收料' }
@@ -353,10 +373,16 @@
  methods: {
    handleRequest() {
      this.getMaintenanceDetailsReportSearch().then(res => {
        // if (res.code === '200') {
        if (res.code === '200') {
        //   this.getMesOrderStepReportSelectUserGroup()
        // }
          this.getWorkShopSelect()
        }
      })
    },
    // 获取所属车间下拉
    async getWorkShopSelect() {
      const { data: res } = await WorkShopSelect()
      this.WorkShopArr = res
    },
    async getMaintenanceDetailsReportSearch() {
      let tempDate = this.form.repairdate
@@ -369,6 +395,7 @@
        partname: this.form.partname,
        partspec: this.form.partspec,
        stepname: this.form.stepname,
        wkshopcode: this.form.wkshopcode,
        style: this.form.style,
        defectname: this.form.defectname,
        repairname: this.form.repairname,
@@ -418,6 +445,7 @@
        style: this.form.style,
        defectname: this.form.defectname,
        repairname: this.form.repairname,
        wkshopcode: this.form.wkshopcode,
        repairdate: tempDate
      }
@@ -447,81 +475,8 @@
      this.form.defectname = ''
      this.form.repairname = ''
      this.form.repairdate = ''
      this.form.wkshopcode = this.$store.state.settings.orgType === 'W' ? getCookie('stu_torgcode') : ''// 所属车间
      this.getMaintenanceDetailsReportSearch()
    },
    // 新增按钮
    add(operation) {
      this.operation = operation
      this.dialogVisible = true
    },
    // 修改按钮
    async edit(operation, row) {
      this.operation = operation
      this.dialogVisible = true
      const res = await GroupSalaryReportSearchUser({ id: row.id })
      this.tagArr = res.data.map(r => r.repairname)
      // this.tagArr = ['楼李俊', '张三', '李四']
      // this.$nextTick(() => {
      //   this.dialogForm.OrgCode = row.org_code
      //   this.dialogForm.OrgName = row.org_name
      //   this.dialogForm.SupUnit = row.parent_id
      // })
    },
    // 删除按钮
    async del(row) {
      // this.$confirm('是否确认删除?', '提示', {
      //   confirmButtonText: '确定',
      //   cancelButtonText: '取消',
      //   type: 'warning'
      // }).then(() => {
      //   DeleteOrganization({ orgid: row.code }).then(res => {
      //     if (res.code === '200') {
      //       this.$message.success('删除成功!')
      //       if (this.form.page > 1 && this.tableData.length === 1) {
      //         this.form.page--
      //       }
      //       this.getMaintenanceDetailsReportSearch()
      //     }
      //   })
      // }).catch(() => {
      //   this.$message.info('已取消删除')
      // })
    },
    // 对话框关闭事件
    handleClose() {
      this.dialogForm.OrgType = ''
      this.dialogForm.OrgCode = ''
      this.dialogForm.OrgName = ''
      this.dialogForm.SupUnit = ''
      this.$refs.dialogForm.clearValidate()
    },
    // 对话框取消
    dialogVisibleCancel() {
      this.dialogVisible = false
    },
    // 对话框确认
    dialogVisibleConfirm() {
      this.$refs.dialogForm.validate(valid => {
        if (valid) {
          const data = {
            OrganCode: this.dialogForm.OrgCode,
            OrganName: this.dialogForm.OrgName,
            OperType: this.operation === 'add' ? 'Add' : 'Update',
            Operator: getCookie('admin')
          }
          // AddUpdateOrganization(data).then(res => {
          //   if (res.code === '200') {
          //     this.$message.success(this.operation === 'add' ? '添加成功!' : '修改成功!')
          //     this.dialogVisible = false
          //     this.getMaintenanceDetailsReportSearch()
          //   } else {
          //     this.$message.error(this.operation === 'add' ? '添加失败!' : '修改失败!')
          //   }
          // })
        }
      })
    },
    // 获取页面高度
    getHeight() {
src/views/reportManager/subcontractingOperation.vue
@@ -14,6 +14,16 @@
          style="display: flex;"
        >
          <div class="elForm">
            <el-form-item label="生产车间" style=" display: flex;">
              <el-select v-model="form.wkshopcode" style="width: 200px" placeholder="请选择">
                <el-option
                  v-for="item in WorkShopArr"
                  :key="item.code"
                  :label="item.name"
                  :value="item.code"
                />
              </el-select>
            </el-form-item>
            <el-form-item label="工单编号" style=" display: flex;">
              <el-input v-model="form.wocode" placeholder="请输入" style="width: 200px" />
            </el-form-item>
@@ -23,9 +33,9 @@
            <el-form-item label="产品名称" style=" display: flex;">
              <el-input v-model="form.partname" style="width: 200px" placeholder="请输入" />
            </el-form-item>
            <el-form-item label="规格型号" style=" display: flex;">
              <el-input v-model="form.partspec" style="width: 200px" placeholder="请输入" />
            </el-form-item>
            <!--            <el-form-item label="规格型号" style=" display: flex;">-->
            <!--              <el-input v-model="form.partspec" style="width: 200px" placeholder="请输入" />-->
            <!--            </el-form-item>-->
            <el-form-item v-show="isExpandForm" label="工序名称" style=" display: flex;">
              <el-input v-model="form.stepname" style="width: 200px" placeholder="请输入" />
            </el-form-item>
@@ -143,6 +153,13 @@
              <div v-else>/</div>
            </template>
          </el-table-column>
          <el-table-column
            prop="wkshp_name"
            label="生产车间"
            width="105"
            show-tooltip-when-overflow
            sortable="custom"
          />
          <el-table-column
            prop="stepcode"
            label="工序编码"
@@ -323,6 +340,7 @@
import { OutSourceReportExcelSearch, OutSourceReportSearch } from '@/api/reportManager'
import elDragDialog from '@/directive/el-drag-dialog'
import waves from '@/directive/waves'
import { WorkShopSelect } from '@/api/deviceManager'
export default {
  name: 'Zzjg',
@@ -345,6 +363,7 @@
        suppername: '', // 供方名称
        type: '', // 操作类型
        receivdate: '', // 收料时间
        wkshopcode: this.$store.state.settings.orgType === 'W' ? getCookie('stu_torgcode') : '', // 所属车间
        prop: 'out_time', // 排序字段
        order: 'desc', // 排序字段
        page: 1, // 第几页
@@ -377,6 +396,8 @@
      },
      WorkShopArr: [],
      title_value: '数据导入 / 点检部位',
      code: '4',
      shows: false
@@ -392,12 +413,18 @@
  },
  created() {
    this.getOutSourceReportSearch()
    this.getWorkShopSelect()
  },
  mounted() {
    window.addEventListener('resize', this.getHeight)
    this.getHeight()
  },
  methods: {
    // 获取所属车间下拉
    async getWorkShopSelect() {
      const { data: res } = await WorkShopSelect()
      this.WorkShopArr = res
    },
    async getOutSourceReportSearch() {
      let tempDate = this.form.receivdate
      if (tempDate.length > 0) {
@@ -411,6 +438,7 @@
        partspec: this.form.partspec,
        stepname: this.form.stepname,
        suppername: this.form.suppername,
        wkshopcode: this.form.wkshopcode,
        type: this.form.type,
        receivdate: tempDate,
        prop: this.form.prop,
@@ -419,7 +447,6 @@
        rows: this.form.rows
      }
      console.log(data, 1)
      const res = await OutSourceReportSearch(data)
      this.tableData = res.data
      this.total = res.count
@@ -450,6 +477,7 @@
        partspec: this.form.partspec,
        stepname: this.form.stepname,
        suppername: this.form.suppername,
        wkshopcode: this.form.wkshopcode,
        type: this.form.type,
        receivdate: tempDate
      }
@@ -479,78 +507,9 @@
      this.form.suppername = ''
      this.form.type = ''
      this.form.receivdate = ''
      this.form.wkshopcode = this.$store.state.settings.orgType === 'W' ? getCookie('stu_torgcode') : ''// 所属车间
      this.getOutSourceReportSearch()
    },
    // 新增按钮
    add(operation) {
      this.operation = operation
      this.dialogVisible = true
    },
    // 修改按钮
    edit(operation, row) {
      this.operation = operation
      this.dialogVisible = true
      this.$nextTick(() => {
        this.dialogForm.OrgCode = row.org_code
        this.dialogForm.OrgName = row.org_name
        this.dialogForm.SupUnit = row.parent_id
      })
    },
    // 删除按钮
    async del(row) {
      // this.$confirm('是否确认删除?', '提示', {
      //   confirmButtonText: '确定',
      //   cancelButtonText: '取消',
      //   type: 'warning'
      // }).then(() => {
      //   DeleteOrganization({ orgid: row.code }).then(res => {
      //     if (res.code === '200') {
      //       this.$message.success('删除成功!')
      //       if (this.form.page > 1 && this.tableData.length === 1) {
      //         this.form.page--
      //       }
      //       this.getOutSourceReportSearch()
      //     }
      //   })
      // }).catch(() => {
      //   this.$message.info('已取消删除')
      // })
    },
    // 对话框关闭事件
    handleClose() {
      this.dialogForm.OrgType = ''
      this.dialogForm.OrgCode = ''
      this.dialogForm.OrgName = ''
      this.dialogForm.SupUnit = ''
      this.$refs.dialogForm.clearValidate()
    },
    // 对话框取消
    dialogVisibleCancel() {
      this.dialogVisible = false
    },
    // 对话框确认
    dialogVisibleConfirm() {
      this.$refs.dialogForm.validate(valid => {
        if (valid) {
          const data = {
            OrganCode: this.dialogForm.OrgCode,
            OrganName: this.dialogForm.OrgName,
            OperType: this.operation === 'add' ? 'Add' : 'Update',
            Operator: getCookie('admin')
          }
          // AddUpdateOrganization(data).then(res => {
          //   if (res.code === '200') {
          //     this.$message.success(this.operation === 'add' ? '添加成功!' : '修改成功!')
          //     this.dialogVisible = false
          //     this.getOutSourceReportSearch()
          //   } else {
          //     this.$message.error(this.operation === 'add' ? '添加失败!' : '修改失败!')
          //   }
          // })
        }
      })
    },
    // 获取页面高度
    getHeight() {