Yansen 2 gadus atpakaļ
vecāks
revīzija
ab0d2d7500

+ 3
- 1
deploy/.s/1636896505560465-cn-shanghai-stategrid-service-invoice-filling-httpTrigger.json Parādīt failu

@@ -21,7 +21,9 @@
21 21
       "authType": "anonymous"
22 22
     },
23 23
     "createdTime": "2022-07-18T02:02:16Z",
24
-    "lastModifiedTime": "2022-07-19T07:13:25Z",
24
+    "lastModifiedTime": "2022-11-15T06:43:32Z",
25
+    "status": null,
26
+    "targetArn": null,
25 27
     "name": "httpTrigger"
26 28
   }
27 29
 }

+ 5
- 3
deploy/.s/1636896505560465-cn-shanghai-stategrid-service-invoice-filling.json Parādīt failu

@@ -8,19 +8,20 @@
8 8
     "timeout": 30,
9 9
     "initializer": "",
10 10
     "initializationTimeout": 3,
11
-    "codeSize": 69220537,
12
-    "codeChecksum": "5731091282673601247",
11
+    "codeSize": 69222278,
12
+    "codeChecksum": "17422496305130090700",
13 13
     "memorySize": 1024,
14 14
     "gpuMemorySize": null,
15 15
     "environmentVariables": {},
16 16
     "createdTime": "2022-07-18T02:02:16Z",
17
-    "lastModifiedTime": "2022-07-19T07:13:16Z",
17
+    "lastModifiedTime": "2022-11-15T06:43:21Z",
18 18
     "instanceConcurrency": 1,
19 19
     "instanceSoftConcurrency": null,
20 20
     "customContainerConfig": null,
21 21
     "caPort": 9000,
22 22
     "instanceType": "e1",
23 23
     "layers": null,
24
+    "layersArnV2": null,
24 25
     "instanceLifecycleConfig": {
25 26
       "preFreeze": {
26 27
         "handler": "",
@@ -40,6 +41,7 @@
40 41
         "org.springframework.boot.loader.JarLauncher"
41 42
       ]
42 43
     },
44
+    "customHealthCheckConfig": null,
43 45
     "name": "invoice-filling"
44 46
   }
45 47
 }

+ 4
- 1
deploy/.s/1636896505560465-cn-shanghai-stategrid-service.json Parādīt failu

@@ -12,7 +12,7 @@
12 12
     },
13 13
     "serviceId": "6e96fa7b-9988-4908-b06a-0aa7e510c881",
14 14
     "createdTime": "2022-02-26T04:50:56Z",
15
-    "lastModifiedTime": "2022-07-19T07:13:25Z",
15
+    "lastModifiedTime": "2022-11-15T06:43:32Z",
16 16
     "vpcConfig": {
17 17
       "vpcId": "",
18 18
       "vSwitchIds": [],
@@ -26,6 +26,9 @@
26 26
       "groupId": -1,
27 27
       "mountPoints": []
28 28
     },
29
+    "ossMountConfig": {
30
+      "mountPoints": []
31
+    },
29 32
     "vendorConfig": null,
30 33
     "tracingConfig": {
31 34
       "type": null,

+ 1
- 1
deploy/.s/invoice-filling.stategrid.njyunzhi.com.json Parādīt failu

@@ -33,5 +33,5 @@
33 33
     ]
34 34
   },
35 35
   "createdTime": "2022-07-18T02:03:47Z",
36
-  "lastModifiedTime": "2022-07-19T07:13:25Z"
36
+  "lastModifiedTime": "2022-11-15T06:43:32Z"
37 37
 }

+ 1
- 1
deploy/s.prod.yaml Parādīt failu

@@ -49,7 +49,7 @@ services:
49 49
       function:
50 50
         name: invoice-filling
51 51
         description: '发票确认'
52
-        codeUri: ../target/invoice-0.0.3.jar
52
+        codeUri: ../target/invoice-0.0.5.jar
53 53
         runtime: custom
54 54
         memorySize: 1024
55 55
         timeout: 30

+ 1
- 1
pom.xml Parādīt failu

@@ -10,7 +10,7 @@
10 10
 	</parent>
11 11
 	<groupId>com.njyunzhi</groupId>
12 12
 	<artifactId>invoice</artifactId>
13
-	<version>0.0.3</version>
13
+	<version>0.0.5</version>
14 14
 	<name>invoice-fill</name>
15 15
 	<description>发票填报</description>
16 16
 	<properties>

+ 70
- 0
src/main/java/com/njyunzhi/invoice/config/JacksonConfig.java Parādīt failu

@@ -0,0 +1,70 @@
1
+package com.njyunzhi.invoice.config;
2
+
3
+import com.fasterxml.jackson.databind.DeserializationFeature;
4
+import com.fasterxml.jackson.databind.ObjectMapper;
5
+import com.fasterxml.jackson.databind.SerializationFeature;
6
+import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
7
+import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateDeserializer;
8
+import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
9
+import com.fasterxml.jackson.datatype.jsr310.deser.LocalTimeDeserializer;
10
+import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateSerializer;
11
+import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
12
+import com.fasterxml.jackson.datatype.jsr310.ser.LocalTimeSerializer;
13
+import org.springframework.context.annotation.Bean;
14
+import org.springframework.context.annotation.Configuration;
15
+import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter;
16
+
17
+import java.text.SimpleDateFormat;
18
+import java.time.LocalDate;
19
+import java.time.LocalDateTime;
20
+import java.time.LocalTime;
21
+import java.time.format.DateTimeFormatter;
22
+import java.util.TimeZone;
23
+
24
+/**
25
+ * 处理 RequestBody 中的日期
26
+ */
27
+
28
+@Configuration
29
+public class JacksonConfig {
30
+
31
+    /** 默认日期时间格式 */
32
+    public static final String DEFAULT_DATE_TIME_FORMAT = "yyyy-MM-dd HH:mm:ss";
33
+    /** 默认日期格式 */
34
+    public static final String DEFAULT_DATE_FORMAT = "yyyy-MM-dd";
35
+    /** 默认时间格式 */
36
+    public static final String DEFAULT_TIME_FORMAT = "HH:mm:ss";
37
+
38
+    @Bean
39
+    public MappingJackson2HttpMessageConverter mappingJackson2HttpMessageConverter() {
40
+        MappingJackson2HttpMessageConverter converter = new MappingJackson2HttpMessageConverter();
41
+        ObjectMapper objectMapper = new ObjectMapper();
42
+
43
+        // 忽略json字符串中不识别的属性
44
+        objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
45
+        // 忽略无法转换的对象
46
+        objectMapper.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false);
47
+        // PrettyPrinter 格式化输出
48
+        objectMapper.configure(SerializationFeature.INDENT_OUTPUT, true);
49
+        // NULL不参与序列化
50
+//        objectMapper.setSerializationInclusion(JsonInclude.Include.NON_NULL);
51
+
52
+        // 指定时区
53
+        objectMapper.setTimeZone(TimeZone.getTimeZone("GMT+8:00"));
54
+        // 日期类型字符串处理
55
+        objectMapper.setDateFormat(new SimpleDateFormat(DEFAULT_DATE_TIME_FORMAT));
56
+
57
+        // java8日期日期处理
58
+        JavaTimeModule javaTimeModule = new JavaTimeModule();
59
+        javaTimeModule.addSerializer(LocalDateTime.class, new LocalDateTimeSerializer(DateTimeFormatter.ofPattern(DEFAULT_DATE_TIME_FORMAT)));
60
+        javaTimeModule.addSerializer(LocalDate.class, new LocalDateSerializer(DateTimeFormatter.ofPattern(DEFAULT_DATE_FORMAT)));
61
+        javaTimeModule.addSerializer(LocalTime.class, new LocalTimeSerializer(DateTimeFormatter.ofPattern(DEFAULT_TIME_FORMAT)));
62
+        javaTimeModule.addDeserializer(LocalDateTime.class, new LocalDateTimeDeserializer(DateTimeFormatter.ofPattern(DEFAULT_DATE_TIME_FORMAT)));
63
+        javaTimeModule.addDeserializer(LocalDate.class, new LocalDateDeserializer(DateTimeFormatter.ofPattern(DEFAULT_DATE_FORMAT)));
64
+        javaTimeModule.addDeserializer(LocalTime.class, new LocalTimeDeserializer(DateTimeFormatter.ofPattern(DEFAULT_TIME_FORMAT)));
65
+        objectMapper.registerModule(javaTimeModule);
66
+
67
+        converter.setObjectMapper(objectMapper);
68
+        return converter;
69
+    }
70
+}

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

@@ -88,6 +88,31 @@ public class TaInvoiceDetailController extends BaseController {
88 88
         return ResponseBean.success(result);
89 89
     }
90 90
 
91
+
92
+    /**
93
+     * 分页查询列表
94
+     * @param pageNum
95
+     * @param pageSize
96
+     * @return
97
+     */
98
+    @RequestMapping(value="/admin/invoice/{invoiceId}/detail/history",method= RequestMethod.GET)
99
+    @ApiOperation(value="报销列表", notes = "报销列表", httpMethod = "GET", response = ResponseBean.class)
100
+    public ResponseBean getHistory(@ApiParam("页码") @RequestParam(value ="pageNum",defaultValue = "1") Integer pageNum,
101
+                                @ApiParam("单页数据量") @RequestParam(value ="pageSize",defaultValue = "10") Integer pageSize,
102
+                                @ApiParam("班级ID") @PathVariable(value ="invoiceId") String invoiceId,
103
+                                @ApiParam("人员ID") @PathVariable(value ="personId") String personId) throws Exception{
104
+
105
+        IPage<TaInvoiceDetail> pg = new Page<>(pageNum, pageSize);
106
+        QueryWrapper<TaInvoiceDetail> queryWrapper = new QueryWrapper<>();
107
+        queryWrapper.eq("invoice_id", invoiceId);
108
+        queryWrapper.eq("person_id", personId);
109
+        queryWrapper.gt("status", Constants.STATUS_DELETE);
110
+        queryWrapper.orderByDesc("create_date");
111
+
112
+        IPage<TaInvoiceDetail> result = iTaInvoiceDetailService.page(pg, queryWrapper);
113
+        return ResponseBean.success(result);
114
+    }
115
+
91 116
     @RequestMapping(value="/admin/invoice/{invoiceId}/detail-tpl",method= RequestMethod.POST)
92 117
     @ApiOperation(value="一键生成", notes = "一键生成", httpMethod = "POST", response = ResponseBean.class)
93 118
     public ResponseBean taInvoiceDetailAdd(@ApiParam("班级ID") @PathVariable(value ="invoiceId") String invoiceId) throws Exception{
@@ -157,6 +182,7 @@ public class TaInvoiceDetailController extends BaseController {
157 182
         TaPerson taPerson = currentPerson();
158 183
         taInvoiceDetail.setPersonId(taPerson.getPersonId());
159 184
         taInvoiceDetail.setInvoiceId(invoiceId);
185
+
160 186
         if (iTaInvoiceDetailService.createOrMergeInvoiceDetail(taInvoiceDetail)){
161 187
             return ResponseBean.success(taInvoiceDetail);
162 188
         } else {
@@ -174,7 +200,7 @@ public class TaInvoiceDetailController extends BaseController {
174 200
     public ResponseBean getDetailByPerson(@ApiParam("页码") @RequestParam(value ="pageNum",defaultValue = "1") Integer pageNum,
175 201
                                           @ApiParam("单页数据量") @RequestParam(value ="pageSize",defaultValue = "10") Integer pageSize,
176 202
                                           @ApiParam("班级ID") @PathVariable(value ="invoiceId", required = false) String invoiceId,
177
-                                          @ApiParam("人员ID") @PathVariable(value ="personId", required = false) String personId,
203
+                                          @ApiParam("人员ID") @RequestParam(value ="personId", required = false) String personId,
178 204
                                           @ApiParam("人员名称") @RequestParam(value ="personName", required = false) String personName) throws Exception {
179 205
 
180 206
         if (StringUtils.isEmpty(invoiceId) && StringUtils.isEmpty(personId)) {

+ 7
- 6
src/main/java/com/njyunzhi/invoice/controller/TaInvoiceFillController.java Parādīt failu

@@ -34,7 +34,9 @@ import org.springframework.web.bind.annotation.RestController;
34 34
 import javax.servlet.http.HttpServletResponse;
35 35
 import java.io.File;
36 36
 import java.io.InputStream;
37
+import java.util.HashMap;
37 38
 import java.util.List;
39
+import java.util.Map;
38 40
 import java.util.stream.Collectors;
39 41
 
40 42
 /**
@@ -78,7 +80,7 @@ public class TaInvoiceFillController extends BaseController {
78 80
         QueryWrapper<TaInvoiceFill> queryWrapper = new QueryWrapper<>();
79 81
         queryWrapper.gt("status", Constants.STATUS_DELETE);
80 82
         queryWrapper.like(!StringUtils.isEmpty(name), "name", "%" + name + "%");
81
-        queryWrapper.orderByDesc("create_date");
83
+        queryWrapper.orderByAsc("create_date");
82 84
 
83 85
         // H5 端只能查看自己的报销单
84 86
         if ("h5".equals(client)) {
@@ -108,18 +110,17 @@ public class TaInvoiceFillController extends BaseController {
108 110
         response.setContentType("application/vnd.ms-excel");
109 111
         response.setCharacterEncoding("utf-8");
110 112
         response.setHeader("Content-disposition", "attachment;filename="+expFile);
111
-//        EasyExcel.write(response.getOutputStream(), TaInvoiceDetail.class)
112
-//                .withTemplate(inputStream)
113
-//                .excelType(ExcelTypeEnum.XLSX)
114
-//                .sheet()
115
-//                .doFill(list);
116 113
 
117 114
         List<Object> mergeDataList = list.stream().map(x -> x.getPersonName()).collect(Collectors.toList());
118 115
         ExcelWriter excelWriter = EasyExcel.write(response.getOutputStream(), TaInvoiceDetail.class).withTemplate(inputStream).build();
119 116
         WriteSheet writeSheet = EasyExcel.writerSheet().registerWriteHandler(new MergeRowStrategy(mergeDataList, 2, 0)).build();
120 117
         FillConfig fillConfig = FillConfig.builder().forceNewRow(true).build();
121 118
 
119
+        Map<String, Object> map = new HashMap<>();
120
+        map.put("title", invoiceFill.getName());
121
+
122 122
         excelWriter.fill(list, fillConfig, writeSheet);
123
+        excelWriter.fill(map, writeSheet);
123 124
         excelWriter.finish();
124 125
     }
125 126
 

+ 16
- 0
src/main/java/com/njyunzhi/invoice/controller/TaInvoicePersonController.java Parādīt failu

@@ -75,6 +75,22 @@ public class TaInvoicePersonController extends BaseController {
75 75
         return ResponseBean.success(result);
76 76
     }
77 77
 
78
+    /**
79
+     * 未填写列表
80
+     * @param pageNum
81
+     * @param pageSize
82
+     * @return
83
+     */
84
+    @RequestMapping(value="/admin/invoice/{invoiceId}/person/nofill",method= RequestMethod.GET)
85
+    @ApiOperation(value="未填写列表", notes = "未填写列表", httpMethod = "GET", response = ResponseBean.class)
86
+    public ResponseBean noFillList(@ApiParam("页码") @RequestParam(value ="pageNum",defaultValue = "1") Integer pageNum,
87
+                                            @ApiParam("单页数据量") @RequestParam(value ="pageSize",defaultValue = "10") Integer pageSize,
88
+                                            @ApiParam("班级ID") @PathVariable(value ="invoiceId") String invoiceId) throws Exception {
89
+        IPage<TaInvoicePerson> pg = new Page<>(pageNum, pageSize);
90
+        IPage<TaInvoicePerson> result = iTaInvoicePersonService.getNoFillList(pg, invoiceId);
91
+        return ResponseBean.success(result);
92
+    }
93
+
78 94
     /**
79 95
      * 保存对象
80 96
      * @param taInvoicePerson 实体对象

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

@@ -1,5 +1,6 @@
1 1
 package com.njyunzhi.invoice.mapper;
2 2
 
3
+import com.baomidou.mybatisplus.core.metadata.IPage;
3 4
 import com.njyunzhi.invoice.entity.TaInvoicePerson;
4 5
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
5 6
 import org.apache.ibatis.annotations.Mapper;
@@ -19,4 +20,6 @@ import java.util.List;
19 20
 public interface TaInvoicePersonMapper extends BaseMapper<TaInvoicePerson> {
20 21
 
21 22
     List<TaInvoicePerson> getByName(@Param("invoiceId") String invoiceId, @Param("invoiceOrgId") String invoiceOrgId, @Param("name") String name);
23
+
24
+    IPage<TaInvoicePerson> getNoFillList(IPage<TaInvoicePerson> pg, @Param("invoiceId") String invoiceId);
22 25
 }

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

@@ -1,5 +1,6 @@
1 1
 package com.njyunzhi.invoice.service;
2 2
 
3
+import com.baomidou.mybatisplus.core.metadata.IPage;
3 4
 import com.njyunzhi.invoice.entity.TaInvoicePerson;
4 5
 import com.njyunzhi.invoice.entity.TaPerson;
5 6
 import org.springframework.web.multipart.MultipartFile;
@@ -25,4 +26,6 @@ public interface ITaInvoicePersonService extends IBaseService<TaInvoicePerson> {
25 26
     TaInvoicePerson getByPerson(String invoiceId, String invoicePerson) throws Exception;
26 27
 
27 28
     boolean bind(TaInvoicePerson taInvoicePerson, TaPerson taPerson) throws Exception;
29
+
30
+    IPage<TaInvoicePerson> getNoFillList(IPage<TaInvoicePerson> pg, String invoiceId);
28 31
 }

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

@@ -89,29 +89,33 @@ public class TaInvoiceDetailServiceImpl extends ServiceImpl<TaInvoiceDetailMappe
89 89
 
90 90
         // 如果不是新生成, 二次编辑
91 91
         if (null != origin) {
92
-            origin.setInvoicePersonId(taInvoiceDetail.getInvoicePersonId());
93
-            origin.setPersonName(taInvoiceDetail.getPersonName());
94
-            origin.setInvoiceOrgId(taInvoiceDetail.getInvoiceOrgId());
95
-            origin.setInvoiceOrgName(taInvoiceDetail.getInvoiceOrgName());
96
-            origin.setOrgId(taInvoiceDetail.getOrgId());
97
-            origin.setOrgName(taInvoiceDetail.getOrgName());
98
-            origin.setTaxNo(taInvoiceDetail.getTaxNo());
99
-            origin.setAddress(taInvoiceDetail.getAddress());
100
-            origin.setPhone(taInvoiceDetail.getPhone());
101
-            origin.setBankId(taInvoiceDetail.getBankId());
102
-            origin.setBankName(taInvoiceDetail.getBankName());
103
-            origin.setCardNo(taInvoiceDetail.getCardNo());
104
-            origin.setPersonId(taInvoiceDetail.getPersonId());
105
-            origin.setMergeRemark(taInvoiceDetail.getMergeRemark());
106
-            origin.setStayRemark(taInvoiceDetail.getStayRemark());
107
-            origin.setMailAddress(taInvoiceDetail.getMailAddress());
108
-            origin.setMailPhone(taInvoiceDetail.getMailPhone());
109
-            origin.setMailUser(taInvoiceDetail.getMailUser());
110
-
111
-            return updateById(origin);
92
+            origin.setStatus(Constants.STATUS_READY);
93
+            updateById(origin);
94
+//            origin.setInvoicePersonId(taInvoiceDetail.getInvoicePersonId());
95
+//            origin.setPersonName(taInvoiceDetail.getPersonName());
96
+//            origin.setInvoiceOrgId(taInvoiceDetail.getInvoiceOrgId());
97
+//            origin.setInvoiceOrgName(taInvoiceDetail.getInvoiceOrgName());
98
+//            origin.setOrgId(taInvoiceDetail.getOrgId());
99
+//            origin.setOrgName(taInvoiceDetail.getOrgName());
100
+//            origin.setTaxNo(taInvoiceDetail.getTaxNo());
101
+//            origin.setAddress(taInvoiceDetail.getAddress());
102
+//            origin.setPhone(taInvoiceDetail.getPhone());
103
+//            origin.setBankId(taInvoiceDetail.getBankId());
104
+//            origin.setBankName(taInvoiceDetail.getBankName());
105
+//            origin.setCardNo(taInvoiceDetail.getCardNo());
106
+//            origin.setPersonId(taInvoiceDetail.getPersonId());
107
+//            origin.setMergeRemark(taInvoiceDetail.getMergeRemark());
108
+//            origin.setStayRemark(taInvoiceDetail.getStayRemark());
109
+//            origin.setMailAddress(taInvoiceDetail.getMailAddress());
110
+//            origin.setMailPhone(taInvoiceDetail.getMailPhone());
111
+//            origin.setMailUser(taInvoiceDetail.getMailUser());
112
+//
113
+//            return updateById(origin);
112 114
         }
113 115
 
114 116
         // 否则就是全新生成
117
+        taInvoiceDetail.setDetailId(null);
118
+        taInvoiceDetail.setStatus(Constants.STATUS_NORMAL);
115 119
         return save(taInvoiceDetail);
116 120
     }
117 121
 

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

@@ -3,6 +3,7 @@ package com.njyunzhi.invoice.service.impl;
3 3
 import com.alibaba.excel.EasyExcel;
4 4
 import com.alibaba.excel.read.listener.PageReadListener;
5 5
 import com.alibaba.excel.support.ExcelTypeEnum;
6
+import com.baomidou.mybatisplus.core.metadata.IPage;
6 7
 import com.njyunzhi.invoice.common.Constants;
7 8
 import com.njyunzhi.invoice.common.DateUtils;
8 9
 import com.njyunzhi.invoice.common.StringUtils;
@@ -118,6 +119,11 @@ public class TaInvoicePersonServiceImpl extends BaseServiceImpl<TaInvoicePersonM
118 119
         return true;
119 120
     }
120 121
 
122
+    @Override
123
+    public IPage<TaInvoicePerson> getNoFillList(IPage<TaInvoicePerson> pg, String invoiceId) {
124
+        return baseMapper.getNoFillList(pg, invoiceId);
125
+    }
126
+
121 127
     private TaInvoiceOrg createByPerson(TaInvoicePerson taInvoicePerson) {
122 128
         TaInvoiceOrg taInvoiceOrg = new TaInvoiceOrg();
123 129
         taInvoiceOrg.setInvoiceId(taInvoicePerson.getInvoiceId());

Binārs
src/main/resources/excel/invoice_tpl.xlsx Parādīt failu


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

@@ -75,7 +75,7 @@
75 75
         WHERE
76 76
             t.invoice_id = #{invoiceId}
77 77
           AND t.person_id = #{personId}
78
-          AND t.`status` &gt; -1
78
+          AND t.`status` = 1
79 79
     </select>
80 80
 
81 81
     <sql id="getInvoiceDetail">
@@ -113,7 +113,7 @@
113 113
     <select id="getListByMainId" resultType="com.njyunzhi.invoice.entity.TaInvoiceDetail">
114 114
         <include refid="getInvoiceDetail"></include>
115 115
         WHERE
116
-            t.`status` &gt; -1
116
+            t.`status` = 1
117 117
             AND t.invoice_id = #{invoiceId}
118 118
         ORDER BY
119 119
             t.org_name ASC,
@@ -154,7 +154,7 @@
154 154
             ta_invoice_detail t
155 155
             INNER JOIN ta_invoice_fill s ON s.invoice_id = t.invoice_id
156 156
         WHERE
157
-            t.`status` &gt; -1
157
+            t.`status` = 1
158 158
         <if test="invoiceId != null and invoiceId != ''">
159 159
             AND t.invoice_id = #{invoiceId}
160 160
         </if>
@@ -194,7 +194,7 @@
194 194
     <select id="getPageBy" resultType="com.njyunzhi.invoice.entity.TaInvoiceDetail">
195 195
         <include refid="getInvoiceDetail"></include>
196 196
         WHERE
197
-            t.`status` &gt; -1
197
+            t.`status` = 1
198 198
             AND t.invoice_id = #{invoiceId}
199 199
         <if test="orgName != null and orgName != ''">
200 200
             AND t.org_name LIKE CONCAT( '%', #{orgName}, '%' )

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

@@ -13,4 +13,26 @@
13 13
           AND t.`name` = #{name}
14 14
           AND t.`status` &gt; -1
15 15
     </select>
16
+    <select id="getNoFillList" resultType="com.njyunzhi.invoice.entity.TaInvoicePerson">
17
+        SELECT
18
+            *
19
+        FROM
20
+            ta_invoice_person t
21
+        WHERE
22
+            t.invoice_id = #{invoiceId}
23
+          AND NOT EXISTS (
24
+                SELECT
25
+                    *
26
+                FROM
27
+                    ta_invoice_detail s
28
+                WHERE
29
+                    t.invoice_id = s.invoice_id
30
+                  AND t.invoice_org_id = s.invoice_org_id
31
+                  AND t.`name` = s.person_name
32
+            )
33
+          AND t.`status` &gt; - 1
34
+        ORDER BY
35
+            t.org_name ASC,
36
+            t.`name` ASC
37
+    </select>
16 38
 </mapper>