Browse Source

代采订单存储方法更新

hejq 8 years ago
parent
commit
d07c0d575d
1 changed files with 63 additions and 65 deletions
  1. 63 65
      src/main/resources/database/template/deputyOrder.xml

+ 63 - 65
src/main/resources/database/template/deputyOrder.xml

@@ -3,89 +3,87 @@
     <declare>
     <declare>
         v_customer customer%rowtype;
         v_customer customer%rowtype;
         v_employee employee%rowtype;
         v_employee employee%rowtype;
-        v_vendor vendor%rowtype;
         v_sale sale%rowtype;
         v_sale sale%rowtype;
         v_sd_id number;
         v_sd_id number;
         v_pr_code varchar2(64);
         v_pr_code varchar2(64);
+        v_vendcode varchar2(64);
     </declare>
     </declare>
     <body>
     <body>
         <iterator loop="orders" var="order">
         <iterator loop="orders" var="order">
             <block>
             <block>
                 begin
                 begin
-                    select * into v_customer from customer where cu_uu=${order.enuu};
+                select * into v_customer from customer where cu_uu=${order.enuu};
                 exception when no_data_found then
                 exception when no_data_found then
                 RAISE_APPLICATION_ERROR(-20010, '客户['||${order.enuu}||']不存在');
                 RAISE_APPLICATION_ERROR(-20010, '客户['||${order.enuu}||']不存在');
                 end;
                 end;
                 begin
                 begin
-                    select * into v_employee from employee where em_code=v_customer.cu_sellercode;
-                    exception when no_data_found then null;
+                select * into v_employee from employee where em_code=v_customer.cu_sellercode;
+                exception when no_data_found then null;
                 end;
                 end;
                 begin
                 begin
-                    select * into v_vendor from vendor where ve_name=${order.tervendor};
-                    exception when no_data_found then
-                    RAISE_APPLICATION_ERROR(-20010, '供应商['||${order.tervendor}||']不存在');
+                select ve_code into v_vendcode from vendor where ve_name=${order.tervendor};
                 end;
                 end;
                 begin
                 begin
-                    select * into v_sale from sale where sa_code=${order.salecode};
-                    exception when no_data_found then null;
+                select * into v_sale from sale where sa_code=${order.salecode};
+                exception when no_data_found then null;
                 end;
                 end;
                 if v_sale.sa_id is null or ${order.statuscode} = 222 then
                 if v_sale.sa_id is null or ${order.statuscode} = 222 then
-                    if v_sale.sa_id is null then
-                        v_sale.sa_id := sale_seq.nextval;
-                    else
-                        delete from saledetail where sd_said=v_sale.sa_id;
-                        delete from sale where sa_id=v_sale.sa_id;
-                    end if;
-                    v_sale.sa_code := ${order.salecode};
-                    v_sale.sa_pocode := ${order.salepocode};
-                    v_sale.sa_date := ${order.entrydate};
-                    v_sale.sa_kind := '代采订单';
-                    v_sale.sa_custcode := v_customer.cu_code;
-                    v_sale.sa_custname := v_customer.cu_name;
-                    v_sale.sa_currency := ${order.currency};
-                    v_sale.sa_apcustcode := v_customer.cu_code;
-                    v_sale.sa_apcustname := v_customer.cu_name;
-                    v_sale.sa_shcustcode := v_customer.cu_code;
-                    v_sale.sa_shcustname := v_customer.cu_name;
-                    v_sale.sa_paymentscode := v_customer.cu_paymentscode;
-                    v_sale.sa_payments := v_customer.cu_payments;
-                    v_sale.sa_toplace := v_customer.cu_add1;
-                    v_sale.sa_fromcode := ${order.code};
-                    v_sale.sa_sellercode := v_customer.cu_sellercode;
-                    v_sale.sa_departmentcode := v_employee.em_departmentcode;
-                    v_sale.sa_departmentname := v_employee.em_depart;
-                    v_sale.sa_recorder := '系统';
-                    v_sale.sa_recorddate := sysdate;
-                    v_sale.sa_statuscode := 'ENTERING';
-                    v_sale.sa_status := '在录入';
-                    v_sale.sa_vendcode := v_vendor.ve_code;
-                    v_sale.sa_vendname := ${order.tervendor};
-                    v_sale.sa_a20_user := ${order.madealdate};
-                    v_sale.sa_a19_user := ${order.madealcode};
-                    v_sale.sa_a18_user := ${order.vendtel};
-                    v_sale.sa_a17_user := ${order.venduser};
-                    v_sale.sa_a14_user := ${order.shipdate};
-                    v_sale.sa_a16_user := ${order.deliverymethod};
-                    v_sale.sa_a15_user := ${order.pickupmethod};
-                    v_sale.sa_a11_user := ${order.tervendaddress};
-                    v_sale.sa_a9_user := ${order.companyname};
-                    v_sale.sa_a10_user := ${order.requirepaydate};
-                    v_sale.sa_a8_user := ${order.bankname};
-                    v_sale.sa_a6_user := ${order.bankaccount};
-                    v_sale.sa_a7_user := ${order.bankaddress};
-                    v_sale.sa_a5_user := ${order.bankcode};
-                    v_sale.sa_a4_user := ${order.otherdata};
-                    v_sale.sa_a3_user := ${order.legalrepresent};
-                    v_sale.sa_a24_user := ${order.deliverydate};
-                    v_sale.sa_a22_user := ${order.paydate};
-                    v_sale.sa_payername := ${order.paycomname};
-                    v_sale.sa_payeraddress := ${order.paycomaddress};
-                    v_sale.sa_a13_user := ${order.riskmethod};
-                    v_sale.sa_a12_user := ${order.taxpaymentmethod};
-                    v_sale.sa_a2_user := ${order.enfax};
-                    v_sale.sa_a25_user := ${order.paycomaddress};
-                    v_sale.sa_a10_user_2 := ${order.actualpaydate};
-                    insert into sale values v_sale;
+                if v_sale.sa_id is null then
+                v_sale.sa_id := sale_seq.nextval;
+                else
+                delete from saledetail where sd_said=v_sale.sa_id;
+                delete from sale where sa_id=v_sale.sa_id;
+                end if;
+                v_sale.sa_code := ${order.salecode};
+                v_sale.sa_pocode := ${order.salepocode};
+                v_sale.sa_date := ${order.entrydate};
+                v_sale.sa_kind := '代采订单';
+                v_sale.sa_custcode := v_customer.cu_code;
+                v_sale.sa_custname := v_customer.cu_name;
+                v_sale.sa_currency := ${order.currency};
+                v_sale.sa_apcustcode := v_customer.cu_code;
+                v_sale.sa_apcustname := v_customer.cu_name;
+                v_sale.sa_shcustcode := v_customer.cu_code;
+                v_sale.sa_shcustname := v_customer.cu_name;
+                v_sale.sa_paymentscode := v_customer.cu_paymentscode;
+                v_sale.sa_payments := v_customer.cu_payments;
+                v_sale.sa_toplace := v_customer.cu_add1;
+                v_sale.sa_fromcode := ${order.code};
+                v_sale.sa_sellercode := v_customer.cu_sellercode;
+                v_sale.sa_departmentcode := v_employee.em_departmentcode;
+                v_sale.sa_departmentname := v_employee.em_depart;
+                v_sale.sa_recorder := '系统';
+                v_sale.sa_recorddate := sysdate;
+                v_sale.sa_statuscode := 'ENTERING';
+                v_sale.sa_status := '在录入';
+                v_sale.sa_vendcode := v_vendcode;
+                v_sale.sa_vendname := ${order.tervendor};
+                v_sale.sa_a20_user := ${order.madealdate};
+                v_sale.sa_a19_user := ${order.madealcode};
+                v_sale.sa_a18_user := ${order.vendtel};
+                v_sale.sa_a17_user := ${order.venduser};
+                v_sale.sa_a14_user := ${order.shipdate};
+                v_sale.sa_a16_user := ${order.deliverymethod};
+                v_sale.sa_a15_user := ${order.pickupmethod};
+                v_sale.sa_a11_user := ${order.tervendaddress};
+                v_sale.sa_a9_user := ${order.companyname};
+                v_sale.sa_a10_user := ${order.requirepaydate};
+                v_sale.sa_a8_user := ${order.bankname};
+                v_sale.sa_a6_user := ${order.bankaccount};
+                v_sale.sa_a7_user := ${order.bankaddress};
+                v_sale.sa_a5_user := ${order.bankcode};
+                v_sale.sa_a4_user := ${order.otherdata};
+                v_sale.sa_a3_user := ${order.legalrepresent};
+                v_sale.sa_a24_user := ${order.deliverydate};
+                v_sale.sa_a22_user := ${order.paydate};
+                v_sale.sa_payername := ${order.paycomname};
+                v_sale.sa_payeraddress := ${order.paycomaddress};
+                v_sale.sa_a13_user := ${order.riskmethod};
+                v_sale.sa_a12_user := ${order.taxpaymentmethod};
+                v_sale.sa_a2_user := ${order.enfax};
+                v_sale.sa_a25_user := ${order.paycomaddress};
+                v_sale.sa_a10_user_2 := ${order.actualpaydate};
+                insert into sale values v_sale;
             </block>
             </block>
             <iterator loop="order.deputyOrderItems" var="item">
             <iterator loop="order.deputyOrderItems" var="item">
                 v_sd_id := saledetail_seq.nextval;
                 v_sd_id := saledetail_seq.nextval;