b5397fcb 康伟

Merge remote-tracking branch 'origin/master'

2 个父辈 e8d2a62f eca3b556
正在显示 23 个修改的文件 包含 597 行增加74 行删除
......@@ -95,8 +95,7 @@ public class AjhMeetingReceiptController {
@GetMapping(value = "/get")
public Result<IPage<AjhMeetingReceiptVO>> getPageList(AjhMeetingReceiptVO ajhMeetingReceiptVO,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
HttpServletRequest req) {
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize) {
Result<IPage<AjhMeetingReceiptVO>> result = new Result<IPage<AjhMeetingReceiptVO>>();
Page<AjhMeetingReceiptVO> page = new Page<AjhMeetingReceiptVO>(pageNo, pageSize);
IPage<AjhMeetingReceiptVO> pageList = ajhMeetingReceiptService.get(page, ajhMeetingReceiptVO);
......
......@@ -81,14 +81,51 @@ public class AjhMeetingSendController {
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
HttpServletRequest req) {
Result<IPage<AjhMeetingSend>> result = new Result<IPage<AjhMeetingSend>>();
QueryWrapper<AjhMeetingSend> queryWrapper = QueryGenerator.initQueryWrapper(ajhMeetingSend, req.getParameterMap());
QueryWrapper<AjhMeetingSend> queryWrapper = new QueryWrapper<>();
queryWrapper.eq(ConvertUtils.isNotEmpty(ajhMeetingSend.getMeetId()),"meet_id",ajhMeetingSend.getMeetId());
queryWrapper.eq(ConvertUtils.isNotEmpty(ajhMeetingSend.getDepartId()),"depart_id",ajhMeetingSend.getDepartId());
queryWrapper.eq(ConvertUtils.isNotEmpty(ajhMeetingSend.getMeetStatus()),"meet_status",ajhMeetingSend.getMeetStatus());
queryWrapper.eq(ConvertUtils.isNotEmpty(ajhMeetingSend.getSendStatus()),"send_status",ajhMeetingSend.getSendStatus());
queryWrapper.like(ConvertUtils.isNotEmpty(ajhMeetingSend.getMeetTitle()),"meet_title",ajhMeetingSend.getMeetTitle());
queryWrapper.between(ConvertUtils.isNotEmpty(ajhMeetingSend.getMeetStartTime()),"meet_start_time",
ajhMeetingSend.getMeetStartTime()+" 00:00:00",ajhMeetingSend.getMeetEndTime()+" 23:59:59");
Page<AjhMeetingSend> page = new Page<AjhMeetingSend>(pageNo, pageSize);
IPage<AjhMeetingSend> pageList = ajhMeetingSendService.page(page, queryWrapper);
IPage<AjhMeetingSend> pageList = ajhMeetingSendService.queryPage(page, queryWrapper);
result.setSuccess(true);
result.setResult(pageList);
return result;
}
@AutoLog(value = "会议记录-数量统计")
@ApiOperation(value="会议记录-数量统计", notes="会议记录-数量统计")
@GetMapping(value = "/count")
public Result<Map<String,Object>> queryCount(AjhMeetingSend ajhMeetingSend) {
Result<Map<String,Object>> result = new Result<Map<String,Object>>();
QueryWrapper<AjhMeetingSend> queryWrapper = new QueryWrapper<>();
queryWrapper.eq(ConvertUtils.isNotEmpty(ajhMeetingSend.getMeetId()),"meet_id",ajhMeetingSend.getMeetId());
queryWrapper.eq(ConvertUtils.isNotEmpty(ajhMeetingSend.getDepartId()),"depart_id",ajhMeetingSend.getDepartId());
queryWrapper.eq(ConvertUtils.isNotEmpty(ajhMeetingSend.getMeetStatus()),"meet_status",ajhMeetingSend.getMeetStatus());
queryWrapper.eq(ConvertUtils.isNotEmpty(ajhMeetingSend.getSendStatus()),"send_status",ajhMeetingSend.getSendStatus());
queryWrapper.like(ConvertUtils.isNotEmpty(ajhMeetingSend.getMeetTitle()),"meet_title",ajhMeetingSend.getMeetTitle());
queryWrapper.between(ConvertUtils.isNotEmpty(ajhMeetingSend.getMeetStartTime()),"meet_start_time",
ajhMeetingSend.getMeetStartTime()+" 00:00:00",ajhMeetingSend.getMeetEndTime()+" 23:59:59");
Map<String,Object> map = new HashMap<>();
int yes = 0;int no = 0;
List<AjhMeetingSend> list = ajhMeetingSendService.list(queryWrapper);
for (AjhMeetingSend bean : list) {
if("0".equals(bean.getSendStatus())){
no++;
}else if("1".equals(bean.getSendStatus())){
yes++;
}else{}
}
map.put("yes", yes);
map.put("no", no);
result.setSuccess(true);
result.setResult(map);
return result;
}
/**
* <pre>
* 添加
......
......@@ -123,4 +123,12 @@ public class AjhMeeting {
@TableField(exist = false)
@ApiModelProperty(value = "机构名称")
private java.lang.String departName;
/**执行情况*/
@TableField(exist = false)
@ApiModelProperty(value = "执行情况")
private java.lang.String executionStatus;
/**参与人数*/
@TableField(exist = false)
@ApiModelProperty(value = "参与人数")
private java.lang.String particNum;
}
......
......@@ -31,7 +31,6 @@ public class AjhMeetingSend {
@ApiModelProperty(value = "主键")
private String id;
/**会议ID*/
@Excel(name = "会议ID", width = 15)
@ApiModelProperty(value = "会议ID")
private String meetId;
/**机构ID*/
......@@ -111,30 +110,33 @@ public class AjhMeetingSend {
@Dict(dicCode = "meetting_status")
private Integer meetStatus;
/**创建人*/
@Excel(name = "创建人", width = 15)
@ApiModelProperty(value = "创建人")
private String createBy;
/**创建时间*/
@Excel(name = "创建时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "创建时间")
private Date createTime;
/**更新人*/
@Excel(name = "更新人", width = 15)
@ApiModelProperty(value = "更新人")
private String updateBy;
/**更新时间*/
@Excel(name = "更新时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "更新时间")
private Date updateTime;
/**附件*/
/**机构名称*/
@TableField(exist = false)
@ApiModelProperty(value = "机构名称")
private java.lang.String departName;
/**邀请人数*/
@TableField(exist = false)
@ApiModelProperty(value = "邀请人数")
private java.lang.String inviteNum;
/**参与人数*/
@TableField(exist = false)
@ApiModelProperty(value = "参与人数")
private java.lang.String particNum;
}
......
package com.skua.modules.ajh.mapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.skua.core.api.vo.LoginUser;
import com.skua.modules.ajh.entity.AjhMeetingSend;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.List;
......@@ -25,8 +28,9 @@ public interface AjhMeetingSendMapper extends BaseMapper<AjhMeetingSend> {
*/
public AjhMeetingSend queryByMeetId(@Param("meetId") String meetId);
@Select("SELECT *,IFNULL( r.count, 0 ) AS invite_num,IFNULL( a.count, 0 ) AS partic_num " +
" FROM ajh_meeting_send " +
" LEFT JOIN ( SELECT count( id ) count, meets_id FROM ajh_meeting_receipt GROUP BY meets_id ) r ON r.meets_id = id " +
" LEFT JOIN ( SELECT count( id ) count, meets_id FROM ajh_meeting_attend GROUP BY meets_id ) a ON a.meets_id = id ${ew.customSqlSegment}")
List<AjhMeetingSend> getListByWrapper(Page page,@Param("ew") QueryWrapper<AjhMeetingSend> queryWrapper);
}
......
......@@ -19,25 +19,29 @@
</select>
<select id="queryPageList" resultType="com.skua.modules.ajh.entity.AjhMeeting">
SELECT
*
CONCAT(s1.num,'/',s2.num) execution_status,
ifnull(a.num,0) as partic_num,
m.*
FROM
ajh_meeting
WHERE
1 = 1
ajh_meeting m
left join (select meet_id,count(id) num from ajh_meeting_send where send_status = 1 GROUP BY meet_id) s1 on s1.meet_id = m.id
left join (select meet_id,count(id) num from ajh_meeting_send GROUP BY meet_id) s2 on s2.meet_id = m.id
left join (select DISTINCT sa.meet_id,ma.num from ajh_meeting_send sa left join (select meets_id,count(id) num from ajh_meeting_attend GROUP BY meets_id) ma on ma.meets_id = sa.id) a on a.meet_id = s2.meet_id
WHERE 1 = 1
<if test="ajhMeeting.departId !=null and ajhMeeting.departId!=''">
AND depart_id = #{ajhMeeting.departId}
AND m.depart_id = #{ajhMeeting.departId}
</if>
<if test="ajhMeeting.sendStatus !=null and ajhMeeting.sendStatus!=''">
AND send_status = #{ajhMeeting.sendStatus}
AND m.send_status = #{ajhMeeting.sendStatus}
</if>
<if test="ajhMeeting.meetTitile !=null and ajhMeeting.meetTitile!=''">
AND meet_titile LIKE CONCAT(CONCAT('%', #{ajhMeeting.meetTitile}),'%')
AND m.meet_titile LIKE CONCAT(CONCAT('%', #{ajhMeeting.meetTitile}),'%')
</if>
<if test="ajhMeeting.startTime !=null and ajhMeeting.endTime!=''">
AND start_time between #{ajhMeeting.startTime} and #{ajhMeeting.endTime}
AND m.start_time between #{ajhMeeting.startTime} and #{ajhMeeting.endTime}
</if>
<if test="ajhMeeting.meetCategory !=null and ajhMeeting.meetCategory!=''">
AND meet_category = #{ajhMeeting.meetCategory}
AND m.meet_category = #{ajhMeeting.meetCategory}
</if>
</select>
......
......@@ -21,10 +21,12 @@
s.meet_qd_qrcode,
s.meet_title,
s.meet_location,
s.meet_content
s.meet_content,
m.meet_category
FROM
ajh_meeting_receipt r
LEFT JOIN ajh_meeting_send s ON s.id = r.meets_id
LEFT JOIN ajh_meeting m ON m.id = s.meet_id
LEFT JOIN ( SELECT * FROM sys_dict_item WHERE dict_id =
( SELECT id FROM sys_dict WHERE dict_code = 'attend_status' ) ) d ON d.item_value = r.status
WHERE
......@@ -38,6 +40,9 @@
<if test="ajhMeetingReceiptVO.meetsId!=null">
and r.meets_id = #{ajhMeetingReceiptVO.meetsId}
</if>
<if test="ajhMeetingReceiptVO.meetCategory!=null">
and m.meet_category = #{ajhMeetingReceiptVO.meetCategory}
</if>
</select>
</mapper>
......
package com.skua.modules.ajh.service;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.skua.modules.ajh.entity.AjhMeetingSend;
import com.baomidou.mybatisplus.extension.service.IService;
import com.skua.modules.ajh.vo.AjhMeetingVO;
......@@ -30,4 +33,6 @@ public interface IAjhMeetingSendService extends IService<AjhMeetingSend> {
* @return
*/
public AjhMeetingSend queryByMeetId(String meetId);
IPage<AjhMeetingSend> queryPage(Page<AjhMeetingSend> page, QueryWrapper<AjhMeetingSend> queryWrapper);
}
......
package com.skua.modules.ajh.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.skua.core.api.vo.LoginUser;
import com.skua.modules.ajh.entity.AjhMeetingAttend;
import com.skua.modules.ajh.entity.AjhMeetingMinutes;
......@@ -170,4 +173,11 @@ public class AjhMeetingSendServiceImpl extends ServiceImpl<AjhMeetingSendMapper,
public AjhMeetingSend queryByMeetId(String meetId){
return ajhMeetingSendMapper.queryByMeetId( meetId );
}
@Override
public IPage<AjhMeetingSend> queryPage(Page<AjhMeetingSend> page, QueryWrapper<AjhMeetingSend> queryWrapper) {
List<AjhMeetingSend> list = ajhMeetingSendMapper.getListByWrapper(page, queryWrapper);
page.setRecords(list);
return page;
}
}
......
......@@ -65,4 +65,7 @@ public class AjhMeetingReceiptVO {
/**会议内容*/
@ApiModelProperty(value = "会议内容")
private String meetContent;
/**会议类型*/
@ApiModelProperty(value = "会议类型")
private String meetCategory;
}
......
......@@ -37,6 +37,7 @@ import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
......@@ -66,7 +67,6 @@ public class MaterialInfoController {
* @param materialInfo
* @param pageNo
* @param pageSize
* @param req
* @return
*/
@AutoLog(value = "厂区资料管理-分页列表查询")
......@@ -74,8 +74,7 @@ public class MaterialInfoController {
@GetMapping(value = "/list")
public Result<IPage<MaterialInfo>> queryPageList(MaterialInfo materialInfo,
@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
HttpServletRequest req) {
@RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize) {
String departIds = null;
Result<IPage<MaterialInfo>> result = new Result<IPage<MaterialInfo>>();
Page<MaterialInfo> page = new Page<MaterialInfo>(pageNo, pageSize);
......@@ -92,22 +91,21 @@ public class MaterialInfoController {
/**
* 添加
*
* @param MaterialInfo
* @param materialInfo
* @return
*/
@AutoLog(value = "厂区资料管理-添加")
@ApiOperation(value = "厂区资料管理-添加", notes = "厂区资料管理-添加")
@PostMapping(value = "/add")
public Result<MaterialInfo> add(@RequestBody MaterialInfo MaterialInfo) {
public Result<MaterialInfo> add(@RequestBody MaterialInfo materialInfo) {
Result<MaterialInfo> result = new Result<MaterialInfo>();
try {
if (StringUtils.isBlank(MaterialInfo.getDepartId())) {
if (StringUtils.isBlank(materialInfo.getDepartId())) {
String userCode = BaseContextHandler.getUserId();
//根据用户id查询所属厂区 只要第一个
MaterialInfo.setDepartId(materialInfoService.queryFacByUserId(userCode));
materialInfo.setDepartId(materialInfoService.queryFacByUserId(userCode));
}
materialInfoService.save(MaterialInfo);
materialInfoService.save(materialInfo);
result.success("添加成功!");
} catch (Exception e) {
log.error(e.getMessage(), e);
......@@ -118,21 +116,19 @@ public class MaterialInfoController {
/**
* 编辑
*
* @param MaterialInfo
* @param materialInfo
* @return
*/
@AutoLog(value = "厂区资料管理-编辑")
@ApiOperation(value = "厂区资料管理-编辑", notes = "厂区资料管理-编辑")
@PutMapping(value = "/edit")
public Result<MaterialInfo> edit(@RequestBody MaterialInfo MaterialInfo) {
public Result<MaterialInfo> edit(@RequestBody MaterialInfo materialInfo) {
Result<MaterialInfo> result = new Result<MaterialInfo>();
MaterialInfo MaterialInfoEntity = materialInfoService.getById(MaterialInfo.getId());
MaterialInfo MaterialInfoEntity = materialInfoService.getById(materialInfo.getId());
if (MaterialInfoEntity == null) {
result.error500("未找到对应实体");
} else {
boolean ok = materialInfoService.updateById(MaterialInfo);
//TODO 返回false说明什么?
boolean ok = materialInfoService.updateById(materialInfo);
if (ok) {
result.success("修改成功!");
}
......@@ -147,7 +143,6 @@ public class MaterialInfoController {
* </pre>
* @return
* @author Li Yuanyuan, 2022年6月22日 下午2:15:57
* @Description: TODO(这里描述这个方法的需求变更情况)
*/
@AutoLog(value = "厂区资料管理-更新浏览量/下载量")
@ApiOperation(value = "厂区资料管理-更新浏览量/下载量", notes = "厂区资料管理-更新浏览量/下载量")
......@@ -320,14 +315,14 @@ public class MaterialInfoController {
@AutoLog(value = "厂区资料管理-流量统计")
@ApiOperation(value = "厂区资料管理-流量统计", notes = "厂区资料管理-流量统计")
@GetMapping(value = "/flowStatistics")
public Result<List<Map<String, Object>>> flowStatistics(String departId,String startTime,String endTime) {
public Result<List<Map<String, Object>>> flowStatistics(String departId,String startTime,String endTime,String facInformationtype) {
Result<List<Map<String, Object>>> result = new Result<>();
if (StringUtils.isBlank(departId)&&StringUtils.isNotBlank(BaseContextHandler.getDeparts())) {
departId = departService.getChildDepartId(BaseContextHandler.getDeparts());
}else{
departId = departService.getChildDepartId(departId);
}
List<Map<String, Object>> pageList = materialInfoService.flowStatistics(departId,startTime,endTime);
List<Map<String, Object>> pageList = materialInfoService.flowStatistics(departId,startTime,endTime,facInformationtype);
result.setSuccess(true);
result.setResult(pageList);
return result;
......
......@@ -36,7 +36,7 @@ public class MaterialInfo {
/**厂区资料文件名类型*/
@Excel(name = "厂区资料文件名类型", width = 15)
@ApiModelProperty(value = "厂区资料文件名类型")
@Dict(dicCode = "info_type")
@Dict(dicCode = "fac_information_type")
private String facInformationtype;
/**删除状态(0,正常,1已删除)*/
@Excel(name = "删除状态(0,正常,1已删除)", width = 15)
......@@ -85,6 +85,22 @@ public class MaterialInfo {
@Dict(dicCode = "rules_type")
@ApiModelProperty(value = "制度类型")
private String rulesType;
/**法律法规类型*/
@Dict(dicCode = "laws_type")
@ApiModelProperty(value = "法律法规类型")
private String lawsType;
/**法律法规归属*/
@Dict(dicCode = "laws_source")
@ApiModelProperty(value = "法律法规归属")
private String lawsSource;
/**标准规范类型*/
@Dict(dicCode = "standards_type")
@ApiModelProperty(value = "标准规范类型")
private String standardsType;
/**标准规范来源*/
@Dict(dicCode = "standards_source")
@ApiModelProperty(value = "标准规范来源")
private String standardsSource;
/**发布时间*/
@Excel(name = "发布时间", width = 15)
@ApiModelProperty(value = "发布时间")
......
......@@ -15,7 +15,7 @@ public interface MaterialInfoMapper extends BaseMapper<MaterialInfo> {
String queryFacByUserId(@Param("userCode") String userCode);
List<Map<String, Object>> getAnalysis(@Param("facInfo") MaterialInfo facInfo);
List<Map<String, Object>> getAnalysis(@Param("dictCode") String dictCode);
/**
* <pre>
* 流量统计
......@@ -27,7 +27,7 @@ public interface MaterialInfoMapper extends BaseMapper<MaterialInfo> {
* @author Li Yuanyuan, 2022年6月22日 下午3:10:31
* @Description: TODO(这里描述这个方法的需求变更情况)
*/
List<Map<String, Object>> flowStatistics(String departId, String startTime, String endTime);
List<Map<String, Object>> flowStatistics(String departId, String startTime, String endTime, String facInformationtype);
List<MaterialInfo> getList(@Param("materialInfo") MaterialInfo materialInfo, @Param("departIds") String departIds);
}
......
......@@ -14,24 +14,12 @@
<select id="getAnalysis" resultType="java.util.Map">
SELECT
b.item_value id,
ifnull(a.cou,0) count,
0 count,
b.item_text NAME
FROM
( SELECT item_text, item_value FROM sys_dict_item
WHERE dict_id = ( SELECT id FROM sys_dict WHERE dict_code = 'info_type' )
WHERE dict_id = ( SELECT id FROM sys_dict WHERE dict_code = #{dictCode} )
) b
left join
( SELECT fac_informationtype, count( 1 ) cou FROM material_info
<if test="facInfo.departId!=null and facInfo.departId!=''">
where depart_id in
<foreach item="item" index="index" collection="facInfo.departId.split(',')" open="(" separator="," close=")">
'${item}'
</foreach>
</if>
GROUP BY fac_informationtype
) a
ON a.fac_informationtype = b.item_value
</select>
<select id="flowStatistics" resultType="java.util.Map">
SELECT
......@@ -43,13 +31,16 @@
INNER JOIN material_info_handle_record b ON a.id = b.info_id
WHERE
b.create_time &gt;= #{startTime}
AND b.create_time &lt;= #{endTime}
<if test="departId!=null and departId!=''">
and a.depart_id in
<foreach item="item" index="index" collection="departId.split(',')" open="(" separator="," close=")">
'${item}'
</foreach>
</if>
AND b.create_time &lt;= #{endTime}
<if test="departId!=null and departId!=''">
and a.depart_id in
<foreach item="item" index="index" collection="departId.split(',')" open="(" separator="," close=")">
'${item}'
</foreach>
</if>
<if test="facInformationtype!=null and facInformationtype!=''">
AND a.fac_informationtype = #{facInformationtype}
</if>
GROUP BY
b.create_time,b.handle_type
</select>
......@@ -68,5 +59,8 @@
<if test="materialInfo.facInformationName!=null and materialInfo.facInformationName!=''">
and fac_information_name like CONCAT(CONCAT('%', #{materialInfo.facInformationName}),'%')
</if>
<if test="materialInfo.rulesType!=null and materialInfo.rulesType!=''">
and rules_type like CONCAT(CONCAT('%', #{materialInfo.rulesType}),'%')
</if>
</select>
</mapper>
......
......@@ -41,7 +41,7 @@ public interface IMaterialInfoService extends IService<MaterialInfo> {
* @author Li Yuanyuan, 2022年6月22日 下午3:00:25
* @Description: TODO(这里描述这个方法的需求变更情况)
*/
List<Map<String, Object>> flowStatistics(String departId, String startTime, String endTime);
List<Map<String, Object>> flowStatistics(String departId, String startTime, String endTime,String facInformationtype);
IPage<MaterialInfo> getList(Page<MaterialInfo> page, MaterialInfo materialInfo, String departIds);
}
......
......@@ -24,7 +24,33 @@ public class MaterialInfoServiceImpl extends ServiceImpl<MaterialInfoMapper, Mat
@Override
public List<Map<String, Object>> getAnalysis(MaterialInfo facInfo) {
return baseMapper.getAnalysis(facInfo);
List<Map<String, Object>> tList = new ArrayList<>();
String departIds = facInfo.getDepartId();
List<MaterialInfo> list = baseMapper.getList(facInfo, departIds);
Map<String, Object> totalMap = new HashMap<>();
totalMap.put("total",list.size());
tList.add(totalMap);
String dictCode = "rules_type";//标准规范:bzgf 法律法规:flfg 公司制度章程:gzzd
if("gzzd".equals(facInfo.getFacInformationtype())){
dictCode = "rules_type";
}else if("bzgf".equals(facInfo.getFacInformationtype())){
dictCode = "standards_type";
}else if("flfg".equals(facInfo.getFacInformationtype())){
dictCode = "laws_type";
}
List<Map<String, Object>> typeList = baseMapper.getAnalysis(dictCode);
for (Map<String, Object> map : typeList) {
String type = map.get("id").toString();
int count = 0;
for(MaterialInfo materialInfo: list){
if(materialInfo.getRulesType().contains(type)){
count++;
}
}
map.put("count",count);
tList.add(map);
}
return tList;
}
@Override
......@@ -33,12 +59,12 @@ public class MaterialInfoServiceImpl extends ServiceImpl<MaterialInfoMapper, Mat
}
@Override
public List<Map<String, Object>> flowStatistics(String departId, String startTime, String endTime) {
public List<Map<String, Object>> flowStatistics(String departId, String startTime, String endTime, String facInformationtype) {
//日期切片
List<Map<String,Object>> resultList = new ArrayList<Map<String,Object>>();
List<String> timeList = DateUtils.sliceUpDateRange(startTime,endTime,"month");
//获取统计结果
List<Map<String,Object>> dataList = baseMapper.flowStatistics(departId,startTime,endTime);
List<Map<String,Object>> dataList = baseMapper.flowStatistics(departId,startTime,endTime,facInformationtype);
Map<String,Map<String,Object>> resultMap = new HashMap<String,Map<String,Object>>();
for(Map<String,Object> map : dataList) {
resultMap.put(ConvertUtils.getString(map.get("create_time"))+"_"+ConvertUtils.getString(map.get("handle_type")), map);
......
......@@ -189,18 +189,27 @@
v9.CSPH as csph,
v9.CSTN as cstn,
v9.CSZL as cstp,
v9.JSSS as jsss,
v9.CSSS as csss,
v3.qt5,v3.qt4,v3.qt3,v3.qt2,v3.qt1,
v3.scqk5,v3.scqk4,v3.scqk3,v3.scqk2,v3.scqk1,
v3.id,v3.zwncb,v3.tnlgyy,v3.sjtnl,
v3.lltnl,v3.wnndgyy,v3.zsjwnnd,v3.llwnnd,v3.yjyy,v3.dhyy,
v8.dlhj,v8.yjhl,v8.wnl,
v2.zclsl,v2.rjclsl
v2.zclsl,v2.rjclsl,
t.target_power as dsdhnmb,
round(v8.dlhj/(v2.zclsl*10000),2) as dsdhzsj,
'' as dsdhdb,
t.target_drug as yjnmb,
round(v8.yjhl/(v2.zclsl*10000),2) as yjzsj,
'' as yjdb,
f.pro_scale as sjgm
FROM
sys_depart d
LEFT JOIN (SELECT * FROM view_30a8 WHERE depart_id = #{departId} AND time = #{dataTime} AND zs = #{week}) v3 on v3.depart_id = d.id
LEFT JOIN (SELECT
ROUND(AVG(JSCOD),2) JSCOD,ROUND(AVG(JSAD),2) JSAD,ROUND(AVG(JSPH),2) JSPH,ROUND(AVG(JSZD),2) JSZD,ROUND(AVG(JSZL),2) JSZL,
ROUND(AVG(CSCOD),2) CSCOD,ROUND(AVG(CSAD),2) CSAD,ROUND(AVG(CSPH),2) CSPH,ROUND(AVG(CSTN),2) CSTN,ROUND(AVG(CSZL),2) CSZL,
ROUND(AVG(JSCOD),2) JSCOD,ROUND(AVG(JSAD),2) JSAD,ROUND(AVG(JSPH),2) JSPH,ROUND(AVG(JSZD),2) JSZD,ROUND(AVG(JSZL),2) JSZL,ROUND(AVG(JSSS),2) JSSS,
ROUND(AVG(CSCOD),2) CSCOD,ROUND(AVG(CSAD),2) CSAD,ROUND(AVG(CSPH),2) CSPH,ROUND(AVG(CSTN),2) CSTN,ROUND(AVG(CSZL),2) CSZL,ROUND(AVG(CSSS),2) CSSS,
depart_id
FROM view_9bff
WHERE depart_id = #{departId} AND time &gt;= #{startDate} AND time &lt;= #{endDate} ) v9 on v9.depart_id = d.id
......@@ -216,6 +225,8 @@
depart_id
FROM view_2119
WHERE depart_id = #{departId} AND time &gt;= #{startDate} AND time &lt;= #{endDate} ) v2 on v2.depart_id = d.id
LEFT JOIN sys_factory_info f on f.depart_id = d.id
LEFT JOIN report_target_config t on t.depart_id = d.id
WHERE
d.id = #{departId}
</select>
......
package com.skua.modules.system.controller;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.skua.core.api.vo.Result;
import com.skua.core.aspect.annotation.AutoLog;
import com.skua.core.context.BaseContextHandler;
import com.skua.core.query.QueryGenerator;
import com.skua.core.service.ISequenceService;
import com.skua.core.util.ConvertUtils;
import com.skua.modules.system.entity.SysFactoryUserData;
import com.skua.modules.system.service.ISysFactoryUserDataService;
import java.util.Date;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.extern.slf4j.Slf4j;
import org.jeecgframework.poi.excel.ExcelImportUtil;
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
import org.jeecgframework.poi.excel.entity.ExportParams;
import org.jeecgframework.poi.excel.entity.ImportParams;
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.servlet.ModelAndView;
import com.alibaba.fastjson.JSON;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
/**
* 人员证书管理
*/
@Slf4j
@Api(tags="人员证书管理")
@RestController
@RequestMapping("/system/sysFactoryUserData")
public class SysFactoryUserDataController {
@Autowired
private ISysFactoryUserDataService sysFactoryUserDataService;
/**
* <pre>
* 分页列表查询
* </pre>
* @param sysFactoryUserData
* @param pageNo
* @param pageSize
* @param req
* @return
* @author 开发者姓名, 开发时间
* @Description: TODO(这里描述这个方法的需求变更情况)
*/
@AutoLog(value = "人员证书管理-分页列表查询")
@ApiOperation(value="人员证书管理-分页列表查询", notes="人员证书管理-分页列表查询")
@GetMapping(value = "/list")
public Result<IPage<SysFactoryUserData>> queryPageList(SysFactoryUserData sysFactoryUserData,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
HttpServletRequest req) {
Result<IPage<SysFactoryUserData>> result = new Result<IPage<SysFactoryUserData>>();
QueryWrapper<SysFactoryUserData> queryWrapper = QueryGenerator.initQueryWrapper(sysFactoryUserData, req.getParameterMap());
Page<SysFactoryUserData> page = new Page<SysFactoryUserData>(pageNo, pageSize);
IPage<SysFactoryUserData> pageList = sysFactoryUserDataService.page(page, queryWrapper);
result.setSuccess(true);
result.setResult(pageList);
return result;
}
/**
* <pre>
* 添加
* </pre>
* @param sysFactoryUserData
* @return
* @author 开发者姓名, 开发时间
* @Description: TODO(这里描述这个方法的需求变更情况)
*/
@AutoLog(value = "人员证书管理-添加")
@ApiOperation(value="人员证书管理-添加", notes="人员证书管理-添加")
@PostMapping(value = "/add")
public Result<SysFactoryUserData> add(@RequestBody SysFactoryUserData sysFactoryUserData) {
Result<SysFactoryUserData> result = new Result<SysFactoryUserData>();
try {
sysFactoryUserDataService.save(sysFactoryUserData);
result.success("添加成功!");
} catch (Exception e) {
log.error(e.getMessage(),e);
result.error500("操作失败");
}
return result;
}
/**
* <pre>
* 编辑
* </pre>
* @param sysFactoryUserData
* @return
* @author 开发者姓名, 开发时间
* @Description: TODO(这里描述这个方法的需求变更情况)
*/
@AutoLog(value = "人员证书管理-编辑")
@ApiOperation(value="人员证书管理-编辑", notes="人员证书管理-编辑")
@PutMapping(value = "/edit")
public Result<SysFactoryUserData> edit(@RequestBody SysFactoryUserData sysFactoryUserData) {
Result<SysFactoryUserData> result = new Result<SysFactoryUserData>();
SysFactoryUserData sysFactoryUserDataEntity = sysFactoryUserDataService.getById(sysFactoryUserData.getId());
if(sysFactoryUserDataEntity==null) {
result.error500("未找到对应实体");
}else {
boolean ok = sysFactoryUserDataService.updateById(sysFactoryUserData);
//TODO 返回false说明什么?
if(ok) {
result.success("修改成功!");
}
}
return result;
}
/**
* <pre>
* 通过id删除
* </pre>
* @param id
* @return
* @author 开发者姓名, 开发时间
* @Description: TODO(这里描述这个方法的需求变更情况)
*/
@AutoLog(value = "人员证书管理-通过id删除")
@ApiOperation(value="人员证书管理-通过id删除", notes="人员证书管理-通过id删除")
@DeleteMapping(value = "/delete")
public Result<?> delete(@RequestParam(name="id",required=true) String id) {
try {
sysFactoryUserDataService.removeById(id);
} catch (Exception e) {
log.error("删除失败",e.getMessage());
return Result.error("删除失败!");
}
return Result.ok("删除成功!");
}
/**
* <pre>
* 批量删除
* </pre>
* @param ids
* @return
* @author 开发者姓名, 开发时间
* @Description: TODO(这里描述这个方法的需求变更情况)
*/
@AutoLog(value = "人员证书管理-批量删除")
@ApiOperation(value="人员证书管理-批量删除", notes="人员证书管理-批量删除")
@DeleteMapping(value = "/deleteBatch")
public Result<SysFactoryUserData> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
Result<SysFactoryUserData> result = new Result<SysFactoryUserData>();
if(ids==null || "".equals(ids.trim())) {
result.error500("参数不识别!");
}else {
this.sysFactoryUserDataService.removeByIds(Arrays.asList(ids.split(",")));
result.success("删除成功!");
}
return result;
}
/**
* <pre>
* 通过id查询
* </pre>
* @param id
* @return
* @author 开发者姓名, 开发时间
* @Description: TODO(这里描述这个方法的需求变更情况)
*/
@AutoLog(value = "人员证书管理-通过id查询")
@ApiOperation(value="人员证书管理-通过id查询", notes="人员证书管理-通过id查询")
@GetMapping(value = "/queryById")
public Result<SysFactoryUserData> queryById(@RequestParam(name="id",required=true) String id) {
Result<SysFactoryUserData> result = new Result<SysFactoryUserData>();
SysFactoryUserData sysFactoryUserData = sysFactoryUserDataService.getById(id);
if(sysFactoryUserData==null) {
result.error500("未找到对应实体");
}else {
result.setResult(sysFactoryUserData);
result.setSuccess(true);
}
return result;
}
/**
* <pre>
* 导出excel
* </pre>
* @param request
* @param response
* @return
* @author 开发者姓名, 开发时间
* @Description: TODO(这里描述这个方法的需求变更情况)
*/
@RequestMapping(value = "/exportXls")
public ModelAndView exportXls(HttpServletRequest request, HttpServletResponse response) {
// Step.1 组装查询条件
QueryWrapper<SysFactoryUserData> queryWrapper = null;
try {
String paramsStr = request.getParameter("paramsStr");
if (ConvertUtils.isNotEmpty(paramsStr)) {
String deString = URLDecoder.decode(paramsStr, "UTF-8");
SysFactoryUserData sysFactoryUserData = JSON.parseObject(deString, SysFactoryUserData.class);
queryWrapper = QueryGenerator.initQueryWrapper(sysFactoryUserData, request.getParameterMap());
}
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
//Step.2 AutoPoi 导出Excel
ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
List<SysFactoryUserData> pageList = sysFactoryUserDataService.list(queryWrapper);
//导出文件名称
mv.addObject(NormalExcelConstants.FILE_NAME, "人员证书管理列表");
mv.addObject(NormalExcelConstants.CLASS, SysFactoryUserData.class);
mv.addObject(NormalExcelConstants.PARAMS, new ExportParams("人员证书管理列表数据", "导出人:Jeecg", "导出信息"));
mv.addObject(NormalExcelConstants.DATA_LIST, pageList);
return mv;
}
/**
* <pre>
* 通过excel导入数据
* </pre>
* @param request
* @param response
* @return
* @author 开发者姓名, 开发时间
* @Description: TODO(这里描述这个方法的需求变更情况)
*/
@RequestMapping(value = "/importExcel", method = RequestMethod.POST)
public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
Map<String, MultipartFile> fileMap = multipartRequest.getFileMap();
for (Map.Entry<String, MultipartFile> entity : fileMap.entrySet()) {
MultipartFile file = entity.getValue();// 获取上传文件对象
ImportParams params = new ImportParams();
params.setTitleRows(2);
params.setHeadRows(1);
params.setNeedSave(true);
try {
List<SysFactoryUserData> listSysFactoryUserDatas = ExcelImportUtil.importExcel(file.getInputStream(), SysFactoryUserData.class, params);
sysFactoryUserDataService.saveBatch(listSysFactoryUserDatas);
return Result.ok("文件导入成功!数据行数:" + listSysFactoryUserDatas.size());
} catch (Exception e) {
log.error(e.getMessage(),e);
return Result.error("文件导入失败:"+e.getMessage());
} finally {
try {
file.getInputStream().close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
return Result.ok("文件导入失败!");
}
}
package com.skua.modules.system.entity;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.skua.core.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
/**
* 人员证书管理
*/
@Data
@TableName("sys_factory_user_data")
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value="sys_factory_user_data对象", description="人员证书管理")
public class SysFactoryUserData {
/**主键*/
@TableId(type = IdType.ID_WORKER_STR)
@ApiModelProperty(value = "主键")
private String id;
/**成员ID*/
@Excel(name = "成员ID", width = 15)
@ApiModelProperty(value = "成员ID")
@Dict(dicCode = "id",dictTable = "sys_user",dicText = "realname")
private String userId;
/**证件名称*/
@Excel(name = "证件名称", width = 15)
@ApiModelProperty(value = "证件名称")
private String certifiesName;
/**证件类型*/
@Excel(name = "证件类型", width = 15)
@ApiModelProperty(value = "证件类型")
@Dict(dicCode = "epiboly_certificate_type")
private String certifiesType;
/**附件*/
@Excel(name = "附件", width = 15)
@ApiModelProperty(value = "附件")
private String certifiesFile;
/**到期时间*/
@Excel(name = "到期时间", width = 15)
@ApiModelProperty(value = "到期时间")
private String endTime;
/**备注*/
@Excel(name = "备注", width = 15)
@ApiModelProperty(value = "备注")
private String remark;
/**上传人*/
@Excel(name = "上传人", width = 15)
@ApiModelProperty(value = "上传人")
private String createBy;
/**上传时间*/
@Excel(name = "上传时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "上传时间")
private Date createTime;
/**更新人*/
@Excel(name = "更新人", width = 15)
@ApiModelProperty(value = "更新人")
private String updateBy;
/**更新时间*/
@Excel(name = "更新时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
@ApiModelProperty(value = "更新时间")
private Date updateTime;
/**厂站ID*/
@Excel(name = "厂站ID", width = 15)
@ApiModelProperty(value = "厂站ID")
private String createDept;
/**delFlag*/
@Excel(name = "delFlag", width = 15)
@ApiModelProperty(value = "delFlag")
private Integer delFlag;
}
package com.skua.modules.system.mapper;
import java.util.List;
import org.apache.ibatis.annotations.Param;
import com.skua.modules.system.entity.SysFactoryUserData;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* 人员证书管理
*/
public interface SysFactoryUserDataMapper extends BaseMapper<SysFactoryUserData> {
}
<?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.skua.modules.system.mapper.SysFactoryUserDataMapper">
</mapper>
\ No newline at end of file
package com.skua.modules.system.service;
import com.skua.modules.system.entity.SysFactoryUserData;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* 人员证书管理
*/
public interface ISysFactoryUserDataService extends IService<SysFactoryUserData> {
}
package com.skua.modules.system.service.impl;
import com.skua.modules.system.entity.SysFactoryUserData;
import com.skua.modules.system.mapper.SysFactoryUserDataMapper;
import com.skua.modules.system.service.ISysFactoryUserDataService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
/**
* 人员证书管理
*/
@Service
public class SysFactoryUserDataServiceImpl extends ServiceImpl<SysFactoryUserDataMapper, SysFactoryUserData> implements ISysFactoryUserDataService {
}
支持 Markdown 格式
你添加了 0 到此讨论。请谨慎行事。
Finish editing this message first!