张延森 2 years ago
parent
commit
7283a1d3e5
28 changed files with 434 additions and 203 deletions
  1. 1
    1
      pom.xml
  2. 3
    0
      src/main/java/com/njyunzhi/invoice/common/Constants.java
  3. 93
    32
      src/main/java/com/njyunzhi/invoice/controller/TaInvoiceDetailController.java
  4. 33
    16
      src/main/java/com/njyunzhi/invoice/controller/TaInvoiceFillController.java
  5. 20
    23
      src/main/java/com/njyunzhi/invoice/controller/TaInvoiceItemTplController.java
  6. 11
    65
      src/main/java/com/njyunzhi/invoice/controller/TaInvoiceOrgController.java
  7. 36
    40
      src/main/java/com/njyunzhi/invoice/controller/TaInvoicePersonController.java
  8. 5
    1
      src/main/java/com/njyunzhi/invoice/entity/TaInvoiceDetail.java
  9. 1
    1
      src/main/java/com/njyunzhi/invoice/entity/TaInvoiceFill.java
  10. 1
    3
      src/main/java/com/njyunzhi/invoice/entity/TaInvoiceItemTpl.java
  11. 1
    1
      src/main/java/com/njyunzhi/invoice/entity/TaInvoiceOrg.java
  12. 12
    1
      src/main/java/com/njyunzhi/invoice/entity/TaInvoicePerson.java
  13. 4
    0
      src/main/java/com/njyunzhi/invoice/mapper/TaInvoiceDetailMapper.java
  14. 2
    0
      src/main/java/com/njyunzhi/invoice/mapper/TaInvoiceOrgMapper.java
  15. 4
    0
      src/main/java/com/njyunzhi/invoice/mapper/TaInvoicePersonMapper.java
  16. 3
    0
      src/main/java/com/njyunzhi/invoice/service/ITaInvoiceDetailService.java
  17. 1
    2
      src/main/java/com/njyunzhi/invoice/service/ITaInvoiceFillService.java
  18. 4
    0
      src/main/java/com/njyunzhi/invoice/service/ITaInvoiceOrgService.java
  19. 8
    0
      src/main/java/com/njyunzhi/invoice/service/ITaInvoicePersonService.java
  20. 16
    0
      src/main/java/com/njyunzhi/invoice/service/impl/TaInvoiceDetailServiceImpl.java
  21. 1
    2
      src/main/java/com/njyunzhi/invoice/service/impl/TaInvoiceFillServiceImpl.java
  22. 18
    0
      src/main/java/com/njyunzhi/invoice/service/impl/TaInvoiceOrgServiceImpl.java
  23. 71
    0
      src/main/java/com/njyunzhi/invoice/service/impl/TaInvoicePersonServiceImpl.java
  24. 0
    14
      src/main/resources/mapper/SysBankMapper.xml
  25. 64
    0
      src/main/resources/mapper/TaInvoiceDetailMapper.xml
  26. 0
    1
      src/main/resources/mapper/TaInvoiceFillMapper.xml
  27. 10
    0
      src/main/resources/mapper/TaInvoiceOrgMapper.xml
  28. 11
    0
      src/main/resources/mapper/TaInvoicePersonMapper.xml

+ 1
- 1
pom.xml View File

62
 		<dependency>
62
 		<dependency>
63
 			<groupId>com.alibaba</groupId>
63
 			<groupId>com.alibaba</groupId>
64
 			<artifactId>easyexcel</artifactId>
64
 			<artifactId>easyexcel</artifactId>
65
-			<version>2.0.4</version>
65
+			<version>3.1.1</version>
66
 		</dependency>
66
 		</dependency>
67
 		<!--excel end-->
67
 		<!--excel end-->
68
 
68
 

+ 3
- 0
src/main/java/com/njyunzhi/invoice/common/Constants.java View File

4
     public final static int STATUS_DELETE = -1;
4
     public final static int STATUS_DELETE = -1;
5
     public final static int STATUS_READY = 0;
5
     public final static int STATUS_READY = 0;
6
     public final static int STATUS_NORMAL = 1;
6
     public final static int STATUS_NORMAL = 1;
7
+
8
+
9
+    public final static int INVOICE_FINISHED = 2;
7
 }
10
 }

+ 93
- 32
src/main/java/com/njyunzhi/invoice/controller/TaInvoiceDetailController.java View File

4
 import com.baomidou.mybatisplus.core.metadata.IPage;
4
 import com.baomidou.mybatisplus.core.metadata.IPage;
5
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
5
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
6
 import com.njyunzhi.invoice.common.BaseController;
6
 import com.njyunzhi.invoice.common.BaseController;
7
+import com.njyunzhi.invoice.common.Constants;
8
+import com.njyunzhi.invoice.common.DateUtils;
7
 import com.njyunzhi.invoice.common.ResponseBean;
9
 import com.njyunzhi.invoice.common.ResponseBean;
10
+import com.njyunzhi.invoice.entity.TaInvoiceFill;
11
+import com.njyunzhi.invoice.entity.TaPerson;
12
+import com.njyunzhi.invoice.service.ITaInvoiceFillService;
8
 import io.swagger.annotations.Api;
13
 import io.swagger.annotations.Api;
9
 import io.swagger.annotations.ApiOperation;
14
 import io.swagger.annotations.ApiOperation;
10
 import io.swagger.annotations.ApiParam;
15
 import io.swagger.annotations.ApiParam;
39
     @Autowired
44
     @Autowired
40
     public ITaInvoiceDetailService iTaInvoiceDetailService;
45
     public ITaInvoiceDetailService iTaInvoiceDetailService;
41
 
46
 
47
+    @Autowired
48
+    public ITaInvoiceFillService iTaInvoiceFillService;
49
+
42
 
50
 
43
     /**
51
     /**
44
      * 分页查询列表
52
      * 分页查询列表
46
      * @param pageSize
54
      * @param pageSize
47
      * @return
55
      * @return
48
      */
56
      */
49
-    @RequestMapping(value="/admin/taInvoiceDetail",method= RequestMethod.GET)
57
+    @RequestMapping(value="/admin/invoice/{invoiceId}/detail",method= RequestMethod.GET)
50
     @ApiOperation(value="列表", notes = "列表", httpMethod = "GET", response = ResponseBean.class)
58
     @ApiOperation(value="列表", notes = "列表", httpMethod = "GET", response = ResponseBean.class)
51
     public ResponseBean taInvoiceDetailList(@ApiParam("页码") @RequestParam(value ="pageNum",defaultValue = "1") Integer pageNum,
59
     public ResponseBean taInvoiceDetailList(@ApiParam("页码") @RequestParam(value ="pageNum",defaultValue = "1") Integer pageNum,
52
-									 @ApiParam("单页数据量") @RequestParam(value ="pageSize",defaultValue = "10") Integer pageSize) throws Exception{
53
-
54
-		    IPage<TaInvoiceDetail> pg = new Page<>(pageNum, pageSize);
55
-            QueryWrapper<TaInvoiceDetail> queryWrapper = new QueryWrapper<>();
56
-            queryWrapper.orderByDesc("create_date");
60
+									 @ApiParam("单页数据量") @RequestParam(value ="pageSize",defaultValue = "10") Integer pageSize,
61
+                                     @ApiParam("班级ID") @PathVariable(value ="invoiceId") String invoiceId) throws Exception{
57
 
62
 
58
-            IPage<TaInvoiceDetail> result = iTaInvoiceDetailService.page(pg, queryWrapper);
59
-            return ResponseBean.success(result);
63
+        IPage<TaInvoiceDetail> pg = new Page<>(pageNum, pageSize);
64
+        QueryWrapper<TaInvoiceDetail> queryWrapper = new QueryWrapper<>();
65
+        queryWrapper.gt("status", Constants.STATUS_DELETE);
66
+        queryWrapper.eq("invoice_id",invoiceId);
67
+        queryWrapper.orderByDesc("create_date");
68
+        IPage<TaInvoiceDetail> result = iTaInvoiceDetailService.page(pg, queryWrapper);
69
+        return ResponseBean.success(result);
60
     }
70
     }
61
 
71
 
62
-    /**
63
-     * 保存对象
64
-     * @param taInvoiceDetail 实体对象
65
-     * @return
66
-     */
67
-    @RequestMapping(value="/admin/taInvoiceDetail",method= RequestMethod.POST)
68
-    @ApiOperation(value="保存", notes = "保存", httpMethod = "POST", response = ResponseBean.class)
69
-    public ResponseBean taInvoiceDetailAdd(@ApiParam("保存内容") @RequestBody TaInvoiceDetail taInvoiceDetail) throws Exception{
72
+    @RequestMapping(value="/admin/invoice/{invoiceId}/detail",method= RequestMethod.POST)
73
+    @ApiOperation(value="一键生成", notes = "一键生成", httpMethod = "POST", response = ResponseBean.class)
74
+    public ResponseBean taInvoiceDetailAdd(@ApiParam("班级ID") @PathVariable(value ="invoiceId") String invoiceId) throws Exception{
70
 
75
 
71
-        if (iTaInvoiceDetailService.save(taInvoiceDetail)){
72
-            return ResponseBean.success(taInvoiceDetail);
73
-        }else {
76
+        if (iTaInvoiceDetailService.createBatch(invoiceId)){
77
+            return ResponseBean.success("ok");
78
+        } else {
74
             return ResponseBean.error("保存失败, 请重试", ResponseBean.ERROR_UNAVAILABLE);
79
             return ResponseBean.error("保存失败, 请重试", ResponseBean.ERROR_UNAVAILABLE);
75
         }
80
         }
76
     }
81
     }
79
      * 根据id删除对象
84
      * 根据id删除对象
80
      * @param id  实体ID
85
      * @param id  实体ID
81
      */
86
      */
82
-    @RequestMapping(value="/admin/taInvoiceDetail/{id}", method= RequestMethod.DELETE)
87
+    @RequestMapping(value="/admin/invoice/detail/{id}", method= RequestMethod.DELETE)
83
     @ApiOperation(value="删除", notes = "删除", httpMethod = "DELETE", response = ResponseBean.class)
88
     @ApiOperation(value="删除", notes = "删除", httpMethod = "DELETE", response = ResponseBean.class)
84
-    public ResponseBean taInvoiceDetailDelete(@ApiParam("对象ID") @PathVariable Integer id) throws Exception{
89
+    public ResponseBean taInvoiceDetailDelete(@ApiParam("对象ID") @PathVariable String id) throws Exception{
85
         if(iTaInvoiceDetailService.removeById(id)){
90
         if(iTaInvoiceDetailService.removeById(id)){
86
             return ResponseBean.success("success");
91
             return ResponseBean.success("success");
87
         }else {
92
         }else {
95
      * @param taInvoiceDetail 实体对象
100
      * @param taInvoiceDetail 实体对象
96
      * @return
101
      * @return
97
      */
102
      */
98
-    @RequestMapping(value="/admin/taInvoiceDetail/{id}",method= RequestMethod.PUT)
103
+    @RequestMapping(value="/admin/invoice/{invoiceId}/detail/{id}",method= RequestMethod.PUT)
99
     @ApiOperation(value="更新", notes = "更新", httpMethod = "PUT", response = ResponseBean.class)
104
     @ApiOperation(value="更新", notes = "更新", httpMethod = "PUT", response = ResponseBean.class)
100
-    public ResponseBean taInvoiceDetailUpdate(@ApiParam("对象ID") @PathVariable Integer id,
101
-                                        @ApiParam("更新内容") @RequestBody TaInvoiceDetail taInvoiceDetail) throws Exception{
105
+    public ResponseBean taInvoiceDetailUpdate(@ApiParam("班级ID") @PathVariable(value ="invoiceId") String invoiceId,
106
+                                              @ApiParam("对象ID") @PathVariable String id,
107
+                                              @ApiParam("更新内容") @RequestBody TaInvoiceDetail taInvoiceDetail) throws Exception{
102
 
108
 
109
+        taInvoiceDetail.setDetailId(id);
110
+        taInvoiceDetail.setInvoiceId(invoiceId);
103
         if (iTaInvoiceDetailService.updateById(taInvoiceDetail)){
111
         if (iTaInvoiceDetailService.updateById(taInvoiceDetail)){
104
             return ResponseBean.success(iTaInvoiceDetailService.getById(id));
112
             return ResponseBean.success(iTaInvoiceDetailService.getById(id));
105
         }else {
113
         }else {
107
         }
115
         }
108
     }
116
     }
109
 
117
 
110
-    /**
111
-     * 根据id查询对象
112
-     * @param id  实体ID
113
-     */
114
-    @RequestMapping(value="/admin/taInvoiceDetail/{id}",method= RequestMethod.GET)
115
-    @ApiOperation(value="详情", notes = "详情", httpMethod = "GET", response = ResponseBean.class)
116
-    public ResponseBean taInvoiceDetailGet(@ApiParam("对象ID") @PathVariable Integer id) throws Exception{
117
-        return ResponseBean.success(iTaInvoiceDetailService.getById(id));
118
+    @RequestMapping(value="/h5/invoice/{invoiceId}/detail/{id}",method= RequestMethod.PUT)
119
+    @ApiOperation(value="H5确认报销单", notes = "H5确认报销单", httpMethod = "PUT", response = ResponseBean.class)
120
+    public ResponseBean invoiceConfirm(@ApiParam("班级ID") @PathVariable(value ="invoiceId") String invoiceId,
121
+                                       @ApiParam("对象ID") @PathVariable String id,
122
+                                       @ApiParam("更新内容") @RequestBody TaInvoiceDetail taInvoiceDetail) throws Exception{
123
+
124
+        TaPerson taPerson = currentPerson();
125
+
126
+        taInvoiceDetail.setDetailId(id);
127
+        taInvoiceDetail.setPersonId(taPerson.getPersonId());
128
+        taInvoiceDetail.setInvoiceId(invoiceId);
129
+        if (iTaInvoiceDetailService.updateById(taInvoiceDetail)){
130
+            return ResponseBean.success(iTaInvoiceDetailService.getById(id));
131
+        }else {
132
+            return ResponseBean.error("修改失败, 请重试", ResponseBean.ERROR_UNAVAILABLE);
133
+        }
134
+    }
135
+
136
+    private boolean getIsFinished(TaInvoiceFill taInvoiceFill) {
137
+        return Constants.INVOICE_FINISHED == taInvoiceFill.getStatus() ||
138
+                DateUtils.now().isAfter(taInvoiceFill.getEndDate());
139
+    }
140
+
141
+
142
+    @RequestMapping(value="/h5/invoice/{invoiceId}",method= RequestMethod.GET)
143
+    @ApiOperation(value="获取报销单", notes = "获取报销单", httpMethod = "GET", response = ResponseBean.class)
144
+    public ResponseBean getInvoice(@ApiParam("班级ID") @PathVariable(value ="invoiceId") String invoiceId) throws Exception{
145
+
146
+        TaInvoiceFill taInvoiceFill = iTaInvoiceFillService.getById(invoiceId);
147
+        if (null == taInvoiceFill || taInvoiceFill.getStatus() != Constants.STATUS_NORMAL) {
148
+            return ResponseBean.error("报销单不存在");
149
+        }
150
+
151
+        TaPerson taPerson = currentPerson();
152
+        TaInvoiceDetail taInvoiceDetail = iTaInvoiceDetailService.getByPerson(invoiceId, taPerson.getPersonId());
153
+        if (null == taInvoiceDetail) {
154
+            return ResponseBean.error("找不到报销数据或者您不在此次名单中");
155
+        }
156
+
157
+        taInvoiceDetail.setIsFinished(getIsFinished(taInvoiceFill));
158
+        return ResponseBean.success(taInvoiceDetail);
159
+    }
160
+
161
+    @RequestMapping(value="/h5/invoice/{invoiceId}/detail/{id}",method= RequestMethod.GET)
162
+    @ApiOperation(value="获取报销单详情", notes = "获取报销单详情", httpMethod = "GET", response = ResponseBean.class)
163
+    public ResponseBean getDetail(@ApiParam("班级ID") @PathVariable(value ="invoiceId") String invoiceId,
164
+                                       @ApiParam("对象ID") @PathVariable String id) throws Exception{
165
+
166
+        TaInvoiceFill taInvoiceFill = iTaInvoiceFillService.getById(invoiceId);
167
+        if (null == taInvoiceFill || taInvoiceFill.getStatus() != Constants.STATUS_NORMAL) {
168
+            return ResponseBean.error("报销单不存在");
169
+        }
170
+
171
+        TaPerson taPerson = currentPerson();
172
+        TaInvoiceDetail taInvoiceDetail = iTaInvoiceDetailService.getById(id);
173
+        if (null == taInvoiceDetail || taInvoiceDetail.getStatus() == Constants.STATUS_DELETE || !taPerson.getPersonId().equals(taInvoiceDetail.getPersonId())) {
174
+            return ResponseBean.error("找不到报销数据详情");
175
+        }
176
+
177
+        taInvoiceDetail.setIsFinished(getIsFinished(taInvoiceFill));
178
+        return ResponseBean.success(taInvoiceDetail);
118
     }
179
     }
119
 }
180
 }

+ 33
- 16
src/main/java/com/njyunzhi/invoice/controller/TaInvoiceFillController.java View File

4
 import com.baomidou.mybatisplus.core.metadata.IPage;
4
 import com.baomidou.mybatisplus.core.metadata.IPage;
5
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
5
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
6
 import com.njyunzhi.invoice.common.BaseController;
6
 import com.njyunzhi.invoice.common.BaseController;
7
+import com.njyunzhi.invoice.common.Constants;
7
 import com.njyunzhi.invoice.common.ResponseBean;
8
 import com.njyunzhi.invoice.common.ResponseBean;
9
+import com.njyunzhi.invoice.common.StringUtils;
8
 import io.swagger.annotations.Api;
10
 import io.swagger.annotations.Api;
9
 import io.swagger.annotations.ApiOperation;
11
 import io.swagger.annotations.ApiOperation;
10
 import io.swagger.annotations.ApiParam;
12
 import io.swagger.annotations.ApiParam;
20
 import com.njyunzhi.invoice.entity.TaInvoiceFill;
22
 import com.njyunzhi.invoice.entity.TaInvoiceFill;
21
 import org.springframework.web.bind.annotation.RestController;
23
 import org.springframework.web.bind.annotation.RestController;
22
 
24
 
25
+import java.util.List;
26
+
23
 /**
27
 /**
24
  * <p>
28
  * <p>
25
     * 报销主表 前端控制器
29
     * 报销主表 前端控制器
46
      * @param pageSize
50
      * @param pageSize
47
      * @return
51
      * @return
48
      */
52
      */
49
-    @RequestMapping(value="/admin/taInvoiceFill",method= RequestMethod.GET)
53
+    @RequestMapping(value="/{client}/invoice",method= RequestMethod.GET)
50
     @ApiOperation(value="列表", notes = "列表", httpMethod = "GET", response = ResponseBean.class)
54
     @ApiOperation(value="列表", notes = "列表", httpMethod = "GET", response = ResponseBean.class)
51
-    public ResponseBean taInvoiceFillList(@ApiParam("页码") @RequestParam(value ="pageNum",defaultValue = "1") Integer pageNum,
52
-									 @ApiParam("单页数据量") @RequestParam(value ="pageSize",defaultValue = "10") Integer pageSize) throws Exception{
55
+    public ResponseBean taInvoiceFillList(@ApiParam("客户端") @PathVariable String client,
56
+                                          @ApiParam("页码") @RequestParam(value ="pageNum",defaultValue = "1") Integer pageNum,
57
+                                          @ApiParam("单页数据量") @RequestParam(value ="pageSize",defaultValue = "10") Integer pageSize,
58
+                                          @ApiParam("班级名称") @RequestParam(value ="name", required = false) String name) throws Exception{
59
+        IPage<TaInvoiceFill> pg = new Page<>(pageNum, pageSize);
60
+        QueryWrapper<TaInvoiceFill> queryWrapper = new QueryWrapper<>();
61
+        queryWrapper.gt("status", Constants.STATUS_DELETE);
62
+        queryWrapper.like(!StringUtils.isEmpty(name), "name", "%" + name + "%");
63
+        queryWrapper.orderByDesc("create_date");
53
 
64
 
54
-		    IPage<TaInvoiceFill> pg = new Page<>(pageNum, pageSize);
55
-            QueryWrapper<TaInvoiceFill> queryWrapper = new QueryWrapper<>();
56
-            queryWrapper.orderByDesc("create_date");
65
+        // H5 端只能查看自己的报销单
66
+        if ("h5".equals(client)) {
67
+            queryWrapper.eq("person_id", currentPerson().getPersonId());
68
+        }
57
 
69
 
58
-            IPage<TaInvoiceFill> result = iTaInvoiceFillService.page(pg, queryWrapper);
59
-            return ResponseBean.success(result);
70
+        IPage<TaInvoiceFill> result = iTaInvoiceFillService.page(pg, queryWrapper);
71
+        return ResponseBean.success(result);
60
     }
72
     }
61
 
73
 
62
     /**
74
     /**
64
      * @param taInvoiceFill 实体对象
76
      * @param taInvoiceFill 实体对象
65
      * @return
77
      * @return
66
      */
78
      */
67
-    @RequestMapping(value="/admin/taInvoiceFill",method= RequestMethod.POST)
79
+    @RequestMapping(value="/admin/invoice",method= RequestMethod.POST)
68
     @ApiOperation(value="保存", notes = "保存", httpMethod = "POST", response = ResponseBean.class)
80
     @ApiOperation(value="保存", notes = "保存", httpMethod = "POST", response = ResponseBean.class)
69
     public ResponseBean taInvoiceFillAdd(@ApiParam("保存内容") @RequestBody TaInvoiceFill taInvoiceFill) throws Exception{
81
     public ResponseBean taInvoiceFillAdd(@ApiParam("保存内容") @RequestBody TaInvoiceFill taInvoiceFill) throws Exception{
70
 
82
 
83
+        if (null == taInvoiceFill.getStatus()) {
84
+            taInvoiceFill.setStatus(Constants.STATUS_READY);
85
+        }
86
+
71
         if (iTaInvoiceFillService.save(taInvoiceFill)){
87
         if (iTaInvoiceFillService.save(taInvoiceFill)){
72
             return ResponseBean.success(taInvoiceFill);
88
             return ResponseBean.success(taInvoiceFill);
73
         }else {
89
         }else {
79
      * 根据id删除对象
95
      * 根据id删除对象
80
      * @param id  实体ID
96
      * @param id  实体ID
81
      */
97
      */
82
-    @RequestMapping(value="/admin/taInvoiceFill/{id}", method= RequestMethod.DELETE)
98
+    @RequestMapping(value="/admin/invoice/{id}", method= RequestMethod.DELETE)
83
     @ApiOperation(value="删除", notes = "删除", httpMethod = "DELETE", response = ResponseBean.class)
99
     @ApiOperation(value="删除", notes = "删除", httpMethod = "DELETE", response = ResponseBean.class)
84
-    public ResponseBean taInvoiceFillDelete(@ApiParam("对象ID") @PathVariable Integer id) throws Exception{
85
-        if(iTaInvoiceFillService.removeById(id)){
100
+    public ResponseBean taInvoiceFillDelete(@ApiParam("对象ID") @PathVariable String id) throws Exception{
101
+        if(iTaInvoiceFillService.removeLogicById(id)){
86
             return ResponseBean.success("success");
102
             return ResponseBean.success("success");
87
         }else {
103
         }else {
88
             return ResponseBean.error("删除失败, 请重试", ResponseBean.ERROR_UNAVAILABLE);
104
             return ResponseBean.error("删除失败, 请重试", ResponseBean.ERROR_UNAVAILABLE);
95
      * @param taInvoiceFill 实体对象
111
      * @param taInvoiceFill 实体对象
96
      * @return
112
      * @return
97
      */
113
      */
98
-    @RequestMapping(value="/admin/taInvoiceFill/{id}",method= RequestMethod.PUT)
114
+    @RequestMapping(value="/admin/invoice/{id}",method= RequestMethod.PUT)
99
     @ApiOperation(value="更新", notes = "更新", httpMethod = "PUT", response = ResponseBean.class)
115
     @ApiOperation(value="更新", notes = "更新", httpMethod = "PUT", response = ResponseBean.class)
100
-    public ResponseBean taInvoiceFillUpdate(@ApiParam("对象ID") @PathVariable Integer id,
116
+    public ResponseBean taInvoiceFillUpdate(@ApiParam("对象ID") @PathVariable String id,
101
                                         @ApiParam("更新内容") @RequestBody TaInvoiceFill taInvoiceFill) throws Exception{
117
                                         @ApiParam("更新内容") @RequestBody TaInvoiceFill taInvoiceFill) throws Exception{
102
 
118
 
119
+        taInvoiceFill.setInvoiceId(id);
103
         if (iTaInvoiceFillService.updateById(taInvoiceFill)){
120
         if (iTaInvoiceFillService.updateById(taInvoiceFill)){
104
             return ResponseBean.success(iTaInvoiceFillService.getById(id));
121
             return ResponseBean.success(iTaInvoiceFillService.getById(id));
105
         }else {
122
         }else {
111
      * 根据id查询对象
128
      * 根据id查询对象
112
      * @param id  实体ID
129
      * @param id  实体ID
113
      */
130
      */
114
-    @RequestMapping(value="/admin/taInvoiceFill/{id}",method= RequestMethod.GET)
131
+    @RequestMapping(value="/admin/invoice/{id}",method= RequestMethod.GET)
115
     @ApiOperation(value="详情", notes = "详情", httpMethod = "GET", response = ResponseBean.class)
132
     @ApiOperation(value="详情", notes = "详情", httpMethod = "GET", response = ResponseBean.class)
116
-    public ResponseBean taInvoiceFillGet(@ApiParam("对象ID") @PathVariable Integer id) throws Exception{
133
+    public ResponseBean taInvoiceFillGet(@ApiParam("对象ID") @PathVariable String id) throws Exception{
117
         return ResponseBean.success(iTaInvoiceFillService.getById(id));
134
         return ResponseBean.success(iTaInvoiceFillService.getById(id));
118
     }
135
     }
119
 }
136
 }

+ 20
- 23
src/main/java/com/njyunzhi/invoice/controller/TaInvoiceItemTplController.java View File

5
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
5
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
6
 import com.njyunzhi.invoice.common.BaseController;
6
 import com.njyunzhi.invoice.common.BaseController;
7
 import com.njyunzhi.invoice.common.ResponseBean;
7
 import com.njyunzhi.invoice.common.ResponseBean;
8
+import com.njyunzhi.invoice.common.StringUtils;
8
 import io.swagger.annotations.Api;
9
 import io.swagger.annotations.Api;
9
 import io.swagger.annotations.ApiOperation;
10
 import io.swagger.annotations.ApiOperation;
10
 import io.swagger.annotations.ApiParam;
11
 import io.swagger.annotations.ApiParam;
46
      * @param pageSize
47
      * @param pageSize
47
      * @return
48
      * @return
48
      */
49
      */
49
-    @RequestMapping(value="/admin/taInvoiceItemTpl",method= RequestMethod.GET)
50
+    @RequestMapping(value="/admin/invoice/{invoiceId}/item",method= RequestMethod.GET)
50
     @ApiOperation(value="列表", notes = "列表", httpMethod = "GET", response = ResponseBean.class)
51
     @ApiOperation(value="列表", notes = "列表", httpMethod = "GET", response = ResponseBean.class)
51
     public ResponseBean taInvoiceItemTplList(@ApiParam("页码") @RequestParam(value ="pageNum",defaultValue = "1") Integer pageNum,
52
     public ResponseBean taInvoiceItemTplList(@ApiParam("页码") @RequestParam(value ="pageNum",defaultValue = "1") Integer pageNum,
52
-									 @ApiParam("单页数据量") @RequestParam(value ="pageSize",defaultValue = "10") Integer pageSize) throws Exception{
53
+									 @ApiParam("单页数据量") @RequestParam(value ="pageSize",defaultValue = "10") Integer pageSize,
54
+                                     @ApiParam("报销ID") @PathVariable(value ="invoiceId") String invoiceId) throws Exception{
53
 
55
 
54
-		    IPage<TaInvoiceItemTpl> pg = new Page<>(pageNum, pageSize);
55
-            QueryWrapper<TaInvoiceItemTpl> queryWrapper = new QueryWrapper<>();
56
-            queryWrapper.orderByDesc("create_date");
57
-
58
-            IPage<TaInvoiceItemTpl> result = iTaInvoiceItemTplService.page(pg, queryWrapper);
59
-            return ResponseBean.success(result);
56
+        IPage<TaInvoiceItemTpl> pg = new Page<>(pageNum, pageSize);
57
+        QueryWrapper<TaInvoiceItemTpl> queryWrapper = new QueryWrapper<>();
58
+        queryWrapper.orderByDesc("create_date");
59
+        queryWrapper.eq("invoice_id",invoiceId);
60
+        IPage<TaInvoiceItemTpl> result = iTaInvoiceItemTplService.page(pg, queryWrapper);
61
+        return ResponseBean.success(result);
60
     }
62
     }
61
 
63
 
62
     /**
64
     /**
64
      * @param taInvoiceItemTpl 实体对象
66
      * @param taInvoiceItemTpl 实体对象
65
      * @return
67
      * @return
66
      */
68
      */
67
-    @RequestMapping(value="/admin/taInvoiceItemTpl",method= RequestMethod.POST)
69
+    @RequestMapping(value="/admin/invoice/{invoiceId}/item",method= RequestMethod.POST)
68
     @ApiOperation(value="保存", notes = "保存", httpMethod = "POST", response = ResponseBean.class)
70
     @ApiOperation(value="保存", notes = "保存", httpMethod = "POST", response = ResponseBean.class)
69
-    public ResponseBean taInvoiceItemTplAdd(@ApiParam("保存内容") @RequestBody TaInvoiceItemTpl taInvoiceItemTpl) throws Exception{
71
+    public ResponseBean taInvoiceItemTplAdd(@ApiParam("报销ID") @PathVariable(value ="invoiceId") String invoiceId,
72
+                                            @ApiParam("保存内容") @RequestBody TaInvoiceItemTpl taInvoiceItemTpl) throws Exception{
70
 
73
 
74
+        taInvoiceItemTpl.setInvoiceId(invoiceId);
71
         if (iTaInvoiceItemTplService.save(taInvoiceItemTpl)){
75
         if (iTaInvoiceItemTplService.save(taInvoiceItemTpl)){
72
             return ResponseBean.success(taInvoiceItemTpl);
76
             return ResponseBean.success(taInvoiceItemTpl);
73
         }else {
77
         }else {
79
      * 根据id删除对象
83
      * 根据id删除对象
80
      * @param id  实体ID
84
      * @param id  实体ID
81
      */
85
      */
82
-    @RequestMapping(value="/admin/taInvoiceItemTpl/{id}", method= RequestMethod.DELETE)
86
+    @RequestMapping(value="/admin/invoice/{invoiceId}/item/{id}", method= RequestMethod.DELETE)
83
     @ApiOperation(value="删除", notes = "删除", httpMethod = "DELETE", response = ResponseBean.class)
87
     @ApiOperation(value="删除", notes = "删除", httpMethod = "DELETE", response = ResponseBean.class)
84
     public ResponseBean taInvoiceItemTplDelete(@ApiParam("对象ID") @PathVariable Integer id) throws Exception{
88
     public ResponseBean taInvoiceItemTplDelete(@ApiParam("对象ID") @PathVariable Integer id) throws Exception{
85
         if(iTaInvoiceItemTplService.removeById(id)){
89
         if(iTaInvoiceItemTplService.removeById(id)){
95
      * @param taInvoiceItemTpl 实体对象
99
      * @param taInvoiceItemTpl 实体对象
96
      * @return
100
      * @return
97
      */
101
      */
98
-    @RequestMapping(value="/admin/taInvoiceItemTpl/{id}",method= RequestMethod.PUT)
102
+    @RequestMapping(value="/admin/invoice/{invoiceId}/item/{id}",method= RequestMethod.PUT)
99
     @ApiOperation(value="更新", notes = "更新", httpMethod = "PUT", response = ResponseBean.class)
103
     @ApiOperation(value="更新", notes = "更新", httpMethod = "PUT", response = ResponseBean.class)
100
-    public ResponseBean taInvoiceItemTplUpdate(@ApiParam("对象ID") @PathVariable Integer id,
101
-                                        @ApiParam("更新内容") @RequestBody TaInvoiceItemTpl taInvoiceItemTpl) throws Exception{
104
+    public ResponseBean taInvoiceItemTplUpdate(@ApiParam("报销ID") @PathVariable(value ="invoiceId") String invoiceId,
105
+                                               @ApiParam("对象ID") @PathVariable Integer id,
106
+                                               @ApiParam("更新内容") @RequestBody TaInvoiceItemTpl taInvoiceItemTpl) throws Exception{
102
 
107
 
108
+        taInvoiceItemTpl.setInvoiceId(invoiceId);
103
         if (iTaInvoiceItemTplService.updateById(taInvoiceItemTpl)){
109
         if (iTaInvoiceItemTplService.updateById(taInvoiceItemTpl)){
104
             return ResponseBean.success(iTaInvoiceItemTplService.getById(id));
110
             return ResponseBean.success(iTaInvoiceItemTplService.getById(id));
105
         }else {
111
         }else {
107
         }
113
         }
108
     }
114
     }
109
 
115
 
110
-    /**
111
-     * 根据id查询对象
112
-     * @param id  实体ID
113
-     */
114
-    @RequestMapping(value="/admin/taInvoiceItemTpl/{id}",method= RequestMethod.GET)
115
-    @ApiOperation(value="详情", notes = "详情", httpMethod = "GET", response = ResponseBean.class)
116
-    public ResponseBean taInvoiceItemTplGet(@ApiParam("对象ID") @PathVariable Integer id) throws Exception{
117
-        return ResponseBean.success(iTaInvoiceItemTplService.getById(id));
118
-    }
119
 }
116
 }

+ 11
- 65
src/main/java/com/njyunzhi/invoice/controller/TaInvoiceOrgController.java View File

4
 import com.baomidou.mybatisplus.core.metadata.IPage;
4
 import com.baomidou.mybatisplus.core.metadata.IPage;
5
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
5
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
6
 import com.njyunzhi.invoice.common.BaseController;
6
 import com.njyunzhi.invoice.common.BaseController;
7
+import com.njyunzhi.invoice.common.Constants;
7
 import com.njyunzhi.invoice.common.ResponseBean;
8
 import com.njyunzhi.invoice.common.ResponseBean;
8
 import io.swagger.annotations.Api;
9
 import io.swagger.annotations.Api;
9
 import io.swagger.annotations.ApiOperation;
10
 import io.swagger.annotations.ApiOperation;
46
      * @param pageSize
47
      * @param pageSize
47
      * @return
48
      * @return
48
      */
49
      */
49
-    @RequestMapping(value="/taInvoiceOrg",method= RequestMethod.GET)
50
+    @RequestMapping(value="/{client}/invoice/{invoiceId}/org",method= RequestMethod.GET)
50
     @ApiOperation(value="列表", notes = "列表", httpMethod = "GET", response = ResponseBean.class)
51
     @ApiOperation(value="列表", notes = "列表", httpMethod = "GET", response = ResponseBean.class)
51
     public ResponseBean taInvoiceOrgList(@ApiParam("页码") @RequestParam(value ="pageNum",defaultValue = "1") Integer pageNum,
52
     public ResponseBean taInvoiceOrgList(@ApiParam("页码") @RequestParam(value ="pageNum",defaultValue = "1") Integer pageNum,
52
-									 @ApiParam("单页数据量") @RequestParam(value ="pageSize",defaultValue = "10") Integer pageSize) throws Exception{
53
+                                         @ApiParam("单页数据量") @RequestParam(value ="pageSize",defaultValue = "10") Integer pageSize,
54
+                                         @ApiParam("班级ID") @PathVariable(value ="invoiceId") String invoiceId) throws Exception{
53
 
55
 
54
-		    IPage<TaInvoiceOrg> pg = new Page<>(pageNum, pageSize);
55
-            QueryWrapper<TaInvoiceOrg> queryWrapper = new QueryWrapper<>();
56
-            queryWrapper.orderByDesc("create_date");
56
+        IPage<TaInvoiceOrg> pg = new Page<>(pageNum, pageSize);
57
+        QueryWrapper<TaInvoiceOrg> queryWrapper = new QueryWrapper<>();
58
+        queryWrapper.gt("status", Constants.STATUS_DELETE);
59
+        queryWrapper.eq("invoice_id", invoiceId);
60
+        queryWrapper.orderByDesc("create_date");
57
 
61
 
58
-            IPage<TaInvoiceOrg> result = iTaInvoiceOrgService.page(pg, queryWrapper);
59
-            return ResponseBean.success(result);
60
-    }
61
-
62
-    /**
63
-     * 保存对象
64
-     * @param taInvoiceOrg 实体对象
65
-     * @return
66
-     */
67
-    @RequestMapping(value="/taInvoiceOrg",method= RequestMethod.POST)
68
-    @ApiOperation(value="保存", notes = "保存", httpMethod = "POST", response = ResponseBean.class)
69
-    public ResponseBean taInvoiceOrgAdd(@ApiParam("保存内容") @RequestBody TaInvoiceOrg taInvoiceOrg) throws Exception{
70
-
71
-        if (iTaInvoiceOrgService.save(taInvoiceOrg)){
72
-            return ResponseBean.success(taInvoiceOrg);
73
-        }else {
74
-            return ResponseBean.error("保存失败, 请重试", ResponseBean.ERROR_UNAVAILABLE);
75
-        }
76
-    }
77
-
78
-    /**
79
-     * 根据id删除对象
80
-     * @param id  实体ID
81
-     */
82
-    @RequestMapping(value="/taInvoiceOrg/{id}", method= RequestMethod.DELETE)
83
-    @ApiOperation(value="删除", notes = "删除", httpMethod = "DELETE", response = ResponseBean.class)
84
-    public ResponseBean taInvoiceOrgDelete(@ApiParam("对象ID") @PathVariable Integer id) throws Exception{
85
-        if(iTaInvoiceOrgService.removeById(id)){
86
-            return ResponseBean.success("success");
87
-        }else {
88
-            return ResponseBean.error("删除失败, 请重试", ResponseBean.ERROR_UNAVAILABLE);
89
-        }
90
-    }
91
-
92
-    /**
93
-     * 修改对象
94
-     * @param id  实体ID
95
-     * @param taInvoiceOrg 实体对象
96
-     * @return
97
-     */
98
-    @RequestMapping(value="/taInvoiceOrg/{id}",method= RequestMethod.PUT)
99
-    @ApiOperation(value="更新", notes = "更新", httpMethod = "PUT", response = ResponseBean.class)
100
-    public ResponseBean taInvoiceOrgUpdate(@ApiParam("对象ID") @PathVariable Integer id,
101
-                                        @ApiParam("更新内容") @RequestBody TaInvoiceOrg taInvoiceOrg) throws Exception{
102
-
103
-        if (iTaInvoiceOrgService.updateById(taInvoiceOrg)){
104
-            return ResponseBean.success(iTaInvoiceOrgService.getById(id));
105
-        }else {
106
-            return ResponseBean.error("修改失败, 请重试", ResponseBean.ERROR_UNAVAILABLE);
107
-        }
108
-    }
109
-
110
-    /**
111
-     * 根据id查询对象
112
-     * @param id  实体ID
113
-     */
114
-    @RequestMapping(value="/taInvoiceOrg/{id}",method= RequestMethod.GET)
115
-    @ApiOperation(value="详情", notes = "详情", httpMethod = "GET", response = ResponseBean.class)
116
-    public ResponseBean taInvoiceOrgGet(@ApiParam("对象ID") @PathVariable Integer id) throws Exception{
117
-        return ResponseBean.success(iTaInvoiceOrgService.getById(id));
62
+        IPage<TaInvoiceOrg> result = iTaInvoiceOrgService.page(pg, queryWrapper);
63
+        return ResponseBean.success(result);
118
     }
64
     }
119
 }
65
 }

+ 36
- 40
src/main/java/com/njyunzhi/invoice/controller/TaInvoicePersonController.java View File

4
 import com.baomidou.mybatisplus.core.metadata.IPage;
4
 import com.baomidou.mybatisplus.core.metadata.IPage;
5
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
5
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
6
 import com.njyunzhi.invoice.common.BaseController;
6
 import com.njyunzhi.invoice.common.BaseController;
7
+import com.njyunzhi.invoice.common.Constants;
7
 import com.njyunzhi.invoice.common.ResponseBean;
8
 import com.njyunzhi.invoice.common.ResponseBean;
9
+import com.njyunzhi.invoice.common.StringUtils;
10
+import com.njyunzhi.invoice.entity.TaInvoiceOrg;
8
 import com.njyunzhi.invoice.service.ITaInvoiceOrgService;
11
 import com.njyunzhi.invoice.service.ITaInvoiceOrgService;
9
 import io.swagger.annotations.Api;
12
 import io.swagger.annotations.Api;
10
 import io.swagger.annotations.ApiOperation;
13
 import io.swagger.annotations.ApiOperation;
20
 import com.njyunzhi.invoice.service.ITaInvoicePersonService;
23
 import com.njyunzhi.invoice.service.ITaInvoicePersonService;
21
 import com.njyunzhi.invoice.entity.TaInvoicePerson;
24
 import com.njyunzhi.invoice.entity.TaInvoicePerson;
22
 import org.springframework.web.bind.annotation.RestController;
25
 import org.springframework.web.bind.annotation.RestController;
26
+import org.springframework.web.multipart.MultipartFile;
27
+
28
+import java.util.List;
23
 
29
 
24
 /**
30
 /**
25
  * <p>
31
  * <p>
50
      * @param pageSize
56
      * @param pageSize
51
      * @return
57
      * @return
52
      */
58
      */
53
-    @RequestMapping(value="/admin/invoice/person",method= RequestMethod.GET)
59
+    @RequestMapping(value="/{client}/invoice/{invoiceId}/person",method= RequestMethod.GET)
54
     @ApiOperation(value="列表", notes = "列表", httpMethod = "GET", response = ResponseBean.class)
60
     @ApiOperation(value="列表", notes = "列表", httpMethod = "GET", response = ResponseBean.class)
55
     public ResponseBean taInvoicePersonList(@ApiParam("页码") @RequestParam(value ="pageNum",defaultValue = "1") Integer pageNum,
61
     public ResponseBean taInvoicePersonList(@ApiParam("页码") @RequestParam(value ="pageNum",defaultValue = "1") Integer pageNum,
56
-									 @ApiParam("单页数据量") @RequestParam(value ="pageSize",defaultValue = "10") Integer pageSize) throws Exception{
57
-
62
+                                            @ApiParam("单页数据量") @RequestParam(value ="pageSize",defaultValue = "10") Integer pageSize,
63
+                                            @ApiParam("班级ID") @PathVariable(value ="invoiceId") String invoiceId,
64
+                                            @ApiParam("所属单位") @RequestParam(value ="invoiceOrgId") String invoiceOrgId) throws Exception {
58
         IPage<TaInvoicePerson> pg = new Page<>(pageNum, pageSize);
65
         IPage<TaInvoicePerson> pg = new Page<>(pageNum, pageSize);
59
         QueryWrapper<TaInvoicePerson> queryWrapper = new QueryWrapper<>();
66
         QueryWrapper<TaInvoicePerson> queryWrapper = new QueryWrapper<>();
67
+        queryWrapper.gt("status", Constants.STATUS_DELETE);
68
+        queryWrapper.eq("invoice_id", invoiceId);
69
+        queryWrapper.eq(!StringUtils.isEmpty(invoiceOrgId), "invoice_org_id", invoiceOrgId);
60
         queryWrapper.orderByDesc("create_date");
70
         queryWrapper.orderByDesc("create_date");
61
-
62
-        IPage<TaInvoicePerson> result = iTaInvoicePersonService.page(pg, queryWrapper);
71
+        IPage<TaInvoicePerson> result = iTaInvoicePersonService.page(pg,queryWrapper);
63
         return ResponseBean.success(result);
72
         return ResponseBean.success(result);
64
     }
73
     }
65
 
74
 
68
      * @param taInvoicePerson 实体对象
77
      * @param taInvoicePerson 实体对象
69
      * @return
78
      * @return
70
      */
79
      */
71
-    @RequestMapping(value="/admin/invoice/person",method= RequestMethod.POST)
80
+    @RequestMapping(value="/admin/invoice/{invoiceId}/person",method= RequestMethod.POST)
72
     @ApiOperation(value="保存", notes = "保存", httpMethod = "POST", response = ResponseBean.class)
81
     @ApiOperation(value="保存", notes = "保存", httpMethod = "POST", response = ResponseBean.class)
73
-    public ResponseBean taInvoicePersonAdd(@ApiParam("保存内容") @RequestBody TaInvoicePerson taInvoicePerson) throws Exception {
74
-
75
-        iTaInvoiceOrgService.getExistBy("", taInvoicePerson.getName())
82
+    public ResponseBean taInvoicePersonAdd(@ApiParam("班级ID") @PathVariable(value ="invoiceId") String invoiceId,
83
+                                           @ApiParam("保存内容") @RequestBody TaInvoicePerson taInvoicePerson) throws Exception {
84
+        if (StringUtils.isEmpty(taInvoicePerson.getOrgName())) {
85
+            return ResponseBean.error("未找到单位信息");
86
+        }
76
 
87
 
77
-        if (iTaInvoicePersonService.save(taInvoicePerson)){
88
+        taInvoicePerson.setInvoiceId(invoiceId);
89
+        if (iTaInvoicePersonService.createNew(taInvoicePerson)){
78
             return ResponseBean.success(taInvoicePerson);
90
             return ResponseBean.success(taInvoicePerson);
79
         } else {
91
         } else {
80
             return ResponseBean.error("保存失败, 请重试", ResponseBean.ERROR_UNAVAILABLE);
92
             return ResponseBean.error("保存失败, 请重试", ResponseBean.ERROR_UNAVAILABLE);
81
         }
93
         }
82
     }
94
     }
95
+    /**
96
+     * 批量导入
97
+     * @return
98
+     */
99
+    @RequestMapping(value="/admin/invoice/{invoiceId}/person/import",method= RequestMethod.POST)
100
+    @ApiOperation(value="批量导入", notes = "批量导入", httpMethod = "POST", response = ResponseBean.class)
101
+    public ResponseBean upload(@ApiParam("班级ID") @PathVariable(value = "invoiceId") String invoiceId,
102
+                               @ApiParam("保存内容") @RequestParam(value = "file") MultipartFile file) throws Exception {
103
+        iTaInvoicePersonService.batchUpload(invoiceId, file);
104
+        return ResponseBean.success("ok");
105
+    }
83
 
106
 
84
     /**
107
     /**
85
      * 根据id删除对象
108
      * 根据id删除对象
86
      * @param id  实体ID
109
      * @param id  实体ID
87
      */
110
      */
88
-    @RequestMapping(value="/admin/invoice/person/{id}", method= RequestMethod.DELETE)
111
+    @RequestMapping(value="/admin/invoice/{invoiceId}/person/{id}", method= RequestMethod.DELETE)
89
     @ApiOperation(value="删除", notes = "删除", httpMethod = "DELETE", response = ResponseBean.class)
112
     @ApiOperation(value="删除", notes = "删除", httpMethod = "DELETE", response = ResponseBean.class)
90
-    public ResponseBean taInvoicePersonDelete(@ApiParam("对象ID") @PathVariable Integer id) throws Exception{
91
-        if(iTaInvoicePersonService.removeById(id)){
113
+    public ResponseBean taInvoicePersonDelete(@ApiParam("对象ID") @PathVariable String id) throws Exception{
114
+        if(iTaInvoicePersonService.removeLogicById(id)){
92
             return ResponseBean.success("success");
115
             return ResponseBean.success("success");
93
         }else {
116
         }else {
94
             return ResponseBean.error("删除失败, 请重试", ResponseBean.ERROR_UNAVAILABLE);
117
             return ResponseBean.error("删除失败, 请重试", ResponseBean.ERROR_UNAVAILABLE);
95
         }
118
         }
96
     }
119
     }
97
 
120
 
98
-    /**
99
-     * 修改对象
100
-     * @param id  实体ID
101
-     * @param taInvoicePerson 实体对象
102
-     * @return
103
-     */
104
-    @RequestMapping(value="/admin/invoice/person/{id}",method= RequestMethod.PUT)
105
-    @ApiOperation(value="更新", notes = "更新", httpMethod = "PUT", response = ResponseBean.class)
106
-    public ResponseBean taInvoicePersonUpdate(@ApiParam("对象ID") @PathVariable Integer id,
107
-                                        @ApiParam("更新内容") @RequestBody TaInvoicePerson taInvoicePerson) throws Exception{
108
-
109
-        if (iTaInvoicePersonService.updateById(taInvoicePerson)){
110
-            return ResponseBean.success(iTaInvoicePersonService.getById(id));
111
-        }else {
112
-            return ResponseBean.error("修改失败, 请重试", ResponseBean.ERROR_UNAVAILABLE);
113
-        }
114
-    }
115
-
116
-    /**
117
-     * 根据id查询对象
118
-     * @param id  实体ID
119
-     */
120
-    @RequestMapping(value="/admin/invoice/person/{id}",method= RequestMethod.GET)
121
-    @ApiOperation(value="详情", notes = "详情", httpMethod = "GET", response = ResponseBean.class)
122
-    public ResponseBean taInvoicePersonGet(@ApiParam("对象ID") @PathVariable Integer id) throws Exception{
123
-        return ResponseBean.success(iTaInvoicePersonService.getById(id));
124
-    }
125
 }
121
 }

+ 5
- 1
src/main/java/com/njyunzhi/invoice/entity/TaInvoiceDetail.java View File

2
 
2
 
3
 import com.baomidou.mybatisplus.annotation.IdType;
3
 import com.baomidou.mybatisplus.annotation.IdType;
4
 import java.time.LocalDateTime;
4
 import java.time.LocalDateTime;
5
+
6
+import com.baomidou.mybatisplus.annotation.TableField;
5
 import com.baomidou.mybatisplus.annotation.TableId;
7
 import com.baomidou.mybatisplus.annotation.TableId;
6
 import java.io.Serializable;
8
 import java.io.Serializable;
7
 import io.swagger.annotations.ApiModel;
9
 import io.swagger.annotations.ApiModel;
90
     @ApiModelProperty(value = "创建日期")
92
     @ApiModelProperty(value = "创建日期")
91
     private LocalDateTime createDate;
93
     private LocalDateTime createDate;
92
 
94
 
93
-
95
+    @ApiModelProperty("是否结束")
96
+    @TableField(exist = false)
97
+    private Boolean isFinished;
94
 }
98
 }

+ 1
- 1
src/main/java/com/njyunzhi/invoice/entity/TaInvoiceFill.java View File

27
     private static final long serialVersionUID = 1L;
27
     private static final long serialVersionUID = 1L;
28
 
28
 
29
     @ApiModelProperty(value = "报销ID")
29
     @ApiModelProperty(value = "报销ID")
30
-    @TableId(value = "invoice_id", type = IdType.INPUT)
30
+    @TableId(value = "invoice_id", type = IdType.ASSIGN_UUID)
31
     private String invoiceId;
31
     private String invoiceId;
32
 
32
 
33
     @ApiModelProperty(value = "名称")
33
     @ApiModelProperty(value = "名称")

+ 1
- 3
src/main/java/com/njyunzhi/invoice/entity/TaInvoiceItemTpl.java View File

27
     private static final long serialVersionUID = 1L;
27
     private static final long serialVersionUID = 1L;
28
 
28
 
29
     @ApiModelProperty(value = "项目ID")
29
     @ApiModelProperty(value = "项目ID")
30
-    @TableId(value = "invoice_item_tpl_id", type = IdType.INPUT)
30
+    @TableId(value = "invoice_item_tpl_id", type = IdType.AUTO)
31
     private Integer invoiceItemTplId;
31
     private Integer invoiceItemTplId;
32
 
32
 
33
     @ApiModelProperty(value = "报销ID")
33
     @ApiModelProperty(value = "报销ID")
44
 
44
 
45
     @ApiModelProperty(value = "创建日期")
45
     @ApiModelProperty(value = "创建日期")
46
     private LocalDateTime createDate;
46
     private LocalDateTime createDate;
47
-
48
-
49
 }
47
 }

+ 1
- 1
src/main/java/com/njyunzhi/invoice/entity/TaInvoiceOrg.java View File

27
     private static final long serialVersionUID = 1L;
27
     private static final long serialVersionUID = 1L;
28
 
28
 
29
     @ApiModelProperty(value = "单位ID")
29
     @ApiModelProperty(value = "单位ID")
30
-    @TableId(value = "invoice_org_id", type = IdType.INPUT)
30
+    @TableId(value = "invoice_org_id", type = IdType.ASSIGN_UUID)
31
     private String invoiceOrgId;
31
     private String invoiceOrgId;
32
 
32
 
33
     @ApiModelProperty(value = "映射ID")
33
     @ApiModelProperty(value = "映射ID")

+ 12
- 1
src/main/java/com/njyunzhi/invoice/entity/TaInvoicePerson.java View File

1
 package com.njyunzhi.invoice.entity;
1
 package com.njyunzhi.invoice.entity;
2
 
2
 
3
+import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
4
+import com.alibaba.excel.annotation.ExcelProperty;
3
 import com.baomidou.mybatisplus.annotation.IdType;
5
 import com.baomidou.mybatisplus.annotation.IdType;
4
 import java.time.LocalDateTime;
6
 import java.time.LocalDateTime;
7
+
8
+import com.baomidou.mybatisplus.annotation.TableField;
5
 import com.baomidou.mybatisplus.annotation.TableId;
9
 import com.baomidou.mybatisplus.annotation.TableId;
6
 import java.io.Serializable;
10
 import java.io.Serializable;
7
 import io.swagger.annotations.ApiModel;
11
 import io.swagger.annotations.ApiModel;
20
  */
24
  */
21
 @Data
25
 @Data
22
 @EqualsAndHashCode(callSuper = false)
26
 @EqualsAndHashCode(callSuper = false)
23
-@Accessors(chain = true)
27
+@ExcelIgnoreUnannotated
24
 @ApiModel(value="TaInvoicePerson对象", description="报销人员")
28
 @ApiModel(value="TaInvoicePerson对象", description="报销人员")
25
 public class TaInvoicePerson implements Serializable {
29
 public class TaInvoicePerson implements Serializable {
26
 
30
 
39
     @ApiModelProperty(value = "所属单位")
43
     @ApiModelProperty(value = "所属单位")
40
     private String orgId;
44
     private String orgId;
41
 
45
 
46
+    @ExcelProperty(index = 1)
42
     @ApiModelProperty(value = "名称")
47
     @ApiModelProperty(value = "名称")
48
+    @TableField("`name`")
43
     private String name;
49
     private String name;
44
 
50
 
45
     @ApiModelProperty(value = "人员手机号")
51
     @ApiModelProperty(value = "人员手机号")
51
     @ApiModelProperty(value = "创建日期")
57
     @ApiModelProperty(value = "创建日期")
52
     private LocalDateTime createDate;
58
     private LocalDateTime createDate;
53
 
59
 
60
+    @ApiModelProperty(value = "报销ID")
61
+    private String invoiceId;
54
 
62
 
63
+    @ExcelProperty(index = 0)
64
+    @ApiModelProperty(value = "单位名称")
65
+    private String orgName;
55
 }
66
 }

+ 4
- 0
src/main/java/com/njyunzhi/invoice/mapper/TaInvoiceDetailMapper.java View File

3
 import com.njyunzhi.invoice.entity.TaInvoiceDetail;
3
 import com.njyunzhi.invoice.entity.TaInvoiceDetail;
4
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
5
 import org.apache.ibatis.annotations.Mapper;
5
 import org.apache.ibatis.annotations.Mapper;
6
+import org.apache.ibatis.annotations.Param;
6
 
7
 
7
 /**
8
 /**
8
  * <p>
9
  * <p>
15
 @Mapper
16
 @Mapper
16
 public interface TaInvoiceDetailMapper extends BaseMapper<TaInvoiceDetail> {
17
 public interface TaInvoiceDetailMapper extends BaseMapper<TaInvoiceDetail> {
17
 
18
 
19
+    int createBatch(@Param("invoiceId") String invoiceId);
20
+
21
+    TaInvoiceDetail getByPerson(@Param("invoiceId") String invoiceId,@Param("personId") String personId);
18
 }
22
 }

+ 2
- 0
src/main/java/com/njyunzhi/invoice/mapper/TaInvoiceOrgMapper.java View File

3
 import com.njyunzhi.invoice.entity.TaInvoiceOrg;
3
 import com.njyunzhi.invoice.entity.TaInvoiceOrg;
4
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
5
 import org.apache.ibatis.annotations.Mapper;
5
 import org.apache.ibatis.annotations.Mapper;
6
+import org.apache.ibatis.annotations.Param;
6
 
7
 
7
 /**
8
 /**
8
  * <p>
9
  * <p>
15
 @Mapper
16
 @Mapper
16
 public interface TaInvoiceOrgMapper extends BaseMapper<TaInvoiceOrg> {
17
 public interface TaInvoiceOrgMapper extends BaseMapper<TaInvoiceOrg> {
17
 
18
 
19
+    TaInvoiceOrg getByInvoiceAndOrgName(@Param("invoiceId") String invoiceId, @Param("orgName") String orgName);
18
 }
20
 }

+ 4
- 0
src/main/java/com/njyunzhi/invoice/mapper/TaInvoicePersonMapper.java View File

3
 import com.njyunzhi.invoice.entity.TaInvoicePerson;
3
 import com.njyunzhi.invoice.entity.TaInvoicePerson;
4
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
5
 import org.apache.ibatis.annotations.Mapper;
5
 import org.apache.ibatis.annotations.Mapper;
6
+import org.apache.ibatis.annotations.Param;
7
+
8
+import java.util.List;
6
 
9
 
7
 /**
10
 /**
8
  * <p>
11
  * <p>
15
 @Mapper
18
 @Mapper
16
 public interface TaInvoicePersonMapper extends BaseMapper<TaInvoicePerson> {
19
 public interface TaInvoicePersonMapper extends BaseMapper<TaInvoicePerson> {
17
 
20
 
21
+    List<TaInvoicePerson> getByName(@Param("invoiceId") String invoiceId, @Param("invoiceOrgId") String invoiceOrgId, @Param("name") String name);
18
 }
22
 }

+ 3
- 0
src/main/java/com/njyunzhi/invoice/service/ITaInvoiceDetailService.java View File

13
  */
13
  */
14
 public interface ITaInvoiceDetailService extends IService<TaInvoiceDetail> {
14
 public interface ITaInvoiceDetailService extends IService<TaInvoiceDetail> {
15
 
15
 
16
+    boolean createBatch(String invoiceId) throws Exception;
17
+
18
+    TaInvoiceDetail getByPerson(String invoiceId, String personId);
16
 }
19
 }

+ 1
- 2
src/main/java/com/njyunzhi/invoice/service/ITaInvoiceFillService.java View File

1
 package com.njyunzhi.invoice.service;
1
 package com.njyunzhi.invoice.service;
2
 
2
 
3
 import com.njyunzhi.invoice.entity.TaInvoiceFill;
3
 import com.njyunzhi.invoice.entity.TaInvoiceFill;
4
-import com.baomidou.mybatisplus.extension.service.IService;
5
 
4
 
6
 /**
5
 /**
7
  * <p>
6
  * <p>
11
  * @author yansen
10
  * @author yansen
12
  * @since 2022-07-04
11
  * @since 2022-07-04
13
  */
12
  */
14
-public interface ITaInvoiceFillService extends IService<TaInvoiceFill> {
13
+public interface ITaInvoiceFillService extends IBaseService<TaInvoiceFill> {
15
 
14
 
16
 }
15
 }

+ 4
- 0
src/main/java/com/njyunzhi/invoice/service/ITaInvoiceOrgService.java View File

1
 package com.njyunzhi.invoice.service;
1
 package com.njyunzhi.invoice.service;
2
 
2
 
3
 import com.njyunzhi.invoice.entity.TaInvoiceOrg;
3
 import com.njyunzhi.invoice.entity.TaInvoiceOrg;
4
+import com.njyunzhi.invoice.entity.TaInvoicePerson;
4
 
5
 
5
 /**
6
 /**
6
  * <p>
7
  * <p>
12
  */
13
  */
13
 public interface ITaInvoiceOrgService extends IBaseService<TaInvoiceOrg> {
14
 public interface ITaInvoiceOrgService extends IBaseService<TaInvoiceOrg> {
14
 
15
 
16
+    TaInvoiceOrg getByOrgName(String invoiceId, String orgName);
17
+
18
+    TaInvoiceOrg createByPerson(TaInvoicePerson taInvoicePerson);
15
 }
19
 }

+ 8
- 0
src/main/java/com/njyunzhi/invoice/service/ITaInvoicePersonService.java View File

1
 package com.njyunzhi.invoice.service;
1
 package com.njyunzhi.invoice.service;
2
 
2
 
3
 import com.njyunzhi.invoice.entity.TaInvoicePerson;
3
 import com.njyunzhi.invoice.entity.TaInvoicePerson;
4
+import org.springframework.web.multipart.MultipartFile;
5
+
6
+import java.util.List;
4
 
7
 
5
 /**
8
 /**
6
  * <p>
9
  * <p>
12
  */
15
  */
13
 public interface ITaInvoicePersonService extends IBaseService<TaInvoicePerson> {
16
 public interface ITaInvoicePersonService extends IBaseService<TaInvoicePerson> {
14
 
17
 
18
+    List<TaInvoicePerson> getByName(String invoiceId, String invoiceOrgId, String name);
19
+
20
+    boolean createNew(TaInvoicePerson taInvoicePerson) throws Exception;
21
+
22
+    void batchUpload(String invoiceId, MultipartFile file) throws Exception;
15
 }
23
 }

+ 16
- 0
src/main/java/com/njyunzhi/invoice/service/impl/TaInvoiceDetailServiceImpl.java View File

6
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
6
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
7
 import org.springframework.stereotype.Service;
7
 import org.springframework.stereotype.Service;
8
 
8
 
9
+import java.util.HashMap;
10
+
9
 /**
11
 /**
10
  * <p>
12
  * <p>
11
  * 报销明细 服务实现类
13
  * 报销明细 服务实现类
17
 @Service
19
 @Service
18
 public class TaInvoiceDetailServiceImpl extends ServiceImpl<TaInvoiceDetailMapper, TaInvoiceDetail> implements ITaInvoiceDetailService {
20
 public class TaInvoiceDetailServiceImpl extends ServiceImpl<TaInvoiceDetailMapper, TaInvoiceDetail> implements ITaInvoiceDetailService {
19
 
21
 
22
+    @Override
23
+    public boolean createBatch(String invoiceId) throws Exception {
24
+        // 先删除原有数据
25
+        removeByMap(new HashMap<String, Object>(){{
26
+            put("invoice_id", invoiceId);
27
+        }});
28
+
29
+        return baseMapper.createBatch(invoiceId) > 0;
30
+    }
31
+
32
+    @Override
33
+    public TaInvoiceDetail getByPerson(String invoiceId, String personId) {
34
+        return baseMapper.getByPerson(invoiceId, personId);
35
+    }
20
 }
36
 }

+ 1
- 2
src/main/java/com/njyunzhi/invoice/service/impl/TaInvoiceFillServiceImpl.java View File

3
 import com.njyunzhi.invoice.entity.TaInvoiceFill;
3
 import com.njyunzhi.invoice.entity.TaInvoiceFill;
4
 import com.njyunzhi.invoice.mapper.TaInvoiceFillMapper;
4
 import com.njyunzhi.invoice.mapper.TaInvoiceFillMapper;
5
 import com.njyunzhi.invoice.service.ITaInvoiceFillService;
5
 import com.njyunzhi.invoice.service.ITaInvoiceFillService;
6
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
7
 import org.springframework.stereotype.Service;
6
 import org.springframework.stereotype.Service;
8
 
7
 
9
 /**
8
 /**
15
  * @since 2022-07-04
14
  * @since 2022-07-04
16
  */
15
  */
17
 @Service
16
 @Service
18
-public class TaInvoiceFillServiceImpl extends ServiceImpl<TaInvoiceFillMapper, TaInvoiceFill> implements ITaInvoiceFillService {
17
+public class TaInvoiceFillServiceImpl extends BaseServiceImpl<TaInvoiceFillMapper, TaInvoiceFill> implements ITaInvoiceFillService {
19
 
18
 
20
 }
19
 }

+ 18
- 0
src/main/java/com/njyunzhi/invoice/service/impl/TaInvoiceOrgServiceImpl.java View File

1
 package com.njyunzhi.invoice.service.impl;
1
 package com.njyunzhi.invoice.service.impl;
2
 
2
 
3
+import com.njyunzhi.invoice.common.Constants;
4
+import com.njyunzhi.invoice.common.DateUtils;
3
 import com.njyunzhi.invoice.entity.TaInvoiceOrg;
5
 import com.njyunzhi.invoice.entity.TaInvoiceOrg;
6
+import com.njyunzhi.invoice.entity.TaInvoicePerson;
4
 import com.njyunzhi.invoice.mapper.TaInvoiceOrgMapper;
7
 import com.njyunzhi.invoice.mapper.TaInvoiceOrgMapper;
5
 import com.njyunzhi.invoice.service.ITaInvoiceOrgService;
8
 import com.njyunzhi.invoice.service.ITaInvoiceOrgService;
6
 import org.springframework.stereotype.Service;
9
 import org.springframework.stereotype.Service;
16
 @Service
19
 @Service
17
 public class TaInvoiceOrgServiceImpl extends BaseServiceImpl<TaInvoiceOrgMapper, TaInvoiceOrg> implements ITaInvoiceOrgService {
20
 public class TaInvoiceOrgServiceImpl extends BaseServiceImpl<TaInvoiceOrgMapper, TaInvoiceOrg> implements ITaInvoiceOrgService {
18
 
21
 
22
+    @Override
23
+    public TaInvoiceOrg getByOrgName(String invoiceId, String orgName) {
24
+        return baseMapper.getByInvoiceAndOrgName(invoiceId, orgName);
25
+    }
26
+
27
+    @Override
28
+    public TaInvoiceOrg createByPerson(TaInvoicePerson taInvoicePerson) {
29
+        TaInvoiceOrg taInvoiceOrg = new TaInvoiceOrg();
30
+        taInvoiceOrg.setName(taInvoicePerson.getOrgName());
31
+        taInvoiceOrg.setStatus(Constants.STATUS_NORMAL);
32
+        taInvoiceOrg.setCreateDate(DateUtils.now());
33
+
34
+        save(taInvoiceOrg);
35
+        return taInvoiceOrg;
36
+    }
19
 }
37
 }

+ 71
- 0
src/main/java/com/njyunzhi/invoice/service/impl/TaInvoicePersonServiceImpl.java View File

1
 package com.njyunzhi.invoice.service.impl;
1
 package com.njyunzhi.invoice.service.impl;
2
 
2
 
3
+import com.alibaba.excel.EasyExcel;
4
+import com.alibaba.excel.read.listener.PageReadListener;
5
+import com.alibaba.excel.support.ExcelTypeEnum;
6
+import com.njyunzhi.invoice.common.Constants;
7
+import com.njyunzhi.invoice.common.DateUtils;
8
+import com.njyunzhi.invoice.entity.TaInvoiceOrg;
3
 import com.njyunzhi.invoice.entity.TaInvoicePerson;
9
 import com.njyunzhi.invoice.entity.TaInvoicePerson;
10
+import com.njyunzhi.invoice.mapper.TaInvoiceOrgMapper;
4
 import com.njyunzhi.invoice.mapper.TaInvoicePersonMapper;
11
 import com.njyunzhi.invoice.mapper.TaInvoicePersonMapper;
5
 import com.njyunzhi.invoice.service.ITaInvoicePersonService;
12
 import com.njyunzhi.invoice.service.ITaInvoicePersonService;
13
+import org.springframework.beans.factory.annotation.Autowired;
6
 import org.springframework.stereotype.Service;
14
 import org.springframework.stereotype.Service;
15
+import org.springframework.web.multipart.MultipartFile;
16
+
17
+import java.time.LocalDateTime;
18
+import java.util.List;
7
 
19
 
8
 /**
20
 /**
9
  * <p>
21
  * <p>
16
 @Service
28
 @Service
17
 public class TaInvoicePersonServiceImpl extends BaseServiceImpl<TaInvoicePersonMapper, TaInvoicePerson> implements ITaInvoicePersonService {
29
 public class TaInvoicePersonServiceImpl extends BaseServiceImpl<TaInvoicePersonMapper, TaInvoicePerson> implements ITaInvoicePersonService {
18
 
30
 
31
+    @Autowired
32
+    TaInvoiceOrgMapper taInvoiceOrgMapper;
33
+
34
+    @Override
35
+    public List<TaInvoicePerson> getByName(String invoiceId, String invoiceOrgId, String name) {
36
+        return baseMapper.getByName(invoiceId, invoiceOrgId, name);
37
+    }
38
+
39
+    @Override
40
+    public boolean createNew(TaInvoicePerson taInvoicePerson) throws Exception {
41
+        TaInvoiceOrg taInvoiceOrg = taInvoiceOrgMapper.getByInvoiceAndOrgName(taInvoicePerson.getInvoiceId(), taInvoicePerson.getOrgName());
42
+        if (null == taInvoiceOrg) {
43
+            taInvoiceOrg = createByPerson(taInvoicePerson);
44
+        }
45
+        taInvoicePerson.setInvoiceOrgId(taInvoiceOrg.getInvoiceOrgId());
46
+
47
+        List<TaInvoicePerson> list = getByName(taInvoicePerson.getInvoiceId(), taInvoicePerson.getInvoiceOrgId(), taInvoicePerson.getName());
48
+        if (null != list && list.size() > 0) {
49
+            throw new Exception("人员名称重复");
50
+        }
51
+
52
+        taInvoicePerson.setStatus(Constants.STATUS_NORMAL);
53
+        taInvoicePerson.setCreateDate(DateUtils.now());
54
+
55
+        return save(taInvoicePerson);
56
+    }
57
+
58
+    @Override
59
+    public void batchUpload(String invoiceId, MultipartFile file) throws Exception {
60
+        LocalDateTime now = DateUtils.now();
61
+        EasyExcel.read(file.getInputStream(), TaInvoicePerson.class, new PageReadListener<TaInvoicePerson>(list -> {
62
+            for(TaInvoicePerson person : list) {
63
+                TaInvoiceOrg taInvoiceOrg = taInvoiceOrgMapper.getByInvoiceAndOrgName(invoiceId, person.getOrgName());
64
+                if (null == taInvoiceOrg) {
65
+                    taInvoiceOrg = createByPerson(person);
66
+                }
67
+                person.setInvoiceOrgId(taInvoiceOrg.getInvoiceOrgId());
68
+
69
+                List<TaInvoicePerson> exists = getByName(invoiceId, person.getInvoiceOrgId(), person.getName());
70
+                if (null != exists && exists.size() > 0) {
71
+                    continue;
72
+                }
73
+
74
+                person.setStatus(Constants.STATUS_NORMAL);
75
+                person.setCreateDate(now);
76
+                baseMapper.insert(person);
77
+            }
78
+        })).excelType(ExcelTypeEnum.XLSX).sheet().headRowNumber(1).doRead();
79
+    }
80
+
81
+    private TaInvoiceOrg createByPerson(TaInvoicePerson taInvoicePerson) {
82
+        TaInvoiceOrg taInvoiceOrg = new TaInvoiceOrg();
83
+        taInvoiceOrg.setName(taInvoicePerson.getOrgName());
84
+        taInvoiceOrg.setStatus(Constants.STATUS_NORMAL);
85
+        taInvoiceOrg.setCreateDate(DateUtils.now());
86
+
87
+        taInvoiceOrgMapper.insert(taInvoiceOrg);
88
+        return taInvoiceOrg;
89
+    }
19
 }
90
 }

+ 0
- 14
src/main/resources/mapper/SysBankMapper.xml View File

2
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
2
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3
 <mapper namespace="com.njyunzhi.invoice.mapper.SysBankMapper">
3
 <mapper namespace="com.njyunzhi.invoice.mapper.SysBankMapper">
4
 
4
 
5
-    <select id="getBankList" resultType="com.njyunzhi.invoice.entity.SysBank">
6
-        SELECT * FROM sys_bank WHERE LIMIT #{pageNum},#{pageSize}
7
-    </select>
8
-    <delete id="deleteBankId">
9
-        DELETE * FROM sys_bank WHERE id=#{id}
10
-    </delete>
11
-    <update id="updBankId">
12
-        UPDATE sys_bank SET
13
-        <if test="name!=null">name=#{name},</if>
14
-        <if test="card_no!=null">card_no=#{card_no},</if>
15
-        <if test="status!=null">status=#{status},</if>
16
-        <if test="create_date!=null">create_date=#{create_date},</if>
17
-        WHERE id=#{id}
18
-    </update>
19
 </mapper>
5
 </mapper>

+ 64
- 0
src/main/resources/mapper/TaInvoiceDetailMapper.xml View File

2
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
2
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3
 <mapper namespace="com.njyunzhi.invoice.mapper.TaInvoiceDetailMapper">
3
 <mapper namespace="com.njyunzhi.invoice.mapper.TaInvoiceDetailMapper">
4
 
4
 
5
+    <insert id="createBatch">
6
+
7
+        INSERT INTO ta_invoice_detail (
8
+            `detail_id`,
9
+            `invoice_id`,
10
+            `invoice_person_id`,
11
+            `person_id`,
12
+            `person_name`,
13
+            `invoice_org_id`,
14
+            `org_id`,
15
+            `org_name`,
16
+            `tax_no`,
17
+            `address`,
18
+            `phone`,
19
+            `bank_id`,
20
+            `bank_name`,
21
+            `card_no`,
22
+            `invoice_item_tpl_id`,
23
+            `item_name`,
24
+            `charge`,
25
+            `merge_remark`,
26
+            `stay_remark`,
27
+            `status`,
28
+            `create_date`
29
+        ) SELECT
30
+              UUID_SHORT( ),
31
+              t.invoice_id,
32
+              t.invoice_person_id,
33
+              NULL,
34
+              t.`name`,
35
+              t.invoice_org_id,
36
+              NULL,
37
+              t.org_name,
38
+              NULL,
39
+              NULL,
40
+              NULL,
41
+              NULL,
42
+              NULL,
43
+              NULL,
44
+              s.invoice_item_tpl_id,
45
+              s.`name`,
46
+              s.charge,
47
+              NULL,
48
+              NULL,
49
+              1,
50
+              now( )
51
+        FROM
52
+            ta_invoice_person t
53
+                INNER JOIN ta_invoice_item_tpl s ON t.invoice_id = s.invoice_id
54
+        WHERE
55
+            t.invoice_id = #{invoiceId}
56
+          AND t.`status` &gt; -1
57
+          AND s.`status` &gt; -1
58
+    </insert>
59
+    <select id="getByPerson" resultType="com.njyunzhi.invoice.entity.TaInvoiceDetail">
60
+        SELECT
61
+            *
62
+        FROM
63
+            ta_invoice_detail t
64
+        WHERE
65
+            t.invoice_id = #{invoiceId}
66
+          AND t.person_id = #{personId}
67
+          AND t.`status` &gt; -1
68
+    </select>
5
 </mapper>
69
 </mapper>

+ 0
- 1
src/main/resources/mapper/TaInvoiceFillMapper.xml View File

1
 <?xml version="1.0" encoding="UTF-8"?>
1
 <?xml version="1.0" encoding="UTF-8"?>
2
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
2
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3
 <mapper namespace="com.njyunzhi.invoice.mapper.TaInvoiceFillMapper">
3
 <mapper namespace="com.njyunzhi.invoice.mapper.TaInvoiceFillMapper">
4
-
5
 </mapper>
4
 </mapper>

+ 10
- 0
src/main/resources/mapper/TaInvoiceOrgMapper.xml View File

2
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
2
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3
 <mapper namespace="com.njyunzhi.invoice.mapper.TaInvoiceOrgMapper">
3
 <mapper namespace="com.njyunzhi.invoice.mapper.TaInvoiceOrgMapper">
4
 
4
 
5
+    <select id="getByInvoiceAndOrgName" resultType="com.njyunzhi.invoice.entity.TaInvoiceOrg">
6
+        SELECT
7
+            *
8
+        FROM
9
+            ta_invoice_person t
10
+        WHERE
11
+            t.`status` &gt; -1
12
+          AND t.invoice_id = #{invoiceId}
13
+          AND t.org_name = #{orgName}
14
+    </select>
5
 </mapper>
15
 </mapper>

+ 11
- 0
src/main/resources/mapper/TaInvoicePersonMapper.xml View File

2
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
2
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3
 <mapper namespace="com.njyunzhi.invoice.mapper.TaInvoicePersonMapper">
3
 <mapper namespace="com.njyunzhi.invoice.mapper.TaInvoicePersonMapper">
4
 
4
 
5
+    <select id="getByName" resultType="com.njyunzhi.invoice.entity.TaInvoicePerson">
6
+        SELECT
7
+            *
8
+        FROM
9
+            ta_invoice_person t
10
+        WHERE
11
+            t.invoice_id = #{invoiceId}
12
+          AND t.invoice_org_id = #{invoiceOrgId}
13
+          AND t.`name` = #{name}
14
+          AND t.`status` &gt; -1
15
+    </select>
5
 </mapper>
16
 </mapper>