浏览代码

签收列表优化

xian 4 年之前
父节点
当前提交
c13a284874

+ 20 - 0
watero-rst-core/src/main/java/com.iamberry.rst.core/fm/ComplaintSignclosedInfo.java

@@ -118,6 +118,26 @@ public class ComplaintSignclosedInfo implements Serializable {
     private Integer warehouseId;
     // 是否使用,1:未使用;2:已使用
     private Integer signclosedIsUse;
+    // 【分页参数】起始数
+    private Integer offset;
+    // 【分页参数】查询条数
+    private Integer pageNum;
+
+    public Integer getOffset() {
+        return offset;
+    }
+
+    public void setOffset(Integer offset) {
+        this.offset = offset;
+    }
+
+    public Integer getPageNum() {
+        return pageNum;
+    }
+
+    public void setPageNum(Integer pageNum) {
+        this.pageNum = pageNum;
+    }
 
     public Integer getSignclosedIsUse() {
         return signclosedIsUse;

+ 25 - 4
watero-rst-service/src/main/java/com/iamberry/rst/service/fm/ComplaintSignclosedInfoServiceImpl.java

@@ -321,9 +321,11 @@ public class ComplaintSignclosedInfoServiceImpl implements ComplaintSignclosedIn
                                     if(type == 1){
                                         //客服关联客诉才发送通知短信
                                         //发送短信通知维修检测人员
+                                        // 仓库电话
+                                        String tel = "18574702550";
                                         String text = MessageFormat.format(SmsConfig.CUSTOMER_CONTACT, sigInfo.getSignclosedLogisticsNumber(),number);
-                                        String result = smsService.sendOtherCMS(SmsConfig.CUSTOMER_PHONE, text);
-                                        logger.info("给 " + SmsConfig.CUSTOMER_PHONE + " 手机用户发送短信:" + text+"发送关联客诉通知维修人员:"+result);
+                                        String result = smsService.sendOtherCMS(tel, text);
+                                        logger.info("给 " + tel + " 手机用户发送短信:" + text+"发送关联客诉通知维修人员:"+result);
                                     }
 
                                 } catch (Exception e) {
@@ -737,9 +739,28 @@ public class ComplaintSignclosedInfoServiceImpl implements ComplaintSignclosedIn
 
     @Override
     public PagedResult<ComplaintSignclosedInfo> listSignclosed(PageRequest<ComplaintSignclosedInfo> pageRequest) {
-        PageHelper.startPage(pageRequest.getPageNO(), pageRequest.getPageSize(), pageRequest.isPageTotal());
+        if (pageRequest.getData() == null) {
+            pageRequest.setData(new ComplaintSignclosedInfo());
+        }
+        // 计算起始数据
+        if (pageRequest.getPageNO() == 1) {
+            pageRequest.getData().setOffset(0);
+        } else {
+            pageRequest.getData().setOffset((pageRequest.getPageNO()-1)*pageRequest.getPageSize());
+        }
+        pageRequest.getData().setPageNum(pageRequest.getPageSize());
+        // 执行查询
         List<ComplaintSignclosedInfo> signclosedList = complaintSignclosedInfoMapper.listSignclosed(pageRequest.getData());
-        return PageUtil.getPage(signclosedList);
+        // 查询分页数据
+        int total = complaintSignclosedInfoMapper.countSigncoled(pageRequest.getData());
+        // 返回指定数据
+        PagedResult<ComplaintSignclosedInfo> result = new PagedResult<ComplaintSignclosedInfo>();
+        result.setPageNo(pageRequest.getPageNO());
+        result.setPageSize(pageRequest.getPageSize());
+        result.setDataList(signclosedList);
+        int temp = total/pageRequest.getPageSize();
+        result.setTotal(total == 0 ? 0 : (total%pageRequest.getPageSize()==0?temp:temp+1));
+        return result;
 
     }
 

+ 8 - 0
watero-rst-service/src/main/java/com/iamberry/rst/service/fm/mapper/ComplaintSignclosedInfoMapper.java

@@ -37,6 +37,14 @@ public interface ComplaintSignclosedInfoMapper {
      * @return
      */
     List<ComplaintSignclosedInfo> listSignclosed(ComplaintSignclosedInfo record);
+
+    /**
+     * 指定条件查询分页数量
+     * @param data
+     * @return
+     */
+    int countSigncoled(ComplaintSignclosedInfo data);
+
     /**
      * 查询签收产品集合
      * @return

+ 52 - 9
watero-rst-service/src/main/java/com/iamberry/rst/service/fm/mapper/complaintSignclosedInfoMapper.xml

@@ -159,18 +159,63 @@
       cd.detect_nalysis detectNalysis,
       cd.detect_content detectContent,
       cd.detect_is_refurbishing detectIsRefurbishing
-    FROM
-      tb_rst_complaint_signclosed cs
+    FROM (
+      SELECT
+        cs.*
+      FROM
+        tb_rst_complaint_signclosed cs
+      <where>
+        <if test="signclosedSendName != null and signclosedSendName != ''" >
+          cs.signclosed_send_name = #{signclosedSendName}
+        </if>
+        <if test="signclosedSendTel != null and signclosedSendTel != ''" >
+          AND cs.signclosed_send_tel like CONCAT('%',#{signclosedSendTel},'%')
+        </if>
+        <if test="signclosedLogisticsNumber != null and signclosedLogisticsNumber != ''" >
+          AND cs.signclosed_logistics_number like CONCAT('%',#{signclosedLogisticsNumber},'%')
+        </if>
+        <if test="signclosedCustomerId != null " >
+          AND cs.signclosed_customer_id = #{signclosedCustomerId}
+        </if>
+        <if test="isBinding != null and isBinding == 1" >
+          AND cs.signclosed_customer_id is NULL AND cs.signclosed_company_id != 3 AND cs.signclosed_company_id != 4
+        </if>
+        <if test="signclosedIsReceiving != null and signclosedIsReceiving != ''" >
+          AND cs.signclosed_is_receiving = #{signclosedIsReceiving}
+        </if>
+        <if test="signclosedDate != null and signclosedDate != ''" >
+          AND cs.signclosed_date = #{signclosedDate}
+        </if>
+        <if test="startTime != null and startTime != ''" >
+          AND cs.signclosed_date &gt; #{startTime}
+        </if>
+        <if test="endTime != null and endTime != ''" >
+          AND cs.signclosed_date &lt; #{endTime}
+        </if>
+      </where>
+      GROUP BY
+        cs.signclosed_id
+      ORDER BY
+        cs.signclosed_id DESC
+      LIMIT #{offset}, #{pageNum}
+    ) cs
     LEFT JOIN tb_rst_address_province ap ON cs.signclosed_addr_provinces = ap.province_id
     LEFT JOIN tb_rst_address_city ac ON cs.signclosed_addr_city = ac.city_id
-    LEFT JOIN tb_rst_address_district ad on ad.district_id = cs.signclosed_addr_area
-    LEFT JOIN tb_rst_cm_question_describe qd on cs.signclosed_customer_id = qd.customer_id
-    LEFT JOIN tb_rst_logistics_info li on cs.signclosed_logistics = li.logistics_rst_code
-    LEFT JOIN tb_rst_store_info si on cs.signclosed_store_id = si.store_id
-    LEFT JOIN tb_rst_complaint_detect cd on cs.signclosed_id = cd.signclosed_id
+    LEFT JOIN tb_rst_address_district ad ON ad.district_id = cs.signclosed_addr_area
+    LEFT JOIN tb_rst_cm_question_describe qd ON cs.signclosed_customer_id = qd.customer_id
+    LEFT JOIN tb_rst_logistics_info li ON cs.signclosed_logistics = li.logistics_rst_code
+    LEFT JOIN tb_rst_store_info si ON cs.signclosed_store_id = si.store_id
+    LEFT JOIN tb_rst_complaint_detect cd ON cs.signclosed_id = cd.signclosed_id
     LEFT JOIN tb_rst_cm_relation cr ON cs.signclosed_customer_id = cr.customer_id
     LEFT JOIN tb_rst_cm_proc_method cpm ON cr.proc_method_id = cpm.proc_method_id
     LEFT JOIN tb_rst_cm_proc_type cpt ON cpm.proc_type_id = cpt.proc_type_id
+  </select>
+
+  <select id="countSigncoled" parameterType="ComplaintSignclosedInfo" resultType="int">
+    SELECT
+      count(*)
+    FROM
+    tb_rst_complaint_signclosed cs
     <where>
       <if test="signclosedSendName != null and signclosedSendName != ''" >
         cs.signclosed_send_name = #{signclosedSendName}
@@ -200,8 +245,6 @@
         AND cs.signclosed_date &lt; #{endTime}
       </if>
     </where>
-    GROUP BY cs.signclosed_id
-    order by cs.signclosed_create_time DESC
   </select>
 
   <insert id="insert" parameterType="ComplaintSignclosedInfo" useGeneratedKeys="true" keyProperty="signclosedId" >

+ 1 - 1
watero-rst-web/src/main/java/com/iamberry/rst/controllers/order/AwaitSendController.java

@@ -414,7 +414,7 @@ public class AwaitSendController {
         SalesOrder salesOrderInfo = salesOrderService.getSalesOrderById(salesId);
         assert salesOrderInfo != null;
         if (salesOrderInfo.getSalesShippingStatus() != 11) {
-            return ResponseJson.getFAILURE().addResponseKeyValue("error","订单状态非通知配货,无法打印");
+            return ResponseJson.getFAILURE().addResponseKeyValue("error","订单状态非通知配货,无法打印,当前状态为:" + salesOrderInfo.getSalesShippingStatus());
         }
         // 查询封装售后维修编号
         List<ComplaintDetectInfo> listDetect  = complaintDetectInfoService.listComplaintDetectBySalesId(salesOrderInfo.getSalesOrderId());