Merge pull request !87 from dxfeng/feature/dxf
pull/88/MERGE
dxfeng 3 years ago committed by Gitee
commit 82b240bce9
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F

@ -14,6 +14,7 @@ import com.api.hrm.util.ServiceUtil;
import com.engine.kq.cmd.shiftmanagement.toolkit.ShiftManagementToolKit;
import com.engine.organization.entity.SelectOptionParam;
import com.engine.organization.entity.extend.param.ExtendInfoFieldParam;
import com.engine.organization.entity.extend.po.ExtendGroupPO;
import com.engine.organization.entity.extend.po.ExtendInfoPO;
import com.engine.organization.util.OrganizationFormItemUtil;
import com.engine.sensitive.biz.SensitiveWordTypeComInfo;
@ -23,10 +24,7 @@ import weaver.hrm.User;
import weaver.hrm.definedfield.HrmFieldManager;
import weaver.systeminfo.SystemEnv;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.*;
/**
* @description:
@ -66,13 +64,46 @@ public class ExtendInfoBO {
}
public static ExtendInfoPO convertFieldParam2ExtendInfo(ExtendInfoFieldParam infoFieldParam) {
/**
*
*
* @param user
* @param infoFieldParam
* @param extendGroupPO
* @param extendGroupId
* @param showOrder
* @return
*/
public static ExtendInfoPO convertFieldParam2ExtendInfo(User user, ExtendInfoFieldParam infoFieldParam, ExtendGroupPO extendGroupPO, Long extendGroupId, Integer showOrder) {
if (null == infoFieldParam) {
return null;
}
String controlType = infoFieldParam.getControlType();
String browserType = infoFieldParam.getBrowserType(controlType);
String dbType = infoFieldParam.getDbType(controlType, browserType);
return ExtendInfoPO
.builder()
.id(infoFieldParam.getId())
.extendType(extendGroupPO.getExtendType())
.tableName(ExtendGroupBO.getTableNameByGroupPO(extendGroupPO))
.fieldName(infoFieldParam.getFieldname())
.fieldNameDesc(infoFieldParam.getFieldlabel())
// 数据库类型
.fieldType(dbType)
.controlType(Integer.parseInt(controlType))
.browserType(browserType)
.extendGroupId(extendGroupId)
.isenable(Integer.parseInt(infoFieldParam.getEnable()))
.isrequired(Integer.parseInt(infoFieldParam.getRequired()))
.listShow(1)
.editShow(1)
.addShow(1)
.browserShow(1)
.customValue(infoFieldParam.getFieldType().toString())
.showOrder(showOrder)
.creator((long) user.getUID())
.deleteType(0)
.createTime(new Date())
.build();
}

@ -2,6 +2,7 @@ package com.engine.organization.entity.extend.param;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.engine.hrm.biz.FieldParam;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
@ -19,7 +20,7 @@ import weaver.general.Util;
@AllArgsConstructor
@NoArgsConstructor
public class ExtendInfoFieldParam {
private String id;
private Long id;
// field_name
private String fieldname;
// field_name_desc
@ -27,8 +28,6 @@ public class ExtendInfoFieldParam {
private Object fieldType;
private ExtendInfoTypeParam infoTypeParam;
private String enable;
private String required;
@ -39,7 +38,6 @@ public class ExtendInfoFieldParam {
public String getControlType() {
JSONArray fieldType = (JSONArray) this.getFieldType();
ExtendInfoTypeParam infoTypeParam = new ExtendInfoTypeParam();
String fieldHtmlType = Util.null2String(fieldType.get(0));
if (fieldHtmlType.equals("input")) {
fieldHtmlType = "1";
@ -89,4 +87,27 @@ public class ExtendInfoFieldParam {
}
return browserType;
}
public String getDbType(String controlType, String browserType) {
FieldParam fp = new FieldParam();
if (controlType.equals("1")) {
JSONArray fieldType = (JSONArray) this.getFieldType();
String dbLength = "100";
if (fieldType.size() > 2) {
dbLength = fieldType.get(2).toString();
}
fp.setSimpleText(Util.getIntValue(browserType, -1), dbLength);
} else if (controlType.equals("2")) {
fp.setText();
} else if (controlType.equals("3")) {
fp.setBrowser(Util.getIntValue(browserType, -1));
} else if (controlType.equals("4")) {
fp.setCheck();
} else if (controlType.equals("5")) {
fp.setSelect();
} else if (controlType.equals("6")) {
fp.setAttach();
}
return fp.getFielddbtype();
}
}

@ -1,26 +0,0 @@
package com.engine.organization.entity.extend.param;
import com.engine.hrm.entity.FieldSelectOptionBean;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.List;
/**
* @description: TODO
* @author:dxfeng
* @createTime: 2022/06/15
* @version: 1.0
*/
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class ExtendInfoTypeParam {
private String fieldHtmlType;
private String fieldType;
private Object otherParam;
private List<FieldSelectOptionBean> lsSelectOption;
}

@ -1,6 +1,5 @@
package com.engine.organization.mapper.extend;
import com.engine.organization.entity.extend.po.ExtendGroupPO;
import com.engine.organization.entity.extend.po.ExtendInfoPO;
import org.apache.ibatis.annotations.Param;
@ -18,5 +17,7 @@ public interface ExtendInfoMapper {
int countFieldsByGroupId(@Param("groupId") Long groupId);
int updateExtendInfo(ExtendInfoPO extendInfo);
}

@ -53,6 +53,9 @@
, t.create_time
, t.update_time
</sql>
<update id="updateExtendInfo">
</update>
<select id="listFields" resultMap="BaseResultMap">

@ -6,8 +6,11 @@ import com.alibaba.fastjson.JSONObject;
import com.engine.core.impl.Service;
import com.engine.organization.entity.DeleteParam;
import com.engine.organization.entity.extend.bo.ExtendGroupBO;
import com.engine.organization.entity.extend.bo.ExtendInfoBO;
import com.engine.organization.entity.extend.param.ExtendInfoFieldParam;
import com.engine.organization.entity.extend.param.ExtendTitleSaveParam;
import com.engine.organization.entity.extend.po.ExtendGroupPO;
import com.engine.organization.entity.extend.po.ExtendInfoPO;
import com.engine.organization.entity.extend.po.ExtendTitlePO;
import com.engine.organization.entity.fieldset.param.FieldTypeTreeParam;
import com.engine.organization.entity.fieldset.vo.TypeTreeVO;
@ -65,9 +68,9 @@ public class FieldDefinedServiceImpl extends Service implements FieldDefinedServ
tab.put("tabkey", idx++);
tab.put("title", extendTitle.getTitle());
tab.put("isShow", extendTitle.getIsShow());
tab.put("groupid", extendTitle.getGroupId());
tab.put("groupid", extendTitle.getId());
tab.put("viewAttr", extendTitle.getGroupId() < 0 ? 1 : 2);
tab.put("editable", !(getExtendInfoMapper().countFieldsByGroupId(extendTitle.getId()) > 0));
tab.put("editable", getExtendInfoMapper().countFieldsByGroupId(extendTitle.getId()) == 0);
tabs.add(tab);
}
datas.put("status", "1");
@ -84,15 +87,26 @@ public class FieldDefinedServiceImpl extends Service implements FieldDefinedServ
// extend_group主键
Long groupType = jsonObject.getLong("groupType");
ExtendGroupPO extendGroup = getExtendGroupMapper().getGroupById(groupType);
Integer extendType = extendGroup.getExtendType();
String tableName = ExtendGroupBO.getTableNameByGroupPO(extendGroup);
// 主表、主表拓展表为extend_title主键明细表为extend_group主键
Long extendGroupId = jsonObject.getLong("groupId");
JSONArray records = (JSONArray) jsonObject.get("records");
for (int i = 0; i < records.size(); i++) {
// 存在ID则更新 不存在ID则增加
ExtendInfoFieldParam infoFieldParam = JSONObject.toJavaObject((JSONObject) records.get(i), ExtendInfoFieldParam.class);
// TODO
ExtendInfoPO extendInfo = ExtendInfoBO.convertFieldParam2ExtendInfo(user, infoFieldParam, extendGroup, extendGroupId, i + 1);
if (null != extendInfo.getId()) {
// 更新 extend_title数据
getExtendInfoMapper().updateExtendInfo(extendInfo);
} else {
// 新增extend_title数据
// 新增表结构
}
}
return 0;
}
@ -122,7 +136,7 @@ public class FieldDefinedServiceImpl extends Service implements FieldDefinedServ
}
if (null == extendTitle.getId()) {
extendTitle.setCreator((long)user.getUID());
extendTitle.setCreator((long) user.getUID());
extendTitle.setCreateTime(new Date());
extendTitle.setDeleteType(0);
getExtendTitleMapper().insertIgnoreNull(extendTitle);
@ -152,7 +166,7 @@ public class FieldDefinedServiceImpl extends Service implements FieldDefinedServ
extendTitle.setIsShow(param.getIsShow());
extendTitle.setTitle(param.getGroupName());
extendTitle.setShowOrder(null == extendTitlePO ? 0 : extendTitlePO.getShowOrder() + 1);
extendTitle.setCreator((long)user.getUID());
extendTitle.setCreator((long) user.getUID());
extendTitle.setCreateTime(new Date());
extendTitle.setDeleteType(0);
getExtendTitleMapper().insertIgnoreNull(extendTitle);
@ -171,11 +185,12 @@ public class FieldDefinedServiceImpl extends Service implements FieldDefinedServ
//默认新增title
ExtendTitlePO extendTitlePO = buildExtendTitleType(extendGroupPO);
MapperProxyFactory.getProxy(ExtendTitleMapper.class).insertIgnoreNull(extendTitlePO);
}else {
MapperProxyFactory.getProxy(ExtendGroupMapper.class).update(fieldTypeTreeParam.getId(),fieldTypeTreeParam.getName());
} else {
MapperProxyFactory.getProxy(ExtendGroupMapper.class).update(fieldTypeTreeParam.getId(), fieldTypeTreeParam.getName());
}
}
@Override
public int deleteTitle(ExtendTitleSaveParam param) {
int countFields = getExtendInfoMapper().countFieldsByGroupId(param.getGroupType());
@ -214,7 +229,4 @@ public class FieldDefinedServiceImpl extends Service implements FieldDefinedServ
}
}

@ -34,7 +34,7 @@ public class FieldDefinedController {
@Path("/{moduleTypeEnum}/getTree")
@Produces(MediaType.APPLICATION_JSON)
public ReturnResult getTree(@Context HttpServletRequest request, @Context HttpServletResponse response,
@PathParam("moduleTypeEnum") ModuleTypeEnum moduleTypeEnum) {
@PathParam("moduleTypeEnum") ModuleTypeEnum moduleTypeEnum) {
try {
User user = HrmUserVarify.getUser(request, response);
return getFieldDefinedWrapper(user).getTree(moduleTypeEnum);
@ -47,7 +47,7 @@ public class FieldDefinedController {
@Path("/{moduleTypeEnum}/saveTree")
@Produces(MediaType.APPLICATION_JSON)
public ReturnResult saveTree(@Context HttpServletRequest request, @Context HttpServletResponse response,
@PathParam("moduleTypeEnum") ModuleTypeEnum moduleTypeEnum) {
@PathParam("moduleTypeEnum") ModuleTypeEnum moduleTypeEnum) {
try {
User user = HrmUserVarify.getUser(request, response);
return getFieldDefinedWrapper(user).getTree(moduleTypeEnum);
@ -60,21 +60,20 @@ public class FieldDefinedController {
@Path("/{moduleTypeEnum}/changeTree")
@Produces(MediaType.APPLICATION_JSON)
public ReturnResult changeTree(@Context HttpServletRequest request, @Context HttpServletResponse response,
@PathParam("moduleTypeEnum") ModuleTypeEnum moduleTypeEnum, @RequestBody FieldTypeTreeParam fieldTypeTreeParam) {
@PathParam("moduleTypeEnum") ModuleTypeEnum moduleTypeEnum, @RequestBody FieldTypeTreeParam fieldTypeTreeParam) {
try {
User user = HrmUserVarify.getUser(request, response);
return getFieldDefinedWrapper(user).changeTree(moduleTypeEnum,fieldTypeTreeParam);
return getFieldDefinedWrapper(user).changeTree(moduleTypeEnum, fieldTypeTreeParam);
} catch (Exception e) {
return ReturnResult.exceptionHandle(e.getMessage());
}
}
@GET
@Path("/getTabInfo")
@Path("/{moduleTypeEnum}/getTabInfo")
@Produces(MediaType.APPLICATION_JSON)
public ReturnResult getTabInfo(@Context HttpServletRequest request, @Context HttpServletResponse response) {
public ReturnResult getTabInfo(@Context HttpServletRequest request, @Context HttpServletResponse response, @PathParam("moduleTypeEnum") ModuleTypeEnum moduleTypeEnum) {
try {
User user = HrmUserVarify.getUser(request, response);
Map<String, Object> map = ParamUtil.request2Map(request);
@ -94,9 +93,9 @@ public class FieldDefinedController {
* @return
*/
@POST
@Path("/saveGroup")
@Path("/{moduleTypeEnum}/saveGroup")
@Produces(MediaType.APPLICATION_JSON)
public ReturnResult saveGroup(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody ExtendTitleSaveParam param) {
public ReturnResult saveGroup(@Context HttpServletRequest request, @Context HttpServletResponse response, @PathParam("moduleTypeEnum") ModuleTypeEnum moduleTypeEnum, @RequestBody ExtendTitleSaveParam param) {
try {
User user = HrmUserVarify.getUser(request, response);
return ReturnResult.successed(getFieldDefinedWrapper(user).saveGroup(param));
@ -114,9 +113,9 @@ public class FieldDefinedController {
* @return
*/
@POST
@Path("/saveTitle")
@Path("/{moduleTypeEnum}/saveTitle")
@Produces(MediaType.APPLICATION_JSON)
public ReturnResult saveTitle(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody ExtendTitleSaveParam param) {
public ReturnResult saveTitle(@Context HttpServletRequest request, @Context HttpServletResponse response, @PathParam("moduleTypeEnum") ModuleTypeEnum moduleTypeEnum, @RequestBody ExtendTitleSaveParam param) {
try {
User user = HrmUserVarify.getUser(request, response);
return ReturnResult.successed(getFieldDefinedWrapper(user).saveTitle(param));
@ -126,9 +125,9 @@ public class FieldDefinedController {
}
@POST
@Path("/deleteTitle")
@Path("/{moduleTypeEnum}/deleteTitle")
@Produces(MediaType.APPLICATION_JSON)
public ReturnResult deleteTitle(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody ExtendTitleSaveParam param) {
public ReturnResult deleteTitle(@Context HttpServletRequest request, @Context HttpServletResponse response, @PathParam("moduleTypeEnum") ModuleTypeEnum moduleTypeEnum, @RequestBody ExtendTitleSaveParam param) {
try {
User user = HrmUserVarify.getUser(request, response);
return ReturnResult.successed(getFieldDefinedWrapper(user).deleteTitle(param));

Loading…
Cancel
Save