Browse Source

增加导入采购单功能,默认交货地址字段添加

guq 6 years ago
parent
commit
1a55c39fd5

+ 3 - 0
applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/mapper/PurchaseMapper.java

@@ -4,6 +4,7 @@ import com.usoftchina.saas.base.mapper.CommonBaseMapper;
 
 import com.usoftchina.saas.commons.dto.DocBaseDTO;
 import com.usoftchina.saas.document.dto.ProductDTO;
+import com.usoftchina.saas.document.entities.Address;
 import com.usoftchina.saas.document.entities.Vendor;
 import com.usoftchina.saas.purchase.po.Purchase;
 import org.apache.ibatis.annotations.Param;
@@ -52,4 +53,6 @@ public interface PurchaseMapper extends CommonBaseMapper<Purchase>{
     Integer checkCurrency(@Param("name") String currency, @Param("companyId") Long companyId);
 
     ProductDTO selectProductByCode(@Param("code") String prodcode, @Param("companyid") Long companyId);
+
+    Address selectDefaultAddress(Long companyId);
 }

+ 8 - 0
applications/purchase/purchase-server/src/main/java/com/usoftchina/saas/purchase/service/impl/PurchaseServiceImpl.java

@@ -11,6 +11,7 @@ import com.usoftchina.saas.document.api.CurrencyApi;
 import com.usoftchina.saas.document.api.ProductApi;
 import com.usoftchina.saas.document.api.VendorApi;
 import com.usoftchina.saas.document.dto.*;
+import com.usoftchina.saas.document.entities.Address;
 import com.usoftchina.saas.document.entities.Vendor;
 import com.usoftchina.saas.document.entities.Vendorcontact;
 import com.usoftchina.saas.inquiry.api.InquiryApi;
@@ -345,6 +346,12 @@ public class PurchaseServiceImpl extends CommonBaseServiceImpl<PurchaseMapper, P
         if (!CollectionUtils.isEmpty(details)) {
             Map<String, List<DataImportDetail>> datas = CollectionUtils.groupBy(details, DataImportDetail::getDd_codevalue);
             Integer detno = null;
+            //取统一的交货地址
+            Address address = purchaseMapper.selectDefaultAddress(companyId);
+            String defaultAddress = null;
+            if (null != address) {
+                defaultAddress = address.getAd_address();
+            }
             for (String code : datas.keySet()) {
                 purchaseFormDTO = new PurchaseFormDTO();
                 List<PurchaseDetailDTO> detailDTOList = new ArrayList<>();
@@ -380,6 +387,7 @@ public class PurchaseServiceImpl extends CommonBaseServiceImpl<PurchaseMapper, P
                 purchaseDTO.setPu_statuscode(Status.UNAUDITED.name());
                 purchaseDTO.setPu_date(new Date());
                 purchaseDTO.setCreateTime(new Date());
+                purchaseDTO.setPu_shipaddresscode(defaultAddress);
                 if (null == purchaseDTO.getPu_delivery()) {
                     purchaseDTO.setPu_delivery(new Date());
                 }

+ 18 - 0
applications/purchase/purchase-server/src/main/resources/mapper/PurchaseMapper.xml

@@ -552,4 +552,22 @@
   <select id="selectProductByCode" resultMap="productMap">
     select * from product where pr_code=#{code} and companyid=#{companyid}
   </select>
+
+  <select id="selectDefaultAddress" resultMap="addressMap">
+    SELECT * FROM ADDRESS where COMPANYID=#{companyId} and ad_default=1
+  </select>
+
+  <resultMap id="addressMap" type="com.usoftchina.saas.document.entities.Address">
+    <id column="ad_id" jdbcType="INTEGER" property="id" />
+    <result column="companyId" jdbcType="INTEGER" property="companyId" />
+    <result column="updaterId" jdbcType="INTEGER" property="updaterId" />
+    <result column="updateTime" jdbcType="TIMESTAMP" property="updateTime" />
+    <result column="ad_text1" jdbcType="VARCHAR" property="ad_text1" />
+    <result column="ad_text2" jdbcType="VARCHAR" property="ad_text2" />
+    <result column="ad_text3" jdbcType="VARCHAR" property="ad_text3" />
+    <result column="ad_text4" jdbcType="VARCHAR" property="ad_text4" />
+    <result column="ad_text5" jdbcType="VARCHAR" property="ad_text5" />
+    <result column="ad_default" jdbcType="INTEGER" property="ad_default" />
+    <result column="ad_address" jdbcType="LONGVARCHAR" property="ad_address" />
+  </resultMap>
 </mapper>