张延森 2 gadus atpakaļ
vecāks
revīzija
26f4227d6d

+ 33
- 9
src/main/java/com/njyunzhi/invoice/controller/TaInvoiceDetailController.java Parādīt failu

6
 import com.njyunzhi.invoice.common.*;
6
 import com.njyunzhi.invoice.common.*;
7
 import com.njyunzhi.invoice.entity.*;
7
 import com.njyunzhi.invoice.entity.*;
8
 import com.njyunzhi.invoice.service.ITaInvoiceFillService;
8
 import com.njyunzhi.invoice.service.ITaInvoiceFillService;
9
+import com.njyunzhi.invoice.service.ITaInvoiceItemService;
9
 import io.swagger.annotations.Api;
10
 import io.swagger.annotations.Api;
10
 import io.swagger.annotations.ApiOperation;
11
 import io.swagger.annotations.ApiOperation;
11
 import io.swagger.annotations.ApiParam;
12
 import io.swagger.annotations.ApiParam;
21
 import org.springframework.web.bind.annotation.RestController;
22
 import org.springframework.web.bind.annotation.RestController;
22
 
23
 
23
 import java.util.HashMap;
24
 import java.util.HashMap;
25
+import java.util.List;
24
 import java.util.Map;
26
 import java.util.Map;
25
 
27
 
26
 /**
28
 /**
45
     @Autowired
47
     @Autowired
46
     public ITaInvoiceFillService iTaInvoiceFillService;
48
     public ITaInvoiceFillService iTaInvoiceFillService;
47
 
49
 
50
+    @Autowired
51
+    public ITaInvoiceItemService iTaInvoiceItemService;
52
+
48
 
53
 
49
     /**
54
     /**
50
      * 分页查询列表
55
      * 分页查询列表
96
         }
101
         }
97
     }
102
     }
98
 
103
 
99
-    @RequestMapping(value="/admin/invoice/{invoiceId}/detail-tpl/item/{itemId}",method= RequestMethod.POST)
100
-    @ApiOperation(value="添加或者修改项目", notes = "添加或者修改项目", httpMethod = "POST", response = ResponseBean.class)
104
+    @RequestMapping(value="/admin/invoice/{invoiceId}/detail-tpl/item/{itemId}",method= RequestMethod.DELETE)
105
+    @ApiOperation(value="删除模板项目", notes = "删除模板项目", httpMethod = "DELETE", response = ResponseBean.class)
101
     public ResponseBean createNew(@ApiParam("班级ID") @PathVariable(value ="invoiceId") String invoiceId,
106
     public ResponseBean createNew(@ApiParam("班级ID") @PathVariable(value ="invoiceId") String invoiceId,
102
                                   @ApiParam("报销项目ITEM") @PathVariable(value ="itemId") Integer itemId) throws Exception {
107
                                   @ApiParam("报销项目ITEM") @PathVariable(value ="itemId") Integer itemId) throws Exception {
103
         if (iTaInvoiceDetailService.deleteItem(invoiceId, itemId)){
108
         if (iTaInvoiceDetailService.deleteItem(invoiceId, itemId)){
115
         if (StringUtils.isEmpty(taInvoiceDetail.getInvoicePersonId())) {
120
         if (StringUtils.isEmpty(taInvoiceDetail.getInvoicePersonId())) {
116
             return ResponseBean.error("未选择报销人员");
121
             return ResponseBean.error("未选择报销人员");
117
         }
122
         }
118
-
119
-        if (null == taInvoiceDetail.getItemList() || taInvoiceDetail.getItemList().size() < 1) {
120
-            return ResponseBean.error("未找到报销明细");
121
-        }
123
+//
124
+//        if (null == taInvoiceDetail.getItemList() || taInvoiceDetail.getItemList().size() < 1) {
125
+//            return ResponseBean.error("未找到报销明细");
126
+//        }
122
 
127
 
123
         TaInvoiceFill taInvoiceFill = iTaInvoiceFillService.getById(invoiceId);
128
         TaInvoiceFill taInvoiceFill = iTaInvoiceFillService.getById(invoiceId);
124
         if (null == taInvoiceFill || taInvoiceFill.getStatus() == Constants.STATUS_DELETE) {
129
         if (null == taInvoiceFill || taInvoiceFill.getStatus() == Constants.STATUS_DELETE) {
148
     @ApiOperation(value="获取报销单信息", notes = "获取报销单信息", httpMethod = "GET", response = ResponseBean.class)
153
     @ApiOperation(value="获取报销单信息", notes = "获取报销单信息", httpMethod = "GET", response = ResponseBean.class)
149
     public ResponseBean getDetailByPerson(@ApiParam("页码") @RequestParam(value ="pageNum",defaultValue = "1") Integer pageNum,
154
     public ResponseBean getDetailByPerson(@ApiParam("页码") @RequestParam(value ="pageNum",defaultValue = "1") Integer pageNum,
150
                                           @ApiParam("单页数据量") @RequestParam(value ="pageSize",defaultValue = "10") Integer pageSize,
155
                                           @ApiParam("单页数据量") @RequestParam(value ="pageSize",defaultValue = "10") Integer pageSize,
151
-                                          @ApiParam("班级ID") @PathVariable(value ="invoiceId") String invoiceId,
152
-                                          @ApiParam("人员名称") @RequestParam(value ="personName", required = false) String personName) throws Exception{
156
+                                          @ApiParam("班级ID") @PathVariable(value ="invoiceId", required = false) String invoiceId,
157
+                                          @ApiParam("人员ID") @PathVariable(value ="personId", required = false) String personId,
158
+                                          @ApiParam("人员名称") @RequestParam(value ="personName", required = false) String personName) throws Exception {
159
+
160
+        if (StringUtils.isEmpty(invoiceId) && StringUtils.isEmpty(personId)) {
161
+            return ResponseBean.error("人员ID或者班级ID不能为空");
162
+        }
153
 
163
 
154
         IPage<TaInvoiceDetail> page = new Page<>(pageNum, pageSize);
164
         IPage<TaInvoiceDetail> page = new Page<>(pageNum, pageSize);
155
-        return ResponseBean.success(iTaInvoiceDetailService.getPersonPage(page, invoiceId, personName));
165
+        return ResponseBean.success(iTaInvoiceDetailService.getPersonPage(page, invoiceId, personId, personName));
156
     }
166
     }
157
 
167
 
158
     @RequestMapping(value="/h5/invoice/{invoiceId}/detail/info",method= RequestMethod.GET)
168
     @RequestMapping(value="/h5/invoice/{invoiceId}/detail/info",method= RequestMethod.GET)
192
             return ResponseBean.error("找不到报销数据信息");
202
             return ResponseBean.error("找不到报销数据信息");
193
         }
203
         }
194
 
204
 
205
+        // 获取明细
206
+        if (StringUtils.isEmpty(invoicePersonId)) {
207
+            invoicePersonId = taInvoiceDetail.getInvoicePersonId();
208
+        }
209
+
210
+        List<TaInvoiceItem> itemList = iTaInvoiceItemService.getListByPerson(invoiceId, invoicePersonId);
211
+        if (null != taInvoiceDetailTPl) {
212
+            taInvoiceDetailTPl.setItemList(itemList);
213
+        }
214
+        if (null != taInvoiceDetail) {
215
+            taInvoiceDetail.setItemList(itemList);
216
+        }
217
+
218
+
195
         Map<String, Object> resp = new HashMap<>();
219
         Map<String, Object> resp = new HashMap<>();
196
         resp.put("detail", taInvoiceDetail);
220
         resp.put("detail", taInvoiceDetail);
197
         resp.put("tpl", taInvoiceDetailTPl);
221
         resp.put("tpl", taInvoiceDetailTPl);

+ 1
- 1
src/main/java/com/njyunzhi/invoice/controller/TaInvoiceItemTplController.java Parādīt failu

108
         taInvoiceItemTpl.setInvoiceId(invoiceId);
108
         taInvoiceItemTpl.setInvoiceId(invoiceId);
109
         if (iTaInvoiceItemTplService.updateById(taInvoiceItemTpl)){
109
         if (iTaInvoiceItemTplService.updateById(taInvoiceItemTpl)){
110
             return ResponseBean.success(iTaInvoiceItemTplService.getById(id));
110
             return ResponseBean.success(iTaInvoiceItemTplService.getById(id));
111
-        }else {
111
+        } else {
112
             return ResponseBean.error("修改失败, 请重试", ResponseBean.ERROR_UNAVAILABLE);
112
             return ResponseBean.error("修改失败, 请重试", ResponseBean.ERROR_UNAVAILABLE);
113
         }
113
         }
114
     }
114
     }

+ 6
- 2
src/main/java/com/njyunzhi/invoice/entity/TaInvoiceDetail.java Parādīt failu

33
     private static final long serialVersionUID = 1L;
33
     private static final long serialVersionUID = 1L;
34
 
34
 
35
     @ApiModelProperty(value = "明细ID")
35
     @ApiModelProperty(value = "明细ID")
36
-    @TableId(value = "detail_id", type = IdType.INPUT)
36
+    @TableId(value = "detail_id", type = IdType.ASSIGN_UUID)
37
     private String detailId;
37
     private String detailId;
38
 
38
 
39
     @ApiModelProperty(value = "报销ID")
39
     @ApiModelProperty(value = "报销ID")
40
     private String invoiceId;
40
     private String invoiceId;
41
 
41
 
42
+    @TableField(exist = false)
43
+    @ApiModelProperty(value = "报销单名称")
44
+    private String invoiceName;
45
+
42
     @ApiModelProperty(value = "人员ID")
46
     @ApiModelProperty(value = "人员ID")
43
     private String invoicePersonId;
47
     private String invoicePersonId;
44
 
48
 
86
     private String cardNo;
90
     private String cardNo;
87
 
91
 
88
     @ApiModelProperty(value = "报销项目ID")
92
     @ApiModelProperty(value = "报销项目ID")
89
-    private Integer invoiceItemTplId;
93
+    private Integer invoiceItemId;
90
 
94
 
91
     @ExcelProperty(index = 8)
95
     @ExcelProperty(index = 8)
92
     @ApiModelProperty(value = "报销项目")
96
     @ApiModelProperty(value = "报销项目")

+ 4
- 1
src/main/java/com/njyunzhi/invoice/mapper/TaInvoiceDetailMapper.java Parādīt failu

32
 
32
 
33
     int removeTplById(@Param("id") String id);
33
     int removeTplById(@Param("id") String id);
34
 
34
 
35
-    IPage<TaInvoiceDetail> getPersonPage(IPage<TaInvoiceDetail> page, @Param("invoiceId") String invoiceId, @Param("personName") String personName);
35
+    IPage<TaInvoiceDetail> getPersonPage(IPage<TaInvoiceDetail> page,
36
+                                         @Param("invoiceId") String invoiceId,
37
+                                         @Param("personId") String personId,
38
+                                         @Param("personName") String personName);
36
 
39
 
37
     TaInvoiceDetail getTplByPerson(@Param("invoiceId") String invoiceId, @Param("invoicePersonId") String invoicePersonId);
40
     TaInvoiceDetail getTplByPerson(@Param("invoiceId") String invoiceId, @Param("invoicePersonId") String invoicePersonId);
38
 }
41
 }

+ 4
- 0
src/main/java/com/njyunzhi/invoice/mapper/TaInvoiceItemMapper.java Parādīt failu

5
 import org.apache.ibatis.annotations.Mapper;
5
 import org.apache.ibatis.annotations.Mapper;
6
 import org.apache.ibatis.annotations.Param;
6
 import org.apache.ibatis.annotations.Param;
7
 
7
 
8
+import java.util.List;
9
+
8
 /**
10
 /**
9
  * <p>
11
  * <p>
10
  * 报销项目模板 Mapper 接口
12
  * 报销项目模板 Mapper 接口
21
     TaInvoiceItem getByPersonAndName(@Param("invoiceId") String invoiceId,
23
     TaInvoiceItem getByPersonAndName(@Param("invoiceId") String invoiceId,
22
                                      @Param("invoicePersonId") String invoicePersonId,
24
                                      @Param("invoicePersonId") String invoicePersonId,
23
                                      @Param("name") String name);
25
                                      @Param("name") String name);
26
+
27
+    List<TaInvoiceItem> getListByPerson(@Param("invoiceId") String invoiceId, @Param("invoicePersonId") String invoicePersonId);
24
 }
28
 }

+ 1
- 1
src/main/java/com/njyunzhi/invoice/service/ITaInvoiceDetailService.java Parādīt failu

28
 
28
 
29
     TaInvoiceDetail getTplByPerson(String invoiceId, String invoicePersonId);
29
     TaInvoiceDetail getTplByPerson(String invoiceId, String invoicePersonId);
30
 
30
 
31
-    IPage<TaInvoiceDetail> getPersonPage(IPage<TaInvoiceDetail> page, String invoiceId, String personName);
31
+    IPage<TaInvoiceDetail> getPersonPage(IPage<TaInvoiceDetail> page, String invoiceId, String personId, String personName);
32
 
32
 
33
     boolean createOrMergeInvoiceDetail(TaInvoiceDetail taInvoiceDetail);
33
     boolean createOrMergeInvoiceDetail(TaInvoiceDetail taInvoiceDetail);
34
 
34
 

+ 3
- 0
src/main/java/com/njyunzhi/invoice/service/ITaInvoiceItemService.java Parādīt failu

3
 import com.baomidou.mybatisplus.extension.service.IService;
3
 import com.baomidou.mybatisplus.extension.service.IService;
4
 import com.njyunzhi.invoice.entity.TaInvoiceItem;
4
 import com.njyunzhi.invoice.entity.TaInvoiceItem;
5
 
5
 
6
+import java.util.List;
7
+
6
 /**
8
 /**
7
  * <p>
9
  * <p>
8
  * 报销项目模板 服务类
10
  * 报销项目模板 服务类
13
  */
15
  */
14
 public interface ITaInvoiceItemService extends IService<TaInvoiceItem> {
16
 public interface ITaInvoiceItemService extends IService<TaInvoiceItem> {
15
 
17
 
18
+    List<TaInvoiceItem> getListByPerson(String invoiceId, String invoicePersonId);
16
 }
19
 }

+ 11
- 6
src/main/java/com/njyunzhi/invoice/service/impl/TaInvoiceDetailServiceImpl.java Parādīt failu

13
 import com.njyunzhi.invoice.mapper.TaInvoiceItemTplMapper;
13
 import com.njyunzhi.invoice.mapper.TaInvoiceItemTplMapper;
14
 import com.njyunzhi.invoice.service.ITaInvoiceDetailService;
14
 import com.njyunzhi.invoice.service.ITaInvoiceDetailService;
15
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
15
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
16
+import org.springframework.beans.BeanUtils;
16
 import org.springframework.beans.factory.annotation.Autowired;
17
 import org.springframework.beans.factory.annotation.Autowired;
17
 import org.springframework.stereotype.Service;
18
 import org.springframework.stereotype.Service;
18
 
19
 
72
     }
73
     }
73
 
74
 
74
     @Override
75
     @Override
75
-    public IPage<TaInvoiceDetail> getPersonPage(IPage<TaInvoiceDetail> page, String invoiceId, String personName) {
76
-        return baseMapper.getPersonPage(page, invoiceId, personName);
76
+    public IPage<TaInvoiceDetail> getPersonPage(IPage<TaInvoiceDetail> page, String invoiceId, String personId, String personName) {
77
+        return baseMapper.getPersonPage(page, invoiceId, personId, personName);
77
     }
78
     }
78
 
79
 
79
     @Override
80
     @Override
80
     public boolean createOrMergeInvoiceDetail(TaInvoiceDetail taInvoiceDetail) {
81
     public boolean createOrMergeInvoiceDetail(TaInvoiceDetail taInvoiceDetail) {
81
-        // 更新报销项目
82
-        for (TaInvoiceItem item : taInvoiceDetail.getItemList()) {
83
-            taInvoiceItemMapper.updateById(item);
84
-        }
82
+//        // 更新报销项目
83
+//        for (TaInvoiceItem item : taInvoiceDetail.getItemList()) {
84
+//            taInvoiceItemMapper.updateById(item);
85
+//        }
85
 
86
 
86
         // 查询原始记录
87
         // 查询原始记录
87
         TaInvoiceDetail origin = baseMapper.getByPerson(taInvoiceDetail.getInvoiceId(), taInvoiceDetail.getPersonId());
88
         TaInvoiceDetail origin = baseMapper.getByPerson(taInvoiceDetail.getInvoiceId(), taInvoiceDetail.getPersonId());
88
 
89
 
89
         // 如果不是新生成, 二次编辑
90
         // 如果不是新生成, 二次编辑
90
         if (null != origin) {
91
         if (null != origin) {
92
+            origin.setInvoicePersonId(taInvoiceDetail.getInvoicePersonId());
93
+            origin.setPersonName(taInvoiceDetail.getPersonName());
91
             origin.setInvoiceOrgId(taInvoiceDetail.getInvoiceOrgId());
94
             origin.setInvoiceOrgId(taInvoiceDetail.getInvoiceOrgId());
92
             origin.setInvoiceOrgName(taInvoiceDetail.getInvoiceOrgName());
95
             origin.setInvoiceOrgName(taInvoiceDetail.getInvoiceOrgName());
93
             origin.setOrgId(taInvoiceDetail.getOrgId());
96
             origin.setOrgId(taInvoiceDetail.getOrgId());
99
             origin.setBankName(taInvoiceDetail.getBankName());
102
             origin.setBankName(taInvoiceDetail.getBankName());
100
             origin.setCardNo(taInvoiceDetail.getCardNo());
103
             origin.setCardNo(taInvoiceDetail.getCardNo());
101
             origin.setPersonId(taInvoiceDetail.getPersonId());
104
             origin.setPersonId(taInvoiceDetail.getPersonId());
105
+            origin.setMergeRemark(taInvoiceDetail.getMergeRemark());
106
+            origin.setStayRemark(taInvoiceDetail.getStayRemark());
102
 
107
 
103
             return updateById(origin);
108
             return updateById(origin);
104
         }
109
         }

+ 6
- 0
src/main/java/com/njyunzhi/invoice/service/impl/TaInvoiceItemServiceImpl.java Parādīt failu

6
 import com.njyunzhi.invoice.service.ITaInvoiceItemService;
6
 import com.njyunzhi.invoice.service.ITaInvoiceItemService;
7
 import org.springframework.stereotype.Service;
7
 import org.springframework.stereotype.Service;
8
 
8
 
9
+import java.util.List;
10
+
9
 /**
11
 /**
10
  * <p>
12
  * <p>
11
  * 报销项目模板 服务实现类
13
  * 报销项目模板 服务实现类
17
 @Service
19
 @Service
18
 public class TaInvoiceItemServiceImpl extends ServiceImpl<TaInvoiceItemMapper, TaInvoiceItem> implements ITaInvoiceItemService {
20
 public class TaInvoiceItemServiceImpl extends ServiceImpl<TaInvoiceItemMapper, TaInvoiceItem> implements ITaInvoiceItemService {
19
 
21
 
22
+    @Override
23
+    public List<TaInvoiceItem> getListByPerson(String invoiceId, String invoicePersonId) {
24
+        return baseMapper.getListByPerson(invoiceId, invoicePersonId);
25
+    }
20
 }
26
 }

+ 11
- 3
src/main/resources/mapper/TaInvoiceDetailMapper.xml Parādīt failu

131
         WHERE
131
         WHERE
132
             t.invoice_id = #{invoiceId}
132
             t.invoice_id = #{invoiceId}
133
           AND t.`status` &gt; -1
133
           AND t.`status` &gt; -1
134
-          AND s.`status` &gt; 1
134
+          AND s.`status` &gt; -1
135
         ORDER BY
135
         ORDER BY
136
             t.org_name ASC,
136
             t.org_name ASC,
137
             t.`name` ASC,
137
             t.`name` ASC,
139
     </select>
139
     </select>
140
     <select id="getPersonPage" resultType="com.njyunzhi.invoice.entity.TaInvoiceDetail">
140
     <select id="getPersonPage" resultType="com.njyunzhi.invoice.entity.TaInvoiceDetail">
141
         SELECT
141
         SELECT
142
-            t.*
142
+            t.*,
143
+            s.`name` as invoice_name
143
         FROM
144
         FROM
144
             ta_invoice_detail t
145
             ta_invoice_detail t
146
+            INNER JOIN ta_invoice_fill s ON s.invoice_id = t.invoice_id
145
         WHERE
147
         WHERE
146
-            t.invoice_id = #{invoiceId}
148
+            t.`status` &gt; -1
149
+        <if test="invoiceId != null and invoiceId != ''">
150
+            AND t.invoice_id = #{invoiceId}
151
+        </if>
152
+          <if test="personId != null and personId != ''">
153
+              AND t.person_id = #{personId}
154
+          </if>
147
           <if test="personName != null and personName != ''">
155
           <if test="personName != null and personName != ''">
148
               AND t.person_name LIKE CONCAT( '%', #{personName}, '%' )
156
               AND t.person_name LIKE CONCAT( '%', #{personName}, '%' )
149
           </if>
157
           </if>

+ 11
- 0
src/main/resources/mapper/TaInvoiceItemMapper.xml Parādīt failu

30
           AND t.`name` = #{name}
30
           AND t.`name` = #{name}
31
           AND t.`status` = 1
31
           AND t.`status` = 1
32
     </select>
32
     </select>
33
+    <select id="getListByPerson" resultType="com.njyunzhi.invoice.entity.TaInvoiceItem">
34
+        SELECT
35
+            *
36
+        FROM
37
+            ta_invoice_item t
38
+        WHERE
39
+            t.invoice_id = #{invoiceId}
40
+          AND t.`invoice_person_id` = #{invoicePersonId}
41
+          AND t.`status` = 1
42
+        ORDER BY t.`name` ASC
43
+    </select>
33
 </mapper>
44
 </mapper>

+ 2
- 2
src/main/resources/mapper/TaInvoiceOrgMapper.xml Parādīt failu

6
         SELECT
6
         SELECT
7
             *
7
             *
8
         FROM
8
         FROM
9
-            ta_invoice_person t
9
+            ta_invoice_org t
10
         WHERE
10
         WHERE
11
             t.`status` &gt; -1
11
             t.`status` &gt; -1
12
           AND t.invoice_id = #{invoiceId}
12
           AND t.invoice_id = #{invoiceId}
13
-          AND t.org_name = #{orgName}
13
+          AND t.`name` = #{orgName}
14
     </select>
14
     </select>
15
 </mapper>
15
 </mapper>