Browse Source

修改入库可视化数据显示为当前用户相关的仓库

lwx_dev
erdanergou 3 years ago
parent
commit
8e1b8247e8
  1. 24
      src/main/java/com/dreamchaser/depository_manage/controller/PageController.java
  2. 6
      src/main/java/com/dreamchaser/depository_manage/mapper/DepositoryRecordMapper.java
  3. 25
      src/main/java/com/dreamchaser/depository_manage/mapper/DepositoryRecordMapper.xml
  4. 4
      src/main/java/com/dreamchaser/depository_manage/service/DepositoryRecordService.java
  5. 9
      src/main/java/com/dreamchaser/depository_manage/service/impl/DepositoryRecordServiceImpl.java

24
src/main/java/com/dreamchaser/depository_manage/controller/PageController.java

@ -938,17 +938,35 @@ public class PageController {
* @return
*/
@GetMapping("/chart_in_back")
public ModelAndView chart_in_back() {
public ModelAndView chart_in_back(HttpServletRequest request) {
ModelAndView mv = new ModelAndView();
mv.setViewName("pages/chart/chart-in_back");
UserByPort userToken = (UserByPort) request.getAttribute("userToken");
// 获取当前用户所在部门管理的仓库
List<Depository> depositoryByAdminorg = depositoryService.findDepositoryByAdminorg(userToken.getMaindeparment().toString());
// 获取当前用户管理的仓库
List<RoleAndDepository> depositoryAndRole = roleService.findDepositoryAndRole(userToken.getId());
List<Integer> depositoryIdList = new ArrayList<>();
for (Depository depository:depositoryByAdminorg
) {
depositoryIdList.add(depository.getId());
}
for (RoleAndDepository rad:depositoryAndRole
) {
if(!depositoryIdList.contains(rad.getDepositoryId())){
depositoryIdList.add(rad.getDepositoryId());
}
}
/**
* 用于计算昨天的数据
*/
Map<String, Object> map = depositoryRecordService.CalculateAllApplicationInCount();
Map<String, Object> map = depositoryRecordService.CalculateAllApplicationInCount(depositoryIdList);
// 用于计算全部的数据
Map<String, Object> map1 = depositoryRecordService.CalculateAllApplicationInAll();
Map<String, Object> map1 = depositoryRecordService.CalculateAllApplicationInAll(depositoryIdList);
// 转入物料数量
mv.addObject("InCount", map.get("total"));

6
src/main/java/com/dreamchaser/depository_manage/mapper/DepositoryRecordMapper.java

@ -74,7 +74,11 @@ public interface DepositoryRecordMapper {
* @return
*/
List<ApplicationInRecordP> findApplicationInRecordPAll();
/**
* 查找所有入库记录
* @return
*/
List<ApplicationInRecordP> findApplicationInRecordPByDepositoryList(List<Integer> list);
/**
* 查询一段时间内的入库记录

25
src/main/java/com/dreamchaser/depository_manage/mapper/DepositoryRecordMapper.xml

@ -622,11 +622,34 @@
from applicationInRecordInfo
</select>
<select id="findApplicationInRecordPByDepositoryList" resultMap="applicationInRecord" parameterType="list">
select
<include refid="ApplicationInRecordInfo"/>
from applicationInRecordInfo
where 1 = 1
and did in
<foreach collection="list" index="index" item="depositoryId" open="(" separator="," close=")">
#{depositoryId}
</foreach>
</select>
<select id="findApplicationInRecordPForAPeriodOfTime" resultMap="applicationInRecord">
select
<include refid="ApplicationInRecordInfo"/>
from applicationInRecordInfo
where applicant_time between #{start} and #{end}
where 1 = 1
and applicant_time between #{start} and #{end}
<if test="list != null">
and did in
<foreach collection="list" index="index" item="depositoryId" open="(" separator="," close=")">
#{depositoryId}
</foreach>
</if>
</select>
<!-- 查询所有出库记录-->
<select id="findApplicationOutRecordPAll" resultMap="applicationOutRecord">

4
src/main/java/com/dreamchaser/depository_manage/service/DepositoryRecordService.java

@ -225,7 +225,7 @@ public interface DepositoryRecordService {
* 计算入库物料总额
* @return
*/
Map<String,Object> CalculateAllApplicationInAll();
Map<String,Object> CalculateAllApplicationInAll(List<Integer> list);
/**
* 计算出库物料总额
* @return
@ -345,7 +345,7 @@ public interface DepositoryRecordService {
* 计算入库物料总数
* @return
*/
Map<String,Object> CalculateAllApplicationInCount();
Map<String,Object> CalculateAllApplicationInCount(List<Integer> list);
/**
* 计算出库物料总数
* @return

9
src/main/java/com/dreamchaser/depository_manage/service/impl/DepositoryRecordServiceImpl.java

@ -349,7 +349,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
* @return
*/
@Override
public Map<String, Object> CalculateAllApplicationInCount() {
public Map<String, Object> CalculateAllApplicationInCount(List<Integer> list) {
// 获取当前时间
long now = System.currentTimeMillis();
@ -362,10 +362,12 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
Map<String, Object> mapForToday = new HashMap<>();
mapForToday.put("start", nowTimeForCalc);
mapForToday.put("end", now);
mapForToday.put("list",list);
// 用于查询昨天的入库记录
Map<String, Object> mapForYesterday = new HashMap<>();
mapForYesterday.put("start", yesterdayTimeForCalc);
mapForYesterday.put("end", nowTimeForCalc);
mapForYesterday.put("list",list);
// 查询今天目前为止的入库
List<ApplicationInRecordP> applicationInRecordPForToday = depositoryRecordMapper.findApplicationInRecordPForAPeriodOfTime(mapForToday);
@ -3115,7 +3117,6 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
String applyTime = (String) map.get("endDate");
map.put("endDate", DateUtil.DateTimeByDayToTimeStamp(applyTime));
}
List<RoleAndDepository> depositoryAndRole = roleService.findDepositoryAndRole(userByPort.getId());
List<Integer> depositoryIdList = new ArrayList<>();
for (RoleAndDepository depository : depositoryAndRole
@ -3462,9 +3463,9 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
* @return
*/
@Override
public Map<String, Object> CalculateAllApplicationInAll() {
public Map<String, Object> CalculateAllApplicationInAll(List<Integer> list) {
Map<String, Object> result = new HashMap<>();
List<ApplicationInRecordP> applicationInRecordPAll = depositoryRecordMapper.findApplicationInRecordPAll();
List<ApplicationInRecordP> applicationInRecordPAll = depositoryRecordMapper.findApplicationInRecordPByDepositoryList(list);
Double sum = 0.0;
Integer count = 0;
for (int i = 0; i < applicationInRecordPAll.size(); i++) {

Loading…
Cancel
Save