From 287934f48daa9889f824e12d1af687bc5aa3bbe2 Mon Sep 17 00:00:00 2001
From: Mr.Zhang <710666463@qq.com>
Date: 星期一, 14 八月 2023 18:59:20 +0800
Subject: [PATCH] 工资
---
web_standard/src/components/ext/OperaWorkorderDetailWindow.vue | 217 ++++-----
web_standard/src/api/ext/userSalary.js | 16
web_standard/src/views/ext/salaryStatistic.vue | 182 +++++++
platform_web/src/views/system/permission.vue | 2
web_standard/src/views/ext/workingorderExt.vue | 4
web_standard/src/api/business/salaryParam.js | 40 +
web_standard/src/views/business/workPlans.vue | 7
web_standard/coderd.json | 2
web_standard/src/views/business/salaryParam.vue | 142 ++++++
web_standard/src/views/ext/workorderRecordExt.vue | 18
web_standard/src/api/ext/salaryStatistic.js | 16
platform_web/src/views/system/permissionCom.vue | 99 ++++
/dev/null | 162 -------
web_standard/src/components/ext/OrderDistrubution.vue | 5
web_standard/src/views/ext/userSalary.vue | 201 ++++++++
web_standard/src/components/business/OperaSalaryParamWindow.vue | 229 +++++++++
web_standard/src/views/ext/workorderPutRecordExt.vue | 13
web_standard/.env.development | 3
platform_web/src/components/system/permission/OperaPermissionWindow.vue | 8
19 files changed, 1,071 insertions(+), 295 deletions(-)
diff --git a/platform_web/src/components/system/permission/OperaPermissionWindow.vue b/platform_web/src/components/system/permission/OperaPermissionWindow.vue
index aec81be..0b29104 100644
--- a/platform_web/src/components/system/permission/OperaPermissionWindow.vue
+++ b/platform_web/src/components/system/permission/OperaPermissionWindow.vue
@@ -26,6 +26,12 @@
name: 'OperaPermissionWindow',
extends: BaseOpera,
components: { GlobalWindow },
+ props: {
+ type: {
+ type: Number|String,
+ default: 0
+ }
+ },
data () {
return {
// 鍘熸潈闄愮爜
@@ -58,6 +64,7 @@
this.$nextTick(() => {
this.$refs.form.resetFields()
this.form[this.configData['field.id']] = null
+ this.form.type = this.type
})
return
}
@@ -67,6 +74,7 @@
for (const key in this.form) {
this.form[key] = target[key]
}
+ this.form.type = this.type
})
},
confirm () {
diff --git a/platform_web/src/views/system/permission.vue b/platform_web/src/views/system/permission.vue
index 39071c5..4f68f70 100644
--- a/platform_web/src/views/system/permission.vue
+++ b/platform_web/src/views/system/permission.vue
@@ -60,7 +60,7 @@
></pagination>
</template>
<!-- 鏂板缓/淇敼 -->
- <OperaPermissionWindow ref="operaPermissionWindow" @success="handlePageChange"/>
+ <OperaPermissionWindow ref="operaPermissionWindow" :type="0" @success="handlePageChange"/>
</TableLayout>
</template>
diff --git a/platform_web/src/views/system/permissionCom.vue b/platform_web/src/views/system/permissionCom.vue
new file mode 100644
index 0000000..78201f2
--- /dev/null
+++ b/platform_web/src/views/system/permissionCom.vue
@@ -0,0 +1,99 @@
+<template>
+ <TableLayout :permissions="['system:permission:query']">
+ <!-- 鎼滅储琛ㄥ崟 -->
+ <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline>
+ <el-form-item label="鏉冮檺缂栫爜" prop="code">
+ <el-input v-model="searchForm.code" v-trim placeholder="璇疯緭鍏ユ潈闄愮紪鐮�" @keypress.enter.native="search"/>
+ </el-form-item>
+ <el-form-item label="鏉冮檺鍚嶇О" prop="name">
+ <el-input v-model="searchForm.name" v-trim placeholder="璇疯緭鍏ユ潈闄愬悕绉�" @keypress.enter.native="search"/>
+ </el-form-item>
+ <section>
+ <el-button type="primary" @click="search">鎼滅储</el-button>
+ <el-button @click="reset">閲嶇疆</el-button>
+ </section>
+ </el-form>
+ <!-- 琛ㄦ牸鍜屽垎椤� -->
+ <template v-slot:table-wrap>
+ <ul class="toolbar" v-permissions="['system:permission:create', 'system:permission:delete']">
+ <li><el-button type="primary" @click="$refs.operaPermissionWindow.open('鏂板缓绯荤粺鏉冮檺')" icon="el-icon-plus" v-permissions="['system:permission:create']">鏂板缓</el-button></li>
+ <li><el-button @click="deleteByIdInBatch" v-permissions="['system:permission:delete']">鍒犻櫎</el-button></li>
+ </ul>
+ <el-table
+ v-loading="isWorking.search"
+ :data="tableData.list"
+ :default-sort = "{prop: 'createTime', order: 'descending'}"
+ stripe
+ border
+ @selection-change="handleSelectionChange"
+ @sort-change="handleSortChange"
+ >
+ <el-table-column type="selection" fixed="left" align="center" width="55"></el-table-column>
+ <el-table-column prop="code" label="鏉冮檺缂栫爜" fixed="left" align="center" min-width="200px"></el-table-column>
+ <el-table-column prop="name" label="鏉冮檺鍚嶇О" fixed="left" align="center" min-width="120px"></el-table-column>
+ <el-table-column prop="remark" label="鏉冮檺澶囨敞" align="center" min-width="120px"></el-table-column>
+ <el-table-column prop="createUser" label="鍒涘缓浜�" align="center" min-width="100px">
+ <template slot-scope="{row}">{{row.createUserInfo == null ? '' : row.createUserInfo.username}}</template>
+ </el-table-column>
+ <el-table-column prop="createTime" label="鍒涘缓鏃堕棿" align="center" min-width="140px" sortable="custom" sort-by="perm.CREATE_TIME"></el-table-column>
+ <el-table-column prop="updateUser" label="鏇存柊浜�" align="center" min-width="100px">
+ <template slot-scope="{row}">{{row.updateUserInfo == null ? '' : row.updateUserInfo.username}}</template>
+ </el-table-column>
+ <el-table-column prop="updateTime" label="鏇存柊鏃堕棿" align="center" min-width="140px"></el-table-column>
+ <el-table-column
+ v-if="containPermissions(['system:permission:update', 'system:permission:delete'])"
+ label="鎿嶄綔"
+ align="center"
+ min-width="130"
+ fixed="right"
+ >
+ <template slot-scope="{row}">
+ <el-button v-if="!row.fixed" type="text" @click="$refs.operaPermissionWindow.open('缂栬緫绯荤粺鏉冮檺', row)" v-permissions="['system:permission:update']">缂栬緫</el-button>
+ <el-button v-if="!row.fixed" type="text" @click="deleteById(row)" style="color: red" v-permissions="['system:permission:delete']">鍒犻櫎</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+ <pagination
+ @size-change="handleSizeChange"
+ @current-change="handlePageChange"
+ :pagination="tableData.pagination"
+ ></pagination>
+ </template>
+ <!-- 鏂板缓/淇敼 -->
+ <OperaPermissionWindow ref="operaPermissionWindow" :type="1" @success="handlePageChange"/>
+ </TableLayout>
+</template>
+
+<script>
+import Pagination from '@/components/common/Pagination'
+import TableLayout from '@/layouts/TableLayout'
+import BaseTable from '@/components/base/BaseTable'
+import OperaPermissionWindow from '@/components/system/permission/OperaPermissionWindow'
+export default {
+ name: 'SystemPermission',
+ extends: BaseTable,
+ components: { OperaPermissionWindow, TableLayout, Pagination },
+ data () {
+ return {
+ // 鎼滅储
+ searchForm: {
+ code: '',
+ name: '',
+ remark: '',
+ type: 1
+ }
+ }
+ },
+ created () {
+ this.config({
+ module: '鏉冮檺',
+ api: '/system/permission',
+ sorts: [{
+ property: 'perm.CREATE_TIME',
+ direction: 'DESC'
+ }]
+ })
+ this.search()
+ }
+}
+</script>
diff --git a/web_standard/.env.development b/web_standard/.env.development
index 58469cd..177dd1e 100644
--- a/web_standard/.env.development
+++ b/web_standard/.env.development
@@ -21,5 +21,8 @@
# 鐒︽澗
VUE_APP_BASE_URL = 'http://192.168.0.36:10021/'
+# 姹熻悕
+VUE_APP_BASE_URL = 'http://192.168.0.35:10021'
+
# VUE_APP_BASE_URL = 'https://dmtest.ahapp.net/doumeeplant_api/'
diff --git a/web_standard/coderd.json b/web_standard/coderd.json
index 12a424d..36dcaf5 100644
--- a/web_standard/coderd.json
+++ b/web_standard/coderd.json
@@ -4,7 +4,7 @@
"alias": "eva",
"command": "page",
"option": {
- "resources": "workorder_check_attr_ext"
+ "resources": "salary_param"
}
}
}
\ No newline at end of file
diff --git a/web_standard/src/api/business/salaryParam.js b/web_standard/src/api/business/salaryParam.js
new file mode 100644
index 0000000..6a34dd9
--- /dev/null
+++ b/web_standard/src/api/business/salaryParam.js
@@ -0,0 +1,40 @@
+import request from '../../utils/request'
+
+// 鏌ヨ
+export function fetchList (data) {
+ return request.post('/business/salaryParam/page', data, {
+ trim: true
+ })
+}
+
+// 瀵煎嚭Excel
+export function exportExcel (data) {
+ return request.post('/business/salaryParam/exportExcel', data, {
+ trim: true,
+ download: true
+ })
+}
+
+// 鍒涘缓
+export function create (data) {
+ return request.post('/business/salaryParam/create', data)
+}
+
+// 淇敼
+export function updateById (data) {
+ return request.post('/business/salaryParam/updateById', data)
+}
+
+// 鍒犻櫎
+export function deleteById (id) {
+ return request.get(`/business/salaryParam/delete/${id}`)
+}
+
+// 鎵归噺鍒犻櫎
+export function deleteByIdInBatch (ids) {
+ return request.get('/business/salaryParam/delete/batch', {
+ params: {
+ ids
+ }
+ })
+}
diff --git a/web_standard/src/api/ext/salaryStatistic.js b/web_standard/src/api/ext/salaryStatistic.js
new file mode 100644
index 0000000..039e54e
--- /dev/null
+++ b/web_standard/src/api/ext/salaryStatistic.js
@@ -0,0 +1,16 @@
+import request from '../../utils/request'
+
+// 鏌ヨ
+export function fetchList (data) {
+ return request.post('/ext/workorderRecordExt/salaryStatistic', data, {
+ trim: true
+ })
+}
+
+// 瀵煎嚭Excel
+export function exportExcel (data) {
+ return request.post('/ext/workorderRecordExt/exportSalaryStatistics', data, {
+ trim: true,
+ download: true
+ })
+}
diff --git a/web_standard/src/api/ext/userSalary.js b/web_standard/src/api/ext/userSalary.js
new file mode 100644
index 0000000..c04cc1c
--- /dev/null
+++ b/web_standard/src/api/ext/userSalary.js
@@ -0,0 +1,16 @@
+import request from '../../utils/request'
+
+// 鏌ヨ
+export function fetchList (data) {
+ return request.post('/ext/workorderRecordExt/userSalary', data, {
+ trim: true
+ })
+}
+
+// 瀵煎嚭Excel
+export function exportExcel (data) {
+ return request.post('/ext/workorderRecordExt/exportUserSalary', data, {
+ trim: true,
+ download: true
+ })
+}
diff --git a/web_standard/src/components/business/OperaSalaryParamWindow.vue b/web_standard/src/components/business/OperaSalaryParamWindow.vue
new file mode 100644
index 0000000..19517f6
--- /dev/null
+++ b/web_standard/src/components/business/OperaSalaryParamWindow.vue
@@ -0,0 +1,229 @@
+<template>
+ <GlobalWindow
+ :title="title"
+ :visible.sync="visible"
+ :confirm-working="isWorking"
+ @confirm="confirm"
+ >
+ <el-form :model="form" ref="form" :rules="rules">
+ <el-form-item label="璁′环鏂瑰紡" prop="type">
+ <el-select v-model="form.type" placeholder="璇烽�夋嫨璁′环鏂瑰紡" clearable>
+ <el-option
+ v-for="item in type"
+ :key="item.value"
+ :label="item.label"
+ :value="item.value"
+ >
+ </el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item label="宸ュ巶" prop="departId">
+ <el-select v-model="form.departId" placeholder="璇烽�夋嫨宸ュ巶" clearable @change="selectFactoey">
+ <el-option
+ v-for="item in factories"
+ :key="item.id"
+ :label="item.name"
+ :value="item.id"
+ >
+ </el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item label="鐗╂枡" prop="materialId">
+ <el-select v-model="form.materialId" placeholder="璇烽�夋嫨鐗╂枡" clearable>
+ <el-option
+ v-for="item in materials"
+ :key="item.materialId"
+ :label="item.mmodel.name"
+ :value="item.materialId"
+ >
+ </el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item label="宸ュ簭" prop="procedureId">
+ <el-select v-model="form.procedureId" placeholder="璇烽�夋嫨璁′环鏂瑰紡" clearable>
+ <el-option
+ v-for="item in productes"
+ :key="item.id"
+ :label="item.name"
+ :value="item.id"
+ >
+ </el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item label="宸ヨ祫鍗曚环锛堝厓)" prop="salary">
+ <el-input v-model="form.salary" placeholder="璇疯緭鍏ュ伐璧勫崟浠凤紙鍏�)" v-trim/>
+ </el-form-item>
+ <el-form-item label="鏍囧噯鏁堢巼" prop="num">
+ <div style="display: flex;">
+ <el-input v-model="form.num" v-trim/>/
+ <el-input v-model="form.hours" v-trim/><div class="unit">灏忔椂</div>
+ <el-input v-model="form.minute" v-trim/><div class="unit">鍒嗛挓</div>
+ <el-input v-model="form.second" v-trim/><div>绉�</div>
+ </div>
+ </el-form-item>
+ <el-form-item label="涓嶈壇鍝佹槸鍚﹁鍏�" prop="unqualified">
+ <el-switch v-model="form.unqualified" :inactive-value="0" :active-value="1"></el-switch>
+ <!-- <el-input v-model="form.unqualified" placeholder="璇疯緭鍏ヤ笉鑹搧鏄惁璁″叆 0鍚� 1鏄�" v-trim/> -->
+ </el-form-item>
+
+ </el-form>
+ </GlobalWindow>
+</template>
+
+<script>
+import BaseOpera from '@/components/base/BaseOpera'
+import GlobalWindow from '@/components/common/GlobalWindow'
+import { getDepartmentListByConditon } from '@/api/ext/departmentExt'
+import { getBomMaterialList } from '@/api/ext/bomExt'
+import { routeExt as proceList } from '@/api/ext/routeProcedureExt'
+export default {
+ name: 'OperaSalaryParamWindow',
+ extends: BaseOpera,
+ components: { GlobalWindow },
+ data () {
+ return {
+ // 琛ㄥ崟鏁版嵁
+ form: {
+ id: null,
+ materialId: '',
+ createUser: '',
+ createTime: '',
+ updateUser: '',
+ updateTime: '',
+ remark: '',
+ rootDepartId: '',
+ departId: '',
+ procedureId: '',
+ bomId: '',
+ salary: '',
+ num: '',
+ times: '',
+ hours: '',
+ minute: '',
+ second: '',
+ unqualified: 0,
+ type: ''
+ },
+ type: [
+ { label: '璁′欢', value: 0 },
+ { label: '璁℃椂', value: 1 },
+ ],
+ factories: [],
+ materials: [],
+ productes: [],
+ // 楠岃瘉瑙勫垯
+ rules: {
+ }
+ }
+ },
+ created () {
+ this.config({
+ api: '/business/salaryParam',
+ 'field.id': 'id'
+ })
+ this.initData()
+ },
+ methods: {
+ open (title, target) {
+ this.title = title
+ this.visible = true
+ this.isEdit = false
+ // 鏂板缓
+ if (target == null) {
+ this.$nextTick(() => {
+ this.$refs.form.resetFields()
+ this.form[this.configData['field.id']] = null
+ this.form.times = ''
+ this.form.second = ''
+ this.form.minute = ''
+ this.form.hours = ''
+ this.form.departId = this.factories[0]?this.factories[0].id:''
+ this.selectFactoey(this.form.departId)
+ })
+ return
+ }
+ // 缂栬緫
+ this.$nextTick(() => {
+ this.isEdit = true
+ for (const key in this.form) {
+ this.form[key] = target[key]
+ }
+ let { times } = target
+ this.form.second = +times%60
+ let lesMin = Math.floor(+times/60)
+ this.form.minute = lesMin%60
+ this.form.hours = Math.floor(lesMin/60)
+ this.selectFactoey(this.form.departId, true)
+
+ })
+ },
+ initData() {
+ getDepartmentListByConditon({ type: 1 })
+ .then(res => {
+ this.factories = res
+ })
+ .catch(err => {
+ console.log(err)
+ })
+ },
+ selectFactoey (v, isEdit=false) {
+
+ // console.log(v)
+ if (!isEdit) {
+ this.materials = []
+ this.form.materialId = ''
+ this.form.procedureId = ''
+ this.productes = []
+ }
+ getBomMaterialList({ departId: v })
+ .then(res => {
+ // console.log(res)
+ this.materials = res
+ if (!isEdit) {
+ this.form.materialId = res[0]?res[0].materialId:''
+ }
+ this.selectMaterial(this.form.materialId, isEdit)
+ })
+ .catch(err => {
+ console.log(err)
+ })
+ },
+ selectMaterial (id, isEdit) {
+
+ let routeId;
+ for (const item of this.materials) {
+ if (item.materialId === id) {
+ routeId = item.routeId
+ }
+ }
+ proceList(routeId)
+ .then(res => {
+ // console.log(res)
+ this.productes = res.proceList
+ if (!isEdit) {
+ this.form.procedureId = this.productes[0]?this.productes[0].id:''
+ }
+ }).catch(err => {
+ console.log(err)
+ })
+ },
+ confirm () {
+ // console.log((+this.form.hours) * 3600);
+ // console.log((+this.form.minute) * 60);
+ // console.log(this.form.second);
+ this.form.times = (+this.form.hours) * 3600 + (+this.form.minute)* 60 + (+this.form.second)
+ if (this.form.id == null || this.form.id === '') {
+ this.__confirmCreate()
+ return
+ }
+ this.__confirmEdit()
+ },
+ },
+}
+</script>
+
+<style>
+.unit {
+ white-space: nowrap;
+}
+</style>
diff --git a/web_standard/src/components/ext/OperaWorkorderDetailWindow.vue b/web_standard/src/components/ext/OperaWorkorderDetailWindow.vue
index a189878..a5bfa91 100644
--- a/web_standard/src/components/ext/OperaWorkorderDetailWindow.vue
+++ b/web_standard/src/components/ext/OperaWorkorderDetailWindow.vue
@@ -1,28 +1,23 @@
<template>
- <GlobalWindow
- :title="title"
- width="1182px"
- :visible.sync="visible"
- :confirm-working="isWorking"
- @confirm="confirm"
- >
+ <GlobalWindow :title="title" width="1182px" :visible.sync="visible" :confirm-working="isWorking" @confirm="confirm">
<div style="min-width:1150px">
<el-form :model="form" ref="form" label-width="100px" label-suffix="锛�" inline>
<div style="margin-bottom:15px">
<span class="text-code">{{ form.procedureName + ' | ' + form.mmodel.name + ' ' + form.mmodel.code }}</span>
<!-- 0宸插垱寤恒��1宸插鏂欍��2宸插畬宸ユ銆�3宸叉楠屻��4宸叉姤宸ャ�併��6宸插彇娑� -->
- <span v-if="form.status==0" style="background-color: #305ED5;" class="status-log">宸插垱寤�</span>
- <span v-else-if="form.status==6" style="background-color: #BBBBBB;" class="status-log">宸插彇娑�</span>
- <span v-else style="background-color: #03AF76;" class="status-log">{{ form.status==1 ? '宸插鏂�' : form.status==2 ? '宸插畬宸ユ' : form.status==3 ? '宸叉楠�' : '宸叉姤宸�' }}</span>
+ <span v-if="form.status == 0" style="background-color: #305ED5;" class="status-log">宸插垱寤�</span>
+ <span v-else-if="form.status == 6" style="background-color: #BBBBBB;" class="status-log">宸插彇娑�</span>
+ <span v-else style="background-color: #03AF76;" class="status-log">{{ form.status == 1 ? '宸插鏂�' : form.status == 2 ?
+ '宸插畬宸ユ' : form.status == 3 ? '宸叉楠�' : '宸叉姤宸�' }}</span>
<!-- <span v-if="form.status==3" style="background-color: #BBBBBB;" class="status-log">宸插彇娑�</span> -->
</div>
- <el-form-item label="宸ュ崟缂栧彿" prop="workorderCode" class="count-style" >
+ <el-form-item label="宸ュ崟缂栧彿" prop="workorderCode" class="count-style">
{{ form.code }}
</el-form-item>
- <el-form-item label="鐢熶骇鏃ユ湡" prop="proTime" class="count-style" >
+ <el-form-item label="鐢熶骇鏃ユ湡" prop="proTime" class="count-style">
{{ form.planDate }}
</el-form-item>
- <el-form-item label="鐢熶骇鎵规鍙�" prop="batch" class="count-style" >
+ <el-form-item label="鐢熶骇鎵规鍙�" prop="batch" class="count-style">
{{ form.batch }}
</el-form-item>
<!-- <el-form-item label="璁″垝浜哄憳" prop="planUser" class="count-style" >
@@ -31,8 +26,8 @@
<el-form-item label="璁″垝鏃ユ湡" prop="planDate" class="count-style" >
{{ form.pmodel.createTime }}
</el-form-item> -->
- <el-form-item label="鐢熶骇鏁伴噺" prop="machine" class="count-style" >
- {{ form.planNum ? (form.planNum + (form.umodel.name ? form.umodel.name : '')) : '0' }}
+ <el-form-item label="鐢熶骇鏁伴噺" prop="machine" class="count-style">
+ {{ form.planNum ? (form.planNum + (form.umodel.name ? form.umodel.name : '')) : '0' }}
</el-form-item>
<!-- <el-form-item label="璁″垝鏁伴噺" prop="planNum" class="count-style" >
{{ form.pmodel.num }}
@@ -43,42 +38,36 @@
<!-- <el-form-item label="鍙戝竷鏃ユ湡" prop="startDate" class="count-style" >
{{ form.pmodel.publishDate }}
</el-form-item> -->
- <el-form-item label="鍘熷伐鍗曞彿" prop="originWorkorderId" class="count-style" >
+ <el-form-item label="鍘熷伐鍗曞彿" prop="originWorkorderId" class="count-style">
{{ form.originWorkorderId }}
</el-form-item>
- <el-form-item label="鍒嗛厤浜哄憳" prop="distributeUser" class="count-style" >
+ <el-form-item label="鍒嗛厤浜哄憳" prop="distributeUser" class="count-style">
{{ form.userName }}
</el-form-item>
- <el-form-item label="鍒嗛厤鏃堕棿" prop="distributeTime" class="count-style" >
+ <el-form-item label="鍒嗛厤鏃堕棿" prop="distributeTime" class="count-style">
{{ form.createTime }}
</el-form-item>
- <el-form-item label="鐢熶骇浜哄憳" prop="proUser" class="count-style" >
-
+ <el-form-item label="鐢熶骇浜哄憳" prop="proUser" class="count-style">
+
<div v-for="(item, index) in form.proUserList" :key="index">{{ item.proUserDepartName }}</div>
<!-- {{ form.proUserName + (form.proUserDepartName ? ('/' + form.proUserDepartName) : '') }} -->
</el-form-item>
- <el-form-item label="鐢熶骇璁惧" prop="machine" class="count-style" >
- {{ form.pgmodel && `銆�${form.pgmodel.code}銆�${form.pgmodel.name}`}}
+ <el-form-item label="鐢熶骇璁惧" prop="machine" class="count-style">
+ {{ form.pgmodel && `銆�${form.pgmodel.code}銆�${form.pgmodel.name}` }}
</el-form-item>
-
- <el-form-item label="鍚堟牸鏁伴噺" prop="qualifiedNum" class="count-style" >
+
+ <el-form-item label="鍚堟牸鏁伴噺" prop="qualifiedNum" class="count-style">
{{ form.qualifiedNum ? (form.qualifiedNum + (form.umodel.name ? form.umodel.name : '')) : '0' }}
</el-form-item>
- <el-form-item label="涓嶈壇鏁伴噺" prop="unqualifiedNum" class="count-style" >
+ <el-form-item label="涓嶈壇鏁伴噺" prop="unqualifiedNum" class="count-style">
{{ form.unqualifiedNum ? (form.unqualifiedNum + (form.umodel.name ? form.umodel.name : '')) : '0' }}
</el-form-item>
</el-form>
<!-- 琛ㄦ牸鍜屽垎椤� -->
<el-tabs v-model="activeName" @tab-click="handleClick">
<el-tab-pane label="鐢熶骇鎶ュ伐" name="first">
- <el-table
- v-loading="isSearch"
- :data="report"
- border
- show-summary
- :summary-method="getReportSummaries"
- >
- <!-- stripe -->
+ <el-table v-loading="isSearch" :data="report" border show-summary :summary-method="getReportSummaries">
+ <!-- stripe -->
<el-table-column prop="createTime" label="鎶ュ伐鏃堕棿" min-width="140px"></el-table-column>
<el-table-column label="鐢熶骇浜哄憳" show-overflow-tooltip min-width="100px">
<template slot-scope="{row}">
@@ -86,11 +75,27 @@
</template>
</el-table-column>
<el-table-column prop="machine" label="鐢熶骇璁惧" min-width="100px">
- {{ form.pgmodel && `銆�${form.pgmodel.code}銆�${form.pgmodel.name}`}}
+ {{ form.pgmodel && `銆�${form.pgmodel.code}銆�${form.pgmodel.name}` }}
</el-table-column>
<!-- <el-table-column prop="amodel.code" label="宸ヨ瀹瑰櫒缂栧彿" show-overflow-tooltip="" min-width="100px"></el-table-column> -->
<el-table-column prop="mmodel.name" label="鐗╂枡鍚嶇О" show-overflow-tooltip min-width="100px"></el-table-column>
- <el-table-column prop="doneType" label="鎶ュ伐绫诲瀷" min-width="60px">
+ <el-table-column prop="qualifiedNum" label="鍚堟牸鏁伴噺" min-width="100px">
+ <template slot-scope="{row}">
+ <span class="valid-style">{{ row.qualifiedNum + row.umodel.name }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column prop="unqualifiedNum" label="涓嶈壇鏁伴噺" min-width="100px">
+ <template slot-scope="{row}">
+ <span class="unvalid-style">{{ row.unqualifiedNum + row.umodel.name }}</span>
+ <!-- <span :class="row.materialDonetype==0 ? 'valid-style' : ''">{{ row.num + row.umodel.name }}</span> -->
+ </template>
+ </el-table-column>
+ <el-table-column prop="num" label="鎶ュ伐鏁伴噺" min-width="100px">
+ <template slot-scope="{row}">
+ <span>{{ row.num + row.umodel.name }}</span>
+ </template>
+ </el-table-column>
+ <!-- <el-table-column prop="doneType" label="鎶ュ伐绫诲瀷" min-width="60px">
<template slot-scope="{row}">
<span v-if="row.doneType==0" class="valid-style">鍚堟牸</span>
<span v-else-if="row.doneType==1" class="unvalid-style">涓嶈壇</span>
@@ -102,15 +107,11 @@
<template slot-scope="{row}">
<span :class="row.doneType==0 ? 'valid-style' : (row.doneType==1 ? 'unvalid-style' :(row.doneType==2 ? 'scrap-style' : ''))">{{ row.num ? (row.num + (row.umodel.name ? row.umodel.name : '')) : '0' }}</span>
</template>
- </el-table-column>
+ </el-table-column> -->
</el-table>
</el-tab-pane>
<el-tab-pane label="鐢熶骇妫�楠�" name="second">
- <el-table
- v-loading="isSearch"
- :data="verify"
- stripe
- border>
+ <el-table v-loading="isSearch" :data="verify" stripe border>
<el-table-column prop="code" label="妫�楠岃褰曠紪鍙�" min-width="140px"></el-table-column>
<el-table-column prop="createTime" label="妫�楠屾椂闂�" min-width="140px"></el-table-column>
<el-table-column prop="smodelRealName" label="妫�楠屼汉鍛�" min-width="100px"></el-table-column>
@@ -138,30 +139,23 @@
</el-table-column>
<el-table-column prop="devmodel.code" label="鐢熶骇璁惧" min-width="100px">
<template slot-scope="{row}">
- {{ row.devmodel && `銆�${row.devmodel.code}銆�${row.devmodel.name}`}}
+ {{ row.devmodel && `銆�${row.devmodel.code}銆�${row.devmodel.name}` }}
</template>
</el-table-column>
<!-- <el-table-column prop="proUserids" label="鐢熶骇浜哄憳" show-overflow-tooltip min-width="100px"></el-table-column> -->
</el-table>
</el-tab-pane>
<el-tab-pane label="鐢熶骇鎶曟枡" name="third">
- <el-table
- v-loading="isSearch"
- :data="feeds"
- stripe
- border
- show-summary
- :summary-method="getPutSummaries"
- >
+ <el-table v-loading="isSearch" :data="feeds" stripe border show-summary :summary-method="getPutSummaries">
<el-table-column prop="createTime" label="鎶曟枡鏃堕棿" min-width="140px"></el-table-column>
<!-- <el-table-column prop="amodel.code" label="宸ヨ瀹瑰櫒缂栧彿" min-width="100px"></el-table-column> -->
<el-table-column prop="mmodel.name" label="鐗╂枡鍚嶇О" min-width="100px"></el-table-column>
<el-table-column prop="promodel.name" label="宸ュ簭鍚嶇О" min-width="100px"></el-table-column>
<el-table-column label="璐ㄩ噺灞炴��" min-width="100px">
<template slot-scope="{row}">
- <span v-if="row.materialDonetype==0" class="valid-style">鍚堟牸</span>
- <span v-else-if="row.materialDonetype==1" class="unvalid-style">涓嶈壇</span>
- <span v-else-if="row.materialDonetype==2" class="scrap-style">鎶ュ簾</span>
+ <span v-if="row.materialDonetype == 0" class="valid-style">鍚堟牸</span>
+ <span v-else-if="row.materialDonetype == 1" class="unvalid-style">涓嶈壇</span>
+ <span v-else-if="row.materialDonetype == 2" class="scrap-style">鎶ュ簾</span>
<span v-else>-</span>
</template>
</el-table-column>
@@ -178,12 +172,7 @@
</el-table>
</el-tab-pane>
<el-tab-pane label="鐢熶骇鐐规" name="fourth">
- <el-table
- v-loading="isSearch"
- :data="check"
- stripe
- border
- >
+ <el-table v-loading="isSearch" :data="check" stripe border>
<el-table-column prop="createTime" label="璁板綍鏃堕棿" min-width="140px"></el-table-column>
<el-table-column prop="userName" label="鎿嶄綔浜哄憳" min-width="100px"></el-table-column>
<el-table-column prop="attrName" label="妫�鐐瑰睘鎬�" min-width="100px"></el-table-column>
@@ -203,12 +192,8 @@
<el-table-column prop="value" align="left"></el-table-column>
</el-table> -->
</el-tab-pane>
- <Pagination
- style="margin-top:10px"
- @size-change="handleSizeChange"
- @current-change="handlePageChange"
- :pagination="pagination"
- ></Pagination>
+ <Pagination style="margin-top:10px" @size-change="handleSizeChange" @current-change="handlePageChange"
+ :pagination="pagination"></Pagination>
</el-tabs>
</div>
<div slot="footer" class="window__header">
@@ -229,7 +214,7 @@
name: 'OperaWorkorderDetailWindow',
extends: BaseOpera,
components: { GlobalWindow, Pagination },
- data () {
+ data() {
return {
// 琛ㄥ崟鏁版嵁
form: {
@@ -287,7 +272,7 @@
}
},
inject: ['origins'],
- created () {
+ created() {
this.config({
api: '/ext/materialExt',
'field.id': 'id'
@@ -302,39 +287,39 @@
// })
},
methods: {
- open (title, target) {
+ open(title, target) {
this.title = title
this.visible = true
this.activeName = 'first',
- // 缂栬緫
- this.$nextTick(() => {
- for (const key in this.form) {
- this.form[key] = target[key]
- }
- // console.log('this.form', this.form)
- workorderRecordExtPage(
- {
- capacity: this.pagination.pageSize,
- model: {
- type: 1,
- workorderId: this.form.id
- },
- page: this.pagination.pageIndex,
- sorts: null
- })
- .then(res => {
- // console.log(res)
- this.report = res.records
- this.pagination.pageIndex = res.page
- this.pagination.total = res.total
- this.pagination.pageSize = res.capacity
- })
- .catch(err => {
- console.log(err)
- })
- })
+ // 缂栬緫
+ this.$nextTick(() => {
+ for (const key in this.form) {
+ this.form[key] = target[key]
+ }
+ // console.log('this.form', this.form)
+ workorderRecordExtPage(
+ {
+ capacity: this.pagination.pageSize,
+ model: {
+ type: 1,
+ workorderId: this.form.id
+ },
+ page: this.pagination.pageIndex,
+ sorts: null
+ })
+ .then(res => {
+ // console.log(res)
+ this.report = res.records
+ this.pagination.pageIndex = res.page
+ this.pagination.total = res.total
+ this.pagination.pageSize = res.capacity
+ })
+ .catch(err => {
+ console.log(err)
+ })
+ })
},
- cancel () {
+ cancel() {
this.$refs.form.resetFields()
this.activeName = 'first'
this.pagination.pageIndex = 1
@@ -342,21 +327,21 @@
this.pagination.total = 0
this.visible = false
},
- statusToStr (status) {
+ statusToStr(status) {
for (const item of this.status) {
if (item.id === status) {
return item.name
}
}
},
- originToStr (id) {
+ originToStr(id) {
for (const item of this.origins()) {
if (item.id === id) {
return item.code
}
}
},
- columnStyle ({ row, column, rowIndex, columnIndex }) {
+ columnStyle({ row, column, rowIndex, columnIndex }) {
if (rowIndex % 2 === 0) {
// 淇敼姣忚绗竴涓崟鍏冩牸鐨勮儗鏅壊
return 'background:#f3f6fc;'
@@ -364,22 +349,22 @@
return 'background:#ffffff;'
}
},
- handleClick (tab, event) {
+ handleClick(tab, event) {
this.pagination.pageIndex = 1
this.pagination.pageSize = 10
this.pagination.total = 0
this.search()
},
- handleSizeChange (pageSize) {
+ handleSizeChange(pageSize) {
this.pagination.pageSize = pageSize
this.search()
},
- handlePageChange (pageIndex) {
+ handlePageChange(pageIndex) {
this.pagination.pageIndex = pageIndex
// console.log('鑾峰彇鏁版嵁')
this.search()
},
- search () {
+ search() {
if (this.activeName === 'first') {
workorderRecordExtPage(
{
@@ -389,7 +374,7 @@
workorderId: this.form.id
},
page: this.pagination.pageIndex,
- sorts: [{direction: "DESC", property: "CREATE_TIME"}]
+ sorts: [{ direction: "DESC", property: "CREATE_TIME" }]
})
.then(res => {
// console.log(res)
@@ -408,7 +393,7 @@
workorderId: this.form.id
},
page: this.pagination.pageIndex,
- sorts: [{direction: "DESC", property: "CREATE_TIME"}]
+ sorts: [{ direction: "DESC", property: "CREATE_TIME" }]
})
.then(res => {
// console.log(res.records)
@@ -429,7 +414,7 @@
workorderId: this.form.id
},
page: this.pagination.pageIndex,
- sorts: [{direction: "DESC", property: "CREATE_TIME"}]
+ sorts: [{ direction: "DESC", property: "CREATE_TIME" }]
})
.then(res => {
// console.log(res)
@@ -449,7 +434,7 @@
workorderId: this.form.id
},
page: this.pagination.pageIndex,
- sorts: [{direction: "DESC", property: "CREATE_TIME"}]
+ sorts: [{ direction: "DESC", property: "CREATE_TIME" }]
})
.then(res => {
// console.log(res)
@@ -463,7 +448,7 @@
})
}
},
- getPutSummaries (param) {
+ getPutSummaries(param) {
const { columns, data } = param;
const sums = [];
columns.forEach((column, index) => {
@@ -476,7 +461,7 @@
} else if (index === 5) {
sums[index] = '-';
return;
- }
+ }
const values = data.map(item => Number(item[column.property]));
if (!values.every(value => isNaN(value))) {
sums[index] = 0
@@ -489,15 +474,12 @@
});
return sums
},
- getReportSummaries (param) {
+ getReportSummaries(param) {
const { columns, data } = param;
const sums = [];
columns.forEach((column, index) => {
if (index === 0) {
sums[index] = '鍚堣';
- return;
- } else if (index === 4) {
- sums[index] = '-';
return;
}
const values = data.map(item => Number(item[column.property]));
@@ -522,21 +504,24 @@
width: 23%;
// height: 32px;
}
+
::v-deep .el-form-item {
margin-bottom: 8px !important;
}
+
.text-code {
color: #333;
font-weight: 500;
padding-right: 15px;
font-size: 15px;
- vertical-align:middle;
+ vertical-align: middle;
}
+
.status-log {
padding: 1px 5px;
border-radius: 3px;
font-size: 12px;
- color:#fff;
- vertical-align:middle;
+ color: #fff;
+ vertical-align: middle;
}
</style>
diff --git a/web_standard/src/components/ext/OrderDistrubution.vue b/web_standard/src/components/ext/OrderDistrubution.vue
index 97946e5..9d055e4 100644
--- a/web_standard/src/components/ext/OrderDistrubution.vue
+++ b/web_standard/src/components/ext/OrderDistrubution.vue
@@ -109,9 +109,12 @@
this.form.planDate = new Date()
this.form.planId = target.id
this.form.planNum = target.num - target.distributNum
- getDeviceByCondition({})
+ getDeviceByCondition({procedureId: target.procedureId})
.then(res => {
+
this.device = res
+ this.form.proGroupId = res[0] ? res[0].id : ''
+ this.getUser(this.form.proGroupId)
})
.catch(err => {
console.log(err)
diff --git a/web_standard/src/components/ext/addProcesRoute.vue b/web_standard/src/components/ext/addProcesRoute.vue
deleted file mode 100644
index bd2da93..0000000
--- a/web_standard/src/components/ext/addProcesRoute.vue
+++ /dev/null
@@ -1,162 +0,0 @@
-<template>
- <GlobalWindow
- :title="title"
- :visible.sync="visible"
- :confirm-working="isWorking"
- :width="width"
- @confirm="confirm"
- >
- <div class="text">鍩烘湰淇℃伅</div>
- <el-form聽ref="searchForm"聽聽:model="searchForm"聽label-width="140px"聽inline>
- <el-form-item聽label="宸ヨ壓鍚嶇О:"聽prop="rmodelName"聽required="true">
- <el-input聽v-model="searchForm.rmodelName"聽placeholder="璇疯緭鍏ュ伐鑹哄悕绉�"聽@keypress.enter.native="search"></el-input>
- </el-form-item>
- <el-form-item聽label="宸ヨ壓缂栫爜锛�"聽prop="procedureId"聽required="true">
- 聽聽<GlobalWindow
- 聽聽聽聽:title="title"
- 聽聽聽聽:visible.sync="visible"
- 聽聽聽聽:confirm-working="isWorking"
- 聽聽聽聽:width="width"
- 聽聽聽聽@confirm="confirm"
- 聽聽>
- 聽聽聽聽<div聽class="text">鍩烘湰淇℃伅</div>
- 聽聽聽聽聽<el-form聽ref="searchForm"聽聽:model="searchForm"聽label-width="140px"聽inline>
- 聽聽聽聽聽聽<el-form-item聽label="宸ヨ壓鍚嶇О:"聽prop="rmodelName"聽required="true">
- 聽聽聽聽聽聽聽聽<el-input聽v-model="searchForm.rmodelName"聽placeholder="璇疯緭鍏ュ伐鑹哄悕绉�"聽@keypress.enter.native="search"></el-input>
- 聽聽聽聽聽聽</el-form-item>
- 聽聽聽聽聽聽聽聽<el-form-item聽label="宸ヨ壓缂栫爜锛�"聽prop="procedureId"聽required="true">
- 聽聽<GlobalWindow
- 聽聽聽聽:title="title"
- 聽聽聽聽:visible.sync="visible"
- 聽聽聽聽:confirm-working="isWorking"
- 聽聽聽聽:width="width"
- 聽聽聽聽@confirm="confirm"
- 聽聽>
-<!-- 聽聽聽聽<div聽class="text">鍩烘湰淇℃伅</div>
-聽聽聽聽聽<el-form聽ref="searchForm"聽聽:model="searchForm"聽label-width="140px"聽inline>
-聽聽聽聽聽聽聽聽聽聽聽聽<el-form-item聽label="宸ヨ壓鍚嶇О:"聽prop="rmodelName"聽required="true">
-聽聽聽聽聽聽聽聽<el-input聽v-model="searchForm.rmodelName"聽placeholder="璇疯緭鍏ュ伐鑹哄悕绉�"聽@keypress.enter.native="search"></el-input>
-聽聽聽聽聽聽</el-form-item>
-聽聽聽聽聽聽聽聽<el-form-item聽label="宸ヨ壓缂栫爜锛�"聽prop="procedureId"聽required="true">
->>>>>>> .r46706
-聽聽聽聽聽聽聽聽<el-input聽v-model="searchForm.procedureId"聽placeholder="璇疯緭鍏ュ伐鑹虹紪鐮�"聽@keypress.enter.native="search"></el-input>
-聽聽聽聽聽聽</el-form-item>
-聽聽聽聽聽聽聽聽聽聽<el-form-item聽label="鎵�灞炲伐鍘傦細"聽prop="procedureId"聽required="true">
-聽聽聽聽聽聽聽聽<el-input聽v-model="searchForm.dmodelCompanyId"聽placeholder="璇疯緭鍏ユ墍灞炲伐鍘�"聽@keypress.enter.native="search"></el-input>
-聽聽聽聽聽聽</el-form-item>
-聽聽聽聽聽聽聽聽<div聽class="text聽title"><span>宸ュ簭鍒楄〃</span></div>
-聽聽聽聽聽聽聽聽<div聽style="padding-top:20px">
-聽聽聽聽聽聽聽<el-button聽type="primary"聽聽@click="drawer聽=聽true"聽>娣诲姞宸ュ簭
-聽聽聽聽聽聽聽聽聽<el-drawer
-聽聽聽聽聽title="鎴戞槸鏍囬"
-聽聽聽聽聽:visible.sync="drawer"
-聽聽聽聽聽size='50%'
-聽聽聽聽聽modal="false"
-聽聽聽聽:with-header="false">
-聽聽聽聽<span>鎴戞潵鍟�!</span>
-聽聽聽聽聽聽<div聽class="demo-drawer__footer">
-聽聽聽聽聽聽<el-button聽@click="cancelForm">鍙柭犳秷</el-button>
-聽聽聽聽聽聽<el-button聽type="primary"聽@click="$refs.drawer.closeDrawer()"聽:loading="loading">{{聽loading聽?聽'鎻愪氦涓�...'聽:聽'纭犲畾'聽}}</el-button>
-聽聽聽聽</div>
-聽聽聽聽</el-drawer>
-聽聽聽聽聽聽聽</el-button>
-聽聽聽聽聽聽聽<el-button聽type="primary"聽plain>涓婄Щ</el-button>
-聽聽聽聽聽聽聽<el-button聽type="primary"聽plain>涓嬬Щ</el-button>
-聽聽聽聽聽聽聽</div>
-聽聽聽聽聽聽聽聽聽聽<template聽v-slot:table-wrap>
-聽聽聽聽聽聽<el-table
-聽聽聽聽聽聽聽聽:data="list"
-聽聽聽聽聽聽聽聽stripe
-聽聽聽聽聽聽聽聽border
-聽聽聽聽聽聽聽聽@selection-change="handleSelectionChange"
-聽聽聽聽聽聽>
-聽聽聽聽聽聽聽聽<el-table-column聽type="selection"聽width="55"聽fixed="left"></el-table-column>
-聽聽聽聽聽聽聽聽<el-table-column聽label="鐗╂枡淇℃伅"聽min-width="140px">
-聽聽聽聽聽聽聽聽</el-table-column>
-聽聽聽聽聽聽聽聽<el-table-column聽prop="origin"聽label="浜х敓鏂瑰紡"聽min-width="100px">
-聽聽聽聽聽聽聽聽</el-table-column>
-聽聽聽聽聽聽聽聽</el-table-column>
-聽聽聽聽聽聽聽聽<el-table-column聽label="琚浆鎹㈠睘鎬�"聽min-width="100px">
-聽聽聽聽聽聽聽聽</el-table-column>
-聽聽聽聽聽聽聽聽<el-table-column聽prop="convertedName"聽label="琚浆鎹㈠崟浣�"聽min-width="100px"></el-table-column>
-聽聽聽聽聽聽聽聽<el-table-column聽prop="convertedNum"聽label="琚浆鎹㈡暟鍊�"聽min-width="100px"></el-table-column>
-聽聽聽聽聽聽聽聽<el-table-column聽label="杞崲灞炴��"聽min-width="100px">
-聽聽聽聽聽聽聽聽</el-table-column>
-聽聽聽聽聽聽聽聽<el-table-column聽prop="unitName"聽label="杞崲鍗曚綅"聽min-width="100px"></el-table-column>
-聽聽聽聽聽聽聽聽<el-table-column聽prop="unitNum"聽label="杞崲鏁板��"聽min-width="100px"></el-table-column>
-聽聽聽聽聽聽聽聽<el-table-column聽prop="convertedTime"聽label="杞崲鏃堕棿"聽min-width="140px"></el-table-column>
-聽聽聽聽聽聽聽聽<el-table-column
-聽聽聽聽聽聽聽聽聽聽label="鎿嶄綔"
-聽聽聽聽聽聽聽聽聽聽min-width="120"
-聽聽聽聽聽聽聽聽聽聽fixed="right"
-聽聽聽聽聽聽聽聽>
-聽聽聽聽聽聽聽聽聽聽<template聽slot-scope="{row}">
-聽聽聽聽聽聽聽聽聽聽聽聽<el-button聽type="text"聽@click="$refs.operaUnitConversionExtWindow.open('缂栬緫鍗曚綅杞崲',聽row)">缂栬緫</el-button>
-聽聽聽聽聽聽聽聽聽聽聽聽<el-button聽type="text"聽@click="deleteById(row)">鍒犻櫎</el-button>
-聽聽聽聽聽聽聽聽聽聽</template>
-聽聽聽聽聽聽聽聽</el-table-column>
-聽聽聽聽聽聽</el-table>
-聽聽聽聽聽聽<pagination
-聽聽聽聽聽聽聽聽@size-change="handleSizeChange"
-聽聽聽聽聽聽聽聽@current-change="handlePageChange"
-聽聽聽聽聽聽聽聽:pagination="tableData.pagination"
-聽聽聽聽聽聽>
-聽聽聽聽聽聽</pagination>
-聽聽聽聽</template>
-聽聽聽聽聽聽<section>
-聽聽聽聽聽聽聽聽<el-button聽type="primary"聽@click="search">鏌ユ壘</el-button>
-聽聽聽聽聽聽聽聽<el-button聽type="primary"聽@click="reset">娓呯┖</el-button>
-聽聽聽聽聽聽</section>
-聽聽聽聽</el-form> -->
-聽聽</GlobalWindow>
-</template>
-
-<script>
-import BaseOpera from "@/components/base/BaseOpera";
-import GlobalWindow from "@/components/common/GlobalWindow";
-export default {
- name: "OperaRouteProcedureExtWindow",
- extends: BaseOpera,
- components: { GlobalWindow },
- data() {
- return {
- width: "86%",
- drawer: false,
- searchForm: {
- rmodelName: "",
- routeId: "",
- procedureId: "",
- dmodelCompanyId: "",
- activeIndex: "1",
- activeIndex2: "1",
- id: null,
- deleted: "",
- //聽rmodelName:聽'',
- },
-
- rules: {},
- };
- },
- methods: {},
- created() {
- this.config({
- api: "/ext/routeProcedureExt",
- "field.id": "id",
- });
- },
-};
-</script>
-
-<style聽lang="scss"聽scoped>
-.text {
- font-weight: 500;
-}
-.title {
- width: 80px;
- height: 30px;
- border-bottom: 4px聽solid聽#2E68EC;
- text-align: center;
- color: #2e68ec;
- padding-top: 20px;
-}
-</style>
diff --git a/web_standard/src/views/business/salaryParam.vue b/web_standard/src/views/business/salaryParam.vue
new file mode 100644
index 0000000..11a2579
--- /dev/null
+++ b/web_standard/src/views/business/salaryParam.vue
@@ -0,0 +1,142 @@
+<template>
+ <TableLayout :permissions="['business:salaryparam:query']">
+ <!-- 鎼滅储琛ㄥ崟 -->
+ <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline>
+
+ <el-form-item label="鐗╂枡" prop="keyWord">
+ <el-input v-model="searchForm.keyWord" placeholder="璇疯緭鍏ョ墿鏂欏悕绉�/缂栫爜" @keypress.enter.native="search"></el-input>
+ </el-form-item>
+ <el-form-item label="宸ュ簭" prop="procedureName">
+ <el-input v-model="searchForm.procedureName" placeholder="璇疯緭鍏ュ伐搴�" @keypress.enter.native="search"></el-input>
+ </el-form-item>
+ <el-form-item label="璁′环鏂瑰紡" prop="type">
+ <el-select v-model="searchForm.type" placeholder="璇烽�夋嫨璁′环鏂瑰紡" clearable>
+ <el-option
+ v-for="item in type"
+ :key="item.value"
+ :label="item.label"
+ :value="item.value"
+ >
+ </el-option>
+ </el-select>
+ </el-form-item>
+ <section>
+ <el-button type="primary" @click="search">鎼滅储</el-button>
+ <el-button type="primary" :loading="isWorking.export" v-permissions="['business:salaryparam:exportExcel']" @click="exportExcel">瀵煎嚭</el-button>
+ <el-button @click="reset">閲嶇疆</el-button>
+ </section>
+ </el-form>
+ <!-- 琛ㄦ牸鍜屽垎椤� -->
+ <template v-slot:table-wrap>
+ <ul class="toolbar" v-permissions="['business:salaryparam:create', 'business:salaryparam:delete']">
+ <li><el-button type="primary" @click="$refs.operaSalaryParamWindow.open('鏂板缓缁╂晥宸ヨ祫閰嶇疆')" icon="el-icon-plus" v-permissions="['business:salaryparam:create']">鏂板缓</el-button></li>
+ <li><el-button @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:salaryparam:delete']">鍒犻櫎</el-button></li>
+ </ul>
+ <el-table
+ v-loading="isWorking.search"
+ :data="tableData.list"
+ stripe
+ border
+ @selection-change="handleSelectionChange"
+ >
+ <el-table-column type="selection" width="55"></el-table-column>
+ <el-table-column prop="id" label="涓婚敭" min-width="100px"></el-table-column>
+ <el-table-column prop="type" label="璁′环鏂瑰紡" min-width="100px">
+ <template slot-scope="{row}">
+ {{ row.type == 0 ? '璁′欢' : '璁℃椂' }}
+ </template>
+ </el-table-column>
+ <el-table-column prop="materialName" label="鐗╂枡鍚嶇О" min-width="140px"></el-table-column>
+ <el-table-column prop="materialCode" label="鐗╂枡缂栫爜" min-width="100px"></el-table-column>
+ <el-table-column prop="procedureName" label="宸ュ簭鍚嶇О" min-width="100px"></el-table-column>
+ <el-table-column prop="salary" label="宸ヨ祫鍗曚环锛堝厓)" min-width="100px"></el-table-column>
+ <el-table-column prop="num" label="鏍囧噯鏁伴噺" min-width="100px">
+ </el-table-column>
+ <el-table-column prop="times" label="鏍囧噯鏃堕暱" min-width="100px">
+ <template slot-scope="{row}">
+ {{ timesToStr(row.times) }}
+ </template>
+ </el-table-column>
+ <el-table-column prop="unqualified" label="涓嶈壇鍝佹槸鍚﹁鍏�" min-width="110px">
+ <template slot-scope="{row}">
+ {{ row.unqualified == 0 ? '鍚�' : '鏄�' }}
+ </template>
+ </el-table-column>
+ <el-table-column prop="createTime" label="鍒涘缓鏃堕棿" min-width="150px"></el-table-column>
+ <!-- <el-table-column prop="updateUser" label="鏇存柊浜虹紪鐮�" min-width="100px"></el-table-column> -->
+ <!-- <el-table-column prop="updateTime" label="鏇存柊鏃堕棿" min-width="100px"></el-table-column>
+ <el-table-column prop="remark" label="澶囨敞" min-width="100px"></el-table-column>
+ <el-table-column prop="rootDepartId" label="涓荤粍缁囩紪鐮侊紙鍏宠仈department琛ㄦ牴缁勭粐锛�" min-width="100px"></el-table-column>
+ <el-table-column prop="departId" label="宸ュ巶缂栫爜锛堝叧鑱攄epartment琛級" min-width="100px"></el-table-column>
+ <el-table-column prop="bomId" label="bom缂栫爜锛堝叧鑱攂om琛級" min-width="100px"></el-table-column> -->
+
+ <el-table-column
+ v-if="containPermissions(['business:salaryparam:update', 'business:salaryparam:delete'])"
+ label="鎿嶄綔"
+ min-width="120"
+ fixed="right"
+ >
+ <template slot-scope="{row}">
+ <el-button type="text" @click="$refs.operaSalaryParamWindow.open('缂栬緫缁╂晥宸ヨ祫閰�', row)" v-permissions="['business:salaryparam:update']">缂栬緫</el-button>
+ <el-button type="text" @click="deleteById(row)" v-permissions="['business:salaryparam:delete']">鍒犻櫎</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+ <pagination
+ @size-change="handleSizeChange"
+ @current-change="handlePageChange"
+ :pagination="tableData.pagination"
+ >
+ </pagination>
+ </template>
+ <!-- 鏂板缓/淇敼 -->
+ <OperaSalaryParamWindow ref="operaSalaryParamWindow" @success="handlePageChange"/>
+ </TableLayout>
+</template>
+
+<script>
+import BaseTable from '@/components/base/BaseTable'
+import TableLayout from '@/layouts/TableLayout'
+import Pagination from '@/components/common/Pagination'
+import OperaSalaryParamWindow from '@/components/business/OperaSalaryParamWindow'
+export default {
+ name: 'SalaryParam',
+ extends: BaseTable,
+ components: { TableLayout, Pagination, OperaSalaryParamWindow },
+ data () {
+ return {
+ // 鎼滅储
+ searchForm: {
+ keyWord: '',
+ procedureName: '',
+ type: ''
+ },
+ type: [
+ { label: '璁′欢', value: '0' },
+ { label: '璁℃椂', value: '1' },
+ ]
+ }
+ },
+ created () {
+ this.config({
+ module: '璁剧疆绫�-缁╂晥宸ヨ祫閰嶇疆琛�',
+ api: '/business/salaryParam',
+ 'field.id': 'id',
+ 'field.main': 'id'
+ })
+ this.search()
+ },
+ methods: {
+ timesToStr(times) {
+ if (!times) {
+ return '-'
+ }
+ let sec = times%60
+ let lesMin = Math.floor(times/60)
+ let min = lesMin%60
+ let hours = Math.floor(lesMin/60)
+ return `${hours}鏃�${min}鍒�${sec}绉抈
+ }
+ },
+}
+</script>
diff --git a/web_standard/src/views/business/workPlans.vue b/web_standard/src/views/business/workPlans.vue
index bbf64f7..222ae5d 100644
--- a/web_standard/src/views/business/workPlans.vue
+++ b/web_standard/src/views/business/workPlans.vue
@@ -109,16 +109,15 @@
<span v-else>-</span>
</template>
</el-table-column>
- <el-table-column label="浼樺厛绾�" min-width="80px">
- <template slot-scope="{row}">
+ <el-table-column prop="urgent" label="浼樺厛绾�" min-width="80px">
+ <!-- <template slot-scope="{row}">
<span v-if="row.urgent">{{ row.urgent }}</span>
<span v-else>-</span>
- </template>
+ </template> -->
</el-table-column>
<el-table-column label="鏆傚仠" min-width="80px">
<template slot-scope="{row}">
{{ row.paused==0?'鍚�':'鏄�' }}
-
</template>
</el-table-column>
diff --git a/web_standard/src/views/ext/salaryStatistic.vue b/web_standard/src/views/ext/salaryStatistic.vue
new file mode 100644
index 0000000..e58ab8d
--- /dev/null
+++ b/web_standard/src/views/ext/salaryStatistic.vue
@@ -0,0 +1,182 @@
+<template>
+ <TableLayout v-permissions="['ext:workorderrecordext:query']">
+ <!-- 鎼滅储琛ㄥ崟 -->
+ <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" label-suffix="锛�" inline>
+ <el-form-item label="鐢熶骇浜哄憳" prop="userId">
+ <el-select v-model="searchForm.userId" clearable filterable placeholder="璇烽�夋嫨">
+ <el-option
+ v-for="item in proUsers"
+ :key="item.id"
+ :label="item.name"
+ :value="item.userId">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item label="鐗╂枡缂栫爜" prop="mmodelCode">
+ <el-input v-model="searchForm.mmodelCode" placeholder="璇疯緭鍏ョ墿鏂欑紪鐮�" @keypress.enter.native="search"></el-input>
+ </el-form-item>
+ <el-form-item label="宸ュ簭" prop="procedureId">
+ <el-select v-model="searchForm.procedureId" filterable clearable placeholder="璇烽�夋嫨">
+ <el-option
+ v-for="(item, index) in procedures"
+ :key="index"
+ :label="item.name"
+ :value="item.id">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item label="鎶ュ伐鏃堕棿">
+ <el-date-picker
+ v-model="planDate"
+ type="daterange"
+ value-format="yyyy-MM-dd"
+ range-separator="~"
+ start-placeholder="寮�濮嬫棩鏈�"
+ end-placeholder="缁撴潫鏃ユ湡"
+ @change="dateChange"
+ ></el-date-picker>
+ </el-form-item>
+ <section>
+ <el-button type="primary" @click="search">鎼滅储</el-button>
+ <el-button @click="reset">閲嶇疆</el-button>
+ </section>
+ </el-form>
+ <!-- 琛ㄦ牸鍜屽垎椤� -->
+ <template v-slot:table-wrap>
+ <ul class="toolbar">
+ <!-- v-permissions="['ext:workorderrecordext:exportExcel']" -->
+ <li ><el-button type="primary" :loading="isWorking.export" @click="exportExcel">瀵煎嚭</el-button></li>
+ </ul>
+ <el-table
+ v-loading="isWorking.search"
+ :data="tableData.list"
+ stripe
+ border
+ >
+ <el-table-column type="index" :index="customIndex" label="搴忓彿" fixed="left" min-width="80px">
+
+ </el-table-column>
+ <el-table-column prop="userInfo.userName" label="鐢熶骇浜哄憳" min-width="100px"></el-table-column>
+ <el-table-column prop="userInfo.departName" label="閮ㄩ棬" min-width="100px"> </el-table-column>
+ <el-table-column prop="jijianSalary" label="璁′欢宸ヨ祫" min-width="100px">
+ <template slot-scope="{row}">
+ {{ row.jijianSalary / 100 }}
+ </template>
+ </el-table-column>
+ <el-table-column prop="jishiSalary" label="璁℃椂宸ヨ祫" min-width="100px">
+ <template slot-scope="{row}">
+ {{ row.jishiSalary / 100 }}
+ </template>
+ </el-table-column>
+ <el-table-column prop="num" label="鎶ュ伐鍗曟�绘暟" min-width="100px"></el-table-column>
+ <el-table-column prop="totalSalary" label="灏忚宸ヨ祫(鍏�)" min-width="100px">
+ <template slot-scope="{row}">
+ {{ row.totalSalary / 100 }}
+ </template>
+ </el-table-column>
+
+ </el-table>
+ <pagination
+ @size-change="handleSizeChange"
+ @current-change="handlePageChange"
+ :pagination="tableData.pagination"
+ ></pagination>
+ </template>
+ </TableLayout>
+</template>
+
+<script>
+import BaseTable from '@/components/base/BaseTable'
+import TableLayout from '@/layouts/TableLayout'
+import Pagination from '@/components/common/Pagination'
+import { productesGroup } from '@/api/ext/proceduresExt'
+import { companyUserExtAllUser } from '@/api/ext/companyUserExt'
+export default {
+ name: 'WorkorderRecordExt',
+ extends: BaseTable,
+ components: { TableLayout, Pagination },
+ data () {
+ return {
+ // 鎼滅储
+ searchForm: {
+ procedureId: '',
+ userId: '',
+ startDate: '',
+ endDate: '',
+ materialId: '',
+ },
+ procedures: [
+ ],
+ proUsers: [
+ ],
+
+ orderStatus:[
+ // 0宸插垱寤恒��1宸查鏂欍��2宸插畬宸ユ銆�3宸叉楠屻��4宸茶繑宸ャ��5宸插叆搴撱��6宸叉殏鍋溿��7宸插彇娑堛��8宸插叧闂�
+ // 0宸插垱寤恒��1宸插鏂欍��2宸插畬宸ユ銆�3宸叉楠屻��4宸叉姤宸ャ��5宸插叆搴撱��6宸插彇娑�
+ { name: '宸插垱寤�', id: 0 },
+ { name: '宸插鏂�', id: 1 },
+ { name: '宸插畬宸ユ', id: 2 },
+ { name: '宸叉楠�', id: 3 },
+ { name: '宸叉姤宸�', id: 4 },
+ { name: '宸插彇娑�', id: 6 }
+ ],
+ planDate: []
+ }
+ },
+ created () {
+ this.config({
+ module: '鎶ュ伐璁板綍',
+ api: '/ext/salaryStatistic',
+ 'field.id': 'id',
+ 'field.main': 'name',
+ sorts: [{ direction: 'DESC', property: 'CREATE_TIME' }]
+ })
+
+ this.search()
+ },
+ activated() {
+ productesGroup({})
+ .then(res => {
+ this.procedures = res
+ })
+ .catch(err => {
+ console.log(err)
+ })
+ companyUserExtAllUser({ departmentId: this.$store.state.userInfo.curComDepartment.id })
+ .then(res => {
+ this.proUsers = res
+ })
+ .catch(err => {
+ console.log(err)
+ })
+ },
+ methods: {
+ dateChange (v) {
+ // console.log('鏃ユ湡閫夋嫨浜�')
+ this.searchForm.startDate = v[0]
+ this.searchForm.endDate = v[1]
+ },
+ reset () {
+ // console.log('rest', this.searchDate)
+ this.planDate = []
+ this.searchForm.startDate = ''
+ this.searchForm.endDate = ''
+ this.$refs.searchForm.resetFields()
+ this.search()
+ },
+ statusToStr (row) {
+ for (const item of this.orderStatus) {
+ if (item.id === row.omodel.status) {
+ return item.name
+ }
+ }
+ return '-'
+ },
+ customIndex(index) {
+ console.log();
+ return (this.tableData.pagination.pageIndex-1) * this.tableData.pagination.pageSize + index + 1
+ }
+ }
+}
+
+</script>
diff --git a/web_standard/src/views/ext/userSalary.vue b/web_standard/src/views/ext/userSalary.vue
new file mode 100644
index 0000000..cd82995
--- /dev/null
+++ b/web_standard/src/views/ext/userSalary.vue
@@ -0,0 +1,201 @@
+<template>
+ <TableLayout v-permissions="['ext:workorderrecordext:query']">
+ <!-- 鎼滅储琛ㄥ崟 -->
+ <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" label-suffix="锛�" inline>
+ <el-form-item label="鐢熶骇浜哄憳" prop="userId">
+ <el-select v-model="searchForm.userId" clearable filterable placeholder="璇烽�夋嫨">
+ <el-option
+ v-for="item in proUsers"
+ :key="item.id"
+ :label="item.name"
+ :value="item.userId">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item label="鐗╂枡缂栫爜" prop="mmodelCode">
+ <el-input v-model="searchForm.mmodelCode" placeholder="璇疯緭鍏ョ墿鏂欑紪鐮�" @keypress.enter.native="search"></el-input>
+ </el-form-item>
+ <el-form-item label="宸ュ簭" prop="procedureId">
+ <el-select v-model="searchForm.procedureId" filterable clearable placeholder="璇烽�夋嫨">
+ <el-option
+ v-for="(item, index) in procedures"
+ :key="index"
+ :label="item.name"
+ :value="item.id">
+ </el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item label="鎶ュ伐鏃堕棿">
+ <el-date-picker
+ v-model="planDate"
+ type="daterange"
+ value-format="yyyy-MM-dd"
+ range-separator="~"
+ start-placeholder="寮�濮嬫棩鏈�"
+ end-placeholder="缁撴潫鏃ユ湡"
+ @change="dateChange"
+ ></el-date-picker>
+ </el-form-item>
+ <section>
+ <el-button type="primary" @click="search">鎼滅储</el-button>
+ <el-button @click="reset">閲嶇疆</el-button>
+ </section>
+ </el-form>
+ <!-- 琛ㄦ牸鍜屽垎椤� -->
+ <template v-slot:table-wrap>
+ <ul class="toolbar">
+ <!-- v-permissions="['ext:workorderrecordext:exportExcel']" -->
+ <li ><el-button type="primary" :loading="isWorking.export" @click="exportExcel">瀵煎嚭</el-button></li>
+ </ul>
+ <el-table
+ v-loading="isWorking.search"
+ :data="tableData.list"
+ stripe
+ border
+ >
+ <el-table-column prop="id" label="搴忓彿" fixed="left" min-width="80px"></el-table-column>
+ <el-table-column prop="userInfo.userName" label="鐢熶骇浜哄憳" min-width="100px"></el-table-column>
+ <el-table-column prop="userInfo.departName" label="閮ㄩ棬" min-width="100px"> </el-table-column>
+ <el-table-column prop="materialName" label="鐗╂枡鍚嶇О" min-width="100px"></el-table-column>
+ <el-table-column prop="materialCode" label="鐗╂枡缂栫爜" min-width="140px"></el-table-column>
+ <el-table-column prop="procedureName" label="宸ュ簭鍚嶇О" min-width="100px"></el-table-column>
+ <el-table-column prop="workorderCode" label="宸ュ崟缂栫爜" min-width="150px"></el-table-column>
+ <el-table-column prop="unitName" label="鍗曚綅" min-width="100px"></el-table-column>
+ <el-table-column prop="num" label="鎶ュ伐鏁�" min-width="100px"></el-table-column>
+ <el-table-column prop="qualifiedNum" label="鑹搧鏁�" min-width="100px"></el-table-column>
+ <el-table-column prop="unQualifiedNum" label="涓嶈壇鍝佹暟" min-width="100px"></el-table-column>
+ <el-table-column prop="rate" label="鍚堟牸鐜�(%)" min-width="100px"></el-table-column>
+ </el-table>
+ <pagination
+ @size-change="handleSizeChange"
+ @current-change="handlePageChange"
+ :pagination="tableData.pagination"
+ ></pagination>
+ </template>
+ </TableLayout>
+</template>
+
+<script>
+import BaseTable from '@/components/base/BaseTable'
+import TableLayout from '@/layouts/TableLayout'
+import Pagination from '@/components/common/Pagination'
+import { getDeviceByCondition } from '@/api/ext/deviceExt'
+import { productesGroup } from '@/api/ext/proceduresExt'
+import { companyUserExtAllUser } from '@/api/ext/companyUserExt'
+import { addPrecision } from '@/utils/util'
+export default {
+ name: 'WorkorderRecordExt',
+ extends: BaseTable,
+ components: { TableLayout, Pagination },
+ data () {
+ return {
+ // 鎼滅储
+ searchForm: {
+ procedureId: '',
+ userId: '',
+ startDate: '',
+ endDate: '',
+ materialId: '',
+ },
+ procedures: [
+ ],
+ proUsers: [
+ ],
+
+ orderStatus:[
+ // 0宸插垱寤恒��1宸查鏂欍��2宸插畬宸ユ銆�3宸叉楠屻��4宸茶繑宸ャ��5宸插叆搴撱��6宸叉殏鍋溿��7宸插彇娑堛��8宸插叧闂�
+ // 0宸插垱寤恒��1宸插鏂欍��2宸插畬宸ユ銆�3宸叉楠屻��4宸叉姤宸ャ��5宸插叆搴撱��6宸插彇娑�
+ { name: '宸插垱寤�', id: 0 },
+ { name: '宸插鏂�', id: 1 },
+ { name: '宸插畬宸ユ', id: 2 },
+ { name: '宸叉楠�', id: 3 },
+ { name: '宸叉姤宸�', id: 4 },
+ { name: '宸插彇娑�', id: 6 }
+ ],
+ planDate: []
+ }
+ },
+ created () {
+ this.config({
+ module: '鎶ュ伐璁板綍',
+ api: '/ext/userSalary',
+ 'field.id': 'id',
+ 'field.main': 'name',
+ sorts: [{ direction: 'DESC', property: 'CREATE_TIME' }]
+ })
+
+ this.search()
+ },
+ activated() {
+ productesGroup({})
+ .then(res => {
+ this.procedures = res
+ })
+ .catch(err => {
+ console.log(err)
+ })
+ companyUserExtAllUser({ departmentId: this.$store.state.userInfo.curComDepartment.id })
+ .then(res => {
+ this.proUsers = res
+ })
+ .catch(err => {
+ console.log(err)
+ })
+ },
+ methods: {
+ dateChange (v) {
+ // console.log('鏃ユ湡閫夋嫨浜�')
+ this.searchForm.startDate = v[0]
+ this.searchForm.endDate = v[1]
+ },
+ reset () {
+ // console.log('rest', this.searchDate)
+ this.planDate = []
+ this.searchForm.startDate = ''
+ this.searchForm.endDate = ''
+ this.$refs.searchForm.resetFields()
+ this.search()
+ },
+ statusToStr (row) {
+ for (const item of this.orderStatus) {
+ if (item.id === row.omodel.status) {
+ return item.name
+ }
+ }
+ return '-'
+ },
+ getSummaries (param) {
+ const { columns, data } = param;
+ const sums = [];
+ columns.forEach((column, index) => {
+ if (index === 0) {
+ sums[index] = '鍚堣';
+ return;
+ } else if (index === 4 || index === 8 || index === 6 || index === 10) {
+ // || index === 8 || index === 9 || index === 16 || index === 17
+ sums[index] = '-';
+ return;
+ }
+ const values = data.map(item => {
+ if (index === 6) {
+ return Number(item.omodel.planNum)
+ } else {
+ return Number(item[column.property])
+ }
+
+ });
+ if (!values.every(value => isNaN(value))) {
+ sums[index] = 0
+ values.forEach(item => {
+ sums[index] = addPrecision(item, sums[index])
+ })
+ } else {
+ sums[index] = '-';
+ }
+ });
+ return sums
+ }
+ }
+}
+
+</script>
diff --git a/web_standard/src/views/ext/workingorderExt.vue b/web_standard/src/views/ext/workingorderExt.vue
index 524d150..8fce261 100644
--- a/web_standard/src/views/ext/workingorderExt.vue
+++ b/web_standard/src/views/ext/workingorderExt.vue
@@ -282,7 +282,7 @@
status: '',
mixParam: '',
pgmodelId: '',
- statusList: [0,1,2,3]
+ statusList: [0,1,2,3,7]
},
origins: [],
types: [
@@ -307,7 +307,7 @@
{ name: '宸叉楠�', id: 3 },
// { name: '宸叉姤宸�', id: 4 },
// { name: '宸插叆搴�', id: 5 },
- // { name: '宸插彇娑�', id: 6 }
+ { name: '鐢熶骇涓�', id: 7 }
],
productes: [
],
diff --git a/web_standard/src/views/ext/workorderPutRecordExt.vue b/web_standard/src/views/ext/workorderPutRecordExt.vue
index 4debc12..b618fe0 100644
--- a/web_standard/src/views/ext/workorderPutRecordExt.vue
+++ b/web_standard/src/views/ext/workorderPutRecordExt.vue
@@ -120,19 +120,18 @@
<span class="long-title-style">{{ row.procedureName }}</span>
</template>
</el-table-column>
- <el-table-column prop="doneType" label="璐ㄩ噺灞炴��" min-width="100px">
+ <el-table-column prop="qualifiedNum" label="鍚堟牸鏁伴噺" min-width="100px">
<template slot-scope="{row}">
- <span v-if="row.materialDonetype==0" class="valid-style">鍚堟牸</span>
- <span v-else-if="row.materialDonetype==1" class="unvalid-style">涓嶈壇</span>
- <!-- <span v-else-if="row.doneType==2" class="scrap-style">鎶ュ簾</span> -->
- <span v-else>-</span>
+ <span class="valid-style">{{ row.qualifiedNum + row.umodel.name }}</span>
</template>
</el-table-column>
- <el-table-column prop="num" label="鏁伴噺" min-width="100px">
+ <el-table-column prop="unqualifiedNum" label="涓嶈壇鏁伴噺" min-width="100px">
<template slot-scope="{row}">
- <span :class="row.materialDonetype==0 ? 'valid-style' : 'unvalid-style'">{{ row.num + row.umodel.name }}</span>
+ <span class="unvalid-style">{{ row.num + row.umodel.name}}</span>
+ <!-- <span :class="row.materialDonetype==0 ? 'valid-style' : ''">{{ row.num + row.umodel.name }}</span> -->
</template>
</el-table-column>
+ <el-table-column prop="num" label="鎶ュ伐鏁伴噺" min-width="100px"></el-table-column>
<!-- <el-table-column prop="amodel.code" label="宸ヨ鍣ㄥ叿" min-width="100px"></el-table-column> -->
<el-table-column prop="deviceCode" label="璁惧" show-overflow-tooltip min-width="100px">
<template slot-scope="{row}">
diff --git a/web_standard/src/views/ext/workorderRecordExt.vue b/web_standard/src/views/ext/workorderRecordExt.vue
index 31273cf..02af8b7 100644
--- a/web_standard/src/views/ext/workorderRecordExt.vue
+++ b/web_standard/src/views/ext/workorderRecordExt.vue
@@ -112,7 +112,7 @@
</template>
</el-table-column>
<el-table-column prop="procedureName" label="鐢熶骇鍛樺伐" min-width="100px"></el-table-column>
- <el-table-column prop="doneType" label="鎶ュ伐绫诲瀷" min-width="100px">
+ <!-- <el-table-column prop="doneType" label="鎶ュ伐绫诲瀷" min-width="100px">
<template slot-scope="{row}">
<span v-if="row.doneType==0" class="valid-style">鍚堟牸</span>
<span v-else-if="row.doneType==1" class="unvalid-style">涓嶈壇</span>
@@ -124,6 +124,22 @@
<template slot-scope="{row}">
<span :class="row.doneType==0 ? 'valid-style' : (row.doneType==1 ? 'unvalid-style' : (row.doneType==2 ? 'scrap-style' : ''))">{{ row.num + row.umodel.name }}</span>
</template>
+ </el-table-column> -->
+ <el-table-column prop="qualifiedNum" label="鍚堟牸鏁伴噺" min-width="100px">
+ <template slot-scope="{row}">
+ <span class="valid-style">{{ row.qualifiedNum + row.umodel.name }}</span>
+ </template>
+ </el-table-column>
+ <el-table-column prop="unqualifiedNum" label="涓嶈壇鏁伴噺" min-width="100px">
+ <template slot-scope="{row}">
+ <span class="unvalid-style">{{ row.unqualifiedNum + row.umodel.name}}</span>
+ <!-- <span :class="row.materialDonetype==0 ? 'valid-style' : ''">{{ row.num + row.umodel.name }}</span> -->
+ </template>
+ </el-table-column>
+ <el-table-column prop="num" label="鎶ュ伐鏁伴噺" min-width="100px">
+ <template slot-scope="{row}">
+ <span>{{ row.num + row.umodel.name}}</span>
+ </template>
</el-table-column>
<!-- <el-table-column prop="amodel.code" label="宸ヨ鍣ㄥ叿" min-width="100px"></el-table-column> -->
<el-table-column prop="deviceCode" label="璁惧" show-overflow-tooltip min-width="100px">
--
Gitblit v1.9.3