Selaa lähdekoodia

Merge branch 'dev' of ssh://10.10.100.21/source/saas-platform into dev

chenw 6 vuotta sitten
vanhempi
commit
d12b5e9a84

+ 2 - 0
applications/document/document-server/src/main/java/com/usoftchina/saas/document/mapper/CustomerMapper.java

@@ -42,4 +42,6 @@ public interface CustomerMapper extends CommonBaseMapper<Customer> {
     int updateCustleftamountByPrimaryKey(Long cu_id);
 
     List<Customer> getCustomersByCondition(@Param("condition") String condition, @Param("companyId") Long companyId);
+
+    void updateAllCustleftamount(@Param("companyId") Long companyId);
 }

+ 2 - 0
applications/document/document-server/src/main/java/com/usoftchina/saas/document/mapper/VendorMapper.java

@@ -39,4 +39,6 @@ public interface VendorMapper extends CommonBaseMapper<Vendor> {
     VendorDTO selectByName(@Param("name") String name, @Param("companyId") Long companyId);
 
     int updateVendleftamountByPrimaryKey(Long ve_id);
+
+    void updateAllVendleftamount(@Param("companyId") Long companyId);
 }

+ 10 - 1
applications/document/document-server/src/main/java/com/usoftchina/saas/document/service/impl/CurrencyServiceImpl.java

@@ -17,6 +17,8 @@ import com.usoftchina.saas.page.PageRequest;
 import com.usoftchina.saas.utils.BeanMapper;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import com.usoftchina.saas.document.mapper.CustomerMapper;
+import com.usoftchina.saas.document.mapper.VendorMapper;
 
 import java.util.List;
 
@@ -29,7 +31,10 @@ public class CurrencyServiceImpl extends CommonBaseServiceImpl<CurrencyMapper, C
 
     @Autowired
     private MessageLogService messageLogService;
-
+    @Autowired
+    private CustomerMapper customerMapper;
+    @Autowired
+    private VendorMapper vendorMapper;
     @Override
     public void save(CurrencyDTO currencyDTO) {
         Currency currency = BeanMapper.map(currencyDTO, Currency.class);
@@ -49,6 +54,10 @@ public class CurrencyServiceImpl extends CommonBaseServiceImpl<CurrencyMapper, C
             docBaseDTO = generateMsgObj(currency.getId());
             messageLogService.update(docBaseDTO);
         }
+        //更新客户余额
+        customerMapper.updateAllCustleftamount(companyId);
+        //更新供应商余额
+        vendorMapper.updateAllVendleftamount(companyId);
     }
 
     @Override

+ 10 - 0
applications/document/document-server/src/main/resources/mapper/CustomerMapper.xml

@@ -424,4 +424,14 @@
     </where>
     ORDER BY CU_ID DESC
   </select>
+
+  <update id="updateAllCustleftamount">
+    update customer
+    <set>
+      cu_leftamount=ifnull((select sum(ca_leftamount*(case when ifnull(cr_rate,0)=0 then 1 else ifnull(cr_rate,0) end ))
+      from custaramount left join currencys on cr_name=ca_currency and custaramount.companyid=currencys.companyid
+      where custaramount.companyid=customer.companyid and ca_custid=cu_id),0)
+    </set>
+    where companyId = #{companyId}
+  </update>
 </mapper>

+ 10 - 0
applications/document/document-server/src/main/resources/mapper/VendorMapper.xml

@@ -515,5 +515,15 @@
         </set>
         where ve_id = #{ve_id}
     </update>
+
+    <update id="updateAllVendleftamount">
+        update vendor
+        <set>
+            ve_leftamount=ifnull((select sum(va_leftamount*(case when ifnull(cr_rate,0)=0 then 1 else ifnull(cr_rate,0) end ))
+            from VendApamount left join currencys on cr_name=va_currency and VendApamount.companyid=currencys.companyid
+            where VendApamount.companyid=vendor.companyid and va_vendid=ve_id),0)
+        </set>
+        where companyId = #{companyId}
+    </update>
 </mapper>