| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207 |
- Ext.define('saas.view.stock.make.FormPanelController', {
- extend: 'saas.view.core.form.FormPanelController',
- alias: 'controller.stock-make-formpanel',
- init: function (form) {
- var me = this;
- this.control({
- //放大镜赋值关系 以及 tpl模板
- 'dbfindtrigger[name=ma_whname]': {
- beforerender: function (f) {
- Ext.apply(f, {
- dbfinds: [{
- from: 'id',
- to: 'ma_whid',
- ignore: true
- }, {
- from: 'wh_code',
- to: 'ma_whcode'
- }, {
- from: 'wh_description',
- to: 'ma_whname'
- }],
- });
- }
- },
- //放大镜赋值关系 以及 tpl模板
- 'dbfindtrigger[name=mm_whname]': {
- beforerender: function (f) {
- Ext.apply(f, {
- dbfinds: [{
- from: 'id',
- to: 'mm_whid',
- ignore: true
- }, {
- from: 'wh_code',
- to: 'mm_whcode'
- }, {
- from: 'wh_description',
- to: 'mm_whname'
- }]
- });
- }
- },
- 'multidbfindtrigger[name=mm_prodcode]': {
- beforerender: function (f) {
- Ext.apply(f, {
- dbfinds: [{
- from: 'pr_code',
- to: 'mm_prodcode'
- }, {
- from: 'id',
- to: 'mm_prodid'
- }, {
- from: 'pr_detail',
- to: 'pr_detail'
- }, {
- from: 'pr_spec',
- to: 'pr_spec'
- }, {
- from: 'pr_unit',
- to: 'pr_unit'
- }, {
- from: 'pr_purcprice',
- to: 'mm_price'
- }],
- });
- }
- },
- 'bomDbfindTrigger[name=ma_prodcode]': {
- beforerender: function (f) {
- Ext.apply(f, {
- //放大镜赋值设置
- dbfinds: [{
- from: 'bo_motherid',
- to: 'ma_prodid'
- }, {
- from: 'bo_mothercode',
- to: 'ma_prodcode'
- }, {
- from: 'bo_mothername',
- to: 'ma_proddetail'
- }, {
- from: 'pr_spec',
- to: 'ma_prodspec'
- }, {
- from: 'pr_unit',
- to: 'ma_produnit'
- }, {
- from: 'bo_version',
- to: 'ma_version'
- }],
- aftertrigger: function (f, record) {
- me.getBomData(record.data.id)
- }
- });
- }
- },
- });
- },
- initCopyData: function (formData) {
- var me = this;
- var form = this.getView();
- var detailCount = form.detailCount;
- var main = formData.main;
- var auditTexts = form.auditTexts;
- // 单号、id清空
- main[form._idField] = 0;
- main[form._codeField] = '';
- // 单据状态为录入状态(未审核)
- main[form._statusCodeField] = auditTexts.unAuditCode;
- main[form._statusField] = auditTexts.unAuditText;
- //录入人,录入日期,审核人,审核日期清空
- main['creatorId'] = null;
- main['creatorName'] = null;
- main['createTime'] = null;
- main['updaterId'] = null;
- main['updaterName'] = null;
- main['updateTime'] = null;
- main[form._auditmanField] = null;
- main[form._auditdateField] = null;
- //数量,单价,金额(主表)
- main['ma_qty'] = 0;
- main['ma_price'] = 0;
- main['ma_total'] = 0;
- for (var k in main) {
- // 主表日期改为当前日期
- if (saas.util.BaseUtil.isDateString(main[k])) {
- main[k] = Ext.Date.format(new Date, 'Y-m-d H:i:s');
- }
- }
- for (var j = 0; j < detailCount; j++) {
- var detail = formData['detail' + j];
- for (var x = 0; x < detail.length; x++) {
- var d = detail[x];
- for (var k in d) {
- // 从表id清空
- delete d['id'];
- delete d['mm_price'];
- delete d['mm_qty'];
- delete d['mm_amount'];
- // 从表日期清空
- if (saas.util.BaseUtil.isDateString(d[k])) {
- d[k] = '';
- }
- }
- }
- }
- return me.myInitCopyData(formData);;
- },
- price_change: function (v) {
- var me = this,
- viewModel = me.getViewModel(),
- store = viewModel.get('detail0').detailStore,
- type = viewModel.get('ma_type');
- if ('拆件' == type && v == 0) {
- saas.util.BaseUtil.showErrorToast('成本单价为0!');
- }
- },
- getBomData: function (v) {
- var me = this,
- form = me.getView(),
- viewModel = me.getViewModel(),
- store = viewModel.get('detail0').detailStore,
- type = viewModel.get('ma_type'),
- loadData = new Array();
- //请求bom资料
- saas.util.BaseUtil.request({
- url: form._getBomUrl + '/' + v,
- method: 'GET',
- })
- .then(function (localJson) {
- if (localJson.success) {
- var data = localJson.data.items;
- Ext.Array.each(data, function (item, i) {
- loadData.push({
- mm_detno: item.bd_detno,
- mm_prodid: item.productDTO.id,
- mm_prodcode: item.productDTO.pr_code,
- mm_oneuseqty: item.bd_baseqty,
- pr_detail: item.productDTO.pr_detail,
- pr_spec: item.productDTO.pr_spec,
- pr_unit: item.productDTO.pr_unit,
- mm_repprodcode: item.bd_replace,
- mm_remark: item.bd_remark,
- mm_whid: item.productDTO.pr_whid,
- mm_whcode: item.productDTO.pr_whcode,
- mm_whname: item.productDTO.pr_whname,
- mm_price: type == '拆件' ? item.productDTO.pr_purcprice : null
- })
- });
- store.loadData(loadData);
- }
- })
- .catch(function (res) {
- console.error(res);
- saas.util.BaseUtil.showErrorToast('获取BOM资料失败: ' + res.message);
- });
- }
- });
|