package net.chenlin.dp.modules.api.controller; import com.taobao.api.ApiException; import net.chenlin.dp.common.openapi4j.exception.OpenAPIException; import net.chenlin.dp.common.openapi4j.util.PropUtil; import net.chenlin.dp.common.support.orm.db.DynamicDataSource; import net.chenlin.dp.common.utils.DateUtils; import net.chenlin.dp.common.utils.SpringContextUtils; import net.chenlin.dp.modules.api.service.SaleOrderService; import net.chenlin.dp.modules.api.vo.SaleOrderRest; import net.chenlin.dp.modules.api.vo.YonyouSaleOrder; import net.chenlin.dp.modules.sys.service.SysUserService; import net.chenlin.dp.modules.sys.service.impl.SysUserServiceImpl; import org.springframework.beans.factory.annotation.Autowired; import java.text.SimpleDateFormat; import java.util.*; public class SaleOrderController { private SaleOrderService service=new SaleOrderService(); private DingdingOpenInterface dingdingOpenInterface=new DingdingOpenInterface(); private Properties prop = PropUtil.getProperties("/config.properties"); private SysUserService sysUserService= SpringContextUtils.getBean("sysUserService",SysUserService.class); /** * 获取u8销售订单创建钉钉销售订单审批实列 * @throws OpenAPIException * @throws ApiException */ public void dingSaleOrder(String data,String dataid) throws OpenAPIException, ApiException { String processCode= prop.getProperty("xsdd_process_code"); String agentid = prop.getProperty("agentid"); String userid = prop.getProperty("userid"); String deptid = prop.getProperty("deptid"); // Mapmap=new HashMap<>(); service.getToaccount(); // List list = service.yonyouQuerySaleOrder(map); // SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); // Date now = new Date(); // long time = 30*60*1000;//30分钟 // Date beforeDate = new Date(now .getTime() - time);//30分钟前的时间 DynamicDataSource.setDataSource(data); List list = sysUserService.querySaleOrderDate(); // DynamicDataSource.setDataSource(""); if (list!=null){ for (String saleOrder:list){ YonyouSaleOrder yonyouSaleOrder = service.yonyouGetSaleOrder(saleOrder,dataid); if (yonyouSaleOrder!=null){ // service.createOrder(processCode,1313665313L,"20264331162691",412163022L,yonyouSaleOrder); Object order = service.createOrder(processCode, Long.valueOf(agentid), userid, Long.valueOf(deptid), yonyouSaleOrder,data); if (order!=null &&!order.equals("")){ // DynamicDataSource.setDataSource("slave-data-source"); sysUserService.autoRIdBySale(saleOrder,order.toString()); } } } } DynamicDataSource.setDataSource(""); } /** * 销售订单审批后返回u8 * @throws OpenAPIException */ public void saleOrderShenhe() throws OpenAPIException { DingdingOpenInterface.getToken(); String processCode= prop.getProperty("xsdd_process_code"); String userid = prop.getProperty("u_shenhe_userid"); List orderIdList = dingdingOpenInterface.getOrderIdList(processCode); if (orderIdList!=null&&!orderIdList.equals("")){ for (String id:orderIdList){ Map orderDetails = dingdingOpenInterface.getOrderDetails(id); Map map = DingdingOpenInterface.tableToMap(orderDetails); Object code = map.get("单据编号"); Object ext_value = map.get("单据编号_ext_value"); Object result = orderDetails.get("result"); if (!result.equals("")&&result!=null){ if (result.equals("agree")){ SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置日期格式 String format = df.format(new Date()); DynamicDataSource.setDataSource(ext_value.toString()); sysUserService.Ordershenhe(code.toString(),format,format,"1",userid); DynamicDataSource.setDataSource(""); } } } } } /** * 销售订单 */ public void SaleOrder() throws OpenAPIException { service.getToaccount(); service.ISaleOrder(); service.SaleOrderClass(); } /** * 销售报价单 */ public void SaleOrderBJ(){ service.CrmSaleOrderBJ(); } /** * 客诉单-抵扣 */ public void KSDOrder() throws OpenAPIException { service.CrmKSDDK(); } /** * 客诉单-退货 */ public void KSDTHOrder() throws OpenAPIException { service.CrmKSDTH(); } /** * 打样单 */ 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(); //saleOrderController.saleOrderShenhe(); SaleOrderService service=new SaleOrderService(); Properties prop = PropUtil.getProperties("/config.properties"); String processCode= prop.getProperty("xsdd_process_code"); String agentid = prop.getProperty("agentid"); String userid = prop.getProperty("userid"); String deptid = prop.getProperty("deptid"); YonyouSaleOrder yonyouSaleOrder=new YonyouSaleOrder(); yonyouSaleOrder.setCode("XSDD213892224"); yonyouSaleOrder.setDate("2021-09-21"); yonyouSaleOrder.setBusinesstype("普通销售"); yonyouSaleOrder.setTypename("一般销售"); // Object order = service.createOrder(processCode, Long.valueOf(agentid), userid, Long.valueOf(deptid), yonyouSaleOrder); } }