Commit 043bd71c authored by 赵啸非's avatar 赵啸非

修改员工属性

parent 3ada4bf7
......@@ -328,14 +328,11 @@
// 渲染前置处理
beforeRender(data) {
if(data.entity.companyLabelsList) {
data.entity.companyLabelsList.forEach(item => {
//如果相等做操作
item['labelId'] = item[ 'labelId']+ '';
})
this.companyLabelsList = data.entity.companyLabelsList;
}
if(data.entity.companyPatentsList) {
......
......@@ -39,6 +39,12 @@
return {
config: {
search: [
{
name: "labelName",
type: "text",
label: "标签名称"
}
],
columns: [
{type: "selection", width: 60},
......
......@@ -8,11 +8,8 @@
size="50%">
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-row>
<Field label="分组id" prop="groupId" v-model="form.groupId" placeholder="请输入分组id"/>
<Field label="分组名称" prop="groupName" v-model="form.groupName" placeholder="请输入分组名称"/>
<Field label="职位编码" prop="positionCode" v-model="form.positionCode" placeholder="请输入职位编码"/>
<Field label="职位名称" prop="positionName" v-model="form.positionName" placeholder="请输入职位名称"/>
<Field label="节点类型" prop="type" v-model="form.type" type="select" :enumData="dict.type" placeholder="请选择节点类型"/>
<Field label="职位名称" prop="positionName" v-model="form.positionName" placeholder="请输入职位名称"/>
<Field label="职位编码" prop="positionCode" v-model="form.positionCode" placeholder="请输入职位编码"/>
<Field label="备注" prop="remark" v-model="form.remark" type="textarea" placeholder="请输入备注"/>
</el-row>
......
......@@ -44,13 +44,11 @@
{type: "selection", width: 60},
{type: "index",label: "序号",width: 50},
{label: "分组名称", prop: "groupName"},
{label: "职位编码", prop: "positionCode"},
{label: "职位名称", prop: "positionName"},
{label: "职位名称", prop: "positionName"},
{label: "职位编码", prop: "positionCode"},
{label: "节点类型", prop: "type",formatter: this.formatter},
{
label: "操作",
width: 240,
......@@ -65,4 +63,4 @@
};
}
};
</script>
\ No newline at end of file
</script>
......@@ -8,29 +8,14 @@
size="50%">
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-row>
<Field label="员工姓名" prop="name" v-model="form.name" placeholder="请输入员工姓名"/>
<Field label="性别" prop="gender" v-model="form.gender" type="select" :enumData="dict.gender" placeholder="请选择性别"/>
<Field label="出生日期" prop="birthday" v-model="form.birthday" type="date" />
<Field label="照片" prop="photoPath" v-model="form.photoPath" type="textarea" placeholder="请输入照片"/>
<Field label="邮件地址" prop="Email" v-model="form.Email" placeholder="请输入邮件地址"/>
<Field label="联系电话" prop="phoneNumber" v-model="form.phoneNumber" placeholder="请输入联系电话"/>
<Field label="身份证号码" prop="idCard" v-model="form.idCard" placeholder="请输入身份证号码"/>
<Field label="工号" prop="workNum" v-model="form.workNum" placeholder="请输入工号"/>
<Field label="所属公司" prop="companyIds" v-model="form.companyIds" placeholder="请输入所属公司"/>
<Field label="所属公司名称" prop="companyName" v-model="form.companyName" placeholder="请输入所属公司名称"/>
<Field label="职位ID" prop="positionId" v-model="form.positionId" placeholder="请输入职位ID"/>
<Field label="职位名称" prop="positionName" v-model="form.positionName" placeholder="请输入职位名称"/>
<Field label="员工类型" prop="staffType" v-model="form.staffType" type="select" :enumData="dict.staffType" placeholder="请选择员工类型"/>
<Field label="员工状态" prop="staffStatus" v-model="form.staffStatus" type="select" :enumData="dict.staffStatus" placeholder="请选择员工状态"/>
<Field label="员工来源" prop="source" v-model="form.source" type="select" :enumData="dict.source" placeholder="请选择员工来源"/>
<Field label="入职登记表" prop="registerPath" v-model="form.registerPath" type="textarea" placeholder="请输入入职登记表"/>
<Field label="入职时间" prop="entryDate" v-model="form.entryDate" type="date" />
<Field label="转正时间" prop="regularDate" v-model="form.regularDate" type="date" />
<Field label="离职时间" prop="leaveDate" v-model="form.leaveDate" type="date" />
<Field :span="20" label="员工姓名" prop="name" v-model="form.name" placeholder="请输入员工姓名"/>
<Field label="所属公司" prop="companyIds" v-model="form.companyIds" :multiple="true" type="select" :enum-data="dict.companyId" placeholder="请输入所属公司"/>
<Field label="职位" prop="positionId" v-model="form.positionId" type="select" placeholder="请输入职位ID"/>
<Field label="联系电话" prop="phoneNumber" v-model="form.phoneNumber" placeholder="请输入联系电话"/>
<Field label="头像" prop="photoPath" placeholder="请输入照片"><imageUpload v-model="form.photoPath" prePath="/file/preview"/> </Field>
<Field label="邮件地址" prop="Email" v-model="form.Email" placeholder="请输入邮件地址"/>
<Field label="备注" prop="remark" v-model="form.remark" type="textarea" placeholder="请输入备注"/>
<Field label="累计查看次数" prop="sumViews" v-model="form.sumViews" placeholder="请输入累计查看次数"/>
<Field label="当日查看次数" prop="viewsByDay" v-model="form.viewsByDay" placeholder="请输入当日查看次数"/>
<Field label="发送名片次数" prop="sendBusinessCardTimes" v-model="form.sendBusinessCardTimes" placeholder="请输入发送名片次数"/>
</el-row>
......@@ -66,6 +51,8 @@
"staffStatus",
"source",
],
toArrays:["companyIds"],
toDate:[
"birthday",
"entryDate",
......@@ -129,6 +116,13 @@
this.open = true;
},
beforeSubmit(data) {
data.companyIds=data.companyIds.join(",")
return data
},
afterSubmit(data) {
this.open = false;
this.$emit("ok");
......
......@@ -39,36 +39,52 @@
return {
config: {
search: [
],
columns: [
{type: "selection", width: 60},
{type: "index",label: "序号",width: 50},
{label: "员工姓名", prop: "name"},
{label: "性别", prop: "gender",formatter: this.formatter},
{
name: "companyId",
type: "select",
label: "所属企业"
},
{label: "照片", prop: "photoPath"},
{
name: "name",
type: "text",
label: "员工姓名"
},
{label: "邮件地址", prop: "Email"},
{label: "联系电话", prop: "phoneNumber"},
],
columns: [
{type: "index",label: "序号",width: 50},
{label: "职位名称", prop: "positionName"},
{label: "员工姓名", prop: "name"},
{label: "员工类型", prop: "staffType",formatter: this.formatter},
{label: "头像", prop: "photoPath",formatter: (row) => {
return row.photoPath != "" ? (
<el-image
style="width: 70px; height: 70px"
src={row.photoPath}
preview-src-list={[row.photoPath]}
></el-image>
) : (
"--"
);
},},
{label: "员工状态", prop: "staffStatus",formatter: this.formatter},
{label: "联系电话", prop: "phoneNumber"},
{label: "员工来源", prop: "source",formatter: this.formatter},
{label: "邮件地址", prop: "Email"},
{label: "入职时间", prop: "entryDate", formatter: this.formatterDate},
{label: "所属公司", prop: "companyId",formatter: this.formatters},
{label: "转正时间", prop: "regularDate", formatter: this.formatterDate},
{label: "离职时间", prop: "leaveDate", formatter: this.formatterDate},
{label: "职位", prop: "positionName"},
{label: "发送名片次数", prop: "sendBusinessCardTimes"},
{label: "累计查看次数", prop: "sumViews"},
{label: "创建用户", prop: "createUserId", formatter: this.formatter},
{label: "最近更新时间", prop: "updateTime", formatter: this.formatterDate},
{label: "更新人员", prop: "updateUserId", formatter: this.formatter},
{
label: "操作",
width: 240,
......
package com.mortals.xhx.module.staff.web;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.base.system.param.service.ParamService;
import com.mortals.xhx.module.company.model.CompanyQuery;
import com.mortals.xhx.module.company.service.CompanyService;
import com.mortals.xhx.module.position.model.PositionQuery;
import com.mortals.xhx.module.position.service.PositionService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import com.mortals.framework.model.Context;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.module.staff.model.StaffEntity;
import com.mortals.xhx.module.staff.service.StaffService;
import org.apache.commons.lang3.ArrayUtils;
import com.mortals.framework.util.StringUtils;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import com.alibaba.fastjson.JSONObject;
import java.util.Arrays;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import static com.mortals.framework.ap.SysConstains.*;
/**
*
* 员工基本信息
*
* @author zxfei
* @date 2023-09-18
*/
* 员工基本信息
*
* @author zxfei
* @date 2023-09-18
*/
@RestController
@RequestMapping("staff")
public class StaffController extends BaseCRUDJsonBodyMappingController<StaffService,StaffEntity,Long> {
public class StaffController extends BaseCRUDJsonBodyMappingController<StaffService, StaffEntity, Long> {
@Autowired
private ParamService paramService;
@Autowired
private CompanyService companyService;
@Autowired
private PositionService positionService;
public StaffController(){
super.setModuleDesc( "员工基本信息");
public StaffController() {
super.setModuleDesc("员工基本信息");
}
@Override
protected void init(Map<String, Object> model, Context context) {
this.addDict(model, "gender", paramService.getParamBySecondOrganize("Staff","gender"));
this.addDict(model, "staffType", paramService.getParamBySecondOrganize("Staff","staffType"));
this.addDict(model, "staffStatus", paramService.getParamBySecondOrganize("Staff","staffStatus"));
this.addDict(model, "source", paramService.getParamBySecondOrganize("Staff","source"));
this.addDict(model, "gender", paramService.getParamBySecondOrganize("Staff", "gender"));
this.addDict(model, "staffType", paramService.getParamBySecondOrganize("Staff", "staffType"));
this.addDict(model, "staffStatus", paramService.getParamBySecondOrganize("Staff", "staffStatus"));
this.addDict(model, "source", paramService.getParamBySecondOrganize("Staff", "source"));
this.addDict(model, "companyId", companyService.find(new CompanyQuery()).stream().collect(Collectors.toMap(x -> x.getId().toString(), y -> y.getCompanyName(), (o, n) -> n)));
this.addDict(model, "positionId", positionService.find(new PositionQuery()).stream().collect(Collectors.toMap(x -> x.getId().toString(), y -> y.getPositionName(), (o, n) -> n)));
super.init(model, context);
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment