diff --git a/src/main/java/com/xujie/sys/modules/production/controller/OperatorGroupController.java b/src/main/java/com/xujie/sys/modules/production/controller/OperatorGroupController.java new file mode 100644 index 0000000..59ed478 --- /dev/null +++ b/src/main/java/com/xujie/sys/modules/production/controller/OperatorGroupController.java @@ -0,0 +1,47 @@ +package com.xujie.sys.modules.production.controller; + +import com.xujie.sys.common.utils.R; +import com.xujie.sys.modules.production.data.*; +import com.xujie.sys.modules.production.service.OperatorGroupService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +@RestController +@RequestMapping("/operatorGroup") +public class OperatorGroupController { + @Autowired + private OperatorGroupService operatorGroupService; + + @PostMapping(value="/getOperatorGroup") + @ResponseBody + public R getOperatorGroup(@RequestBody Operator data){ + return R.ok().put("rows", operatorGroupService.getOperatorGroup(data)); + } + + + @PostMapping(value="/getOperatorGroupPlanHeader") + @ResponseBody + public R getOperatorGroupPlanHeader(@RequestBody OperatorGroupPlanHeaderData data){ + return R.ok().put("rows", operatorGroupService.getOperatorGroupPlanHeader(data)); + } + + @PostMapping(value="/getOperatorGroupPlanDetail") + @ResponseBody + public R getOperatorGroupPlanDetail(@RequestBody OperatorGroupPlanDetailData data){ + return R.ok().put("rows", operatorGroupService.getOperatorGroupPlanDetail(data)); + } + + + @PostMapping(value="/getOperatorGroupDefault") + @ResponseBody + public R getOperatorGroupDefault(@RequestBody Operator data){ + return R.ok().put("rows", operatorGroupService.getOperatorGroupDefault(data)); + } + + @PostMapping(value="/saveOperatorGroupDetail") + @ResponseBody + public R saveOperatorGroupDetail(@RequestBody OperatorGroupPlanHeaderData data){ + return R.ok(); + } + +} diff --git a/src/main/java/com/xujie/sys/modules/production/data/Operator.java b/src/main/java/com/xujie/sys/modules/production/data/Operator.java new file mode 100644 index 0000000..5d1923c --- /dev/null +++ b/src/main/java/com/xujie/sys/modules/production/data/Operator.java @@ -0,0 +1,123 @@ +package com.xujie.sys.modules.production.data; + +import java.util.Date; + +public class Operator { + /** + * + */ + private String site; + + /** + * + */ + private String operatorID; + + /** + * + */ + private String operatorName; + + /** + * + */ + private String active; + + /** + * + */ + private String department; + + /** + * + */ + private Date createdDate; + + /** + * + */ + private String passwords; + + /** + * + */ + private String lineLeader; + + /** + * + */ + private String operatorGroupFlag; + + public String getSite() { + return site; + } + + public void setSite(String site) { + this.site = site; + } + + public String getOperatorID() { + return operatorID; + } + + public void setOperatorID(String operatorID) { + this.operatorID = operatorID; + } + + public String getOperatorName() { + return operatorName; + } + + public void setOperatorName(String operatorName) { + this.operatorName = operatorName; + } + + public String getActive() { + return active; + } + + public void setActive(String active) { + this.active = active; + } + + public String getDepartment() { + return department; + } + + public void setDepartment(String department) { + this.department = department; + } + + public Date getCreatedDate() { + return createdDate; + } + + public void setCreatedDate(Date createdDate) { + this.createdDate = createdDate; + } + + public String getPasswords() { + return passwords; + } + + public void setPasswords(String passwords) { + this.passwords = passwords; + } + + public String getLineLeader() { + return lineLeader; + } + + public void setLineLeader(String lineLeader) { + this.lineLeader = lineLeader; + } + + public String getOperatorGroupFlag() { + return operatorGroupFlag; + } + + public void setOperatorGroupFlag(String operatorGroupFlag) { + this.operatorGroupFlag = operatorGroupFlag; + } +} + diff --git a/src/main/java/com/xujie/sys/modules/production/data/OperatorGroupMember.java b/src/main/java/com/xujie/sys/modules/production/data/OperatorGroupMember.java new file mode 100644 index 0000000..569e2d4 --- /dev/null +++ b/src/main/java/com/xujie/sys/modules/production/data/OperatorGroupMember.java @@ -0,0 +1,43 @@ +package com.xujie.sys.modules.production.data; + +public class OperatorGroupMember { + /** + * + */ + private String site; + + /** + * + */ + private String operatorID; + + /** + * + */ + private String memberOperatorID; + + public String getSite() { + return site; + } + + public void setSite(String site) { + this.site = site; + } + + public String getOperatorID() { + return operatorID; + } + + public void setOperatorID(String operatorID) { + this.operatorID = operatorID; + } + + public String getMemberOperatorID() { + return memberOperatorID; + } + + public void setMemberOperatorID(String memberOperatorID) { + this.memberOperatorID = memberOperatorID; + } +} + diff --git a/src/main/java/com/xujie/sys/modules/production/data/OperatorGroupMemberData.java b/src/main/java/com/xujie/sys/modules/production/data/OperatorGroupMemberData.java new file mode 100644 index 0000000..f9c1e9a --- /dev/null +++ b/src/main/java/com/xujie/sys/modules/production/data/OperatorGroupMemberData.java @@ -0,0 +1,4 @@ +package com.xujie.sys.modules.production.data; + +public class OperatorGroupMemberData { +} diff --git a/src/main/java/com/xujie/sys/modules/production/data/OperatorGroupPlanDetail.java b/src/main/java/com/xujie/sys/modules/production/data/OperatorGroupPlanDetail.java new file mode 100644 index 0000000..5cd0005 --- /dev/null +++ b/src/main/java/com/xujie/sys/modules/production/data/OperatorGroupPlanDetail.java @@ -0,0 +1,67 @@ +package com.xujie.sys.modules.production.data; + +import java.math.BigDecimal; + +public class OperatorGroupPlanDetail { + private String site; + /** + * + */ + private Integer planId; + + /** + * + */ + private String operatorID; + + /** + * + */ + private BigDecimal workTime; + + /** + * + */ + private BigDecimal wagesRate; + + public Integer getPlanId() { + return planId; + } + + public void setPlanId(Integer planId) { + this.planId = planId; + } + + public String getOperatorID() { + return operatorID; + } + + public void setOperatorID(String operatorID) { + this.operatorID = operatorID; + } + + public BigDecimal getWorkTime() { + return workTime; + } + + public void setWorkTime(BigDecimal workTime) { + this.workTime = workTime; + } + + public BigDecimal getWagesRate() { + return wagesRate; + } + + public void setWagesRate(BigDecimal wagesRate) { + this.wagesRate = wagesRate; + } + + public String getSite() { + return site; + } + + public void setSite(String site) { + this.site = site; + } +} + diff --git a/src/main/java/com/xujie/sys/modules/production/data/OperatorGroupPlanDetailData.java b/src/main/java/com/xujie/sys/modules/production/data/OperatorGroupPlanDetailData.java new file mode 100644 index 0000000..a41538e --- /dev/null +++ b/src/main/java/com/xujie/sys/modules/production/data/OperatorGroupPlanDetailData.java @@ -0,0 +1,8 @@ +package com.xujie.sys.modules.production.data; + +import lombok.Data; + +@Data +public class OperatorGroupPlanDetailData extends OperatorGroupPlanDetail{ + private String operatorName; +} diff --git a/src/main/java/com/xujie/sys/modules/production/data/OperatorGroupPlanHeader.java b/src/main/java/com/xujie/sys/modules/production/data/OperatorGroupPlanHeader.java new file mode 100644 index 0000000..e9f6217 --- /dev/null +++ b/src/main/java/com/xujie/sys/modules/production/data/OperatorGroupPlanHeader.java @@ -0,0 +1,102 @@ +package com.xujie.sys.modules.production.data; + +import com.fasterxml.jackson.annotation.JsonFormat; +import org.springframework.format.annotation.DateTimeFormat; + +import java.util.Date; + +public class OperatorGroupPlanHeader { + /** + * + */ + private String site; + + /** + * + */ + private String operatorGroupId; + + /** + * + */ + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") + private Date workDate; + + /** + * + */ + private String shiftno; + + /** + * + */ + private Double allTime; + + /** + * + */ + private Double wagesTime; + + /** + * + */ + private Integer id; + + public String getSite() { + return site; + } + + public void setSite(String site) { + this.site = site; + } + + public String getOperatorGroupId() { + return operatorGroupId; + } + + public void setOperatorGroupId(String operatorGroupId) { + this.operatorGroupId = operatorGroupId; + } + + public Date getWorkDate() { + return workDate; + } + + public void setWorkDate(Date workDate) { + this.workDate = workDate; + } + + public String getShiftno() { + return shiftno; + } + + public void setShiftno(String shiftno) { + this.shiftno = shiftno; + } + + public Double getAllTime() { + return allTime; + } + + public void setAllTime(Double allTime) { + this.allTime = allTime; + } + + public Double getWagesTime() { + return wagesTime; + } + + public void setWagesTime(Double wagesTime) { + this.wagesTime = wagesTime; + } + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } +} + diff --git a/src/main/java/com/xujie/sys/modules/production/data/OperatorGroupPlanHeaderData.java b/src/main/java/com/xujie/sys/modules/production/data/OperatorGroupPlanHeaderData.java new file mode 100644 index 0000000..8f7121b --- /dev/null +++ b/src/main/java/com/xujie/sys/modules/production/data/OperatorGroupPlanHeaderData.java @@ -0,0 +1,12 @@ +package com.xujie.sys.modules.production.data; + +import lombok.Data; + +import java.util.List; + +@Data +public class OperatorGroupPlanHeaderData extends OperatorGroupPlanHeader{ + private String operatorName; + private String shiftdesc; + private List detailList; +} diff --git a/src/main/java/com/xujie/sys/modules/production/mapper/OperatorGroupMapper.java b/src/main/java/com/xujie/sys/modules/production/mapper/OperatorGroupMapper.java new file mode 100644 index 0000000..f991a87 --- /dev/null +++ b/src/main/java/com/xujie/sys/modules/production/mapper/OperatorGroupMapper.java @@ -0,0 +1,27 @@ +package com.xujie.sys.modules.production.mapper; + +import com.xujie.sys.modules.production.data.*; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +@Mapper +public interface OperatorGroupMapper { + + List getOperatorGroup(Operator data); + + List getOperatorGroupPlanHeader(OperatorGroupPlanHeaderData data); + + List getOperatorGroupPlanDetail(OperatorGroupPlanDetailData data); + + + List getOperatorGroupDefault(Operator data); + void updateHeader(OperatorGroupPlanHeaderData data); + + List checkHeader(OperatorGroupPlanHeaderData inData); + Integer saveHeader(OperatorGroupPlanHeaderData inData); + + void saveDetail(OperatorGroupPlanDetailData data); + + void deleteDetail(OperatorGroupPlanHeaderData data); +} diff --git a/src/main/java/com/xujie/sys/modules/production/service/OperatorGroupService.java b/src/main/java/com/xujie/sys/modules/production/service/OperatorGroupService.java new file mode 100644 index 0000000..6ccf209 --- /dev/null +++ b/src/main/java/com/xujie/sys/modules/production/service/OperatorGroupService.java @@ -0,0 +1,22 @@ +package com.xujie.sys.modules.production.service; + + +import com.xujie.sys.modules.production.data.Operator; +import com.xujie.sys.modules.production.data.OperatorGroupPlanDetailData; +import com.xujie.sys.modules.production.data.OperatorGroupPlanHeader; +import com.xujie.sys.modules.production.data.OperatorGroupPlanHeaderData; + +import java.util.List; + +public interface OperatorGroupService { + + List getOperatorGroup(Operator data); + + List getOperatorGroupPlanHeader(OperatorGroupPlanHeaderData inData); + + List getOperatorGroupPlanDetail(OperatorGroupPlanDetailData inData); + + List getOperatorGroupDefault(Operator data); + + void saveOperatorGroupDetail(OperatorGroupPlanHeaderData inData); +} diff --git a/src/main/java/com/xujie/sys/modules/production/service/impl/OperatorGroupServiceImpl.java b/src/main/java/com/xujie/sys/modules/production/service/impl/OperatorGroupServiceImpl.java new file mode 100644 index 0000000..69a634c --- /dev/null +++ b/src/main/java/com/xujie/sys/modules/production/service/impl/OperatorGroupServiceImpl.java @@ -0,0 +1,63 @@ +package com.xujie.sys.modules.production.service.impl; + +import com.xujie.sys.modules.production.data.Operator; +import com.xujie.sys.modules.production.data.OperatorGroupPlanDetailData; +import com.xujie.sys.modules.production.data.OperatorGroupPlanHeader; +import com.xujie.sys.modules.production.data.OperatorGroupPlanHeaderData; +import com.xujie.sys.modules.production.mapper.OperatorGroupMapper; +import com.xujie.sys.modules.production.service.OperatorGroupService; +import com.xujie.sys.modules.sys.service.SysRoleService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.List; + +@Service +public class OperatorGroupServiceImpl implements OperatorGroupService { + + @Autowired + private OperatorGroupMapper operatorGroupMapper; + + @Override + public List getOperatorGroup(Operator data){ + return operatorGroupMapper.getOperatorGroup(data); + } + + @Override + public List getOperatorGroupPlanHeader(OperatorGroupPlanHeaderData inData){ + return operatorGroupMapper.getOperatorGroupPlanHeader(inData); + } + + @Override + public List getOperatorGroupPlanDetail(OperatorGroupPlanDetailData inData){ + return operatorGroupMapper.getOperatorGroupPlanDetail(inData); + } + + @Override + public List getOperatorGroupDefault(Operator data){ + return operatorGroupMapper.getOperatorGroupDefault(data); + } + + @Override + @Transactional + public void saveOperatorGroupDetail(OperatorGroupPlanHeaderData inData){ + if(inData.getId()!=null){ + operatorGroupMapper.updateHeader(inData); + }else { + List result= operatorGroupMapper.checkHeader(inData); + if(result.size()>0){ + throw new RuntimeException("该操作组班次已经存在!!!"); + } + Integer id =operatorGroupMapper.saveHeader(inData); + for (int i = 0; i + + + + + + + + + + + + + + + + + insert into OperatorGroupPlanHeader(Site,OperatorGroupId,WorkDate,Shiftno,allTime,WagesTime) + values (#{site},#{operatorGroupId},#{workDate},#{shiftno},#{allTime},#{wagesTime} + } + + + + insert into OperatorGroupPlanDetail(PlanId,operatorID,workTime,WagesRate,Site) + valuse(#{planId},#{operatorID},#{workTime},#{wagesRate},#{site}) + + + delete from OperatorGroupPlanDetail where PlanId=#{id} + + \ No newline at end of file