diff --git a/src/main/java/com/dsic/gj_erp/annotation/Dict.java b/src/main/java/com/dsic/gj_erp/annotation/Dict.java index fe5688f..5eb4b23 100644 --- a/src/main/java/com/dsic/gj_erp/annotation/Dict.java +++ b/src/main/java/com/dsic/gj_erp/annotation/Dict.java @@ -29,4 +29,11 @@ public @interface Dict { * @return */ String dictText() default ""; + + /** + * 数据字典表 + * @return + */ + + String dictTable() default ""; } \ No newline at end of file diff --git a/src/main/java/com/dsic/gj_erp/bean/jcsj/EmSbcnp.java b/src/main/java/com/dsic/gj_erp/bean/jcsj/EmSbcnp.java index 5836dcf..4be7769 100644 --- a/src/main/java/com/dsic/gj_erp/bean/jcsj/EmSbcnp.java +++ b/src/main/java/com/dsic/gj_erp/bean/jcsj/EmSbcnp.java @@ -1,6 +1,8 @@ package com.dsic.gj_erp.bean.jcsj; +import com.baomidou.mybatisplus.annotation.FieldStrategy; import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; @@ -24,101 +26,37 @@ public class EmSbcnp implements Serializable { private static final long serialVersionUID=1L; - @ApiModelProperty(value = "跨位") - private String kw; + @ApiModelProperty(value = "套料图号") + private String tzbh; - @ApiModelProperty(value = "工序") - private String gx; + @ApiModelProperty(value = "组立") + private String zl; - @ApiModelProperty(value = "产能单位") - private String cndw; + @ApiModelProperty(value = "加工跨") + private String kw; - @ApiModelProperty(value = "白班最小产能") - private Double zxcnBb; - @ApiModelProperty(value = "白班最大产能") - private Double zdcnBb; + private String gx; + private String jldw; - @ApiModelProperty(value = "夜班最小产能") - private Double zxcnYb; + @ApiModelProperty(value = "定额工时") + @TableField(updateStrategy = FieldStrategy.IGNORED) + private Double degs; - @ApiModelProperty(value = "夜班最大产能") - private Double zdcnYb; + @ApiModelProperty(value = "实动工时") + @TableField(updateStrategy = FieldStrategy.IGNORED) + private Double sdgs; - @ApiModelProperty(value = "合计") - private Double cnhj; + @ApiModelProperty(value = "加工顺序") + private String jgsx; - @ApiModelProperty(value = "划线白班最小产能") - private Double zxcnBb1; + @ApiModelProperty(value = "编辑人") + private String bjry; - @ApiModelProperty(value = "划线白班最大产能") - private Double zdcnBb1; - - @ApiModelProperty(value = "划线夜班最小产能") - private Double zxcnYb1; - - @ApiModelProperty(value = "划线夜班最大产能") - private Double zdcnYb1; - - @ApiModelProperty(value = "合计") - private Double cnhj1; - - @ApiModelProperty(value = "坡口白班最小产能") - private Double zxcnBb2; - - @ApiModelProperty(value = "坡口白班最大产能") - private Double zdcnBb2; - - @ApiModelProperty(value = "坡口夜班最小产能") - private Double zxcnYb2; - - @ApiModelProperty(value = "坡口夜班最大产能") - private Double zdcnYb2; - - @ApiModelProperty(value = "坡口合计") - private Double cnhj2; - - @ApiModelProperty(value = "坡口产能单位") - private String cndw2; - - @ApiModelProperty(value = "打磨白班最小产能") - private Double zxcnBb3; - - @ApiModelProperty(value = "打磨白班最大产能") - private Double zdcnBb3; - - @ApiModelProperty(value = "打磨夜班最小产能") - private Double zxcnYb3; - - @ApiModelProperty(value = "打磨夜班最大产能") - private Double zdcnYb3; - - @ApiModelProperty(value = "打磨合计") - private Double cnhj3; - - @ApiModelProperty(value = "打磨产能单位") - private String cndw3; - - @ApiModelProperty(value = "曲白班最小产能") - private Double zxcnBb4; - - @ApiModelProperty(value = "曲白班最大产能") - private Double zdcnBb4; - - @ApiModelProperty(value = "曲夜班最小产能") - private Double zxcnYb4; - - @ApiModelProperty(value = "曲夜班最大产能") - private Double zdcnYb4; - - @ApiModelProperty(value = "曲合计") - private Double cnhj4; - - @ApiModelProperty(value = "曲产能单位") - private String cndw4; - - @TableId(value = "id", type = IdType.ASSIGN_UUID) - private String id; + @ApiModelProperty(value = "编辑日期") + private String bjrq; + @TableId(value = "id", type = IdType.ASSIGN_UUID) + private String id; } diff --git a/src/main/java/com/dsic/gj_erp/bean/jhgk/DmSygdMx.java b/src/main/java/com/dsic/gj_erp/bean/jhgk/DmSygdMx.java index ea50caf..f41b3ad 100644 --- a/src/main/java/com/dsic/gj_erp/bean/jhgk/DmSygdMx.java +++ b/src/main/java/com/dsic/gj_erp/bean/jhgk/DmSygdMx.java @@ -49,13 +49,17 @@ public class DmSygdMx implements Serializable { private String wpxh; @ApiModelProperty(value = "划线长度(米)") - private BigDecimal hxcd; - + private Double hxcd; + private Double dmcd; + private String dmrq; + private String pkrq; + private String llrq; @ApiModelProperty(value = "切割长度(米)") - private BigDecimal qgcd; + private Double qgcd; @ApiModelProperty(value = "曲标识") private String qbs; + private String qjgrq; @ApiModelProperty(value = "坡口类型") private Double pklx; @@ -177,19 +181,11 @@ public class DmSygdMx implements Serializable { @TableId(value = "id", type = IdType.ASSIGN_UUID) private String id; - private BigDecimal blgs;//备料总工时 - private BigDecimal pwgs;//抛丸总工时 - private BigDecimal llgs;//理料总工时 - private BigDecimal hxgs;//划线总工时 - private BigDecimal qggs;//切割总工时 - private BigDecimal pkgs;//坡口总工时 - private BigDecimal dmgs;//打磨总工时 - private BigDecimal qgs;//曲加工总工时 - private BigDecimal zpgs;//装配总工时 - private String xxr; @TableField(exist = false) private String beginTime; @TableField(exist = false) private String endTime; + + } diff --git a/src/main/java/com/dsic/gj_erp/bean/jhgk/dto/Xbjhdto.java b/src/main/java/com/dsic/gj_erp/bean/jhgk/dto/Xbjhdto.java index 845cead..a990497 100644 --- a/src/main/java/com/dsic/gj_erp/bean/jhgk/dto/Xbjhdto.java +++ b/src/main/java/com/dsic/gj_erp/bean/jhgk/dto/Xbjhdto.java @@ -12,7 +12,7 @@ public class Xbjhdto extends DmXbjh { private Double xczl;//相差重量 private Double zrc_zl;//实耗重量 - private Double tlt_zl;//套料图重量 + private Double tlt_zl=0.0;//套料图重量 private List mxList; } diff --git a/src/main/java/com/dsic/gj_erp/bean/sy/DmDepart.java b/src/main/java/com/dsic/gj_erp/bean/sy/DmDepart.java new file mode 100644 index 0000000..328f2f1 --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/bean/sy/DmDepart.java @@ -0,0 +1,103 @@ +package com.dsic.gj_erp.bean.sy; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serializable; + +/** + *

+ * 部门表 + *

+ * + * @author xhj + * @since 2021-03-23 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="DmDepart对象", description="部门表") +public class DmDepart implements Serializable{ + + private static final long serialVersionUID=1L; + + @TableId(value = "depart_code", type = IdType.INPUT) + private String departCode; + + private String departName; + + private String parentCode; + + @ApiModelProperty(value = "单位全称") + private String departFullname; + + private String sortNo; + + @ApiModelProperty(value = "单位属性") + private String departAttr; + + @ApiModelProperty(value = "单位类型") + private String departType; + + @ApiModelProperty(value = "生产性质") + private String manuType; + + @ApiModelProperty(value = "状态 1-有效(默认) 0-无效") + private Integer departStatus; + + @ApiModelProperty(value = "制作标识 1-选择 0-未选择(默认)") + private Integer manuFlag; + + @ApiModelProperty(value = "表面处理标识 1-选择 0-未选择(默认)") + private Integer paintFlag; + + @ApiModelProperty(value = "配送标识 1-选择 0-未选择(默认)") + private Integer distFlag; + + @ApiModelProperty(value = "水压标识 1-选择 0-未选择(默认)") + private Integer syFlag; + + @ApiModelProperty(value = "负责人") + private String charger; + + @ApiModelProperty(value = "座机电话") + private String landlinePhone; + + @ApiModelProperty(value = "移动电话") + private String mobilePhone; + + @ApiModelProperty(value = "描述") + private String remark; + + @ApiModelProperty(value = "配送单位2022.2.8") + private String psDept; + + @ApiModelProperty(value = "涂装单位2022.2.8") + private String tzDept; + + @ApiModelProperty(value = "涂装单位2022.2.8") + private String clDept; + + @ApiModelProperty(value = "非包显示2022.2.8") + private String fbxs; + + @ApiModelProperty(value = "大包显示2022.2.8") + private String dbxs; + + @ApiModelProperty(value = "小包显示2022.2.8") + private String xbxs; + + //铁舾排序 + @TableField("sort_3") + private String sort3;//结构排序 + @TableField("sort_4") + private String sort4;//涂装排序 + @TableField("sort_5") + private String sort5;//镀锌排序 + @TableField("sort_6") + private String sort6;//配送排序 +} diff --git a/src/main/java/com/dsic/gj_erp/bean/sy/DmDepartIn.java b/src/main/java/com/dsic/gj_erp/bean/sy/DmDepartIn.java new file mode 100644 index 0000000..52dda6d --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/bean/sy/DmDepartIn.java @@ -0,0 +1,27 @@ +package com.dsic.gj_erp.bean.sy; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @version V1.0.0 + * @Title: DmDepartIn + * @Package com.dsic.xzerp.bean.sy + * @Description: 单位部门入参 + * @author: 张恩铭 + * @date: 2021/5/12 11:03 + */ +@Data +public class DmDepartIn implements Serializable { + + private String departCode; + private String departAttr; + private String departType; + private String manuType; + private String manuFlag; + private String bmbm; + private String zxtbm; + private String parentCode; + +} diff --git a/src/main/java/com/dsic/gj_erp/bean/sy/DmEmployee.java b/src/main/java/com/dsic/gj_erp/bean/sy/DmEmployee.java new file mode 100644 index 0000000..697bdd2 --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/bean/sy/DmEmployee.java @@ -0,0 +1,59 @@ +package com.dsic.gj_erp.bean.sy; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +/** + * @version V1.0.0 + * @Title: DmEmployee + * @Package com.dsic.xzerp.bean.sy + * @Description: 管系制造员工 + * @author: 张恩铭 + * @date: 2021/4/1 15:49 + */ +@Data +@ApiModel("管系制造员工") +public class DmEmployee implements Serializable { + + @ApiModelProperty("id") + @TableId(type = IdType.ASSIGN_UUID) + private String id; + + @ApiModelProperty("部门科室编码") + private String departCode; + + @ApiModelProperty("职号") + private String employeeNo; + + @ApiModelProperty("姓名") + private String employeeName; + + @ApiModelProperty("性别") + private String gender; + + @ApiModelProperty("在职状态") + private Integer employeeStatus; + + @ApiModelProperty("岗位") + private String position; + + @ApiModelProperty("责任区域") + private String zone;//责任区域对应字典ZRQY 1:船装;2:机装;3:局装 + + @ApiModelProperty("职称") + private String title; + + @ApiModelProperty("座机电话") + private String landlinePhone; + + @ApiModelProperty("移动电话") + private String mobilePhone; + + @ApiModelProperty("备注") + private String remark; +} diff --git a/src/main/java/com/dsic/gj_erp/bean/sy/DmPipeSystem.java b/src/main/java/com/dsic/gj_erp/bean/sy/DmPipeSystem.java new file mode 100644 index 0000000..ab7e9e6 --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/bean/sy/DmPipeSystem.java @@ -0,0 +1,60 @@ +package com.dsic.gj_erp.bean.sy; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serializable; + +/** + *

+ * 管系系统数据 + *

+ * + * @author xhj + * @since 2021-03-17 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="DmPipeSystem对象", description="管系系统数据") +public class DmPipeSystem implements Serializable { + + + + @TableId(value = "id", type = IdType.ASSIGN_UUID) + private String id; + + @ApiModelProperty(value = "工程编号 Q11") + private String project; + + @ApiModelProperty(value = "所属部门 默认02") + private String departCode; + + //@Dict(dictCode = "test_code") + @ApiModelProperty(value = "系统代号 Q12") + private String stCode; + + @ApiModelProperty(value = "系统名称 Q21") + private String stName; + + @ApiModelProperty(value = "四大系统标识 默认N") + private String stFlag; + + @ApiModelProperty(value = "系统英文名称") + private String stEname; + + private String stDwgno; + + private String bzry; + + private String bzrq; + + private String remark; + + private String jjCode; + + +} diff --git a/src/main/java/com/dsic/gj_erp/bean/sy/SyDict.java b/src/main/java/com/dsic/gj_erp/bean/sy/SyDict.java new file mode 100644 index 0000000..5a6b4ce --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/bean/sy/SyDict.java @@ -0,0 +1,42 @@ +package com.dsic.gj_erp.bean.sy; + +import com.baomidou.mybatisplus.annotation.TableId; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; + +/** + *

+ * + *

+ * + * @author xhj + * @since 2021-03-15 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="SyDict对象", description="") +@Accessors(chain = true) +public class SyDict { + + private static final long serialVersionUID=1L; + + @ApiModelProperty(value = "字典编码") + // @TableId(value = "dict_code", type = IdType.ASSIGN_UUID) + @TableId + private String dictCode; + + @ApiModelProperty(value = "字典名称") + private String dictName; + + @ApiModelProperty(value = "子系统") + private String systemCode; + + @ApiModelProperty(value = "描述") + private String remark; + + + +} diff --git a/src/main/java/com/dsic/gj_erp/bean/sy/SyDictItem.java b/src/main/java/com/dsic/gj_erp/bean/sy/SyDictItem.java new file mode 100644 index 0000000..e7e8487 --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/bean/sy/SyDictItem.java @@ -0,0 +1,96 @@ +package com.dsic.gj_erp.bean.sy; + + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.dsic.gj_erp.annotation.Dict; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serializable; +import java.math.BigDecimal; + +/** + *

+ * + *

+ * + * @author xhj + * @since 2021-03-16 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="SyDictItem对象", description="") +public class SyDictItem implements Serializable { + + private static final long serialVersionUID=1L; + + @TableId(value = "id", type = IdType.ASSIGN_UUID) + private String id; + @Dict(dictTable ="sy_dict",dictText = "dict_name",dictCode = "dict_code") + @ApiModelProperty(value = "字典编码") + private String dictCode; + + @ApiModelProperty(value = "字典项文本") + private String itemCode; + + @ApiModelProperty(value = "字典项值") + private String itemValue; + + @ApiModelProperty(value = "描述") + private String remark; + + @ApiModelProperty(value = "排序") + private String sortNo; + + private String params1; + + private String params2; + + private String params3; + + private String params4; + + private String params5; + + private String ylzd5;//铁舾油漆旧消耗系数 + private String yqxs1;//铁舾油漆新消耗系数 + + //集团切块 + private String jtqk; + + //舾装切块 + private String xzqk; + + //统计类型 + private String tjlx; + + //工艺类型 + private String gylx; + + //分析类型1 + private String fxlx1; + + //分析类型2 + private String fxlx2; + + //gj下 管径范围>= + private BigDecimal params6; + //gj下管径范围<= + private BigDecimal params7; + //gj下消耗系数 + private BigDecimal params8; + //gj下附件消耗系数 + private BigDecimal params9; + //gj下限额消耗系数 + private BigDecimal params10; + + + + + + + +} diff --git a/src/main/java/com/dsic/gj_erp/bean/sy/SyLog.java b/src/main/java/com/dsic/gj_erp/bean/sy/SyLog.java new file mode 100644 index 0000000..692c323 --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/bean/sy/SyLog.java @@ -0,0 +1,66 @@ +package com.dsic.gj_erp.bean.sy; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.extension.activerecord.Model; + +import com.dsic.gj_erp.annotation.Dict; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serializable; + +/** + *

+ * 系统日志表 + *

+ * + * @author xhj + * @since 2021-04-08 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="SyLog对象", description="系统日志表") +public class SyLog extends Model { + + private static final long serialVersionUID=1L; + + @TableId(value = "id", type = IdType.ASSIGN_UUID) + private String id; + + @ApiModelProperty(value = "职号") + private String userCode; + + @ApiModelProperty(value = "姓名") + private String userName; + + @Dict(dictTable ="sy_system",dictText = "system_name",dictCode = "system_code") + @ApiModelProperty(value = "子系统编码") + private String systemCode; + + @ApiModelProperty(value = "子系统名称") + private String systemName; + + @ApiModelProperty(value = "使用内容:模块>子模块>菜单名称") + private String content; + + @ApiModelProperty(value = "方法") + private String method; + + @ApiModelProperty(value = "计算机名") + private String computerName; + + private String ip; + + @ApiModelProperty(value = "使用日期时间") + private String createTime; + + + @Override + protected Serializable pkVal() { + return this.id; + } + +} diff --git a/src/main/java/com/dsic/gj_erp/bean/tree/PhTreeVo.java b/src/main/java/com/dsic/gj_erp/bean/tree/PhTreeVo.java new file mode 100644 index 0000000..a263909 --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/bean/tree/PhTreeVo.java @@ -0,0 +1,30 @@ +package com.dsic.gj_erp.bean.tree; + +import lombok.Data; +import lombok.experimental.Accessors; + +import java.util.List; + +/** + * @version V1.0.0 + * @Title: ProjectTreeVo + * @Package com.dsic.xzerp.bean.tree + * @Description: tree + * @author: xhj + * @date: 2021/3/15 13:18 + */ +@Data +@Accessors(chain = true) +public class PhTreeVo { + private String id; + private String parentBm; + private String label; + private String departCode; + private String status; + + private String lckStatus; + private String dwgNo; + private String dwgType; + private String bzry; + private List children; +} diff --git a/src/main/java/com/dsic/gj_erp/bean/tree/ProjectTreeVo.java b/src/main/java/com/dsic/gj_erp/bean/tree/ProjectTreeVo.java new file mode 100644 index 0000000..c9e0d8f --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/bean/tree/ProjectTreeVo.java @@ -0,0 +1,23 @@ +package com.dsic.gj_erp.bean.tree; + +import lombok.Data; +import lombok.experimental.Accessors; + +import java.util.List; + +/** + * @version V1.0.0 + * @Title: ProjectTreeVo + * @Package com.dsic.xzerp.bean.tree + * @Description: tree + * @author: xhj + * @date: 2021/3/15 13:18 + */ +@Data +@Accessors(chain = true) +public class ProjectTreeVo { + private String id; + private String parentBm; + private String label; + private List children; +} \ No newline at end of file diff --git a/src/main/java/com/dsic/gj_erp/bean/tree/Tree.java b/src/main/java/com/dsic/gj_erp/bean/tree/Tree.java new file mode 100644 index 0000000..ba46fa9 --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/bean/tree/Tree.java @@ -0,0 +1,30 @@ +package com.dsic.gj_erp.bean.tree; + +import lombok.Data; +import lombok.experimental.Accessors; + +import java.util.List; + +/** + * @version V1.0.0 + * @Title: ProjectTreeVo + * @Package com.dsic.xzerp.bean.tree + * @Description: tree + * @author: xhj + * @date: 2021/3/15 13:18 + */ +@Data +@Accessors(chain = true) +public class Tree { + private String id; + private String parentBm; + private String parentValue; + private String label; + private List children; + private String value; + + private String level; + + private String params; + // private String lckId; +} diff --git a/src/main/java/com/dsic/gj_erp/controller/SYController.java b/src/main/java/com/dsic/gj_erp/controller/SYController.java index 41d5f50..8a75258 100644 --- a/src/main/java/com/dsic/gj_erp/controller/SYController.java +++ b/src/main/java/com/dsic/gj_erp/controller/SYController.java @@ -274,4 +274,143 @@ public class SYController { return new ResultBean(dmZhbmp); } +// ---------------------------------------------------------------- + + + @RequestMapping(value = "/getDepartList") + public ResultBean getDepartList() { + return new ResultBean(syService.getDepartList()); + } + + + @RequestMapping(value = "/addRole") + public ResultBean addRole(@RequestBody Map role) { + return new ResultBean(syService.addRole(role)); + } + + + @RequestMapping(value = "/deleteRole") + public ResultBean deleteRole(@RequestBody Map paramMap) { + return new ResultBean(syService.deleteRole((String) paramMap.get("role_code"))); + } + + + @RequestMapping(value = "/updateRole") + public ResultBean updateRole(@RequestBody Map role) { + return new ResultBean(syService.updateRole(role)); + } + + @RequestMapping(value = "/getRoleList") + public ResultBean getRoleList() { + return new ResultBean(syService.getRoleList()); + } + + + @RequestMapping(value = "/getRoleListByUser") + public ResultBean getRoleListByUser(@RequestBody Map paramMap) { + return new ResultBean(syService.getRoleListByUser((String) paramMap.get("user_code"))); + } + + @RequestMapping(value = "/addRoleForUser") + public ResultBean addRoleForUser(@RequestBody List> paramList) { + syService.addRoleForUser(paramList); + return new ResultBean(); + } + + @RequestMapping(value = "/deleteRoleForUser") + public ResultBean deleteRoleForUser(@RequestBody List> paramList) { + syService.deleteRoleForUser(paramList); + return new ResultBean(); + } + + + @RequestMapping(value = "/getSystemList") + public ResultBean getSystemList(@RequestBody Map paramMap) { + return new ResultBean(syService.getSystemList()); + } + + @RequestMapping(value = "/getMenuList") + public ResultBean getMenuList(@RequestBody Map paramMap) { + return new ResultBean(syService.getMenuList()); + } + + + @RequestMapping(value = "/getUserListByMenu") + public ResultBean getUserListByMenu(@RequestBody Map paramMap) { + return new ResultBean(syService.getUserListByMenu(Integer.parseInt(paramMap.get("id").toString()))); + } + + + @RequestMapping(value = "/getInstitutionList") + public ResultBean getInstitutionList(@RequestBody Map paramMap) { + return new ResultBean(syService.getInstitutionList()); + } + + + @RequestMapping(value = "/getUserListByRole") + public ResultBean getUserListByRole(@RequestBody Map paramMap) { + return new ResultBean(syService.getUserListByRole(paramMap.get("role_code").toString())); + } + + + @RequestMapping(value = "/addRoleForInstitution") + public ResultBean addRoleForInstitution(@RequestBody List> paramList) { + syService.addRoleForInstitution(paramList); + return new ResultBean(); + } + + @RequestMapping(value = "/deleteRoleForInstitution") + public ResultBean deleteRoleForInstitution(@RequestBody List> paramList) { + syService.deleteRoleForInstitution(paramList); + return new ResultBean(); + } + + + @RequestMapping(value = "/getInstitutionListByRole") + public ResultBean getInstitutionListByRole(@RequestBody Map paramMap) { + return new ResultBean(syService.getInstitutionListByRole(paramMap.get("role_code").toString())); + } + + + @RequestMapping(value = "/getSystemListByRole") + public ResultBean getSystemListByRole(@RequestBody Map paramMap) { + return new ResultBean(syService.getSystemListByRole(paramMap.get("role_code").toString())); + } + + + @RequestMapping(value = "/addRoleForSystem") + public ResultBean addRoleForSystem(@RequestBody List> paramList) { + syService.addRoleForSystem(paramList); + return new ResultBean(); + } + + @RequestMapping(value = "/deleteRoleForSystem") + public ResultBean deleteRoleForSystem(@RequestBody List> paramList) { + syService.deleteRoleForSystem(paramList); + return new ResultBean(); + } + + + + + + @RequestMapping(value = "/getMenuListByRole") + public ResultBean getMenuListByRole(@RequestBody Map paramMap) { + return new ResultBean(syService.getMenuListByRole(paramMap.get("role_code").toString())); + } + + + @RequestMapping(value = "/addRoleForMenu") + public ResultBean addRoleForMenu(@RequestBody List> paramList) { + syService.addRoleForMenu(paramList); + return new ResultBean(); + } + + @RequestMapping(value = "/deleteRoleForMenu") + public ResultBean deleteRoleForMenu(@RequestBody List> paramList) { + syService.deleteRoleForMenu(paramList); + return new ResultBean(); + } + + } diff --git a/src/main/java/com/dsic/gj_erp/controller/jcsj/EmSbcnpController.java b/src/main/java/com/dsic/gj_erp/controller/jcsj/EmSbcnpController.java index f859690..f4e8027 100644 --- a/src/main/java/com/dsic/gj_erp/controller/jcsj/EmSbcnpController.java +++ b/src/main/java/com/dsic/gj_erp/controller/jcsj/EmSbcnpController.java @@ -1,7 +1,9 @@ package com.dsic.gj_erp.controller.jcsj; +import cn.hutool.core.date.DateUtil; import com.alibaba.fastjson.JSONObject; +import com.dsic.gj_erp.annotation.AuthFunction; import com.dsic.gj_erp.bean.ResultBean; import com.dsic.gj_erp.bean.jcsj.EmSbcnp; import com.dsic.gj_erp.bean.jcsj.EmSbwxjh; @@ -43,16 +45,30 @@ public class EmSbcnpController { @ApiOperation(value = "批量新增") @PostMapping(value = "/save") - public ResultBean save(@RequestBody List emSbcnps) { - emSbcnpService.save(emSbcnps); + @AuthFunction + public ResultBean save(@RequestBody List emSbcnps, HttpServletRequest req) { + String username=(String) req.getAttribute("yhms"); + String day= DateUtil.format(DateUtil.date(), "yyyy/MM/dd"); + emSbcnps.forEach(l->{ + l.setBjry(username); + l.setBjrq(day); + }); + emSbcnpService.saveBatch(emSbcnps); return new ResultBean(); } @ApiOperation(value = "批量修改") @PostMapping(value = "/update") - public ResultBean update(@RequestBody List sbjbbs) { - emSbcnpService.updateBatchById(sbjbbs); + @AuthFunction + public ResultBean update(@RequestBody List emSbcnps, HttpServletRequest req) { + String username=(String) req.getAttribute("yhms"); + String day= DateUtil.format(DateUtil.date(), "yyyy/MM/dd"); + emSbcnps.forEach(l->{ + l.setBjry(username); + l.setBjrq(day); + }); + emSbcnpService.updateBatchById(emSbcnps); return new ResultBean(); } diff --git a/src/main/java/com/dsic/gj_erp/controller/jhgk/DmSygdMxController.java b/src/main/java/com/dsic/gj_erp/controller/jhgk/DmSygdMxController.java index 1c25b5b..1230ea4 100644 --- a/src/main/java/com/dsic/gj_erp/controller/jhgk/DmSygdMxController.java +++ b/src/main/java/com/dsic/gj_erp/controller/jhgk/DmSygdMxController.java @@ -91,7 +91,7 @@ public class DmSygdMxController { @AuthFunction public ResultBean getCnsb(){ List list= emSbcnpService.list(); - Map> map= list.stream().filter(l -> Objects.nonNull(l.getGx())).collect(Collectors.groupingBy(EmSbcnp::getGx)); + Map> map= list.stream().filter(l -> Objects.nonNull(l.getTzbh())).collect(Collectors.groupingBy(EmSbcnp::getTzbh)); return new ResultBean(map); } @RequestMapping("/sygdPC") diff --git a/src/main/java/com/dsic/gj_erp/controller/jhgk/DmSygdMxLjController.java b/src/main/java/com/dsic/gj_erp/controller/jhgk/DmSygdMxLjController.java index 6026704..522998e 100644 --- a/src/main/java/com/dsic/gj_erp/controller/jhgk/DmSygdMxLjController.java +++ b/src/main/java/com/dsic/gj_erp/controller/jhgk/DmSygdMxLjController.java @@ -18,13 +18,15 @@ import org.springframework.web.bind.annotation.RestController; public class DmSygdMxLjController { public static void main(String[] agrs) { - double ljgs=12.0/8; - System.out.println(ljgs); - int num= (int)ljgs; - - num+=((ljgs-num)>0?2:1); - - System.out.println(num); + System.out.println((3.21!=0.0)&&("16,13".indexOf("12")>0)); +// double ljgs=12.0/8; +// System.out.println(ljgs); +// int num= (int)ljgs; +// +// num+=((ljgs-num)>0?1:0); +// +// System.out.println(num); +// System.out.println(DateUtil.format(DateUtil.offsetDay(DateUtil.parseDate("2023/08/01"),-num),"yyyy/MM/dd")); // String a = "2023/08/20"; // String b = "2023/08/21"; // System.out.println(a.compareTo(b)); @@ -34,8 +36,8 @@ public class DmSygdMxLjController { // String[] a={"船只", "批量号", "总段号", "分段号", "大组极重", "总装部最新分段需求期", "钢料需求", "X大板", "X数控件", "X平铁", "X压弯", "X型材", "X二次装T型材"}; // String[] a1={"dcCh","dcPl", "zdh","dcFd","dzjz","zxfdxq", "glxq", "xdb", "xskj,", // "xpt,", "xyw", "xxc", "xtxc", }; -// String[] b={"工序", "跨位", "产能单位", "白班", "白班", "夜班", "夜班", "合计", "白班", "白班", "划线夜班", "划线夜班", "合计", "产能单位", "零件加工工序", "白班", "白班", "夜班", "夜班", "合计", "产能单位", "零件加工工序", "白班", "白班", "夜班", "夜班", "合计", "产能单位", "零件加工工序", "白班", "白班", "夜班", "夜班", "合计", "产能单位"}; -// String[] b1={"gx", "kw", "cndw", "zxcn_bb", "zdcn_bb", "zxcn_yb", "zdcn_yb", "cnhj", "zxcn_bb1", "zdcn_bb1", "zxcn_yb1", "zdcn_yb1", "cnhj1", "cndw1", "ljgx2", "zxcn_bb2", "zdcn_bb2", "zxcn_yb2", "zdcn_yb2", "cnhj2", "cndw2", "ljgx3", "zxcn_bb3", "zdcn_bb3", "zxcn_yb3", "zdcn_yb3", "cnhj3", "cndw3", "ljgx4", "zxcn_bb4", "zdcn_bb4", "zxcn_yb4", "zdcn_yb4", "cnhj4", "cndw4"}; +// String[] b={"套料图号", "套料图名", "加工跨", "划线设备", "划线产能", "切割设备", "切割产能", "零件加工设备", "设备产能", "零件加工设备", "设备产能", "零件加工设备", "设备产能", "编辑人员", "编辑日期"}; +// String[] b1={"tzbh", "tzmc", "kw", "hxsb", "hxcn", "qgsb", "qgcn", "ljjgsb1", "sbcn1", "ljjgsb2", "sbcn2", "ljjgsb3", "sbcn3", "bjry", "bjrq"}; // for (int i = 0; i < b.length; i++) { // System.out.println("{ field: '"+b1[i]+"', title: '"+b[i]+"', width: 120, \n" + // " filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],\n" + diff --git a/src/main/java/com/dsic/gj_erp/controller/sy/DmDepartController1.java b/src/main/java/com/dsic/gj_erp/controller/sy/DmDepartController1.java new file mode 100644 index 0000000..69743f9 --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/controller/sy/DmDepartController1.java @@ -0,0 +1,91 @@ +package com.dsic.gj_erp.controller.sy; + + +import com.dsic.gj_erp.annotation.AuthFunction; +import com.dsic.gj_erp.bean.ResultBean; +import com.dsic.gj_erp.bean.sy.DmDepart; +import com.dsic.gj_erp.bean.sy.DmDepartIn; +import com.dsic.gj_erp.service.sy.DmDepartService; +import io.swagger.annotations.Authorization; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import java.util.Arrays; +import java.util.List; + +/** + *

+ * 部门表 前端控制器 + *

+ * + * @author xhj + * @since 2021-03-23 + */ +@RestController +@RequestMapping("/api/sy/depart") +public class DmDepartController1 { + + @Resource + private DmDepartService dmDepartService; + + /** + * 无参获取全部部门 + * @return + */ + @GetMapping("/getall") + public ResultBean> getAll(){ + return new ResultBean>(this.dmDepartService.getAll()); + } + + /** + * 条件查询部门及其子部门 + * @param dmDepart + * @return + */ + @AuthFunction + @PostMapping("/getcon") + public ResultBean> getByCondition(@RequestBody DmDepart dmDepart){ + return new ResultBean>(this.dmDepartService.getByCondition(dmDepart)); + } + + @AuthFunction + @PostMapping("/getcondefault") + public ResultBean> getByConditionDefaultDepartCode(@RequestBody DmDepartIn dmDepart){ + return new ResultBean>(this.dmDepartService.getByConditionDefaultDepartCode(dmDepart)); + } + + @AuthFunction + @PostMapping("/getallparent") + public ResultBean> getAllParent(){ + return new ResultBean<>(this.dmDepartService.getAllParent()); + } + + @AuthFunction + @PostMapping("/getallchildren") + public ResultBean> getAllChildren(){ + return new ResultBean<>(this.dmDepartService.getAllChildren()); + } + + /** + * @Title + * @Description //根据参数不同查询部门 + * @author xcs + * @updateAuthor xcs + * @Date 2021/5/12 10:26 + * @version v1.0.0 + * @exception + * @throws + * @return + **/ + @ResponseBody + @RequestMapping("/selectall") + public ResultBean> selectall(@RequestBody String[] map){ + // System.out.println(map+"打印一下这个东西"); + List ids = Arrays.asList(map); + return this.dmDepartService.selectDepartQuery(ids); + + } + + +} + diff --git a/src/main/java/com/dsic/gj_erp/controller/sy/DmEmployeeController1.java b/src/main/java/com/dsic/gj_erp/controller/sy/DmEmployeeController1.java new file mode 100644 index 0000000..4a09bb5 --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/controller/sy/DmEmployeeController1.java @@ -0,0 +1,45 @@ +package com.dsic.gj_erp.controller.sy; + + +import com.dsic.gj_erp.bean.ResultBean; +import com.dsic.gj_erp.bean.sy.DmEmployee; +import com.dsic.gj_erp.service.sy.DmEmployeeService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +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 javax.annotation.Resource; +import java.util.List; + +/** + * @version V1.0.0 + * @Title: DmEmployeeController + * @Package com.dsic.xzerp.controller.sy + * @Description: 管系制造员工查询专用controller + * @author: 张恩铭 + * @date: 2021/4/2 9:06 + */ +@RestController +@Api(tags = "管系制造员工查询专用controller") +@RequestMapping("/api/sy/ygcx") +public class DmEmployeeController1 { + + @Resource + private DmEmployeeService dmEmployeeService; + + @PostMapping("/getcon") + @ApiOperation("无like条件查询") + public ResultBean> getByCon(@RequestBody DmEmployee dmEmployee){ + return new ResultBean>(this.dmEmployeeService.getByCondition(dmEmployee)); + } + + @PostMapping("/getcondefault") + @ApiOperation("特定like条件查询") + public ResultBean> getByConDefaultDeptCode(@RequestBody DmEmployee dmEmployee){ + return new ResultBean<>(this.dmEmployeeService.getByConditionDefaultDepartCode(dmEmployee)); + } + +} diff --git a/src/main/java/com/dsic/gj_erp/controller/sy/SyDictController.java b/src/main/java/com/dsic/gj_erp/controller/sy/SyDictController.java new file mode 100644 index 0000000..86883bc --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/controller/sy/SyDictController.java @@ -0,0 +1,52 @@ +package com.dsic.gj_erp.controller.sy; + + +import com.dsic.gj_erp.bean.ResultBean; +import com.dsic.gj_erp.service.sy.SyDictService; +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.Map; + +/** + *

+ * 前端控制器 + *

+ * + * @author xhj + * @since 2021-03-15 + */ +@RestController +@RequestMapping(value = "/api/sy/dict") +public class SyDictController { + @Autowired + SyDictService syDictService; + + + @PostMapping(value = "/getTreeList") + public ResultBean getTreeList(@RequestBody Map params) { + return new ResultBean( syDictService.getTreeList(params)); + + } + + @PostMapping(value = "/getTxTreeList") + public ResultBean getTxTreeList(@RequestBody Map params) { + return new ResultBean( syDictService.getTxTreeList(params)); + + } + + @PostMapping(value = "/getTreeListForQKFL") + public ResultBean getTreeListForQKFL(@RequestBody Map params) { + return new ResultBean( syDictService.getTreeListForQKFL(params)); + + } + + + + + +} + diff --git a/src/main/java/com/dsic/gj_erp/controller/sy/SyDictItemController.java b/src/main/java/com/dsic/gj_erp/controller/sy/SyDictItemController.java new file mode 100644 index 0000000..b9d61f2 --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/controller/sy/SyDictItemController.java @@ -0,0 +1,91 @@ +package com.dsic.gj_erp.controller.sy; + + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.dsic.gj_erp.bean.ResultBean; +import com.dsic.gj_erp.bean.sy.SyDictItem; +import com.dsic.gj_erp.service.sy.SyDictItemService; +import com.dsic.gj_erp.util.CacheConstant; +import org.apache.commons.lang3.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.cache.annotation.CacheEvict; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +/** + *

+ * 前端控制器 + *

+ * + * @author xhj + * @since 2021-03-16 + */ +@RestController +@RequestMapping(value = "/api/sy/dict") +public class SyDictItemController { + + @Resource + SyDictItemService syDictItemService; + + @PostMapping(value = "/getList") + public ResultBean getList(@RequestBody Map params) { + QueryWrapper queryWrapper = new QueryWrapper(); + if (!StringUtils.isBlank((String)params.get("name"))){ + queryWrapper.eq("dict_code",params.get("name")); + } + return new ResultBean(syDictItemService.list(queryWrapper)); + } + + /** + * 获取以dictCode分组的字典数据 + */ + @GetMapping("mapList") + public ResultBean mapList(){ + List list=syDictItemService.list(); + Map> map=list.stream() + .collect(Collectors.groupingBy(SyDictItem::getDictCode)); + return new ResultBean<>(map); + } + + @PostMapping(value = "/add") + @CacheEvict(value= CacheConstant.SYS_DICT_CACHE, allEntries=true) + public ResultBean getList(@RequestBody List syDictItem) { + return new ResultBean(syDictItemService.saveBatch(syDictItem)); + } + + @PostMapping(value = "/del") + @CacheEvict(value= CacheConstant.SYS_DICT_CACHE, allEntries=true) + public ResultBean del(@RequestBody List delArr) { + syDictItemService.removeByIds(delArr); + return new ResultBean(); + } + + @PostMapping(value = "/update") + @CacheEvict(value=CacheConstant.SYS_DICT_CACHE, allEntries=true) + public ResultBean update(@RequestBody List syDictItem) { + syDictItemService.updateBatchById(syDictItem); + return new ResultBean(); + } + + @PostMapping("/getbycode") + public ResultBean getByCode(@RequestBody SyDictItem syDictItem){ + return new ResultBean(this.syDictItemService.getByCode(syDictItem)); + } + + /** + * 根据dictCode查询,itemCode右模糊查询 + */ + @PostMapping("/getByDictCodeWithItemCodeRightLike") + public ResultBean getByDictCodeWithItemCodeRightLike(@RequestBody SyDictItem syDictItem){ + List list=this.syDictItemService.list(new QueryWrapper() + .eq("dict_code",syDictItem.getDictCode()) + .likeRight("item_code",syDictItem.getItemCode())); + return new ResultBean(list); + } + +} + diff --git a/src/main/java/com/dsic/gj_erp/controller/sy/SyLogController.java b/src/main/java/com/dsic/gj_erp/controller/sy/SyLogController.java new file mode 100644 index 0000000..f8a8978 --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/controller/sy/SyLogController.java @@ -0,0 +1,100 @@ +package com.dsic.gj_erp.controller.sy; + + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.dsic.gj_erp.annotation.AuthFunction; +import com.dsic.gj_erp.bean.ResultBean; +import com.dsic.gj_erp.bean.sy.DmPipeSystem; +import com.dsic.gj_erp.bean.sy.SyLog; +import com.dsic.gj_erp.service.sy.SyLogService; +import com.dsic.gj_erp.util.IPUtils; +import io.swagger.annotations.Authorization; +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 org.apache.commons.lang3.StringUtils; +import javax.servlet.http.HttpServletRequest; +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.List; +import java.util.Map; + +/** + *

+ * 系统日志表 前端控制器 + *

+ * + * @author xhj + * @since 2021-04-08 + */ + +@RestController +@RequestMapping(value = "/api/sy/syLog") +public class SyLogController { + + @Autowired + SyLogService syLogService; + + @AuthFunction + @PostMapping(value = "/add") + public ResultBean getList(HttpServletRequest httpRequest , @RequestBody SyLog syLog) { + + syLog.setIp(IPUtils.getIpAddr(httpRequest)); + syLog.setComputerName(System.getenv().get("USERNAME")); + syLog.setUserCode((String) httpRequest.getAttribute("yhdm")); + syLog.setUserName((String) httpRequest.getAttribute("username")); + SimpleDateFormat df = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");//设置日期格式 + syLog.setCreateTime(df.format(new Date())); + syLogService.save(syLog); + return new ResultBean(); + } + + + @PostMapping("/getList") + public ResultBean getList(@RequestBody Map paramMap){ + IPage page = new Page<>((Integer)paramMap.get("pageNo"), (Integer)paramMap.get("pageSize")); + QueryWrapper qw = new QueryWrapper(); + + Map syLog = (Map)paramMap.get("syLog"); + qw.orderByDesc("create_time"); + if (!StringUtils.isBlank((String)syLog.get("userName"))){ + qw.like("user_name",syLog.get("userName")); + + } + if (!StringUtils.isBlank((String)syLog.get("systemCode"))){ + qw.like("system_code",syLog.get("systemCode")); + + } + if (!StringUtils.isBlank((String)syLog.get("content"))){ + qw.like("content",syLog.get("content")); + //qw.apply("left(content,2)=2"); + } + if (!StringUtils.isBlank((String)syLog.get("ks"))){ + qw.apply("left(create_time,10)>='"+syLog.get("ks")+"'"); + } + if (!StringUtils.isBlank((String)syLog.get("js"))){ + qw.apply("left(create_time,10)<='"+syLog.get("js")+"'"); + } + + // List list = syLogService.list(qw); + IPage page1 = syLogService.page(page, qw); + + + // System.out.println(page1); + return new ResultBean(page1); + } + + @PostMapping(value = "/del") + public ResultBean del(@RequestBody List delArr) { + syLogService.removeByIds(delArr); + return new ResultBean(); + } + + +} + diff --git a/src/main/java/com/dsic/gj_erp/mapper/DmDepartMapper.java b/src/main/java/com/dsic/gj_erp/mapper/DmDepartMapper.java new file mode 100644 index 0000000..270c918 --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/mapper/DmDepartMapper.java @@ -0,0 +1,31 @@ +package com.dsic.gj_erp.mapper; + + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.dsic.gj_erp.bean.sy.DmDepart; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Select; + +import java.util.List; + +/** + *

+ * 部门表 Mapper 接口 + *

+ * + * @author xhj + * @since 2021-03-23 + */ +@Mapper +public interface DmDepartMapper extends BaseMapper { + @Select(value = {""}) + List selectDepartQuery (@Param("ids") List ids); + +} diff --git a/src/main/java/com/dsic/gj_erp/mapper/DmEmployeeMapper.java b/src/main/java/com/dsic/gj_erp/mapper/DmEmployeeMapper.java new file mode 100644 index 0000000..174cc55 --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/mapper/DmEmployeeMapper.java @@ -0,0 +1,18 @@ +package com.dsic.gj_erp.mapper; + + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.dsic.gj_erp.bean.sy.DmEmployee; +import org.apache.ibatis.annotations.Mapper; + +/** + * @version V1.0.0 + * @Title: DmEmployeeMapper + * @Package com.dsic.xzerp.dao.sy + * @Description: 管系制造员工mapper + * @author: 张恩铭 + * @date: 2021/4/2 9:01 + */ +@Mapper +public interface DmEmployeeMapper extends BaseMapper { +} diff --git a/src/main/java/com/dsic/gj_erp/mapper/SyDictItemMapper.java b/src/main/java/com/dsic/gj_erp/mapper/SyDictItemMapper.java new file mode 100644 index 0000000..8a3fcc9 --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/mapper/SyDictItemMapper.java @@ -0,0 +1,30 @@ +package com.dsic.gj_erp.mapper; + + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.dsic.gj_erp.bean.sy.SyDictItem; +import org.apache.ibatis.annotations.MapKey; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.Map; + +/** + *

+ * Mapper 接口 + *

+ * + * @author xhj + * @since 2021-03-16 + */ +@Mapper +public interface SyDictItemMapper extends BaseMapper { + + + String queryTableDictTextByKey(@Param("table") String table, @Param("text") String text, @Param("code") String code, @Param("key") String key); + String queryTableDictTextByKeySys(@Param("table") String table, @Param("text") String text, @Param("code") String code, @Param("key") String key,@Param("code1") String code1, @Param("key1") String key1); + String queryDictTextByKey(@Param("code") String code,@Param("key") String key); + + @MapKey("itemCode") + Map getCodeToMap(String dictCode); +} diff --git a/src/main/java/com/dsic/gj_erp/mapper/SyDictMapper.java b/src/main/java/com/dsic/gj_erp/mapper/SyDictMapper.java new file mode 100644 index 0000000..8a61b00 --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/mapper/SyDictMapper.java @@ -0,0 +1,19 @@ +package com.dsic.gj_erp.mapper; + + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.dsic.gj_erp.bean.sy.SyDict; +import org.apache.ibatis.annotations.Mapper; + +/** + *

+ * Mapper 接口 + *

+ * + * @author xhj + * @since 2021-03-15 + */ +@Mapper +public interface SyDictMapper extends BaseMapper { + +} diff --git a/src/main/java/com/dsic/gj_erp/mapper/SyLogMapper.java b/src/main/java/com/dsic/gj_erp/mapper/SyLogMapper.java new file mode 100644 index 0000000..cc5b5b9 --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/mapper/SyLogMapper.java @@ -0,0 +1,17 @@ +package com.dsic.gj_erp.mapper; + + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.dsic.gj_erp.bean.sy.SyLog; + +/** + *

+ * 系统日志表 Mapper 接口 + *

+ * + * @author xhj + * @since 2021-04-08 + */ +public interface SyLogMapper extends BaseMapper { + +} diff --git a/src/main/java/com/dsic/gj_erp/mapper/SyuserMapper.java b/src/main/java/com/dsic/gj_erp/mapper/SyuserMapper.java index 49c9011..49cd8e1 100644 --- a/src/main/java/com/dsic/gj_erp/mapper/SyuserMapper.java +++ b/src/main/java/com/dsic/gj_erp/mapper/SyuserMapper.java @@ -11,4 +11,61 @@ import java.util.Map; public interface SyuserMapper { List getUserMenu(String usercode, String systemcode); + + //------------------------------------------------------ + List getDepartList(); + + List getRoleList(); + + Integer addRole(Map role); + + Integer deleteRole(String role_code); + + Integer updateRole(Map role); + + List getRoleListByUser(String user_code); + + Integer addRoleForUser(Map user_role); + + Integer deleteRoleForUser(Map user_role); + + List getSystemList(); + + List getMenuList(); + + List getUserListByMenu(int menu_id); + + List getInstitutionList(); + + List getUserListByRole(String role_code); + + List getInstitutionListByRole(String role_code); + + List getSystemListByRole(String role_code); + + Integer addRoleForInstitution(Map institution_role); + + Integer deleteRoleForInstitution(Map institution_role); + + Integer addRoleForSystem(Map system_role); + + Integer deleteRoleForSystem(Map system_role); + + + List getMenuListByRole(String role_code); + + void addRoleForMenu(Map menu_role); + + void deleteRoleForMenu(Map menu_role); + + void addFingerprintResult(String uuid, String fingerprint, String user_code); + + String getCodeByUuid(String uuid); + + Integer updateFingerprint(String uuid, String fingerprint); + Integer updateFingerprint1(String userCode, String fingerprint); + Integer updateFingerprint2(String userCode, String fingerprint); + Integer updateFingerprint3(String userCode, String fingerprint); + + Map getUserInfo(Map map); } diff --git a/src/main/java/com/dsic/gj_erp/mapper/jcsj/EmSbcnpMapper.java b/src/main/java/com/dsic/gj_erp/mapper/jcsj/EmSbcnpMapper.java index d32eb72..b4bc9bc 100644 --- a/src/main/java/com/dsic/gj_erp/mapper/jcsj/EmSbcnpMapper.java +++ b/src/main/java/com/dsic/gj_erp/mapper/jcsj/EmSbcnpMapper.java @@ -13,5 +13,5 @@ import com.dsic.gj_erp.bean.jcsj.EmSbcnp; * @since 2023-09-15 */ public interface EmSbcnpMapper extends BaseMapper { - + int test(); } diff --git a/src/main/java/com/dsic/gj_erp/service/MyCacheInterface.java b/src/main/java/com/dsic/gj_erp/service/MyCacheInterface.java new file mode 100644 index 0000000..037cf9f --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/service/MyCacheInterface.java @@ -0,0 +1,5 @@ +package com.dsic.gj_erp.service; + +public interface MyCacheInterface { + void refreshRedis(); +} diff --git a/src/main/java/com/dsic/gj_erp/service/cache/RedisCacheKeyConfig.java b/src/main/java/com/dsic/gj_erp/service/cache/RedisCacheKeyConfig.java new file mode 100644 index 0000000..075421e --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/service/cache/RedisCacheKeyConfig.java @@ -0,0 +1,9 @@ +package com.dsic.gj_erp.service.cache; + +public interface RedisCacheKeyConfig { + //船只信息缓存,对应DmProject + String PROJECT_KEY="ZX_ERP::PROJECT"; + + //部门缓存 + String DEPT_KEY="ZX_ERP::DEPT"; +} diff --git a/src/main/java/com/dsic/gj_erp/service/cache/package-info.java b/src/main/java/com/dsic/gj_erp/service/cache/package-info.java new file mode 100644 index 0000000..5fb10f3 --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/service/cache/package-info.java @@ -0,0 +1,2 @@ +package com.dsic.gj_erp.service.cache; +//缓存读取 \ No newline at end of file diff --git a/src/main/java/com/dsic/gj_erp/service/jcsj/EmSbcnpService.java b/src/main/java/com/dsic/gj_erp/service/jcsj/EmSbcnpService.java index 6e874f7..127f60f 100644 --- a/src/main/java/com/dsic/gj_erp/service/jcsj/EmSbcnpService.java +++ b/src/main/java/com/dsic/gj_erp/service/jcsj/EmSbcnpService.java @@ -22,9 +22,6 @@ import java.util.Map; public interface EmSbcnpService extends IService { List getList(JSONObject json); - void save(List emSbcnps); - - void update(List emSbcnps); void delete(List emSbcnps); diff --git a/src/main/java/com/dsic/gj_erp/service/jcsj/impl/EmSbcnpServiceImpl.java b/src/main/java/com/dsic/gj_erp/service/jcsj/impl/EmSbcnpServiceImpl.java index 2d3cef0..ca67c74 100644 --- a/src/main/java/com/dsic/gj_erp/service/jcsj/impl/EmSbcnpServiceImpl.java +++ b/src/main/java/com/dsic/gj_erp/service/jcsj/impl/EmSbcnpServiceImpl.java @@ -33,24 +33,17 @@ public class EmSbcnpServiceImpl extends ServiceImpl impl @Override public List getList(JSONObject json) { QueryWrapper queryWrapper=new QueryWrapper<>(); - if(StringUtils.isNotEmpty(json.getString("kw"))){ - queryWrapper.eq("KW",json.getString("kw")); + if(StringUtils.isNotEmpty(json.getString("tzbh"))){ + queryWrapper.eq("tzbh",json.getString("tzbh")); } - List emSbjbbs=emSbcnpMapper.selectList(queryWrapper.orderByAsc("kw,gx")); - return emSbjbbs; - } +// for (int i = 0; i < 80; i++) { +// emSbcnpMapper.test(); +// } - @Override - public void save(List emSbcnps) { -// List saveList= emSbcnps.stream().filter(emSbcnp -> StringUtils.isNotEmpty(emSbcnp.getSbbh())).collect(Collectors.toList()); - saveBatch(emSbcnps); + List emSbjbbs=emSbcnpMapper.selectList(queryWrapper.orderByDesc("kw,tzbh,zl,jgsx")); + return emSbjbbs; } - @Override - public void update(List emSbcnps) { - //emSbcnpRepository.saveAll(emSbcnps); - updateBatchById(emSbcnps); - } @Override public void delete(List emSbcnps) { diff --git a/src/main/java/com/dsic/gj_erp/service/jhgk/impl/DmQfxqServiceImpl.java b/src/main/java/com/dsic/gj_erp/service/jhgk/impl/DmQfxqServiceImpl.java index aeaca4c..701f7d7 100644 --- a/src/main/java/com/dsic/gj_erp/service/jhgk/impl/DmQfxqServiceImpl.java +++ b/src/main/java/com/dsic/gj_erp/service/jhgk/impl/DmQfxqServiceImpl.java @@ -1,16 +1,12 @@ package com.dsic.gj_erp.service.jhgk.impl; -import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.util.ObjUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.dsic.gj_erp.bean.ResultBean; import com.dsic.gj_erp.bean.jhgk.DmQfxq; -import com.dsic.gj_erp.bean.jhgk.DmSygdxq; import com.dsic.gj_erp.bean.jhgk.DmYdjh; -import com.dsic.gj_erp.bean.jhgk.excel.QfExcel; import com.dsic.gj_erp.mapper.jhgk.DmQfxqMapper; import com.dsic.gj_erp.service.jhgk.DmQfxqService; import com.dsic.gj_erp.service.jhgk.DmYdjhService; @@ -18,7 +14,6 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; -import javax.servlet.http.HttpServletRequest; import java.util.*; import java.util.stream.Collectors; diff --git a/src/main/java/com/dsic/gj_erp/service/jhgk/impl/DmSygdMxServiceImpl.java b/src/main/java/com/dsic/gj_erp/service/jhgk/impl/DmSygdMxServiceImpl.java index f10e71d..fc5a4a9 100644 --- a/src/main/java/com/dsic/gj_erp/service/jhgk/impl/DmSygdMxServiceImpl.java +++ b/src/main/java/com/dsic/gj_erp/service/jhgk/impl/DmSygdMxServiceImpl.java @@ -12,6 +12,7 @@ import com.dsic.gj_erp.bean.ResultBean; import com.dsic.gj_erp.bean.jcsj.DmBom; import com.dsic.gj_erp.bean.jcsj.DmCzplpNew; import com.dsic.gj_erp.bean.jcsj.EmGcrl; +import com.dsic.gj_erp.bean.jcsj.EmSbcnp; import com.dsic.gj_erp.bean.jcsj.excel.PlExcel; import com.dsic.gj_erp.bean.jhgk.*; import com.dsic.gj_erp.bean.jhgk.dto.*; @@ -20,6 +21,7 @@ import com.dsic.gj_erp.mapper.jcsj.EmGcrlMapper; import com.dsic.gj_erp.mapper.jhgk.DmSygdMxMapper; import com.dsic.gj_erp.mapper.jhgk.DmZrcjhMapper; import com.dsic.gj_erp.service.jcsj.DmCzplpNewService; +import com.dsic.gj_erp.service.jcsj.EmSbcnpService; import com.dsic.gj_erp.service.jhgk.DmSygdMxService; import com.dsic.gj_erp.service.jhgk.DmSygdService; import com.dsic.gj_erp.service.jhgk.DmTzjhService; @@ -57,6 +59,8 @@ public class DmSygdMxServiceImpl extends ServiceImpl i private DmTzjhService tzjhService; @Resource private DmSygdMxLjServiceImpl ljService; + @Resource + private EmSbcnpService sbcnpService; /** * 采购计划到货情况 @@ -77,16 +81,17 @@ public class DmSygdMxServiceImpl extends ServiceImpl i public ResultBean sygdPC() { //todo 重复导入(三月滚动计划)的数据处理 //零件 删除 - String begin=DateUtil.format(DateUtil.nextMonth(),"yyyy/MM/01"); - String end =DateUtil.format(DateUtil.endOfMonth(DateUtil.offsetMonth(DateUtil.date(),3)),"yyyy/MM/dd"); -// String begin="2023/08/01"; -// String end ="2023/10/31"; +// String begin=DateUtil.format(DateUtil.nextMonth(),"yyyy/MM/01"); +// String end =DateUtil.format(DateUtil.endOfMonth(DateUtil.offsetMonth(DateUtil.date(),3)),"yyyy/MM/dd"); + String begin="2023/08/01"; + String end ="2023/10/31"; //todo 零件 ljService.remove(new QueryWrapper().between("xzglxq",begin,end)); //todo 三月滚动明细 this.remove(new QueryWrapper().between("jssj",begin,end)); //todo 三月滚动计划 sygdService.remove(new QueryWrapper().between("sl_sj",begin,end)); + baseMapper.getLjxx(begin,end); List ljList = ljService.list(new QueryWrapper().between("xzglxq",begin,end)); @@ -100,25 +105,7 @@ public class DmSygdMxServiceImpl extends ServiceImpl i //qgjssj 切割完成期(最晚) //判断标识 零件数量*定额工时*长度=加工时长 累计加工时长 需求日期-累计加工时长=切割完成期(最晚) //todo 有标识 无定额-->设备产能中同跨位零件加工定额 无-->通用零件加工定额 -// ljList.forEach(l->{ -// double ljgs=0.0; -// if(StrUtil.isNotEmpty(l.getPkbs())){ -// ljgs+=(l.getLjsl()*l.getPkcd())/l.getPkgs(); -// -// } -// if(StrUtil.isNotEmpty(l.getDmbs())){ -// ljgs+=(l.getLjsl()*l.getDmcd())/l.getDmgs(); -// } -// if(StrUtil.isNotEmpty(l.getQbs())){ -// ljgs+=l.getLjsl()/l.getQgs(); -// } -//// 8小时 -// ljgs=ljgs/8; -// int num= (int)ljgs; -// num+=(ljgs-num)>0?2:1; -// l.setQgjssj(DateUtil.format(DateUtil.offsetDay(DateUtil.parseDate(l.getXzglxq()),num),"yyyy/MM/dd")); -// ljService.updateById(l); -// }); + //2.根据 List mxList = baseMapper.getMx(begin,end); @@ -136,43 +123,122 @@ public class DmSygdMxServiceImpl extends ServiceImpl i * @param list */ public void ypc(List list) { + Map> mxMap= list.stream().collect(Collectors.groupingBy(x -> x.getKw()+x.getZl())); + //加工工序list + List sbcnp= sbcnpService.list(new QueryWrapper().orderByDesc("tzbh,zl,jgsx")); + Map> cnMap= sbcnp.stream().collect(Collectors.groupingBy(l->l.getTzbh()+l.getZl())); + for (String ljkey:mxMap.keySet()){ + for (String cnkey:cnMap.keySet()){ + if(ljkey.equals(cnkey)){ + List mxs= mxMap.get(ljkey); + List cns= cnMap.get(cnkey); + mxs.forEach(l->{ + double ljgs=0.0; + for (EmSbcnp cn : cns) { + // 号料 手工切割 倒棱 切端头 自由边 预组 + // 曲 (个) + if(StrUtil.isNotEmpty(l.getQbs())&&cn.getGx().equals("18")){ + ljgs+= l.getLjsl()/cn.getDegs(); + l.setQjgrq(getRq(ljgs,l.getJssj())); + } + // 打磨 + if(ObjectUtil.isNotEmpty(l.getDmcd())&&("16,13".indexOf(cn.getGx())>0)){ + ljgs+= l.getDmcd() /cn.getDegs(); + l.setDmrq(getRq(ljgs,l.getJssj())); + } + // 坡口 + if(ObjectUtil.isNotEmpty(l.getPkcd())&&("08,10".indexOf(cn.getGx())>0)){ + ljgs+= l.getPkcd() /cn.getDegs(); + l.setPkrq(getRq(ljgs,l.getJssj())); + } + + if("03,04,05,07".indexOf(cn.getGx())>0){ + ljgs+= l.getQgcd() /cn.getDegs(); + l.setQgrq(getRq(ljgs,l.getJssj())); + } + // 划线 + if(cn.getGx().equals("01")){ + ljgs+= l.getHxcd() /cn.getDegs(); + l.setHxrq(getRq(ljgs,l.getJssj())); + } + //上料 + if(cn.getGx().equals("19")){ + ljgs+= l.getHxcd() /cn.getDegs(); + l.setSlrq(getRq(ljgs,l.getJssj())); + } + //抛丸 + if(cn.getGx().equals("20")){ + ljgs+= l.getHxcd() /cn.getDegs(); + l.setPkrq(getRq(ljgs,l.getJssj())); + } + //理料 + if(cn.getGx().equals("21")){ + ljgs+= l.getHxcd() /cn.getDegs(); + l.setLlrq(getRq(ljgs,l.getJssj())); + } + } + this.save(l); + }); + + } + } + } +//******************************************************************** //1.根据组立结束时间排序,决定生产顺序 - list = list.stream().sorted(Comparator.comparing(DmSygdMx::getJssj, Comparator.nullsLast(Comparator.naturalOrder()))).collect(Collectors.toList()); - double days=list.size()/266.0; - int day=(int)days; - day+=((days-day)>0?1:0); - //2.未来工厂日历信息 - String begin=list.get(0).getJssj(); - String end =DateUtil.format(DateUtil.offsetDay(DateUtil.parseDate(begin),day),"yyyy/MM/dd"); - List gcrlList = gcrlMapper.selectList(new QueryWrapper() - .between("gl",begin,end) - .orderByAsc("gl")); +// list = list.stream().sorted(Comparator.comparing(DmSygdMx::getQgjssj, Comparator.nullsLast(Comparator.naturalOrder()))).collect(Collectors.toList()); +// double days=list.size()/266.0; +// int day=(int)days; +// day+=((days-day)>0?1:0); +// //2.未来工厂日历信息 +// String begin=list.get(0).getJssj(); +// String end =DateUtil.format(DateUtil.offsetDay(DateUtil.parseDate(begin),day),"yyyy/MM/dd"); +// List gcrlList = gcrlMapper.selectList(new QueryWrapper() +// .between("gl",begin,end) +// .orderByAsc("gl")); //3.预排产 - //TODO 假设:产能测算266.9;又套料图需当天完成 - for (int i = 0; i < gcrlList.size(); i++) { - for (int j = 0; j < 266; j++) { - int index = 266 * i + j; - if (list.size() > index) { - String sl= DateUtil.format(DateUtil.offsetDay(DateUtil.parseDate(gcrlList.get(i).getGl()),-1),"yyyy/MM/dd"); - list.get(index).setSlrq(sl); - list.get(index).setPwrq(sl); - list.get(index).setPw("1抛"); - list.get(index).setHxrq(gcrlList.get(i).getGl()); - list.get(index).setQgrq(gcrlList.get(i).getGl()); - list.get(index).setXxr(gcrlList.get(i).getXxr()); - } else { - j = 266; - i = gcrlList.size(); - } - } - // - } - this.saveBatch(list); + // 假设:产能测算266.9;又套料图需当天完成 +// for (int i = 0; i < gcrlList.size(); i++) { +// for (int j = 0; j < 266; j++) { +// int index = 266 * i + j; +// if (list.size() > index) { +// String sl= DateUtil.format(DateUtil.offsetDay(DateUtil.parseDate(gcrlList.get(i).getGl()),-1),"yyyy/MM/dd"); +// list.get(index).setSlrq(sl); +// list.get(index).setPwrq(sl); +// list.get(index).setPw("1抛"); +// list.get(index).setHxrq(gcrlList.get(i).getGl()); +// list.get(index).setQgrq(gcrlList.get(i).getGl()); +// list.get(index).setXxr(gcrlList.get(i).getXxr()); +// } else { +// j = 266; +// i = gcrlList.size(); +// } +// } +// // +// } + +// this.saveBatch(list); } + public String getRq(Double gs,String rq){ + double ts=gs/8; + int num= (int)ts; + num+=(ts-num)>0?1:0; + return DateUtil.format(DateUtil.offsetDay(DateUtil.parseDate(rq),-num),"yyyy/MM/dd"); + } + + public void pp(List list,List sbcnp){ +// 1.零件按照交货时间排序,从后到前;按日期分组 +// 2.时间倒序,排加工时间 + //套料图类型一致 + //日期从后往前 + //产能 sbcnp.get(0).getDegs()*8 + //循环日期 工厂日历 最后一天 + + + + } /** * 提取线表信息 - * * @param list * @return */ @@ -183,7 +249,6 @@ public class DmSygdMxServiceImpl extends ServiceImpl i //批量表重量 中日程重量 //明细 按船号 月份 分组 计算重量 排产重量 - List xbjhs = xbService.list(new QueryWrapper() .eq("nf", year) .ne("zl", 0) @@ -309,8 +374,8 @@ public class DmSygdMxServiceImpl extends ServiceImpl i BigDecimal hx_cd = new BigDecimal(0); BigDecimal qg_cd = new BigDecimal(0); for (DmSygdMx mx : list1) { - hx_cd = hx_cd.add(ObjectUtil.isEmpty(mx.getHxcd()) ? new BigDecimal(0) : mx.getHxcd()); - qg_cd = qg_cd.add(ObjectUtil.isEmpty(mx.getQgcd()) ? new BigDecimal(0) : mx.getQgcd()); + hx_cd = hx_cd.add(ObjectUtil.isEmpty(mx.getHxcd()) ? new BigDecimal(0) : new BigDecimal(mx.getHxcd())); + qg_cd = qg_cd.add(ObjectUtil.isEmpty(mx.getQgcd()) ? new BigDecimal(0) : new BigDecimal(mx.getQgcd())); } // kwdto.setHx_cd(hx_cd); // kwdto.setQg_cd(qg_cd); diff --git a/src/main/java/com/dsic/gj_erp/service/sy/DmDepartService.java b/src/main/java/com/dsic/gj_erp/service/sy/DmDepartService.java new file mode 100644 index 0000000..cc10713 --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/service/sy/DmDepartService.java @@ -0,0 +1,30 @@ +package com.dsic.gj_erp.service.sy; + + +import com.baomidou.mybatisplus.extension.service.IService; +import com.dsic.gj_erp.bean.ResultBean; +import com.dsic.gj_erp.bean.sy.DmDepart; +import com.dsic.gj_erp.bean.sy.DmDepartIn; +import com.dsic.gj_erp.service.MyCacheInterface; + +import java.util.List; + +/** + *

+ * 部门表 服务类 + *

+ * + * @author xhj + * @since 2021-03-23 + */ +public interface DmDepartService extends IService, MyCacheInterface { + List getAll(); + List getByCondition(DmDepart dmDepart); + List getByConditionDefaultDepartCode(DmDepartIn dmDepart); + List getAllParent(); + List getAllChildren(); + ResultBean addDepart(DmDepart[] dmDeparts); + ResultBean updateDepart(DmDepart[] dmDeparts); + ResultBean delDepart(DmDepart[] dmDeparts); + ResultBean> selectDepartQuery (List params); +} diff --git a/src/main/java/com/dsic/gj_erp/service/sy/DmEmployeeService.java b/src/main/java/com/dsic/gj_erp/service/sy/DmEmployeeService.java new file mode 100644 index 0000000..706630e --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/service/sy/DmEmployeeService.java @@ -0,0 +1,25 @@ +package com.dsic.gj_erp.service.sy; + + +import com.baomidou.mybatisplus.extension.service.IService; +import com.dsic.gj_erp.bean.ResultBean; +import com.dsic.gj_erp.bean.sy.DmEmployee; + +import java.util.List; + +/** + * @version V1.0.0 + * @Title: DmEmployeeService + * @Package com.dsic.xzerp.service.sy + * @Description: 管系制造员工service + * @author: 张恩铭 + * @date: 2021/4/2 9:04 + */ +public interface DmEmployeeService extends IService { + List getAll(); + List getByCondition(DmEmployee dmEmployee); + List getByConditionDefaultDepartCode(DmEmployee dmEmployee); + ResultBean addEmployee(DmEmployee[] dmEmployees); + ResultBean updateEmployee(DmEmployee[] dmEmployees); + ResultBean delEmployee(DmEmployee[] dmEmployees); +} diff --git a/src/main/java/com/dsic/gj_erp/service/sy/SYService.java b/src/main/java/com/dsic/gj_erp/service/sy/SYService.java index 86acb0f..c6927b2 100644 --- a/src/main/java/com/dsic/gj_erp/service/sy/SYService.java +++ b/src/main/java/com/dsic/gj_erp/service/sy/SYService.java @@ -5,6 +5,7 @@ import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.ObjectUtil; import com.dsic.gj_erp.bean.sy.*; import com.dsic.gj_erp.dao.sy.*; +import com.dsic.gj_erp.mapper.SyuserMapper; import com.querydsl.core.Tuple; import com.querydsl.core.types.dsl.BooleanExpression; import com.querydsl.jpa.impl.JPAQueryFactory; @@ -18,12 +19,15 @@ import org.springframework.web.bind.annotation.RequestBody; import javax.annotation.PostConstruct; import javax.persistence.EntityManager; +import javax.xml.bind.DatatypeConverter; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.stream.Collectors; +import static com.alibaba.excel.util.StringUtils.isEmpty; + /** * 系统安全子系统处理逻辑 */ @@ -56,6 +60,8 @@ public class SYService { DmBhzybRepository dmBhzybRepository; @Autowired private EntityManager entityManager; + @Autowired + private SyuserMapper syuserMapper; private JPAQueryFactory queryFactory; @PostConstruct @@ -426,6 +432,119 @@ public class SYService { } return dmZhbmp; } +// ---------------------------------------------------------------- +public List getDepartList() { + return syuserMapper.getDepartList(); +} + + + public Integer addRole(Map role) { + return syuserMapper.addRole(role); + } + + public Integer deleteRole(String role_code) { + return syuserMapper.deleteRole(role_code); + } + + public Integer updateRole(Map role) { + return syuserMapper.updateRole(role); + } + + public List getRoleList() { + return syuserMapper.getRoleList(); + } + + public List getRoleListByUser(String user_code) { + return syuserMapper.getRoleListByUser(user_code); + } + + + public void addRoleForUser(List> list) { + for (Map map : list) { + syuserMapper.addRoleForUser(map); + } + } + + public void deleteRoleForUser(List> list) { + for (Map map : list) { + syuserMapper.deleteRoleForUser(map); + } + } + + + public List getSystemList() { + return syuserMapper.getSystemList(); + } + + public List getMenuList() { + return syuserMapper.getMenuList(); + } + + public List getUserListByMenu(int menu_id) { + return syuserMapper.getUserListByMenu(menu_id); + } + + + public List getInstitutionList() { + return syuserMapper.getInstitutionList(); + } + + + public List getUserListByRole(String role_code) { + return syuserMapper.getUserListByRole(role_code); + } + + + public List getInstitutionListByRole(String role_code) { + return syuserMapper.getInstitutionListByRole(role_code); + } + + public List getSystemListByRole(String role_code) { + return syuserMapper.getSystemListByRole(role_code); + } + + public void addRoleForInstitution(List> paramList) { + for (Map map : paramList) { + syuserMapper.addRoleForInstitution(map); + } + } + + public void deleteRoleForInstitution(List> paramList) { + for (Map map : paramList) { + syuserMapper.deleteRoleForInstitution(map); + } + } + + + public void addRoleForSystem(List> paramList) { + for (Map map : paramList) { + syuserMapper.addRoleForSystem(map); + } + } + + public void deleteRoleForSystem(List> paramList) { + for (Map map : paramList) { + syuserMapper.deleteRoleForSystem(map); + } + } + + + public List getMenuListByRole(String role_code) { + return syuserMapper.getMenuListByRole(role_code); + } + + public void addRoleForMenu(List> paramList) { + for (Map map : paramList) { + syuserMapper.addRoleForMenu(map); + } + } + + public void deleteRoleForMenu(List> paramList) { + for (Map map : paramList) { + syuserMapper.deleteRoleForMenu(map); + } + } + } diff --git a/src/main/java/com/dsic/gj_erp/service/sy/SyDictItemService.java b/src/main/java/com/dsic/gj_erp/service/sy/SyDictItemService.java new file mode 100644 index 0000000..ed28328 --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/service/sy/SyDictItemService.java @@ -0,0 +1,28 @@ +package com.dsic.gj_erp.service.sy; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.dsic.gj_erp.bean.sy.SyDictItem; + +import java.util.List; +import java.util.Map; + +/** + *

+ * 服务类 + *

+ * + * @author xhj + * @since 2021-03-16 + */ + +public interface SyDictItemService extends IService { + + public String translateDictFromTable(String table, String text, String code, String key); + public String translateDict(String code, String key); + public String translateDictFromTableByKey(String table, String text, String code, String key,String code1, String key1); + public List getByCode(SyDictItem syDictItem); + public List> getCodeByString(String code); + + public Map getCodeToMap(String dictCode); + +} diff --git a/src/main/java/com/dsic/gj_erp/service/sy/SyDictService.java b/src/main/java/com/dsic/gj_erp/service/sy/SyDictService.java new file mode 100644 index 0000000..b51096c --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/service/sy/SyDictService.java @@ -0,0 +1,29 @@ +package com.dsic.gj_erp.service.sy; + + +import com.baomidou.mybatisplus.extension.service.IService; +import com.dsic.gj_erp.bean.sy.SyDict; +import com.dsic.gj_erp.bean.tree.ProjectTreeVo; + +import java.util.List; +import java.util.Map; + +/** + *

+ * 服务类 + *

+ * + * @author xhj + * @since 2021-03-15 + */ + +public interface SyDictService extends IService { + + public List getTreeList(Map params); + public List getTxTreeList(Map params); + public List getTreeListForQKFL(Map params); + + //public Map getBase(Map map); + + +} diff --git a/src/main/java/com/dsic/gj_erp/service/sy/SyLogService.java b/src/main/java/com/dsic/gj_erp/service/sy/SyLogService.java new file mode 100644 index 0000000..b6da748 --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/service/sy/SyLogService.java @@ -0,0 +1,17 @@ +package com.dsic.gj_erp.service.sy; + + +import com.baomidou.mybatisplus.extension.service.IService; +import com.dsic.gj_erp.bean.sy.SyLog; + +/** + *

+ * 系统日志表 服务类 + *

+ * + * @author xhj + * @since 2021-04-08 + */ +public interface SyLogService extends IService { + +} diff --git a/src/main/java/com/dsic/gj_erp/service/sy/impl/DmDepartServiceImpl.java b/src/main/java/com/dsic/gj_erp/service/sy/impl/DmDepartServiceImpl.java new file mode 100644 index 0000000..594897f --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/service/sy/impl/DmDepartServiceImpl.java @@ -0,0 +1,240 @@ +package com.dsic.gj_erp.service.sy.impl; + + +import cn.hutool.core.util.StrUtil; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.dsic.gj_erp.bean.ResultBean; +import com.dsic.gj_erp.bean.sy.DmDepart; +import com.dsic.gj_erp.bean.sy.DmDepartIn; +import com.dsic.gj_erp.mapper.DmDepartMapper; +import com.dsic.gj_erp.service.cache.RedisCacheKeyConfig; +import com.dsic.gj_erp.service.sy.DmDepartService; +import com.dsic.gj_erp.util.ConditionSelect; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.redis.core.RedisTemplate; +import org.springframework.stereotype.Service; +import org.apache.commons.lang3.StringUtils; +import org.springframework.transaction.annotation.Transactional; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; + +/** + *

+ * 部门表 服务实现类 + *

+ * + * @author xhj + * @since 2021-03-23 + */ +@Service +public class DmDepartServiceImpl extends ServiceImpl implements DmDepartService { + + @Resource + private DmDepartMapper dmDepartMapper; + + private HashMap departBm = new HashMap(){{ + put("DY", "03"); + put("GJ", "02"); + put("TX", "01"); + put("QC", "06"); + }}; + + /** + * 无参查询所有部门 + * @author 张恩铭 + * @return + */ + @Override + public List getAll() { + return this.dmDepartMapper.selectList(null); + } + + /** + * 根据部门号条件查询部门及其子部门 + * @author 张恩铭 + * @param dmDepart + * @return + */ + @Override + public List getByCondition(DmDepart dmDepart) { + ConditionSelect conditionSelect = new ConditionSelect<>(dmDepart, new QueryWrapper<>(), dmDepartMapper); + return conditionSelect.getResultByLikeRight(); + } + + /** + * 部门号模糊查询其他条件指定查询 + * @param dmDepart + * @return + */ + @Override + public List getByConditionDefaultDepartCode(DmDepartIn dmDepart) { +// System.out.println(dmDepart); +// VoToEntity voToEntity = new VoToEntity<>(dmDepart, new DmDepart()); +// DmDepart eneity = voToEntity.getEneity(); +// boolean flag = false; +// if(dmDepart.getDepartCode().length() >= 2){ +// for (String key : departBm.keySet()) { +// if (dmDepart.getZxtbm().equals(key)){ +// flag = true; +// break; +// } +// } +// if (flag){ +// return getByCondition(eneity); +// }else{ +// eneity.setDepartCode(departBm.get(dmDepart.getZxtbm())); +// return getByCondition(eneity); +// } +// }else { +// eneity.setDepartCode(departBm.get(dmDepart.getZxtbm())); +// return getByCondition(eneity); +// } + QueryWrapper qw =new QueryWrapper<>(); + qw.eq("parent_code",dmDepart.getParentCode()); + if(StringUtils.isNotBlank(dmDepart.getDepartCode())){ + qw.eq("depart_code",dmDepart.getDepartCode()); + } + if(StringUtils.isNotBlank(dmDepart.getDepartCode())){ + qw.eq("depart_code",dmDepart.getDepartCode()); + } + if(StringUtils.isNotBlank(dmDepart.getManuType())){ + qw.eq("manu_type",dmDepart.getManuType()); + } + if(StringUtils.isNotBlank(dmDepart.getDepartType())){ + qw.eq("depart_type",dmDepart.getDepartType()); + } + if(StringUtils.isNotBlank(dmDepart.getDepartAttr())){ + qw.eq("depart_attr",dmDepart.getDepartAttr()); + } + qw.eq(StrUtil.isNotEmpty(dmDepart.getManuFlag()),"manu_flag",dmDepart.getManuFlag()); + return this.list(qw); + } + + /** + * 查询所有主部门 + * @author 张恩铭 + * @return + */ + @Override + public List getAllParent() { + List result = new ArrayList<>(); + List temp = this.getAll(); + for (DmDepart d : temp) { + if(d.getDepartCode().length() == 2){ + result.add(d); + } + } + return result; + } + + /** + * 查询所有子部门 + * @author 张恩铭 + * @return + */ + @Override + public List getAllChildren() { + List result = new ArrayList<>(); + List temp = this.getAll(); + for (DmDepart d : temp) { + if(d.getDepartCode().length() > 2){ + result.add(d); + } + } + return result; + } + + /** + * 添加部门 + * @author 张恩铭 + * @param dmDeparts + * @return + */ + @Override + public ResultBean addDepart(DmDepart[] dmDeparts) { + int i = 0; + for (DmDepart d : dmDeparts) { + if(d.getDepartCode() == null || d.getDepartCode().equals("")){ + continue; + }else{ + DmDepart temp = new DmDepart(); + temp.setDepartCode(d.getDepartCode()); + ConditionSelect conditionSelect = new ConditionSelect<>(temp, new QueryWrapper<>(), this.dmDepartMapper); + if(conditionSelect.getResult().size() > 0){ + continue; + }else{ + if(this.dmDepartMapper.insert(d) == 1) i++; + } + } + } + ResultBean resultBean = new ResultBean<>(); + resultBean.setData(i); + return resultBean; + } + + /** + * 修改部门 + * @author 张恩铭 + * @param dmDeparts + * @return + */ + @Override + public ResultBean updateDepart(DmDepart[] dmDeparts) { + int i = 0; + for (DmDepart d : dmDeparts) { + if(d.getDepartCode() == null || d.getDepartCode().equals("")){ + continue; + }else{ + DmDepart temp = new DmDepart(); + temp.setDepartCode(d.getDepartCode()); + ConditionSelect conditionSelect = new ConditionSelect<>(temp, new QueryWrapper<>(), this.dmDepartMapper); + List result = conditionSelect.getResult(); + if(result.size() > 0 && !result.get(0).getDepartCode().equals(d.getDepartCode())){ + continue; + }else{ + if(this.dmDepartMapper.updateById(d) == 1) i++; + } + } + } + ResultBean resultBean = new ResultBean<>(); + resultBean.setData(i); + return resultBean; + } + + /** + * 删除部门 + * @author 张恩铭 + * @param dmDeparts + * @return + */ + @Override + public ResultBean delDepart(DmDepart[] dmDeparts) { + int i = 0; + for (DmDepart d : dmDeparts) { + if(this.dmDepartMapper.deleteById(d) == 1) i++; + } + ResultBean resultBean = new ResultBean<>(); + resultBean.setData(i); + return resultBean; + } + @Override + @Transactional(rollbackFor = Exception.class) + public ResultBean> selectDepartQuery( List params) { + ResultBean> resultBean = new ResultBean>(); + resultBean.setData(dmDepartMapper.selectDepartQuery(params)); + return resultBean; + + } + + @Resource + RedisTemplate redisTemplate; + @Override + public void refreshRedis() { + List list=this.list(); + list.forEach(l->redisTemplate.opsForHash().put(RedisCacheKeyConfig.DEPT_KEY,l.getDepartCode(),l)); + } +} diff --git a/src/main/java/com/dsic/gj_erp/service/sy/impl/DmEmployeeServiceImpl.java b/src/main/java/com/dsic/gj_erp/service/sy/impl/DmEmployeeServiceImpl.java new file mode 100644 index 0000000..e5eaa70 --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/service/sy/impl/DmEmployeeServiceImpl.java @@ -0,0 +1,133 @@ +package com.dsic.gj_erp.service.sy.impl; + + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.dsic.gj_erp.bean.ResultBean; +import com.dsic.gj_erp.bean.sy.DmEmployee; +import com.dsic.gj_erp.mapper.DmEmployeeMapper; +import com.dsic.gj_erp.service.sy.DmEmployeeService; +import com.dsic.gj_erp.util.ConditionSelect; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import javax.annotation.Resource; +import java.util.List; + +/** + * @version V1.0.0 + * @Title: DmEmployeeServiceImpl + * @Package com.dsic.xzerp.service.sy.impl + * @Description: 管系制造员工service实现类 + * @author: 张恩铭 + * @date: 2021/4/2 9:05 + */ +@Service +public class DmEmployeeServiceImpl extends ServiceImpl implements DmEmployeeService { + + @Resource + private DmEmployeeMapper dmEmployeeMapper; + + private ResultBean resultBean; + + /** + * 查询所有 + * @return + */ + @Override + public List getAll() { + return this.dmEmployeeMapper.selectList(null); + } + + /** + * 非like不定条件查询 + * @param dmEmployee + * @return + */ + @Override + public List getByCondition(DmEmployee dmEmployee) { + ConditionSelect conditionSelect = new ConditionSelect<>(dmEmployee, new QueryWrapper<>(), this.dmEmployeeMapper); + return conditionSelect.getResult(); + } + + /** + * 特定like不定条件查询 + * @param dmEmployee + * @return + */ + @Override + public List getByConditionDefaultDepartCode(DmEmployee dmEmployee) { + String[] strings = {"departCode"}; + ConditionSelect conditionSelect = new ConditionSelect<>(dmEmployee, new QueryWrapper<>(), this.dmEmployeeMapper, strings); + return conditionSelect.getResultBySomeLikeRight(); + } + + /** + * 添加员工 + * @param dmEmployees + * @return + */ + @Override + @Transactional(rollbackFor = Exception.class) + public ResultBean addEmployee(DmEmployee[] dmEmployees) { + int i = 0; + for (DmEmployee d : dmEmployees) { + + this.dmEmployeeMapper.insert(d) ; + } + resultBean = new ResultBean(); + + return resultBean; + } + + /** + * 修改员工 + * @param dmEmployees + * @return + */ + @Override + public ResultBean updateEmployee(DmEmployee[] dmEmployees) { + int i = 0; + for (DmEmployee d : dmEmployees) { + if(this.dmEmployeeMapper.updateById(d) == 1) i++; +// if(d.getDepartCode() == null){ +// continue; +// }else{ +// if(d.getDepartCode().length() == 2){ +// if(d.getEmployeeNo().substring(0, 2).equals(d.getDepartCode())){ +// if(this.dmEmployeeMapper.updateById(d) == 1) i++; +// }else{ +// continue; +// } +// }else if(d.getDepartCode().length() == 4){ +// if(d.getEmployeeNo().substring(0, 4).equals(d.getDepartCode())){ +// if(this.dmEmployeeMapper.updateById(d) == 1) i++; +// }else{ +// continue; +// } +// }else{ +// continue; +// } +// } + } + resultBean = new ResultBean(); + resultBean.setData(i); + return resultBean; + } + + /** + * 删除员工 + * @param dmEmployees + * @return + */ + @Override + public ResultBean delEmployee(DmEmployee[] dmEmployees) { + int i = 0; + for (DmEmployee d : dmEmployees) { + if(this.dmEmployeeMapper.deleteById(d) == 1) i++; + } + resultBean = new ResultBean(); + resultBean.setData(i); + return resultBean; + } +} diff --git a/src/main/java/com/dsic/gj_erp/service/sy/impl/SyDictItemServiceImpl.java b/src/main/java/com/dsic/gj_erp/service/sy/impl/SyDictItemServiceImpl.java new file mode 100644 index 0000000..93615a4 --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/service/sy/impl/SyDictItemServiceImpl.java @@ -0,0 +1,111 @@ +package com.dsic.gj_erp.service.sy.impl; + + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.dsic.gj_erp.bean.sy.SyDictItem; +import com.dsic.gj_erp.mapper.SyDictItemMapper; +import com.dsic.gj_erp.service.sy.SyDictItemService; +import com.dsic.gj_erp.util.CacheConstant; +import com.dsic.gj_erp.util.ConditionSelect; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.cache.annotation.Cacheable; + +import java.util.List; +import java.util.Map; + +/** + *

+ * 服务实现类 + *

+ * + * @author xhj + * @since 2021-03-16 + */ +@Service +public class SyDictItemServiceImpl extends ServiceImpl implements SyDictItemService { + + @Autowired + SyDictItemMapper syDictItemMapper; + + + /** + * 根据表编码转换 + * @param table + * @param text + * @param code + * @param key + * @return + */ + @Cacheable(value = CacheConstant.SYS_DICT_TABLE_CACHE,unless="#result == null") + @Override + public String translateDictFromTable(String table, String text, String code, String key) { + log.debug("无缓存dictTable的时候调用这里!1"); + System.out.println("无缓存dictCache的时候调用这里!1"); + return syDictItemMapper.queryTableDictTextByKey(table, text, code, key); + } + + /** + * 编码转换 + * @param code + * @param key + * @return + */ + @Cacheable(value = CacheConstant.SYS_DICT_CACHE,key = "#code+':'+#key", unless="#result == null") + @Override + public String translateDict(String code, String key) { + log.debug("无缓存dictTable的时候调用这里!2"); + System.out.println("无缓存dictCache的时候调用这里!2"); + return syDictItemMapper.queryDictTextByKey(code, key); + + } + + /** + * 多条件编码转换 + * @param table + * @param text + * @param code + * @param key + * @param code1 + * @param key1 + * @return + */ + @Cacheable(value = CacheConstant.SYS_DICT_TABLE_BY_KEYS_CACHE) + @Override + public String translateDictFromTableByKey(String table, String text, String code, String key,String code1, String key1) { + log.debug("无缓存dictTable的时候调用这里!3"); + System.out.println("无缓存dictCache的时候调用这里!3"); + return syDictItemMapper.queryTableDictTextByKeySys(table, text, code, key,code1, key1); + + } + + /** + * 通过编码获取同编码的值 + * @param syDictItem + * @return + */ + @Override + public List getByCode(SyDictItem syDictItem) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + ConditionSelect conditionSelect = new ConditionSelect<>(syDictItem, queryWrapper, syDictItemMapper); + return conditionSelect.getResult(); + } + + + @Override + public List> getCodeByString(String code) { + QueryWrapper qw = new QueryWrapper<>(); + qw.select("item_value as label","item_code as value"); + qw.eq("dict_code",code); + +// this.list(qw); + List> maps = syDictItemMapper.selectMaps(qw); + return maps; + } + + @Override + public Map getCodeToMap(String dictCode) { + return baseMapper.getCodeToMap(dictCode); + } +} diff --git a/src/main/java/com/dsic/gj_erp/service/sy/impl/SyDictServiceImpl.java b/src/main/java/com/dsic/gj_erp/service/sy/impl/SyDictServiceImpl.java new file mode 100644 index 0000000..499f096 --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/service/sy/impl/SyDictServiceImpl.java @@ -0,0 +1,111 @@ +package com.dsic.gj_erp.service.sy.impl; + + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.dsic.gj_erp.bean.sy.SyDict; +import com.dsic.gj_erp.bean.tree.ProjectTreeVo; +import com.dsic.gj_erp.mapper.SyDictMapper; +import com.dsic.gj_erp.service.sy.SyDictService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.apache.commons.lang3.StringUtils; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +/** + *

+ * 服务实现类 + *

+ * + * @author xhj + * @since 2021-03-15 + */ +@Service +public class SyDictServiceImpl extends ServiceImpl implements SyDictService { + + + @Override + public List getTreeList(Map params) { + QueryWrapper queryWrapper = new QueryWrapper(); + if (!StringUtils.isBlank((String)params.get("name"))){ + queryWrapper.and(wp->wp.like("dict_code",params.get("name")).or().like("dict_name",params.get("name"))); + } + List list = this.list(queryWrapper); + //父级 + List vo= new ArrayList<>(); + ProjectTreeVo projectTreeVo =new ProjectTreeVo(); + //子级 + List projectTreeVoList = new ArrayList<>(); + + list.stream().forEach(e->{ + ProjectTreeVo tree=new ProjectTreeVo(); + tree.setId(e.getDictCode()); + tree.setLabel(e.getDictName()); + tree.setParentBm("@@@"); + projectTreeVoList.add(tree); + }); + projectTreeVo.setId("@@@").setLabel("编码类别").setChildren(projectTreeVoList); + vo.add(projectTreeVo); + return vo; + + + } + + @Override + public List getTxTreeList(Map params) { + QueryWrapper queryWrapper = new QueryWrapper(); + + queryWrapper.eq(StringUtils.isNotBlank((String)params.get("code")),"system_code",params.get("code")); + if(StringUtils.isNotBlank((String)params.get("name"))){ + queryWrapper.and(wp->wp.like("dict_code",params.get("name")).or().like("dict_name",params.get("name"))); + } + List list = this.list(queryWrapper); + //父级 + List vo= new ArrayList<>(); + ProjectTreeVo projectTreeVo =new ProjectTreeVo(); + //子级 + List projectTreeVoList = new ArrayList<>(); + + list.stream().forEach(e->{ + ProjectTreeVo tree=new ProjectTreeVo(); + tree.setId(e.getDictCode()); + tree.setLabel(e.getDictName()+"["+e.getDictCode()+"]"); + tree.setParentBm("@@@"); + projectTreeVoList.add(tree); + }); + projectTreeVo.setId("@@@").setLabel("编码类别").setChildren(projectTreeVoList); + vo.add(projectTreeVo); + return vo; + } + + @Override + public List getTreeListForQKFL(Map params) { + QueryWrapper queryWrapper = new QueryWrapper(); + + queryWrapper.eq(StringUtils.isNotBlank((String)params.get("code")),"system_code",params.get("code")) + .in("dict_name","集团切块","舾装切块"); + + if(StringUtils.isNotBlank((String)params.get("name"))){ + queryWrapper.and(wp->wp.like("dict_code",params.get("name")).or().like("dict_name",params.get("name"))); + } + List list = this.list(queryWrapper); + //父级 + List vo= new ArrayList<>(); + ProjectTreeVo projectTreeVo =new ProjectTreeVo(); + //子级 + List projectTreeVoList = new ArrayList<>(); + + list.stream().forEach(e->{ + ProjectTreeVo tree=new ProjectTreeVo(); + tree.setId(e.getDictCode()); + tree.setLabel(e.getDictName()); + tree.setParentBm("@@@"); + projectTreeVoList.add(tree); + }); + projectTreeVo.setId("@@@").setLabel("编码类别").setChildren(projectTreeVoList); + vo.add(projectTreeVo); + return vo; + } +} diff --git a/src/main/java/com/dsic/gj_erp/service/sy/impl/SyLogServiceImpl.java b/src/main/java/com/dsic/gj_erp/service/sy/impl/SyLogServiceImpl.java new file mode 100644 index 0000000..c45374f --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/service/sy/impl/SyLogServiceImpl.java @@ -0,0 +1,21 @@ +package com.dsic.gj_erp.service.sy.impl; + + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.dsic.gj_erp.bean.sy.SyLog; +import com.dsic.gj_erp.mapper.SyLogMapper; +import com.dsic.gj_erp.service.sy.SyLogService; +import org.springframework.stereotype.Service; + +/** + *

+ * 系统日志表 服务实现类 + *

+ * + * @author xhj + * @since 2021-04-08 + */ +@Service +public class SyLogServiceImpl extends ServiceImpl implements SyLogService { + +} diff --git a/src/main/java/com/dsic/gj_erp/util/CacheConstant.java b/src/main/java/com/dsic/gj_erp/util/CacheConstant.java new file mode 100644 index 0000000..403ab0e --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/util/CacheConstant.java @@ -0,0 +1,22 @@ +package com.dsic.gj_erp.util; + +/** + * @author: huangxutao + * @date: 2019-06-14 + * @description: 缓存常量 + */ +public interface CacheConstant { + + /** + * 字典信息缓存 + */ + public static final String SYS_DICT_CACHE = "sys:cache:dict"; + /** + * 表字典信息缓存 + */ + public static final String SYS_DICT_TABLE_CACHE = "sys:cache:dictTable"; + + public static final String SYS_DICT_TABLE_BY_KEYS_CACHE = SYS_DICT_TABLE_CACHE + "ByKeys"; + + +} diff --git a/src/main/java/com/dsic/gj_erp/util/ConditionSelect.java b/src/main/java/com/dsic/gj_erp/util/ConditionSelect.java new file mode 100644 index 0000000..7051d6e --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/util/ConditionSelect.java @@ -0,0 +1,151 @@ +package com.dsic.gj_erp.util; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +import java.io.Serializable; +import java.lang.reflect.Field; +import java.util.List; + +/** + * @version V1.0.0 + * @Title: ConditionSelect + * @Package com.dsic.xzerp.bean + * @Description: 条件查询 + * @author: 张恩铭 + * @date: 2021/3/16 11:28 + */ +public class ConditionSelect implements Serializable { + + private T entity; + private QueryWrapper queryWrapper; + private BaseMapper baseMapper; + private String[] likeAttrs; + + public ConditionSelect(T data, QueryWrapper queryWrapper, BaseMapper baseMapper){ + this.entity = data; + this.queryWrapper = queryWrapper; + this.baseMapper = baseMapper; + } + + public ConditionSelect(T data, QueryWrapper queryWrapper, BaseMapper baseMapper, String[] likeAttrs){ + this.entity = data; + this.queryWrapper = queryWrapper; + this.baseMapper = baseMapper; + this.likeAttrs = likeAttrs; + } + + /** + * 无like不定条件查询 + * @return java.util.List + */ + public List getResult(){ + try{ + Field[] fields = entity.getClass().getDeclaredFields(); + + for (Field f:fields) { + if (f.getAnnotation(TableField.class)!=null&&!f.getAnnotation(TableField.class).exist()){ + continue; + } + f.setAccessible(true); + if (!f.getName().equals("serialVersionUID")){ + if(f.get(entity) != null && f.get(entity) != "" && f.get(entity).toString().toLowerCase() != "null"){ + char[] chars = f.getName().toCharArray(); + String temp_s = ""; + for (int i = 0; i < chars.length; i++){ + if(chars[i] >= 'A' && chars[i] <= 'Z'){ + String temp_ss = String.valueOf(chars[i]); + temp_s = temp_s + "_" + temp_ss.toLowerCase(); + }else{ + temp_s += chars[i]; + } + } + queryWrapper.eq(temp_s, f.get(entity)); + } + } + } + }catch (Exception e){ + e.printStackTrace(); + } + List list = this.baseMapper.selectList(this.queryWrapper); + return list; + } + + /** + * 只有like不定条件查询 + * @return java.util.List + */ + public List getResultByLikeRight(){ + try{ + Field[] fields = entity.getClass().getDeclaredFields(); + for (Field f:fields) { + f.setAccessible(true); + if (!f.getName().equals("serialVersionUID")){ + if(f.get(entity) != null && f.get(entity) != "" && f.get(entity).toString().toLowerCase() != "null"){ + char[] chars = f.getName().toCharArray(); + String temp_s = ""; + for (int i = 0; i < chars.length; i++){ + if(chars[i] >= 'A' && chars[i] <= 'Z'){ + String temp_ss = String.valueOf(chars[i]); + temp_s = temp_s + "_" + temp_ss.toLowerCase(); + }else{ + temp_s += chars[i]; + } + } + queryWrapper.likeRight(temp_s, f.get(entity)); + } + } + } + }catch (Exception e){ + e.printStackTrace(); + } + List list = this.baseMapper.selectList(this.queryWrapper); + return list; + } + + /** + * 特定like不定条件查询 + * @return java.util.List + */ + public List getResultBySomeLikeRight(){ + boolean flag = false; + try { + Field[] fields = entity.getClass().getDeclaredFields(); + for (Field f:fields) { + f.setAccessible(true); + if (!f.getName().equals("serialVersionUID")){ + if(f.get(entity) != null && f.get(entity) != "" && f.get(entity).toString().toLowerCase() != "null"){ + for (String like_string: likeAttrs) { + if(like_string.equals(f.getName())){ + flag = true; + } + break; + } + char[] chars = f.getName().toCharArray(); + String temp_s = ""; + for (int i = 0; i < chars.length; i++){ + if(chars[i] >= 'A' && chars[i] <= 'Z'){ + String temp_ss = String.valueOf(chars[i]); + temp_s = temp_s + "_" + temp_ss.toLowerCase(); + }else{ + temp_s += chars[i]; + } + } + if(!flag){ + queryWrapper.eq(temp_s, f.get(entity)); + }else{ + queryWrapper.likeRight(temp_s, f.get(entity)); + } + } + } + flag = false; + } + }catch (Exception e){ + e.printStackTrace(); + } + List list = this.baseMapper.selectList(this.queryWrapper); + return list; + } + +} diff --git a/src/main/java/com/dsic/gj_erp/util/IPUtils.java b/src/main/java/com/dsic/gj_erp/util/IPUtils.java new file mode 100644 index 0000000..a34f465 --- /dev/null +++ b/src/main/java/com/dsic/gj_erp/util/IPUtils.java @@ -0,0 +1,57 @@ +package com.dsic.gj_erp.util; + +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import javax.servlet.http.HttpServletRequest; + +/** + * IP地址 + * + * @Author xhj + * @Date 2021年04月18日 + */ +public class IPUtils { + private static Logger logger = LoggerFactory.getLogger(IPUtils.class); + + /** + * 获取IP地址 + * + * 使用Nginx等反向代理软件, 则不能通过request.getRemoteAddr()获取IP地址 + * 如果使用了多级反向代理的话,X-Forwarded-For的值并不止一个,而是一串IP地址,X-Forwarded-For中第一个非unknown的有效IP字符串,则为真实IP地址 + */ + public static String getIpAddr(HttpServletRequest request) { + String ip = null; + try { + ip = request.getHeader("x-forwarded-for"); + if (StringUtils.isBlank(ip) || "unknown".equalsIgnoreCase(ip)) { + ip = request.getHeader("Proxy-Client-IP"); + } + if (StringUtils.isBlank(ip) || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) { + ip = request.getHeader("WL-Proxy-Client-IP"); + } + if (StringUtils.isBlank(ip) || "unknown".equalsIgnoreCase(ip)) { + ip = request.getHeader("HTTP_CLIENT_IP"); + } + if (StringUtils.isBlank(ip) || "unknown".equalsIgnoreCase(ip)) { + ip = request.getHeader("HTTP_X_FORWARDED_FOR"); + } + if (StringUtils.isBlank(ip) || "unknown".equalsIgnoreCase(ip)) { + ip = request.getRemoteAddr(); + } + } catch (Exception e) { + logger.error("IPUtils ERROR ", e); + } + +// //使用代理,则获取第一个IP地址 +// if(StringUtils.isEmpty(ip) && ip.length() > 15) { +// if(ip.indexOf(",") > 0) { +// ip = ip.substring(0, ip.indexOf(",")); +// } +// } + + return ip; + } + +} diff --git a/src/main/resources/mappers/jcsj/EmSbcnpMapper.xml b/src/main/resources/mappers/jcsj/EmSbcnpMapper.xml index 67e5551..55c9e29 100644 --- a/src/main/resources/mappers/jcsj/EmSbcnpMapper.xml +++ b/src/main/resources/mappers/jcsj/EmSbcnpMapper.xml @@ -3,12 +3,10 @@ - - - - - - - + + INSERT into em_sbcnp(id) VALUES( + REPLACE(CAST(CAST(NEWID()AS BINARY(10)) + CAST(GETDATE() AS BINARY(6)) AS UNIQUEIDENTIFIER),'-','') + ) + diff --git a/src/main/resources/mappers/jhgk/DmSygdMxMapper.xml b/src/main/resources/mappers/jhgk/DmSygdMxMapper.xml index 5f967f4..2797626 100644 --- a/src/main/resources/mappers/jhgk/DmSygdMxMapper.xml +++ b/src/main/resources/mappers/jhgk/DmSygdMxMapper.xml @@ -25,6 +25,7 @@ and MS_DDMXP.WPKD=#{rkxh} GROUP BY MS_DDMXP.WPHD,MS_DDMXP.WPCD,MS_DDMXP.WPKD,MS_DDMXP.RKXH + + select ${text} as "text" from ${table} where ${code}= #{key} + + + + + + + + diff --git a/src/main/resources/mappers/sy/SyDictMapper.xml b/src/main/resources/mappers/sy/SyDictMapper.xml new file mode 100644 index 0000000..9cdfa9e --- /dev/null +++ b/src/main/resources/mappers/sy/SyDictMapper.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + dict_code, dict_name, system_code, remark + + + diff --git a/src/main/resources/mappers/sy/SyLogMapper.xml b/src/main/resources/mappers/sy/SyLogMapper.xml new file mode 100644 index 0000000..a28ff38 --- /dev/null +++ b/src/main/resources/mappers/sy/SyLogMapper.xml @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + id, user_code, user_name, system_code, system_name, content, method, computer_name, ip, create_time + + + diff --git a/src/main/resources/mappers/sy/SyuserMapper.xml b/src/main/resources/mappers/sy/SyuserMapper.xml index 7f729a3..6e480f4 100644 --- a/src/main/resources/mappers/sy/SyuserMapper.xml +++ b/src/main/resources/mappers/sy/SyuserMapper.xml @@ -30,4 +30,140 @@ ORDER BY id + + + + + INSERT INTO sy_role (role_code,role_name,remark) VALUES (#{role_code},#{role_name},#{remark}) + + + + DELETE FROM sy_role WHERE role_code =#{role_code} + + + + + UPDATE sy_role SET role_code =#{role_code},role_name =#{role_name},remark =#{remark} WHERE role_code =#{role_code} + + + + + + + + + + + INSERT INTO sy_user_role (user_code,role_code) VALUES (#{user_code},#{role_code}) + + + + DELETE FROM sy_user_role WHERE user_code =#{user_code} AND role_code =#{role_code} + + + + + + + + + + + + + + + + + + + + + + INSERT INTO sy_institution_role (institution_code,role_code) VALUES (#{institution_code},#{role_code}) + + + + DELETE FROM sy_institution_role WHERE institution_code =#{institution_code} AND role_code =#{role_code} + + + + + + + INSERT INTO sy_sytem_role (system_code,role_code) VALUES (#{system_code},#{role_code}) + + + + DELETE FROM sy_sytem_role WHERE system_code =#{system_code} AND role_code =#{role_code} + + + + + + + INSERT INTO sy_menu_role (menu_id,role_code) VALUES (#{menu_id},#{role_code}) + + + + DELETE FROM sy_menu_role WHERE menu_id =#{menu_id} AND role_code =#{role_code} + + + + INSERT INTO dm_fingerprint (uuid,fingerprint,user_code) VALUES (#{uuid},#{fingerprint},#{user_code}) + + + + + + UPDATE sy_user SET fingerprint = #{fingerprint} WHERE fingerprint =#{uuid} + + + + + + UPDATE sy_user SET fingerprint = #{fingerprint} WHERE user_code =#{userCode} + + + UPDATE sy_user SET fingerprint1 = #{fingerprint} WHERE user_code =#{userCode} + + + UPDATE sy_user SET fingerprint2 = #{fingerprint} WHERE user_code =#{userCode} +