Merge remote-tracking branch 'origin/master'

master
hshansha 6 months ago
commit 25cf92841c

@ -22,7 +22,6 @@
<el-date-picker
v-model="queryParams.year"
type="year"
size="mini"
placeholder="选择年"
value-format="yyyy">
</el-date-picker>
@ -31,27 +30,23 @@
<el-date-picker
v-model="queryParams.month"
type="month"
size="mini"
placeholder="选择月"
format="MM"
value-format="MM">
</el-date-picker>
</el-form-item>
<el-form-item label="部门名称" prop="deptName">
<el-input
v-model="queryParams.deptName"
placeholder="请输入部门名称"
clearable
@keyup.enter.native="handleQuery"
/>
<el-form-item label="部门名称" prop="deptId">
<treeselect v-model="queryParams.deptId" :options="deptOptions" :show-count="true" placeholder="请选择部门名称" style="width: 220px"/>
</el-form-item>
<el-form-item label="员工姓名" prop="employeeName">
<el-input
v-model="queryParams.employeeName"
placeholder="请输入员工姓名"
clearable
@keyup.enter.native="handleQuery"
/>
<el-form-item label="员工姓名" prop="employeeId">
<el-select v-model="queryParams.employeeId" filterable clearable placeholder="请选择员工姓名">
<el-option
v-for="item in employeeList"
:key="item.id"
:label="item.name"
:value="item.id">
</el-option>
</el-select>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery"></el-button>
@ -229,9 +224,14 @@
<script>
import { listSalaryReport, editQuerysal, generate, updateSalaryReport } from "@/api/pay/salaryReport";
import { listTenant } from "@/api/pay/tenant";
import { listEmployeeInfo } from "@/api/pay/employeeInfo";
import { deptTreeSelect } from "@/api/system/user";
import Treeselect from "@riophae/vue-treeselect";
import "@riophae/vue-treeselect/dist/vue-treeselect.css";
export default {
name: "SalaryReport",
components: { Treeselect },
data() {
return {
//
@ -260,6 +260,10 @@ export default {
title: "",
//
open: false,
//
employeeList: [],
//
deptOptions: undefined,
//
queryParams: {
pageNum: 1,
@ -428,6 +432,8 @@ export default {
}else {
this.gsInfo.active_id = this.$store.state.user.tenantId
this.getList();
this.getDeptTree();
this.getlistEmployee();
}
},
methods: {
@ -437,7 +443,9 @@ export default {
if(response.rows.length>0){
this.gsInfo.list = response.rows;
this.gsInfo.active_id = this.gsInfo.list[0].id
this.getList()
this.getList();
this.getDeptTree();
this.getlistEmployee();
}else{
this.$alert(`没有查到相关公司,暂无数据!`, `提示`, {
type: 'warning'
@ -448,7 +456,21 @@ export default {
//
changCompany(id){
this.gsInfo.active_id = id
this.getList()
this.getList();
this.getDeptTree();
this.getlistEmployee();
},
/** 查询时员工 */
getlistEmployee() {
listEmployeeInfo({ pageSize: 1000000000, tenantId: this.gsInfo.active_id }).then(response => {
this.employeeList = response.rows
});
},
/** 查询部门下拉树结构 */
getDeptTree() {
deptTreeSelect({tenantId: this.gsInfo.active_id}).then(response => {
this.deptOptions = response.data;
});
},
/** 查询工资明细总列表 */
getList() {

@ -62,19 +62,19 @@
<!-- 包活派工单详情对话框 -->
<el-dialog class="my-dialog" :title="title" :visible.sync="open" width="1250px" append-to-body :close-on-click-modal="false">
<el-form ref="form" :model="form" label-width="100px">
<el-card class="panel-group-top">
<el-form ref="form" :model="form" label-width="90px">
<el-card>
<el-row>
<el-col :span="6">
<el-form-item label="部门" prop="deptId">
<treeselect class="depselect" v-model="form.deptId" :options="deptOptions" :show-count="true" :disabled="true" />
<treeselect disabled class="depselect" v-model="form.deptId" :options="deptOptions" :show-count="true" placeholder="请选择归属部门" style="height: 30px;"/>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="车间" prop="workshop">
<el-select v-model="form.workshop" :disabled="true">
<el-select v-model="form.workshop" placeholder="请选择车间" clearable style="width:100%" disabled>
<el-option
v-for="dict in dict.type.sgr_workshop"
v-for="dict in dict.type.pay_workshop"
:key="dict.value"
:label="dict.label"
:value="dict.value"
@ -84,164 +84,165 @@
</el-col>
<el-col :span="6">
<el-form-item label="工单名称" prop="name">
<el-input v-model="form.name" placeholder="请输入包活工单名称" :disabled="true" />
<el-input v-model="form.name" placeholder="请输入包活工单名称" disabled/>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="工作内容">
<el-input
type="textarea"
:rows="2"
placeholder="请输入工作内容"
v-model="form.content"
:disabled="true">
</el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<el-form-item label="质检人员" prop="qualityName">
<el-input v-model="form.qualityName" placeholder="请输入质检人员" :disabled="true"></el-input>
<el-form-item label="项目经理" prop="managerName">
<el-input v-model="form.managerName" placeholder="请输入项目经理" disabled/>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="检验说明" prop="qualityRemark">
<el-input v-model="form.qualityRemark" type="textarea" placeholder="请输入内容" :disabled="true" />
<el-form-item label="实际入库数量" prop="instorageNum" label-width="100px">
<el-input-number v-model="form.instorageNum" :min="0" :max="10000" style="width: 100%;" disabled></el-input-number>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="入库时间" prop="instorageTime">
<el-date-picker clearable
<el-date-picker clearable style="width:100%" disabled
v-model="form.instorageTime"
type="date"
value-format="yyyy-MM-dd"
placeholder="请选择入库日期"
:disabled="true">
placeholder="请选择入库日期">
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="入库人员" prop="instorageName">
<el-input v-model="form.instorageName" placeholder="请输入入库人员" :disabled="true" />
<el-input v-model="form.instorageName" placeholder="请输入入库人员" disabled/>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="质检人员" prop="qualityName">
<el-input v-model="form.qualityName" placeholder="请输入质检人员" disabled/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="实际入库数量" prop="instorageNum">
<el-input-number v-model="form.instorageNum" :min="0" :max="10000" :disabled="true" ></el-input-number>
<el-form-item label="工作内容">
<el-input disabled
type="textarea"
:rows="2"
placeholder="请输入工作内容"
v-model="form.content">
</el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="项目经理" prop="managerName">
<el-input v-model="form.managerName" placeholder="请输入项目经理" :disabled="true" />
<el-form-item label="检验说明" prop="qualityRemark">
<el-input v-model="form.qualityRemark" type="textarea" placeholder="请输入内容" disabled/>
</el-form-item>
</el-col>
</el-row>
</el-card>
<el-card class="panel-group-top" style="margin-top: 10px;">
<el-row v-for="(emp, index) in form.empList" :key="emp.key">
<el-col :span="1.5">
<el-form-item label="员工姓名" :prop="'empList.' + index + '.empName'">
<el-input v-model="emp.empName" :disabled="true" />
<el-col :span="8">
<el-form-item label="员工姓名" :prop="'empList.' + index + '.empName'" :rules="{required: true, message: '员工姓名不能为空', trigger: 'change'}">
<el-input placeholder="请选择员工姓名" readonly v-model="emp.empName" @focus="changeEmp(emp, index)" disabled>
<i slot="suffix" class="el-input__icon el-icon-search" style="color:#0f00d1; font-weight: bolder"></i>
</el-input>
</el-form-item>
</el-col>
<el-col :span="1.5">
<el-col :span="8">
<el-form-item label="是否帮工" :prop="'empList.' + index + '.helper'">
<template>
<el-radio v-model="emp.helper" :label=0 :disabled="true"></el-radio>
<el-radio v-model="emp.helper" :label=1 :disabled="true"></el-radio>
<el-radio v-model="emp.helper" :label=0 disabled></el-radio>
<el-radio v-model="emp.helper" :label=1 disabled></el-radio>
</template>
</el-form-item>
</el-col>
</el-row>
</el-card>
<el-card class="panel-group-top" style="margin-top: 10px;">
<el-row v-for="(pro, index) in form.prodList" :key="pro.key">
<el-col :span="1.5">
<el-form-item label="产品名称" :prop="'prodList.' + index + '.productName'">
<el-input v-model="pro.productName" :disabled="true" />
<el-row v-for="(pro, index) in form.prodList" :key="pro.key" style="border: 1px solid #eeeeee;padding-top: 10px;margin-top: 5px">
<el-col :span="6">
<el-form-item label="产品名称" :prop="'prodList.' + index + '.productName'" :rules="{required: true, message: '产品名称不能为空', trigger: 'change'}">
<el-input placeholder="请选择产品名称" readonly v-model="pro.productName" @focus="changeProduct(pro, index)" disabled>
<i slot="suffix" class="el-input__icon el-icon-search" style="color:#0f00d1; font-weight: bolder"></i>
</el-input>
</el-form-item>
</el-col>
<el-col :span="1.5">
<el-form-item label="产品价格">
<span style="color: red">
<el-col :span="6">
<el-form-item label="产品价格" label-width="80px">
<div style="color: red; background: #eeeeee; padding: 0 2px; box-sizing: border-box;height: 35px;">
{{pro.minPrice !== null ? pro.minPrice+'元 - '+ pro.maxPrice+ '元' : null}}
</span>
</div>
</el-form-item>
</el-col>
<el-col :span="1.5">
<el-form-item label="产品规格">
<el-input v-model="pro.productSpecification" placeholder="请输入产品规格" :disabled="true" />
<el-col :span="6">
<el-form-item label="产品规格" label-width="80px">
<el-input v-model="pro.productSpecification" placeholder="请输入产品规格" disabled/>
</el-form-item>
</el-col>
<el-col :span="1.5">
<el-form-item label="工序">
<el-input v-model="pro.process" placeholder="请输入工序" :disabled="true" />
<el-col :span="6">
<el-form-item label="工序" label-width="55px">
<el-input v-model="pro.process" placeholder="请输入工序" disabled/>
</el-form-item>
</el-col>
<el-col :span="1.5">
<el-form-item label="加工数量" :prop="'prodList.' + index + '.productNum'">
<el-input v-model="pro.productNum" :disabled="true" />
<el-col :span="6">
<el-form-item label="加工数量" :prop="'prodList.' + index + '.productNum'" :rules="{required: true, validator: validator, trigger: 'change'}">
<el-input-number v-model="pro.productNum" :min="0" :max="10000" style="width: 100%;" @change="changeProductNum(index)" disabled></el-input-number>
</el-form-item>
</el-col>
<el-col :span="1.5">
<el-form-item label="原材料">
<el-input v-model="pro.productMaterial" placeholder="请输入原材料" :disabled="true" />
<el-col :span="6">
<el-form-item label="原材料" label-width="80px">
<el-input v-model="pro.productMaterial" placeholder="请输入原材料" disabled/>
</el-form-item>
</el-col>
<el-col :span="1.5">
<el-form-item label="单位" :prop="'prodList.' + index + '.unit'">
<el-input v-model="pro.unit" :disabled="true" />
<el-col :span="6">
<el-form-item label="单位" label-width="80px" :prop="'prodList.' + index + '.unit'">
<el-input v-model="pro.unit" placeholder="请输入单位" disabled/>
</el-form-item>
</el-col>
<el-col :span="1.5">
<el-form-item label="单价" :prop="'prodList.' + index + '.price'">
<el-input v-model="pro.price" style="width: 145px;" :disabled="true" />
<el-col :span="6">
<el-form-item label="单价" label-width="55px" :prop="'prodList.' + index + '.price'" :rules="{ required: true, message: '单价不能为空', trigger: 'blur' }">
<el-input v-model="pro.price" placeholder="请输入单价" oninput ="value=value.replace(/[^0-9.]/g,'')" @input="inputProductNum(index)" disabled/>
</el-form-item>
</el-col>
<el-col :span="1.5">
<el-form-item label="总金额" :prop="'prodList.' + index + '.amount'">
<el-input v-model="pro.amount" style="width: 145px;" :disabled="true" />
<el-col :span="6">
<el-form-item label="总金额" :prop="'prodList.' + index + '.amount'" :rules="{ required:true, message: '总金额不能为空', trigger: 'blur' }">
<el-input v-model="pro.amount" placeholder="请输入加工总金额" oninput ="value=value.replace(/[^0-9.]/g,'')" disabled/>
</el-form-item>
</el-col>
</el-row>
</el-card>
<el-card class="panel-group-top" style="margin-top: 10px;">
<el-row v-for="(work, index) in form.worktimeList" :key="work.key">
<el-col :span="1.5">
<el-col :span="6">
<el-form-item
label="干活日期"
:prop="'worktimeList.' + index + '.date'">
<el-date-picker
:prop="'worktimeList.' + index + '.date'"
:rules="{required: true, message: '干活日期不能为空', trigger: 'blur'}">
<el-date-picker disabled
v-model="work.date"
type="date"
value-format="yyyy-MM-dd"
placeholder="选择干活日期" style="width: 145px;"
:disabled="true">
placeholder="选择干活日期" style="width: 100%">
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="1.5">
<el-col :span="5">
<el-form-item
label="开始时间"
:prop="'worktimeList.' + index + '.beginTime'">
<el-time-picker v-model="work.beginTime" placeholder="开始时间" value-format="HH:mm" format="HH:mm" style="width: 145px;" :disabled="true"></el-time-picker>
:prop="'worktimeList.' + index + '.beginTime'"
:rules="{required: true, message: '开始时间不能为空', trigger: 'blur'}">
<el-time-picker disabled v-model="work.beginTime" placeholder="开始时间" value-format="HH:mm" format="HH:mm" style="width: 145px;"></el-time-picker>
</el-form-item>
</el-col>
<el-col :span="1.5">
<el-col :span="5">
<el-form-item
label="结束时间"
:prop="'worktimeList.' + index + '.endTime'">
<el-time-picker v-model="work.endTime" value-format="HH:mm" format="HH:mm" placeholder="结束时间" style="width: 145px;" :disabled="true"></el-time-picker>
:prop="'worktimeList.' + index + '.endTime'"
:rules="{required: true, message: '结束时间不能为空', trigger: 'blur'}">
<el-time-picker disabled v-model="work.endTime" value-format="HH:mm" format="HH:mm" placeholder="结束时间" style="width: 145px;"></el-time-picker>
</el-form-item>
</el-col>
<el-col :span="1.5">
<el-col :span="5">
<el-form-item
label="有效时长"
:prop="'worktimeList.' + index + '.validHours'">
<el-input v-model="work.validHours" placeholder="请输入有效工作时长" :disabled="true" />
:prop="'worktimeList.' + index + '.validHours'"
:rules="{required: true, message: '有效时长不能为空', trigger: 'blur'}">
<el-input v-model="work.validHours" placeholder="请输入有效工作时长" disabled/>
</el-form-item>
</el-col>
</el-row>
@ -254,8 +255,7 @@
type="textarea"
:rows="2"
placeholder="请输入备注"
v-model="form.remark"
:disabled="true">
v-model="form.remark" disabled>
</el-input>
</el-form-item>
</el-col>

Loading…
Cancel
Save