liupopo 2 years ago
parent
commit
88cd0f6676
  1. 20
      yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/wechat/WechatRest.java
  2. 6
      yxt_supervise/supervise-portal/supervise-portal-api/pom.xml
  3. 13
      yxt_supervise/supervise-portal/supervise-portal-api/src/main/java/com/yxt/supervise/portal/api/gdsalesreport/GoodsSalesReportExcelVo.java
  4. 26
      yxt_supervise/supervise-portal/supervise-portal-api/src/main/java/com/yxt/supervise/portal/api/gdsalesreport/StoreSalesReportExcelVo.java
  5. 14
      yxt_supervise/supervise-portal/supervise-portal-api/src/main/java/com/yxt/supervise/portal/api/gdsalesreport/TotalSales.java
  6. 20
      yxt_supervise/supervise-portal/supervise-portal-api/src/main/java/com/yxt/supervise/portal/api/templatestaffconfig/TemplateStaffConfig.java
  7. 20
      yxt_supervise/supervise-portal/supervise-portal-api/src/main/java/com/yxt/supervise/portal/api/templatestaffconfig/TemplateStaffConfigDetailsVo.java
  8. 20
      yxt_supervise/supervise-portal/supervise-portal-api/src/main/java/com/yxt/supervise/portal/api/templatestaffconfig/TemplateStaffConfigDto.java
  9. 17
      yxt_supervise/supervise-portal/supervise-portal-api/src/main/java/com/yxt/supervise/portal/api/templatestaffconfig/TemplateStaffConfigFeign.java
  10. 11
      yxt_supervise/supervise-portal/supervise-portal-api/src/main/java/com/yxt/supervise/portal/api/templatestaffconfig/TemplateStaffConfigFeignFallback.java
  11. 20
      yxt_supervise/supervise-portal/supervise-portal-api/src/main/java/com/yxt/supervise/portal/api/templatestaffconfig/TemplateStaffConfigQuery.java
  12. 20
      yxt_supervise/supervise-portal/supervise-portal-api/src/main/java/com/yxt/supervise/portal/api/templatestaffconfig/TemplateStaffConfigVo.java
  13. 31
      yxt_supervise/supervise-portal/supervise-portal-api/src/main/java/com/yxt/supervise/portal/api/wechattemplate/WechatTemplate.java
  14. 27
      yxt_supervise/supervise-portal/supervise-portal-api/src/main/java/com/yxt/supervise/portal/api/wechattemplate/WechatTemplateDetailVo.java
  15. 35
      yxt_supervise/supervise-portal/supervise-portal-api/src/main/java/com/yxt/supervise/portal/api/wechattemplate/WechatTemplateDto.java
  16. 18
      yxt_supervise/supervise-portal/supervise-portal-api/src/main/java/com/yxt/supervise/portal/api/wechattemplate/WechatTemplateFeign.java
  17. 11
      yxt_supervise/supervise-portal/supervise-portal-api/src/main/java/com/yxt/supervise/portal/api/wechattemplate/WechatTemplateFeignFallback.java
  18. 27
      yxt_supervise/supervise-portal/supervise-portal-api/src/main/java/com/yxt/supervise/portal/api/wechattemplate/WechatTemplateQuery.java
  19. 32
      yxt_supervise/supervise-portal/supervise-portal-api/src/main/java/com/yxt/supervise/portal/api/wechattemplate/WechatTemplateVo.java
  20. 13
      yxt_supervise/supervise-portal/supervise-portal-api/src/main/java/com/yxt/supervise/portal/api/wechattemplate/content.java
  21. 96
      yxt_supervise/supervise-portal/supervise-portal-biz/pom.xml
  22. 15
      yxt_supervise/supervise-portal/supervise-portal-biz/src/main/java/com/yxt/supervise/portal/biz/gdsalesreport/GdSalesReportMapper.java
  23. 47
      yxt_supervise/supervise-portal/supervise-portal-biz/src/main/java/com/yxt/supervise/portal/biz/gdsalesreport/GdSalesReportMapper.xml
  24. 220
      yxt_supervise/supervise-portal/supervise-portal-biz/src/main/java/com/yxt/supervise/portal/biz/gdsalesreport/GdSalesReportRest.java
  25. 91
      yxt_supervise/supervise-portal/supervise-portal-biz/src/main/java/com/yxt/supervise/portal/biz/gdsalesreport/GdSalesReportService.java
  26. 20
      yxt_supervise/supervise-portal/supervise-portal-biz/src/main/java/com/yxt/supervise/portal/biz/templatestaffconfig/TemplateStaffConfigMapper.java
  27. 13
      yxt_supervise/supervise-portal/supervise-portal-biz/src/main/java/com/yxt/supervise/portal/biz/templatestaffconfig/TemplateStaffConfigMapper.xml
  28. 16
      yxt_supervise/supervise-portal/supervise-portal-biz/src/main/java/com/yxt/supervise/portal/biz/templatestaffconfig/TemplateStaffConfigRest.java
  29. 13
      yxt_supervise/supervise-portal/supervise-portal-biz/src/main/java/com/yxt/supervise/portal/biz/templatestaffconfig/TemplateStaffConfigService.java
  30. 20
      yxt_supervise/supervise-portal/supervise-portal-biz/src/main/java/com/yxt/supervise/portal/biz/wechattemplate/WechatTemplateMapper.java
  31. 13
      yxt_supervise/supervise-portal/supervise-portal-biz/src/main/java/com/yxt/supervise/portal/biz/wechattemplate/WechatTemplateMapper.xml
  32. 61
      yxt_supervise/supervise-portal/supervise-portal-biz/src/main/java/com/yxt/supervise/portal/biz/wechattemplate/WechatTemplateRest.java
  33. 105
      yxt_supervise/supervise-portal/supervise-portal-biz/src/main/java/com/yxt/supervise/portal/biz/wechattemplate/WechatTemplateService.java
  34. 2
      yxt_supervise/supervise-system/supervise-system-api/src/main/java/com/yxt/supervise/system/sysstaffinfo/SysStaffinfo.java
  35. 29
      yxt_supervise/supervise-system/supervise-system-api/src/main/java/com/yxt/supervise/system/sysstaffinfo/SysStaffinfoDto.java
  36. 19
      yxt_supervise/supervise-system/supervise-system-api/src/main/java/com/yxt/supervise/system/sysstaffinfo/SysStaffinfoFeign.java
  37. 27
      yxt_supervise/supervise-system/supervise-system-api/src/main/java/com/yxt/supervise/system/sysstaffinfo/SysStaffinfoFeignFallback.java
  38. 8
      yxt_supervise/supervise-system/supervise-system-api/src/main/java/com/yxt/supervise/system/sysstaffinfo/SysStaffinfoQuery.java
  39. 22
      yxt_supervise/supervise-system/supervise-system-api/src/main/java/com/yxt/supervise/system/sysstaffinfo/SysStaffinfoVo.java
  40. 8
      yxt_supervise/supervise-system/supervise-system-api/src/main/java/com/yxt/supervise/system/sysuser/SysUserDto.java
  41. 12
      yxt_supervise/supervise-system/supervise-system-biz/src/main/java/com/yxt/supervise/system/sysstaffinfo/SysStaffinfoMapper.java
  42. 181
      yxt_supervise/supervise-system/supervise-system-biz/src/main/java/com/yxt/supervise/system/sysstaffinfo/SysStaffinfoMapper.xml
  43. 49
      yxt_supervise/supervise-system/supervise-system-biz/src/main/java/com/yxt/supervise/system/sysstaffinfo/SysStaffinfoRest.java
  44. 571
      yxt_supervise/supervise-system/supervise-system-biz/src/main/java/com/yxt/supervise/system/sysstaffinfo/SysStaffinfoService.java
  45. 1
      yxt_supervise/supervise-system/supervise-system-biz/src/main/java/com/yxt/supervise/system/sysuser/SysUserMapper.java
  46. 128
      yxt_supervise/supervise-system/supervise-system-biz/src/main/java/com/yxt/supervise/system/sysuser/SysUserMapper.xml
  47. 21
      yxt_supervise/supervise-system/supervise-system-biz/src/main/java/com/yxt/supervise/system/sysuser/SysUserRest.java

20
yxt_supervise/supervise-customer/supervise-customer-biz/src/main/java/com/yxt/supervise/customer/biz/wechat/WechatRest.java

@ -44,20 +44,20 @@ public class WechatRest {
return token;
}
@GetMapping(value = "authGet",produces = "text/plain;charset=utf-8")
@GetMapping(value = "authGet",produces = "text/plain;charset=utf-8")
public String authGet(@RequestParam(name = "signature", required = false) String signature,
@RequestParam(name = "timestamp", required = false) String timestamp,
@RequestParam(name = "nonce", required = false) String nonce,
@RequestParam(name = "echostr", required = false) String echostr) {
@RequestParam(name = "timestamp", required = false) String timestamp,
@RequestParam(name = "nonce", required = false) String nonce,
@RequestParam(name = "echostr", required = false) String echostr) {
if (StringUtils.isAnyBlank(signature, timestamp, nonce, echostr)) {
throw new IllegalArgumentException("请求参数非法,请核实!");
if (StringUtils.isAnyBlank(signature, timestamp, nonce, echostr)) {
throw new IllegalArgumentException("请求参数非法,请核实!");
}
if (WeixinCheckoutUtil.checkSignature( signature, timestamp, nonce)) {
return echostr;
if (WeixinCheckoutUtil.checkSignature( signature, timestamp, nonce)) {
return echostr;
}
return "非法请求";
}
return "非法请求";
}
@PostMapping("/sendMessage")
public void sendMessage(@RequestBody WeChatTemplateMsg data) throws Exception {

6
yxt_supervise/supervise-portal/supervise-portal-api/pom.xml

@ -43,6 +43,12 @@
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-annotation</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>easyexcel-core</artifactId>
<version>3.2.1</version>
<scope>compile</scope>
</dependency>
</dependencies>
<distributionManagement>

13
yxt_supervise/supervise-portal/supervise-portal-api/src/main/java/com/yxt/supervise/portal/api/gdsalesreport/GoodsSalesReportExcelVo.java

@ -0,0 +1,13 @@
package com.yxt.supervise.portal.api.gdsalesreport;
import com.yxt.common.core.vo.Vo;
import lombok.Data;
/**
* @author wangpengfei
* @date 2023/4/17 9:07
*/
@Data
public class GoodsSalesReportExcelVo implements Vo {
}

26
yxt_supervise/supervise-portal/supervise-portal-api/src/main/java/com/yxt/supervise/portal/api/gdsalesreport/StoreSalesReportExcelVo.java

@ -0,0 +1,26 @@
package com.yxt.supervise.portal.api.gdsalesreport;
import com.alibaba.excel.annotation.ExcelProperty;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author wangpengfei
* @date 2023/4/17 9:03
*/
@Data
public class StoreSalesReportExcelVo implements Vo {
// private String id;
@ExcelProperty(value = "渠道")
@ApiModelProperty("渠道")
private String storeName;
@ExcelProperty(value = "销售额")
@ApiModelProperty("销售额")
private String salesVolume;
//@ApiModelProperty("渠道数量")
//private String storeNum;
//private String sum;
//private String date;
}

14
yxt_supervise/supervise-portal/supervise-portal-api/src/main/java/com/yxt/supervise/portal/api/gdsalesreport/TotalSales.java

@ -0,0 +1,14 @@
package com.yxt.supervise.portal.api.gdsalesreport;
import lombok.Data;
/**
* @author wangpengfei
* @date 2023/4/17 18:03
*/
@Data
public class TotalSales {
private String sum;
private String date;
private String storeNum;
}

20
yxt_supervise/supervise-portal/supervise-portal-api/src/main/java/com/yxt/supervise/portal/api/templatestaffconfig/TemplateStaffConfig.java

@ -0,0 +1,20 @@
package com.yxt.supervise.portal.api.templatestaffconfig;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yxt.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import lombok.Data;
/**
* @author wangpengfei
* @date 2023/4/10 14:34
*/
@Data
@ApiModel(value = "模板 员工关联表", description = "模板 员工关联表")
@TableName("template_staff_config")
public class TemplateStaffConfig extends BaseEntity {
//模板sid
private String templateSid;
//员工sid
private String staffSid;
}

20
yxt_supervise/supervise-portal/supervise-portal-api/src/main/java/com/yxt/supervise/portal/api/templatestaffconfig/TemplateStaffConfigDetailsVo.java

@ -0,0 +1,20 @@
package com.yxt.supervise.portal.api.templatestaffconfig;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import lombok.Data;
/**
* @author wangpengfei
* @date 2023/4/10 14:35
*/
@Data
@ApiModel(value = "模板 员工关联表 视图数据详情", description = "模板 员工关联表 视图数据详情")
public class TemplateStaffConfigDetailsVo implements Vo {
private String id;
//模板sid
private String templateSid;
//员工sid
private String staffSid;
private String sid;
}

20
yxt_supervise/supervise-portal/supervise-portal-api/src/main/java/com/yxt/supervise/portal/api/templatestaffconfig/TemplateStaffConfigDto.java

@ -0,0 +1,20 @@
package com.yxt.supervise.portal.api.templatestaffconfig;
import com.yxt.common.core.dto.Dto;
import io.swagger.annotations.ApiModel;
import lombok.Data;
/**
* @author wangpengfei
* @date 2023/4/10 14:35
*/
@Data
@ApiModel(value = "模板 员工关联表 数据传输对象", description = "模板 员工关联表 数据传输对象")
public class TemplateStaffConfigDto implements Dto {
private String id;
//模板sid
private String templateSid;
//员工sid
private String staffSid;
private String sid;
}

17
yxt_supervise/supervise-portal/supervise-portal-api/src/main/java/com/yxt/supervise/portal/api/templatestaffconfig/TemplateStaffConfigFeign.java

@ -0,0 +1,17 @@
package com.yxt.supervise.portal.api.templatestaffconfig;
import io.swagger.annotations.Api;
import org.springframework.cloud.openfeign.FeignClient;
/**
* @author wangpengfei
* @date 2023/4/10 14:35
*/
@Api(tags = "模板 员工关联表")
@FeignClient(
contextId = "yxt-supervise-TemplateStaffConfig",
name = "yxt-supervise",
path = "v1/templatestaffconfig",
fallback = TemplateStaffConfigFeignFallback.class)
public interface TemplateStaffConfigFeign {
}

11
yxt_supervise/supervise-portal/supervise-portal-api/src/main/java/com/yxt/supervise/portal/api/templatestaffconfig/TemplateStaffConfigFeignFallback.java

@ -0,0 +1,11 @@
package com.yxt.supervise.portal.api.templatestaffconfig;
import org.springframework.stereotype.Component;
/**
* @author wangpengfei
* @date 2023/4/10 14:35
*/
@Component
public class TemplateStaffConfigFeignFallback implements TemplateStaffConfigFeign{
}

20
yxt_supervise/supervise-portal/supervise-portal-api/src/main/java/com/yxt/supervise/portal/api/templatestaffconfig/TemplateStaffConfigQuery.java

@ -0,0 +1,20 @@
package com.yxt.supervise.portal.api.templatestaffconfig;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import lombok.Data;
/**
* @author wangpengfei
* @date 2023/4/10 14:35
*/
@Data
@ApiModel(value = "模板 员工关联表 查询条件", description = "模板 员工关联表 查询条件")
public class TemplateStaffConfigQuery implements Vo {
private String id;
//模板sid
private String templateSid;
//员工sid
private String staffSid;
private String sid;
}

20
yxt_supervise/supervise-portal/supervise-portal-api/src/main/java/com/yxt/supervise/portal/api/templatestaffconfig/TemplateStaffConfigVo.java

@ -0,0 +1,20 @@
package com.yxt.supervise.portal.api.templatestaffconfig;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import lombok.Data;
/**
* @author wangpengfei
* @date 2023/4/10 14:35
*/
@Data
@ApiModel(value = "模板 员工关联表 视图数据对象", description = "模板 员工关联表 视图数据对象")
public class TemplateStaffConfigVo implements Vo {
private String id;
//模板sid
private String templateSid;
//员工sid
private String staffSid;
private String sid;
}

31
yxt_supervise/supervise-portal/supervise-portal-api/src/main/java/com/yxt/supervise/portal/api/wechattemplate/WechatTemplate.java

@ -0,0 +1,31 @@
package com.yxt.supervise.portal.api.wechattemplate;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yxt.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author wangpengfei
* @date 2023/4/10 11:34
*/
@Data
@ApiModel(value = "微信消息模版", description = "微信消息模版")
@TableName("wechat_template")
public class WechatTemplate extends BaseEntity {
//id
//private String id;
//模版id
@ApiModelProperty("模版id")
private String templateId;
//标题
@ApiModelProperty("标题")
private String title;
//格式
@ApiModelProperty("格式")
private String json;
//行业
@ApiModelProperty("行业")
private String trade;
}

27
yxt_supervise/supervise-portal/supervise-portal-api/src/main/java/com/yxt/supervise/portal/api/wechattemplate/WechatTemplateDetailVo.java

@ -0,0 +1,27 @@
package com.yxt.supervise.portal.api.wechattemplate;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author wangpengfei
* @date 2023/4/10 11:34
*/
@Data
@ApiModel(value = "微信消息模版 视图数据详情", description = "微信消息模版 视图数据详情")
public class WechatTemplateDetailVo implements Vo {
private String id;
@ApiModelProperty("模版id")
private String templateId;
//标题
@ApiModelProperty("标题")
private String title;
//格式
@ApiModelProperty("格式")
private String json;
//行业
@ApiModelProperty("行业")
private String trade;
}

35
yxt_supervise/supervise-portal/supervise-portal-api/src/main/java/com/yxt/supervise/portal/api/wechattemplate/WechatTemplateDto.java

@ -0,0 +1,35 @@
package com.yxt.supervise.portal.api.wechattemplate;
import com.yxt.common.core.dto.Dto;
import com.yxt.supervise.portal.api.templatestaffconfig.TemplateStaffConfig;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @author wangpengfei
* @date 2023/4/10 11:35
*/
@Data
@ApiModel(value = "微信消息模版 数据传输对象", description = "微信消息模版 数据传输对象")
public class WechatTemplateDto implements Dto {
private String id;
private String sid; // sid
@ApiModelProperty("模版id")
private String templateId;
//标题
@ApiModelProperty("标题")
private String title;
//前端传的list格式
@ApiModelProperty("前端传的list格式,后台转json")
private List<content> text;
//行业
@ApiModelProperty("行业")
private String trade;
//详细内容
@ApiModelProperty("json")
private String json;
private List<TemplateStaffConfig> templateStaffConfigs;
}

18
yxt_supervise/supervise-portal/supervise-portal-api/src/main/java/com/yxt/supervise/portal/api/wechattemplate/WechatTemplateFeign.java

@ -0,0 +1,18 @@
package com.yxt.supervise.portal.api.wechattemplate;
import io.swagger.annotations.Api;
import org.springframework.cloud.openfeign.FeignClient;
/**
* @author wangpengfei
* @date 2023/4/10 11:35
*/
@Api(tags = "微信模版消息")
@FeignClient(
contextId = "com.supervise-WechatTemplate",
name = "com.supervise",
path = "v1/wechattemplate",
fallback = WechatTemplateFeignFallback.class)
public interface WechatTemplateFeign {
}

11
yxt_supervise/supervise-portal/supervise-portal-api/src/main/java/com/yxt/supervise/portal/api/wechattemplate/WechatTemplateFeignFallback.java

@ -0,0 +1,11 @@
package com.yxt.supervise.portal.api.wechattemplate;
import org.springframework.stereotype.Component;
/**
* @author wangpengfei
* @date 2023/4/10 11:35
*/
@Component
public class WechatTemplateFeignFallback implements WechatTemplateFeign{
}

27
yxt_supervise/supervise-portal/supervise-portal-api/src/main/java/com/yxt/supervise/portal/api/wechattemplate/WechatTemplateQuery.java

@ -0,0 +1,27 @@
package com.yxt.supervise.portal.api.wechattemplate;
import com.yxt.common.core.query.Query;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author wangpengfei
* @date 2023/4/10 11:35
*/
@Data
@ApiModel(value = "微信消息模版 查询条件", description = "微信消息模版 查询条件")
public class WechatTemplateQuery implements Query {
private String id;
@ApiModelProperty("模版id")
private String templateId;
//标题
@ApiModelProperty("标题")
private String name;
//格式
@ApiModelProperty("格式")
private String json;
//行业
@ApiModelProperty("行业")
private String trade;
}

32
yxt_supervise/supervise-portal/supervise-portal-api/src/main/java/com/yxt/supervise/portal/api/wechattemplate/WechatTemplateVo.java

@ -0,0 +1,32 @@
package com.yxt.supervise.portal.api.wechattemplate;
import com.yxt.common.core.vo.Vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @author wangpengfei
* @date 2023/4/10 11:35
*/
@Data
@ApiModel(value = "微信消息模版 视图数据对象", description = "微信消息模版 视图数据对象")
public class WechatTemplateVo implements Vo {
private String id;
private String sid;
@ApiModelProperty("模版id")
private String templateId;
//标题
@ApiModelProperty("标题")
private String title;
//格式
@ApiModelProperty("格式")
private String json;
//行业
@ApiModelProperty("行业")
private String trade;
private List<content> text;
}

13
yxt_supervise/supervise-portal/supervise-portal-api/src/main/java/com/yxt/supervise/portal/api/wechattemplate/content.java

@ -0,0 +1,13 @@
package com.yxt.supervise.portal.api.wechattemplate;
import lombok.Data;
/**
* @author wangpengfei
* @date 2023/4/10 18:23
*/
@Data
public class content {
private String key;
private String value;
}

96
yxt_supervise/supervise-portal/supervise-portal-biz/pom.xml

@ -20,25 +20,25 @@
<groupId>com.yxt</groupId>
<artifactId>yxt-common-base</artifactId>
<version>0.0.1</version>
<!-- <exclusions>-->
<!-- <exclusion>-->
<!-- <groupId>org.apache.poi</groupId>-->
<!-- <artifactId>poi-ooxml</artifactId>-->
<!-- </exclusion>-->
<!-- <exclusion>-->
<!-- <groupId>org.apache.poi</groupId>-->
<!-- <artifactId>poi</artifactId>-->
<!-- </exclusion>-->
<!-- <exclusion>-->
<!-- <groupId>commons-io</groupId>-->
<!-- <artifactId>commons-io</artifactId>-->
<!-- </exclusion>-->
<!-- <exclusion>-->
<!-- <groupId>org.apache.axis</groupId>-->
<!-- <artifactId>axis</artifactId>-->
<!-- </exclusion>-->
<!-- <exclusions>-->
<!-- <exclusion>-->
<!-- <groupId>org.apache.poi</groupId>-->
<!-- <artifactId>poi-ooxml</artifactId>-->
<!-- </exclusion>-->
<!-- <exclusion>-->
<!-- <groupId>org.apache.poi</groupId>-->
<!-- <artifactId>poi</artifactId>-->
<!-- </exclusion>-->
<!-- <exclusion>-->
<!-- <groupId>commons-io</groupId>-->
<!-- <artifactId>commons-io</artifactId>-->
<!-- </exclusion>-->
<!-- <exclusion>-->
<!-- <groupId>org.apache.axis</groupId>-->
<!-- <artifactId>axis</artifactId>-->
<!-- </exclusion>-->
<!-- </exclusions>-->
<!-- </exclusions>-->
</dependency>
<dependency>
<artifactId>supervise-portal-api</artifactId>
@ -47,7 +47,7 @@
</dependency>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency>
<!--mysql-->
@ -130,16 +130,54 @@
<artifactId>fastcsv</artifactId>
<version>2.2.1</version>
</dependency>
<!-- <dependency>-->
<!-- <groupId>org.apache.poi</groupId>-->
<!-- <artifactId>poi-ooxml</artifactId>-->
<!-- <version>5.2.3</version>-->
<!-- </dependency>-->
<!-- <dependency>-->
<!-- <groupId>xerces</groupId>-->
<!-- <artifactId>xercesImpl</artifactId>-->
<!-- <version>2.12.2</version>-->
<!-- </dependency>-->
<!-- <dependency>-->
<!-- <groupId>org.apache.poi</groupId>-->
<!-- <artifactId>poi-ooxml</artifactId>-->
<!-- <version>5.2.3</version>-->
<!-- </dependency>-->
<!-- <dependency>-->
<!-- <groupId>xerces</groupId>-->
<!-- <artifactId>xercesImpl</artifactId>-->
<!-- <version>2.12.2</version>-->
<!-- </dependency>-->
<dependency>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
<version>3.2.1</version>
</dependency>
<dependency>
<groupId>commons-beanutils</groupId>
<artifactId>commons-beanutils</artifactId>
<version>1.9.2</version>
</dependency>
<dependency>
<groupId>commons-lang</groupId>
<artifactId>commons-lang</artifactId>
<version>2.6</version>
</dependency>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.1.1</version>
</dependency>
<dependency>
<groupId>net.sf.ezmorph</groupId>
<artifactId>ezmorph</artifactId>
<version>1.0.6</version>
</dependency>
<dependency>
<groupId>net.sf.json-lib</groupId>
<artifactId>json-lib</artifactId>
<version>2.4</version>
<classifier>jdk15</classifier>
</dependency>
<dependency>
<groupId>commons-codec</groupId>
<artifactId>commons-codec</artifactId>
<version>1.10</version>
</dependency>
</dependencies>
<build>

15
yxt_supervise/supervise-portal/supervise-portal-biz/src/main/java/com/yxt/supervise/portal/biz/gdsalesreport/GdSalesReportMapper.java

@ -6,6 +6,8 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.yxt.supervise.portal.api.gdsalesreport.GdSalesReport;
import com.yxt.supervise.portal.api.gdsalesreport.GdSalesReportVo;
import com.yxt.supervise.portal.api.gdsalesreport.GoodsSalesReportExcelVo;
import com.yxt.supervise.portal.api.gdsalesreport.StoreSalesReportExcelVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@ -18,10 +20,15 @@ import java.util.List;
@Mapper
public interface GdSalesReportMapper extends BaseMapper<GdSalesReport> {
IPage<GdSalesReportVo> getStoreSales(IPage<GdSalesReport> page, @Param(Constants.WRAPPER) Wrapper<GdSalesReport> qw);
IPage<GdSalesReportVo> getGoodsSalesReport(IPage<GdSalesReport> page, @Param(Constants.WRAPPER) Wrapper<GdSalesReport> qw);
List<GdSalesReportVo> getStoreSales(@Param(Constants.WRAPPER) Wrapper<GdSalesReport> qw);
List<StoreSalesReportExcelVo> getAllStoreSalesReport(@Param(Constants.WRAPPER) Wrapper<GdSalesReport> qw);
IPage<GdSalesReportVo> getStoreSalesReportYc(IPage<GdSalesReport> page, @Param(Constants.WRAPPER) Wrapper<GdSalesReport> qw);
List<GdSalesReportVo> getGoodsSalesReport(@Param(Constants.WRAPPER) Wrapper<GdSalesReport> qw);
List<GoodsSalesReportExcelVo> getAllGoodsSalesReport(@Param(Constants.WRAPPER) Wrapper<GdSalesReport> qw);
IPage<GdSalesReportVo> getGoodsSalesReportYc(IPage<GdSalesReport> page, @Param(Constants.WRAPPER) Wrapper<GdSalesReport> qw);
List<GdSalesReportVo> getStoreSalesReportYc(@Param(Constants.WRAPPER) Wrapper<GdSalesReport> qw);
List<StoreSalesReportExcelVo> getAllStoreSalesYcReport(@Param(Constants.WRAPPER) Wrapper<GdSalesReport> qw);
List<GdSalesReportVo> getGoodsSalesReportYc(@Param(Constants.WRAPPER) Wrapper<GdSalesReport> qw);
List<GoodsSalesReportExcelVo> getAllGoodsSalesYcReport(@Param(Constants.WRAPPER) Wrapper<GdSalesReport> qw);
}

47
yxt_supervise/supervise-portal/supervise-portal-biz/src/main/java/com/yxt/supervise/portal/biz/gdsalesreport/GdSalesReportMapper.xml

@ -4,6 +4,18 @@
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
<select id="getStoreSales" resultType="com.yxt.supervise.portal.api.gdsalesreport.GdSalesReportVo">
SELECT
ROUND( SUM( s.saleNum * s.salePrice ), 2 ) AS salesVolume,
i.NAME AS storeName
FROM
gd_sales_gd s
LEFT JOIN store_info i ON i.`code` = s.storeCode
<where> ${ew.sqlSegment} </where>
GROUP BY s.storeCode
limit 1,500
</select>
<select id="getAllStoreSalesReport" resultType="com.yxt.supervise.portal.api.gdsalesreport.StoreSalesReportExcelVo">
SELECT
ROUND( SUM( s.saleNum * s.salePrice ), 2 ) AS salesVolume,
i.NAME AS storeName
@ -22,8 +34,17 @@
LEFT JOIN store_info i ON i.`code` = s.storeCode
<where> ${ew.sqlSegment} </where>
ORDER BY i. name
limit 1,500
</select>
<select id="getAllGoodsSalesReport" resultType="com.yxt.supervise.portal.api.gdsalesreport.GoodsSalesReportExcelVo">
SELECT
s.id,s.prodName,i.name as storeName,s.saleNum,s.salePrice,ROUND((s.saleNum*s.salePrice),2) as total,s.orderType,s.orderNo,s.prodCode
FROM
gd_sales_gd s
LEFT JOIN store_info i ON i.`code` = s.storeCode
<where> ${ew.sqlSegment} </where>
ORDER BY i. name
</select>
<select id="getStoreSalesReportYc" resultType="com.yxt.supervise.portal.api.gdsalesreport.GdSalesReportVo">
SELECT
ROUND( SUM( s.saleNum * s.salePrice ), 2 ) AS salesVolume,
@ -34,12 +55,34 @@
<where> ${ew.sqlSegment} </where>
GROUP BY
s.storeCode
limit 1,500
</select>
<select id="getAllStoreSalesYcReport" resultType="com.yxt.supervise.portal.api.gdsalesreport.GoodsSalesReportExcelVo">
SELECT
ROUND( SUM( s.saleNum * s.salePrice ), 2 ) AS salesVolume,
i.NAME AS storeName
FROM
gd_sales_yc s
LEFT JOIN store_info i ON i.`code` = s.storeCode
<where> ${ew.sqlSegment} </where>
GROUP BY
s.storeCode
</select>
<select id="getGoodsSalesReportYc" resultType="com.yxt.supervise.portal.api.gdsalesreport.GdSalesReportVo">
SELECT
s.id,s.prodName,i.name as storeName,s.saleNum,s.salePrice,ROUND((s.saleNum*s.salePrice),2) as total,s.orderType,s.orderNo,s.prodCode
FROM
gd_sales_gd s
gd_sales_yc s
LEFT JOIN store_info i ON i.`code` = s.storeCode
<where> ${ew.sqlSegment} </where>
ORDER BY i. name
limit 1,500
</select>
<select id="getAllGoodsSalesYcReport" resultType="com.yxt.supervise.portal.api.gdsalesreport.GoodsSalesReportExcelVo">
SELECT
s.id,s.prodName,i.name as storeName,s.saleNum,s.salePrice,ROUND((s.saleNum*s.salePrice),2) as total,s.orderType,s.orderNo,s.prodCode
FROM
gd_sales_yc s
LEFT JOIN store_info i ON i.`code` = s.storeCode
<where> ${ew.sqlSegment} </where>
ORDER BY i. name

220
yxt_supervise/supervise-portal/supervise-portal-biz/src/main/java/com/yxt/supervise/portal/biz/gdsalesreport/GdSalesReportRest.java

@ -1,18 +1,35 @@
package com.yxt.supervise.portal.biz.gdsalesreport;
import cn.hutool.core.io.resource.ClassPathResource;
import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.ExcelWriter;
import com.alibaba.excel.util.MapUtils;
import com.alibaba.excel.write.metadata.WriteSheet;
import com.alibaba.excel.write.metadata.fill.FillConfig;
import com.sun.deploy.net.URLEncoder;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.supervise.portal.api.gdsalesreport.GdSalesReport;
import com.yxt.supervise.portal.api.gdsalesreport.GdSalesReportQuery;
import com.yxt.supervise.portal.api.gdsalesreport.GdSalesReportVo;
import com.yxt.supervise.portal.biz.gdsales.GdSalesQuery;
import com.yxt.supervise.portal.api.gdsalesreport.*;
import io.swagger.annotations.ApiOperation;
import org.apache.catalina.connector.Response;
import org.apache.commons.compress.utils.IOUtils;
import org.junit.Test;
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 javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import static io.netty.handler.codec.smtp.SmtpRequests.data;
/**
* @author wangpengfei
* @date 2023/4/14 11:05
@ -27,29 +44,210 @@ public class GdSalesReportRest {
@PostMapping("/getStoreSalesReport")
public ResultBean<GdSalesReportVo> getStoreSalesReport(@RequestBody PagerQuery<GdSalesReportQuery> pq){
ResultBean rb = ResultBean.fireFail();
PagerVo<GdSalesReportVo> pv = gdSalesReportService.getStoreSalesReport(pq);
List<GdSalesReportVo> pv = gdSalesReportService.getStoreSalesReport(pq);
return rb.success().setData(pv);
}
@PostMapping("/exportStoreSalesReport")
@ApiOperation(value = "门店销售明细报表")
public void exportStoreSalesReport(@RequestBody PagerQuery<GdSalesReportQuery> pq, HttpServletResponse response) throws IOException {
String excelFileName = "门店销售明细报表" + System.currentTimeMillis() + ".xlsx";
String templateFileName = "C:\\Users\\www19\\Desktop\\1.xlsx";
//获取模板(模板你可以放在任何位置,前提是你能获取到。这里放在resource下)
response.setContentType( "application/vnd.ms-excel");
response.setCharacterEncoding("utf8");
response.setHeader("Content-disposition","attachment;filename="+ excelFileName);
ServletOutputStream outputStream = response.getOutputStream();
try (ExcelWriter excelWriter = EasyExcel.write(excelFileName).withTemplate(templateFileName).build()) {
WriteSheet writeSheet = EasyExcel.writerSheet().build();
//writeSheet.setSheetName("门店销售明细报表");
// 这里注意 入参用了forceNewRow 代表在写入list的时候不管list下面有没有空行 都会创建一行,然后下面的数据往后移动。默认 是false,会直接使用下一行,如果没有则创建。
// forceNewRow 如果设置了true,有个缺点 就是他会把所有的数据都放到内存了,所以慎用
// 简单的说 如果你的模板有list,且list不是最后一行,下面还有数据需要填充 就必须设置 forceNewRow=true 但是这个就会把所有数据放到内存 会很耗内存
// 如果数据量大 list不是最后一行 参照下一个
FillConfig fillConfig = FillConfig.builder().forceNewRow(Boolean.TRUE).build();
List<StoreSalesReportExcelVo> excelVos = gdSalesReportService.getAllStoreSalesReport(pq);
excelWriter.fill(excelVos, writeSheet);
TotalSales totalSales=new TotalSales();
totalSales.setDate("2023-04-17");
totalSales.setSum("3");
totalSales.setStoreNum("100");
excelWriter.fill(totalSales,writeSheet);
excelWriter.finish();
}
outputStream.flush();
outputStream.close();
}
@Test
public void edd(){
String excelFileName = "门店销售明细报表" + System.currentTimeMillis() + ".xlsx";
String templateFileName = "C:\\Users\\www19\\Desktop\\1.xlsx";
//获取模板(模板你可以放在任何位置,前提是你能获取到。这里放在resource下)
// response.setContentType( "application/vnd.ms-excel");
// response.setCharacterEncoding("utf8");
// response.setHeader("Content-disposition","attachment;filename="+ excelFileName);
// ServletOutputStream outputStream = response.getOutputStream();
// try (ExcelWriter excelWriter = EasyExcel.write(excelFileName).withTemplate(templateFileName).build()) {
// WriteSheet writeSheet = EasyExcel.writerSheet("门店销售明细报表").build();
// // 这里注意 入参用了forceNewRow 代表在写入list的时候不管list下面有没有空行 都会创建一行,然后下面的数据往后移动。默认 是false,会直接使用下一行,如果没有则创建。
// // forceNewRow 如果设置了true,有个缺点 就是他会把所有的数据都放到内存了,所以慎用
// // 简单的说 如果你的模板有list,且list不是最后一行,下面还有数据需要填充 就必须设置 forceNewRow=true 但是这个就会把所有数据放到内存 会很耗内存
// // 如果数据量大 list不是最后一行 参照下一个
// FillConfig fillConfig = FillConfig.builder().forceNewRow(Boolean.TRUE).build();
// List<StoreSalesReportExcelVo> excelVos =new ArrayList<>();
// StoreSalesReportExcelVo storeSalesReportExcelVo=new StoreSalesReportExcelVo();
// storeSalesReportExcelVo.setStoreName("1231313");
// storeSalesReportExcelVo.setSalesVolume("1313");
// storeSalesReportExcelVo.setStoreNum("123132");
// storeSalesReportExcelVo.setDate("12313");
// excelVos.add(storeSalesReportExcelVo);
// excelWriter.fill(excelVos, writeSheet);
// //excelWriter.finish();
// }
// try (ExcelWriter excelWriter = EasyExcel.write(excelFileName).withTemplate(templateFileName).build()) {
// WriteSheet writeSheet = EasyExcel.writerSheet().build();
// WriteSheet writeSheet = EasyExcel.writerSheet("目录").registerWriteHandler(new LinkStyleHandler(linkMap)).build();
// // 这里注意 入参用了forceNewRow 代表在写入list的时候不管list下面有没有空行 都会创建一行,然后下面的数据往后移动。默认 是false,会直接使用下一行,如果没有则创建。
// // forceNewRow 如果设置了true,有个缺点 就是他会把所有的数据都放到内存了,所以慎用
// // 简单的说 如果你的模板有list,且list不是最后一行,下面还有数据需要填充 就必须设置 forceNewRow=true 但是这个就会把所有数据放到内存 会很耗内存
// // 如果数据量大 list不是最后一行 参照下一个
// FillConfig fillConfig = FillConfig.builder().forceNewRow(Boolean.TRUE).build();
// excelWriter.fill(data(), fillConfig, writeSheet);
// excelWriter.fill(data(), fillConfig, writeSheet);
// Map<String, Object> map = MapUtils.newHashMap();
// List<StoreSalesReportExcelVo> excelVos =new ArrayList<>();
// StoreSalesReportExcelVo storeSalesReportExcelVo=new StoreSalesReportExcelVo();
// storeSalesReportExcelVo.setStoreName("1231313");
// storeSalesReportExcelVo.setSalesVolume("1313");
// storeSalesReportExcelVo.setStoreNum("123132");
// storeSalesReportExcelVo.setDate("12313");
// excelVos.add(storeSalesReportExcelVo);
// writeSheet = EasyExcel.writerSheet("门店销售明细报表").build();
// excelWriter.fill(map, writeSheet);
// }
//response.setContentType("application/vnd.ms-excel");
//setCharacterEncoding("utf-8");
//response.setHeader("Access-Control-Expose-Headers", "Content-Disposition");
// attachment这个代表要下载的,如果去掉就直接打开了(attachment-作为附件下载,inline-在线打开)
// excelFileName是文件名,另存为或者下载时,为默认的文件名
//response.setHeader("Content-disposition","attachment;filename=" + excelFileName + ".xlsx");
//response.setHeader("Content-Type","application/octet-stream;charset=utf-8");
InputStream templateInputStream = null;
ExcelWriter excelWriter = null;
WriteSheet userSheet = null;
WriteSheet branchSheet = null;
ServletOutputStream outputStream = null;
// try {
// outputStream = response.getOutputStream();
// templateInputStream = couponOrderTemplateResource.getInputStream();
// } catch (IOException e) {
// log.error("获取模板失败");
// }
// 这里注意 入参用了forceNewRow 代表在写入list的时候不管list下面有没有空行 都会创建一行,然后下面的数据往后移动。默认 是false,会直接使用下一行,如果没有则创建。
// forceNewRow 如果设置了true,有个缺点 就是他会把所有的数据都放到内存了,所以慎用
// 简单的说 如果你的模板有list,且list不是最后一行,下面还有数据需要填充 就必须设置 forceNewRow=true 但是这个就会把所有数据放到内存 会很耗内存
// 如果数据量大 list不是最后一行 参照下一个
FillConfig fillConfig = FillConfig.builder().forceNewRow(Boolean.TRUE).build();
List<StoreSalesReportExcelVo> excelVos =new ArrayList<>();
StoreSalesReportExcelVo storeSalesReportExcelVo=new StoreSalesReportExcelVo();
storeSalesReportExcelVo.setStoreName("1231313");
storeSalesReportExcelVo.setSalesVolume("1313");
//storeSalesReportExcelVo.setStoreNum("123132");
//storeSalesReportExcelVo.setDate("12313");
excelVos.add(storeSalesReportExcelVo);
EasyExcel.write(excelFileName).withTemplate(templateFileName).sheet(1).doWrite(excelVos);
//创建第一个sheet
userSheet = EasyExcel.writerSheet().build();
//填充
//excelWriter.fill(excelVos,fillConfig,userSheet);//员工基础信息
//excelWriter.fill(gradeAvgDTO,userSheet);//员工平均成绩
// //创建第二个sheet
// branchSheet = EasyExcel.writerSheet("部门信息").build();
// //填充
// excelWriter.fill(ftBranchDTOS,fillConfig,branchSheet);//部门基础信息
// excelWriter.fill(peopleSumDTO,branchSheet);//总人数
//关闭
//excelWriter.finish();
IOUtils.closeQuietly(templateInputStream);
IOUtils.closeQuietly(outputStream);
IOUtils.closeQuietly(excelWriter);
}
@PostMapping("/getGoodsSalesReport")
public ResultBean<GdSalesReportVo> getGoodsSalesReport(@RequestBody PagerQuery<GdSalesReportQuery> pq){
ResultBean rb = ResultBean.fireFail();
PagerVo<GdSalesReportVo> pv = gdSalesReportService.getGoodsSalesReport(pq);
List<GdSalesReportVo> pv = gdSalesReportService.getGoodsSalesReport(pq);
return rb.success().setData(pv);
}
@PostMapping("/exportGoodsSalesReport")
@ApiOperation(value = "门店商品销售明细报表")
public void exportGoodsSalesReport(@RequestBody PagerQuery<GdSalesReportQuery> pq, HttpServletResponse response) throws IOException {
//得到所有要导出的数据
List<GoodsSalesReportExcelVo> excelVos = gdSalesReportService.getAllGoodsSalesReport(pq);
String fileName = "门店商品销售明细报表" + System.currentTimeMillis() + ".xlsx";
response.setContentType( "application/vnd.ms-excel");
response.setCharacterEncoding("utf8");
response.setHeader("Content-disposition","attachment;filename="+ fileName );
// 这里 需要指定写用哪个class去读,然后写到第一个sheet,名字为模板 然后文件流会自动关闭
// 如果这里想使用03 则 传入excelType参数即可
ServletOutputStream outputStream = response.getOutputStream();
EasyExcel.write(outputStream, StoreSalesReportExcelVo.class).sheet("门店商品销售明细报表").doWrite(excelVos);
outputStream.flush();
outputStream.close();
}
@PostMapping("/getStoreSalesReportYc")
public ResultBean<GdSalesReportVo> getStoreSalesReportYc(@RequestBody PagerQuery<GdSalesReportQuery> pq){
ResultBean rb = ResultBean.fireFail();
PagerVo<GdSalesReportVo> pv = gdSalesReportService.getStoreSalesReportYc(pq);
List<GdSalesReportVo> pv = gdSalesReportService.getStoreSalesReportYc(pq);
return rb.success().setData(pv);
}
@PostMapping("/exportgetStoreSalesReportYc")
@ApiOperation(value = "门店销售明细报表(烟草)")
public void exportgetStoreSalesReportYc(@RequestBody PagerQuery<GdSalesReportQuery> pq, HttpServletResponse response) throws IOException {
//得到所有要导出的数据
List<StoreSalesReportExcelVo> excelVos = gdSalesReportService.StoreSalesYcReportExcelVo(pq);
String fileName = "门店销售明细报表(烟草)" + System.currentTimeMillis() + ".xlsx";
response.setContentType( "application/vnd.ms-excel");
response.setCharacterEncoding("utf8");
response.setHeader("Content-disposition","attachment;filename="+ fileName );
// 这里 需要指定写用哪个class去读,然后写到第一个sheet,名字为模板 然后文件流会自动关闭
// 如果这里想使用03 则 传入excelType参数即可
ServletOutputStream outputStream = response.getOutputStream();
EasyExcel.write(outputStream, StoreSalesReportExcelVo.class).sheet("门店销售明细报表(烟草)").doWrite(excelVos);
outputStream.flush();
outputStream.close();
}
@PostMapping("/getGoodsSalesReportYc")
public ResultBean<GdSalesReportVo> getGoodsSalesReportYc(@RequestBody PagerQuery<GdSalesReportQuery> pq){
ResultBean rb = ResultBean.fireFail();
PagerVo<GdSalesReportVo> pv = gdSalesReportService.getGoodsSalesReportYc(pq);
List<GdSalesReportVo> pv = gdSalesReportService.getGoodsSalesReportYc(pq);
return rb.success().setData(pv);
}
@PostMapping("/exportGoodsSalesReportYc")
@ApiOperation(value = "门店商品销售明细报表(烟草)")
public void exportGoodsSalesReportYc(@RequestBody PagerQuery<GdSalesReportQuery> pq, HttpServletResponse response) throws IOException {
//得到所有要导出的数据
List<GoodsSalesReportExcelVo> excelVos = gdSalesReportService.GoodsSalesReportYcExcelVo(pq);
String fileName = "门店商品销售明细报表(烟草)" + System.currentTimeMillis() + ".xlsx";
response.setContentType( "application/vnd.ms-excel");
response.setCharacterEncoding("utf8");
response.setHeader("Content-disposition","attachment;filename="+ fileName );
// 这里 需要指定写用哪个class去读,然后写到第一个sheet,名字为模板 然后文件流会自动关闭
// 如果这里想使用03 则 传入excelType参数即可
ServletOutputStream outputStream = response.getOutputStream();
EasyExcel.write(outputStream, StoreSalesReportExcelVo.class).sheet("门店商品销售明细报表(烟草)").doWrite(excelVos);
outputStream.flush();
outputStream.close();
}
}

91
yxt_supervise/supervise-portal/supervise-portal-biz/src/main/java/com/yxt/supervise/portal/biz/gdsalesreport/GdSalesReportService.java

@ -7,9 +7,7 @@ import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.supervise.portal.api.gdsalesreport.GdSalesReport;
import com.yxt.supervise.portal.api.gdsalesreport.GdSalesReportQuery;
import com.yxt.supervise.portal.api.gdsalesreport.GdSalesReportVo;
import com.yxt.supervise.portal.api.gdsalesreport.*;
import com.yxt.supervise.portal.biz.gdsales.GdSalesQuery;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
@ -26,7 +24,7 @@ public class GdSalesReportService extends MybatisBaseService<GdSalesReportMapper
@Autowired
GdSalesReportMapper gdSalesReportMapper;
public PagerVo<GdSalesReportVo> getStoreSalesReport(PagerQuery<GdSalesReportQuery> pq) {
public List<GdSalesReportVo> getStoreSalesReport(PagerQuery<GdSalesReportQuery> pq) {
GdSalesReportQuery query = pq.getParams();
QueryWrapper<GdSalesReport> qw = new QueryWrapper<>();
if(query!=null) {
@ -34,12 +32,12 @@ public class GdSalesReportService extends MybatisBaseService<GdSalesReportMapper
qw.eq("STR_TO_DATE(s.dataDate,'%Y-%m-%d')", query.getDate());
}
}
IPage<GdSalesReport> page = PagerUtil.queryToPage(pq);
IPage<GdSalesReportVo> pagging = baseMapper.getStoreSales(page, qw);
PagerVo<GdSalesReportVo> p = PagerUtil.pageToVo(pagging, null);
return p;
//IPage<GdSalesReport> page = PagerUtil.queryToPage(pq);
List<GdSalesReportVo> pagging = baseMapper.getStoreSales(qw);
//PagerVo<GdSalesReportVo> p = PagerUtil.pageToVo(pagging, null);
return pagging;
}
public PagerVo<GdSalesReportVo> getGoodsSalesReport(PagerQuery<GdSalesReportQuery> pq) {
public List<StoreSalesReportExcelVo> getAllStoreSalesReport(PagerQuery<GdSalesReportQuery> pq) {
GdSalesReportQuery query = pq.getParams();
QueryWrapper<GdSalesReport> qw = new QueryWrapper<>();
if(query!=null) {
@ -47,12 +45,10 @@ public class GdSalesReportService extends MybatisBaseService<GdSalesReportMapper
qw.eq("STR_TO_DATE(s.dataDate,'%Y-%m-%d')", query.getDate());
}
}
IPage<GdSalesReport> page = PagerUtil.queryToPage(pq);
IPage<GdSalesReportVo> pagging = baseMapper.getGoodsSalesReport(page, qw);
PagerVo<GdSalesReportVo> p = PagerUtil.pageToVo(pagging, null);
return p;
List<StoreSalesReportExcelVo> pagging = baseMapper.getAllStoreSalesReport(qw);
return pagging;
}
public PagerVo<GdSalesReportVo> getStoreSalesReportYc(PagerQuery<GdSalesReportQuery> pq) {
public List<GdSalesReportVo> getGoodsSalesReport(PagerQuery<GdSalesReportQuery> pq) {
GdSalesReportQuery query = pq.getParams();
QueryWrapper<GdSalesReport> qw = new QueryWrapper<>();
if(query!=null) {
@ -60,12 +56,12 @@ public class GdSalesReportService extends MybatisBaseService<GdSalesReportMapper
qw.eq("STR_TO_DATE(s.dataDate,'%Y-%m-%d')", query.getDate());
}
}
IPage<GdSalesReport> page = PagerUtil.queryToPage(pq);
IPage<GdSalesReportVo> pagging = baseMapper.getStoreSalesReportYc(page, qw);
PagerVo<GdSalesReportVo> p = PagerUtil.pageToVo(pagging, null);
return p;
//IPage<GdSalesReport> page = PagerUtil.queryToPage(pq);
List<GdSalesReportVo> pagging = baseMapper.getGoodsSalesReport(qw);
//PagerVo<GdSalesReportVo> p = PagerUtil.pageToVo(pagging, null);
return pagging;
}
public PagerVo<GdSalesReportVo> getGoodsSalesReportYc(PagerQuery<GdSalesReportQuery> pq) {
public List<GoodsSalesReportExcelVo> getAllGoodsSalesReport(PagerQuery<GdSalesReportQuery> pq) {
GdSalesReportQuery query = pq.getParams();
QueryWrapper<GdSalesReport> qw = new QueryWrapper<>();
if(query!=null) {
@ -73,10 +69,59 @@ public class GdSalesReportService extends MybatisBaseService<GdSalesReportMapper
qw.eq("STR_TO_DATE(s.dataDate,'%Y-%m-%d')", query.getDate());
}
}
IPage<GdSalesReport> page = PagerUtil.queryToPage(pq);
IPage<GdSalesReportVo> pagging = baseMapper.getGoodsSalesReportYc(page, qw);
PagerVo<GdSalesReportVo> p = PagerUtil.pageToVo(pagging, null);
return p;
List<GoodsSalesReportExcelVo> pagging = baseMapper.getAllGoodsSalesReport(qw);
return pagging;
}
public List<GdSalesReportVo> getStoreSalesReportYc(PagerQuery<GdSalesReportQuery> pq) {
GdSalesReportQuery query = pq.getParams();
QueryWrapper<GdSalesReport> qw = new QueryWrapper<>();
if(query!=null) {
if (StringUtils.isNotBlank(query.getDate())) {
qw.eq("STR_TO_DATE(s.dataDate,'%Y-%m-%d')", query.getDate());
}
}
//IPage<GdSalesReport> page = PagerUtil.queryToPage(pq);
List<GdSalesReportVo> pagging = baseMapper.getStoreSalesReportYc(qw);
//PagerVo<GdSalesReportVo> p = PagerUtil.pageToVo(pagging, null);
return pagging;
}
public List<StoreSalesReportExcelVo> StoreSalesYcReportExcelVo(PagerQuery<GdSalesReportQuery> pq) {
GdSalesReportQuery query = pq.getParams();
QueryWrapper<GdSalesReport> qw = new QueryWrapper<>();
if(query!=null) {
if (StringUtils.isNotBlank(query.getDate())) {
qw.eq("STR_TO_DATE(s.dataDate,'%Y-%m-%d')", query.getDate());
}
}
List<StoreSalesReportExcelVo> pagging = baseMapper.getAllStoreSalesYcReport(qw);
return pagging;
}
public List<GdSalesReportVo> getGoodsSalesReportYc(PagerQuery<GdSalesReportQuery> pq) {
GdSalesReportQuery query = pq.getParams();
QueryWrapper<GdSalesReport> qw = new QueryWrapper<>();
if(query!=null) {
if (StringUtils.isNotBlank(query.getDate())) {
qw.eq("STR_TO_DATE(s.dataDate,'%Y-%m-%d')", query.getDate());
}
}
//IPage<GdSalesReport> page = PagerUtil.queryToPage(pq);
List<GdSalesReportVo> pagging = baseMapper.getGoodsSalesReportYc(qw);
//PagerVo<GdSalesReportVo> p = PagerUtil.pageToVo(pagging, null);
return pagging;
}
public List<GoodsSalesReportExcelVo> GoodsSalesReportYcExcelVo(PagerQuery<GdSalesReportQuery> pq) {
GdSalesReportQuery query = pq.getParams();
QueryWrapper<GdSalesReport> qw = new QueryWrapper<>();
if(query!=null) {
if (StringUtils.isNotBlank(query.getDate())) {
qw.eq("STR_TO_DATE(s.dataDate,'%Y-%m-%d')", query.getDate());
}
}
List<GoodsSalesReportExcelVo> pagging = baseMapper.getAllGoodsSalesYcReport(qw);
return pagging;
}
}

20
yxt_supervise/supervise-portal/supervise-portal-biz/src/main/java/com/yxt/supervise/portal/biz/templatestaffconfig/TemplateStaffConfigMapper.java

@ -0,0 +1,20 @@
package com.yxt.supervise.portal.biz.templatestaffconfig;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.yxt.supervise.portal.api.templatestaffconfig.TemplateStaffConfig;
import com.yxt.supervise.portal.api.wechattemplate.WechatTemplate;
import com.yxt.supervise.portal.api.wechattemplate.WechatTemplateVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
/**
* @author wangpengfei
* @date 2023/4/10 14:45
*/
@Mapper
public interface TemplateStaffConfigMapper extends BaseMapper<TemplateStaffConfig> {
IPage<WechatTemplateVo> selectPageVo(IPage<WechatTemplate> page, @Param(Constants.WRAPPER) Wrapper<WechatTemplate> qw);
}

13
yxt_supervise/supervise-portal/supervise-portal-biz/src/main/java/com/yxt/supervise/portal/biz/templatestaffconfig/TemplateStaffConfigMapper.xml

@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yxt.supervise.portal.biz.templatestaffconfig.TemplateStaffConfigMapper">
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
<select id="selectPageVo" resultType="com.yxt.supervise.portal.api.templatestaffconfig.TemplateStaffConfigVo">
SELECT * FROM wechat_template <where> ${ew.sqlSegment} </where>
</select>
<select id="selectListAllVo" resultType="com.yxt.supervise.portal.api.templatestaffconfig.TemplateStaffConfigVo">
SELECT * FROM wechat_template <where> ${ew.sqlSegment} </where>
</select>
</mapper>

16
yxt_supervise/supervise-portal/supervise-portal-biz/src/main/java/com/yxt/supervise/portal/biz/templatestaffconfig/TemplateStaffConfigRest.java

@ -0,0 +1,16 @@
package com.yxt.supervise.portal.biz.templatestaffconfig;
import com.yxt.supervise.portal.api.templatestaffconfig.TemplateStaffConfigFeign;
import io.swagger.annotations.Api;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* @author wangpengfei
* @date 2023/4/10 14:45
*/
@Api(tags = "消息 员工关联表")
@RestController
@RequestMapping("v1/templatestaffconfig")
public class TemplateStaffConfigRest implements TemplateStaffConfigFeign {
}

13
yxt_supervise/supervise-portal/supervise-portal-biz/src/main/java/com/yxt/supervise/portal/biz/templatestaffconfig/TemplateStaffConfigService.java

@ -0,0 +1,13 @@
package com.yxt.supervise.portal.biz.templatestaffconfig;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.supervise.portal.api.templatestaffconfig.TemplateStaffConfig;
import org.springframework.stereotype.Service;
/**
* @author wangpengfei
* @date 2023/4/10 14:45
*/
@Service
public class TemplateStaffConfigService extends MybatisBaseService<TemplateStaffConfigMapper, TemplateStaffConfig> {
}

20
yxt_supervise/supervise-portal/supervise-portal-biz/src/main/java/com/yxt/supervise/portal/biz/wechattemplate/WechatTemplateMapper.java

@ -0,0 +1,20 @@
package com.yxt.supervise.portal.biz.wechattemplate;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.yxt.supervise.portal.api.wechattemplate.WechatTemplate;
import com.yxt.supervise.portal.api.wechattemplate.WechatTemplateVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
/**
* @author wangpengfei
* @date 2023/4/10 10:34
*/
@Mapper
public interface WechatTemplateMapper extends BaseMapper<WechatTemplate> {
IPage<WechatTemplateVo> selectPageVo(IPage<WechatTemplate> page, @Param(Constants.WRAPPER) Wrapper<WechatTemplate> qw);
WechatTemplateVo getTemplateBySid(@Param("sid") String sid);
}

13
yxt_supervise/supervise-portal/supervise-portal-biz/src/main/java/com/yxt/supervise/portal/biz/wechattemplate/WechatTemplateMapper.xml

@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yxt.supervise.portal.biz.wechattemplate.WechatTemplateMapper">
<!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} -->
<select id="selectPageVo" resultType="com.yxt.supervise.portal.api.wechattemplate.WechatTemplateVo">
SELECT * FROM wechat_template <where> ${ew.sqlSegment} </where>
</select>
<select id="getTemplateBySid" resultType="com.yxt.supervise.portal.api.wechattemplate.WechatTemplateVo">
SELECT * FROM wechat_template <where> sid=#{sid} </where>
</select>
</mapper>

61
yxt_supervise/supervise-portal/supervise-portal-biz/src/main/java/com/yxt/supervise/portal/biz/wechattemplate/WechatTemplateRest.java

@ -0,0 +1,61 @@
package com.yxt.supervise.portal.biz.wechattemplate;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.supervise.portal.api.wechattemplate.WechatTemplateDto;
import com.yxt.supervise.portal.api.wechattemplate.WechatTemplateFeign;
import com.yxt.supervise.portal.api.wechattemplate.WechatTemplateQuery;
import com.yxt.supervise.portal.api.wechattemplate.WechatTemplateVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
/**
* @author wangpengfei
* @date 2023/4/10 10:35
*/
@Api(tags = "微信消息模版")
@RestController
@RequestMapping("v1/wechattemplate")
public class WechatTemplateRest implements WechatTemplateFeign {
@Autowired
WechatTemplateService wechatTemplateService;
@ApiOperation("根据条件分页查询数据的列表")
@PostMapping("/listPage")
public ResultBean<PagerVo<WechatTemplateVo>> listPage(@RequestBody PagerQuery<WechatTemplateQuery> pq){
ResultBean rb = ResultBean.fireFail();
PagerVo<WechatTemplateVo> pv = wechatTemplateService.listPageVo(pq);
return rb.success().setData(pv);
}
@ApiOperation("初始化")
@GetMapping("/getTemplateBySid/{sid}")
public ResultBean<WechatTemplateVo> getTemplateBySid(@PathVariable("sid") String sid){
ResultBean rb = ResultBean.fireFail();
WechatTemplateVo pv = wechatTemplateService.getTemplateBySid(sid);
return rb.success().setData(pv);
}
@ApiOperation("新增")
@PostMapping("/save")
public ResultBean save(@RequestBody WechatTemplateDto dto){
ResultBean rb = ResultBean.fireFail();
wechatTemplateService.save(dto);
return rb.success().setMsg(rb.getMsg());
}
@ApiOperation("修改")
@PostMapping("/update")
public ResultBean update(@RequestBody WechatTemplateDto dto){
ResultBean rb = ResultBean.fireFail();
wechatTemplateService.update(dto);
return rb.success().setMsg(rb.getMsg());
}
@ApiOperation("删除")
@DeleteMapping("/delete/{sid}")
@ResponseBody
public ResultBean delete(@PathVariable String sid){
ResultBean rb = ResultBean.fireFail();
wechatTemplateService.deleteBySid(sid);
return rb.success().setMsg(rb.getMsg());
}
}

105
yxt_supervise/supervise-portal/supervise-portal-biz/src/main/java/com/yxt/supervise/portal/biz/wechattemplate/WechatTemplateService.java

@ -0,0 +1,105 @@
package com.yxt.supervise.portal.biz.wechattemplate;
import cn.hutool.core.bean.BeanUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.common.base.service.MybatisBaseService;
import com.yxt.common.base.utils.PagerUtil;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.supervise.portal.api.templatestaffconfig.TemplateStaffConfig;
import com.yxt.supervise.portal.api.wechattemplate.*;
import com.yxt.supervise.portal.biz.templatestaffconfig.TemplateStaffConfigService;
import net.sf.json.JSONArray;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
* @author wangpengfei
* @date 2023/4/10 10:36
*/
@Service
public class WechatTemplateService extends MybatisBaseService<WechatTemplateMapper, WechatTemplate> {
@Autowired
private TemplateStaffConfigService templateStaffConfigService;
public PagerVo<WechatTemplateVo> listPageVo(PagerQuery<WechatTemplateQuery> pq) {
WechatTemplateQuery query = pq.getParams();
QueryWrapper<WechatTemplate> qw = new QueryWrapper<>();
if (StringUtils.isNotBlank(query.getName())) {
qw.like("title", query.getName());
}
IPage<WechatTemplate> page = PagerUtil.queryToPage(pq);
IPage<WechatTemplateVo> pagging = baseMapper.selectPageVo(page, qw);
PagerVo<WechatTemplateVo> p = PagerUtil.pageToVo(pagging, null);
return p;
}
public WechatTemplateVo getTemplateBySid(String sid) {
WechatTemplateVo wechatTemplateVo=baseMapper.getTemplateBySid(sid);
String json=wechatTemplateVo.getJson();
System.out.println(json);
wechatTemplateVo.setText(JSONObject.parseArray(json,content.class));
return wechatTemplateVo;
}
public ResultBean save(WechatTemplateDto dto) {
ResultBean rb = ResultBean.fireFail();
WechatTemplate entity=new WechatTemplate();
BeanUtil.copyProperties(dto, entity, "id", "sid");
JSONArray json = JSONArray.fromObject(dto.getText());
entity.setJson(json.toString());
baseMapper.insert(entity);
// List<TemplateStaffConfig> entitys=new ArrayList<>();
// if(dto.getTemplateStaffConfigs().size()>0){
// for(TemplateStaffConfig templateStaffConfig:dto.getTemplateStaffConfigs()){
// BeanUtil.copyProperties(dto, templateStaffConfig, "id", "sid");
// templateStaffConfig.setTemplateSid(entity.getSid());
// entitys.add(templateStaffConfig);
// }
//
// templateStaffConfigService.saveBatch(entitys);
// }
return rb.success().setMsg("添加模板信息成功");
}
public ResultBean update(WechatTemplateDto dto) {
ResultBean rb = ResultBean.fireFail();
String dtoSid = dto.getSid();
if (StringUtils.isBlank(dtoSid)) {
return rb.success().setMsg("添加模板信息成功");
}
WechatTemplate entity = fetchBySid(dtoSid);
BeanUtil.copyProperties(dto, entity, "id", "sid");
JSONArray json = JSONArray.fromObject(dto.getText());
entity.setJson(json.toString());
baseMapper.updateById(entity);
// List<TemplateStaffConfig> entitys=new ArrayList<>();
// if(dto.getTemplateStaffConfigs().size()>0){
// templateStaffConfigService.deleteBySid(entity.getSid());
// for(TemplateStaffConfig templateStaffConfig:dto.getTemplateStaffConfigs()){
// BeanUtil.copyProperties(dto, templateStaffConfig, "id", "sid");
// templateStaffConfig.setTemplateSid(entity.getSid());
// entitys.add(templateStaffConfig);
// }
// templateStaffConfigService.saveBatch(entitys);
// }
return rb.success().setMsg("修改模板信息成功");
}
public ResultBean deleteById(String sid) {
ResultBean rb = ResultBean.fireFail();
int i=baseMapper.deleteById(sid);
//templateStaffConfigService.deleteBySid(sid);
return rb.success().setMsg("删除模板信息成功");
}
}

2
yxt_supervise/supervise-system/supervise-system-api/src/main/java/com/yxt/supervise/system/sysstaffinfo/SysStaffinfo.java

@ -170,4 +170,6 @@ public class SysStaffinfo extends BaseEntity {
private String postRank;
@ApiModelProperty("身份证地址")
private String idAddrs;
@ApiModelProperty("微信")
private String openId;
}

29
yxt_supervise/supervise-system/supervise-system-api/src/main/java/com/yxt/supervise/system/sysstaffinfo/SysStaffinfoDto.java

@ -32,31 +32,31 @@ public class SysStaffinfoDto implements Dto {
private static final long serialVersionUID = 8637516813924395044L;
@ApiModelProperty(value = "姓名", required = true)
@NotBlank(message = "姓名不能为空")
//@NotBlank(message = "姓名不能为空")
private String name;
@ApiModelProperty(value = "性别key", required = true)
@NotBlank(message = "性别不能为空")
//@NotBlank(message = "性别不能为空")
private String genderKey;
@ApiModelProperty(value = "性别", required = true)
@NotBlank(message = "性别不能为空")
//@NotBlank(message = "性别不能为空")
private String gender;
@ApiModelProperty(value = "员工编号")
private String jobNumber;
@ApiModelProperty(value = "身份证号", required = true)
@Pattern(regexp = "/(^\\d{15}$)|(^\\d{18}$)|(^\\d{17}(\\d|X|x)$)/", message = "请输入正确的身份证号")
@NotBlank(message = "身份证号不能为空")
//@Pattern(regexp = "/(^\\d{15}$)|(^\\d{18}$)|(^\\d{17}(\\d|X|x)$)/", message = "请输入正确的身份证号")
//@NotBlank(message = "身份证号不能为空")
private String idNo;
@ApiModelProperty(value = "证件有效期", required = true)
@NotBlank(message = "证件有效期不能为空")
//@NotBlank(message = "证件有效期不能为空")
private String idTerm;
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@ApiModelProperty("生日")
//@ApiModelProperty("生日")
private Date birthday;
@ApiModelProperty(value = "民族", required = true)
@NotBlank(message = "民族不能为空")
//@NotBlank(message = "民族不能为空")
private String national;
@ApiModelProperty(value = "民族key", required = true)
@NotBlank(message = "民族不能为空")
//@NotBlank(message = "民族不能为空")
private String nationalKey;
@ApiModelProperty(value = "籍贯", required = false)
private String nativePlace;
@ -75,8 +75,8 @@ public class SysStaffinfoDto implements Dto {
@ApiModelProperty(value = "住址", required = false)
private String address;
@ApiModelProperty(value = "手机号", required = true)
@Pattern(regexp = "^((13[0-9])|(14[5,7])|(15[0-3,5-9])|(17[0,3,5-8])|(18[0-9])|(19[1,3,5-9])|166|(147))\\d{8}$", message = "手机号码格式不正确")
@NotBlank(message = "手机号不能为空")
//@Pattern(regexp = "^((13[0-9])|(14[5,7])|(15[0-3,5-9])|(17[0,3,5-8])|(18[0-9])|(19[1,3,5-9])|166|(147))\\d{8}$", message = "手机号码格式不正确")
//@NotBlank(message = "手机号不能为空")
private String mobile;
@ApiModelProperty(value = "邮箱", required = false)
//@Pattern(regexp = "[a-zA-Z0-9]+@[a-zA-Z0-9]+\\.[a-zA-Z0-9]+", message = "邮箱格式不正确")
@ -94,10 +94,10 @@ public class SysStaffinfoDto implements Dto {
@ApiModelProperty(value = "婚姻状况key", required = false)
private String maritalStatusKey;
@ApiModelProperty(value = "员工类型", required = true)
@NotBlank(message = "员工类型不能为空")
//@NotBlank(message = "员工类型不能为空")
private String personType;
@ApiModelProperty(value = "员工类型key", required = true)
@NotBlank(message = "员工类型不能为空")
//@NotBlank(message = "员工类型不能为空")
private String personTypeKey;
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@ApiModelProperty("入职时间")
@ -181,5 +181,6 @@ public class SysStaffinfoDto implements Dto {
private Date quitDate;
@ApiModelProperty(value = "离职原因")
private String quitReason;
@ApiModelProperty(value = "微信")
private String openId;
}

19
yxt_supervise/supervise-system/supervise-system-api/src/main/java/com/yxt/supervise/system/sysstaffinfo/SysStaffinfoFeign.java

@ -7,6 +7,7 @@ import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.ibatis.annotations.Delete;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.cloud.openfeign.SpringQueryMap;
import org.springframework.web.bind.annotation.*;
@ -44,7 +45,12 @@ public interface SysStaffinfoFeign {
@ApiOperation("员工管理分页列表")
@PostMapping("/listPage")
public ResultBean<PagerVo<SysStaffinfoVo>> listPage(@RequestBody PagerQuery<SysStaffinfoQuery> pq);
@ApiOperation("查询所有的员工")
@PostMapping("/getAllStaffinfo")
public ResultBean<List<SysStaffinfoVo>> getAllStaffinfo();
@ApiOperation("员工管理分页列表 新")
@PostMapping("/listPageNew")
public ResultBean<PagerVo<SysStaffinfoVo>> listPageNew(@RequestBody PagerQuery<SysStaffinfoQuery> pq);
/**
* 员工信息新增保存
*
@ -54,6 +60,9 @@ public interface SysStaffinfoFeign {
@ApiOperation("新增保存")
@PostMapping("/save")
public ResultBean save(@Valid @RequestBody SysStaffinfoDto dto);
@ApiOperation("新增保存")
@PostMapping("/saveNew")
public ResultBean saveNew(@Valid @RequestBody SysStaffinfoDto dto);
/**
* 员工信息修改保存
@ -65,7 +74,9 @@ public interface SysStaffinfoFeign {
@ApiOperation("修改保存")
@PostMapping("/update/{sid}")
public ResultBean update(@Valid @RequestBody SysStaffinfoDto dto, @PathVariable("sid") String sid);
@ApiOperation("修改保存")
@PostMapping("/updateNew/{sid}")
public ResultBean updateNew(@Valid @RequestBody SysStaffinfoDto dto, @PathVariable("sid") String sid);
/**
* 员工信息删除操作即离职
*
@ -75,6 +86,10 @@ public interface SysStaffinfoFeign {
@ApiOperation("设置离职")
@PostMapping("/del")
public ResultBean del(@RequestBody SysStaffQuery sysStaffQuery);
@ApiOperation("根据sid删除记录")
@DeleteMapping("/delBySid/{sid}")
@ResponseBody
public ResultBean delBySid(@PathVariable("sid")String sid);
/**
* 员工信息编辑初始化及详情

27
yxt_supervise/supervise-system/supervise-system-api/src/main/java/com/yxt/supervise/system/sysstaffinfo/SysStaffinfoFeignFallback.java

@ -31,22 +31,47 @@ public class SysStaffinfoFeignFallback implements SysStaffinfoFeign {
ResultBean rb = ResultBean.fireFail();
return rb.setMsg("接口anrui_portal/sysstaffinfo/listPage无法访问");
}
@Override
public ResultBean<List<SysStaffinfoVo>> getAllStaffinfo() {
return null;
}
@Override
public ResultBean<PagerVo<SysStaffinfoVo>> listPageNew(PagerQuery<SysStaffinfoQuery> pq) {
ResultBean rb = ResultBean.fireFail();
return rb.setMsg("接口anrui_portal/sysstaffinfo/listPageNew无法访问");
}
@Override
public ResultBean save(SysStaffinfoDto dto) {
return ResultBean.fireFail().setMsg("接口anrui_portal/sysstaffinfo/save无法访问");
}
@Override
public ResultBean saveNew(SysStaffinfoDto dto) {
return null;
}
@Override
public ResultBean update(SysStaffinfoDto dto, String sid) {
return ResultBean.fireFail().setMsg("接口anrui_portal/sysstaffinfo/update无法访问");
}
@Override
public ResultBean updateNew(SysStaffinfoDto dto, String sid) {
return null;
}
@Override
public ResultBean del(SysStaffQuery sysStaffQuery) {
return null;
}
@Override
public ResultBean delBySid(String sid) {
return null;
}
@Override
public ResultBean<SysStaffinfoDetailsVo> fetchBySid(String sid) {

8
yxt_supervise/supervise-system/supervise-system-api/src/main/java/com/yxt/supervise/system/sysstaffinfo/SysStaffinfoQuery.java

@ -37,6 +37,14 @@ public class SysStaffinfoQuery implements Query {
private String joinCompnyDateEnd;
@ApiModelProperty(value = "所在部门sid")
private String orgSid;
@ApiModelProperty(value = "所在部门sid")
private String orgName;
@ApiModelProperty(value = "所在岗位sid")
private String postSid;
@ApiModelProperty(value = "角色sid")
private String roleSid;
@ApiModelProperty(value = "角色sid")
private String roleName;
@ApiModelProperty(value = "用户名")
private String userName;
}

22
yxt_supervise/supervise-system/supervise-system-api/src/main/java/com/yxt/supervise/system/sysstaffinfo/SysStaffinfoVo.java

@ -42,6 +42,28 @@ public class SysStaffinfoVo implements Vo {
private String postName;
@ApiModelProperty(value = "部门sid")
private String orgSid;
@ApiModelProperty(value = "记录是否可用,1:可用,0:不可用")
private String isEnable;
@ApiModelProperty(value = "部门名")
private String departmentName;
@ApiModelProperty(value = "部门sid")
private String departmentSid;
@ApiModelProperty(value = "岗位sid")
private String postSid;
@ApiModelProperty(value = "岗位名称")
private String userName;
@ApiModelProperty(value = "用户sid")
private String userSid;
@ApiModelProperty(value = "角色")
private String roleName;
@ApiModelProperty(value = "类型code")
private String userType;
@ApiModelProperty(value = "用户类型:1监管、2客户、3银行")
private String userTypeKey;
@ApiModelProperty(value = "微信")
private String openId;
@ApiModelProperty(value = "职位")
private String position;
}

8
yxt_supervise/supervise-system/supervise-system-api/src/main/java/com/yxt/supervise/system/sysuser/SysUserDto.java

@ -24,15 +24,15 @@ import javax.validation.constraints.NotBlank;
@ApiModel(value = "用户表 数据传输对象", description = "用户表 数据传输对象")
@Data
public class SysUserDto implements Dto {
@ApiModelProperty("手机号")
@ApiModelProperty("手机号")
private String mobile;
@ApiModelProperty("用户类型:1员工、2客户、3供应商")
@ApiModelProperty("用户类型:1员工、2客户、3供应商")
private Integer userType;
@ApiModelProperty(value = "姓名", required = true)
@NotBlank(message = "姓名不能为空")
//@NotBlank(message = "姓名不能为空")
private String name;
@ApiModelProperty(value = "验证码", required = true)
@NotBlank(message = "验证码不能为空")
//@NotBlank(message = "验证码不能为空")
private String verificationCode;
@ApiModelProperty(value = "部门sid")
private String deptSid;

12
yxt_supervise/supervise-system/supervise-system-biz/src/main/java/com/yxt/supervise/system/sysstaffinfo/SysStaffinfoMapper.java

@ -68,6 +68,14 @@ public interface SysStaffinfoMapper extends BaseMapper<SysStaffinfo> {
* @return
*/
IPage<SysStaffinfoVo> pagerList(IPage<SysStaffinfoQuery> page, @Param(Constants.WRAPPER) Wrapper<SysStaffinfoVo> qw);
/**
* 员工管理分页列表
*
* @param page 分页
* @param qw 查询条件
* @return
*/
IPage<SysStaffinfoVo> pagerListNew(IPage<SysStaffinfoQuery> page, @Param(Constants.WRAPPER) Wrapper<SysStaffinfoVo> qw);
/**
* 根据员工sid和员工手机号码查询员工信息是否已存在
@ -106,6 +114,8 @@ public interface SysStaffinfoMapper extends BaseMapper<SysStaffinfo> {
int updateBySid(@Param("personType") String personType, @Param("personTypeKey") String personTypeKey,
@Param("sid") String sid, @Param("date") Date date, @Param("reason") String reason);
int deleteBySid(@Param("sid") String sid);
/**
* 查询当前分公司下的员工信息
*
@ -114,6 +124,8 @@ public interface SysStaffinfoMapper extends BaseMapper<SysStaffinfo> {
*/
List<PcSysStaffVo> selectStaffList(String orgSid);
List<SysStaffinfoVo> selectAllStaffinfo();
List<Map<String, String>> getStaffName(@Param(Constants.WRAPPER) Wrapper<Map<String, Object>> qw);
List<Map<String, String>> getStaffNameByDeptSid(@Param(Constants.WRAPPER) Wrapper<Map<String, Object>> qw);

181
yxt_supervise/supervise-system/supervise-system-biz/src/main/java/com/yxt/supervise/system/sysstaffinfo/SysStaffinfoMapper.xml

@ -9,21 +9,21 @@
SELECT staff.sid, staff.name, staff.mobile, staff.pinYinName, staff.firstPinYinLabel, user.headImage
FROM sys_staffinfo staff
LEFT JOIN sys_user user
ON staff.sid = user.staffSid
ON staff.sid = user.staffSid
ORDER BY staff.firstPinYinLabel = '#', staff.firstPinYinLabel ASC, staff.pinYinName
</select>
<select id="searchAppContactsPageList"
resultType="com.yxt.supervise.system.sysstaffinfo.SysStaffinfoAppContactsSearchVo">
SELECT staff.sid,
staff.name,
staff.mobile,
staff.position,
user.headImage,
GROUP_CONCAT(org.orgName SEPARATOR '/') orgName
staff.name,
staff.mobile,
staff.position,
user.headImage,
GROUP_CONCAT(org.orgName SEPARATOR '/') orgName
FROM sys_staffinfo staff
LEFT JOIN sys_staff_org org ON org.staffSid = staff.sid
LEFT JOIN sys_user user ON staff.sid = user.staffSid
LEFT JOIN sys_staff_org org ON org.staffSid = staff.sid
LEFT JOIN sys_user user ON staff.sid = user.staffSid
WHERE 1 = 1
<if test="mobileStr != null and mobileStr != ''">
AND staff.mobile LIKE concat('%', #{mobileStr}, '%')
@ -49,8 +49,8 @@
GROUP_CONCAT(org.orgNamePath SEPARATOR '/') orgNamePath
FROM sys_staffinfo staff
LEFT JOIN sys_user user
ON staff.sid = user.staffSid
LEFT JOIN sys_staff_org org ON staff.sid = org.staffSid
ON staff.sid = user.staffSid
LEFT JOIN sys_staff_org org ON staff.sid = org.staffSid
WHERE staff.sid = #{staffSid}
GROUP BY staff.sid
</select>
@ -68,7 +68,7 @@
FROM sys_staff_org org
INNER JOIN sys_staffinfo staff ON org.staffSid = staff.sid
LEFT JOIN sys_user user
ON staff.sid = user.staffSid
ON staff.sid = user.staffSid
WHERE org.orgSid = #{sid}
</select>
<!--根据员工类型key查询员工工号的最大号-->
@ -76,7 +76,7 @@
select *
from sys_staffinfo
order by jobNumber desc
limit 1
limit 1
</select>
<!--根据手机号查询员工是否重复-->
<select id="selectByMobile" resultType="com.yxt.supervise.system.sysstaffinfo.SysStaffinfo">
@ -105,23 +105,79 @@
DATE_FORMAT(si.joinCompnyDate, '%Y-%m-%d') AS joinCompnyDate,
<!--所在部门-->
(select GROUP_CONCAT(orgName SEPARATOR ',') orgName from sys_staff_org so where so.staffSid = si.sid) as
orgName,
orgName,
<!--所在部门sid-->
(select GROUP_CONCAT(orgSid SEPARATOR ',') orgSid from sys_staff_org so where so.staffSid = si.sid) as
orgSid,
orgSid,
<!--岗位-->
(select GROUP_CONCAT(sp.name SEPARATOR ',') postName
from sys_staff_post ssp
left join sys_post sp on
sp.sid =
ssp.postSid
where ssp.staffSid = si.sid
group by ssp.id) as postName
from sys_staff_post ssp
left join sys_post sp on
sp.sid =
ssp.postSid
where ssp.staffSid = si.sid
group by ssp.id) as postName
from sys_staffinfo si
LEFT JOIN sys_staff_org so
ON so.staffSid = si.sid
LEFT JOIN sys_staff_post ssp
ON ssp.staffSid = si.sid
LEFT JOIN sys_staff_org so
ON so.staffSid = si.sid
LEFT JOIN sys_staff_post ssp
ON ssp.staffSid = si.sid
${ew.customSqlSegment}
</select>
<select id="pagerListNew" resultType="com.yxt.supervise.system.sysstaffinfo.SysStaffinfoVo">
SELECT DISTINCT sta.Sid,
user.isEnable,
(
SELECT GROUP_CONCAT(org.name)
FROM sys_staff_org staffOrg
LEFT JOIN sys_organization org ON org.sid = staffOrg.orgSid
WHERE staffOrg.staffSid = user.staffSid
) departmentName,
(
SELECT GROUP_CONCAT(org.sid)
FROM sys_staff_org staffOrg
LEFT JOIN sys_organization org ON org.sid = staffOrg.orgSid
WHERE staffOrg.staffSid = user.staffSid
) sysStaffOrg,
(
SELECT GROUP_CONCAT(post.name)
FROM sys_staff_post staffPost
LEFT JOIN sys_post post ON post.sid = staffPost.postSid
WHERE staffPost.staffSid = user.staffSid
) postName,
(
SELECT GROUP_CONCAT(post.sid)
FROM sys_staff_post staffPost
LEFT JOIN sys_post post ON post.sid = staffPost.postSid
WHERE staffPost.staffSid = user.staffSid
) sysStaffPost,
user.userName,
user.sid userSid,
staff.name,
(
SELECT GROUP_CONCAT(role.name)
FROM sys_user_role user_role
LEFT JOIN sys_role role ON role.sid = user_role.roleSid
WHERE user_role.userSid = USER.sid
) roleName,
-- dict.dictValue userType,
user.userType userTypeKey,
sta.mobile,
sta.position,
sta.openId,
CASE
WHEN user.userType='1' THEN '监管'
WHEN user.userType='2' THEN '客户'
WHEN user.userType='3' THEN '银行'
end userType
FROM sys_staffinfo sta
LEFT JOIN sys_user user on user.staffSid =sta.sid
LEFT JOIN sys_user_role user_role ON user_role.userSid = USER.sid
LEFT JOIN sys_role role ON role.sid = user_role.roleSid
LEFT JOIN dict_common dict ON dict.dictKey = user.userType AND dict.dictType = 'userType'
LEFT JOIN sys_staffinfo staff ON staff.sid = user.staffSid
left JOIN sys_staff_org staorg on staorg.staffSid=sta.sid
left join sys_organization organ on staorg.orgSid=organ.sid
${ew.customSqlSegment}
</select>
<!--根据员工手机号和sid查询员工信息是否已存在-->
@ -250,8 +306,8 @@
isHaveInsurance,
<!--意外险参保:1是,0否-->
case isHaveInsurance
when 1 then '是'
when 0 then '否' end as isHaveInsuranceValue,
when 1 then '是'
when 0 then '否' end as isHaveInsuranceValue,
<!--意外险参保时间-->
DATE_FORMAT(insuranceStartDate, '%Y-%m-%d') as insuranceStartDate,
<!--意外险参保终止日期-->
@ -262,26 +318,26 @@
isHaveAged,
<!--养老:1是,0否-->
case isHaveAged
when 1 then '是'
when 0 then '否' end as isHaveAgedValue,
when 1 then '是'
when 0 then '否' end as isHaveAgedValue,
<!--医疗:1是,0否-->
isHaveMedical,
<!--医疗:1是,0否-->
case isHaveMedical
when 1 then '是'
when 0 then '否' end as isHaveMedicalValue,
when 1 then '是'
when 0 then '否' end as isHaveMedicalValue,
<!--工伤:1是,0否-->
isHaveInjury,
<!--工伤:1是,0否-->
case isHaveInjury
when 1 then '是'
when 0 then '否' end as isHaveInjuryValue,
when 1 then '是'
when 0 then '否' end as isHaveInjuryValue,
<!--失业:1是,0否-->
isHaveUnemploy,
<!--失业:1是,0否-->
case isHaveUnemploy
when 1 then '是'
when 0 then '否' end as isHaveUnemployValue,
when 1 then '是'
when 0 then '否' end as isHaveUnemployValue,
<!--社保参保地-->
insuredPlace,
<!--纸质档案保管地-->
@ -306,6 +362,11 @@
quitReason = #{reason}
where sid = #{sid}
</update>
<delete id="deleteBySid">
delete from sys_staffinfo
where sid = #{sid}
</delete>
<!--查询当前分公司下的员工信息-->
<select id="selectStaffList" resultType="com.yxt.supervise.system.sysstaffinfo.PcSysStaffVo">
select sso.staffSid, si.name staffName
@ -314,6 +375,10 @@
where find_in_set(#{orgSid}, replace(sso.orgSidPath, '/', ','))
</select>
<select id="selectAllStaffinfo" resultType="com.yxt.supervise.system.sysstaffinfo.SysStaffinfoVo">
select *
from sys_staffinfo
</select>
<select id="getStaffName" resultType="java.util.Map">
SELECT DISTINCT ss.sid, ss.name
FROM sys_staffinfo ss
@ -333,23 +398,23 @@
<select id="getUserList" resultType="com.yxt.supervise.system.sysstaffinfo.app.AppSysStaffVo">
select su.sid userSid,
si.name userName,
su.headImage,
si.mobile userMobile,
sso.orgName as department,
sp.name
si.name userName,
su.headImage,
si.mobile userMobile,
sso.orgName as department,
sp.name
from sys_staff_org sso
left join sys_staffinfo si on sso.staffSid = si.sid
left join sys_user su on si.sid = su.staffSid
left join sys_staff_post ssp on si.sid = ssp.staffSid
left join sys_post sp on sp.sid = ssp.postSid
left join sys_staffinfo si on sso.staffSid = si.sid
left join sys_user su on si.sid = su.staffSid
left join sys_staff_post ssp on si.sid = ssp.staffSid
left join sys_post sp on sp.sid = ssp.postSid
<where>
${ew.sqlSegment}
<if test="orgSid != null and orgSid != ''">
and find_in_set(#{orgSid}
, replace (sso.orgSidPath
, '/'
, ','))
, replace (sso.orgSidPath
, '/'
, ','))
</if>
</where>
group by su.sid
@ -357,22 +422,22 @@
<select id="getGressionUserList" resultType="com.yxt.supervise.system.sysstaffinfo.app.AppSysStaffVo">
select su.sid as userSid,
si.name as userName,
su.headImage,
si.mobile as userMobile,
sso.orgName as department,
sp.name
si.name as userName,
su.headImage,
si.mobile as userMobile,
sso.orgName as department,
sp.name
from sys_staff_org sso
left join sys_staffinfo si on sso.staffSid = si.sid
left join sys_user su on si.sid = su.staffSid
left join sys_staff_post ssp on si.sid = ssp.staffSid
left join sys_post sp on sp.sid = ssp.postSid
left join sys_staffinfo si on sso.staffSid = si.sid
left join sys_user su on si.sid = su.staffSid
left join sys_staff_post ssp on si.sid = ssp.staffSid
left join sys_post sp on sp.sid = ssp.postSid
<where>
<if test="userOrgSid != null and userOrgSid != ''">
and find_in_set(#{userOrgSid}
, replace(sso.orgSidPath
, '/'
, ','))
, replace(sso.orgSidPath
, '/'
, ','))
</if>
</where>
</select>

49
yxt_supervise/supervise-system/supervise-system-biz/src/main/java/com/yxt/supervise/system/sysstaffinfo/SysStaffinfoRest.java

@ -1,8 +1,10 @@
package com.yxt.supervise.system.sysstaffinfo;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.supervise.system.sysstaffinfo.app.AppSysStaffQuery;
import com.yxt.supervise.system.sysstaffinfo.app.AppSysStaffVo;
import com.yxt.supervise.system.sysuser.SysUser;
import com.yxt.supervise.system.sysuser.SysUserService;
import com.yxt.common.base.config.component.FileUploadComponent;
import com.yxt.common.base.utils.PagerUtil;
@ -64,7 +66,19 @@ public class SysStaffinfoRest implements SysStaffinfoFeign {
PagerVo<SysStaffinfoVo> pv1 = PagerUtil.pageToVo(page, pv);
return rb.success().setData(pv1);
}
public ResultBean<List<SysStaffinfoVo>> getAllStaffinfo() {
ResultBean<List<SysStaffinfoVo>> rb = ResultBean.fireFail();
List<SysStaffinfoVo> list = sysStaffinfoService.getAllStaffinfo();
return rb.success().setData(list);
}
@Override
public ResultBean<PagerVo<SysStaffinfoVo>> listPageNew(@RequestBody PagerQuery<SysStaffinfoQuery> pq) {
ResultBean<PagerVo<SysStaffinfoVo>> rb = ResultBean.fireFail();
IPage<SysStaffinfoVo> page = sysStaffinfoService.lpagerListNew(pq);
PagerVo<SysStaffinfoVo> pv = new PagerVo<>();
PagerVo<SysStaffinfoVo> pv1 = PagerUtil.pageToVo(page, pv);
return rb.success().setData(pv1);
}
/**
* 员工信息的新增保存
*
@ -80,6 +94,14 @@ public class SysStaffinfoRest implements SysStaffinfoFeign {
}
return rb.success().setMsg(resultBean.getMsg());
}
public ResultBean saveNew(SysStaffinfoDto dto) {
ResultBean rb = ResultBean.fireFail();
ResultBean resultBean = sysStaffinfoService.saveStaffInfoNew(dto);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
return rb.success().setMsg(resultBean.getMsg());
}
/**
* 员工信息的修改保存
@ -97,7 +119,14 @@ public class SysStaffinfoRest implements SysStaffinfoFeign {
}
return rb.success().setMsg(resultBean.getMsg());
}
public ResultBean updateNew(SysStaffinfoDto dto, String sid) {
ResultBean rb = ResultBean.fireFail();
ResultBean resultBean = sysStaffinfoService.updateStaffInfoNew(dto, sid);
if (!resultBean.getSuccess()) {
return rb.setMsg(resultBean.getMsg());
}
return rb.success().setMsg(resultBean.getMsg());
}
/**
* 进行删除操作即设置员工类型为离职类型02的操作
*
@ -123,6 +152,22 @@ public class SysStaffinfoRest implements SysStaffinfoFeign {
return rb.success().setMsg("成功");
}
@Override
public ResultBean delBySid(String sid) {
System.out.println(sid);
ResultBean rb = ResultBean.fireFail();
//删除员工
int i=sysStaffinfoService.delByIds(sid);
//删除用户
SysUser sysUser=sysUserService.getOne(new QueryWrapper<SysUser>().eq("staffSid",sid));
sysUserService.delBySid(sysUser.getSid());
if(i>0){
return rb.success().setMsg("成功");
}else{
return rb.success().setMsg("失败");
}
}
@Override
public ResultBean<SysStaffinfoDetailsVo> fetchBySid(String sid) {
ResultBean rb = ResultBean.fireFail();

571
yxt_supervise/supervise-system/supervise-system-biz/src/main/java/com/yxt/supervise/system/sysstaffinfo/SysStaffinfoService.java

@ -199,7 +199,63 @@ public class SysStaffinfoService extends MybatisBaseService<SysStaffinfoMapper,
}
return sysStaffinfoVoIPage;
}
public List<SysStaffinfoVo> getAllStaffinfo() {
List<SysStaffinfoVo> sysStaffinfoVoList=baseMapper.selectAllStaffinfo();
return sysStaffinfoVoList;
}
public IPage<SysStaffinfoVo> lpagerListNew(PagerQuery<SysStaffinfoQuery> pagerQuery) {
// mybits所用的分页对对象
IPage<SysStaffinfoQuery> page = PagerUtil.queryToPage(pagerQuery);
// mybits所用的查询条件封装类
//QueryWrapper<SysStaffinfoVo> qw = createQueryWrapper(pagerQuery.getParams());
SysStaffinfoQuery query=pagerQuery.getParams();
QueryWrapper<SysStaffinfoVo> qw = new QueryWrapper<>();
if (com.yxt.common.base.utils.StringUtils.isNotBlank(query.getName())) {
qw.like("staff.name", query.getName());
}
if (com.yxt.common.base.utils.StringUtils.isNotBlank(query.getUserName())) {
qw.like("user.userName", query.getUserName());
}
if (com.yxt.common.base.utils.StringUtils.isNotBlank(query.getRoleName())) {
qw.like("role.name", query.getRoleName());
}
if (com.yxt.common.base.utils.StringUtils.isNotBlank(query.getOrgName())) {
qw.like("organ.name", query.getOrgName());
}
if (com.yxt.common.base.utils.StringUtils.isNotBlank(query.getMobile())) {
qw.like("sta.mobile", query.getMobile());
}
// qw.ne("staff.personTypeKey","01");
IPage<SysStaffinfoVo> sysStaffinfoVoIPage = baseMapper.pagerListNew(page, qw);
List<SysStaffinfoVo> records = sysStaffinfoVoIPage.getRecords();
for (SysStaffinfoVo record : records) {
String orgSid = record.getOrgSid();
String orgName = "";
if (StringUtils.isNotBlank(orgSid)) {
String[] split = orgSid.split(",");
for (String s : split) {
//获取本级sid获取本级部门信息
SysOrganization sysOrganization = sysOrganizationService.fetchBySid(s);
if(sysOrganization == null){
sysStaffOrgService.delByOrgSid(s);
}else{
//从本级部门信息中获取上级sid
String psid = sysOrganization.getPsid();
//从本级部门信息中获取本级部门名称
String bjName = sysOrganization.getName();
//获取上级sid获取上级部门信息
SysOrganization sysOrganization1 = sysOrganizationService.fetchBySid(psid);
//从上级部门信息中获取上级部门名称
String sjName = sysOrganization1.getName();
orgName += sjName + "-" + bjName + ",";
}
}
orgName = orgName.substring(0, orgName.length() - 1);
record.setOrgName(orgName);
}
}
return sysStaffinfoVoIPage;
}
public List<AppContactSysOrganizationVo> selectContactsByOrgsid(String sid) {
List<AppContactSysOrganizationVo> list = baseMapper.selectContactsByOrgsid(sid);
list.stream().forEach(vo -> {
@ -235,35 +291,35 @@ public class SysStaffinfoService extends MybatisBaseService<SysStaffinfoMapper,
jobNumber = addOne(jobNumber);
}
//查询员工的手机号是否重复
SysStaffinfo sysStaffinfo1 = baseMapper.selectByMobile(dto.getMobile());
SysUser sysUser1 = sysUserService.selectByMobile(dto.getMobile());
if (sysStaffinfo1 != null || sysUser1 != null) {
return rb.setMsg("已存在手机号为" + dto.getMobile() + "的员工");
}
// SysStaffinfo sysStaffinfo1 = baseMapper.selectByMobile(dto.getMobile());
// SysUser sysUser1 = sysUserService.selectByMobile(dto.getMobile());
// if (sysStaffinfo1 != null || sysUser1 != null) {
// return rb.setMsg("已存在手机号为" + dto.getMobile() + "的员工");
// }
//查询是否存在该身份证号的员工
SysStaffinfo sysStaffinfo2 = baseMapper.selectByIdNo(dto.getIdNo());
if (sysStaffinfo2 != null) {
return rb.setMsg("已存在身份证号为" + dto.getIdNo() + "的员工");
}
// SysStaffinfo sysStaffinfo2 = baseMapper.selectByIdNo(dto.getIdNo());
// if (sysStaffinfo2 != null) {
// return rb.setMsg("已存在身份证号为" + dto.getIdNo() + "的员工");
// }
//判断身份证号出生日期和填写的出生日期是否相同
String idNo = dto.getIdNo();
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMdd");
String birthday = simpleDateFormat.format(dto.getBirthday());
String substring = idNo.substring(6, 14);
if (!birthday.equals(substring)) {
return rb.setMsg("选择的出生日期和身份证出生日期不符,请重新选择");
}
//查询部门和岗位是否为空
if (dto.getSysStaffOrg() == null) {
return rb.setMsg("员工部门信息不能为空");
}
if (dto.getSysStaffPost() == null) {
return rb.setMsg("员工岗位信息不能为空");
}
Date joinCompnyDate = dto.getJoinCompnyDate();
if (joinCompnyDate == null) {
return rb.setMsg("员工入职日期不能为空");
}
// if (!birthday.equals(substring)) {
// return rb.setMsg("选择的出生日期和身份证出生日期不符,请重新选择");
// }
// //查询部门和岗位是否为空
// if (dto.getSysStaffOrg() == null) {
// return rb.setMsg("员工部门信息不能为空");
// }
// if (dto.getSysStaffPost() == null) {
// return rb.setMsg("员工岗位信息不能为空");
// }
// Date joinCompnyDate = dto.getJoinCompnyDate();
// if (joinCompnyDate == null) {
// return rb.setMsg("员工入职日期不能为空");
// }
//添加员工基础信息
SysStaffinfo sysStaffinfo3 = new SysStaffinfo();
dto.fillEntity(sysStaffinfo3);
@ -271,76 +327,76 @@ public class SysStaffinfoService extends MybatisBaseService<SysStaffinfoMapper,
sysStaffinfo3.setPinYinName(PinYinUtils.getPinYinName(dto.getName()));
sysStaffinfo3.setFirstPinYinLabel(PinYinUtils.getCharDuoPinYinChar(dto.getName()));
//是否意外险参保
if (dto.getIsHaveInsurance() != null) {
//意外险参保:是
if (dto.getIsHaveInsurance() == 1) {
//意外险参保地以及意外险参保开始时间和结束时间不能为空
if (dto.getInsuranceStartDate() == null) {
return rb.setMsg("意外险参保时间不能为空");
}
if (dto.getInsuranceEndDate() == null) {
return rb.setMsg("意外险终止时间不能为空");
}
if (StringUtils.isBlank(dto.getInsuranceAddr())) {
return rb.setMsg("意外险参保地不能为空");
}
} else {
sysStaffinfo3.setIsHaveInsurance(0);
sysStaffinfo3.setInsuranceStartDate(null);
sysStaffinfo3.setInsuranceEndDate(null);
sysStaffinfo3.setInsuranceAddr(null);
}
}
if ("01".equals(dto.getPersonTypeKey())) {
if (dto.getQuitDate() == null) {
return rb.setMsg("离职日期不能为空");
}
if (StringUtils.isBlank(dto.getQuitReason())) {
return rb.setMsg("离职原因不能为空");
}
}
//身份证(人像面)
if (StringUtils.isNotBlank(sysStaffinfo3.getIdCardA())) {
if (sysStaffinfo3.getIdCardA().contains(fileUploadComponent.getUrlPrefix())) {
sysStaffinfo3.setIdCardA(sysStaffinfo3.getIdCardA().replace(fileUploadComponent.getUrlPrefix(), ""));
}
}
//身份证(国徽面)
if (StringUtils.isNotBlank(sysStaffinfo3.getIdCardB())) {
if (sysStaffinfo3.getIdCardB().contains(fileUploadComponent.getUrlPrefix())) {
sysStaffinfo3.setIdCardB(sysStaffinfo3.getIdCardB().replace(fileUploadComponent.getUrlPrefix(), ""));
}
}
//学历证书diploma
if (StringUtils.isNotBlank(sysStaffinfo3.getDiploma())) {
if (sysStaffinfo3.getDiploma().contains(fileUploadComponent.getUrlPrefix())) {
sysStaffinfo3.setDiploma(sysStaffinfo3.getDiploma().replace(fileUploadComponent.getUrlPrefix(), ""));
}
}
//学位证书degreeCertificate
if (StringUtils.isNotBlank(sysStaffinfo3.getDegreeCertificate())) {
if (sysStaffinfo3.getDegreeCertificate().contains(fileUploadComponent.getUrlPrefix())) {
sysStaffinfo3.setDegreeCertificate(sysStaffinfo3.getDegreeCertificate().replace(fileUploadComponent.getUrlPrefix(), ""));
}
}
//前公司离职证明leaveCertificate
if (StringUtils.isNotBlank(sysStaffinfo3.getLeaveCertificate())) {
if (sysStaffinfo3.getLeaveCertificate().contains(fileUploadComponent.getUrlPrefix())) {
sysStaffinfo3.setLeaveCertificate(sysStaffinfo3.getLeaveCertificate().replace(fileUploadComponent.getUrlPrefix(), ""));
}
}
//员工照片
if (StringUtils.isNotBlank(sysStaffinfo3.getPhoto())) {
if (sysStaffinfo3.getPhoto().contains(fileUploadComponent.getUrlPrefix())) {
sysStaffinfo3.setPhoto(sysStaffinfo3.getPhoto().replace(fileUploadComponent.getUrlPrefix(), ""));
}
}
// if (dto.getIsHaveInsurance() != null) {
// //意外险参保:是
// if (dto.getIsHaveInsurance() == 1) {
// //意外险参保地以及意外险参保开始时间和结束时间不能为空
// if (dto.getInsuranceStartDate() == null) {
// return rb.setMsg("意外险参保时间不能为空");
// }
// if (dto.getInsuranceEndDate() == null) {
// return rb.setMsg("意外险终止时间不能为空");
// }
// if (StringUtils.isBlank(dto.getInsuranceAddr())) {
// return rb.setMsg("意外险参保地不能为空");
// }
// } else {
// sysStaffinfo3.setIsHaveInsurance(0);
// sysStaffinfo3.setInsuranceStartDate(null);
// sysStaffinfo3.setInsuranceEndDate(null);
// sysStaffinfo3.setInsuranceAddr(null);
// }
// }
// if ("01".equals(dto.getPersonTypeKey())) {
// if (dto.getQuitDate() == null) {
// return rb.setMsg("离职日期不能为空");
// }
// if (StringUtils.isBlank(dto.getQuitReason())) {
// return rb.setMsg("离职原因不能为空");
// }
// }
// //身份证(人像面)
// if (StringUtils.isNotBlank(sysStaffinfo3.getIdCardA())) {
// if (sysStaffinfo3.getIdCardA().contains(fileUploadComponent.getUrlPrefix())) {
// sysStaffinfo3.setIdCardA(sysStaffinfo3.getIdCardA().replace(fileUploadComponent.getUrlPrefix(), ""));
// }
// }
// //身份证(国徽面)
// if (StringUtils.isNotBlank(sysStaffinfo3.getIdCardB())) {
// if (sysStaffinfo3.getIdCardB().contains(fileUploadComponent.getUrlPrefix())) {
// sysStaffinfo3.setIdCardB(sysStaffinfo3.getIdCardB().replace(fileUploadComponent.getUrlPrefix(), ""));
// }
// }
// //学历证书diploma
// if (StringUtils.isNotBlank(sysStaffinfo3.getDiploma())) {
// if (sysStaffinfo3.getDiploma().contains(fileUploadComponent.getUrlPrefix())) {
// sysStaffinfo3.setDiploma(sysStaffinfo3.getDiploma().replace(fileUploadComponent.getUrlPrefix(), ""));
// }
// }
// //学位证书degreeCertificate
// if (StringUtils.isNotBlank(sysStaffinfo3.getDegreeCertificate())) {
// if (sysStaffinfo3.getDegreeCertificate().contains(fileUploadComponent.getUrlPrefix())) {
// sysStaffinfo3.setDegreeCertificate(sysStaffinfo3.getDegreeCertificate().replace(fileUploadComponent.getUrlPrefix(), ""));
// }
// }
// //前公司离职证明leaveCertificate
// if (StringUtils.isNotBlank(sysStaffinfo3.getLeaveCertificate())) {
// if (sysStaffinfo3.getLeaveCertificate().contains(fileUploadComponent.getUrlPrefix())) {
// sysStaffinfo3.setLeaveCertificate(sysStaffinfo3.getLeaveCertificate().replace(fileUploadComponent.getUrlPrefix(), ""));
// }
// }
// //员工照片
// if (StringUtils.isNotBlank(sysStaffinfo3.getPhoto())) {
// if (sysStaffinfo3.getPhoto().contains(fileUploadComponent.getUrlPrefix())) {
// sysStaffinfo3.setPhoto(sysStaffinfo3.getPhoto().replace(fileUploadComponent.getUrlPrefix(), ""));
// }
// }
//增加员工的关联的部门信息
SysStaffOrg sysStaffOrg = new SysStaffOrg();
SysStaffOrgDto sysStaffOrgDto = dto.getSysStaffOrg();
if (StringUtils.isBlank(sysStaffOrgDto.getOrgName())) {
return rb.setMsg("所在部门不能为空");
}
// if (StringUtils.isBlank(sysStaffOrgDto.getOrgName())) {
// return rb.setMsg("所在部门不能为空");
// }
sysStaffOrgDto.fillEntity(sysStaffOrg);
sysStaffOrg.setStaffSid(sysStaffinfo3.getSid());
sysStaffOrg.setManageType("3");
@ -348,9 +404,9 @@ public class SysStaffinfoService extends MybatisBaseService<SysStaffinfoMapper,
//增加员工的关联的岗位信息
SysStaffPost sysStaffPost = new SysStaffPost();
SysStaffPostDto sysStaffPostDto = dto.getSysStaffPost();
if (StringUtils.isBlank(sysStaffPostDto.getPostSid())) {
return rb.setMsg("岗位不能为空");
}
// if (StringUtils.isBlank(sysStaffPostDto.getPostSid())) {
// return rb.setMsg("岗位不能为空");
// }
save(sysStaffinfo3);
//添加用户信息
@ -377,7 +433,167 @@ public class SysStaffinfoService extends MybatisBaseService<SysStaffinfoMapper,
return rb.success().setMsg("添加员工信息成功");
}
public ResultBean saveStaffInfoNew(SysStaffinfoDto dto) {
ResultBean rb = ResultBean.fireFail();
SysRoleVo sysRoleVo = sysRoleService.fetchByName("试用期员工");
// if (sysRoleVo == null) {
// return rb.setMsg("缺少默认试用期员工角色");
// }
//员工类型
//String personTypeKey = dto.getPersonTypeKey();
String jobNumber = "";
SysStaffinfo sysStaffinfo = baseMapper.selectJobNumber();
if (sysStaffinfo == null) {
//无此员工类型的员工
jobNumber = addOne("0000");
} else {
jobNumber = sysStaffinfo.getJobNumber();
jobNumber = addOne(jobNumber);
}
//查询员工的手机号是否重复
// SysStaffinfo sysStaffinfo1 = baseMapper.selectByMobile(dto.getMobile());
// SysUser sysUser1 = sysUserService.selectByMobile(dto.getMobile());
// if (sysStaffinfo1 != null || sysUser1 != null) {
// return rb.setMsg("已存在手机号为" + dto.getMobile() + "的员工");
// }
//查询是否存在该身份证号的员工
// SysStaffinfo sysStaffinfo2 = baseMapper.selectByIdNo(dto.getIdNo());
// if (sysStaffinfo2 != null) {
// return rb.setMsg("已存在身份证号为" + dto.getIdNo() + "的员工");
// }
//判断身份证号出生日期和填写的出生日期是否相同
// String idNo = dto.getIdNo();
// SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMdd");
// String birthday = simpleDateFormat.format(dto.getBirthday());
// String substring = idNo.substring(6, 14);
// if (!birthday.equals(substring)) {
// return rb.setMsg("选择的出生日期和身份证出生日期不符,请重新选择");
// }
// //查询部门和岗位是否为空
// if (dto.getSysStaffOrg() == null) {
// return rb.setMsg("员工部门信息不能为空");
// }
// if (dto.getSysStaffPost() == null) {
// return rb.setMsg("员工岗位信息不能为空");
// }
// Date joinCompnyDate = dto.getJoinCompnyDate();
// if (joinCompnyDate == null) {
// return rb.setMsg("员工入职日期不能为空");
// }
//添加员工基础信息
SysStaffinfo sysStaffinfo3 = new SysStaffinfo();
dto.fillEntity(sysStaffinfo3);
sysStaffinfo3.setJobNumber(jobNumber);
sysStaffinfo3.setPinYinName(PinYinUtils.getPinYinName(dto.getName()));
sysStaffinfo3.setFirstPinYinLabel(PinYinUtils.getCharDuoPinYinChar(dto.getName()));
//是否意外险参保
// if (dto.getIsHaveInsurance() != null) {
// //意外险参保:是
// if (dto.getIsHaveInsurance() == 1) {
// //意外险参保地以及意外险参保开始时间和结束时间不能为空
// if (dto.getInsuranceStartDate() == null) {
// return rb.setMsg("意外险参保时间不能为空");
// }
// if (dto.getInsuranceEndDate() == null) {
// return rb.setMsg("意外险终止时间不能为空");
// }
// if (StringUtils.isBlank(dto.getInsuranceAddr())) {
// return rb.setMsg("意外险参保地不能为空");
// }
// } else {
// sysStaffinfo3.setIsHaveInsurance(0);
// sysStaffinfo3.setInsuranceStartDate(null);
// sysStaffinfo3.setInsuranceEndDate(null);
// sysStaffinfo3.setInsuranceAddr(null);
// }
// }
// if ("01".equals(dto.getPersonTypeKey())) {
// if (dto.getQuitDate() == null) {
// return rb.setMsg("离职日期不能为空");
// }
// if (StringUtils.isBlank(dto.getQuitReason())) {
// return rb.setMsg("离职原因不能为空");
// }
// }
// //身份证(人像面)
// if (StringUtils.isNotBlank(sysStaffinfo3.getIdCardA())) {
// if (sysStaffinfo3.getIdCardA().contains(fileUploadComponent.getUrlPrefix())) {
// sysStaffinfo3.setIdCardA(sysStaffinfo3.getIdCardA().replace(fileUploadComponent.getUrlPrefix(), ""));
// }
// }
// //身份证(国徽面)
// if (StringUtils.isNotBlank(sysStaffinfo3.getIdCardB())) {
// if (sysStaffinfo3.getIdCardB().contains(fileUploadComponent.getUrlPrefix())) {
// sysStaffinfo3.setIdCardB(sysStaffinfo3.getIdCardB().replace(fileUploadComponent.getUrlPrefix(), ""));
// }
// }
// //学历证书diploma
// if (StringUtils.isNotBlank(sysStaffinfo3.getDiploma())) {
// if (sysStaffinfo3.getDiploma().contains(fileUploadComponent.getUrlPrefix())) {
// sysStaffinfo3.setDiploma(sysStaffinfo3.getDiploma().replace(fileUploadComponent.getUrlPrefix(), ""));
// }
// }
// //学位证书degreeCertificate
// if (StringUtils.isNotBlank(sysStaffinfo3.getDegreeCertificate())) {
// if (sysStaffinfo3.getDegreeCertificate().contains(fileUploadComponent.getUrlPrefix())) {
// sysStaffinfo3.setDegreeCertificate(sysStaffinfo3.getDegreeCertificate().replace(fileUploadComponent.getUrlPrefix(), ""));
// }
// }
// //前公司离职证明leaveCertificate
// if (StringUtils.isNotBlank(sysStaffinfo3.getLeaveCertificate())) {
// if (sysStaffinfo3.getLeaveCertificate().contains(fileUploadComponent.getUrlPrefix())) {
// sysStaffinfo3.setLeaveCertificate(sysStaffinfo3.getLeaveCertificate().replace(fileUploadComponent.getUrlPrefix(), ""));
// }
// }
// //员工照片
// if (StringUtils.isNotBlank(sysStaffinfo3.getPhoto())) {
// if (sysStaffinfo3.getPhoto().contains(fileUploadComponent.getUrlPrefix())) {
// sysStaffinfo3.setPhoto(sysStaffinfo3.getPhoto().replace(fileUploadComponent.getUrlPrefix(), ""));
// }
// }
//增加员工的关联的部门信息
SysStaffOrg sysStaffOrg = new SysStaffOrg();
SysStaffOrgDto sysStaffOrgDto = dto.getSysStaffOrg();
// if (StringUtils.isBlank(sysStaffOrgDto.getOrgName())) {
// return rb.setMsg("所在部门不能为空");
// }
//sysStaffOrgDto.fillEntity(sysStaffOrg);
sysStaffOrg.setOrgSid(sysStaffOrgDto.getOrgSid());
sysStaffOrg.setStaffSid(sysStaffinfo3.getSid());
sysStaffOrg.setManageType("3");
sysStaffOrgService.save(sysStaffOrg);
//增加员工的关联的岗位信息
SysStaffPost sysStaffPost = new SysStaffPost();
//SysStaffPostDto sysStaffPostDto = dto.getSysStaffPost();
// if (StringUtils.isBlank(sysStaffPostDto.getPostSid())) {
// return rb.setMsg("岗位不能为空");
// }
save(sysStaffinfo3);
//添加用户信息
SysUser sysUser = new SysUser();
sysUser.setStaffSid(sysStaffinfo3.getSid());
sysUser.setUserName(jobNumber);
sysUser.setMobile(sysStaffinfo3.getMobile());
sysUser.setUserType(1);
String password = sysStaffinfo3.getMobile().substring(5, 11);
String md5 = Encodes.md5(password);
sysUser.setPassword(md5);
boolean isSave = sysUserService.save(sysUser);
//sysStaffPostDto.fillEntity(sysStaffPost);
sysStaffPost.setStaffSid(sysStaffinfo3.getSid());
sysStaffPost.setStartDate(new Date());
//sysStaffPostService.save(sysStaffPost);
if (!isSave) {
return rb.setMsg("添加员工信息失败");
}
SysUserRole sysUserRole = new SysUserRole();
sysUserRole.setUserSid(sysUser.getSid());
sysUserRole.setRoleSid(sysRoleVo.getSid());
sysUserRoleService.save(sysUserRole);
return rb.success().setMsg("添加员工信息成功");
}
/**
* 字符串+1方法该方法将其结尾的整数+1,适用于任何以整数结尾的字符串,不限格式不限分隔符
*
@ -574,6 +790,168 @@ public class SysStaffinfoService extends MybatisBaseService<SysStaffinfoMapper,
return rb.success().setMsg("更新员工信息成功");
}
public ResultBean updateStaffInfoNew(SysStaffinfoDto dto, String sid) {
ResultBean rb = ResultBean.fireFail();
//查询该人员的组织机构list
List<SysStaffOrgVo> sysStaffOrgVos = sysStaffOrgService.selectByStaffS(sid);
List<String> orgList = new ArrayList<>();
if (sysStaffOrgVos.size() > 0) {
for (SysStaffOrgVo vv : sysStaffOrgVos) {
String orgSid = sysStaffOrgService.getOrgByOrgSid(vv.getOrgSid());
SysOrganization sysOrganization = sysOrganizationService.fetchBySid(orgSid);
if (sysOrganization != null) {
orgList.add(orgSid);
} else {
continue;
}
}
}
//根据员工sid查询员工的信息
SysStaffinfo sysStaffinfo = fetchBySid(sid);
// if (sysStaffinfo == null) {
// return rb.setMsg("此员工信息不存在");
// }
// //查询员工的手机号是否重复
// SysStaffinfo sysStaffinfo2 = baseMapper.selectByMobileAndSid(dto.getMobile(), sid);
// if (sysStaffinfo2 != null) {
// return rb.setMsg("已存在手机号为" + dto.getMobile() + "的员工");
// }
// //查询是否存在该身份证号的员工
// SysStaffinfo sysStaffinfo3 = baseMapper.selectByIdNoAndSid(dto.getIdNo(), sid);
// if (sysStaffinfo3 != null) {
// return rb.setMsg("已存在身份证号为" + dto.getIdNo() + "的员工");
// }
//更新用户基础信息
BeanUtil.copyProperties(dto, sysStaffinfo);
sysStaffinfo.setJobNumber(dto.getJobNumber());
sysStaffinfo.setPinYinName(PinYinUtils.getPinYinName(dto.getName()));
sysStaffinfo.setFirstPinYinLabel(PinYinUtils.getCharDuoPinYinChar(dto.getName()));
//是否意外险参保
// if (dto.getIsHaveInsurance() != null) {
// //意外险参保:是
// if (dto.getIsHaveInsurance() == 1) {
// //意外险参保地以及意外险参保开始时间和结束时间不能为空
// if (dto.getInsuranceStartDate() == null) {
// return rb.setMsg("意外险参保时间不能为空");
// }
// if (dto.getInsuranceEndDate() == null) {
// return rb.setMsg("意外险终止时间不能为空");
// }
// if (StringUtils.isBlank(dto.getInsuranceAddr())) {
// return rb.setMsg("意外险参保地不能为空");
// }
// } else {
// sysStaffinfo.setIsHaveInsurance(0);
// sysStaffinfo.setInsuranceStartDate(null);
// sysStaffinfo.setInsuranceEndDate(null);
// sysStaffinfo.setInsuranceAddr(null);
// }
// }
// if ("01".equals(dto.getPersonTypeKey())) {
// if (dto.getQuitDate() == null) {
// return rb.setMsg("离职日期不能为空");
// }
// if (StringUtils.isBlank(dto.getQuitReason())) {
// return rb.setMsg("离职原因不能为空");
// }
// }
// //身份证(人像面)
// if (StringUtils.isNotBlank(sysStaffinfo.getIdCardA())) {
// if (sysStaffinfo.getIdCardA().contains(fileUploadComponent.getUrlPrefix())) {
// sysStaffinfo.setIdCardA(sysStaffinfo.getIdCardA().replace(fileUploadComponent.getUrlPrefix(), ""));
// }
// }
// //身份证(国徽面)
// if (StringUtils.isNotBlank(sysStaffinfo.getIdCardB())) {
// if (sysStaffinfo.getIdCardB().contains(fileUploadComponent.getUrlPrefix())) {
// sysStaffinfo.setIdCardB(sysStaffinfo.getIdCardB().replace(fileUploadComponent.getUrlPrefix(), ""));
// }
// }
// //学历证书diploma
// if (StringUtils.isNotBlank(sysStaffinfo.getDiploma())) {
// if (sysStaffinfo.getDiploma().contains(fileUploadComponent.getUrlPrefix())) {
// sysStaffinfo.setDiploma(sysStaffinfo.getDiploma().replace(fileUploadComponent.getUrlPrefix(), ""));
// }
// }
// //学位证书degreeCertificate
// if (StringUtils.isNotBlank(sysStaffinfo.getDegreeCertificate())) {
// if (sysStaffinfo.getDegreeCertificate().contains(fileUploadComponent.getUrlPrefix())) {
// sysStaffinfo.setDegreeCertificate(sysStaffinfo.getDegreeCertificate().replace(fileUploadComponent.getUrlPrefix(), ""));
// }
// }
// //前公司离职证明leaveCertificate
// if (StringUtils.isNotBlank(sysStaffinfo.getLeaveCertificate())) {
// if (sysStaffinfo.getLeaveCertificate().contains(fileUploadComponent.getUrlPrefix())) {
// sysStaffinfo.setLeaveCertificate(sysStaffinfo.getLeaveCertificate().replace(fileUploadComponent.getUrlPrefix(), ""));
// }
// }
// //员工照片
// if (StringUtils.isNotBlank(sysStaffinfo.getPhoto())) {
// if (sysStaffinfo.getPhoto().contains(fileUploadComponent.getUrlPrefix())) {
// sysStaffinfo.setPhoto(sysStaffinfo.getPhoto().replace(fileUploadComponent.getUrlPrefix(), ""));
// }
// }
//更新用户信息
sysUserService.updateByStaffSid(dto.getJobNumber(), sysStaffinfo.getMobile(), sid);
//更新员工的关联的部门信息
SysStaffOrgDto sysStaffOrgDto = dto.getSysStaffOrg();
int count = sysStaffOrgService.selectByStaffAndOrg(sysStaffOrgDto.getOrgSidPath(), sid, "2");
if (count > 0) {
sysStaffOrgService.deleteByStaffSidAndType(sysStaffOrgDto.getOrgSidPath(), sid, "2");
}
SysStaffOrg sysStaffOrg = sysStaffOrgService.getOrgByStaffSidAndPath(sid,sysStaffOrgDto.getOrgSidPath());
if(sysStaffOrg == null){
ResultBean<SysStaffOrg> staffOrgResultBean = sysStaffOrgService.selectAllByStaffSid(sid);
sysStaffOrg = staffOrgResultBean.getData();
if(sysStaffOrg == null){
sysStaffOrg = new SysStaffOrg();
sysStaffOrg.setStaffSid(sid);
BeanUtil.copyProperties(sysStaffOrgDto,sysStaffOrg);
sysStaffOrg.setManageType("3");
sysStaffOrgService.insert(sysStaffOrg);
}else{
BeanUtil.copyProperties(sysStaffOrgDto,sysStaffOrg);
sysStaffOrg.setManageType("3");
sysStaffOrgService.updateById(sysStaffOrg);
}
}else{
BeanUtil.copyProperties(sysStaffOrgDto,sysStaffOrg);
sysStaffOrg.setManageType("3");
sysStaffOrgService.updateById(sysStaffOrg);
}
//更新员工的关联的岗位信息
// SysStaffPostDetailsVo staffPostDetailsVo = sysStaffPostService.getPostByStaffSid(sid);
// SysStaffPost sysStaffPost = sysStaffPostService.selectByStaffSid(sid, staffPostDetailsVo.getPostSid());
// SysStaffPostDto sysStaffPostDto = dto.getSysStaffPost();
// sysStaffPostService.updateBySid(sysStaffPostDto, sysStaffPost.getSid());
boolean isUpdate = updateById(sysStaffinfo);
// if (!isUpdate) {
// return rb.setMsg("更新员工信息失败");
// }
List<SysStaffOrgVo> sysStaffOrgVos1 = sysStaffOrgService.selectByStaffS(sid);
List<String> orgList1 = new ArrayList<>();
if (sysStaffOrgVos1.size() > 0) {
for (SysStaffOrgVo vv : sysStaffOrgVos1) {
String orgSid = sysStaffOrgService.getOrgByOrgSid(vv.getOrgSid());
SysOrganization sysOrganization = sysOrganizationService.fetchBySid(orgSid);
if (sysOrganization != null) {
orgList1.add(orgSid);
} else {
continue;
}
}
}
List<String> reduce1 = orgList.stream().filter(item -> !orgList1.contains(item)).collect(toList());
// if (reduce1.size() > 0) {
// //根据staffSid查询token
// String token = sysUserService.selectByStaffsid(sid).getToken();
// //清空该token
// redisUtil.remove(token);
// }
return rb.success().setMsg("更新员工信息成功");
}
/**
* 根据员工sid查询员工信息
*
@ -651,7 +1029,12 @@ public class SysStaffinfoService extends MybatisBaseService<SysStaffinfoMapper,
}
return count;
}
public int delByIds(String sid) {
//更新员工的员工状态以及员工工号
int j = baseMapper.deleteBySid(sid);
return j;
}
public ResultBean<List<PcSysStaffVo>> selectStaffList(PcSysStaffQuery pcSysStaffQuery) {
ResultBean<List<PcSysStaffVo>> rb = ResultBean.fireFail();
//根据当前staffSid查询分公司sid

1
yxt_supervise/supervise-system/supervise-system-biz/src/main/java/com/yxt/supervise/system/sysuser/SysUserMapper.java

@ -44,6 +44,7 @@ public interface SysUserMapper extends BaseMapper<SysUser> {
List<SysUserVo> selectListVo();
public int updatePassword(String sid, String password);
public int deleteBySid(String sid);
public int updatePasswordApp(String sid, String password);

128
yxt_supervise/supervise-system/supervise-system-biz/src/main/java/com/yxt/supervise/system/sysuser/SysUserMapper.xml

@ -5,59 +5,59 @@
<!-- ${ew.customSqlSegment} -->
<select id="selectPageVo" resultType="com.yxt.supervise.system.sysuser.SysUserVo">
SELECT DISTINCT user.staffSid,
user.isEnable,
(
SELECT GROUP_CONCAT(org.name)
FROM sys_staff_org staffOrg
LEFT JOIN sys_organization org ON org.sid = staffOrg.orgSid
WHERE staffOrg.staffSid = user.staffSid
) departmentName,
(
SELECT GROUP_CONCAT(org.sid)
FROM sys_staff_org staffOrg
LEFT JOIN sys_organization org ON org.sid = staffOrg.orgSid
WHERE staffOrg.staffSid = user.staffSid
) departmentSid,
(
SELECT GROUP_CONCAT(post.name)
FROM sys_staff_post staffPost
LEFT JOIN sys_post post ON post.sid = staffPost.postSid
WHERE staffPost.staffSid = user.staffSid
) postName,
(
SELECT GROUP_CONCAT(post.sid)
FROM sys_staff_post staffPost
LEFT JOIN sys_post post ON post.sid = staffPost.postSid
WHERE staffPost.staffSid = user.staffSid
) postSid,
user.userName,
user.sid sid,
staff.name,
(
SELECT GROUP_CONCAT(role.name)
FROM sys_user_role user_role
LEFT JOIN sys_role role ON role.sid = user_role.roleSid
WHERE user_role.userSid = USER.sid
) roleName,
dict.dictValue userType,
user.userType userTypeKey
user.isEnable,
(
SELECT GROUP_CONCAT(org.name)
FROM sys_staff_org staffOrg
LEFT JOIN sys_organization org ON org.sid = staffOrg.orgSid
WHERE staffOrg.staffSid = user.staffSid
) departmentName,
(
SELECT GROUP_CONCAT(org.sid)
FROM sys_staff_org staffOrg
LEFT JOIN sys_organization org ON org.sid = staffOrg.orgSid
WHERE staffOrg.staffSid = user.staffSid
) departmentSid,
(
SELECT GROUP_CONCAT(post.name)
FROM sys_staff_post staffPost
LEFT JOIN sys_post post ON post.sid = staffPost.postSid
WHERE staffPost.staffSid = user.staffSid
) postName,
(
SELECT GROUP_CONCAT(post.sid)
FROM sys_staff_post staffPost
LEFT JOIN sys_post post ON post.sid = staffPost.postSid
WHERE staffPost.staffSid = user.staffSid
) postSid,
user.userName,
user.sid sid,
staff.name,
(
SELECT GROUP_CONCAT(role.name)
FROM sys_user_role user_role
LEFT JOIN sys_role role ON role.sid = user_role.roleSid
WHERE user_role.userSid = USER.sid
) roleName,
dict.dictValue userType,
user.userType userTypeKey
FROM sys_user USER
LEFT JOIN sys_user_role user_role ON user_role.userSid = USER.sid
LEFT JOIN sys_role role ON role.sid = user_role.roleSid
LEFT JOIN dict_common dict ON dict.dictKey = user.userType AND dict.dictType = 'userType'
LEFT JOIN sys_staffinfo staff ON staff.sid = user.staffSid
LEFT JOIN sys_user_role user_role ON user_role.userSid = USER.sid
LEFT JOIN sys_role role ON role.sid = user_role.roleSid
LEFT JOIN dict_common dict ON dict.dictKey = user.userType AND dict.dictType = 'userType'
LEFT JOIN sys_staffinfo staff ON staff.sid = user.staffSid
<where>
${ew.sqlSegment}
<if test="orgName != null and orgName != ''">
AND (SELECT GROUP_CONCAT(org.name)
FROM sys_staff_org staffOrg
LEFT JOIN sys_organization org ON org.sid = staffOrg.orgSid
WHERE staffOrg.staffSid = user.staffSid)
LIKE concat('%',
#{orgName}
,
'%'
)
FROM sys_staff_org staffOrg
LEFT JOIN sys_organization org ON org.sid = staffOrg.orgSid
WHERE staffOrg.staffSid = user.staffSid)
LIKE concat('%',
#{orgName}
,
'%'
)
</if>
<if test="userName != null and userName != ''">
and
@ -146,6 +146,10 @@
set password=#{param2}
where sid = #{param1}
</update>
<delete id="deleteBySid">
delete from sys_user
where sid = #{sid}
</delete>
<update id="updatePasswordApp">
update sys_user
set password=#{param2}
@ -203,7 +207,7 @@
LEFT JOIN sys_organization so ON sso.orgSid = so.sid
WHERE su.sid = #{userSid}
ORDER BY sso.id
LIMIT 1
LIMIT 1
</select>
<!--根据用户的sid查询用户的组织信息:多个时取第一个-->
<select id="selectUserInfoByUserSid" resultType="com.yxt.supervise.system.sysuser.SysUserInfoVo">
@ -214,7 +218,7 @@
LEFT JOIN sys_organization so ON sso.orgSid = so.sid
WHERE su.sid = #{userSid}
ORDER BY sso.id
LIMIT 1
LIMIT 1
</select>
<select id="selectUserInfoByUserSidOne" resultType="com.yxt.supervise.system.sysuser.SysUserInfoVo">
@ -226,7 +230,7 @@
WHERE su.sid = #{userSid}
and find_in_set(#{orgSid}, replace(sso.orgSidPath, '/', ','))
ORDER BY sso.id
LIMIT 1
LIMIT 1
</select>
<!--根据员工sid更新用户表的工号以及手机号-->
<update id="updateByStaffSid">
@ -271,12 +275,12 @@
<select id="getUserByRole" resultType="com.yxt.supervise.system.sysuser.SysUserVo">
select distinct si.name, su.sid, su.staffSid<!--, so.orgSidPath-->
from sys_user_role sr
left join sys_user su on sr.userSid = su.sid
left join sys_staffinfo si on si.sid = su.staffSid
left join sys_staff_org so on so.staffSid = si.sid
left join sys_user su on sr.userSid = su.sid
left join sys_staffinfo si on si.sid = su.staffSid
left join sys_staff_org so on so.staffSid = si.sid
where sr.roleSid = #{roleSid}
and find_in_set(#{levelOrgSid}, replace(so.orgSidPath, '/', ','))
and si.personTypeKey != '01'
and find_in_set(#{levelOrgSid}, replace(so.orgSidPath, '/', ','))
and si.personTypeKey != '01'
</select>
<select id="getUserByOrgSid" resultType="java.util.Map">
@ -302,7 +306,7 @@
<select id="fetchBySids" resultType="com.yxt.supervise.system.sysuser.SysUserVo">
select su.*, ss.name
from sys_user su
left join sys_staffinfo ss on su.staffSid = ss.sid
left join sys_staffinfo ss on su.staffSid = ss.sid
where su.sid in
<foreach collection="sids" index="index" item="item" open="(" separator="," close=")">
#{item}
@ -340,12 +344,12 @@
<select id="getUserMessageByRole" resultType="com.yxt.supervise.system.sysuser.SysUserVo">
select distinct si.name, su.sid, su.staffSid,so.orgSidPath
from sys_user_role sr
left join sys_user su on sr.userSid = su.sid
left join sys_staffinfo si on si.sid = su.staffSid
left join sys_staff_org so on so.staffSid = si.sid
left join sys_user su on sr.userSid = su.sid
left join sys_staffinfo si on si.sid = su.staffSid
left join sys_staff_org so on so.staffSid = si.sid
where sr.roleSid = #{roleSid}
and find_in_set(#{levelOrgSid}, replace(so.orgSidPath, '/', ','))
and si.personTypeKey != '01' AND so.`manageType`=3 and su.sid in
and find_in_set(#{levelOrgSid}, replace(so.orgSidPath, '/', ','))
and si.personTypeKey != '01' AND so.`manageType`=3 and su.sid in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")">
#{item}
</foreach>

21
yxt_supervise/supervise-system/supervise-system-biz/src/main/java/com/yxt/supervise/system/sysuser/SysUserRest.java

@ -115,16 +115,17 @@ public class SysUserRest implements SysUserFeign {
if (userType == 0) {
return new ResultBean<SysUserVo>().fail().setMsg("用户类型不能为空");
}
if (StringUtils.isBlank(verificationCode)) {
return new ResultBean<SysUserVo>().fail().setMsg("验证码不能为空");
} else {
Map<String, Object> stringObjectMap = sysUserService.mobileValidateRegister(mobile, verificationCode);
String code = stringObjectMap.get("code").toString();
String details = stringObjectMap.get("details").toString();
if (Tools.CODE_FAIL.equals(code)) {
return ResultBean.fireFail().setMessage(details).setMsg(details);
}
}
//取消验证码
// if (StringUtils.isBlank(verificationCode)) {
// return new ResultBean<SysUserVo>().fail().setMsg("验证码不能为空");
// } else {
// Map<String, Object> stringObjectMap = sysUserService.mobileValidateRegister(mobile, verificationCode);
// String code = stringObjectMap.get("code").toString();
// String details = stringObjectMap.get("details").toString();
// if (Tools.CODE_FAIL.equals(code)) {
// return ResultBean.fireFail().setMessage(details).setMsg(details);
// }
// }
//"15097329653";
String password = mobile.substring(5, 11);
String md5 = Encodes.md5(password);

Loading…
Cancel
Save