Bladeren bron

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

zhoudw 7 jaren geleden
bovenliggende
commit
7db1d1c161

+ 5 - 0
applications/commons/commons-dto/src/main/java/com/usoftchina/saas/commons/po/Operation.java

@@ -82,6 +82,11 @@ public enum Operation {
      */
     TURNPRODOUT("msg.turnProdIO","msg.turnSuccess"),
 
+    /**
+     * 销售转采购
+     */
+    TURNPURCHASE("msg.turnPurchase","msg.turnSuccess"),
+
     /**
      * 转销售验退单
      */

+ 14 - 11
applications/money/money-server/src/main/java/com/usoftchina/saas/money/service/impl/VerificationServiceImpl.java

@@ -179,19 +179,22 @@ public class VerificationServiceImpl extends CommonBaseServiceImpl<VerificationM
                 verificationdetMapper.insertSelective(detail);
             }
         }
-        for (VerificationdetailDTO item : items2) {
-            Verificationdetail detail = BeanMapper.map(item,Verificationdetail.class);
-            Long vcd_id = detail.getId();
-            detail.setVcd_vcid(id);
-            detail.setVcd_id(Math.toIntExact(vcd_id));
-            detail.setVcd_ym(numberYM);
-            detail.setCompanyId(companyId);
-            if(vcd_id>0){
-                verificationdetailMapper.updateByPrimaryKey(detail);
-            }else{
-                verificationdetailMapper.insertSelective(detail);
+        if(items2!=null){
+            for (VerificationdetailDTO item : items2) {
+                Verificationdetail detail = BeanMapper.map(item,Verificationdetail.class);
+                Long vcd_id = detail.getId();
+                detail.setVcd_vcid(id);
+                detail.setVcd_id(Math.toIntExact(vcd_id));
+                detail.setVcd_ym(numberYM);
+                detail.setCompanyId(companyId);
+                if(vcd_id>0){
+                    verificationdetailMapper.updateByPrimaryKey(detail);
+                }else{
+                    verificationdetailMapper.insertSelective(detail);
+                }
             }
         }
+
         updateCorrespondingData(id);
         return baseDTO;
     }

+ 5 - 1
applications/sale/sale-server/src/main/java/com/usoftchina/saas/sale/service/impl/SaleServiceImpl.java

@@ -597,7 +597,11 @@ public class SaleServiceImpl implements SaleService{
         baseDTO.setCode(result);
         baseDTO.setId(Long.valueOf(String.valueOf(purchaseId)));
         baseDTO.setName(BillCodeSeq.PURCHASE.getName());
-        return baseDTO;
+
+
+        DocBaseDTO log = new DocBaseDTO(sale.getId(),sale.getSa_code(),BillCodeSeq.SALE.getCaller());
+        messageLogService.customizeLog(log, Operation.TURNPURCHASE);
+        return log;
     }
 
     //更新最新销售总额

+ 7 - 0
applications/sale/sale-server/src/main/resources/mapper/ProdInOutMapper.xml

@@ -37,6 +37,7 @@
     <result column="pi_address" jdbcType="VARCHAR" property="pi_address" />
     <result column="pi_remark" jdbcType="VARCHAR" property="pi_remark" />
     <result column="pi_iocode" jdbcType="VARCHAR" property="pi_iocode" />
+      <result column="pi_ioid" jdbcType="INTEGER" property="pi_ioid" />
   </resultMap>
   <resultMap extends="BaseResultMap" id="ResultMapWithBLOBs" type="com.usoftchina.saas.storage.po.ProdInOut">
     <result column="pi_address" jdbcType="LONGVARCHAR" property="pi_address" />
@@ -246,6 +247,9 @@
       <if test="pi_iocode != null">
         pi_iocode,
       </if>
+        <if test="pi_ioid != null">
+            pi_ioid,
+        </if>
     </trim>
     <trim prefix="values (" suffix=")" suffixOverrides=",">
 
@@ -345,6 +349,9 @@
       <if test="pi_iocode != null">
         #{pi_iocode,jdbcType=LONGVARCHAR},
       </if>
+        <if test="pi_ioid != null">
+            #{pi_ioid},
+        </if>
     </trim>
   </insert>
   <update id="updateByPrimaryKeySelective" parameterType="com.usoftchina.saas.storage.po.ProdInOut">

+ 5 - 2
frontend/saas-web/app/Application.scss

@@ -143,11 +143,14 @@ body.launching {
 }
 
 .x-keyboard-mode .x-btn-focus.x-btn-default-toolbar-small {
-  background: #34BAF6;
-  opacity: 0.72;
+  background: inherit;
+  opacity: 1;
   box-shadow: none;
+  border:1px solid #34BAF6;
 }
+
 .x-keyboard-mode .x-btn-focus.x-btn-over.x-btn-default-toolbar-small {
+  background: #34BAF6;
   box-shadow: none;
 }
 

+ 0 - 1
frontend/saas-web/app/view/core/form/RemoteCombo.js

@@ -32,7 +32,6 @@ Ext.define('saas.view.core.form.RemoteCombo', {
        me.store=store;
     },
     createPicker: function() {
-        debugger
         var me = this,
             picker;
         var count = this.store.getCount();

+ 22 - 14
frontend/saas-web/app/view/document/kind/ChildForm.js

@@ -277,23 +277,37 @@ Ext.define('KitchenSink.view.binding.ChildForm', {
                 regexText:'请输入正确的手机号码',
                 listeners:{
                     blur:function(f,a,b,c){
+                        var form = f.ownerCt;
+                        form.setLoading(true);
                         if(f.value&&f.value!=''&&f.isValid()){
                             Ext.Ajax.request({
-                                url: 'http://192.168.253.31:8560/api/account/account/checkMobile?mobile='+f.value,
+                                url: '/api/account/account/checkMobile?mobile='+f.value,
                                 method: 'GET',
                                 headers:{
                                     'Access-Control-Allow-Origin': '*',
                                     "Content-Type": 'application/json;charset=UTF-8'
                                 },
                                 success: function (response) {
+                                    form.setLoading(false);
+                                    var localJson = Ext.decode(response.responseText);
                                     if(localJson.success){
-                                        saas.util.BaseUtil.showSuccessToast('保存成功');
-                                        form.ownerCt._parent.store.load()
-                                        form.ownerCt.close();
+                                        if(!localJson.data.hasRegister){
+                                            saas.util.BaseUtil.showSuccessToast('校验成功:手机号未被注册');
+                                        }else{
+                                            saas.util.BaseUtil.showErrorToast('校验失败:手机号已被注册');
+                                            f.setValue('');
+                                        }
+                                    }else{
+                                        saas.util.BaseUtil.showErrorToast('校验失败:'+localJson.message);
                                     }
                                 },
                                 failure: function (response) {
-                                    debugger
+                                    if(response.responseText){
+                                        var localJson = Ext.decode(response.responseText);
+                                        saas.util.BaseUtil.showErrorToast('校验失败:'+localJson.message);
+                                    }else{
+                                        saas.util.BaseUtil.showErrorToast('手机号校验接口连接超时');
+                                    }
                                 }
                             });
                         }
@@ -310,6 +324,8 @@ Ext.define('KitchenSink.view.binding.ChildForm', {
                 fieldLabel: '邮箱',
                 name: 'email',
                 allowBlank:false,
+                regex:/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/,
+                regexText:'请输入正确的邮箱',
                 maxLength: 30,
             }]
         },
@@ -646,15 +662,7 @@ Ext.define('KitchenSink.view.binding.ChildForm', {
         .then(function(localJson) {
             me.setLoading(false);
             if(localJson.success){
-                var grid = form.ownerCt._parent ? form.ownerCt._parent.lookup('document-kind-Grid') : null;
-                if(grid){
-                    grid.store.load();
-                }
-                if(combo){
-                    combo.store.load(function() {
-                        typeof combo.setValue == 'function' && combo.setValue(params._value);
-                    });
-                }
+                form.ownerCt._parent.store.load();
                 saas.util.BaseUtil.showSuccessToast('保存成功');
                 form.ownerCt.close();
             }

+ 2 - 2
frontend/saas-web/app/view/money/verification/FormPanel.js

@@ -548,9 +548,9 @@ Ext.define('saas.view.money.verification.FormPanel', {
                 'ifnull(sl_vendid,0)={vc_vendid} and ifnull(sl_preamount,0)=0 and ifnull(sl_namount,0)<>0'],
             receivable_offset_payable: ['ifnull(sl_custid,0)={vc_custid} and ifnull(sl_preamount,0)=0 and ifnull(sl_namount,0)<>0',
                 'ifnull(sl_vendid,0)={vc_vendid} and ifnull(sl_preamount,0)=0 and ifnull(sl_namount,0)<>0'],
-            receivable_to_receivable: ['ifnull(sl_custid,0)={vc_outcustid} and ifnull(sl_preamount,0)=0 and ifnull(sl_namount,0)<>0 ' +
+            receivable_to_receivable: ['ifnull(sl_custid,0)={vc_custid} and ifnull(sl_preamount,0)=0 and ifnull(sl_namount,0)<>0 ' +
             'and sl_kind in (\'期初余额\',\'出货单\',\'销售退货单\')'],
-            payable_to_payable: ['ifnull(sl_vendtid,0)={vc_outvendid} and ifnull(sl_preamount,0)=0 and ifnull(sl_namount,0)<>0 ' +
+            payable_to_payable: ['ifnull(sl_vendid,0)={vc_vendid} and ifnull(sl_preamount,0)=0 and ifnull(sl_namount,0)<>0 ' +
             'and sl_kind in (\'期初余额\',\'采购验收单\',\'采购验退单\')']
         }
     },

+ 47 - 2
frontend/saas-web/app/view/money/verification/FormPanelController.js

@@ -81,7 +81,7 @@ Ext.define('saas.view.money.verification.FormPanelController', {
                     Ext.apply(f, {
                         dbfinds: [{
                             from: 'id',
-                            to: 'vc_turncustid',
+                            to: 'vc_turnvendid',
                             ignore: true
                         }, {
                             from: 've_code',
@@ -285,7 +285,6 @@ Ext.define('saas.view.money.verification.FormPanelController', {
             saas.util.BaseUtil.showErrorToast(form.invalidText);
             return false;
         }
-        debugger
         var sum_detail1 = store1.sum('vd_nowbalance'); // 从表1核销合计
         var sum_detail2 = store2.sum('vcd_nowbalance'); // 从表2核销合计
 
@@ -294,4 +293,50 @@ Ext.define('saas.view.money.verification.FormPanelController', {
 
         me.save();
     },
+
+    save:function(){
+        var me = this,
+        form = this.getView(),
+        detailCount = form.detailCount,
+        viewModel = me.getViewModel(),
+        modelData = viewModel.getData();
+
+        //form里面数据
+        var formData = form.getDirtyData();
+
+        var params = {
+            main:formData.main
+        };
+
+        for(var i = 0; i < detailCount; i++) {
+            params['items' + ( i + 1)] = formData['detail' + i];
+        }
+
+        saas.util.BaseUtil.request({
+            url: form._saveUrl,
+            params: JSON.stringify(params),
+            method: 'POST',
+        })
+        .then(function(localJson) {
+            if(localJson.success){
+                var id = localJson.data.id;
+                var code = localJson.data.code;
+                form.initId = id;
+                saas.util.FormUtil.loadData(form);
+                saas.util.BaseUtil.showSuccessToast('保存成功');
+
+                var newId = form.xtype + '-' + id;
+                var newTitle = form._title + '(' + code + ')';
+
+                saas.util.BaseUtil.refreshTabTitle(newId, newTitle);
+
+                form.fireEvent('aftersave', true, form, localJson);
+            }
+        })
+        .catch(function(res) {
+            console.error(res);
+            saas.util.BaseUtil.showErrorToast('保存失败: ' + res.message);
+            form.fireEvent('aftersave', false, form, res);
+        });
+    }
 });

+ 2 - 2
frontend/saas-web/app/view/sale/sale/FormPanelController.js

@@ -63,7 +63,7 @@ Ext.define('saas.view.sale.sale.FormPanelController', {
         form = me.getView(),
         id = form.getForm().findField(form._idField);
         saas.util.BaseUtil.request({
-            url: form._turnOutUrl+id.value,
+            url: form._turnOutUrl+'/'+id.value,
             method: 'POST',
         })
         .then(function(localJson) {
@@ -88,7 +88,7 @@ Ext.define('saas.view.sale.sale.FormPanelController', {
             form = me.getView(),
             id = form.getForm().findField(form._idField);
         saas.util.BaseUtil.request({
-            url: form._turnPurchase+id.value,
+            url: form._turnPurchase+'/'+id.value,
             method: 'POST',
         })
             .then(function(localJson) {

+ 2 - 2
frontend/saas-web/app/view/sale/saleOut/FormPanelController.js

@@ -60,7 +60,7 @@ Ext.define('saas.view.sale.saleout.FormPanelController', {
         form = me.getView(),
         id = form.getForm().findField(form._idField);
         saas.util.BaseUtil.request({
-            url: form._turnInUrl+id.value,
+            url: form._turnInUrl + '/' + id.value,
             method: 'POST',
         })
         .then(function(localJson) {
@@ -76,7 +76,7 @@ Ext.define('saas.view.sale.saleout.FormPanelController', {
             }
         })
         .catch(function(res) {
-            console.error(res);
+           // console.error(res);
             saas.util.BaseUtil.showErrorToast('转单失败: ' + res.message);
         });
      }

+ 15 - 8
frontend/saas-web/app/view/sys/account/DataList.js

@@ -9,7 +9,9 @@ Ext.define('saas.view.sys.account.DataList', {
     autoScroll: true,
     frame:true,
     layout:'fit',
-    dataUrl:'/api/account/account/accountRole/list',                 
+    dataUrl:'/api/account/account/accountRole/list',   
+    _openUrl:'/api/account/account/enable',
+    _closeUrl:'/api/account/account/disable',              
 
     tbar: [{
         width: 150,
@@ -22,7 +24,6 @@ Ext.define('saas.view.sys.account.DataList', {
         xtype: 'textfield',
         emptyText : '电话'
     },{
-        cls:'x-formpanel-btn-orange',
         xtype:'button',
         text:'查询',
         listeners: {
@@ -99,14 +100,14 @@ Ext.define('saas.view.sys.account.DataList', {
         width : 220.0
     },{
         text: '账户状态',
-        dataIndex: 'em_class',
+        dataIndex: 'enabled',
         width:90,
         xtype: 'actioncolumn',
         align : 'center',
         items: [{
             iconCls:'',
             getClass: function(v, meta, rec) {
-                if(rec.get('em_class')=='正式'){
+                if(rec.get('enabled')){
                     return 'x-grid-checkcolumn-checked-btn';
                 }else{
                     return 'x-grid-checkcolumn-btn';
@@ -114,14 +115,20 @@ Ext.define('saas.view.sys.account.DataList', {
             },
             handler: function(view, rowIndex, colIndex) {
                 var rec = view.getStore().getAt(rowIndex);
-                var type=rec.get('em_class')=='正式'?true:false;
+                var type=rec.get('enabled');
                 //  禁用/启用
-                var form = this.ownerCt.ownerCt.ownerCt;
                 var grid = this.ownerCt.ownerCt;
+                var params = {
+                    accountId:rec.get('id')
+                };
                 saas.util.BaseUtil.request({
-                    url: (!type?form._openUrl:form._closeUrl)+'/'+rec.get('id'),
-                    params: '',
+                    url: (!type?grid._openUrl:grid._closeUrl),
+                    params: params,
                     method: 'POST',
+                    headers : {
+                        'Access-Control-Allow-Origin': '*',
+                        "Content-Type":'application/x-www-form-urlencoded'
+                    }
                 })
                 .then(function(localJson) {
                     if(localJson.success){

+ 4 - 0
frontend/saas-web/app/view/sys/manager/FormPanel.scss

@@ -65,4 +65,8 @@
         content: '';
         border:none !important;
     }
+    .x-btn-over.x-btn-default-toolbar-small {
+        background: #34BAF6 !important;
+        opacity: 0.72;
+      }
 }

+ 1 - 1
frontend/saas-web/app/view/sys/power/GroupGrid.js

@@ -12,7 +12,7 @@ Ext.define('saas.view.sys.power.GroupGrid', {
         text:'保存',
         name:'savepower',
         margin:'0 10 0 2',
-        style:'background:#34baf6;border-color:#cccccc'
+        style:'background:#fff;border-color:#34baf6'
     }],
     features : [Ext.create('Ext.grid.feature.Grouping',{
         collapseTip:null,