zjh
2024-06-26 e3dd9fc29f4e4934ae64f05c9a165383cee135dc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
package com.ltkj.web.controller.system;
 
import java.text.ParseException;
import java.util.*;
import javax.servlet.http.HttpServletResponse;
 
import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.ltkj.common.utils.DateUtils;
import com.ltkj.mall.service.IMallSchedulingTimeService;
import io.swagger.annotations.ApiParam;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import com.ltkj.common.annotation.Log;
import com.ltkj.common.core.controller.BaseController;
import com.ltkj.common.core.domain.AjaxResult;
import com.ltkj.common.enums.BusinessType;
import com.ltkj.mall.domain.StjMemo;
import com.ltkj.mall.service.IStjMemoService;
import com.ltkj.common.utils.poi.ExcelUtil;
import com.ltkj.common.core.page.TableDataInfo;
 
/**
 * 备忘录Controller
 *
 * @author ltkj_赵佳豪&李格
 * @date 2023-11-15
 */
@RestController
@RequestMapping("/mall/memo")
public class StjMemoController extends BaseController {
    @Autowired
    private IStjMemoService stjMemoService;
 
    @Autowired
    private IMallSchedulingTimeService mallSchedulingTimeService;
 
    /**
     * 查询备忘录列表
     */
//    @PreAuthorize("@ss.hasPermi('mall:memo:list')")
    @GetMapping("/list")
    public TableDataInfo list(StjMemo stjMemo) {
        startPage();
        List<StjMemo> list = stjMemoService.selectStjMemoList(stjMemo);
        return getDataTable(list);
    }
 
    /**
     * 导出备忘录列表
     */
//    @PreAuthorize("@ss.hasPermi('mall:memo:export')")
    @Log(title = "备忘录", businessType = BusinessType.EXPORT)
    @PostMapping("/export")
    public void export(HttpServletResponse response, StjMemo stjMemo) {
        List<StjMemo> list = stjMemoService.selectStjMemoList(stjMemo);
        ExcelUtil<StjMemo> util = new ExcelUtil<StjMemo>(StjMemo.class);
        util.exportExcel(response, list, "备忘录数据");
    }
 
    /**
     * 获取备忘录详细信息
     */
//    @PreAuthorize("@ss.hasPermi('mall:memo:query')")
    @GetMapping(value = "/{id}")
    public AjaxResult getInfo(@PathVariable("id") Long id) {
        return success(stjMemoService.selectStjMemoById(id));
    }
 
    /**
     * 新增备忘录
     */
//    @PreAuthorize("@ss.hasPermi('mall:memo:add')")
    @Log(title = "备忘录", businessType = BusinessType.INSERT)
    @PostMapping
    public AjaxResult add(@RequestBody StjMemo stjMemo) {
        stjMemo.setMFlag("0");
        return toAjax(stjMemoService.save(stjMemo));
    }
 
    /**
     * 修改备忘录
     */
//    @PreAuthorize("@ss.hasPermi('mall:memo:edit')")
    @Log(title = "备忘录", businessType = BusinessType.UPDATE)
    @PutMapping
    public AjaxResult edit(@RequestBody StjMemo stjMemo) {
        return toAjax(stjMemoService.saveOrUpdate(stjMemo));
    }
 
    /**
     * 删除备忘录
     */
//    @PreAuthorize("@ss.hasPermi('mall:memo:remove')")
    @Log(title = "备忘录", businessType = BusinessType.DELETE)
    @DeleteMapping("/{ids}")
    public AjaxResult remove(@PathVariable Long[] ids) {
        return toAjax(stjMemoService.removeByIds(Arrays.asList(ids)));
    }
 
    /**
     * 根据userid和日期查看当日所有事件
     */
    @GetMapping("/listByUserAndDate")
    public AjaxResult listByUserAndDate(@RequestParam String userId,
                                           @RequestParam Date mDate) {
        LambdaQueryWrapper<StjMemo> wq=new LambdaQueryWrapper<>();
        wq.eq(StjMemo::getUserId,userId);
        wq.eq(StjMemo::getMDate,mDate);
        List<StjMemo> list = stjMemoService.list(wq);
        return AjaxResult.success(list);
    }
 
 
    /**
     * 根据userid和日期查看当月所有事件
     */
    @GetMapping("/listByDate")
    public AjaxResult listByDate(@RequestParam String userId,
                                 @RequestParam Date mDate) {
//        Map<String,List<StjMemo>> res=new HashMap<>();
//        List<Date> dateList = mallSchedulingTimeService.getDateListByBetweenTime(DateUtil.format(DateUtil.beginOfMonth(mDate),"yyyy-MM-dd HH:mm:ss"),
//                DateUtil.format(DateUtil.endOfMonth(mDate),"yyyy-MM-dd HH:mm:ss"));
//
//        for (Date date : dateList) {
//            LambdaQueryWrapper<StjMemo> wq=new LambdaQueryWrapper<>();
//            wq.eq(StjMemo::getUserId,userId);
//            wq.eq(StjMemo::getMDate,date);
//            List<StjMemo> list = stjMemoService.list(wq);
//            String format = DateUtil.format(date, "yyyy-MM-dd");
//            if (list.size()==0){
//                StjMemo stjMemo=new StjMemo();
//                stjMemo.setTitle("无");
//                stjMemo.setMFlag("0");
//                list.add(stjMemo);
//            }
//            res.put(format,list);
//        }
//        return AjaxResult.success(res);
 
        LambdaQueryWrapper<StjMemo> wq=new LambdaQueryWrapper<>();
        wq.eq(StjMemo::getUserId,userId);
        wq.between(StjMemo::getMDate,(DateUtil.format(DateUtil.beginOfMonth(mDate),"yyyy-MM-dd")),(DateUtil.format(DateUtil.endOfMonth(mDate),"yyyy-MM-dd")));
        List<StjMemo> list = stjMemoService.list(wq);
        for (StjMemo stjMemo : list) {
            String formatDate = DateUtil.format(stjMemo.getMDate(),"yyyy-MM");
            stjMemo.setFormat(formatDate);
        }
        return AjaxResult.success(list);
    }
}