zouyu
2023-11-09 b15de00ffba31695514c1a404dbbbf65dc1e87c1
Merge branch 'master' of http://114.132.189.42:9002/r/mes-ocea-before
已修改11个文件
289 ■■■■ 文件已修改
package.json 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/quality/finishedProduct.js 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/common/ztt-table.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/equipment/equipment/index.vue 48 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/equipment/metering/index.vue 58 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/equipment/metering/metering-form.vue 58 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/quality/finishedProductInspection/finishedProduct-form.vue 39 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/quality/finishedProductInspection/finishedProduct-print.vue 51 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/quality/finishedProductInspection/index.vue 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/quality/rawMaterial/index.vue 1 ●●●● 补丁 | 查看 | 原始文档 | 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/common/ztt-table.vue
@@ -507,11 +507,11 @@
            >
              <i class="el-icon-upload"></i>
              <div class="el-upload__text"><em>点击导入数据</em></div>
              <div class="el-upload__tip" slot="tip">
              <div class="el-upload__tip" slot="tip" >
                只能上传xlsx/xls文件,且不超过10M<el-button
                  type="text"
                  style="font-size:12px;"
                  @click="downDataTemplate"
                  @click="downDataTemplate"   v-if="uploadInfo.Download"
                  >下载模板</el-button
                >
              </div>
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 {
@@ -36,7 +65,8 @@
        multipleSelection: [],
        uploadInfo: {
          // 是否展示上传EXCEL以及对应的url
          isShow: true,
          Download:false,
         isShow: true,
          url: '/mes/equipmentDevice/upload'
        },
        prelang: 'workstation',
@@ -114,7 +144,7 @@
              minWidth: '150',
              width: '250',
              prop: 'createTime',
              label: '创建时间',
              label: '校准时间',
              sort: true,
              isTrue: true,
              formatter: this.formatReceiveTime,
@@ -126,7 +156,7 @@
              minWidth: '150',
              width: '250',
              prop: 'updateTime',
              label: '修改时间',
              label: '校准到期时间',
              sort: true,
              isTrue: true,
              formatter: this.formatReceiveTime,
@@ -174,7 +204,7 @@
            },
            {
              minWidth: '30',
              prop: 'InspectionUnit',
              prop: 'inspectionUnit',
              label: '检验单位',
              sort: true,
              isTrue: true,
@@ -210,7 +240,7 @@
            },
            {
              minWidth: '30',
              prop: 'FixedPointPosition',
              prop: 'fixedPointPosition',
              label: '定点位置',
              sort: true,
              isTrue: true,
@@ -232,6 +262,11 @@
              text: '新增',
              type: 'primary',
              fun: this.addOrUpdateHandle
            },
            {
              text: '标签打印',
              type: 'primary',
              fun: this.labelPrint
            },
            // {
            //   text: '同步',
@@ -264,12 +299,14 @@
          }
        },
        addOrUpdateVisible: false,
        workshopList: []
        workshopList: [],
        diaPrintTab: false
      }
    },
    components: {
      ttable,
      TableForm
      TableForm,
      vueQr
    },
    computed: {
      ...mapGetters(['permissions'])
@@ -336,6 +373,13 @@
            this.$message.success('删除成功')
            this.getData()
          })
      },
      labelPrint(){
        if(this.multipleSelection.length==0){
          this.$message.warning('请选择一条数据')
          return
        }
        this.diaPrintTab = true
      }
    }
  }
src/views/equipment/metering/metering-form.vue
@@ -22,7 +22,7 @@
              <el-input v-model="dataForm.name" placeholder="名称"></el-input>
            </el-form-item>
          </el-col>
          <el-col :span="12">
          <!-- <el-col :span="12">
            <el-form-item label="类型" prop="type">
              <el-select
                v-model="dataForm.type"
@@ -39,7 +39,16 @@
                </el-option>
              </el-select>
            </el-form-item>
          </el-col>
          </el-col> -->
          <!-- <el-col :span="12">
            <el-form-item label="责任人" prop="createUser">
              <el-input
                v-model="dataForm.createUser"
                placeholder="责任人"
              ></el-input>
            </el-form-item>
          </el-col> -->
          <el-col :span="12">
            <el-form-item label="厂家" prop="supplier">
              <el-input
@@ -48,11 +57,38 @@
              ></el-input>
            </el-form-item>
          </el-col>
          <el-col :span="12">
            <el-form-item label="状态" prop="state">
              <el-select
            <el-form-item label="责任部门" prop="responsibleDepartment">
              <el-input
                v-model="dataForm.responsibleDepartment"
                placeholder="责任部门"
              ></el-input>
            </el-form-item>
          </el-col>
          <el-col :span="12">
            <el-form-item label="状态" prop="status">
              <el-input
                v-model="dataForm.status"
                placeholder="状态"
              ></el-input>
            </el-form-item>
          </el-col>
          <el-col :span="12">
            <el-form-item label="规格" prop="specifications">
              <el-input
                v-model="dataForm.specifications"
                placeholder="规格"
              ></el-input>
            </el-form-item>
          </el-col>
          <!-- <el-col :span="12">
            <el-form-item label="设备状态" prop="status">
              <el-select
                v-model="dataForm.status"
                placeholder="设备状态"
                filterable
                style="width: 100%"
              >
@@ -64,7 +100,7 @@
                />
              </el-select>
            </el-form-item>
          </el-col>
          </el-col> -->
        </el-row>
      </el-form>
      <span slot="footer" class="dialog-footer">
@@ -100,12 +136,18 @@
          typeSpecification: '',
          manufactureDate: '',
          installDate: '',
          state: '',
          // state: '',
          specifications:'',
          responsibleDepartment:'',
          // createUser:'',
          status:'',
          description: '',
          value1: '',
          code: null,
          type: null,
          status: null,
          // type: null,
          // status: null,
          supplier: null
        },
        dataRule: {
src/views/quality/finishedProductInspection/finishedProduct-form.vue
@@ -13,7 +13,7 @@
    </div>
    <div class="page-main">
        <div class="finishedProduct-basic">
            <el-form :model="processInspectVo" ref="addInspectionform" class="l-mes"
            <el-form :model="processInspectVo" ref="addInspectionform" class="l-mes"
            label-position="right" label-width="120px" style="width: 100%" size="small">
                <div class="formwrapper">
                    <el-row>
@@ -86,7 +86,7 @@
            <el-row style="width:100%;">
                <el-col :span="24">
                    <el-table border :data="inspectionItems" height="400"
                        :header-cell-style="{textAlign:'center',color:'black',backgroundColor:'#fafafa'}"
                        :header-cell-style="{textAlign:'center',color:'black',backgroundColor:'#fafafa'}"
                        :cell-style="{textAlign:'center'}" row-key="iid" default-expand-all
                        style="width: 100%" ref="table" :tree-props="{children: 'children', hasChildren: 'hasChildren'}">
                        <el-table-column type="index" label="序号" width="60"></el-table-column>
@@ -96,10 +96,10 @@
                        <el-table-column prop="required" label="标准值" width="240" ></el-table-column>
                        <el-table-column prop="inspectionValue" v-for="(item, index) in empiricalValueAdd" :key="index" label="检测值"
                            width="240" style="text-align: center;">
                            <template slot-scope="scope">
                                <el-col v-if="scope.row.itype === '1'">
                                    <el-tooltip v-if="scope.row.iname!=null" :disabled="scope.row.eId != null"
                                    <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]"
@@ -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"
                                        <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>
@@ -184,7 +186,7 @@
            <el-row style="width:100%;">
                <el-col :span="24">
                    <el-table border height="90" :data="inspectionResultForm"
                    :header-cell-style="{textAlign:'center',color:'black',backgroundColor:'#fafafa'}"
                    :header-cell-style="{textAlign:'center',color:'black',backgroundColor:'#fafafa'}"
                    :cell-style="{textAlign:'center'}">
                        <el-table-column prop="materialCode" label="物料编号"></el-table-column>
                        <el-table-column prop="material" label="物料名称"></el-table-column>
@@ -209,13 +211,14 @@
</template>
<script>
import {
import {
    chooseMater,
    addFinish,
    queryById,
    updateDeviceById,
    updateFinishedInsProduct,
    updateFinishedInspectById,
    selectDeviceAPI,
 } from '@/api/quality/finishedProduct'
import { selectDevice } from '@/api/quality/rawMaterial'
export default {
@@ -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){
@@ -582,4 +587,4 @@
  border-top: 0 !important;
  cursor: pointer !important;
}
</style>
</style>
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
@@ -201,7 +201,25 @@
            }
        },
        created() { },
        watch:{
        printFormData(newVal){
            if(newVal){
                this.printFormData = newVal
            }
        }
    },
        methods: {
            //查看报告按钮
            // 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;
@@ -218,6 +236,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/index.vue
@@ -261,6 +261,7 @@
        //查看报告按钮
        previewFun(row){
            getObj(row.id).then(res=>{
                console.log(res);
                this.printFormData = res.data.data
                this.printDialogVisible = true
            }).catch(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){