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; 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, public String authGet(@RequestParam(name = "signature", required = false) String signature,
@RequestParam(name = "timestamp", required = false) String timestamp, @RequestParam(name = "timestamp", required = false) String timestamp,
@RequestParam(name = "nonce", required = false) String nonce, @RequestParam(name = "nonce", required = false) String nonce,
@RequestParam(name = "echostr", required = false) String echostr) { @RequestParam(name = "echostr", required = false) String echostr) {
if (StringUtils.isAnyBlank(signature, timestamp, nonce, echostr)) { if (StringUtils.isAnyBlank(signature, timestamp, nonce, echostr)) {
throw new IllegalArgumentException("请求参数非法,请核实!"); throw new IllegalArgumentException("请求参数非法,请核实!");
} }
if (WeixinCheckoutUtil.checkSignature( signature, timestamp, nonce)) { if (WeixinCheckoutUtil.checkSignature( signature, timestamp, nonce)) {
return echostr; return echostr;
} }
return "非法请求"; return "非法请求";
} }
@PostMapping("/sendMessage") @PostMapping("/sendMessage")
public void sendMessage(@RequestBody WeChatTemplateMsg data) throws Exception { 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> <groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-annotation</artifactId> <artifactId>mybatis-plus-annotation</artifactId>
</dependency> </dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>easyexcel-core</artifactId>
<version>3.2.1</version>
<scope>compile</scope>
</dependency>
</dependencies> </dependencies>
<distributionManagement> <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> <groupId>com.yxt</groupId>
<artifactId>yxt-common-base</artifactId> <artifactId>yxt-common-base</artifactId>
<version>0.0.1</version> <version>0.0.1</version>
<!-- <exclusions>--> <!-- <exclusions>-->
<!-- <exclusion>--> <!-- <exclusion>-->
<!-- <groupId>org.apache.poi</groupId>--> <!-- <groupId>org.apache.poi</groupId>-->
<!-- <artifactId>poi-ooxml</artifactId>--> <!-- <artifactId>poi-ooxml</artifactId>-->
<!-- </exclusion>--> <!-- </exclusion>-->
<!-- <exclusion>--> <!-- <exclusion>-->
<!-- <groupId>org.apache.poi</groupId>--> <!-- <groupId>org.apache.poi</groupId>-->
<!-- <artifactId>poi</artifactId>--> <!-- <artifactId>poi</artifactId>-->
<!-- </exclusion>--> <!-- </exclusion>-->
<!-- <exclusion>--> <!-- <exclusion>-->
<!-- <groupId>commons-io</groupId>--> <!-- <groupId>commons-io</groupId>-->
<!-- <artifactId>commons-io</artifactId>--> <!-- <artifactId>commons-io</artifactId>-->
<!-- </exclusion>--> <!-- </exclusion>-->
<!-- <exclusion>--> <!-- <exclusion>-->
<!-- <groupId>org.apache.axis</groupId>--> <!-- <groupId>org.apache.axis</groupId>-->
<!-- <artifactId>axis</artifactId>--> <!-- <artifactId>axis</artifactId>-->
<!-- </exclusion>--> <!-- </exclusion>-->
<!-- </exclusions>--> <!-- </exclusions>-->
</dependency> </dependency>
<dependency> <dependency>
<artifactId>supervise-portal-api</artifactId> <artifactId>supervise-portal-api</artifactId>
@ -47,7 +47,7 @@
</dependency> </dependency>
<dependency> <dependency>
<groupId>com.alibaba.cloud</groupId> <groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
</dependency> </dependency>
<!--mysql--> <!--mysql-->
@ -130,16 +130,54 @@
<artifactId>fastcsv</artifactId> <artifactId>fastcsv</artifactId>
<version>2.2.1</version> <version>2.2.1</version>
</dependency> </dependency>
<!-- <dependency>--> <!-- <dependency>-->
<!-- <groupId>org.apache.poi</groupId>--> <!-- <groupId>org.apache.poi</groupId>-->
<!-- <artifactId>poi-ooxml</artifactId>--> <!-- <artifactId>poi-ooxml</artifactId>-->
<!-- <version>5.2.3</version>--> <!-- <version>5.2.3</version>-->
<!-- </dependency>--> <!-- </dependency>-->
<!-- <dependency>--> <!-- <dependency>-->
<!-- <groupId>xerces</groupId>--> <!-- <groupId>xerces</groupId>-->
<!-- <artifactId>xercesImpl</artifactId>--> <!-- <artifactId>xercesImpl</artifactId>-->
<!-- <version>2.12.2</version>--> <!-- <version>2.12.2</version>-->
<!-- </dependency>--> <!-- </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> </dependencies>
<build> <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.baomidou.mybatisplus.core.toolkit.Constants;
import com.yxt.supervise.portal.api.gdsalesreport.GdSalesReport; import com.yxt.supervise.portal.api.gdsalesreport.GdSalesReport;
import com.yxt.supervise.portal.api.gdsalesreport.GdSalesReportVo; 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.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
@ -18,10 +20,15 @@ import java.util.List;
@Mapper @Mapper
public interface GdSalesReportMapper extends BaseMapper<GdSalesReport> { public interface GdSalesReportMapper extends BaseMapper<GdSalesReport> {
IPage<GdSalesReportVo> getStoreSales(IPage<GdSalesReport> page, @Param(Constants.WRAPPER) Wrapper<GdSalesReport> qw); List<GdSalesReportVo> getStoreSales(@Param(Constants.WRAPPER) Wrapper<GdSalesReport> qw);
IPage<GdSalesReportVo> getGoodsSalesReport(IPage<GdSalesReport> page, @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>--> <!-- <where> ${ew.sqlSegment} </where>-->
<!-- ${ew.customSqlSegment} --> <!-- ${ew.customSqlSegment} -->
<select id="getStoreSales" resultType="com.yxt.supervise.portal.api.gdsalesreport.GdSalesReportVo"> <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 SELECT
ROUND( SUM( s.saleNum * s.salePrice ), 2 ) AS salesVolume, ROUND( SUM( s.saleNum * s.salePrice ), 2 ) AS salesVolume,
i.NAME AS storeName i.NAME AS storeName
@ -22,8 +34,17 @@
LEFT JOIN store_info i ON i.`code` = s.storeCode LEFT JOIN store_info i ON i.`code` = s.storeCode
<where> ${ew.sqlSegment} </where> <where> ${ew.sqlSegment} </where>
ORDER BY i. name 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>
<select id="getStoreSalesReportYc" resultType="com.yxt.supervise.portal.api.gdsalesreport.GdSalesReportVo"> <select id="getStoreSalesReportYc" resultType="com.yxt.supervise.portal.api.gdsalesreport.GdSalesReportVo">
SELECT SELECT
ROUND( SUM( s.saleNum * s.salePrice ), 2 ) AS salesVolume, ROUND( SUM( s.saleNum * s.salePrice ), 2 ) AS salesVolume,
@ -34,12 +55,34 @@
<where> ${ew.sqlSegment} </where> <where> ${ew.sqlSegment} </where>
GROUP BY GROUP BY
s.storeCode 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>
<select id="getGoodsSalesReportYc" resultType="com.yxt.supervise.portal.api.gdsalesreport.GdSalesReportVo"> <select id="getGoodsSalesReportYc" resultType="com.yxt.supervise.portal.api.gdsalesreport.GdSalesReportVo">
SELECT 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 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 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 LEFT JOIN store_info i ON i.`code` = s.storeCode
<where> ${ew.sqlSegment} </where> <where> ${ew.sqlSegment} </where>
ORDER BY i. name 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; 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.query.PagerQuery;
import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo; import com.yxt.supervise.portal.api.gdsalesreport.*;
import com.yxt.supervise.portal.api.gdsalesreport.GdSalesReport; import io.swagger.annotations.ApiOperation;
import com.yxt.supervise.portal.api.gdsalesreport.GdSalesReportQuery; import org.apache.catalina.connector.Response;
import com.yxt.supervise.portal.api.gdsalesreport.GdSalesReportVo; import org.apache.commons.compress.utils.IOUtils;
import com.yxt.supervise.portal.biz.gdsales.GdSalesQuery; import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; 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 * @author wangpengfei
* @date 2023/4/14 11:05 * @date 2023/4/14 11:05
@ -27,29 +44,210 @@ public class GdSalesReportRest {
@PostMapping("/getStoreSalesReport") @PostMapping("/getStoreSalesReport")
public ResultBean<GdSalesReportVo> getStoreSalesReport(@RequestBody PagerQuery<GdSalesReportQuery> pq){ public ResultBean<GdSalesReportVo> getStoreSalesReport(@RequestBody PagerQuery<GdSalesReportQuery> pq){
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
PagerVo<GdSalesReportVo> pv = gdSalesReportService.getStoreSalesReport(pq); List<GdSalesReportVo> pv = gdSalesReportService.getStoreSalesReport(pq);
return rb.success().setData(pv); 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") @PostMapping("/getGoodsSalesReport")
public ResultBean<GdSalesReportVo> getGoodsSalesReport(@RequestBody PagerQuery<GdSalesReportQuery> pq){ public ResultBean<GdSalesReportVo> getGoodsSalesReport(@RequestBody PagerQuery<GdSalesReportQuery> pq){
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
PagerVo<GdSalesReportVo> pv = gdSalesReportService.getGoodsSalesReport(pq); List<GdSalesReportVo> pv = gdSalesReportService.getGoodsSalesReport(pq);
return rb.success().setData(pv); 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") @PostMapping("/getStoreSalesReportYc")
public ResultBean<GdSalesReportVo> getStoreSalesReportYc(@RequestBody PagerQuery<GdSalesReportQuery> pq){ public ResultBean<GdSalesReportVo> getStoreSalesReportYc(@RequestBody PagerQuery<GdSalesReportQuery> pq){
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
PagerVo<GdSalesReportVo> pv = gdSalesReportService.getStoreSalesReportYc(pq); List<GdSalesReportVo> pv = gdSalesReportService.getStoreSalesReportYc(pq);
return rb.success().setData(pv); 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") @PostMapping("/getGoodsSalesReportYc")
public ResultBean<GdSalesReportVo> getGoodsSalesReportYc(@RequestBody PagerQuery<GdSalesReportQuery> pq){ public ResultBean<GdSalesReportVo> getGoodsSalesReportYc(@RequestBody PagerQuery<GdSalesReportQuery> pq){
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
PagerVo<GdSalesReportVo> pv = gdSalesReportService.getGoodsSalesReportYc(pq); List<GdSalesReportVo> pv = gdSalesReportService.getGoodsSalesReportYc(pq);
return rb.success().setData(pv); 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.query.PagerQuery;
import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo; import com.yxt.common.core.vo.PagerVo;
import com.yxt.supervise.portal.api.gdsalesreport.GdSalesReport; import com.yxt.supervise.portal.api.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.biz.gdsales.GdSalesQuery;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
@ -26,7 +24,7 @@ public class GdSalesReportService extends MybatisBaseService<GdSalesReportMapper
@Autowired @Autowired
GdSalesReportMapper gdSalesReportMapper; GdSalesReportMapper gdSalesReportMapper;
public PagerVo<GdSalesReportVo> getStoreSalesReport(PagerQuery<GdSalesReportQuery> pq) { public List<GdSalesReportVo> getStoreSalesReport(PagerQuery<GdSalesReportQuery> pq) {
GdSalesReportQuery query = pq.getParams(); GdSalesReportQuery query = pq.getParams();
QueryWrapper<GdSalesReport> qw = new QueryWrapper<>(); QueryWrapper<GdSalesReport> qw = new QueryWrapper<>();
if(query!=null) { 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()); qw.eq("STR_TO_DATE(s.dataDate,'%Y-%m-%d')", query.getDate());
} }
} }
IPage<GdSalesReport> page = PagerUtil.queryToPage(pq); //IPage<GdSalesReport> page = PagerUtil.queryToPage(pq);
IPage<GdSalesReportVo> pagging = baseMapper.getStoreSales(page, qw); List<GdSalesReportVo> pagging = baseMapper.getStoreSales(qw);
PagerVo<GdSalesReportVo> p = PagerUtil.pageToVo(pagging, null); //PagerVo<GdSalesReportVo> p = PagerUtil.pageToVo(pagging, null);
return p; return pagging;
} }
public PagerVo<GdSalesReportVo> getGoodsSalesReport(PagerQuery<GdSalesReportQuery> pq) { public List<StoreSalesReportExcelVo> getAllStoreSalesReport(PagerQuery<GdSalesReportQuery> pq) {
GdSalesReportQuery query = pq.getParams(); GdSalesReportQuery query = pq.getParams();
QueryWrapper<GdSalesReport> qw = new QueryWrapper<>(); QueryWrapper<GdSalesReport> qw = new QueryWrapper<>();
if(query!=null) { 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()); qw.eq("STR_TO_DATE(s.dataDate,'%Y-%m-%d')", query.getDate());
} }
} }
IPage<GdSalesReport> page = PagerUtil.queryToPage(pq); List<StoreSalesReportExcelVo> pagging = baseMapper.getAllStoreSalesReport(qw);
IPage<GdSalesReportVo> pagging = baseMapper.getGoodsSalesReport(page, qw); return pagging;
PagerVo<GdSalesReportVo> p = PagerUtil.pageToVo(pagging, null);
return p;
} }
public PagerVo<GdSalesReportVo> getStoreSalesReportYc(PagerQuery<GdSalesReportQuery> pq) { public List<GdSalesReportVo> getGoodsSalesReport(PagerQuery<GdSalesReportQuery> pq) {
GdSalesReportQuery query = pq.getParams(); GdSalesReportQuery query = pq.getParams();
QueryWrapper<GdSalesReport> qw = new QueryWrapper<>(); QueryWrapper<GdSalesReport> qw = new QueryWrapper<>();
if(query!=null) { 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()); qw.eq("STR_TO_DATE(s.dataDate,'%Y-%m-%d')", query.getDate());
} }
} }
IPage<GdSalesReport> page = PagerUtil.queryToPage(pq); //IPage<GdSalesReport> page = PagerUtil.queryToPage(pq);
IPage<GdSalesReportVo> pagging = baseMapper.getStoreSalesReportYc(page, qw); List<GdSalesReportVo> pagging = baseMapper.getGoodsSalesReport(qw);
PagerVo<GdSalesReportVo> p = PagerUtil.pageToVo(pagging, null); //PagerVo<GdSalesReportVo> p = PagerUtil.pageToVo(pagging, null);
return p; return pagging;
} }
public PagerVo<GdSalesReportVo> getGoodsSalesReportYc(PagerQuery<GdSalesReportQuery> pq) { public List<GoodsSalesReportExcelVo> getAllGoodsSalesReport(PagerQuery<GdSalesReportQuery> pq) {
GdSalesReportQuery query = pq.getParams(); GdSalesReportQuery query = pq.getParams();
QueryWrapper<GdSalesReport> qw = new QueryWrapper<>(); QueryWrapper<GdSalesReport> qw = new QueryWrapper<>();
if(query!=null) { 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()); qw.eq("STR_TO_DATE(s.dataDate,'%Y-%m-%d')", query.getDate());
} }
} }
IPage<GdSalesReport> page = PagerUtil.queryToPage(pq); List<GoodsSalesReportExcelVo> pagging = baseMapper.getAllGoodsSalesReport(qw);
IPage<GdSalesReportVo> pagging = baseMapper.getGoodsSalesReportYc(page, qw); return pagging;
PagerVo<GdSalesReportVo> p = PagerUtil.pageToVo(pagging, null);
return p;
} }
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; private String postRank;
@ApiModelProperty("身份证地址") @ApiModelProperty("身份证地址")
private String idAddrs; 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; private static final long serialVersionUID = 8637516813924395044L;
@ApiModelProperty(value = "姓名", required = true) @ApiModelProperty(value = "姓名", required = true)
@NotBlank(message = "姓名不能为空") //@NotBlank(message = "姓名不能为空")
private String name; private String name;
@ApiModelProperty(value = "性别key", required = true) @ApiModelProperty(value = "性别key", required = true)
@NotBlank(message = "性别不能为空") //@NotBlank(message = "性别不能为空")
private String genderKey; private String genderKey;
@ApiModelProperty(value = "性别", required = true) @ApiModelProperty(value = "性别", required = true)
@NotBlank(message = "性别不能为空") //@NotBlank(message = "性别不能为空")
private String gender; private String gender;
@ApiModelProperty(value = "员工编号") @ApiModelProperty(value = "员工编号")
private String jobNumber; private String jobNumber;
@ApiModelProperty(value = "身份证号", required = true) @ApiModelProperty(value = "身份证号", required = true)
@Pattern(regexp = "/(^\\d{15}$)|(^\\d{18}$)|(^\\d{17}(\\d|X|x)$)/", message = "请输入正确的身份证号") //@Pattern(regexp = "/(^\\d{15}$)|(^\\d{18}$)|(^\\d{17}(\\d|X|x)$)/", message = "请输入正确的身份证号")
@NotBlank(message = "身份证号不能为空") //@NotBlank(message = "身份证号不能为空")
private String idNo; private String idNo;
@ApiModelProperty(value = "证件有效期", required = true) @ApiModelProperty(value = "证件有效期", required = true)
@NotBlank(message = "证件有效期不能为空") //@NotBlank(message = "证件有效期不能为空")
private String idTerm; private String idTerm;
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@ApiModelProperty("生日") //@ApiModelProperty("生日")
private Date birthday; private Date birthday;
@ApiModelProperty(value = "民族", required = true) @ApiModelProperty(value = "民族", required = true)
@NotBlank(message = "民族不能为空") //@NotBlank(message = "民族不能为空")
private String national; private String national;
@ApiModelProperty(value = "民族key", required = true) @ApiModelProperty(value = "民族key", required = true)
@NotBlank(message = "民族不能为空") //@NotBlank(message = "民族不能为空")
private String nationalKey; private String nationalKey;
@ApiModelProperty(value = "籍贯", required = false) @ApiModelProperty(value = "籍贯", required = false)
private String nativePlace; private String nativePlace;
@ -75,8 +75,8 @@ public class SysStaffinfoDto implements Dto {
@ApiModelProperty(value = "住址", required = false) @ApiModelProperty(value = "住址", required = false)
private String address; private String address;
@ApiModelProperty(value = "手机号", required = true) @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 = "手机号码格式不正确") //@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 = "手机号不能为空") //@NotBlank(message = "手机号不能为空")
private String mobile; private String mobile;
@ApiModelProperty(value = "邮箱", required = false) @ApiModelProperty(value = "邮箱", required = false)
//@Pattern(regexp = "[a-zA-Z0-9]+@[a-zA-Z0-9]+\\.[a-zA-Z0-9]+", message = "邮箱格式不正确") //@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) @ApiModelProperty(value = "婚姻状况key", required = false)
private String maritalStatusKey; private String maritalStatusKey;
@ApiModelProperty(value = "员工类型", required = true) @ApiModelProperty(value = "员工类型", required = true)
@NotBlank(message = "员工类型不能为空") //@NotBlank(message = "员工类型不能为空")
private String personType; private String personType;
@ApiModelProperty(value = "员工类型key", required = true) @ApiModelProperty(value = "员工类型key", required = true)
@NotBlank(message = "员工类型不能为空") //@NotBlank(message = "员工类型不能为空")
private String personTypeKey; private String personTypeKey;
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
@ApiModelProperty("入职时间") @ApiModelProperty("入职时间")
@ -181,5 +181,6 @@ public class SysStaffinfoDto implements Dto {
private Date quitDate; private Date quitDate;
@ApiModelProperty(value = "离职原因") @ApiModelProperty(value = "离职原因")
private String quitReason; 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 com.yxt.common.core.vo.PagerVo;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.apache.ibatis.annotations.Delete;
import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.cloud.openfeign.SpringQueryMap; import org.springframework.cloud.openfeign.SpringQueryMap;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@ -44,7 +45,12 @@ public interface SysStaffinfoFeign {
@ApiOperation("员工管理分页列表") @ApiOperation("员工管理分页列表")
@PostMapping("/listPage") @PostMapping("/listPage")
public ResultBean<PagerVo<SysStaffinfoVo>> listPage(@RequestBody PagerQuery<SysStaffinfoQuery> pq); 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("新增保存") @ApiOperation("新增保存")
@PostMapping("/save") @PostMapping("/save")
public ResultBean save(@Valid @RequestBody SysStaffinfoDto dto); 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("修改保存") @ApiOperation("修改保存")
@PostMapping("/update/{sid}") @PostMapping("/update/{sid}")
public ResultBean update(@Valid @RequestBody SysStaffinfoDto dto, @PathVariable("sid") String 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("设置离职") @ApiOperation("设置离职")
@PostMapping("/del") @PostMapping("/del")
public ResultBean del(@RequestBody SysStaffQuery sysStaffQuery); 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(); ResultBean rb = ResultBean.fireFail();
return rb.setMsg("接口anrui_portal/sysstaffinfo/listPage无法访问"); 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 @Override
public ResultBean save(SysStaffinfoDto dto) { public ResultBean save(SysStaffinfoDto dto) {
return ResultBean.fireFail().setMsg("接口anrui_portal/sysstaffinfo/save无法访问"); return ResultBean.fireFail().setMsg("接口anrui_portal/sysstaffinfo/save无法访问");
} }
@Override
public ResultBean saveNew(SysStaffinfoDto dto) {
return null;
}
@Override @Override
public ResultBean update(SysStaffinfoDto dto, String sid) { public ResultBean update(SysStaffinfoDto dto, String sid) {
return ResultBean.fireFail().setMsg("接口anrui_portal/sysstaffinfo/update无法访问"); return ResultBean.fireFail().setMsg("接口anrui_portal/sysstaffinfo/update无法访问");
} }
@Override
public ResultBean updateNew(SysStaffinfoDto dto, String sid) {
return null;
}
@Override @Override
public ResultBean del(SysStaffQuery sysStaffQuery) { public ResultBean del(SysStaffQuery sysStaffQuery) {
return null; return null;
} }
@Override
public ResultBean delBySid(String sid) {
return null;
}
@Override @Override
public ResultBean<SysStaffinfoDetailsVo> fetchBySid(String sid) { 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; private String joinCompnyDateEnd;
@ApiModelProperty(value = "所在部门sid") @ApiModelProperty(value = "所在部门sid")
private String orgSid; private String orgSid;
@ApiModelProperty(value = "所在部门sid")
private String orgName;
@ApiModelProperty(value = "所在岗位sid") @ApiModelProperty(value = "所在岗位sid")
private String postSid; 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; private String postName;
@ApiModelProperty(value = "部门sid") @ApiModelProperty(value = "部门sid")
private String orgSid; 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 = "用户表 数据传输对象") @ApiModel(value = "用户表 数据传输对象", description = "用户表 数据传输对象")
@Data @Data
public class SysUserDto implements Dto { public class SysUserDto implements Dto {
@ApiModelProperty("手机号") @ApiModelProperty("手机号")
private String mobile; private String mobile;
@ApiModelProperty("用户类型:1员工、2客户、3供应商") @ApiModelProperty("用户类型:1员工、2客户、3供应商")
private Integer userType; private Integer userType;
@ApiModelProperty(value = "姓名", required = true) @ApiModelProperty(value = "姓名", required = true)
@NotBlank(message = "姓名不能为空") //@NotBlank(message = "姓名不能为空")
private String name; private String name;
@ApiModelProperty(value = "验证码", required = true) @ApiModelProperty(value = "验证码", required = true)
@NotBlank(message = "验证码不能为空") //@NotBlank(message = "验证码不能为空")
private String verificationCode; private String verificationCode;
@ApiModelProperty(value = "部门sid") @ApiModelProperty(value = "部门sid")
private String deptSid; 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 * @return
*/ */
IPage<SysStaffinfoVo> pagerList(IPage<SysStaffinfoQuery> page, @Param(Constants.WRAPPER) Wrapper<SysStaffinfoVo> qw); 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和员工手机号码查询员工信息是否已存在 * 根据员工sid和员工手机号码查询员工信息是否已存在
@ -106,6 +114,8 @@ public interface SysStaffinfoMapper extends BaseMapper<SysStaffinfo> {
int updateBySid(@Param("personType") String personType, @Param("personTypeKey") String personTypeKey, int updateBySid(@Param("personType") String personType, @Param("personTypeKey") String personTypeKey,
@Param("sid") String sid, @Param("date") Date date, @Param("reason") String reason); @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<PcSysStaffVo> selectStaffList(String orgSid);
List<SysStaffinfoVo> selectAllStaffinfo();
List<Map<String, String>> getStaffName(@Param(Constants.WRAPPER) Wrapper<Map<String, Object>> qw); 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); 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 SELECT staff.sid, staff.name, staff.mobile, staff.pinYinName, staff.firstPinYinLabel, user.headImage
FROM sys_staffinfo staff FROM sys_staffinfo staff
LEFT JOIN sys_user user LEFT JOIN sys_user user
ON staff.sid = user.staffSid ON staff.sid = user.staffSid
ORDER BY staff.firstPinYinLabel = '#', staff.firstPinYinLabel ASC, staff.pinYinName ORDER BY staff.firstPinYinLabel = '#', staff.firstPinYinLabel ASC, staff.pinYinName
</select> </select>
<select id="searchAppContactsPageList" <select id="searchAppContactsPageList"
resultType="com.yxt.supervise.system.sysstaffinfo.SysStaffinfoAppContactsSearchVo"> resultType="com.yxt.supervise.system.sysstaffinfo.SysStaffinfoAppContactsSearchVo">
SELECT staff.sid, SELECT staff.sid,
staff.name, staff.name,
staff.mobile, staff.mobile,
staff.position, staff.position,
user.headImage, user.headImage,
GROUP_CONCAT(org.orgName SEPARATOR '/') orgName GROUP_CONCAT(org.orgName SEPARATOR '/') orgName
FROM sys_staffinfo staff FROM sys_staffinfo staff
LEFT JOIN sys_staff_org org ON org.staffSid = staff.sid LEFT JOIN sys_staff_org org ON org.staffSid = staff.sid
LEFT JOIN sys_user user ON staff.sid = user.staffSid LEFT JOIN sys_user user ON staff.sid = user.staffSid
WHERE 1 = 1 WHERE 1 = 1
<if test="mobileStr != null and mobileStr != ''"> <if test="mobileStr != null and mobileStr != ''">
AND staff.mobile LIKE concat('%', #{mobileStr}, '%') AND staff.mobile LIKE concat('%', #{mobileStr}, '%')
@ -49,8 +49,8 @@
GROUP_CONCAT(org.orgNamePath SEPARATOR '/') orgNamePath GROUP_CONCAT(org.orgNamePath SEPARATOR '/') orgNamePath
FROM sys_staffinfo staff FROM sys_staffinfo staff
LEFT JOIN sys_user user LEFT JOIN sys_user user
ON staff.sid = user.staffSid ON staff.sid = user.staffSid
LEFT JOIN sys_staff_org org ON staff.sid = org.staffSid LEFT JOIN sys_staff_org org ON staff.sid = org.staffSid
WHERE staff.sid = #{staffSid} WHERE staff.sid = #{staffSid}
GROUP BY staff.sid GROUP BY staff.sid
</select> </select>
@ -68,7 +68,7 @@
FROM sys_staff_org org FROM sys_staff_org org
INNER JOIN sys_staffinfo staff ON org.staffSid = staff.sid INNER JOIN sys_staffinfo staff ON org.staffSid = staff.sid
LEFT JOIN sys_user user LEFT JOIN sys_user user
ON staff.sid = user.staffSid ON staff.sid = user.staffSid
WHERE org.orgSid = #{sid} WHERE org.orgSid = #{sid}
</select> </select>
<!--根据员工类型key查询员工工号的最大号--> <!--根据员工类型key查询员工工号的最大号-->
@ -76,7 +76,7 @@
select * select *
from sys_staffinfo from sys_staffinfo
order by jobNumber desc order by jobNumber desc
limit 1 limit 1
</select> </select>
<!--根据手机号查询员工是否重复--> <!--根据手机号查询员工是否重复-->
<select id="selectByMobile" resultType="com.yxt.supervise.system.sysstaffinfo.SysStaffinfo"> <select id="selectByMobile" resultType="com.yxt.supervise.system.sysstaffinfo.SysStaffinfo">
@ -105,23 +105,79 @@
DATE_FORMAT(si.joinCompnyDate, '%Y-%m-%d') AS joinCompnyDate, 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 (select GROUP_CONCAT(orgName SEPARATOR ',') orgName from sys_staff_org so where so.staffSid = si.sid) as
orgName, orgName,
<!--所在部门sid--> <!--所在部门sid-->
(select GROUP_CONCAT(orgSid SEPARATOR ',') orgSid from sys_staff_org so where so.staffSid = si.sid) as (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 (select GROUP_CONCAT(sp.name SEPARATOR ',') postName
from sys_staff_post ssp from sys_staff_post ssp
left join sys_post sp on left join sys_post sp on
sp.sid = sp.sid =
ssp.postSid ssp.postSid
where ssp.staffSid = si.sid where ssp.staffSid = si.sid
group by ssp.id) as postName group by ssp.id) as postName
from sys_staffinfo si from sys_staffinfo si
LEFT JOIN sys_staff_org so LEFT JOIN sys_staff_org so
ON so.staffSid = si.sid ON so.staffSid = si.sid
LEFT JOIN sys_staff_post ssp LEFT JOIN sys_staff_post ssp
ON ssp.staffSid = si.sid 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} ${ew.customSqlSegment}
</select> </select>
<!--根据员工手机号和sid查询员工信息是否已存在--> <!--根据员工手机号和sid查询员工信息是否已存在-->
@ -250,8 +306,8 @@
isHaveInsurance, isHaveInsurance,
<!--意外险参保:1是,0否--> <!--意外险参保:1是,0否-->
case isHaveInsurance case isHaveInsurance
when 1 then '是' when 1 then '是'
when 0 then '否' end as isHaveInsuranceValue, when 0 then '否' end as isHaveInsuranceValue,
<!--意外险参保时间--> <!--意外险参保时间-->
DATE_FORMAT(insuranceStartDate, '%Y-%m-%d') as insuranceStartDate, DATE_FORMAT(insuranceStartDate, '%Y-%m-%d') as insuranceStartDate,
<!--意外险参保终止日期--> <!--意外险参保终止日期-->
@ -262,26 +318,26 @@
isHaveAged, isHaveAged,
<!--养老:1是,0否--> <!--养老:1是,0否-->
case isHaveAged case isHaveAged
when 1 then '是' when 1 then '是'
when 0 then '否' end as isHaveAgedValue, when 0 then '否' end as isHaveAgedValue,
<!--医疗:1是,0否--> <!--医疗:1是,0否-->
isHaveMedical, isHaveMedical,
<!--医疗:1是,0否--> <!--医疗:1是,0否-->
case isHaveMedical case isHaveMedical
when 1 then '是' when 1 then '是'
when 0 then '否' end as isHaveMedicalValue, when 0 then '否' end as isHaveMedicalValue,
<!--工伤:1是,0否--> <!--工伤:1是,0否-->
isHaveInjury, isHaveInjury,
<!--工伤:1是,0否--> <!--工伤:1是,0否-->
case isHaveInjury case isHaveInjury
when 1 then '是' when 1 then '是'
when 0 then '否' end as isHaveInjuryValue, when 0 then '否' end as isHaveInjuryValue,
<!--失业:1是,0否--> <!--失业:1是,0否-->
isHaveUnemploy, isHaveUnemploy,
<!--失业:1是,0否--> <!--失业:1是,0否-->
case isHaveUnemploy case isHaveUnemploy
when 1 then '是' when 1 then '是'
when 0 then '否' end as isHaveUnemployValue, when 0 then '否' end as isHaveUnemployValue,
<!--社保参保地--> <!--社保参保地-->
insuredPlace, insuredPlace,
<!--纸质档案保管地--> <!--纸质档案保管地-->
@ -306,6 +362,11 @@
quitReason = #{reason} quitReason = #{reason}
where sid = #{sid} where sid = #{sid}
</update> </update>
<delete id="deleteBySid">
delete from sys_staffinfo
where sid = #{sid}
</delete>
<!--查询当前分公司下的员工信息--> <!--查询当前分公司下的员工信息-->
<select id="selectStaffList" resultType="com.yxt.supervise.system.sysstaffinfo.PcSysStaffVo"> <select id="selectStaffList" resultType="com.yxt.supervise.system.sysstaffinfo.PcSysStaffVo">
select sso.staffSid, si.name staffName select sso.staffSid, si.name staffName
@ -314,6 +375,10 @@
where find_in_set(#{orgSid}, replace(sso.orgSidPath, '/', ',')) where find_in_set(#{orgSid}, replace(sso.orgSidPath, '/', ','))
</select> </select>
<select id="selectAllStaffinfo" resultType="com.yxt.supervise.system.sysstaffinfo.SysStaffinfoVo">
select *
from sys_staffinfo
</select>
<select id="getStaffName" resultType="java.util.Map"> <select id="getStaffName" resultType="java.util.Map">
SELECT DISTINCT ss.sid, ss.name SELECT DISTINCT ss.sid, ss.name
FROM sys_staffinfo ss FROM sys_staffinfo ss
@ -333,23 +398,23 @@
<select id="getUserList" resultType="com.yxt.supervise.system.sysstaffinfo.app.AppSysStaffVo"> <select id="getUserList" resultType="com.yxt.supervise.system.sysstaffinfo.app.AppSysStaffVo">
select su.sid userSid, select su.sid userSid,
si.name userName, si.name userName,
su.headImage, su.headImage,
si.mobile userMobile, si.mobile userMobile,
sso.orgName as department, sso.orgName as department,
sp.name sp.name
from sys_staff_org sso from sys_staff_org sso
left join sys_staffinfo si on sso.staffSid = si.sid left join sys_staffinfo si on sso.staffSid = si.sid
left join sys_user su on si.sid = su.staffSid left join sys_user su on si.sid = su.staffSid
left join sys_staff_post ssp on si.sid = ssp.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_post sp on sp.sid = ssp.postSid
<where> <where>
${ew.sqlSegment} ${ew.sqlSegment}
<if test="orgSid != null and orgSid != ''"> <if test="orgSid != null and orgSid != ''">
and find_in_set(#{orgSid} and find_in_set(#{orgSid}
, replace (sso.orgSidPath , replace (sso.orgSidPath
, '/' , '/'
, ',')) , ','))
</if> </if>
</where> </where>
group by su.sid group by su.sid
@ -357,22 +422,22 @@
<select id="getGressionUserList" resultType="com.yxt.supervise.system.sysstaffinfo.app.AppSysStaffVo"> <select id="getGressionUserList" resultType="com.yxt.supervise.system.sysstaffinfo.app.AppSysStaffVo">
select su.sid as userSid, select su.sid as userSid,
si.name as userName, si.name as userName,
su.headImage, su.headImage,
si.mobile as userMobile, si.mobile as userMobile,
sso.orgName as department, sso.orgName as department,
sp.name sp.name
from sys_staff_org sso from sys_staff_org sso
left join sys_staffinfo si on sso.staffSid = si.sid left join sys_staffinfo si on sso.staffSid = si.sid
left join sys_user su on si.sid = su.staffSid left join sys_user su on si.sid = su.staffSid
left join sys_staff_post ssp on si.sid = ssp.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_post sp on sp.sid = ssp.postSid
<where> <where>
<if test="userOrgSid != null and userOrgSid != ''"> <if test="userOrgSid != null and userOrgSid != ''">
and find_in_set(#{userOrgSid} and find_in_set(#{userOrgSid}
, replace(sso.orgSidPath , replace(sso.orgSidPath
, '/' , '/'
, ',')) , ','))
</if> </if>
</where> </where>
</select> </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; package com.yxt.supervise.system.sysstaffinfo;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yxt.supervise.system.sysstaffinfo.app.AppSysStaffQuery; import com.yxt.supervise.system.sysstaffinfo.app.AppSysStaffQuery;
import com.yxt.supervise.system.sysstaffinfo.app.AppSysStaffVo; 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.supervise.system.sysuser.SysUserService;
import com.yxt.common.base.config.component.FileUploadComponent; import com.yxt.common.base.config.component.FileUploadComponent;
import com.yxt.common.base.utils.PagerUtil; import com.yxt.common.base.utils.PagerUtil;
@ -64,7 +66,19 @@ public class SysStaffinfoRest implements SysStaffinfoFeign {
PagerVo<SysStaffinfoVo> pv1 = PagerUtil.pageToVo(page, pv); PagerVo<SysStaffinfoVo> pv1 = PagerUtil.pageToVo(page, pv);
return rb.success().setData(pv1); 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()); 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()); 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的操作 * 进行删除操作即设置员工类型为离职类型02的操作
* *
@ -123,6 +152,22 @@ public class SysStaffinfoRest implements SysStaffinfoFeign {
return rb.success().setMsg("成功"); 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 @Override
public ResultBean<SysStaffinfoDetailsVo> fetchBySid(String sid) { public ResultBean<SysStaffinfoDetailsVo> fetchBySid(String sid) {
ResultBean rb = ResultBean.fireFail(); 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; 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) { public List<AppContactSysOrganizationVo> selectContactsByOrgsid(String sid) {
List<AppContactSysOrganizationVo> list = baseMapper.selectContactsByOrgsid(sid); List<AppContactSysOrganizationVo> list = baseMapper.selectContactsByOrgsid(sid);
list.stream().forEach(vo -> { list.stream().forEach(vo -> {
@ -235,35 +291,35 @@ public class SysStaffinfoService extends MybatisBaseService<SysStaffinfoMapper,
jobNumber = addOne(jobNumber); jobNumber = addOne(jobNumber);
} }
//查询员工的手机号是否重复 //查询员工的手机号是否重复
SysStaffinfo sysStaffinfo1 = baseMapper.selectByMobile(dto.getMobile()); // SysStaffinfo sysStaffinfo1 = baseMapper.selectByMobile(dto.getMobile());
SysUser sysUser1 = sysUserService.selectByMobile(dto.getMobile()); // SysUser sysUser1 = sysUserService.selectByMobile(dto.getMobile());
if (sysStaffinfo1 != null || sysUser1 != null) { // if (sysStaffinfo1 != null || sysUser1 != null) {
return rb.setMsg("已存在手机号为" + dto.getMobile() + "的员工"); // return rb.setMsg("已存在手机号为" + dto.getMobile() + "的员工");
} // }
//查询是否存在该身份证号的员工 //查询是否存在该身份证号的员工
SysStaffinfo sysStaffinfo2 = baseMapper.selectByIdNo(dto.getIdNo()); // SysStaffinfo sysStaffinfo2 = baseMapper.selectByIdNo(dto.getIdNo());
if (sysStaffinfo2 != null) { // if (sysStaffinfo2 != null) {
return rb.setMsg("已存在身份证号为" + dto.getIdNo() + "的员工"); // return rb.setMsg("已存在身份证号为" + dto.getIdNo() + "的员工");
} // }
//判断身份证号出生日期和填写的出生日期是否相同 //判断身份证号出生日期和填写的出生日期是否相同
String idNo = dto.getIdNo(); String idNo = dto.getIdNo();
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMdd"); SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMdd");
String birthday = simpleDateFormat.format(dto.getBirthday()); String birthday = simpleDateFormat.format(dto.getBirthday());
String substring = idNo.substring(6, 14); String substring = idNo.substring(6, 14);
if (!birthday.equals(substring)) { // if (!birthday.equals(substring)) {
return rb.setMsg("选择的出生日期和身份证出生日期不符,请重新选择"); // return rb.setMsg("选择的出生日期和身份证出生日期不符,请重新选择");
} // }
//查询部门和岗位是否为空 // //查询部门和岗位是否为空
if (dto.getSysStaffOrg() == null) { // if (dto.getSysStaffOrg() == null) {
return rb.setMsg("员工部门信息不能为空"); // return rb.setMsg("员工部门信息不能为空");
} // }
if (dto.getSysStaffPost() == null) { // if (dto.getSysStaffPost() == null) {
return rb.setMsg("员工岗位信息不能为空"); // return rb.setMsg("员工岗位信息不能为空");
} // }
Date joinCompnyDate = dto.getJoinCompnyDate(); // Date joinCompnyDate = dto.getJoinCompnyDate();
if (joinCompnyDate == null) { // if (joinCompnyDate == null) {
return rb.setMsg("员工入职日期不能为空"); // return rb.setMsg("员工入职日期不能为空");
} // }
//添加员工基础信息 //添加员工基础信息
SysStaffinfo sysStaffinfo3 = new SysStaffinfo(); SysStaffinfo sysStaffinfo3 = new SysStaffinfo();
dto.fillEntity(sysStaffinfo3); dto.fillEntity(sysStaffinfo3);
@ -271,76 +327,76 @@ public class SysStaffinfoService extends MybatisBaseService<SysStaffinfoMapper,
sysStaffinfo3.setPinYinName(PinYinUtils.getPinYinName(dto.getName())); sysStaffinfo3.setPinYinName(PinYinUtils.getPinYinName(dto.getName()));
sysStaffinfo3.setFirstPinYinLabel(PinYinUtils.getCharDuoPinYinChar(dto.getName())); sysStaffinfo3.setFirstPinYinLabel(PinYinUtils.getCharDuoPinYinChar(dto.getName()));
//是否意外险参保 //是否意外险参保
if (dto.getIsHaveInsurance() != null) { // if (dto.getIsHaveInsurance() != null) {
//意外险参保:是 // //意外险参保:是
if (dto.getIsHaveInsurance() == 1) { // if (dto.getIsHaveInsurance() == 1) {
//意外险参保地以及意外险参保开始时间和结束时间不能为空 // //意外险参保地以及意外险参保开始时间和结束时间不能为空
if (dto.getInsuranceStartDate() == null) { // if (dto.getInsuranceStartDate() == null) {
return rb.setMsg("意外险参保时间不能为空"); // return rb.setMsg("意外险参保时间不能为空");
} // }
if (dto.getInsuranceEndDate() == null) { // if (dto.getInsuranceEndDate() == null) {
return rb.setMsg("意外险终止时间不能为空"); // return rb.setMsg("意外险终止时间不能为空");
} // }
if (StringUtils.isBlank(dto.getInsuranceAddr())) { // if (StringUtils.isBlank(dto.getInsuranceAddr())) {
return rb.setMsg("意外险参保地不能为空"); // return rb.setMsg("意外险参保地不能为空");
} // }
} else { // } else {
sysStaffinfo3.setIsHaveInsurance(0); // sysStaffinfo3.setIsHaveInsurance(0);
sysStaffinfo3.setInsuranceStartDate(null); // sysStaffinfo3.setInsuranceStartDate(null);
sysStaffinfo3.setInsuranceEndDate(null); // sysStaffinfo3.setInsuranceEndDate(null);
sysStaffinfo3.setInsuranceAddr(null); // sysStaffinfo3.setInsuranceAddr(null);
} // }
} // }
if ("01".equals(dto.getPersonTypeKey())) { // if ("01".equals(dto.getPersonTypeKey())) {
if (dto.getQuitDate() == null) { // if (dto.getQuitDate() == null) {
return rb.setMsg("离职日期不能为空"); // return rb.setMsg("离职日期不能为空");
} // }
if (StringUtils.isBlank(dto.getQuitReason())) { // if (StringUtils.isBlank(dto.getQuitReason())) {
return rb.setMsg("离职原因不能为空"); // return rb.setMsg("离职原因不能为空");
} // }
} // }
//身份证(人像面) // //身份证(人像面)
if (StringUtils.isNotBlank(sysStaffinfo3.getIdCardA())) { // if (StringUtils.isNotBlank(sysStaffinfo3.getIdCardA())) {
if (sysStaffinfo3.getIdCardA().contains(fileUploadComponent.getUrlPrefix())) { // if (sysStaffinfo3.getIdCardA().contains(fileUploadComponent.getUrlPrefix())) {
sysStaffinfo3.setIdCardA(sysStaffinfo3.getIdCardA().replace(fileUploadComponent.getUrlPrefix(), "")); // sysStaffinfo3.setIdCardA(sysStaffinfo3.getIdCardA().replace(fileUploadComponent.getUrlPrefix(), ""));
} // }
} // }
//身份证(国徽面) // //身份证(国徽面)
if (StringUtils.isNotBlank(sysStaffinfo3.getIdCardB())) { // if (StringUtils.isNotBlank(sysStaffinfo3.getIdCardB())) {
if (sysStaffinfo3.getIdCardB().contains(fileUploadComponent.getUrlPrefix())) { // if (sysStaffinfo3.getIdCardB().contains(fileUploadComponent.getUrlPrefix())) {
sysStaffinfo3.setIdCardB(sysStaffinfo3.getIdCardB().replace(fileUploadComponent.getUrlPrefix(), "")); // sysStaffinfo3.setIdCardB(sysStaffinfo3.getIdCardB().replace(fileUploadComponent.getUrlPrefix(), ""));
} // }
} // }
//学历证书diploma // //学历证书diploma
if (StringUtils.isNotBlank(sysStaffinfo3.getDiploma())) { // if (StringUtils.isNotBlank(sysStaffinfo3.getDiploma())) {
if (sysStaffinfo3.getDiploma().contains(fileUploadComponent.getUrlPrefix())) { // if (sysStaffinfo3.getDiploma().contains(fileUploadComponent.getUrlPrefix())) {
sysStaffinfo3.setDiploma(sysStaffinfo3.getDiploma().replace(fileUploadComponent.getUrlPrefix(), "")); // sysStaffinfo3.setDiploma(sysStaffinfo3.getDiploma().replace(fileUploadComponent.getUrlPrefix(), ""));
} // }
} // }
//学位证书degreeCertificate // //学位证书degreeCertificate
if (StringUtils.isNotBlank(sysStaffinfo3.getDegreeCertificate())) { // if (StringUtils.isNotBlank(sysStaffinfo3.getDegreeCertificate())) {
if (sysStaffinfo3.getDegreeCertificate().contains(fileUploadComponent.getUrlPrefix())) { // if (sysStaffinfo3.getDegreeCertificate().contains(fileUploadComponent.getUrlPrefix())) {
sysStaffinfo3.setDegreeCertificate(sysStaffinfo3.getDegreeCertificate().replace(fileUploadComponent.getUrlPrefix(), "")); // sysStaffinfo3.setDegreeCertificate(sysStaffinfo3.getDegreeCertificate().replace(fileUploadComponent.getUrlPrefix(), ""));
} // }
} // }
//前公司离职证明leaveCertificate // //前公司离职证明leaveCertificate
if (StringUtils.isNotBlank(sysStaffinfo3.getLeaveCertificate())) { // if (StringUtils.isNotBlank(sysStaffinfo3.getLeaveCertificate())) {
if (sysStaffinfo3.getLeaveCertificate().contains(fileUploadComponent.getUrlPrefix())) { // if (sysStaffinfo3.getLeaveCertificate().contains(fileUploadComponent.getUrlPrefix())) {
sysStaffinfo3.setLeaveCertificate(sysStaffinfo3.getLeaveCertificate().replace(fileUploadComponent.getUrlPrefix(), "")); // sysStaffinfo3.setLeaveCertificate(sysStaffinfo3.getLeaveCertificate().replace(fileUploadComponent.getUrlPrefix(), ""));
} // }
} // }
//员工照片 // //员工照片
if (StringUtils.isNotBlank(sysStaffinfo3.getPhoto())) { // if (StringUtils.isNotBlank(sysStaffinfo3.getPhoto())) {
if (sysStaffinfo3.getPhoto().contains(fileUploadComponent.getUrlPrefix())) { // if (sysStaffinfo3.getPhoto().contains(fileUploadComponent.getUrlPrefix())) {
sysStaffinfo3.setPhoto(sysStaffinfo3.getPhoto().replace(fileUploadComponent.getUrlPrefix(), "")); // sysStaffinfo3.setPhoto(sysStaffinfo3.getPhoto().replace(fileUploadComponent.getUrlPrefix(), ""));
} // }
} // }
//增加员工的关联的部门信息 //增加员工的关联的部门信息
SysStaffOrg sysStaffOrg = new SysStaffOrg(); SysStaffOrg sysStaffOrg = new SysStaffOrg();
SysStaffOrgDto sysStaffOrgDto = dto.getSysStaffOrg(); SysStaffOrgDto sysStaffOrgDto = dto.getSysStaffOrg();
if (StringUtils.isBlank(sysStaffOrgDto.getOrgName())) { // if (StringUtils.isBlank(sysStaffOrgDto.getOrgName())) {
return rb.setMsg("所在部门不能为空"); // return rb.setMsg("所在部门不能为空");
} // }
sysStaffOrgDto.fillEntity(sysStaffOrg); sysStaffOrgDto.fillEntity(sysStaffOrg);
sysStaffOrg.setStaffSid(sysStaffinfo3.getSid()); sysStaffOrg.setStaffSid(sysStaffinfo3.getSid());
sysStaffOrg.setManageType("3"); sysStaffOrg.setManageType("3");
@ -348,9 +404,9 @@ public class SysStaffinfoService extends MybatisBaseService<SysStaffinfoMapper,
//增加员工的关联的岗位信息 //增加员工的关联的岗位信息
SysStaffPost sysStaffPost = new SysStaffPost(); SysStaffPost sysStaffPost = new SysStaffPost();
SysStaffPostDto sysStaffPostDto = dto.getSysStaffPost(); SysStaffPostDto sysStaffPostDto = dto.getSysStaffPost();
if (StringUtils.isBlank(sysStaffPostDto.getPostSid())) { // if (StringUtils.isBlank(sysStaffPostDto.getPostSid())) {
return rb.setMsg("岗位不能为空"); // return rb.setMsg("岗位不能为空");
} // }
save(sysStaffinfo3); save(sysStaffinfo3);
//添加用户信息 //添加用户信息
@ -377,7 +433,167 @@ public class SysStaffinfoService extends MybatisBaseService<SysStaffinfoMapper,
return rb.success().setMsg("添加员工信息成功"); 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,适用于任何以整数结尾的字符串,不限格式不限分隔符 * 字符串+1方法该方法将其结尾的整数+1,适用于任何以整数结尾的字符串,不限格式不限分隔符
* *
@ -574,6 +790,168 @@ public class SysStaffinfoService extends MybatisBaseService<SysStaffinfoMapper,
return rb.success().setMsg("更新员工信息成功"); 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查询员工信息 * 根据员工sid查询员工信息
* *
@ -651,7 +1029,12 @@ public class SysStaffinfoService extends MybatisBaseService<SysStaffinfoMapper,
} }
return count; return count;
} }
public int delByIds(String sid) {
//更新员工的员工状态以及员工工号
int j = baseMapper.deleteBySid(sid);
return j;
}
public ResultBean<List<PcSysStaffVo>> selectStaffList(PcSysStaffQuery pcSysStaffQuery) { public ResultBean<List<PcSysStaffVo>> selectStaffList(PcSysStaffQuery pcSysStaffQuery) {
ResultBean<List<PcSysStaffVo>> rb = ResultBean.fireFail(); ResultBean<List<PcSysStaffVo>> rb = ResultBean.fireFail();
//根据当前staffSid查询分公司sid //根据当前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(); List<SysUserVo> selectListVo();
public int updatePassword(String sid, String password); public int updatePassword(String sid, String password);
public int deleteBySid(String sid);
public int updatePasswordApp(String sid, String password); 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} --> <!-- ${ew.customSqlSegment} -->
<select id="selectPageVo" resultType="com.yxt.supervise.system.sysuser.SysUserVo"> <select id="selectPageVo" resultType="com.yxt.supervise.system.sysuser.SysUserVo">
SELECT DISTINCT user.staffSid, SELECT DISTINCT user.staffSid,
user.isEnable, user.isEnable,
( (
SELECT GROUP_CONCAT(org.name) SELECT GROUP_CONCAT(org.name)
FROM sys_staff_org staffOrg FROM sys_staff_org staffOrg
LEFT JOIN sys_organization org ON org.sid = staffOrg.orgSid LEFT JOIN sys_organization org ON org.sid = staffOrg.orgSid
WHERE staffOrg.staffSid = user.staffSid WHERE staffOrg.staffSid = user.staffSid
) departmentName, ) departmentName,
( (
SELECT GROUP_CONCAT(org.sid) SELECT GROUP_CONCAT(org.sid)
FROM sys_staff_org staffOrg FROM sys_staff_org staffOrg
LEFT JOIN sys_organization org ON org.sid = staffOrg.orgSid LEFT JOIN sys_organization org ON org.sid = staffOrg.orgSid
WHERE staffOrg.staffSid = user.staffSid WHERE staffOrg.staffSid = user.staffSid
) departmentSid, ) departmentSid,
( (
SELECT GROUP_CONCAT(post.name) SELECT GROUP_CONCAT(post.name)
FROM sys_staff_post staffPost FROM sys_staff_post staffPost
LEFT JOIN sys_post post ON post.sid = staffPost.postSid LEFT JOIN sys_post post ON post.sid = staffPost.postSid
WHERE staffPost.staffSid = user.staffSid WHERE staffPost.staffSid = user.staffSid
) postName, ) postName,
( (
SELECT GROUP_CONCAT(post.sid) SELECT GROUP_CONCAT(post.sid)
FROM sys_staff_post staffPost FROM sys_staff_post staffPost
LEFT JOIN sys_post post ON post.sid = staffPost.postSid LEFT JOIN sys_post post ON post.sid = staffPost.postSid
WHERE staffPost.staffSid = user.staffSid WHERE staffPost.staffSid = user.staffSid
) postSid, ) postSid,
user.userName, user.userName,
user.sid sid, user.sid sid,
staff.name, staff.name,
( (
SELECT GROUP_CONCAT(role.name) SELECT GROUP_CONCAT(role.name)
FROM sys_user_role user_role FROM sys_user_role user_role
LEFT JOIN sys_role role ON role.sid = user_role.roleSid LEFT JOIN sys_role role ON role.sid = user_role.roleSid
WHERE user_role.userSid = USER.sid WHERE user_role.userSid = USER.sid
) roleName, ) roleName,
dict.dictValue userType, dict.dictValue userType,
user.userType userTypeKey user.userType userTypeKey
FROM sys_user USER FROM sys_user USER
LEFT JOIN sys_user_role user_role ON user_role.userSid = USER.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 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 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_staffinfo staff ON staff.sid = user.staffSid
<where> <where>
${ew.sqlSegment} ${ew.sqlSegment}
<if test="orgName != null and orgName != ''"> <if test="orgName != null and orgName != ''">
AND (SELECT GROUP_CONCAT(org.name) AND (SELECT GROUP_CONCAT(org.name)
FROM sys_staff_org staffOrg FROM sys_staff_org staffOrg
LEFT JOIN sys_organization org ON org.sid = staffOrg.orgSid LEFT JOIN sys_organization org ON org.sid = staffOrg.orgSid
WHERE staffOrg.staffSid = user.staffSid) WHERE staffOrg.staffSid = user.staffSid)
LIKE concat('%', LIKE concat('%',
#{orgName} #{orgName}
, ,
'%' '%'
) )
</if> </if>
<if test="userName != null and userName != ''"> <if test="userName != null and userName != ''">
and and
@ -146,6 +146,10 @@
set password=#{param2} set password=#{param2}
where sid = #{param1} where sid = #{param1}
</update> </update>
<delete id="deleteBySid">
delete from sys_user
where sid = #{sid}
</delete>
<update id="updatePasswordApp"> <update id="updatePasswordApp">
update sys_user update sys_user
set password=#{param2} set password=#{param2}
@ -203,7 +207,7 @@
LEFT JOIN sys_organization so ON sso.orgSid = so.sid LEFT JOIN sys_organization so ON sso.orgSid = so.sid
WHERE su.sid = #{userSid} WHERE su.sid = #{userSid}
ORDER BY sso.id ORDER BY sso.id
LIMIT 1 LIMIT 1
</select> </select>
<!--根据用户的sid查询用户的组织信息:多个时取第一个--> <!--根据用户的sid查询用户的组织信息:多个时取第一个-->
<select id="selectUserInfoByUserSid" resultType="com.yxt.supervise.system.sysuser.SysUserInfoVo"> <select id="selectUserInfoByUserSid" resultType="com.yxt.supervise.system.sysuser.SysUserInfoVo">
@ -214,7 +218,7 @@
LEFT JOIN sys_organization so ON sso.orgSid = so.sid LEFT JOIN sys_organization so ON sso.orgSid = so.sid
WHERE su.sid = #{userSid} WHERE su.sid = #{userSid}
ORDER BY sso.id ORDER BY sso.id
LIMIT 1 LIMIT 1
</select> </select>
<select id="selectUserInfoByUserSidOne" resultType="com.yxt.supervise.system.sysuser.SysUserInfoVo"> <select id="selectUserInfoByUserSidOne" resultType="com.yxt.supervise.system.sysuser.SysUserInfoVo">
@ -226,7 +230,7 @@
WHERE su.sid = #{userSid} WHERE su.sid = #{userSid}
and find_in_set(#{orgSid}, replace(sso.orgSidPath, '/', ',')) and find_in_set(#{orgSid}, replace(sso.orgSidPath, '/', ','))
ORDER BY sso.id ORDER BY sso.id
LIMIT 1 LIMIT 1
</select> </select>
<!--根据员工sid更新用户表的工号以及手机号--> <!--根据员工sid更新用户表的工号以及手机号-->
<update id="updateByStaffSid"> <update id="updateByStaffSid">
@ -271,12 +275,12 @@
<select id="getUserByRole" resultType="com.yxt.supervise.system.sysuser.SysUserVo"> <select id="getUserByRole" resultType="com.yxt.supervise.system.sysuser.SysUserVo">
select distinct si.name, su.sid, su.staffSid<!--, so.orgSidPath--> select distinct si.name, su.sid, su.staffSid<!--, so.orgSidPath-->
from sys_user_role sr from sys_user_role sr
left join sys_user su on sr.userSid = su.sid left join sys_user su on sr.userSid = su.sid
left join sys_staffinfo si on si.sid = su.staffSid left join sys_staffinfo si on si.sid = su.staffSid
left join sys_staff_org so on so.staffSid = si.sid left join sys_staff_org so on so.staffSid = si.sid
where sr.roleSid = #{roleSid} where sr.roleSid = #{roleSid}
and find_in_set(#{levelOrgSid}, replace(so.orgSidPath, '/', ',')) and find_in_set(#{levelOrgSid}, replace(so.orgSidPath, '/', ','))
and si.personTypeKey != '01' and si.personTypeKey != '01'
</select> </select>
<select id="getUserByOrgSid" resultType="java.util.Map"> <select id="getUserByOrgSid" resultType="java.util.Map">
@ -302,7 +306,7 @@
<select id="fetchBySids" resultType="com.yxt.supervise.system.sysuser.SysUserVo"> <select id="fetchBySids" resultType="com.yxt.supervise.system.sysuser.SysUserVo">
select su.*, ss.name select su.*, ss.name
from sys_user su 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 where su.sid in
<foreach collection="sids" index="index" item="item" open="(" separator="," close=")"> <foreach collection="sids" index="index" item="item" open="(" separator="," close=")">
#{item} #{item}
@ -340,12 +344,12 @@
<select id="getUserMessageByRole" resultType="com.yxt.supervise.system.sysuser.SysUserVo"> <select id="getUserMessageByRole" resultType="com.yxt.supervise.system.sysuser.SysUserVo">
select distinct si.name, su.sid, su.staffSid,so.orgSidPath select distinct si.name, su.sid, su.staffSid,so.orgSidPath
from sys_user_role sr from sys_user_role sr
left join sys_user su on sr.userSid = su.sid left join sys_user su on sr.userSid = su.sid
left join sys_staffinfo si on si.sid = su.staffSid left join sys_staffinfo si on si.sid = su.staffSid
left join sys_staff_org so on so.staffSid = si.sid left join sys_staff_org so on so.staffSid = si.sid
where sr.roleSid = #{roleSid} where sr.roleSid = #{roleSid}
and find_in_set(#{levelOrgSid}, replace(so.orgSidPath, '/', ',')) and find_in_set(#{levelOrgSid}, replace(so.orgSidPath, '/', ','))
and si.personTypeKey != '01' AND so.`manageType`=3 and su.sid in and si.personTypeKey != '01' AND so.`manageType`=3 and su.sid in
<foreach collection="list" item="item" index="index" open="(" separator="," close=")"> <foreach collection="list" item="item" index="index" open="(" separator="," close=")">
#{item} #{item}
</foreach> </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) { if (userType == 0) {
return new ResultBean<SysUserVo>().fail().setMsg("用户类型不能为空"); return new ResultBean<SysUserVo>().fail().setMsg("用户类型不能为空");
} }
if (StringUtils.isBlank(verificationCode)) { //取消验证码
return new ResultBean<SysUserVo>().fail().setMsg("验证码不能为空"); // if (StringUtils.isBlank(verificationCode)) {
} else { // return new ResultBean<SysUserVo>().fail().setMsg("验证码不能为空");
Map<String, Object> stringObjectMap = sysUserService.mobileValidateRegister(mobile, verificationCode); // } else {
String code = stringObjectMap.get("code").toString(); // Map<String, Object> stringObjectMap = sysUserService.mobileValidateRegister(mobile, verificationCode);
String details = stringObjectMap.get("details").toString(); // String code = stringObjectMap.get("code").toString();
if (Tools.CODE_FAIL.equals(code)) { // String details = stringObjectMap.get("details").toString();
return ResultBean.fireFail().setMessage(details).setMsg(details); // if (Tools.CODE_FAIL.equals(code)) {
} // return ResultBean.fireFail().setMessage(details).setMsg(details);
} // }
// }
//"15097329653"; //"15097329653";
String password = mobile.substring(5, 11); String password = mobile.substring(5, 11);
String md5 = Encodes.md5(password); String md5 = Encodes.md5(password);

Loading…
Cancel
Save