LG88888888 3 роки тому
батько
коміт
34b5996f93
20 змінених файлів з 2097 додано та 724 видалено
  1. 2 0
      src/main/java/net/chenlin/dp/common/aspect/SysLogAspect.java
  2. 50 1
      src/main/java/net/chenlin/dp/modules/api/controller/SaleOrderController.java
  3. 54 2
      src/main/java/net/chenlin/dp/modules/api/dao/CustomerMapper.java
  4. 276 7
      src/main/java/net/chenlin/dp/modules/api/dao/SaleOrderMapper.java
  5. 58 18
      src/main/java/net/chenlin/dp/modules/api/mapper/CustomerMapper.xml
  6. 530 95
      src/main/java/net/chenlin/dp/modules/api/mapper/SaleOrderMapper.xml
  7. 27 48
      src/main/java/net/chenlin/dp/modules/api/service/CustomerService.java
  8. 544 40
      src/main/java/net/chenlin/dp/modules/api/service/SaleOrderService.java
  9. 95 140
      src/main/java/net/chenlin/dp/modules/api/vo/AcceptOrder.java
  10. 25 97
      src/main/java/net/chenlin/dp/modules/api/vo/AcceptOrderMin.java
  11. 83 133
      src/main/java/net/chenlin/dp/modules/api/vo/Customer.java
  12. 5 59
      src/main/java/net/chenlin/dp/modules/api/vo/CustomerAddress.java
  13. 0 45
      src/main/java/net/chenlin/dp/modules/api/vo/CustomerBanks.java
  14. 14 5
      src/main/java/net/chenlin/dp/modules/api/vo/SaleOrderBJ.java
  15. 18 0
      src/main/java/net/chenlin/dp/modules/api/vo/SaleOrderBJMin.java
  16. 8 0
      src/main/java/net/chenlin/dp/modules/api/vo/SaleOrderFH.java
  17. 9 0
      src/main/java/net/chenlin/dp/modules/api/vo/SaleOrderTHMin.java
  18. 210 0
      src/main/java/net/chenlin/dp/modules/api/vo/YonyouMaterial.java
  19. 29 0
      src/main/java/net/chenlin/dp/modules/api/vo/YonyouSaleOrder.java
  20. 60 34
      src/main/java/net/chenlin/dp/modules/sys/controller/SysLoginController.java

+ 2 - 0
src/main/java/net/chenlin/dp/common/aspect/SysLogAspect.java

@@ -1,6 +1,7 @@
 package net.chenlin.dp.common.aspect;
 
 import net.chenlin.dp.common.annotation.SysLog;
+import net.chenlin.dp.common.support.orm.db.DynamicDataSource;
 import net.chenlin.dp.common.utils.CommonUtils;
 import net.chenlin.dp.common.utils.JSONUtils;
 import net.chenlin.dp.common.utils.ShiroUtils;
@@ -86,6 +87,7 @@ public class SysLogAspect {
 		}
 		sysLog.setTime(time);
 		//保存系统日志
+		DynamicDataSource.setDataSource("");
 		sysLogMapper.save(sysLog);
 	}
 	

+ 50 - 1
src/main/java/net/chenlin/dp/modules/api/controller/SaleOrderController.java

@@ -17,7 +17,7 @@ import java.text.SimpleDateFormat;
 import java.util.*;
 
 public class SaleOrderController {
-    @Autowired
+
     private SaleOrderService service=new SaleOrderService();
     private  DingdingOpenInterface dingdingOpenInterface=new DingdingOpenInterface();
     private  Properties prop = PropUtil.getProperties("/config.properties");
@@ -92,6 +92,55 @@ public class SaleOrderController {
         }
     }
 
+    /**
+     * 销售订单
+     */
+    public void SaleOrder() throws OpenAPIException {
+        service.getToaccount();
+        service.ISaleOrder();
+    }
+
+    /**
+     * 销售报价单
+     */
+    public  void SaleOrderBJ(){
+        service.CrmSaleOrderBJ();
+    }
+
+    /**
+     * 客诉单-抵扣
+     */
+    public  void KSDOrder() throws OpenAPIException {
+        service.getToaccount();
+        service.IKSDDKOrder();
+    }
+
+    /**
+     * 客诉单-退货
+     */
+    public void KSDTHOrder() throws OpenAPIException {
+        service.getToaccount();
+        service.IKDSOrderTH();
+    }
+
+    /**
+     * 打样单
+     */
+    public void DYDOrder() throws OpenAPIException {
+        service.getToaccount();
+        service.IDYDOrder();
+    }
+
+    /**
+     * 送样单
+     */
+    public void SYDOrder() throws OpenAPIException {
+        service.getToaccount();
+        service.ISYDOrder();
+    }
+
+
+
     public static void main(String[] args) throws OpenAPIException, ApiException {
      //  SaleOrderController saleOrderController=new SaleOrderController();
 //       saleOrderController.dingSaleOrder();

+ 54 - 2
src/main/java/net/chenlin/dp/modules/api/dao/CustomerMapper.java

@@ -1,9 +1,9 @@
 package net.chenlin.dp.modules.api.dao;
 
-import net.chenlin.dp.modules.api.vo.Customer;
-import net.chenlin.dp.modules.api.vo.YonyouSaleOrder;
+import net.chenlin.dp.modules.api.vo.*;
 import net.chenlin.dp.modules.sys.dao.BaseMapper;
 import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
 
@@ -13,5 +13,57 @@ import java.util.List;
  */
 @Mapper
 public interface CustomerMapper extends BaseMapper<Customer> {
+	/**
+	 * crm客户档案查询
+	 * @return
+	 */
 	List<Customer>CustomerList();
+
+	/**
+	 * crm客户档案银行查询
+	 * @param code
+	 * @return
+	 */
+	List<CustomerBanks>bank(@Param("code")String code);
+
+	/**
+	 * crm客户档案地址查询
+	 * @param code
+	 * @return
+	 */
+	List<CustomerAddress>addr(@Param("code")String code);
+
+	/**
+	 * u8客户档案新增
+	 * @param customer
+	 * @return
+	 */
+	int UAddCustomer(Customer customer);
+
+	/**
+	 * u8客户档案银行新增
+	 * @param banks
+	 * @return
+	 */
+	int UAddCustomerBank(List<CustomerBanks>banks);
+
+	/**
+	 * u8客户档案收获地址新增
+	 * @param addresses
+	 * @return
+	 */
+	int UAddCustomerAddr(List<CustomerAddress>addresses);
+
+	/**
+	 * u8客户接口查询数据
+	 * @return
+	 */
+	List<ICustomer>ICustomerList();
+
+	/**
+	 * 更新客户档案同步状态
+	 * @param id
+	 * @return
+	 */
+	int UpdateCustomer(@Param("id")String id);
 }

+ 276 - 7
src/main/java/net/chenlin/dp/modules/api/dao/SaleOrderMapper.java

@@ -1,8 +1,7 @@
 package net.chenlin.dp.modules.api.dao;
 
 import net.chenlin.dp.common.entity.Query;
-import net.chenlin.dp.modules.api.vo.SaleOrderBJ;
-import net.chenlin.dp.modules.api.vo.YonyouSaleOrder;
+import net.chenlin.dp.modules.api.vo.*;
 import net.chenlin.dp.modules.sys.dao.BaseMapper;
 import net.chenlin.dp.modules.sys.entity.SysUserEntity;
 import org.apache.ibatis.annotations.Mapper;
@@ -16,15 +15,285 @@ import java.util.List;
  */
 @Mapper
 public interface SaleOrderMapper extends BaseMapper<YonyouSaleOrder> {
+
+
 	/**
-	 * 根据制单时间查询销售订单
-	 * @param date
-	 * @param endDate
+	 * crm销售报价单查询
 	 * @return
 	 */
-	List<YonyouSaleOrder>SaleOrderList();
+	List<SaleOrderBJ>SaleOrderBJList();
 
+	/**
+	 * crm销售报价单子表查询
+	 * @param id
+	 * @return
+	 */
+	List<SaleOrderBJMin>selectCode(@Param("id")String id);
 
-	List<SaleOrderBJ>SaleOrderBJList();
+	/**
+	 * u8销售报价单主表新增
+	 * @param saleOrderBJ
+	 * @return
+	 */
+	int UInsertSaleOrderBJ(SaleOrderBJ saleOrderBJ);
+
+	/**
+	 * u8销售报价单子表新增
+	 * @param ls
+	 * @return
+	 */
+	int UInsertSaleOrderBJMin(List<SaleOrderBJMin>saleOrderBJMins);
+
+
+	/**
+	 * crm销售订单主表查询
+	 * @return
+	 */
+	List<YonyouSaleOrder>CrmSaleOrderList();
+
+	/**
+	 * crm销售订单子表查询
+	 * @param code 销售订单号
+	 * @return
+	 */
+	List<YonyouMaterial>CrmSaleMaterialList(@Param("id")String id);
+
+	/**
+	 * u8销售订单主表新增
+	 * @param yonyouSaleOrder
+	 * @return
+	 */
+	int UAddSaleOrder(YonyouSaleOrder yonyouSaleOrder);
+
+	/**
+	 * u8销售订单子表新增
+	 * @param yonyouMaterials
+	 * @return
+	 */
+	int UAddSaleOrderMin(List<YonyouMaterial>yonyouMaterials);
+
+
+	/**
+	 * u8销售发货退货单表头新增
+	 * @param saleOrderFTH
+	 * @return
+	 */
+	int UAddSaleOderFTH(SaleOrderFTH saleOrderFTH);
+
+
+	/**
+	 * u8销售发货退货单表体新增
+	 * @param saleOrderFTHMins
+	 * @return
+	 */
+	int UAddSaleOrderFTHMin(List<SaleOrderFTHMin>saleOrderFTHMins);
+
+
+	/**
+	 * crm客诉单-退货-换货-表头
+	 * @return
+	 */
+	List<SaleOrderFTH>CrmKSOrderTHList();
+
+	/**
+	 * crm客诉单-退货-换货-表体
+	 * @param id
+	 * @return
+	 */
+	List<SaleOrderFTHMin>CrmKSOrderTHMinList(@Param("id")String  id);
+
+
+	/**
+	 * crm客诉单-抵扣-表头
+	 * @return
+	 */
+	List<SaleOrderFTH>CrmKSDOrderFHList();
+
+	/**
+	 * crm客诉单-抵扣-表体
+	 * @param id
+	 * @return
+	 */
+	List<SaleOrderFTHMin>CrmKSDOrderFHMin(@Param("id")String id);
+
+
+	/**
+	 * 取u8发货退货单子表标识2的最大数值
+	 * @return
+	 */
+	String CrmSaleOrderCode();
+
+	/**
+	 * 销售订单子表标识2最大值
+	 * @return
+	 */
+	String CrmSaleOrderMinCode();
+
+	/**
+	 * u8销售发货单表头接口实体->客诉单-抵扣
+	 * @return
+	 */
+	List<SaleOrderFH>CrmIKSDOrder();
+
+	/**
+	 * u8销售发货单表体接口实体-》客诉单-抵扣
+	 * @param id
+	 * @return
+	 */
+	List<SaleOrderFHMin>CrmIKSDOrderMin(@Param("id")String id);
+
+
+	/**
+	 * 打样单表头
+	 * @return
+	 */
+	List<YonyouSaleOrder>CrmDYDOrder();
+
+	/**
+	 * 打样单表体
+	 * @param id
+	 * @return
+	 */
+	List<YonyouMaterial>CrmDYDOrderMin(@Param("id")String id);
+
+	/**
+	 * 送样单表头
+	 * @return
+	 */
+	List<SaleOrderFTH>CrmSYDOrder();
+
+	/**
+	 * 送样单表体
+	 * @param id
+	 * @return
+	 */
+	List<SaleOrderFTHMin>CrmSYDOrderMin(@Param("id")String id);
+
+
+	/**
+	 * 获取u8销售订单主表最大id
+	 * @return
+	 */
+	String SaleOrderMaxId();
+
+	/**
+	 * 获取销售报价单主表最大id
+	 * @return
+	 */
+	String SaleOrderBJMaxId();
+
+	/**
+	 * 获取销售报价单子表id
+	 * @return
+	 */
+	String SaleOrderBJMinMaxId();
+
+
+	/**
+	 * 获取发货退货单主表最大id
+	 * @return
+	 */
+	String SaleOrderFTHMaxId();
+
+
+	/**
+	 * u8接口实体--送样单表头
+	 * @return
+	 */
+	List<SaleOrderFH>CrmISYDOrder();
+
+	/**
+	 * u8接口实体---送样单表体
+	 * @param id
+	 * @return
+	 */
+	List<SaleOrderFHMin>CrmISYDOrderMin(@Param("id")String id);
+
+
+	/**
+	 * u8接口实体---客诉单-退货表头
+	 * @return
+	 */
+	List<SaleOrderTH>CrmIKSDOrderTH();
+
+	/**
+	 * u8接口实体---客诉单-退货表体
+	 * @return
+	 */
+	List<SaleOrderTHMin>CrmIKSDOrderTHMin(@Param("id")String id);
 
+	/**
+	 * 更新销售订单同步状态
+	 * @param id
+	 * @return
+	 */
+	int UpdateSaleOrder(@Param("id")String id);
+
+	/**
+	 * 更新销售报价单同步状态
+	 * @param id
+	 * @return
+	 */
+	int UpdateSaleOrderBJ(@Param("id")String id);
+
+	/**
+	 * 更新客诉单-抵扣同步状态
+	 * @param id
+	 * @return
+	 */
+	int UpdateKSDDKOrder(@Param("id")String id);
+
+	/**
+	 * 更新客诉单-退货同步状态
+	 * @param id
+	 * @return
+	 */
+	int UpdateKSDTHOrder(@Param("id")String id);
+
+	/**
+	 * 更新客诉单-退款同步状态
+	 * @param id
+	 * @return
+	 */
+	int UpdateKSDTKOrder(@Param("id")String id);
+
+	/**
+	 * 更新打样单同步状态
+	 * @param id
+	 * @return
+	 */
+	int UpdateDYDOrder(@Param("id")String id);
+
+	/**
+	 * 更新送样单同步状态
+	 * @param id
+	 * @return
+	 */
+	int UpdateSYDOrder(@Param("id")String id);
+
+	/**
+	 * u8销售订单接口实体
+	 * @return
+	 */
+	List<ISaleOrder>ISaleOrderList();
+
+	/**
+	 * u8销售订单接口实体子表
+	 * @param id
+	 * @return
+	 */
+	List<ISaleOrderMin>ISaleOrderMin(@Param("id")String id);
+
+	/**
+	 * u8接口打样单实体主表
+	 * @return
+	 */
+	List<ISaleOrder>IDYDOrder();
+
+	/**
+	 * u8接口打样单实体子表
+	 * @param id
+	 * @return
+	 */
+	List<ISaleOrderMin>IDYDOrderMin(@Param("id")String id);
 }

+ 58 - 18
src/main/java/net/chenlin/dp/modules/api/mapper/CustomerMapper.xml

@@ -2,19 +2,12 @@
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 
 <mapper namespace="net.chenlin.dp.modules.api.dao.CustomerMapper">
-	<resultMap id="BaseResultMap" type="net.chenlin.dp.modules.api.vo.Customer">
+	<resultMap id="BaseResultMap" type="net.chenlin.dp.modules.api.vo.ICustomer">
 		<result column="cCusCode" jdbcType="VARCHAR" property="code" />
 		<result column="cCusName" jdbcType="VARCHAR" property="name" />
-		<result column="aBbrName" jdbcType="VARCHAR" property="abbrname" />
+		<result column="cCusAbbName" jdbcType="VARCHAR" property="abbrname" />
 		<result column="cCCCode" jdbcType="VARCHAR" property="sort_code" />
 		<result column="cCusOAddress" jdbcType="VARCHAR" property="devliver_site" />
-
-
-		<!--我们可以利用association的select关键字进行查询,他可以关联另一条sql,方便我们进行查询子目录-->
-		<association column="cCusCode" jdbcType="VARCHAR" property="addresses" select="addr"/>
-		<association column="cCusCode" jdbcType="VARCHAR" property="banks" select="bank"/>
-		<association column="cCusCode" jdbcType="VARCHAR" property="invoicecustomers" select="invo"/>
-
 	</resultMap>
 	<resultMap id="CustomerAddr" type="net.chenlin.dp.modules.api.vo.CustomerAddress">
 		<result column="cCusCode" jdbcType="VARCHAR" property="ccuscode" />
@@ -36,21 +29,68 @@
 		<result column="cCusCode" jdbcType="VARCHAR" property="ccuscode" />
 		<result column="cInvoiceCompany" jdbcType="VARCHAR" property="cinvoicecompany" />
 	</resultMap>
+	<insert id="UAddCustomer">
+		insert into Customer (cCusCode,cCusName,cCusAbbName,cCCCode,cCusRegCode ,cCusBank,cCusAccount ,dCusCreateDatetime,cCusPPerson,iCusCreLine ,iCusCreDate ,cCusOAddress ,cInvoiceCompany )values
+		(
+		    #{cCusCode},
+		    #{cCusName},
+		    #{cCusAbbName},
+		    #{cCCCode},
+		    #{cCusRegCode},
+		    #{cCusBank},
+		    #{cCusAccount},
+		    #{dCusDevDate},
+		   	#{cCusPPerson},
+		    #{iCusCreLine},
+		    #{iCusCreDate},
+		    #{cCusOAddress},
+		    #{cInvoiceCompany}
+		)
+	</insert>
+	<insert id="UAddCustomerBank">
+		insert into CustomerBank (cCusCode,cAccountNum ,bDefault,cBank,cBranch,cAccountName) values
+		<foreach collection ="list" item="banks" index= "index" separator =",">
+			(
+			#{banks.cCusCode},
+			#{banks.cAccountNum},
+			#{banks.bDefault},
+			#{banks.cBank},
+			#{banks.cBranch},
+			#{banks.cAccountName}
+			)
+		</foreach >
 
-	<select id="CustomerList" resultMap="BaseResultMap">
-	select cCusCode,cCusName,cCusName as 'aBbrName' , cCCCode,cCusOAddress from crm_u8_customer
-	</select>
+	</insert>
+	<insert id="UAddCustomerAddr">
+		insert into CusDeliverAdd (cCusCode,cAddCode,cDeliverAdd,bDefault ) values
+		<foreach collection ="list" item="addresses" index= "index" separator =",">
+			(
+			#{addresses.cCusCode},
+			#{addresses.caddcode},
+			#{addresses.cdeliveradd},
+			#{addresses.bdefault}
+			)
+		</foreach >
+
+	</insert>
 
-	<select id="addr" resultMap="CustomerAddr">
-		select cCusCode,caddcode,cdeliveradd from CRM_U8_customEntity14__c where cCusCode=#{cCusCode}
+	<select id="CustomerList" resultType="net.chenlin.dp.modules.api.vo.Customer">
+	select cCusCode,cCusName,cCusAbbName, cCCCode,cCusRegCode,cCusBank,cCusAccount,dCusDevDate,
+		   cCusPPerson,iCusCreLine,iCusCreDate,cCusOAddress,cInvoiceCompany,cCusDefine1,cCusDefine2,cCusDefine3 from crm_u8_customer
 	</select>
 
-	<select id="bank" resultMap="CustomerBanks">
-		select cCusCode,cAccountNum,cBranch,cAccountName from CRM_U8_customEntity15__c where cCusCode=#{cCusCode}
+	<select id="addr" resultType="net.chenlin.dp.modules.api.vo.CustomerAddress">
+		select ccuscode,caddcode,cdeliveradd,bdefault from CRM_U8_customEntity14__c where ccuscode=#{code}
 	</select>
 
-	<select id="invo" resultMap="CustomerInvo">
-		select cCusCode,cInvoiceCompany from crm_u8_customer where cCusCode=#{cCusCode}
+	<select id="bank" resultType="net.chenlin.dp.modules.api.vo.CustomerBanks">
+		select ccuscode,caccountnum,bdefault,caccountname,cbank,bdefault,cbranch from CRM_U8_customEntity15__c where ccuscode=#{code}
+	</select>
+	<select id="ICustomerList" resultMap="BaseResultMap">
+		select cCusCode ,cCusName ,cCusAbbName ,cCCCode ,cCusOAddress  from crm_u8_customer where cCusCode='0070'
 	</select>
 
+	<update id="UpdateCustomer">
+		update CRM_U8_Customer set issyu8='1' where cCusCode=#{id}
+	</update>
 </mapper>

+ 530 - 95
src/main/java/net/chenlin/dp/modules/api/mapper/SaleOrderMapper.xml

@@ -2,116 +2,551 @@
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 
 <mapper namespace="net.chenlin.dp.modules.api.dao.SaleOrderMapper">
-	<!--销售订单-->
-	<resultMap id="BaseResultMap" type="net.chenlin.dp.modules.api.vo.YonyouSaleOrder">
-		<result column="cSOCode" jdbcType="VARCHAR" property="code" />
-		<result column="dDate" jdbcType="VARCHAR" property="date" />
-		<result column="cBusType" jdbcType="VARCHAR" property="businesstype" />
-		<result column="cSTCode" jdbcType="VARCHAR" property="typecode" />
-		<result column="iStatus" jdbcType="VARCHAR" property="state" />
-		<result column="cCusCode" jdbcType="VARCHAR" property="custcode" />
-		<result column="cCusName" jdbcType="VARCHAR" property="cusname" />
-		<result column="cDepCode" jdbcType="VARCHAR" property="deptcode" />
-		<result column="cMaker" jdbcType="VARCHAR" property="maker" />
-
-		<!--我们可以利用association的select关键字进行查询,他可以关联另一条sql,方便我们进行查询子目录-->
-		<association column="cSOCode" jdbcType="VARCHAR" property="entry" select="selectByPid"/>
-	</resultMap>
-	<resultMap id="SaleOrderMaterial" type="net.chenlin.dp.modules.api.vo.YonyouMaterial">
-		<result column="cInvCode" jdbcType="VARCHAR" property="inventorycode" />
-		<result column="iQuantity" jdbcType="VARCHAR" property="quantity" />
-		<result column="iNum" jdbcType="VARCHAR" property="num" />
-		<result column="iUnitPrice" jdbcType="VARCHAR" property="unitprice" />
-		<result column="iTaxUnitPrice" jdbcType="VARCHAR" property="taxunitprice" />
-		<result column="iMoney" jdbcType="VARCHAR" property="money" />
-		<result column="iSum" jdbcType="VARCHAR" property="sum" />
-		<result column="iDisCount" jdbcType="VARCHAR" property="discount" />
-		<result column="iNatUnitPrice" jdbcType="VARCHAR" property="natdiscount" />
-		<result column="iNatMoney" jdbcType="VARCHAR" property="natmoney" />
-		<result column="iNatTax" jdbcType="VARCHAR" property="nattax" />
-		<result column="iNatSum" jdbcType="VARCHAR" property="natsum" />
-		<result column="iNatDisCount" jdbcType="VARCHAR" property="natdiscount" />
-		<result column="cInvName" jdbcType="VARCHAR" property="inventoryname" />
-		<result column="iTaxRate" jdbcType="VARCHAR" property="taxrate" />
-		<result column="iInvExchRate" jdbcType="VARCHAR" property="unitrate" />
-		<result column="cUnitID" jdbcType="VARCHAR" property="unitcode" />
-		<result column="iRowNo" jdbcType="VARCHAR" property="rowno" />
-		<result column="KL" jdbcType="VARCHAR" property="discountrate" />
-		<result column="iQuotedPrice" jdbcType="VARCHAR" property="quotedprice" />
-		<result column="iQuotedPrice" jdbcType="VARCHAR" property="quotedprice" />
+	<resultMap id="FH" type="net.chenlin.dp.modules.api.vo.SaleOrderFH">
+		<result column="cdlcode" jdbcType="VARCHAR" property="code" />
+		<result column="cstcode" jdbcType="VARCHAR" property="saletype" />
+		<result column="ddate" jdbcType="VARCHAR" property="date" />
+		<result column="cdepcode" jdbcType="VARCHAR" property="deptcode" />
+		<result column="cpersoncode" jdbcType="VARCHAR" property="personcode" />
+		<result column="ccuscode" jdbcType="VARCHAR" property="custcode" />
+		<result column="cshipaddress" jdbcType="VARCHAR" property="cdeliveradd" />
+		<result column="cbustype" jdbcType="VARCHAR" property="operation_type" />
+		<result column="ccusname" jdbcType="VARCHAR" property="cusname" />
+		<result column="dlid" jdbcType="VARCHAR" property="closer" />
 	</resultMap>
 
-<!--销售报价单-->
-	<resultMap id="SaleOrderBJ" type="net.chenlin.dp.modules.api.vo.SaleOrderBJ">
-		<result column="ID" jdbcType="VARCHAR" property="ID" />
-		<result column="dDate" jdbcType="VARCHAR" property="dDate" />
-		<result column="cCode" jdbcType="VARCHAR" property="cCode" />
-		<result column="cCusCode" jdbcType="VARCHAR" property="cCusCode" />
-		<result column="cDepCode" jdbcType="VARCHAR" property="cDepCode" />
-		<result column="cPersonCode" jdbcType="VARCHAR" property="cPersonCode" />
-		<result column="cexch_name" jdbcType="VARCHAR" property="cexch_name" />
-		<result column="iExchRate" jdbcType="VARCHAR" property="iExchRate" />
-		<result column="iTaxRate" jdbcType="VARCHAR" property="iTaxRate" />
-		<result column="cMemo" jdbcType="VARCHAR" property="cMemo" />
-		<result column="cMaker" jdbcType="VARCHAR" property="cMaker" />
-		<result column="cVerifier" jdbcType="VARCHAR" property="cVerifier" />
-		<result column="cCloser" jdbcType="VARCHAR" property="cCloser" />
-		<result column="cBusType" jdbcType="VARCHAR" property="cBusType" />
-		<!--我们可以利用association的select关键字进行查询,他可以关联另一条sql,方便我们进行查询子目录-->
-		<association column="ID" jdbcType="VARCHAR" property="list" select="selectCode"/>
+
+	<resultMap id="FHMin" type="net.chenlin.dp.modules.api.vo.SaleOrderFHMin">
+		<result column="cwhcode" jdbcType="VARCHAR" property="warehouse_code" />
+		<result column="cinvcode" jdbcType="VARCHAR" property="inventory_code" />
+		<result column="iquantity" jdbcType="VARCHAR" property="quantity" />
+		<result column="inum" jdbcType="VARCHAR" property="num" />
+		<result column="iunitprice" jdbcType="VARCHAR" property="price" />
+		<result column="itaxunitprice" jdbcType="VARCHAR" property="taxprice" />
+		<result column="imoney" jdbcType="VARCHAR" property="money" />
+		<result column="itax" jdbcType="VARCHAR" property="tax" />
+		<result column="isum" jdbcType="VARCHAR" property="sum" />
+		<result column="inatunitprice" jdbcType="VARCHAR" property="natprice" />
+		<result column="inatmoney" jdbcType="VARCHAR" property="natmoney" />
+		<result column="inattax" jdbcType="VARCHAR" property="nattax" />
+		<result column="inatsum" jdbcType="VARCHAR" property="natsum" />
+		<result column="cinvname" jdbcType="VARCHAR" property="inventory_name" />
+		<result column="itaxrate" jdbcType="VARCHAR" property="taxrate" />
+		<result column="citemcode" jdbcType="VARCHAR" property="item_code" />
+		<result column="citemname" jdbcType="VARCHAR" property="item_name" />
+		<result column="iinvexchrate" jdbcType="VARCHAR" property="unitrate" />
+		<result column="cunitid" jdbcType="VARCHAR" property="ccomunitcode" />
 	</resultMap>
 
-	<resultMap id="SaleOrderBJMin" type="net.chenlin.dp.modules.api.vo.SaleOrderBJMin">
-		<result column="irowno" jdbcType="VARCHAR" property="irowno" />
-		<result column="cInvCode" jdbcType="VARCHAR" property="cInvCode" />
-		<result column="iQuantity" jdbcType="VARCHAR" property="iQuantity" />
-		<result column="cUnitID" jdbcType="VARCHAR" property="cUnitID" />
-		<result column="iInvExchRate" jdbcType="VARCHAR" property="iInvExchRate" />
-		<result column="iNum" jdbcType="VARCHAR" property="iNum" />
-		<result column="iQuotedPrice" jdbcType="VARCHAR" property="iQuotedPrice" />
-		<result column="iUnitPrice" jdbcType="VARCHAR" property="iUnitPrice" />
-		<result column="iTaxUnitPrice" jdbcType="VARCHAR" property="iTaxUnitPrice" />
-		<result column="iMoney" jdbcType="VARCHAR" property="iMoney" />
-		<result column="iTax" jdbcType="VARCHAR" property="iTax" />
-		<result column="iSum" jdbcType="VARCHAR" property="iSum" />
-		<result column="iDisCount" jdbcType="VARCHAR" property="iDisCount" />
-		<result column="iNatUnitPrice" jdbcType="VARCHAR" property="iNatUnitPrice" />
-		<result column="iTaxUnitPrice" jdbcType="VARCHAR" property="iTaxUnitPrice" />
-		<result column="iNatMoney" jdbcType="VARCHAR" property="iNatMoney" />
-		<result column="iNatTax" jdbcType="VARCHAR" property="iNatTax" />
-		<result column="iNatSum" jdbcType="VARCHAR" property="iNatSum" />
-		<result column="iNatDisCount" jdbcType="VARCHAR" property="iNatDisCount" />
-		<result column="cMemo" jdbcType="VARCHAR" property="cMemo" />
-		<result column="iTaxRate" jdbcType="VARCHAR" property="iTaxRate" />
-		<result column="KL" jdbcType="VARCHAR" property="KL" />
-		<result column="cItemCode" jdbcType="VARCHAR" property="cItemCode" />
-		<result column="cItem_class" jdbcType="VARCHAR" property="cItem_class" />
-		<result column="cItemName" jdbcType="VARCHAR" property="cItemName" />
-		<result column="cItem_CName" jdbcType="VARCHAR" property="cItem_CName" />
-		<result column="cCusInvCode" jdbcType="VARCHAR" property="cCusInvCode" />
-		<result column="cCusInvName" jdbcType="VARCHAR" property="cCusInvName" />
+
+
+		<resultMap id="TH" type="net.chenlin.dp.modules.api.vo.SaleOrderTH">
+			<result column="cdlcode" jdbcType="VARCHAR" property="code" />
+			<result column="cstcode" jdbcType="VARCHAR" property="saletype" />
+			<result column="ddate" jdbcType="VARCHAR" property="date" />
+			<result column="cdepcode" jdbcType="VARCHAR" property="deptcode" />
+			<result column="cpersoncode" jdbcType="VARCHAR" property="personcode" />
+			<result column="ccuscode" jdbcType="VARCHAR" property="custcode" />
+			<result column="cbustype" jdbcType="VARCHAR" property="operation_type" />
+			<result column="ccusname" jdbcType="VARCHAR" property="cusname" />
+			<result column="dlid" jdbcType="VARCHAR" property="remark" />
+		</resultMap>
+
+
+	<resultMap id="THMin" type="net.chenlin.dp.modules.api.vo.SaleOrderTHMin">
+		<result column="cwhcode" jdbcType="VARCHAR" property="warehouse_code" />
+		<result column="cinvcode" jdbcType="VARCHAR" property="inventory_code" />
+		<result column="iquantity" jdbcType="VARCHAR" property="quantity" />
+		<result column="iunitprice" jdbcType="VARCHAR" property="price" />
+		<result column="itaxunitprice" jdbcType="VARCHAR" property="taxprice" />
+		<result column="imoney" jdbcType="VARCHAR" property="money" />
+		<result column="itax" jdbcType="VARCHAR" property="tax" />
+		<result column="isum" jdbcType="VARCHAR" property="sum" />
+		<result column="inatunitprice" jdbcType="VARCHAR" property="natprice" />
+		<result column="inatmoney" jdbcType="VARCHAR" property="natmoney" />
+		<result column="inattax" jdbcType="VARCHAR" property="nattax" />
+		<result column="inatsum" jdbcType="VARCHAR" property="natsum" />
+		<result column="cinvname" jdbcType="VARCHAR" property="inventory_name" />
+		<result column="itaxrate" jdbcType="VARCHAR" property="taxrate" />
+		<result column="cunitid" jdbcType="VARCHAR" property="ccomunitcode" />
 	</resultMap>
 
-	<select id="selectByPid" resultMap="SaleOrderMaterial">
-		select cInvCode ,iQuantity ,iNum ,iUnitPrice ,iTaxUnitPrice ,iMoney  ,iSum,iDisCount,iNatUnitPrice ,
-			   iNatMoney ,iNatTax ,iNatSum ,iNatDisCount ,cInvName ,iTaxRate ,iInvExchRate ,cUnitID ,iRowNo   from CRM_U8_SO_SOMainItem where cSOCode=#{code};
+
+	<insert id="UInsertSaleOrderBJ">
+		INSERT INTO SA_QuoMain (
+			cSTCode,iVTid,ID,dDate,cCode,cCusCode,cDepCode,cPersonCode,cexch_name,iExchRate,iTaxRate,cMemo,cMaker,cVerifier,cCloser,cBusType,dcreatesystime
+
+		)
+		VALUES (
+		        	'01',
+					'8048',
+				   #{ID},
+				   #{dDate},
+				   #{cCode},
+				   #{cCusCode},
+				   #{cDepCode},
+				   #{cPersonCode},
+				   '人民币',
+				   #{iExchRate},
+				   #{iTaxRate},
+				   #{cMemo},
+				   #{cMaker},
+				   #{cVerifier},
+				   #{cCloser},
+				   '普通销售',
+				   #{dcreatesystime}
+			   )
+	</insert>
+	<insert id="UInsertSaleOrderBJMin">
+		INSERT INTO SA_QuoDetails (
+			ID,AutoID ,irowno,cInvCode,iQuantity,cUnitID,iInvExchRate,iNum,iQuotedPrice,iUnitPrice,iTaxUnitPrice,iNatMoney,iNatTax,iNatSum,
+			iNatDisCount,cMemo,iTaxRate,KL,cItemCode,cItem_class,cItemName,cItem_CName,cCusInvCode,cCusInvName,imoney,itax,isum,idiscount,inatunitprice)
+		values
+		<foreach collection ="list" item="saleOrderBJMins" index= "index" separator =",">
+		 (	#{saleOrderBJMins.ID},
+			#{saleOrderBJMins.AutoID},
+			#{saleOrderBJMins.irowno},
+			#{saleOrderBJMins.cInvCode},
+			#{saleOrderBJMins.iQuantity},
+		    #{saleOrderBJMins.cUnitID},
+			#{saleOrderBJMins.iInvExchRate},
+			#{saleOrderBJMins.iNum},
+			#{saleOrderBJMins.iQuotedPrice},
+			#{saleOrderBJMins.iUnitPrice},
+			#{saleOrderBJMins.iTaxUnitPrice},
+			#{saleOrderBJMins.iNatMoney},
+			#{saleOrderBJMins.iNatTax},
+			#{saleOrderBJMins.iNatSum},
+			#{saleOrderBJMins.iNatDisCount},
+			#{saleOrderBJMins.cMemo},
+		 	#{saleOrderBJMins.iTaxRate} ,
+		 	#{saleOrderBJMins.KL},
+		    #{saleOrderBJMins.cItemCode} ,
+		  #{saleOrderBJMins.cItem_class},
+		  #{saleOrderBJMins.cItemName},
+		  #{saleOrderBJMins.cItem_CName},
+		  #{saleOrderBJMins.cCusInvCode},
+		  #{saleOrderBJMins.cCusInvName},
+			#{saleOrderBJMins.iMoney},
+			#{saleOrderBJMins.iTax},
+			#{saleOrderBJMins.iSum},
+			#{saleOrderBJMins.iDisCount},
+			#{saleOrderBJMins.iNatUnitPrice}
+			)
+		</foreach >
+
+	</insert>
+	<insert id="UAddSaleOrder">
+	insert into SO_SOMain(id,cstcode ,ddate ,csocode ,ccuscode ,cdepcode ,
+						  cexch_name  ,itaxrate ,
+						  istatus,cmaker ,ccusname ,cbustype ,dcreatesystime,cMemo,cCusOAddress )
+						  values
+						(
+						 #{id},
+						 #{typecode},
+						 #{date},
+						 #{code},
+						 #{custcode},
+						 #{deptcode},
+							'人民币',
+						 #{taxrate},
+						 #{state},
+						 #{maker},
+						 #{cusname},
+						 #{businesstype},
+						 #{createsystime},
+						 #{memo},
+						 #{sendaddress}
+						)
+
+	</insert>
+	<insert id="UAddSaleOrderMin">
+	insert into SO_SODetails(
+	                         id,
+							 dbclosesystime,
+							 dbclosedate,
+							 ccorvouchtype,
+							 icorrowno,
+							 idemandtype,
+							 cSOCode,
+							 cInvCode,
+							 dPreDate,
+							 iQuantity,
+							 inum,
+							 iQuotedPrice,
+							 iUnitPrice,
+							 iTaxUnitPrice,
+							 iMoney,
+							 iSum,
+							 iDisCount,
+							 iNatUnitPrice ,
+							 iNatMoney,
+							 iNatTax,
+							 iNatSum,
+							 iNatDisCount,
+							 KL,
+							 cInvName,
+							 iTaxRate,
+							 cItemCode,
+							 cItem_class,
+							 cItemName,
+							 cItem_CName,
+							 iInvExchRate,
+							 cUnitID,
+							 cQuoCode,
+							 iQuoID,
+							 cSCloser,
+							 dPreMoDate,
+							 iRowNo,
+							 cCusInvCode,
+							 cCusInvName,
+							 iPPartID,
+							 iPPartQty,
+							 bOrderBOM,
+							 bOrderBOMOver,
+								isosid
+							 )
+							 values
+		<foreach collection ="list" item="yonyouMaterials" index= "index" separator =",">
+			(
+			 #{yonyouMaterials.id},
+			#{yonyouMaterials.dbclosesystime},
+			#{yonyouMaterials.dbclosedate},
+			#{yonyouMaterials.ccorvouchtype},
+			#{yonyouMaterials.icorrowno},
+			#{yonyouMaterials.idemandtype},
+			#{yonyouMaterials.code},
+			#{yonyouMaterials.inventorycode},
+			#{yonyouMaterials.dpredate},
+			#{yonyouMaterials.quantity},
+			#{yonyouMaterials.num},
+			#{yonyouMaterials.quotedprice},
+			#{yonyouMaterials.unitprice},
+			#{yonyouMaterials.taxunitprice},
+			#{yonyouMaterials.money},
+			#{yonyouMaterials.sum},
+			#{yonyouMaterials.discount},
+			#{yonyouMaterials.natunitprice},
+			#{yonyouMaterials.natmoney},
+			#{yonyouMaterials.nattax},
+			#{yonyouMaterials.natsum},
+			#{yonyouMaterials.natdiscount},
+			#{yonyouMaterials.kl},
+			#{yonyouMaterials.inventoryname},
+			#{yonyouMaterials.taxrate},
+			#{yonyouMaterials.cltemcode},
+			#{yonyouMaterials.cltemClass},
+			#{yonyouMaterials.cltemName},
+			#{yonyouMaterials.cltemCName},
+			#{yonyouMaterials.unitrate},
+			#{yonyouMaterials.unitcode},
+			#{yonyouMaterials.cquocode},
+			#{yonyouMaterials.iquoid},
+			#{yonyouMaterials.cscloser},
+			#{yonyouMaterials.dpremodate},
+			#{yonyouMaterials.rowno},
+			#{yonyouMaterials.ccusinvcode},
+			#{yonyouMaterials.ccusinvname},
+			#{yonyouMaterials.ippartid},
+			#{yonyouMaterials.ippartqty},
+			#{yonyouMaterials.borderbom},
+			#{yonyouMaterials.borderbomover},
+			#{yonyouMaterials.AutoID}
+			)
+		</foreach >
+
+	</insert>
+	<insert id="UAddSaleOderFTH">
+	insert into DispatchList(dlid,
+		cdlcode,cvouchtype,cstcode,ddate,crdcode,cdepcode,cpersoncode,ccuscode,csccode,cshipaddress,cexch_name,
+     itaxrate,breturnflag, cmaker,ccusname,cbustype,iVTid ,cSOCode) values
+    ( #{dlid},
+	#{cdlcode},
+ 	'05',
+    '01',
+    #{ddate},
+     #{crdcode},
+    #{cdepcode},
+   #{cpersoncode},
+     #{ccuscode},
+    #{csccode},
+     #{cshipaddress},
+     '人民币',
+     #{itaxrate},
+     #{breturnflag},
+   #{cmaker},
+    #{ccusname},
+   '普通销售',
+     #{poid},
+	  #{cVouchID}
+	)
+
+	</insert>
+	<insert id="UAddSaleOrderFTHMin">
+		insert into DispatchLists(iDLsID,dlid,icorid,cwhcode,cinvcode,iquantity,inum,iunitprice,itaxunitprice,imoney,
+     itax,isum,inatunitprice,inatmoney,inattax,inatsum,isosid, cinvname,itaxrate,citemcode,citem_class,citemname,
+     citem_cname,iinvexchrate,cunitid,csocode,ccusinvcode,ccusinvname,cMemo)values
+		<foreach collection ="list" item="saleOrderFTHMins" index= "index" separator =",">
+		(	#{saleOrderFTHMins.autoid},
+			#{saleOrderFTHMins.dlid},
+			#{saleOrderFTHMins.icorid},
+			#{saleOrderFTHMins.cwhcode},
+			#{saleOrderFTHMins.cinvcode},
+			#{saleOrderFTHMins.iquantity},
+			#{saleOrderFTHMins.inum},
+			#{saleOrderFTHMins.iunitprice},
+			#{saleOrderFTHMins.itaxunitprice},
+			#{saleOrderFTHMins.imoney},
+			#{saleOrderFTHMins.itax},
+			#{saleOrderFTHMins.isum},
+			#{saleOrderFTHMins.inatunitprice},
+			#{saleOrderFTHMins.inatmoney},
+			#{saleOrderFTHMins.inattax},
+			#{saleOrderFTHMins.inatsum},
+			#{saleOrderFTHMins.isosid},
+			#{saleOrderFTHMins.cinvname},
+			#{saleOrderFTHMins.itaxrate},
+			#{saleOrderFTHMins.citemcode},
+			#{saleOrderFTHMins.citemclass},
+			#{saleOrderFTHMins.citemname},
+			#{saleOrderFTHMins.citemcname},
+			#{saleOrderFTHMins.iinvexchrate},
+			#{saleOrderFTHMins.cunitid},
+			#{saleOrderFTHMins.csocode},
+			#{saleOrderFTHMins.ccusinvcode},
+			#{saleOrderFTHMins.ccusinvname},
+			#{saleOrderFTHMins.cdefine33}
+			)
+		</foreach>
+
+	</insert>
+	<update id="UpdateSaleOrder">
+		update CRM_U8_SO_SOMain set issyu8='1' where id=#{id}
+	</update>
+	<update id="UpdateSaleOrderBJ">
+		update CRM_U8_SA_QuoMain set issyu8='1' where id=#{id}
+	</update>
+	<update id="UpdateKSDDKOrder">
+		update CRM_U8_Deduction set issyu8='1' where DLID=#{id}
+
+	</update>
+	<update id="UpdateKSDTHOrder">
+		update CRM_U8_DispatchList set issyu8='1' where DLID=#{id}
+	</update>
+	<update id="UpdateKSDTKOrder">
+		update CRM_U8_Refund set issyu8='1' where cVouchID=#{id}
+
+	</update>
+	<update id="UpdateDYDOrder">
+		update CRM_U8_customEntity4__c set issyu8='1' where id=#{id}
+	</update>
+	<update id="UpdateSYDOrder">
+		update CRM_U8_customEntity12__c set issyu8='1' where id=#{id}
+	</update>
+
+
+
+	<select id="SaleOrderBJList" resultType="net.chenlin.dp.modules.api.vo.SaleOrderBJ">
+		select ID,dDate,cCode,cCusCode,cDepCode,cPersonCode,cexch_name as 'cexchName',iExchRate,(iTaxRate*100) as 'iTaxRate',cMemo,cMaker,cVerifier,cCloser,cBusType
+		from  CRM_U8_SA_QuoMain
+
 	</select>
 
-	<select id="SaleOrderList" resultMap="BaseResultMap">
-		select cSOCode,convert(varchar(10),dDate,120) as 'dDate',cBusType,cSTCode,iStatus,cCusCode,cCusName,cDepCode,cMaker from CRM_U8_SO_SOMain
+	<select id="selectCode" resultType="net.chenlin.dp.modules.api.vo.SaleOrderBJMin">
+		select a.ID,a.AutoID,a.irowno,a.cInvCode,a.iQuantity,a.cUnitID,a.iInvExchRate,a.iNum,a.iQuotedPrice,a.iUnitPrice,a.iTaxUnitPrice,a.iNatMoney,a.iNatTax,a.iNatSum,
+			   a.iNatDisCount,a.cMemo,(a.iTaxRate*100) as 'iTaxRate',a.KL,b.cItemCode,b.cItem_class,b.cItemName,b.cItem_CName,a.cCusInvCode,a.cCusInvName,a.iMoney,a.iTax,a.iSum,a.iDisCount,a.iNatUnitPrice from  CRM_U8_SA_QuoDetails a left join CRM_U8_SA_QuoMain b on a.id=b.id
+				where a.id=#{id}
+	</select>
+	<select id="CrmSaleOrderList" resultType="net.chenlin.dp.modules.api.vo.YonyouSaleOrder">
+		select id as 'id', cstcode as 'typecode',ddate as 'date',csocode as 'code',ccuscode as 'custcode',cdepcode as 'deptcode',
+		cexch_name as 'currency',iexchrate as 'iExchRate',itaxrate as 'taxrate',
+			   istatus as 'state',cmaker as 'maker',ccusname as 'cusname',cbustype as 'businesstype',dcreatesystime as 'createsystime'
+	from CRM_U8_SO_SOMain
 	</select>
+	<select id="CrmSaleMaterialList" resultType="net.chenlin.dp.modules.api.vo.YonyouMaterial">
+		select	a.id  as 'id',
+				a.AutoID as 'AutoID',
+				a.dbclosesystime as 'dbclosesystime',
+				a.dbclosedate as 'dbclosedate',
+				a.ccorvouchtype as 'ccorvouchtype',
+				a.icorrowno as 'icorrowno',
+				a.idemandtype as 'idemandtype',
+				a.cSOCode as 'code',
+				a.cInvCode as 'inventorycode',
+				a.dPreDate as 'dpredate',
+				a.iQuantity as 'quantity',
+				a.inum as 'num',
+				a.iQuotedPrice as 'quotedprice',
+				a.iUnitPrice as 'unitprice',
+				a.iTaxUnitPrice as 'taxunitprice',
+				a.iMoney as 'money',
+				a.iSum as 'sum',
+				a.iDisCount as 'discount',
+				a.iNatUnitPrice as 'natunitprice',
+				a.iNatMoney as 'natmoney',
+				a.iNatTax as 'nattax',
+				a.iNatSum as 'natsum',
+				a.iNatDisCount as 'natdiscount',
+				a.KL as 'kl',
+				a.cInvName as 'inventoryname',
+				a.iTaxRate as 'taxrate',
+				b.cItemCode as 'cltemcode',
+				b.cItem_class as 'cltemClass',
+				b.cItemName as 'cltemName',
+				b.cItem_CName as 'cltemCName',
+				a.iInvExchRate as 'unitrate',
+				a.cUnitID as 'unitcode',
+				a.cQuoCode as 'cquocode',
+				a.iQuoID as 'iquoid',
+				a.cSCloser as 'cscloser',
+				a.dPreMoDate as 'dpremodate',
+				a.iRowNo as 'rowno',
+				a.cCusInvCode as 'ccusinvcode',
+				a.cCusInvName as 'ccusinvname',
+				a.iPPartID as 'ippartid',
+				a.iPPartQty  as 'ippartqty',
+				a.bOrderBOM as 'borderbom',
+				a.bOrderBOMOver as 'borderbomover'
 
+		from CRM_U8_SO_SOMainItem a left join CRM_U8_SO_SOMain b on a.id=b.id where a.id=#{id}
 
+	</select>
+	<select id="CrmKSOrderTHList" resultType="net.chenlin.dp.modules.api.vo.SaleOrderFTH">
+		select cVouchID,dlid,
+				   cdlcode,cvouchtype,cstcode,ddate,crdcode,cdepcode,cpersoncode,ccuscode,csccode,cshipaddress,cexch_name as 'cexchname',iexchrate,
+			   itaxrate,breturnflag, cmaker,ccusname,cbustype from crm_u8_DispatchList
+	</select>
+	<select id="CrmKSOrderTHMinList" resultType="net.chenlin.dp.modules.api.vo.SaleOrderFTHMin">
+		select  a.autoid,a.dlid,a.icorid,a.cwhcode,a.cinvcode,a.iquantity,a.inum,a.iunitprice,a.itaxunitprice,a.imoney,a.itax,a.isum, a.inatunitprice,a.inatmoney,a.inattax,a.inatsum,a.isosid,a.cinvname,a.itaxrate,b.citemcode,b.citem_class citemclass,a.iinvexchrate,a.cunitid,a.csocode,a.ccusinvcode,a.ccusinvname
+		from  CRM_U8_DispatchItem a
+				  left join CRM_U8_DispatchList b on a.dlid=a.dlid
+ where a.dlid=#{id}
 
-	<select id="SaleOrderBJList" resultMap="SaleOrderBJ">
-		select ID,dDate,cCode,cCusCode,cDepCode,cPersonCode,cexch_name,iExchRate,iTaxRate,cMemo,cMaker,cVerifier,cCloser,cBusType
-		from  CRM_U8_SA_QuoMain
+	</select>
+	<select id="CrmKSDOrderFHList" resultType="net.chenlin.dp.modules.api.vo.SaleOrderFTH">
+		select dlid,cVouchID,
+				   cdlcode,cvouchtype,cstcode,ddate,crdcode,cdepcode,cpersoncode,ccuscode,csccode,cshipaddress,cexch_name as 'cexchname',iexchrate,
+			   itaxrate,breturnflag, cmaker,ccusname,cbustype from CRM_U8_Deduction
+	</select>
+	<select id="CrmKSDOrderFHMin" resultType="net.chenlin.dp.modules.api.vo.SaleOrderFTHMin">
+		select  a.autoid,a.dlid,a.cinvcode,a.iquantity, a.iunitprice,a.itaxunitprice,a.imoney,a.itax,a.isum,
+				a.inatunitprice,a.inatmoney,a.inattax,a.inatsum,a.cinvname,a.itaxrate,b.citemcode,b.citem_class as 'citemclass',a.citemname,
+				a.citem_cname as 'citemcname', a.cunitid,a.cdefine33
+		from  CRM_U8_DeductionItem a left join CRM_U8_Deduction b
+											   on a.dlid=b.dlid
 
+		where a.dlid=#{id}
+	</select>
+	<select id="CrmSaleOrderCode" resultType="java.lang.String">
+		 select max( iDLsID)
+		from  DispatchLists
+	</select>
+	<select id="CrmIKSDOrder" resultMap="FH">
+		select
+			   cdlcode  ,convert(varchar(10),ddate,120) as 'ddate',crdcode,cdepcode,cpersoncode,ccuscode,csccode,cshipaddress,
+			   ccusname,dlid from CRM_U8_Deduction
+	</select>
+	<select id="CrmIKSDOrderMin" resultMap="FHMin">
+		select  cinvcode,iquantity, iunitprice, itaxunitprice,imoney,itax,isum,
+				inatunitprice,inatmoney,inattax,inatsum,cinvname,(itaxrate*100) as 'itaxrate',citemcode,citem_class as 'citemclass',citemname,
+				citem_cname as 'citemcname', cunitid
+		from  CRM_U8_DeductionItem where dlid=#{id}
+	</select>
+	<select id="CrmSaleOrderMinCode" resultType="java.lang.String">
+		select max(iSOsID)
+		from  SO_SODetails
+	</select>
+	<select id="CrmDYDOrder" resultType="net.chenlin.dp.modules.api.vo.YonyouSaleOrder">
+		select  id,cstcode as 'typecode',ddate as 'date',csocode as 'code',ccuscode as 'custcode',cdepcode as 'deptcode',cpersoncode as 'personcode',
+				ccusoaddress as 'sendaddress',itaxrate as 'taxrate',cmemo as 'memo',cmaker as 'maker',ccusname as 'cusname',cbustype as 'businesstype',
+				dcreatesystime as 'createsystime',citemcode,citem_class,citemname,citem_cname from crm_u8_customentity4__c
+	</select>
+	<select id="CrmDYDOrderMin" resultType="net.chenlin.dp.modules.api.vo.YonyouMaterial">
+		select a.id as 'id',a.cinvname as 'inventoryname',a.cinvcode as'inventorycode',a.iquantity as 'quantity'
+		,b.citemcode as 'cltemcode',b.citem_class as 'cltemClass' from CRM_U8_customEntity5__c a left join CRM_U8_customEntity4__c b on a.id=b.id
+		where a.id=#{id}
+	</select>
+	<select id="CrmSYDOrder" resultType="net.chenlin.dp.modules.api.vo.SaleOrderFTH">
+		select id as 'dlid', ddate as 'ddate',csocode as 'cdlcode',ccuscode as 'ccuscode',cdepcode as 'cdepcode',
+				cpersoncode as 'cpersoncode',ccusoaddress as 'cshipaddress',itaxrate as 'itaxrate',cmemo as 'bz',cmaker as 'cmaker',
+				ccusname as 'ccusname',cbustype as 'cbustype' from CRM_U8_customEntity12__c
+	</select>
+	<select id="CrmSYDOrderMin" resultType="net.chenlin.dp.modules.api.vo.SaleOrderFTHMin">
+		select a.id as 'dlid',a.cinvname as 'cinvname',a.cinvcode as'cinvcode',a.iquantity as 'iquantity'
+		,b.citemcode,b.citem_class as 'citemclass' from CRM_U8_customEntity13__c a left join CRM_U8_customEntity12__c b on a.id=b.id
+		where a.id=#{id}
+		</select>
+	<select id="SaleOrderMaxId" resultType="java.lang.String">
+		select max(id) from SO_SOMain
+	</select>
+	<select id="SaleOrderBJMaxId" resultType="java.lang.String">
+		select max(id) from SA_QuoMain
+	</select>
+	<select id="SaleOrderFTHMaxId" resultType="java.lang.String">
+		select max(DLID) from DispatchList
 	</select>
+	<select id="CrmISYDOrder" resultMap="FH">
+		select id as 'dlid', convert(varchar(10),ddate,120) as 'ddate' ,csocode as 'cdlcode',ccuscode ,cdepcode ,
+			   cpersoncode ,ccusoaddress as 'cshipaddress',
+				cmaker as 'maker',
+				ccusname   from CRM_U8_customEntity12__c
+</select>
+	<select id="CrmISYDOrderMin" resultMap="FHMin">
+		select a.id as 'dlid',a.cinvname as 'cinvname',a.cinvcode as'cinvcode',a.iquantity as 'iquantity'
+		,b.citemcode,b.citem_class as 'citemclass' from CRM_U8_customEntity13__c a left join CRM_U8_customEntity12__c b on a.id=b.id
+		where a.id=#{id}
+	</select>
+	<select id="CrmIKSDOrderTH" resultMap="TH">
+		select cVouchID as 'cdlcode',dlid
+			 ,cstcode,convert(varchar(10),ddate,120) as 'ddate',cdepcode,cpersoncode,ccuscode,ccusname from crm_u8_DispatchList
+	</select>
+	<select id="CrmIKSDOrderTHMin" resultMap="THMin">
+		select a.cwhcode,a.cinvcode,a.iquantity,a.iunitprice,a.itaxunitprice,a.imoney,
+			   a.itax,a.isum, a.inatunitprice,a.inatmoney,a.inattax,a.inatsum,a.cinvname,(a.itaxrate*100) as 'itaxrate',
+			   a.cunitid
+		from  CRM_U8_DispatchItem a
+
+		where a.dlid=#{id}
+	</select>
+	<select id="ISaleOrderList" resultType="net.chenlin.dp.modules.api.vo.ISaleOrder">
+		select id as 'closer', convert(varchar(10),ddate,120)  as 'date',csocode as 'code',ccuscode as 'custcode',cdepcode as 'deptcode',
+
+			(iTaxRate*100) as 'taxrate', cmaker as 'maker',ccusname as 'cusname'
+		from CRM_U8_SO_SOMain
+	</select>
+	<select id="ISaleOrderMin" resultType="net.chenlin.dp.modules.api.vo.ISaleOrderMin">
 
-	<select id="selectCode" resultMap="SaleOrderBJMin">
-		select irowno,cInvCode,iQuantity,cUnitID,iInvExchRate,iNum,iQuotedPrice,iUnitPrice,iTaxUnitPrice,iNatMoney,iNatTax,iNatSum,
-			   iNatDisCount,cMemo,iTaxRate,KL,cItemCode,cItem_class,cItemName,cItem_CName,cCusInvCode,cCusInvName from  CRM_U8_SA_QuoDetails where ID=#{ID}
 
+		select
+		    a.AutoID as 'define28',
+			a.cSOCode as 'code',
+				a.cInvCode as 'inventorycode',
+				a.iQuantity as 'quantity',
+				a.inum as 'num',
+				a.iQuotedPrice as 'quotedprice',
+				a.iUnitPrice as 'unitprice',
+				a.iTaxUnitPrice as 'taxunitprice',
+				a.KL as 'discountrate',
+				a.cInvName as 'inventoryname',
+				(a.iTaxRate*100)as 'taxrate',
+				a.iInvExchRate as 'unitrate',
+				a.cUnitID as 'unitcode',
+				a.iRowNo as 'rowno'
+				from CRM_U8_SO_SOMainItem a where a.id=#{id}
 	</select>
+	<select id="IDYDOrder" resultType="net.chenlin.dp.modules.api.vo.ISaleOrder">
+		select  id as 'closer',convert(varchar(10),ddate,120)  as 'date',csocode as 'code',ccuscode as 'custcode',cdepcode as 'deptcode',cpersoncode as 'personcode',
+				ccusoaddress as 'sendaddress',(itaxrate*100) as 'taxrate',cmemo as 'memo',cmaker as 'maker',ccusname as 'cusname'
+		from crm_u8_customentity4__c
+	</select>
+	<select id="IDYDOrderMin" resultType="net.chenlin.dp.modules.api.vo.ISaleOrderMin">
+		select a.cinvname as 'inventoryname',a.cinvcode as'inventorycode',a.iquantity as 'quantity'
+		from CRM_U8_customEntity5__c a
+		where a.id=#{id}
+	</select>
+	<select id="SaleOrderBJMinMaxId" resultType="java.lang.String">
+		select max(AutoID) from SA_QuoDetails
+	</select>
+
+
 </mapper>

+ 27 - 48
src/main/java/net/chenlin/dp/modules/api/service/CustomerService.java

@@ -5,6 +5,10 @@ import com.alibaba.fastjson.JSONObject;
 import net.chenlin.dp.common.openapi4j.exception.OpenAPIException;
 import net.chenlin.dp.common.openapi4j.platform.ResultService;
 import net.chenlin.dp.common.openapi4j.util.PropUtil;
+import net.chenlin.dp.common.support.orm.db.DynamicDataSource;
+import net.chenlin.dp.common.utils.SpringContextUtils;
+import net.chenlin.dp.modules.api.dao.AcceptOrderMapper;
+import net.chenlin.dp.modules.api.dao.CustomerMapper;
 import net.chenlin.dp.modules.api.vo.*;
 
 import java.util.HashMap;
@@ -20,13 +24,16 @@ public class CustomerService {
 
         public static String getToaccount;
 
+    private CustomerMapper customerMapper= SpringContextUtils.getBean("customerMapper",CustomerMapper.class);
+
+
 
     /**
      * 客户新增接口
      * @param customer
      * @throws OpenAPIException
      */
-    public void addCustomer(Customer customer) throws OpenAPIException {
+    public String addCustomer(ICustomer customer) throws OpenAPIException {
             Map<String,Object>map=new HashMap<>();
             map.put("customer",customer);
             String s = JSONObject.toJSONString(map);
@@ -36,7 +43,10 @@ public class CustomerService {
                 Object tradeid = hashMap.get("tradeid");
                 if (!tradeid.equals("")&&tradeid!=null){
                     String result = ResultService.getResult(tradeid.toString());
-                    System.out.println(result);
+                    HashMap m = JSONObject.parseObject(result, HashMap.class);
+                    return m.get("errcode").toString();
+                }else{
+                    return "";
                 }
             }catch (Exception e){
                 throw new OpenAPIException(e.getMessage(), e);
@@ -100,6 +110,20 @@ public class CustomerService {
         }
     }
 
+    public List<ICustomer>CrmCustomer(){
+        DynamicDataSource.setDataSource("last-data-source");
+        List<ICustomer> iCustomers = customerMapper.ICustomerList();
+        if (iCustomers!=null &&iCustomers.size()>0) {
+            for (ICustomer i : iCustomers) {
+                List<CustomerBanks> bank = customerMapper.bank(i.getCode());
+                List<CustomerAddress> addr = customerMapper.addr(i.getCode());
+                i.setBanks(bank);
+                i.setAddresses(addr.get(0));
+            }
+        }
+            DynamicDataSource.setDataSource("");
+            return iCustomers;
+    }
 
     /**
      * 客户编辑接口
@@ -120,51 +144,6 @@ public class CustomerService {
 
 
     public static void main(String[] args) throws OpenAPIException {
-        CustomerService customerService=new CustomerService();
-        Map<String,String>map=new HashMap<>();
-        customerService.getToaccount();
-        Customer customer=new Customer();
-        Invoicecustomers invoicecustomers=new Invoicecustomers();
-        invoicecustomers.setCcuscode("010231");
-        invoicecustomers.setCinvoicecompany("01");
-        invoicecustomers.setBdefault("true");
-        CustomerAddress customerAddress=new CustomerAddress();
-        customerAddress.setCcuscode("010231");
-        customerAddress.setCaddcode("03802");
-        //customerAddress.setCdeliveradd("上海徐汇");
-        customerAddress.setBdefault("1");
-        CustomerBanks customerBanks=new CustomerBanks();
-        customerBanks.setCcuscode("010231");
-       customerBanks.setCaccountnum("62250000999988889");
-       customerBanks.setCbank("02");
-      // customerBanks.setCbranch("工商银行");
-       customerBanks.setBdefault("1");
-        customer.setCode("010231");
-        customer.setName("上海萃巅2");
-        customer.setAbbrname("上2");
-        customer.setSort_code("01");
-        //customer.setContact("哈哈");
-        //customer.setCcusexch_name("人民币");
-        //customer.setAddresses(customerAddress);
-        List<CustomerBanks> banks = customer.getBanks();
-        banks.add(customerBanks);
-        customer.setBanks(banks);
-//        customer.setUsers(users);
-//        customer.setAuths(auths);
-        customer.setInvoicecustomers(invoicecustomers);
-       customerService.addCustomer(customer);
-//        HashMap customer1 = customerService.getCustomer("0001");
-//        System.out.println(customer1);
-//         List<Customer> customers = customerService.queryCustomer(map);
-//        System.out.println(customers);
-//        HashMap customer = customerService.getCustomer("0001");
-//        String a="{\n" +
-//                "\t\"customer\":{\n" +
-//                "\t\t\"code\":\"0001\",\n" +
-//                "\t\t\"ccusexch_name\":\"人民币\"\n" +
-//                "\t}\n" +
-//                "}";
-//
-//        customerService.editCustomer(a);
+
    }
 }

+ 544 - 40
src/main/java/net/chenlin/dp/modules/api/service/SaleOrderService.java

@@ -18,6 +18,8 @@ import net.chenlin.dp.common.openapi4j.util.PropUtil;
 import net.chenlin.dp.common.support.orm.db.DynamicDataSource;
 import net.chenlin.dp.common.utils.SpringContextUtils;
 import net.chenlin.dp.modules.api.controller.DingdingOpenInterface;
+import net.chenlin.dp.modules.api.dao.CustomerMapper;
+import net.chenlin.dp.modules.api.dao.SaleOrderMapper;
 import net.chenlin.dp.modules.api.vo.*;
 import net.chenlin.dp.modules.sys.service.SysUserService;
 import net.chenlin.dp.modules.sys.service.impl.SysUserServiceImpl;
@@ -33,6 +35,8 @@ public class SaleOrderService {
     private ConsignmentService consignmentService=new ConsignmentService();
     private AcceptService acceptService=new AcceptService();
     private  Properties prop = PropUtil.getProperties("/config.properties");
+    private SaleOrderMapper saleOrderMapper= SpringContextUtils.getBean("saleOrderMapper",SaleOrderMapper.class);
+
     private  static  String getToaccount="";
 
     /**
@@ -40,48 +44,37 @@ public class SaleOrderService {
      * @param list
      * @throws OpenAPIException
      */
-    public void yonyouAddSaleOrder(List<YonyouSaleOrder> list) throws OpenAPIException {
-
+    public String yonyouAddSaleOrder(ISaleOrder saleOrder) throws OpenAPIException {
         try {
-            if (list.size()>0){
-                for (YonyouSaleOrder yonyouSaleOrder:list){
                     Map<String,Object> map=new HashMap<>();
-                    map.put("saleorder",yonyouSaleOrder);
+                    map.put("saleorder",saleOrder);
                     String s = JSONObject.toJSONString(map);
                     JSONObject add = saleOrderService.add(s, getToaccount);
                     HashMap hashMap = JSONObject.parseObject(add.toString(), HashMap.class);
                     Object tradeid = hashMap.get("tradeid");
                     if (!tradeid.equals("")&&tradeid!=null){
                         String result = ResultService.getResult(tradeid.toString());
-                        System.out.println(result);
+                        HashMap t = JSONObject.parseObject(result, HashMap.class);
+                         return t.get("errcode").toString();
+                    }else {
+                        return "";
                     }
-                }
-            }
+//
+//
 
-//            String s="\t\n" +
-//                    "{\n" +
-//                    "\t\"saleorder\":{\n" +
-//                    "\t\t\"custcode\":\"0001\",\n" +
-//                    "\t\t\"deptcode\":\"0521\",\n" +
-//                    "\t\t\"entry\":[\n" +
-//                    "\t\t\t{\n" +
-//                    "\t\t\t\t\"inventorycode\":\"0907\",\n" +
-//                    "\t\t\t\t\"quantity\":\"15\",\n" +
-//                    "\t\t\t\t\"quotedprice\":\"200\",\n" +
-//                    "\t\t\t\t\"money\":\"3000\",\n" +
-//                    "\t\t\t\t\"irowno\":\"1\",\n" +
-//                    "\t\t\t\t\"dpredate\":\"2021-10-23\"\n" +
-//                    "\t\t\t}\n" +
-//                    "\t\t]\n" +
-//                    "\t}\n" +
+//            String s="{\n" +
+//                    "    \"saleorder\": {\n" +
+//                    "        \"custcode\": \"0001\",\n" +
+//                    "        \"deptcode\": \"01\",\n" +
+//                    "        \"entry\": [\n" +
+//                    "            {\n" +
+//                    "                \"inventorycode\": \"81103040318010053\",\n" +
+//                    "                \"quantity\": \"1\"\n" +
+//                    "            }\n" +
+//                    "        ]\n" +
+//                    "    }\n" +
 //                    "}";
-//            JSONObject add = saleOrderService.add(s, getToaccount);
-//                    HashMap hashMap = JSONObject.parseObject(add.toString(), HashMap.class);
-//                    Object tradeid = hashMap.get("tradeid");
-//                    if (!tradeid.equals("")&&tradeid!=null){
-//                        String result = ResultService.getResult(tradeid.toString());
-//                        System.out.println(result);
-//                    }
+
         }catch (Exception e){
             throw new OpenAPIException(e.getMessage(), e);
         }
@@ -382,7 +375,7 @@ public class SaleOrderService {
      * @param
      * @throws OpenAPIException
      */
-    public void ConsignMentAdd(SaleOrderFH saleOrderFH) throws OpenAPIException {
+    public String ConsignMentAdd(SaleOrderFH saleOrderFH) throws OpenAPIException {
         Map<String,Object>map=new HashMap<>();
         map.put("consignment",saleOrderFH);
         String s = JSONObject.toJSONString(map);
@@ -392,7 +385,10 @@ public class SaleOrderService {
             Object tradeid = hashMap.get("tradeid");
             if (!tradeid.equals("")&&tradeid!=null){
                 String result = ResultService.getResult(tradeid.toString());
-                System.out.println(result);
+                HashMap m = JSONObject.parseObject(result, HashMap.class);
+                return  m.get("errcode").toString();
+            }else{
+                return "";
             }
         }catch (Exception e){
             throw new OpenAPIException(e.getMessage(), e);
@@ -401,12 +397,365 @@ public class SaleOrderService {
     }
 
 
+
+    /**
+     * 客诉单-抵扣
+     * @return
+     */
+    public void CrmKSDDK(){
+        try {
+            DynamicDataSource.setDataSource("last-data-source");
+            List<SaleOrderFTH> saleOrderFTHS = saleOrderMapper.CrmKSDOrderFHList();
+            DynamicDataSource.setDataSource("");
+            DynamicDataSource.setDataSource("slave-data-source");
+            String id = saleOrderMapper.SaleOrderFTHMaxId();
+            String s = saleOrderMapper.CrmSaleOrderCode();
+            DynamicDataSource.setDataSource("");
+            if (s==null||s.equals("")){
+                s="10000";
+            }if (id==null||id.equals("")){
+                id="10000";
+            }
+            if (saleOrderFTHS!=null&&saleOrderFTHS.size()>0){
+                for (SaleOrderFTH i:saleOrderFTHS){
+                    BigDecimal bigDecimal=new BigDecimal(id);
+                    BigDecimal bigDecimal1=new BigDecimal("1");
+                    BigDecimal add = bigDecimal.add(bigDecimal1);
+                    String cid=i.getDlid();
+                    i.setPoid("71");
+                    i.setBreturnflag("0");
+                    i.setDlid(add.toString());
+                    i.setCdlcode("XSFH"+add.toString());
+                    DynamicDataSource.setDataSource("slave-data-source");
+                    saleOrderMapper.UAddSaleOderFTH(i);
+                    DynamicDataSource.setDataSource("");
+                    DynamicDataSource.setDataSource("last-data-source");
+                    List<SaleOrderFTHMin> saleOrderFTHMins = saleOrderMapper.CrmKSDOrderFHMin(cid);
+                    DynamicDataSource.setDataSource("");
+                    if (saleOrderFTHMins!=null &&saleOrderFTHMins.size()>0){
+                        for (SaleOrderFTHMin ls:saleOrderFTHMins){
+                            BigDecimal a=new BigDecimal(s);
+                            BigDecimal b=new BigDecimal("1");
+                            BigDecimal c = a.add(b);
+                            ls.setAutoid(c.toString());
+                            ls.setDlid(add.toString());
+                            s=c.toString();
+                        }
+                        DynamicDataSource.setDataSource("slave-data-source");
+                        saleOrderMapper.UAddSaleOrderFTHMin(saleOrderFTHMins);
+                        DynamicDataSource.setDataSource("");
+                    }
+                    id=add.toString();
+
+                }
+            }
+        }catch (Exception e){
+            e.printStackTrace();
+        }
+
+
+    }
+
+
+
+
+    /**
+     * 送样单
+     * @return
+     */
+    public void CrmSYDOrder(){
+        try {
+            DynamicDataSource.setDataSource("last-data-source");
+            List<SaleOrderFTH> saleOrderFTHS = saleOrderMapper.CrmSYDOrder();
+            DynamicDataSource.setDataSource("");
+            DynamicDataSource.setDataSource("slave-data-source");
+            String id = saleOrderMapper.SaleOrderFTHMaxId();
+            String s = saleOrderMapper.CrmSaleOrderCode();
+            DynamicDataSource.setDataSource("");
+            if (s==null||s.equals("")){
+                s="10000";
+            }if (id==null||id.equals("")){
+                id="10000";
+            }
+            if (saleOrderFTHS!=null&&saleOrderFTHS.size()>0){
+                for (SaleOrderFTH i:saleOrderFTHS){
+                    BigDecimal bigDecimal=new BigDecimal(id);
+                    BigDecimal bigDecimal1=new BigDecimal("1");
+                    BigDecimal add = bigDecimal.add(bigDecimal1);
+                    String cid=i.getDlid();
+                    i.setPoid("71");
+                    i.setBreturnflag("0");
+                    i.setDlid(add.toString());
+                    i.setCdlcode("XSFH"+add.toString());
+                    DynamicDataSource.setDataSource("slave-data-source");
+                    saleOrderMapper.UAddSaleOderFTH(i);
+                    DynamicDataSource.setDataSource("");
+                    DynamicDataSource.setDataSource("last-data-source");
+                    List<SaleOrderFTHMin> saleOrderFTHMins = saleOrderMapper.CrmSYDOrderMin(cid);
+                    DynamicDataSource.setDataSource("");
+                    if (saleOrderFTHMins!=null &&saleOrderFTHMins.size()>0){
+                        for (SaleOrderFTHMin ls:saleOrderFTHMins){
+                            BigDecimal a=new BigDecimal(s);
+                            BigDecimal b=new BigDecimal("1");
+                            BigDecimal c = a.add(b);
+                            ls.setAutoid(c.toString());
+                            ls.setDlid(add.toString());
+                            s=c.toString();
+                        }
+                        DynamicDataSource.setDataSource("slave-data-source");
+                        saleOrderMapper.UAddSaleOrderFTHMin(saleOrderFTHMins);
+                        DynamicDataSource.setDataSource("");
+                    }
+                    id=add.toString();
+
+                }
+            }
+        }catch (Exception e){
+            e.printStackTrace();
+        }
+
+
+    }
+
+    /**
+     * 销售报价单
+     */
+    public void CrmSaleOrderBJ(){
+        try {
+            DynamicDataSource.setDataSource("last-data-source");
+            List<SaleOrderBJ> saleOrderBJS = saleOrderMapper.SaleOrderBJList();
+            DynamicDataSource.setDataSource("");
+            DynamicDataSource.setDataSource("slave-data-source");
+            String s = saleOrderMapper.SaleOrderBJMaxId();
+            String st=saleOrderMapper.SaleOrderBJMinMaxId();
+            DynamicDataSource.setDataSource("");
+            if (s==null||s.equals("")){
+                s="10000";
+            }if (st==null||st.equals("")){
+                st="10000";
+            }
+            if (saleOrderBJS!=null&&saleOrderBJS.size()>0){
+                for (SaleOrderBJ i:saleOrderBJS){
+                    BigDecimal a=new BigDecimal(s);
+                    BigDecimal b=new BigDecimal("1");
+                    BigDecimal add = a.add(b);
+                     String cid=i.getID();
+                    i.setID(add.toString());
+                    DynamicDataSource.setDataSource("slave-data-source");
+                    int sum = saleOrderMapper.UInsertSaleOrderBJ(i);
+                    DynamicDataSource.setDataSource("");
+                    DynamicDataSource.setDataSource("last-data-source");
+                    if (sum>0){
+                        saleOrderMapper.UpdateSaleOrderBJ(cid);
+                    }
+                    List<SaleOrderBJMin> saleOrderBJMins = saleOrderMapper.selectCode(cid);
+                    DynamicDataSource.setDataSource("");
+                    if (saleOrderBJMins!=null&&saleOrderBJMins.size()>0){
+                        for (SaleOrderBJMin t:saleOrderBJMins){
+                            BigDecimal a1=new BigDecimal(st);
+                            BigDecimal b1=new BigDecimal("1");
+                            BigDecimal add1 = a1.add(b1);
+                            t.setID(add.toString());
+                            t.setAutoID(add1.toString());
+                            st=add1.toString();
+                        }
+                        DynamicDataSource.setDataSource("slave-data-source");
+                        saleOrderMapper.UInsertSaleOrderBJMin(saleOrderBJMins);
+                        DynamicDataSource.setDataSource("");
+                    }
+                    s=add.toString();
+                }
+            }
+        }catch (Exception e){
+            e.printStackTrace();
+        }
+
+    }
+
+    /**
+     * 客诉单-退货
+     * @return
+     */
+    public void CrmKSDTH(){
+        try {
+            DynamicDataSource.setDataSource("last-data-source");
+            List<SaleOrderFTH> saleOrderFTHS = saleOrderMapper.CrmKSOrderTHList();
+            DynamicDataSource.setDataSource("");
+            DynamicDataSource.setDataSource("slave-data-source");
+            String id = saleOrderMapper.SaleOrderFTHMaxId();
+            String s = saleOrderMapper.CrmSaleOrderCode();
+            DynamicDataSource.setDataSource("");
+            if (s==null||s.equals("")){
+                s="10000";
+            }if (id==null||id.equals("")){
+                id="10000";
+            }
+            if (saleOrderFTHS!=null&&saleOrderFTHS.size()>0){
+                for (SaleOrderFTH i:saleOrderFTHS){
+                    BigDecimal bigDecimal=new BigDecimal(id);
+                    BigDecimal bigDecimal1=new BigDecimal("1");
+                    BigDecimal add = bigDecimal.add(bigDecimal1);
+                    String cid=i.getDlid();
+                    i.setPoid("75");
+                    i.setBreturnflag("1");
+                    i.setDlid(add.toString());
+                    i.setCdlcode("XSFH"+add.toString());
+                    DynamicDataSource.setDataSource("slave-data-source");
+                    saleOrderMapper.UAddSaleOderFTH(i);
+                    DynamicDataSource.setDataSource("");
+                    DynamicDataSource.setDataSource("last-data-source");
+                    List<SaleOrderFTHMin> saleOrderFTHMins = saleOrderMapper.CrmKSOrderTHMinList(cid);
+                    DynamicDataSource.setDataSource("");
+                    if (saleOrderFTHMins!=null &&saleOrderFTHMins.size()>0){
+                        for (SaleOrderFTHMin ls:saleOrderFTHMins){
+                            BigDecimal a=new BigDecimal(s);
+                            BigDecimal b=new BigDecimal("1");
+                            BigDecimal c = a.add(b);
+                            ls.setAutoid(c.toString());
+                            ls.setDlid(add.toString());
+                            s=c.toString();
+                        }
+                        DynamicDataSource.setDataSource("slave-data-source");
+                        saleOrderMapper.UAddSaleOrderFTHMin(saleOrderFTHMins);
+                        DynamicDataSource.setDataSource("");
+                    }
+                    id=add.toString();
+
+
+                }
+            }
+
+        }catch (Exception e){
+            e.printStackTrace();
+        }
+
+    }
+
+
+
+    /**
+     * 销售订单
+     * @return
+     */
+    public void CrmSaleOrder(){
+        try {
+            DynamicDataSource.setDataSource("last-data-source");
+            List<YonyouSaleOrder> saleOrderFTHS = saleOrderMapper.CrmSaleOrderList();
+            DynamicDataSource.setDataSource("");
+            DynamicDataSource.setDataSource("slave-data-source");
+            String id = saleOrderMapper.SaleOrderMaxId();
+            String s = saleOrderMapper.CrmSaleOrderMinCode();
+            DynamicDataSource.setDataSource("");
+            if (s==null||s.equals("")){
+                s="10000";
+            }if (id==null||id.equals("")){
+                id="10000";
+            }
+            if (saleOrderFTHS!=null&&saleOrderFTHS.size()>0){
+                for (YonyouSaleOrder i:saleOrderFTHS){
+                    BigDecimal bigDecimal=new BigDecimal(id);
+                    BigDecimal bigDecimal1=new BigDecimal("1");
+                    BigDecimal add = bigDecimal.add(bigDecimal1);
+                    String cid=i.getId();
+                    i.setId(add.toString());
+                    DynamicDataSource.setDataSource("slave-data-source");
+                    int sum = saleOrderMapper.UAddSaleOrder(i);
+                    if (sum>0){
+                        saleOrderMapper.UpdateSaleOrder(cid);
+                    }
+                    DynamicDataSource.setDataSource("");
+                    DynamicDataSource.setDataSource("last-data-source");
+                    List<YonyouMaterial> saleOrderFTHMins = saleOrderMapper.CrmSaleMaterialList(cid);
+                    DynamicDataSource.setDataSource("");
+                    if (saleOrderFTHMins!=null &&saleOrderFTHMins.size()>0){
+                        for (YonyouMaterial ls:saleOrderFTHMins){
+                            BigDecimal a=new BigDecimal(s);
+                            BigDecimal b=new BigDecimal("1");
+                            BigDecimal c = a.add(b);
+                            ls.setAutoID(c.toString());
+                            ls.setId(add.toString());
+                            s=c.toString();
+                        }
+                        DynamicDataSource.setDataSource("slave-data-source");
+                        saleOrderMapper.UAddSaleOrderMin(saleOrderFTHMins);
+                        DynamicDataSource.setDataSource("");
+                    }
+                    id=add.toString();
+
+                }
+            }
+
+        }catch (Exception e){
+            e.printStackTrace();
+        }
+
+    }
+
+
+    /**
+     * 打样单
+     * @return
+     */
+    public void CrmDYDOrder(){
+        try {
+            DynamicDataSource.setDataSource("last-data-source");
+            List<YonyouSaleOrder> saleOrderFTHS = saleOrderMapper.CrmDYDOrder();
+            DynamicDataSource.setDataSource("");
+            DynamicDataSource.setDataSource("slave-data-source");
+            String id = saleOrderMapper.SaleOrderMaxId();
+            String s = saleOrderMapper.CrmSaleOrderMinCode();
+            DynamicDataSource.setDataSource("");
+            if (s==null||s.equals("")){
+                s="10000";
+            }if (id==null||id.equals("")){
+                id="10000";
+            }
+            if (saleOrderFTHS!=null&&saleOrderFTHS.size()>0){
+                for (YonyouSaleOrder i:saleOrderFTHS){
+                    BigDecimal bigDecimal=new BigDecimal(id);
+                    BigDecimal bigDecimal1=new BigDecimal("1");
+                    BigDecimal add = bigDecimal.add(bigDecimal1);
+                    String cid=i.getId();
+                    i.setId(add.toString());
+                    DynamicDataSource.setDataSource("slave-data-source");
+                    int sum = saleOrderMapper.UAddSaleOrder(i);
+                    if (sum>0){
+                        saleOrderMapper.UpdateSaleOrder(cid);
+                    }
+                    DynamicDataSource.setDataSource("");
+                    DynamicDataSource.setDataSource("last-data-source");
+                    List<YonyouMaterial> saleOrderFTHMins = saleOrderMapper.CrmDYDOrderMin(cid);
+                    DynamicDataSource.setDataSource("");
+                    if (saleOrderFTHMins!=null &&saleOrderFTHMins.size()>0){
+                        for (YonyouMaterial ls:saleOrderFTHMins){
+                            BigDecimal a=new BigDecimal(s);
+                            BigDecimal b=new BigDecimal("1");
+                            BigDecimal c = a.add(b);
+                            ls.setAutoID(c.toString());
+                            ls.setId(add.toString());
+                            s=c.toString();
+                        }
+                        DynamicDataSource.setDataSource("slave-data-source");
+                        saleOrderMapper.UAddSaleOrderMin(saleOrderFTHMins);
+                        DynamicDataSource.setDataSource("");
+                    }
+
+                    id=add.toString();
+                }
+            }
+
+        }catch (Exception e){
+            e.printStackTrace();
+        }
+
+    }
+
     /**
      * 销售退货单
      * @param body
      * @throws OpenAPIException
      */
-    public void ConsignTHAdd(SaleOrderTH saleOrderTH) throws OpenAPIException {
+    public String ConsignTHAdd(SaleOrderTH saleOrderTH) throws OpenAPIException {
         Map<String,Object>map=new HashMap<>();
         map.put("returnorder",saleOrderTH);
         String s = JSONObject.toJSONString(map);
@@ -416,7 +765,10 @@ public class SaleOrderService {
             Object tradeid = hashMap.get("tradeid");
             if (!tradeid.equals("")&&tradeid!=null){
                 String result = ResultService.getResult(tradeid.toString());
-                System.out.println(result);
+                HashMap m = JSONObject.parseObject(result, HashMap.class);
+                return m.get("errcode").toString();
+            }else {
+                return "";
             }
         }catch (Exception e){
             throw new OpenAPIException(e.getMessage(), e);
@@ -424,12 +776,13 @@ public class SaleOrderService {
 
     }
 
+
     /**
      * 收款单
      * @param body
      * @throws OpenAPIException
      */
-    public void acceptAdd(AcceptOrder acceptOrder) throws OpenAPIException {
+    public String acceptAdd(IAcceptOrder acceptOrder) throws OpenAPIException {
         Map<String,Object>map=new HashMap<>();
         map.put("accept",acceptOrder);
         String s = JSONObject.toJSONString(map);
@@ -439,7 +792,10 @@ public class SaleOrderService {
             Object tradeid = hashMap.get("tradeid");
             if (!tradeid.equals("")&&tradeid!=null){
                 String result = ResultService.getResult(tradeid.toString());
-                System.out.println(result);
+                HashMap m = JSONObject.parseObject(result, HashMap.class);
+                return  m.get("errcode").toString();
+            }else {
+                return "";
             }
         }catch (Exception e){
             throw new OpenAPIException(e.getMessage(), e);
@@ -454,13 +810,161 @@ public class SaleOrderService {
     }
 
 
+    /**
+     * u8接口客诉单-抵扣
+     * @throws OpenAPIException
+     */
+    public void IKSDDKOrder() throws OpenAPIException {
+        try {
+            DynamicDataSource.setDataSource("last-data-source");
+            List<SaleOrderFH> saleOrderFHS = saleOrderMapper.CrmIKSDOrder();
+            if (saleOrderFHS!=null&&saleOrderFHS.size()>0){
+                for (SaleOrderFH i:saleOrderFHS){
+                   // i.setCode("XSDD211010062");
+                    String id=i.getCloser();
+                    List<SaleOrderFHMin> saleOrderFHMins = saleOrderMapper.CrmIKSDOrderMin(i.getCloser());
+//                    for (SaleOrderFHMin s:saleOrderFHMins){
+//                        s.setSocode("XSDD211010076");
+//                        s.setWarehouse_code("01");
+//                        s.setBatch("20210818");
+//                    }
+                    i.setCloser("");
+                    i.setEntry(saleOrderFHMins);
+                    String s = ConsignMentAdd(i);
+                    if (s.equals("0")){
+                        saleOrderMapper.UpdateKSDDKOrder(id);
+                    }
+                }
+            }
+            DynamicDataSource.setDataSource("");
+        }catch (Exception e){
+
+        }
+
+    }
+
+    /**
+     * u8接口送样单
+     * @throws OpenAPIException
+     */
+    public void ISYDOrder() throws OpenAPIException {
+        try {
+            DynamicDataSource.setDataSource("last-data-source");
+            List<SaleOrderFH> saleOrderFHS = saleOrderMapper.CrmISYDOrder();
+            if (saleOrderFHS!=null&&saleOrderFHS.size()>0){
+                for (SaleOrderFH i:saleOrderFHS){
+                    String id=i.getCloser();
+                    List<SaleOrderFHMin> saleOrderFHMins = saleOrderMapper.CrmISYDOrderMin(i.getCloser());
+//                    for (SaleOrderFHMin s:saleOrderFHMins){
+//                        s.setWarehouse_code("01");
+//                        s.setBatch("20210818");
+//                    }
+                    i.setCloser("");
+                    i.setEntry(saleOrderFHMins);
+                    String s = ConsignMentAdd(i);
+                    if (s.equals("0")){
+                        saleOrderMapper.UpdateSYDOrder(id);
+                    }
+                }
+            }
+            DynamicDataSource.setDataSource("");
+        }catch (Exception e){
+            e.printStackTrace();
+        }
+
+    }
+
+
+    /**
+     * u8接口客诉单-退货
+     * @throws OpenAPIException
+     */
+    public void IKDSOrderTH() throws OpenAPIException {
+        try {
+            DynamicDataSource.setDataSource("last-data-source");
+            List<SaleOrderTH> saleOrderFHS = saleOrderMapper.CrmIKSDOrderTH();
+            if (saleOrderFHS!=null&&saleOrderFHS.size()>0){
+                for (SaleOrderTH i:saleOrderFHS){
+                    String id=i.getRemark();
+                    List<SaleOrderTHMin> saleOrderFHMins = saleOrderMapper.CrmIKSDOrderTHMin(i.getRemark());
+                    /*for (SaleOrderTHMin s:saleOrderFHMins){
+                        s.setWarehouse_code("01");
+                    }*/
+                    i.setRemark("");
+                    i.setEntry(saleOrderFHMins);
+                    String s = ConsignTHAdd(i);
+                    if (s.equals("0")){
+                        saleOrderMapper.UpdateKSDTHOrder(id);
+                    }
+                }
+            }
+            DynamicDataSource.setDataSource("");
+        }catch (Exception e){
+            e.printStackTrace();
+        }
+
+    }
+
+    /**
+     * u8接口销售订单
+     * @throws OpenAPIException
+     */
+    public void ISaleOrder() throws OpenAPIException {
+        try {
+            DynamicDataSource.setDataSource("last-data-source");
+            List<ISaleOrder> iSaleOrders = saleOrderMapper.ISaleOrderList();
+            if (iSaleOrders!=null&&iSaleOrders.size()>0){
+                for (ISaleOrder i:iSaleOrders){
+                    String id=i.getCloser();
+                    List<ISaleOrderMin> iSaleOrderMins = saleOrderMapper.ISaleOrderMin(i.getCloser());
+                    i.setEntry(iSaleOrderMins);
+                    i.setCloser("");
+                    String s = yonyouAddSaleOrder(i);
+                    if (s.equals("0")){
+                        saleOrderMapper.UpdateSaleOrder(id);
+                    }
+                }
+            }
+            DynamicDataSource.setDataSource("");
+        }catch (Exception e){
+            e.printStackTrace();
+        }
+
+    }
+
+    /**
+     * u8接口打样单
+     * @throws OpenAPIException
+     */
+    public void IDYDOrder() throws OpenAPIException {
+        try {
+            DynamicDataSource.setDataSource("last-data-source");
+            List<ISaleOrder> iSaleOrders = saleOrderMapper.IDYDOrder();
+            if (iSaleOrders!=null&&iSaleOrders.size()>0){
+                for (ISaleOrder i:iSaleOrders){
+                    String id=i.getCloser();
+                    List<ISaleOrderMin> iSaleOrderMins = saleOrderMapper.IDYDOrderMin(i.getCloser());
+                    i.setEntry(iSaleOrderMins);
+                    i.setCloser("");
+                    String s = yonyouAddSaleOrder(i);
+                    if (s.equals("0")){
+                        saleOrderMapper.UpdateDYDOrder(id);
+                    }
+                }
+            }
+            DynamicDataSource.setDataSource("");
+        }catch (Exception e){
+            e.printStackTrace();
+        }
+
+    }
     public static void main(String[] args) throws OpenAPIException {
         SaleOrderService service=new SaleOrderService();
         UserService service1=new UserService();
        // service1.login("","","test_yuansh");
-//        List<YonyouSaleOrder>list=new ArrayList<>();
+        List<YonyouSaleOrder>list=new ArrayList<>();
 //
-//        service.getToaccount();
+
 //        String s="{\n" +
 //                "\t\"saleorder\":{\n" +
 //                "\t\t\"voucher_code\":\"XSDD210003\",\n" +
@@ -468,7 +972,7 @@ public class SaleOrderService {
 //                "\t}\n" +
 //                "}";
 //        service.yonyouShenheSaleOrder(s);
-       // service.yonyouAddSaleOrder(list);
+
 
         //销售订单测试
 //        YonyouSaleOrder yonyouSaleOrder=new YonyouSaleOrder();

+ 95 - 140
src/main/java/net/chenlin/dp/modules/api/vo/AcceptOrder.java

@@ -7,220 +7,175 @@ import java.util.List;
  * 收款单
  */
 public class AcceptOrder {
-    private  String vouchcode;//应收单号
-    private  String vouchdate;//单据日期
-    private  String vouchtype;//单据类型(48=收款单;49=付款单) true
-    private  String customercode;//客商编码 true
-    private  String customername;//客商名称
-    private  String customerabbname;//客商简称
-    private  String departmentcode;//部门编码 true
-    private  String departmentname;//部门名称
-    private  String personcode;//人员编码
-    private  String personname;//人员
-    private  String amount;//本币金额 true
-    private  String originalamount;//原币金额
-    private  String digest;//摘要   true
-    private  String balancecode;//结算方式编码
-    private  String balancename;//结算方式
-    private  String balanceitemcode;//结算科目编码
-    private  String itemclasscode;//项目大类编号
-    private  String itemcode;//项目编码
-    private  String itemname;//项目名称
-    private  String oppositebankname;//对方单位银行名称
-    private  String oppositebankcode;//对方单位银行帐号
-    private  String bankname;//本单位银行名称
-    private  String bankaccount;//本单位银行帐号
-    private List<AcceptOrderMin>entry=new ArrayList<>();
+    private  String cvouchtype;//单据类型编码
+    private  String cvouchid;//单据编码
+    private  String dvouchdate;//单据日期
+    private  String cdwcode;//单位编码
+    private  String cdeptcode;//部门编码
+    private  String cperson;//业务员编码
+    private  String citemclass;//项目大类编码
+    private  String citemcode;//项目编码
+    private  String csscode;//结算方式编码
+    private  String cdigest;//摘要
+    private  String cbankaccount;//银行账号
+    private  String  cexchname;//币种名称
+    private  String iexchrate;//汇率
+    private  String iamount;//本币金额
+    private  String iamountf;//原币金额
+     private  String coperator;//录入人
+     private  String corderno;//订单号
+     private  String iid;//主表标识
+     private  String citemname;//项目名称
 
-    public String getVouchcode() {
-        return vouchcode;
+    public String getIid() {
+        return iid;
     }
 
-    public void setVouchcode(String vouchcode) {
-        this.vouchcode = vouchcode;
+    public void setIid(String iid) {
+        this.iid = iid;
     }
 
-    public String getVouchdate() {
-        return vouchdate;
+    public String getCitemname() {
+        return citemname;
     }
 
-    public void setVouchdate(String vouchdate) {
-        this.vouchdate = vouchdate;
+    public void setCitemname(String citemname) {
+        this.citemname = citemname;
     }
 
-    public String getVouchtype() {
-        return vouchtype;
+    public String getCvouchtype() {
+        return cvouchtype;
     }
 
-    public void setVouchtype(String vouchtype) {
-        this.vouchtype = vouchtype;
+    public void setCvouchtype(String cvouchtype) {
+        this.cvouchtype = cvouchtype;
     }
 
-    public String getCustomercode() {
-        return customercode;
+    public String getCvouchid() {
+        return cvouchid;
     }
 
-    public void setCustomercode(String customercode) {
-        this.customercode = customercode;
+    public void setCvouchid(String cvouchid) {
+        this.cvouchid = cvouchid;
     }
 
-    public String getCustomername() {
-        return customername;
+    public String getDvouchdate() {
+        return dvouchdate;
     }
 
-    public void setCustomername(String customername) {
-        this.customername = customername;
+    public void setDvouchdate(String dvouchdate) {
+        this.dvouchdate = dvouchdate;
     }
 
-    public String getCustomerabbname() {
-        return customerabbname;
+    public String getCdwcode() {
+        return cdwcode;
     }
 
-    public void setCustomerabbname(String customerabbname) {
-        this.customerabbname = customerabbname;
+    public void setCdwcode(String cdwcode) {
+        this.cdwcode = cdwcode;
     }
 
-    public String getDepartmentcode() {
-        return departmentcode;
+    public String getCdeptcode() {
+        return cdeptcode;
     }
 
-    public void setDepartmentcode(String departmentcode) {
-        this.departmentcode = departmentcode;
+    public void setCdeptcode(String cdeptcode) {
+        this.cdeptcode = cdeptcode;
     }
 
-    public String getDepartmentname() {
-        return departmentname;
+    public String getCperson() {
+        return cperson;
     }
 
-    public void setDepartmentname(String departmentname) {
-        this.departmentname = departmentname;
+    public void setCperson(String cperson) {
+        this.cperson = cperson;
     }
 
-    public String getPersoncode() {
-        return personcode;
+    public String getCitemclass() {
+        return citemclass;
     }
 
-    public void setPersoncode(String personcode) {
-        this.personcode = personcode;
+    public void setCitemclass(String citemclass) {
+        this.citemclass = citemclass;
     }
 
-    public String getPersonname() {
-        return personname;
+    public String getCitemcode() {
+        return citemcode;
     }
 
-    public void setPersonname(String personname) {
-        this.personname = personname;
+    public void setCitemcode(String citemcode) {
+        this.citemcode = citemcode;
     }
 
-    public String getAmount() {
-        return amount;
+    public String getCsscode() {
+        return csscode;
     }
 
-    public void setAmount(String amount) {
-        this.amount = amount;
+    public void setCsscode(String csscode) {
+        this.csscode = csscode;
     }
 
-    public String getOriginalamount() {
-        return originalamount;
+    public String getCdigest() {
+        return cdigest;
     }
 
-    public void setOriginalamount(String originalamount) {
-        this.originalamount = originalamount;
+    public void setCdigest(String cdigest) {
+        this.cdigest = cdigest;
     }
 
-    public String getDigest() {
-        return digest;
+    public String getCbankaccount() {
+        return cbankaccount;
     }
 
-    public void setDigest(String digest) {
-        this.digest = digest;
+    public void setCbankaccount(String cbankaccount) {
+        this.cbankaccount = cbankaccount;
     }
 
-    public String getBalancecode() {
-        return balancecode;
+    public String getCexchname() {
+        return cexchname;
     }
 
-    public void setBalancecode(String balancecode) {
-        this.balancecode = balancecode;
+    public void setCexchname(String cexchname) {
+        this.cexchname = cexchname;
     }
 
-    public String getBalancename() {
-        return balancename;
+    public String getIexchrate() {
+        return iexchrate;
     }
 
-    public void setBalancename(String balancename) {
-        this.balancename = balancename;
+    public void setIexchrate(String iexchrate) {
+        this.iexchrate = iexchrate;
     }
 
-    public String getBalanceitemcode() {
-        return balanceitemcode;
+    public String getIamount() {
+        return iamount;
     }
 
-    public void setBalanceitemcode(String balanceitemcode) {
-        this.balanceitemcode = balanceitemcode;
+    public void setIamount(String iamount) {
+        this.iamount = iamount;
     }
 
-    public String getItemclasscode() {
-        return itemclasscode;
+    public String getIamountf() {
+        return iamountf;
     }
 
-    public void setItemclasscode(String itemclasscode) {
-        this.itemclasscode = itemclasscode;
+    public void setIamountf(String iamountf) {
+        this.iamountf = iamountf;
     }
 
-    public String getItemcode() {
-        return itemcode;
+    public String getCoperator() {
+        return coperator;
     }
 
-    public void setItemcode(String itemcode) {
-        this.itemcode = itemcode;
+    public void setCoperator(String coperator) {
+        this.coperator = coperator;
     }
 
-    public String getItemname() {
-        return itemname;
+    public String getCorderno() {
+        return corderno;
     }
 
-    public void setItemname(String itemname) {
-        this.itemname = itemname;
-    }
-
-    public String getOppositebankname() {
-        return oppositebankname;
-    }
-
-    public void setOppositebankname(String oppositebankname) {
-        this.oppositebankname = oppositebankname;
-    }
-
-    public String getOppositebankcode() {
-        return oppositebankcode;
-    }
-
-    public void setOppositebankcode(String oppositebankcode) {
-        this.oppositebankcode = oppositebankcode;
-    }
-
-    public String getBankname() {
-        return bankname;
-    }
-
-    public void setBankname(String bankname) {
-        this.bankname = bankname;
-    }
-
-    public String getBankaccount() {
-        return bankaccount;
-    }
-
-    public void setBankaccount(String bankaccount) {
-        this.bankaccount = bankaccount;
-    }
-
-    public List<AcceptOrderMin> getEntry() {
-        return entry;
-    }
-
-    public void setEntry(List<AcceptOrderMin> entry) {
-        this.entry = entry;
+    public void setCorderno(String corderno) {
+        this.corderno = corderno;
     }
 }

+ 25 - 97
src/main/java/net/chenlin/dp/modules/api/vo/AcceptOrderMin.java

@@ -1,30 +1,14 @@
 package net.chenlin.dp.modules.api.vo;
 
 public class AcceptOrderMin {
-    private  String type;//款项类型(0-应收款;1-预收款;2-其他费用),默认0
-    private  String customercode;//客商编码 true
-    private  String customerabbname;//客商简称
-    private  String departmentcode;//部门编码 true
-    private  String departmentname;//部门名称
-    private  String personcode;//人员编码
-    private  String personname;//人员
-    private  String digest;//摘要
-    private  String project;//项目编号
-    private  String projectclass;//项目大类编号
-    private  String itemcode;//科目
-    private  String itemname;//项目名称
-    private  String amount;//本币金额 true
-    private  String originalamount;//原币金额
-    private  String iamt_s;//数量  true
-    private  String iramt_s;//剩余数量
-
-    public String getType() {
-        return type;
-    }
-
-    public void setType(String type) {
-        this.type = type;
-    }
+    private String customercode;//客商编码
+    private String departmentcode;//部门编码
+    private String personcode;//人员编码
+    private String originalamount;//原币金额
+    private String amount;//本币金额
+    private String projectclass;//项目大类编码
+    private String project;//项目编码
+    private String type;//款项类型
 
     public String getCustomercode() {
         return customercode;
@@ -34,14 +18,6 @@ public class AcceptOrderMin {
         this.customercode = customercode;
     }
 
-    public String getCustomerabbname() {
-        return customerabbname;
-    }
-
-    public void setCustomerabbname(String customerabbname) {
-        this.customerabbname = customerabbname;
-    }
-
     public String getDepartmentcode() {
         return departmentcode;
     }
@@ -50,14 +26,6 @@ public class AcceptOrderMin {
         this.departmentcode = departmentcode;
     }
 
-    public String getDepartmentname() {
-        return departmentname;
-    }
-
-    public void setDepartmentname(String departmentname) {
-        this.departmentname = departmentname;
-    }
-
     public String getPersoncode() {
         return personcode;
     }
@@ -66,52 +34,12 @@ public class AcceptOrderMin {
         this.personcode = personcode;
     }
 
-    public String getPersonname() {
-        return personname;
-    }
-
-    public void setPersonname(String personname) {
-        this.personname = personname;
-    }
-
-    public String getDigest() {
-        return digest;
-    }
-
-    public void setDigest(String digest) {
-        this.digest = digest;
-    }
-
-    public String getProject() {
-        return project;
-    }
-
-    public void setProject(String project) {
-        this.project = project;
-    }
-
-    public String getProjectclass() {
-        return projectclass;
-    }
-
-    public void setProjectclass(String projectclass) {
-        this.projectclass = projectclass;
-    }
-
-    public String getItemcode() {
-        return itemcode;
-    }
-
-    public void setItemcode(String itemcode) {
-        this.itemcode = itemcode;
-    }
-
-    public String getItemname() {
-        return itemname;
+    public String getOriginalamount() {
+        return originalamount;
     }
 
-    public void setItemname(String itemname) {
-        this.itemname = itemname;
+    public void setOriginalamount(String originalamount) {
+        this.originalamount = originalamount;
     }
 
     public String getAmount() {
@@ -122,27 +50,27 @@ public class AcceptOrderMin {
         this.amount = amount;
     }
 
-    public String getOriginalamount() {
-        return originalamount;
+    public String getProjectclass() {
+        return projectclass;
     }
 
-    public void setOriginalamount(String originalamount) {
-        this.originalamount = originalamount;
+    public void setProjectclass(String projectclass) {
+        this.projectclass = projectclass;
     }
 
-    public String getIamt_s() {
-        return iamt_s;
+    public String getProject() {
+        return project;
     }
 
-    public void setIamt_s(String iamt_s) {
-        this.iamt_s = iamt_s;
+    public void setProject(String project) {
+        this.project = project;
     }
 
-    public String getIramt_s() {
-        return iramt_s;
+    public String getType() {
+        return type;
     }
 
-    public void setIramt_s(String iramt_s) {
-        this.iramt_s = iramt_s;
+    public void setType(String type) {
+        this.type = type;
     }
-}
+}

+ 83 - 133
src/main/java/net/chenlin/dp/modules/api/vo/Customer.java

@@ -3,203 +3,153 @@ package net.chenlin.dp.modules.api.vo;
 import java.util.ArrayList;
 import java.util.List;
 
+/**
+ * 客户档案
+ */
 public class Customer {
-    private  String code;//客户编码 true
-    private  String name;//客户名称 true
-    private  String abbrname;//客户简称
-    private  String sort_code;//所属分类码
-    private  String domain_code;//所属地区码
-    private  String industry;//所属行业
-    private  String contact;//联系人
-    private  String phone;//电话
-    private  String fax;//传真
-    private  String mobile;//手机
-    private  String devliver_site;//发货地址
-    private  String end_date;//停用日期
-    private  String memo;//备注
-    private  String ccusexch_name;//币种
-    private  String bcusdomestic;//国内
-    private  String bcusoverseas;//国外
-    private  String bserviceattribute;//服务
-    private   List<CustomerAddress> addresses=new ArrayList<>();//地址
-    private List<CustomerBanks> banks=new ArrayList<>();//银行
-    private  Invoicecustomers invoicecustomers=new Invoicecustomers();//开票
-//    private Users users=new Users();
-//    private Auths auths=new Auths();
+    private  String cCusCode;//客户编码
+    private  String cCusName;//客户名称
+    private  String cCusAbbName;//客户简称
+    private  String cCCCode;//客户分类编码
+    private  String cCusRegCode;//纳税人登记号
+    private  String cCusBank;//开户银行
+    private  String cCusAccount;//银行账号
+    private  String dCusDevDate;//建档日期
+    private  String cCusPPerson;//业务员编码
+    private  String iCusCreLine;//信用额度
+    private  String iCusCreDate;//信用期限
+    private  String cCusOAddress;//发货地址
+    private  String cInvoiceCompany;//开票单位
+    private  String cCusDefine1;//省
+    private  String cCusDefine2;//市
+    private  String cCusDefine3;//区
 
-//    public Users getUsers() {
-//        return users;
-//    }
-//
-//    public void setUsers(Users users) {
-//        this.users = users;
-//    }
-//
-//    public Auths getAuths() {
-//        return auths;
-//    }
-//
-//    public void setAuths(Auths auths) {
-//        this.auths = auths;
-//    }
 
-    public String getCode() {
-        return code;
+    public String getcCusCode() {
+        return cCusCode;
     }
 
-    public void setCode(String code) {
-        this.code = code;
+    public void setcCusCode(String cCusCode) {
+        this.cCusCode = cCusCode;
     }
 
-    public String getName() {
-        return name;
+    public String getcCusName() {
+        return cCusName;
     }
 
-    public void setName(String name) {
-        this.name = name;
+    public void setcCusName(String cCusName) {
+        this.cCusName = cCusName;
     }
 
-    public String getAbbrname() {
-        return abbrname;
+    public String getcCusAbbName() {
+        return cCusAbbName;
     }
 
-    public void setAbbrname(String abbrname) {
-        this.abbrname = abbrname;
+    public void setcCusAbbName(String cCusAbbName) {
+        this.cCusAbbName = cCusAbbName;
     }
 
-    public String getSort_code() {
-        return sort_code;
+    public String getcCCCode() {
+        return cCCCode;
     }
 
-    public void setSort_code(String sort_code) {
-        this.sort_code = sort_code;
+    public void setcCCCode(String cCCCode) {
+        this.cCCCode = cCCCode;
     }
 
-    public String getDomain_code() {
-        return domain_code;
+    public String getcCusRegCode() {
+        return cCusRegCode;
     }
 
-    public void setDomain_code(String domain_code) {
-        this.domain_code = domain_code;
+    public void setcCusRegCode(String cCusRegCode) {
+        this.cCusRegCode = cCusRegCode;
     }
 
-    public String getIndustry() {
-        return industry;
+    public String getcCusBank() {
+        return cCusBank;
     }
 
-    public void setIndustry(String industry) {
-        this.industry = industry;
+    public void setcCusBank(String cCusBank) {
+        this.cCusBank = cCusBank;
     }
 
-    public String getContact() {
-        return contact;
+    public String getcCusAccount() {
+        return cCusAccount;
     }
 
-    public void setContact(String contact) {
-        this.contact = contact;
+    public void setcCusAccount(String cCusAccount) {
+        this.cCusAccount = cCusAccount;
     }
 
-    public String getPhone() {
-        return phone;
+    public String getdCusDevDate() {
+        return dCusDevDate;
     }
 
-    public void setPhone(String phone) {
-        this.phone = phone;
+    public void setdCusDevDate(String dCusDevDate) {
+        this.dCusDevDate = dCusDevDate;
     }
 
-    public String getFax() {
-        return fax;
+    public String getcCusPPerson() {
+        return cCusPPerson;
     }
 
-    public void setFax(String fax) {
-        this.fax = fax;
+    public void setcCusPPerson(String cCusPPerson) {
+        this.cCusPPerson = cCusPPerson;
     }
 
-    public String getMobile() {
-        return mobile;
+    public String getiCusCreLine() {
+        return iCusCreLine;
     }
 
-    public void setMobile(String mobile) {
-        this.mobile = mobile;
+    public void setiCusCreLine(String iCusCreLine) {
+        this.iCusCreLine = iCusCreLine;
     }
 
-    public String getDevliver_site() {
-        return devliver_site;
+    public String getiCusCreDate() {
+        return iCusCreDate;
     }
 
-    public void setDevliver_site(String devliver_site) {
-        this.devliver_site = devliver_site;
+    public void setiCusCreDate(String iCusCreDate) {
+        this.iCusCreDate = iCusCreDate;
     }
 
-    public String getEnd_date() {
-        return end_date;
+    public String getcCusOAddress() {
+        return cCusOAddress;
     }
 
-    public void setEnd_date(String end_date) {
-        this.end_date = end_date;
+    public void setcCusOAddress(String cCusOAddress) {
+        this.cCusOAddress = cCusOAddress;
     }
 
-    public String getMemo() {
-        return memo;
+    public String getcInvoiceCompany() {
+        return cInvoiceCompany;
     }
 
-    public void setMemo(String memo) {
-        this.memo = memo;
+    public void setcInvoiceCompany(String cInvoiceCompany) {
+        this.cInvoiceCompany = cInvoiceCompany;
     }
 
-    public String getCcusexch_name() {
-        return ccusexch_name;
+    public String getcCusDefine1() {
+        return cCusDefine1;
     }
 
-    public void setCcusexch_name(String ccusexch_name) {
-        this.ccusexch_name = ccusexch_name;
+    public void setcCusDefine1(String cCusDefine1) {
+        this.cCusDefine1 = cCusDefine1;
     }
 
-    public String getBcusdomestic() {
-        return bcusdomestic;
+    public String getcCusDefine2() {
+        return cCusDefine2;
     }
 
-    public void setBcusdomestic(String bcusdomestic) {
-        this.bcusdomestic = bcusdomestic;
+    public void setcCusDefine2(String cCusDefine2) {
+        this.cCusDefine2 = cCusDefine2;
     }
 
-    public String getBcusoverseas() {
-        return bcusoverseas;
+    public String getcCusDefine3() {
+        return cCusDefine3;
     }
 
-    public void setBcusoverseas(String bcusoverseas) {
-        this.bcusoverseas = bcusoverseas;
-    }
-
-    public String getBserviceattribute() {
-        return bserviceattribute;
-    }
-
-    public void setBserviceattribute(String bserviceattribute) {
-        this.bserviceattribute = bserviceattribute;
-    }
-
-    public List<CustomerAddress> getAddresses() {
-        return addresses;
-    }
-
-    public void setAddresses(List<CustomerAddress> addresses) {
-        this.addresses = addresses;
-    }
-
-    public List<CustomerBanks> getBanks() {
-        return banks;
-    }
-
-    public void setBanks(List<CustomerBanks> banks) {
-        this.banks = banks;
-    }
-
-    public Invoicecustomers getInvoicecustomers() {
-        return invoicecustomers;
-    }
-
-    public void setInvoicecustomers(Invoicecustomers invoicecustomers) {
-        this.invoicecustomers = invoicecustomers;
+    public void setcCusDefine3(String cCusDefine3) {
+        this.cCusDefine3 = cCusDefine3;
     }
 }

+ 5 - 59
src/main/java/net/chenlin/dp/modules/api/vo/CustomerAddress.java

@@ -1,16 +1,10 @@
 package net.chenlin.dp.modules.api.vo;
 
 public class CustomerAddress {
-    private  String ccuscode;//客户编码 true
-    private  String caddcode;//收货地址编码 true
-    private  String bdefault;//默认值
-    private  String cdeliveradd;//收货地址
-    private  String cenglishadd;//英文地址
-    private  String cenglishadd2;//英文地址2
-    private  String cenglishadd3;//英文地址3
-    private  String cenglishadd4;//英文地址4
-    private  String cdeliverunit;//收货单位
-    private  String clinkperson;//联系人
+    private String ccuscode;//客户编码 true
+    private String caddcode;//收货地址编码 true
+    private String bdefault;//默认值
+    private String cdeliveradd;//收货地址
 
     public String getCcuscode() {
         return ccuscode;
@@ -43,52 +37,4 @@ public class CustomerAddress {
     public void setCdeliveradd(String cdeliveradd) {
         this.cdeliveradd = cdeliveradd;
     }
-
-    public String getCenglishadd() {
-        return cenglishadd;
-    }
-
-    public void setCenglishadd(String cenglishadd) {
-        this.cenglishadd = cenglishadd;
-    }
-
-    public String getCenglishadd2() {
-        return cenglishadd2;
-    }
-
-    public void setCenglishadd2(String cenglishadd2) {
-        this.cenglishadd2 = cenglishadd2;
-    }
-
-    public String getCenglishadd3() {
-        return cenglishadd3;
-    }
-
-    public void setCenglishadd3(String cenglishadd3) {
-        this.cenglishadd3 = cenglishadd3;
-    }
-
-    public String getCenglishadd4() {
-        return cenglishadd4;
-    }
-
-    public void setCenglishadd4(String cenglishadd4) {
-        this.cenglishadd4 = cenglishadd4;
-    }
-
-    public String getCdeliverunit() {
-        return cdeliverunit;
-    }
-
-    public void setCdeliverunit(String cdeliverunit) {
-        this.cdeliverunit = cdeliverunit;
-    }
-
-    public String getClinkperson() {
-        return clinkperson;
-    }
-
-    public void setClinkperson(String clinkperson) {
-        this.clinkperson = clinkperson;
-    }
-}
+}

+ 0 - 45
src/main/java/net/chenlin/dp/modules/api/vo/CustomerBanks.java

@@ -7,11 +7,6 @@ public class CustomerBanks {
     private  String cbank;//所属银行编码
     private  String cbranch;//开户银行
     private  String caccountname;//账户名称
-    private  String cCusPrinvince;//省
-    private  String cCusCity;//市
-    private  String cCusCBBDepId;//机构号
-    private  String cCusBranchId;//联行号
-    private  String cCusBranchIdSec;//联行号II
 
     public String getCcuscode() {
         return ccuscode;
@@ -60,44 +55,4 @@ public class CustomerBanks {
     public void setCaccountname(String caccountname) {
         this.caccountname = caccountname;
     }
-
-    public String getcCusPrinvince() {
-        return cCusPrinvince;
-    }
-
-    public void setcCusPrinvince(String cCusPrinvince) {
-        this.cCusPrinvince = cCusPrinvince;
-    }
-
-    public String getcCusCity() {
-        return cCusCity;
-    }
-
-    public void setcCusCity(String cCusCity) {
-        this.cCusCity = cCusCity;
-    }
-
-    public String getcCusCBBDepId() {
-        return cCusCBBDepId;
-    }
-
-    public void setcCusCBBDepId(String cCusCBBDepId) {
-        this.cCusCBBDepId = cCusCBBDepId;
-    }
-
-    public String getcCusBranchId() {
-        return cCusBranchId;
-    }
-
-    public void setcCusBranchId(String cCusBranchId) {
-        this.cCusBranchId = cCusBranchId;
-    }
-
-    public String getcCusBranchIdSec() {
-        return cCusBranchIdSec;
-    }
-
-    public void setcCusBranchIdSec(String cCusBranchIdSec) {
-        this.cCusBranchIdSec = cCusBranchIdSec;
-    }
 }

+ 14 - 5
src/main/java/net/chenlin/dp/modules/api/vo/SaleOrderBJ.java

@@ -13,7 +13,7 @@ public class SaleOrderBJ {
     private  String cCusCode;//客户编码
     private  String cDepCode;//部门编码
     private  String cPersonCode;//业务员编码
-    private  String cexch_name;//币种名称
+    private  String cexchName;//币种名称
     private  String iExchRate;//汇率
     private  String iTaxRate;//表头税率
     private  String cMemo;//备注
@@ -21,6 +21,15 @@ public class SaleOrderBJ {
     private  String cVerifier;//审核人
     private  String cCloser;//关闭人
     private  String cBusType;//业务类型
+    private  String dcreatesystime;//制单时间
+
+    public String getDcreatesystime() {
+        return dcreatesystime;
+    }
+
+    public void setDcreatesystime(String dcreatesystime) {
+        this.dcreatesystime = dcreatesystime;
+    }
 
     public String getID() {
         return ID;
@@ -72,12 +81,12 @@ public class SaleOrderBJ {
         this.cPersonCode = cPersonCode;
     }
 
-    public String getCexch_name() {
-        return cexch_name;
+    public String getcexchName() {
+        return cexchName;
     }
 
-    public void setCexch_name(String cexch_name) {
-        this.cexch_name = cexch_name;
+    public void setcexchName(String cexchName) {
+        this.cexchName = cexchName;
     }
 
     public String getiExchRate() {

+ 18 - 0
src/main/java/net/chenlin/dp/modules/api/vo/SaleOrderBJMin.java

@@ -1,6 +1,8 @@
 package net.chenlin.dp.modules.api.vo;
 
 public class SaleOrderBJMin {
+    private  String AutoID;//id
+    private  String ID;//主表id
     private  String irowno;//行号
     private  String cInvCode;//存货编码
     private  String iQuantity;//数量
@@ -29,6 +31,22 @@ public class SaleOrderBJMin {
     private  String cCusInvCode;//客户存货编码
     private  String cCusInvName;//客户存货名称
 
+    public String getAutoID() {
+        return AutoID;
+    }
+
+    public void setAutoID(String autoID) {
+        AutoID = autoID;
+    }
+
+    public String getID() {
+        return ID;
+    }
+
+    public void setID(String ID) {
+        this.ID = ID;
+    }
+
     public String getiQuantity() {
         return iQuantity;
     }

+ 8 - 0
src/main/java/net/chenlin/dp/modules/api/vo/SaleOrderFH.java

@@ -31,6 +31,14 @@ public class SaleOrderFH {
     private  String closer;//关闭人
     private List<SaleOrderFHMin>entry=new ArrayList<>();
 
+    public String getCusabbname() {
+        return cusabbname;
+    }
+
+    public void setCusabbname(String cusabbname) {
+        this.cusabbname = cusabbname;
+    }
+
     public String getCode() {
         return code;
     }

+ 9 - 0
src/main/java/net/chenlin/dp/modules/api/vo/SaleOrderTHMin.java

@@ -31,6 +31,15 @@ public class SaleOrderTHMin {
     private  String ReasonCode;//退货原因编码
     private  String ReasonName;//退货原因
     private  String rowno;//行号
+    private  String batch;//批次
+
+    public String getBatch() {
+        return batch;
+    }
+
+    public void setBatch(String batch) {
+        this.batch = batch;
+    }
 
     public String getInventory_code() {
         return inventory_code;

+ 210 - 0
src/main/java/net/chenlin/dp/modules/api/vo/YonyouMaterial.java

@@ -55,6 +55,216 @@ public class YonyouMaterial {
     private  String define36;
     private  String define37;
 
+
+   //--------------------crm-------------------
+    private  String AutoID;//子表id
+    private  String id;//主表id
+    private  String code;//销售订单号
+    private  String cltemcode;//项目编码
+    private  String cltemClass;//项目大类编码
+    private  String cltemName;//项目名称
+    private  String cltemCName;//项目大类名称
+    private  String cquocode;//报价单单号
+    private  String iquoid;//报价单id
+    private  String cscloser;//关闭标记
+    private  String dpremodate;//预完工日期
+    private  String ccusinvcode;//客户存货编码
+    private  String ccusinvname;//客户存货名称
+    private  String ippartid;//母件物料id
+    private  String  ippartqty;//母件数量
+    private  String borderbom;//是否订单bom
+    private  String borderbomover;//订单bom是否完成
+    private  String idemandtype;//需求跟踪方式
+    private  String ccorvouchtype;//来源单据类型
+    private  String icorrowno;//来源单据行号
+    private  String dbclosesystime;//关闭时间
+    private  String dbclosedate;//关闭日期
+    private  String dpredate;//预发货日期
+
+    public String getAutoID() {
+        return AutoID;
+    }
+
+    public void setAutoID(String autoID) {
+        AutoID = autoID;
+    }
+
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+
+    public String getCode() {
+        return code;
+    }
+
+    public void setCode(String code) {
+        this.code = code;
+    }
+
+    public String getCltemcode() {
+        return cltemcode;
+    }
+
+    public void setCltemcode(String cltemcode) {
+        this.cltemcode = cltemcode;
+    }
+
+    public String getCltemClass() {
+        return cltemClass;
+    }
+
+    public void setCltemClass(String cltemClass) {
+        this.cltemClass = cltemClass;
+    }
+
+    public String getCltemName() {
+        return cltemName;
+    }
+
+    public void setCltemName(String cltemName) {
+        this.cltemName = cltemName;
+    }
+
+    public String getCltemCName() {
+        return cltemCName;
+    }
+
+    public void setCltemCName(String cltemCName) {
+        this.cltemCName = cltemCName;
+    }
+
+    public String getCquocode() {
+        return cquocode;
+    }
+
+    public void setCquocode(String cquocode) {
+        this.cquocode = cquocode;
+    }
+
+    public String getIquoid() {
+        return iquoid;
+    }
+
+    public void setIquoid(String iquoid) {
+        this.iquoid = iquoid;
+    }
+
+    public String getCscloser() {
+        return cscloser;
+    }
+
+    public void setCscloser(String cscloser) {
+        this.cscloser = cscloser;
+    }
+
+    public String getDpremodate() {
+        return dpremodate;
+    }
+
+    public void setDpremodate(String dpremodate) {
+        this.dpremodate = dpremodate;
+    }
+
+    public String getCcusinvcode() {
+        return ccusinvcode;
+    }
+
+    public void setCcusinvcode(String ccusinvcode) {
+        this.ccusinvcode = ccusinvcode;
+    }
+
+    public String getCcusinvname() {
+        return ccusinvname;
+    }
+
+    public void setCcusinvname(String ccusinvname) {
+        this.ccusinvname = ccusinvname;
+    }
+
+    public String getIppartid() {
+        return ippartid;
+    }
+
+    public void setIppartid(String ippartid) {
+        this.ippartid = ippartid;
+    }
+
+    public String getIppartqty() {
+        return ippartqty;
+    }
+
+    public void setIppartqty(String ippartqty) {
+        this.ippartqty = ippartqty;
+    }
+
+    public String getBorderbom() {
+        return borderbom;
+    }
+
+    public void setBorderbom(String borderbom) {
+        this.borderbom = borderbom;
+    }
+
+    public String getBorderbomover() {
+        return borderbomover;
+    }
+
+    public void setBorderbomover(String borderbomover) {
+        this.borderbomover = borderbomover;
+    }
+
+    public String getIdemandtype() {
+        return idemandtype;
+    }
+
+    public void setIdemandtype(String idemandtype) {
+        this.idemandtype = idemandtype;
+    }
+
+    public String getCcorvouchtype() {
+        return ccorvouchtype;
+    }
+
+    public void setCcorvouchtype(String ccorvouchtype) {
+        this.ccorvouchtype = ccorvouchtype;
+    }
+
+    public String getIcorrowno() {
+        return icorrowno;
+    }
+
+    public void setIcorrowno(String icorrowno) {
+        this.icorrowno = icorrowno;
+    }
+
+    public String getDbclosesystime() {
+        return dbclosesystime;
+    }
+
+    public void setDbclosesystime(String dbclosesystime) {
+        this.dbclosesystime = dbclosesystime;
+    }
+
+    public String getDbclosedate() {
+        return dbclosedate;
+    }
+
+    public void setDbclosedate(String dbclosedate) {
+        this.dbclosedate = dbclosedate;
+    }
+
+    public String getDpredate() {
+        return dpredate;
+    }
+
+    public void setDpredate(String dpredate) {
+        this.dpredate = dpredate;
+    }
+
     public String getFree1() {
         return free1;
     }

+ 29 - 0
src/main/java/net/chenlin/dp/modules/api/vo/YonyouSaleOrder.java

@@ -31,6 +31,7 @@ public class YonyouSaleOrder {
     private  String currencyrate;
     private  String verifysystime;
     private  String currency;//币种
+    private  String cgatheringplan;//收付款协议
     private  String timestamp;
     private  String createsystime;
     private  String define1;
@@ -50,6 +51,34 @@ public class YonyouSaleOrder {
     private  String define15;
     private  String define16;
 
+
+    private  String iExchRate;//汇率
+    private  String id;
+
+    public String getCgatheringplan() {
+        return cgatheringplan;
+    }
+
+    public void setCgatheringplan(String cgatheringplan) {
+        this.cgatheringplan = cgatheringplan;
+    }
+
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+
+    public String getiExchRate() {
+        return iExchRate;
+    }
+
+    public void setiExchRate(String iExchRate) {
+        this.iExchRate = iExchRate;
+    }
+
     public String getDefine1() {
         return define1;
     }

+ 60 - 34
src/main/java/net/chenlin/dp/modules/sys/controller/SysLoginController.java

@@ -1,11 +1,25 @@
 package net.chenlin.dp.modules.sys.controller;
 
 import com.google.code.kaptcha.Constants;
+import com.taobao.api.ApiException;
 import net.chenlin.dp.common.annotation.SysLog;
+import net.chenlin.dp.common.openapi4j.exception.OpenAPIException;
+import net.chenlin.dp.common.openapi4j.service.AcceptService;
+import net.chenlin.dp.common.support.orm.db.DynamicDataSource;
 import net.chenlin.dp.common.support.properties.GlobalProperties;
 import net.chenlin.dp.common.utils.MD5Utils;
 import net.chenlin.dp.common.utils.ShiroUtils;
+import net.chenlin.dp.modules.api.controller.*;
+import net.chenlin.dp.modules.api.dao.AcceptOrderMapper;
+import net.chenlin.dp.modules.api.dao.CustomerMapper;
+import net.chenlin.dp.modules.api.dao.SaleOrderMapper;
+import net.chenlin.dp.modules.api.service.CustomerService;
+import net.chenlin.dp.modules.api.service.PayrequestService;
+import net.chenlin.dp.modules.api.service.PurchaseOrderService;
+import net.chenlin.dp.modules.api.service.SaleOrderService;
+import net.chenlin.dp.modules.api.vo.*;
 import net.chenlin.dp.modules.sys.service.SysUserService;
+import net.chenlin.dp.modules.sys.service.impl.SysUserServiceImpl;
 import org.apache.commons.lang.StringUtils;
 import org.apache.shiro.SecurityUtils;
 import org.apache.shiro.authc.*;
@@ -15,6 +29,12 @@ import org.springframework.ui.Model;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMethod;
 
+import java.math.BigDecimal;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
 
 /**
  * 用户controller
@@ -29,6 +49,7 @@ public class SysLoginController extends AbstractController {
 	@Autowired
 	private GlobalProperties globalProperties;
 
+
 	/**
 	 * 跳转登录页面
 	 * @return
@@ -46,42 +67,47 @@ public class SysLoginController extends AbstractController {
 	 */
 	@SysLog("登录")
 	@RequestMapping(value = "/login", method = RequestMethod.POST)
-	public String login(Model model) {
+	public String login(Model model) throws OpenAPIException, ApiException {
 		String username = getParam("username").trim();
 		String password = getParam("password").trim();
-		try {
-			// 开启验证码
-			if (globalProperties.isKaptchaEnable()) {
-				String code = getParam("code").trim();
-				if (StringUtils.isBlank(code)) {
-					model.addAttribute("errorMsg", "验证码不能为空");
-					return html("/login");
-				}
-				String kaptcha = ShiroUtils.getKaptcha(Constants.KAPTCHA_SESSION_KEY);
-				if (!code.equalsIgnoreCase(kaptcha)) {
-					model.addAttribute("errorMsg", "验证码错误");
-					return html("/login");
-				}
-			}
-			// 用户名验证
-			if (StringUtils.isBlank(username)) {
-				model.addAttribute("errorMsg", "用户名不能为空");
-				return html("/login");
-			}
-			// 密码验证
-			if (StringUtils.isBlank(password)) {
-				model.addAttribute("errorMsg", "密码不能为空");
-				return html("/login");
-			}
-			UsernamePasswordToken token = new UsernamePasswordToken(username, MD5Utils.encrypt(username, password));
-			ShiroUtils.getSubject().login(token);
-			SecurityUtils.getSubject().getSession().setAttribute("sessionFlag", true);
-			return redirect("/");
-		} catch (UnknownAccountException | IncorrectCredentialsException | LockedAccountException e) {
-			model.addAttribute("errorMsg", e.getMessage());
-		} catch (AuthenticationException e) {
-			model.addAttribute("errorMsg", "登录服务异常");
-		}
+		Map<String,String>map=new HashMap<>();
+		SaleOrderService service=new SaleOrderService();
+		service.getToaccount();
+		service.IKSDDKOrder();
+		//saleOrderController.SaleOrderBJ();
+//		try {
+//			// 开启验证码
+//			if (globalProperties.isKaptchaEnable()) {
+//				String code = getParam("code").trim();
+//				if (StringUtils.isBlank(code)) {
+//					model.addAttribute("errorMsg", "验证码不能为空");
+//					return html("/login");
+//				}
+//				String kaptcha = ShiroUtils.getKaptcha(Constants.KAPTCHA_SESSION_KEY);
+//				if (!code.equalsIgnoreCase(kaptcha)) {
+//					model.addAttribute("errorMsg", "验证码错误");
+//					return html("/login");
+//				}
+//			}
+//			// 用户名验证
+//			if (StringUtils.isBlank(username)) {
+//				model.addAttribute("errorMsg", "用户名不能为空");
+//				return html("/login");
+//			}
+//			// 密码验证
+//			if (StringUtils.isBlank(password)) {
+//				model.addAttribute("errorMsg", "密码不能为空");
+//				return html("/login");
+//			}
+//			UsernamePasswordToken token = new UsernamePasswordToken(username, MD5Utils.encrypt(username, password));
+//			ShiroUtils.getSubject().login(token);
+//			SecurityUtils.getSubject().getSession().setAttribute("sessionFlag", true);
+//			return redirect("/");
+//		} catch (UnknownAccountException | IncorrectCredentialsException | LockedAccountException e) {
+//			model.addAttribute("errorMsg", e.getMessage());
+//		} catch (AuthenticationException e) {
+//			model.addAttribute("errorMsg", "登录服务异常");
+//		}
 		return html("/login");
 	}