王震
2023-11-09 b69442a151f8a0990cd17acb705f482609e6727d
	modified:   package.json
modified: src/api/quality/finishedProduct.js
modified: src/views/equipment/equipment/index.vue
modified: src/views/equipment/metering/index.vue
modified: src/views/quality/finishedProductInspection/finishedProduct-form.vue
modified: src/views/quality/finishedProductInspection/finishedProduct-print.vue
modified: src/views/quality/finishedProductInspection/index.vue
modified: src/views/quality/rawMaterial/rawMaterial-print.vue
已修改8个文件
203 ■■■■ 文件已修改
package.json 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/quality/finishedProduct.js 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/equipment/equipment/index.vue 48 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/equipment/metering/index.vue 47 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/quality/finishedProductInspection/finishedProduct-form.vue 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/quality/finishedProductInspection/finishedProduct-print.vue 51 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/quality/finishedProductInspection/index.vue 21 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/quality/rawMaterial/rawMaterial-print.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
package.json
@@ -44,6 +44,7 @@
    "vue-echarts": "^4.0.1",
    "vue-json-editor": "^1.2.3",
    "vue-json-tree-view": "^2.1.4",
    "vue-qr": "^4.0.9",
    "vue-quill-editor": "3.0.6",
    "vue-router": "^3.0.2",
    "vuedraggable": "^2.24.3",
src/api/quality/finishedProduct.js
@@ -16,6 +16,14 @@
  })
}
export function selectDeviceAPI(query) {
  return request({
    url: '/mes/qualityFinishedInsProduct/selectDevice',
    method: 'get',
    params: query
  })
}
export function addFinish(obj) {
  return request({
    url: '/mes/qualityFinishedInspect/addFinish',
src/views/equipment/equipment/index.vue
@@ -18,6 +18,34 @@
        ref="addOrUpdate"
        @refreshDataList="getData"
      ></table-form>
      <el-dialog title="标签列表" :visible.sync="diaPrintTab" width="500px">
        <div class="dia_body" style="height: 400px;overflow-y: auto;padding: 0 10px;">
          <el-card class="box-card" v-for="(tem, i) in multipleSelection" :key="i" style="margin-bottom: 15px;">
            <el-row>
              <el-col :span="10" :offset="3">序号:</el-col>
              <el-col :span="10" style="font-weight: bold;">{{ i + 1 }}</el-col>
            </el-row>
            <el-row>
              <el-col :span="10" :offset="3">编号:</el-col>
              <el-col :span="10" style="font-weight: bold;">{{ tem.code }}</el-col>
            </el-row>
            <el-row>
              <el-col :span="10" :offset="3">设备名称:</el-col>
              <el-col :span="10" style="font-weight: bold;">{{ tem.name }}</el-col>
            </el-row>
            <el-row>
              <el-col :span="10" :offset="3">设备二维码:</el-col>
              <el-col :span="10">
                <vueQr :text="tem.number" :size="80" :margin="2"></vueQr>
              </el-col>
            </el-row>
          </el-card>
        </div>
        <span slot="footer" class="dialog-footer">
          <el-button @click="diaPrintTab = false">取 消</el-button>
          <el-button type="primary" @click="diaPrintTab = false">打 印</el-button>
        </span>
      </el-dialog>
    </basic-container>
  </div>
</template>
@@ -29,6 +57,7 @@
import { mapGetters } from 'vuex'
import * as fecha from 'element-ui/lib/utils/date'
import { remote } from '../../../api/admin/dict'
import vueQr from 'vue-qr'
export default {
  data() {
    return {
@@ -39,6 +68,7 @@
        isShow: true,
        url: '/mes/equipment/upload'
      },
      diaPrintTab: false,
      prelang: 'workstation',
      options: {
        height: 300, // 默认高度-为了表头固定
@@ -198,6 +228,11 @@
            type: 'primary',
            fun: this.addOrUpdateHandle
          },
          {
              text: '标签打印',
              type: 'primary',
              fun: this.labelPrint
            },
          // {
          //   text: '同步',
          //   type: 'primary',
@@ -234,7 +269,8 @@
  },
  components: {
    ttable,
    TableForm
    TableForm,
    vueQr
  },
  computed: {
    ...mapGetters(['permissions'])
@@ -277,6 +313,7 @@
    },
    handleSelectionChange(val) {
      this.multipleSelection = val
      console.log(this.multipleSelection);
    },
    // 新增 / 修改
    addOrUpdateHandle(row) {
@@ -300,7 +337,14 @@
          this.$message.success('删除成功')
          this.getData()
        })
    }
    },
    labelPrint(){
        if(this.multipleSelection.length==0){
          this.$message.warning('请选择一条数据')
          return
        }
        this.diaPrintTab = true
      }
  }
}
</script>
src/views/equipment/metering/index.vue
@@ -19,6 +19,34 @@
          @refreshDataList="getData"
        ></table-form>
      </basic-container>
      <el-dialog title="标签列表" :visible.sync="diaPrintTab" width="500px">
        <div class="dia_body" style="height: 400px;overflow-y: auto;padding: 0 10px;">
          <el-card class="box-card" v-for="(tem, i) in multipleSelection" :key="i" style="margin-bottom: 15px;">
            <el-row>
              <el-col :span="10" :offset="3">序号:</el-col>
              <el-col :span="10" style="font-weight: bold;">{{ i + 1 }}</el-col>
            </el-row>
            <el-row>
              <el-col :span="10" :offset="3">编号:</el-col>
              <el-col :span="10" style="font-weight: bold;">{{ tem.code }}</el-col>
            </el-row>
            <el-row>
              <el-col :span="10" :offset="3">设备名称:</el-col>
              <el-col :span="10" style="font-weight: bold;">{{ tem.name }}</el-col>
            </el-row>
            <el-row>
              <el-col :span="10" :offset="3">设备二维码:</el-col>
              <el-col :span="10">
                <vueQr :text="tem.code" :size="80" :margin="2"></vueQr>
              </el-col>
            </el-row>
          </el-card>
        </div>
        <span slot="footer" class="dialog-footer">
          <el-button @click="diaPrintTab = false">取 消</el-button>
          <el-button type="primary" @click="diaPrintTab = false">打 印</el-button>
        </span>
      </el-dialog>
    </div>
  </template>
  
@@ -29,6 +57,7 @@
  import { mapGetters } from 'vuex'
  import * as fecha from 'element-ui/lib/utils/date'
  import { remote } from '../../../api/admin/dict'
  import vueQr from 'vue-qr'
  export default {
    data() {
      return {
@@ -233,6 +262,11 @@
              type: 'primary',
              fun: this.addOrUpdateHandle
            },
            {
              text: '标签打印',
              type: 'primary',
              fun: this.labelPrint
            },
            // {
            //   text: '同步',
            //   type: 'primary',
@@ -264,12 +298,14 @@
          }
        },
        addOrUpdateVisible: false,
        workshopList: []
        workshopList: [],
        diaPrintTab: false
      }
    },
    components: {
      ttable,
      TableForm
      TableForm,
      vueQr
    },
    computed: {
      ...mapGetters(['permissions'])
@@ -336,6 +372,13 @@
            this.$message.success('删除成功')
            this.getData()
          })
      },
      labelPrint(){
        if(this.multipleSelection.length==0){
          this.$message.warning('请选择一条数据')
          return
        }
        this.diaPrintTab = true
      }
    }
  }
src/views/quality/finishedProductInspection/finishedProduct-form.vue
@@ -125,12 +125,12 @@
                            <template slot-scope="scope">
                                <span v-if="resultVal!=null && processInspectVo.id!=null" v-text="scope.row.ename"></span>
                                <div v-else>
                                    <el-input  v-model="scope.row.eId"  v-if="scope.row.iname != null" placeholder="请输入设备号"></el-input>
                                    <!-- <el-select style="width:100%" v-model="scope.row.eId"
                                    <!-- <el-input  v-model="scope.row.eId"  v-if="scope.row.iname != null" placeholder="请输入设备号"></el-input> -->
                                    <el-select style="width:100%" v-model="scope.row.eId"
                                    v-if="scope.row.iname != null" filterable @change="updateDevice(scope.row,scope.$index)">
                                        <el-option v-for="(item,index) in deviceList"
                                        :key="index" :value="item.id" :label="item.number +'-'+ item.name"></el-option>
                                    </el-select> -->
                                    </el-select>
                                </div>
                            </template>
                        </el-table-column>
@@ -140,9 +140,11 @@
                                    <el-col v-if="scope.row.itype === '1'">
                                        <el-tooltip v-if="scope.row.iname != null" :disabled="scope.row.eId != null"
                                            class="item" effect="dark" content="请先选择设备!" placement="top-start">
                                            <el-input :disabled="scope.row.eId == null"
                                                v-model="scope.row.inote"
                                                @blur="changeState(scope.row, index)" placeholder="请输入检验描述"></el-input>
                                            <span v-if="resultVal != null && processInspectVo.id != null"
                                                v-text="scope.row.inote"></span>
                                        </el-tooltip>
@@ -150,14 +152,14 @@
                                    <el-col v-else>
                                        <el-tooltip v-if="scope.row.iname != null" :disabled="scope.row.eId != null"
                                            class="item" effect="dark" content="请先选择设备!" placement="top-start">
                                            <!-- <el-input :disabled="scope.row.eId == null"
                                                v-model="scope.row.empiricalValueAddss[index]"
                                                @blur="changeState(scope.row, index)" placeholder="请输入检测值"></el-input> -->
                                            <el-select style="width: 100%;" @change="changeState(scope.row, index)" :disabled="scope.row.eId == null" v-model="scope.row.inote" placeholder="请选择">
                                            <el-input :disabled="scope.row.eId == null"
                                                v-model="scope.row.inote"
                                                @blur="changeState(scope.row, index)" placeholder="请输入检测值"></el-input>
                                            <!-- <el-select style="width: 100%;" @change="changeState(scope.row, index)" :disabled="scope.row.eId == null" v-model="scope.row.inote" placeholder="请选择">
                                                <el-option v-for="item in dataVal" :key="item.value" :label="item.label"
                                                    :value="item.value">
                                                </el-option>
                                            </el-select>
                                            </el-select> -->
                                            <span v-if="resultVal != null && processInspectVo.id != null"
                                                v-text="scope.row.inote"></span>
                                        </el-tooltip>
@@ -216,6 +218,7 @@
    updateDeviceById,
    updateFinishedInsProduct,
    updateFinishedInspectById,
    selectDeviceAPI,
 } from '@/api/quality/finishedProduct'
import { selectDevice } from '@/api/quality/rawMaterial'
export default {
@@ -273,7 +276,7 @@
        this.init()
    },
    methods: {
        submitSave(){
            let pro = 0
            this.inspectionItems.forEach(item => {
@@ -379,9 +382,11 @@
            }
        },
        getDeviceList(){
            selectDevice(null).then(res=>{
            selectDeviceAPI(null).then(res=>{
                // this.deviceList = res.data.data
                console.log(res);
                this.deviceList = res.data.data
            })
        },
        updateDevice(row,index){
src/views/quality/finishedProductInspection/finishedProduct-print.vue
@@ -27,10 +27,16 @@
                <td colspan=2 height=53 class=xl7624921 style='border-right:.5pt solid black;
  height:40.05pt'>项目名称</td>
                <td colspan=2 class=xl6624921 style='border-right:.5pt solid black;
  border-left:none'> </td>
  border-left:none'> 
            <p class="MsoNormal" align="center" style="text-align:center">
                <span lang="EN-US" style="font-family:&quot;Arial&quot;,sans-serif" v-text="deviceStr"></span></p>
            </td>
                <td class=xl6924921 style='border-top:none;border-left:none'>产品名称</td>
                <td colspan=2 class=xl6624921 style='border-right:.5pt solid black;
  border-left:none'> </td>
  border-left:none'>
             <p class="MsoNormal" align="center" style="text-align:center">
                <span lang="EN-US" style="font-family:&quot;Arial&quot;,sans-serif" v-text="product"></span></p>
              </td>
            </tr>
            <tr class=xl6524921 height=53 style='mso-height-source:userset;height:40.05pt'>
                <td colspan=2 height=53 class=xl7624921 style='border-right:.5pt solid black;
@@ -266,7 +272,46 @@
<script>
export default {
    props:{
        formData:{
            type: Object,
            default:()=>{
                return {}
            }
        }
    },
    data(){
        return{
            tableData: null,
            projectList: [],
            deviceStr: null,
            product:null,
            childrenData: [],
        }
    },
    created(){
        this.tableData = this.formData
        console.log("============",this.tableData)
        this.initData()
        // this.initProjectList(this.projectList)
    },
    methods:{
        initData(){
            this.deviceStr = this.tableData.projectName
            this.product = this.tableData.material
        },
    },
    watch:{
        formData(newVal){
            if(newVal){
                this.projectList = []
                console.log(newVal)
                this.tableData = newVal
                this.initData()
                // this.initProjectList(this.projectList)
            }
        }
    },
}
</script>
src/views/quality/finishedProductInspection/index.vue
@@ -195,11 +195,25 @@
            }
        },
        created() { },
        watch:{
        printFormData(newVal){
            if(newVal){
                this.printFormData = newVal
            }
        }
    },
        methods: {
            //查看报告按钮
            showPrint(){
            },
            // showPrint(row){
            //     queryById(row.id).then(res=>{
            //     console.log(res);
            //     this.printFormData = res.data.data
            //     this.printDialogVisible = true
            // })
            // .catch(error=>{
            //     console.log(error);
            // })
            // },
            //打印按钮
            printFun() {
            this.printDialogVisible = false;
@@ -216,6 +230,7 @@
            showPrint(row){
                queryById(row.id).then(res=>{
                    console.log(res);
                this.printFormData = res.data.data
                    this.printDialogVisible = true
                }).catch(error=>{
                    console.log(error);
src/views/quality/rawMaterial/rawMaterial-print.vue
@@ -409,7 +409,7 @@
        this.tableData = this.formData
        this.initData()
        this.initProjectList(this.projectList)
        // console.log("aa--",this.tableData)
        console.log("aa--",this.tableData)
    },
    watch:{
        formData(newVal){