diff --git a/src/main/java/com/gaotao/modules/sys/controller/SysDepartmentController.java b/src/main/java/com/gaotao/modules/sys/controller/SysDepartmentController.java new file mode 100644 index 0000000..bcf8b09 --- /dev/null +++ b/src/main/java/com/gaotao/modules/sys/controller/SysDepartmentController.java @@ -0,0 +1,53 @@ +package com.gaotao.modules.sys.controller; + +import com.gaotao.common.utils.PageUtils; +import com.gaotao.common.utils.R; +import com.gaotao.modules.sys.entity.SysDepartmentEntity; +import com.gaotao.modules.sys.service.SysDepartmentService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +/** + * @description: 部门管理 + * @author: fengyuan_yang + * @date: 2023/6/30 13:34 + * @param: + * @return: + **/ +@RestController +@RequestMapping("/sys/department") +public class SysDepartmentController { + @Autowired + private SysDepartmentService sysDepartmentService; + + /** + * 查询部门 + **/ + @PostMapping("departmentSearch") + public R departmentSearch(@RequestBody SysDepartmentEntity data){ + PageUtils page = sysDepartmentService.departmentSearch(data); + return R.ok().put("page", page); + } + + /** + * 新增部门 + **/ + @PostMapping(value="/departmentSave") + public R departmentSave(@RequestBody SysDepartmentEntity data){ + sysDepartmentService.departmentSave(data); + return R.ok(); + } + + /** + * 删除部门 + **/ + @PostMapping(value="/departmentDelete") + public R departmentDelete(@RequestBody SysDepartmentEntity data){ + sysDepartmentService.departmentDelete(data); + return R.ok(); + } + +} diff --git a/src/main/java/com/gaotao/modules/sys/controller/SysSceneDynamicControlModelController.java b/src/main/java/com/gaotao/modules/sys/controller/SysSceneDynamicControlModelController.java new file mode 100644 index 0000000..d523d07 --- /dev/null +++ b/src/main/java/com/gaotao/modules/sys/controller/SysSceneDynamicControlModelController.java @@ -0,0 +1,44 @@ +package com.gaotao.modules.sys.controller; + +import com.gaotao.common.utils.R; +import com.gaotao.modules.sys.entity.SysSceneDynamicControlModelEntity; +import com.gaotao.modules.sys.service.SysSceneDynamicControlModelService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +@RequestMapping("sysSceneDynamicControlModel") +@RestController +public class SysSceneDynamicControlModelController { + + @Autowired + private SysSceneDynamicControlModelService sysSceneDynamicControlModelService; + + @PostMapping("/sysControlModelSearch") + public R sysControlModelSearch(@RequestBody SysSceneDynamicControlModelEntity data){ + List list = sysSceneDynamicControlModelService.sysControlModelSearch(data); + return R.ok().put("rows", list); + } + + /** + * 控制 + **/ + @PostMapping("/controlData") + public R controlData(@RequestBody SysSceneDynamicControlModelEntity data){ + sysSceneDynamicControlModelService.controlData(data); + return R.ok(); + } + + /** + * 编辑 + **/ + @PostMapping("/sysControlModelUpdate") + public R sysControlModelUpdate(@RequestBody SysSceneDynamicControlModelEntity data){ + sysSceneDynamicControlModelService.sysControlModelUpdate(data); + return R.ok(); + } +} diff --git a/src/main/java/com/gaotao/modules/sys/mapper/SysDepartmentMapper.java b/src/main/java/com/gaotao/modules/sys/mapper/SysDepartmentMapper.java new file mode 100644 index 0000000..5349f61 --- /dev/null +++ b/src/main/java/com/gaotao/modules/sys/mapper/SysDepartmentMapper.java @@ -0,0 +1,20 @@ +package com.gaotao.modules.sys.mapper; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.gaotao.modules.sys.entity.SysDepartmentEntity; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +@Mapper +public interface SysDepartmentMapper { + IPage departmentSearch(Page sysDepartmentEntityPage, @Param("query") SysDepartmentEntity data); + + void departmentSave(SysDepartmentEntity data); + + void departmentDelete(SysDepartmentEntity data); + + List checkSysDepartment(SysDepartmentEntity data); +} diff --git a/src/main/java/com/gaotao/modules/sys/mapper/SysSceneDynamicControlModelMapper.java b/src/main/java/com/gaotao/modules/sys/mapper/SysSceneDynamicControlModelMapper.java new file mode 100644 index 0000000..1e6951f --- /dev/null +++ b/src/main/java/com/gaotao/modules/sys/mapper/SysSceneDynamicControlModelMapper.java @@ -0,0 +1,23 @@ +package com.gaotao.modules.sys.mapper; + +import com.gaotao.modules.sys.entity.SysSceneDynamicControlModelEntity; +import com.gaotao.modules.sys.entity.SysSceneDynamicControlParameterEntity; +import org.apache.ibatis.annotations.Mapper; + +import java.util.ArrayList; +import java.util.List; + +@Mapper +public interface SysSceneDynamicControlModelMapper { + void controlData(SysSceneDynamicControlModelEntity data); + + List sysControlModelSearch(SysSceneDynamicControlModelEntity data); + + void sysControlModelUpdate(SysSceneDynamicControlModelEntity data); + + void saveParameterValue(ArrayList thirdTypeList); + + List queryParameterValue(String site, String controlNo, String type); + + void deleteParameterValue(SysSceneDynamicControlModelEntity data); +} diff --git a/src/main/java/com/gaotao/modules/sys/service/SysDepartmentService.java b/src/main/java/com/gaotao/modules/sys/service/SysDepartmentService.java new file mode 100644 index 0000000..30d487c --- /dev/null +++ b/src/main/java/com/gaotao/modules/sys/service/SysDepartmentService.java @@ -0,0 +1,12 @@ +package com.gaotao.modules.sys.service; + +import com.gaotao.common.utils.PageUtils; +import com.gaotao.modules.sys.entity.SysDepartmentEntity; + +public interface SysDepartmentService { + PageUtils departmentSearch(SysDepartmentEntity data); + + void departmentSave(SysDepartmentEntity data); + + void departmentDelete(SysDepartmentEntity data); +} diff --git a/src/main/java/com/gaotao/modules/sys/service/SysSceneDynamicControlModelService.java b/src/main/java/com/gaotao/modules/sys/service/SysSceneDynamicControlModelService.java new file mode 100644 index 0000000..2e195cc --- /dev/null +++ b/src/main/java/com/gaotao/modules/sys/service/SysSceneDynamicControlModelService.java @@ -0,0 +1,13 @@ +package com.gaotao.modules.sys.service; + +import com.gaotao.modules.sys.entity.SysSceneDynamicControlModelEntity; + +import java.util.List; + +public interface SysSceneDynamicControlModelService { + void controlData(SysSceneDynamicControlModelEntity data); + + List sysControlModelSearch(SysSceneDynamicControlModelEntity data); + + void sysControlModelUpdate(SysSceneDynamicControlModelEntity data); +} diff --git a/src/main/java/com/gaotao/modules/sys/service/impl/SysDepartmentServiceImpl.java b/src/main/java/com/gaotao/modules/sys/service/impl/SysDepartmentServiceImpl.java new file mode 100644 index 0000000..eb8e6fb --- /dev/null +++ b/src/main/java/com/gaotao/modules/sys/service/impl/SysDepartmentServiceImpl.java @@ -0,0 +1,67 @@ +package com.gaotao.modules.sys.service.impl; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.gaotao.common.utils.PageUtils; +import com.gaotao.modules.sys.entity.SysDepartmentEntity; +import com.gaotao.modules.sys.mapper.SysDepartmentMapper; +import com.gaotao.modules.sys.service.SysDepartmentService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; + +@Service +public class SysDepartmentServiceImpl implements SysDepartmentService { + + @Autowired + private SysDepartmentMapper sysDepartmentMapper; + + /** + * @description: 查询部门 + * @author: fengyuan_yang + * @date: 2023/6/30 13:53 + * @param: [data] + * @return: com.gaotao.common.utils.PageUtils + **/ + @Override + public PageUtils departmentSearch(SysDepartmentEntity data) { + IPage resultList = this.sysDepartmentMapper.departmentSearch(new Page(data.getPage(), data.getLimit()), data); + return new PageUtils(resultList); + } + + /** + * @description: 新增部门 + * @author: fengyuan_yang + * @date: 2023/6/30 13:53 + * @param: [data] + * @return: void + **/ + @Override + public void departmentSave(SysDepartmentEntity data) { + // 获得 site 和 bu + if (data.getBu().split("_").length >= 2 ) { + data.setSite(data.getBu().split("_")[0]); + data.setBuNo(data.getBu().split("_")[1]); + } else { + throw new RuntimeException("工厂和部门有误!"); + } + List checkSysDepartment = sysDepartmentMapper.checkSysDepartment(data); + if (!checkSysDepartment.isEmpty()) { + throw new RuntimeException("该部门已存在!"); + } + sysDepartmentMapper.departmentSave(data); + } + + /** + * @description: 删除部门 + * @author: fengyuan_yang + * @date: 2023/6/30 13:54 + * @param: [data] + * @return: void + **/ + @Override + public void departmentDelete(SysDepartmentEntity data) { + sysDepartmentMapper.departmentDelete(data); + } +} diff --git a/src/main/java/com/gaotao/modules/sys/service/impl/SysSceneDynamicControlModelServiceImpl.java b/src/main/java/com/gaotao/modules/sys/service/impl/SysSceneDynamicControlModelServiceImpl.java new file mode 100644 index 0000000..9789d63 --- /dev/null +++ b/src/main/java/com/gaotao/modules/sys/service/impl/SysSceneDynamicControlModelServiceImpl.java @@ -0,0 +1,113 @@ +package com.gaotao.modules.sys.service.impl; + +import com.gaotao.modules.sys.entity.SysSceneDynamicControlModelEntity; +import com.gaotao.modules.sys.entity.SysSceneDynamicControlParameterEntity; +import com.gaotao.modules.sys.mapper.SysSceneDynamicControlModelMapper; +import com.gaotao.modules.sys.service.SysSceneDynamicControlModelService; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.ArrayList; +import java.util.List; + +@Service +public class SysSceneDynamicControlModelServiceImpl implements SysSceneDynamicControlModelService { + + @Autowired + private SysSceneDynamicControlModelMapper sysSceneDynamicControlModelMapper; + + /** + * 控制 + **/ + @Override + public void controlData(SysSceneDynamicControlModelEntity data) { + if (data.getBaseData().equals("未控制")){ + data.setBaseData("控制"); + sysSceneDynamicControlModelMapper.controlData(data); + } else if (data.getBaseData().equals("控制")) { + data.setBaseData("未控制"); + sysSceneDynamicControlModelMapper.controlData(data); + } else { + throw new RuntimeException("控制字段空值或不存在"); + } + } + + /** + * 列表查询 + **/ + @Override + public List sysControlModelSearch(SysSceneDynamicControlModelEntity data) { + List list = sysSceneDynamicControlModelMapper.sysControlModelSearch(data); + for (SysSceneDynamicControlModelEntity model : list) { + if ("Y".equals(model.getParameterTable())) { + List thirdValueList = sysSceneDynamicControlModelMapper.queryParameterValue(model.getSite(), model.getControlNo(), "third_type"); + List secondValueList = sysSceneDynamicControlModelMapper.queryParameterValue(model.getSite(), model.getControlNo(), "second_type"); + String thirdType = ""; + String secondType = ""; + for (String str : thirdValueList) { + if (thirdType.equals("")){ + thirdType = str; + }else { + thirdType = thirdType + ";" + str; + } + } + for (String str : secondValueList) { + if (secondType.equals("")){ + secondType = str; + }else { + secondType = secondType + ";" + str; + } + } + model.setThirdType(thirdType); + model.setSecondType(secondType); + } + } + return list; + } + + /** + * 编辑 + **/ + @Override + @Transactional + public void sysControlModelUpdate(SysSceneDynamicControlModelEntity data) { + // 如果参数值要存到参数表 + if ("Y".equals(data.getParameterTable())) { + // 先删除参数表数据 + sysSceneDynamicControlModelMapper.deleteParameterValue(data); + // 如果参数一不为空 + if (StringUtils.isNotBlank(data.getThirdType())) { + ArrayList thirdTypeList = new ArrayList<>(); + String[] parameterArr = data.getThirdType().split(";"); + for (String para : parameterArr) { + SysSceneDynamicControlParameterEntity parameterEntity = new SysSceneDynamicControlParameterEntity(); + parameterEntity.setSite(data.getSite()); + parameterEntity.setControlNo(data.getControlNo()); + parameterEntity.setParameter("third_type"); + parameterEntity.setParameterValue(para); + thirdTypeList.add(parameterEntity); + } + sysSceneDynamicControlModelMapper.saveParameterValue(thirdTypeList); + data.setThirdType(""); + } + // 如果参数二不为空 + if (StringUtils.isNotBlank(data.getSecondType())) { + ArrayList secondTypeList = new ArrayList<>(); + String[] parameterArr = data.getSecondType().split(";"); + for (String para : parameterArr) { + SysSceneDynamicControlParameterEntity parameterEntity = new SysSceneDynamicControlParameterEntity(); + parameterEntity.setSite(data.getSite()); + parameterEntity.setControlNo(data.getControlNo()); + parameterEntity.setParameter("second_type"); + parameterEntity.setParameterValue(para); + secondTypeList.add(parameterEntity); + } + sysSceneDynamicControlModelMapper.saveParameterValue(secondTypeList); + data.setSecondType(""); + } + } + sysSceneDynamicControlModelMapper.sysControlModelUpdate(data); + } +} diff --git a/src/main/resources/mapper/sys/SysDepartmentMapper.xml b/src/main/resources/mapper/sys/SysDepartmentMapper.xml new file mode 100644 index 0000000..930bff9 --- /dev/null +++ b/src/main/resources/mapper/sys/SysDepartmentMapper.xml @@ -0,0 +1,54 @@ + + + + + + + + + + + + + + insert into sys_department (site, bu_no, department_id, department_name, create_date, create_by, update_date, update_by) + values (#{site}, #{buNo}, #{departmentId}, #{departmentName}, getDate(), #{createBy}, getDate(), #{updateBy}) + + + + + delete from sys_department + where site = #{site} and bu_no = #{buNo} and department_id = #{departmentId} + + + diff --git a/src/main/resources/mapper/sys/SysSceneDynamicControlModelMapper.xml b/src/main/resources/mapper/sys/SysSceneDynamicControlModelMapper.xml new file mode 100644 index 0000000..031d833 --- /dev/null +++ b/src/main/resources/mapper/sys/SysSceneDynamicControlModelMapper.xml @@ -0,0 +1,87 @@ + + + + + + + + UPDATE sys_scene_dynamic_control_model + SET base_data = #{baseData} + WHERE control_no = #{controlNo} + AND site = #{site} + + + + + + + + + UPDATE sys_scene_dynamic_control_model + SET control_style = #{controlStyle}, + third_type = #{thirdType}, + second_type = #{secondType}, + remark = #{remark}, + update_date = getDate(), + update_by = #{updateBy} + WHERE control_no = #{controlNo} + AND site = #{site} + + + + + INSERT INTO sys_scene_dynamic_control_parameter + (site, control_no, parameter, parameter_value) + VALUES + + (#{item.site}, #{item.controlNo}, #{item.parameter}, #{item.parameterValue}) + + + + + + + + + DELETE FROM sys_scene_dynamic_control_parameter + WHERE site = #{site} and control_no = #{controlNo} + +