123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089 |
- Ext.define('make.view.osmake.osMake.FormPanel', {
- extend: 'saas.view.core.form.FormPanel',
- xtype: ['osmake-osmake-formpanel', 'osmake-formpanel'],
- controller: 'osmake-osmake-formpanel',
- viewModel: 'osmake-osmake-formpanel',
- viewName: 'osmake-osmake-formpanel',
- caller: 'OsMake',
- //字段属性
- _title: '外协单',
- _idField: 'id',
- _codeField: 'ma_code',
- _statusField: 'ma_status',
- _statusCodeField: 'ma_statuscode',
- _auditmanField: 'ma_auditman',
- _auditdateField: 'ma_auditdate',
- _relationColumn: 'mm_maid',
- _readUrl: '/api/make/make/read',
- _saveUrl: '/api/make/make/save',
- _auditUrl: '/api/make/make/audit',
- _unAuditUrl: '/api/make/make/unAudit',
- _deleteUrl: '/api/make/make/delete',
- _calMaterial:'/api/make/make/calMaterial',
- _turnPick:'/api/make/make/turnPick',
- _turnBack:'/api/make/make/turnBack',
- _turnScrap:'/api/make/make/turnScrap',
- _turnIn:'/api/make/make/turnIn',
- _end:'/api/make/make/end',
- _resEnd:'/api/make/make/resEnd',
- initId: 0,
- getToolBarItems: function() {
- let me = this, items = [];
- let codeHeaderItems = [{
- xtype: 'tbtext',
- bind: {
- html: '<span class="x-tb x-no">NO. </span>' +
- '<span class="x-tb x-code">{base.codeEditable ? "" : ' + me._codeField + '}</span>'
- }
- }, {
- xtype: 'textfield',
- name: me._codeField,
- minHeight: 24,
- maxHeight: 24,
- width: 200,
- cls: 'x-codeeditor',
- hidden: true,
- allowBlank: false,
- regex: /^[^\s~`!!@#¥$%\^……&*(())\-——\-_=+【\[\]】{{}}\|、\\;;::‘\'“”\",,《<。.》>、\/\?\?]*$/,
- regexText: '不允许输入特殊字符',
- bind: {
- value: '{' + me._codeField + '}',
- hidden: '{!base.codeEditable}'
- },
- enableKeyEvents: true,
- listeners: {
- blur: 'codeEditorBlur',
- keydown: function(th, e, eOpts) {
- if(e.keyCode == 13) {
- th.fireEvent('blur');
- }
- },
- show: function (field, eOpts) {
- field.focus();
- }
- }
- }, {
- xtype: 'tbtext',
- cls: 'x-audited',
- hidden: true,
- bind: {
- hidden: '{!(' + me._statusCodeField + ' == "AUDITED" || '+ me._statusCodeField + ' == "END" )}',
- html: `{${me._statusCodeField}=="AUDITED" ? "已审核" : "已结案"}`
- }
- }, {
- xtype: 'button',
- cls: 'x-codeeditor-btn',
- bind: {
- iconCls: 'fa {base.codeEditable ? "fa-check-circle" : "fa-edit"}',
- hidden: '{!base.editable || (' + me._statusCodeField + ' == "AUDITED" || '+ me._statusCodeField + ' == "END")}'
- },
- handler: 'codeEditorClick'
- }, '->'];
-
- if(me.codeInHeader) {
- items = items.concat(codeHeaderItems);
- }
- items.push('->');
-
- items = items.concat(me.toolBtns.map(function (btn) {
- btn.cls = btn.cls ? btn.cls + ' x-formpanel-btn-blue' : 'x-formpanel-btn-blue';
- return btn;
- }).concat(me.defaultBtns))
- return items;
- },
- /**
- * 一些初始化viewModel的方法
- */
- initViewModel: function () {
- let me = this,
- codeField = me._codeField,
- statusField = me._statusField,
- statusCodeField = me._statusCodeField,
- viewModel = me.getViewModel(),
- auditTexts = me.auditTexts;
- viewModel.set(codeField, '');
- viewModel.set('createTime', Ext.Date.format(new Date(), 'Y-m-d H:i:s'));
- viewModel.set('updateTime', Ext.Date.format(new Date(), 'Y-m-d H:i:s'));
- viewModel.set('creatorId', viewModel.get('account').id);
- viewModel.set('creatorName', viewModel.get('account').realname);
- if (statusCodeField) {
- let o = {};
- o['bindEditable'] = {
- bind: '{' + statusCodeField + '}',
- get: function(value) {
- // viewModel.set(statusField, value == 'AUDITED' ? '已审核' : '未审核');
- viewModel.set(statusField, value ? (value == auditTexts.auditCode ? auditTexts.auditText : auditTexts.unAuditText) : null);
- // viewModel.set('auditBtnText', value == 'AUDITED' ? '反审核' : '审核');
- viewModel.set('auditBtnText', value == auditTexts.auditCode ? auditTexts.unAuditBtnText : auditTexts.auditBtnText);
- // me.setEditable(value != 'AUDITED');
- // form.editable表示强制设置表单编辑属性,与状态无关
- if (!Ext.isBoolean(me.editable)) {
- me.setEditable(value != auditTexts.auditCode && value != me.submitConfig.submittedCode && value != 'END');
- }
- return value;
- }
- };
- viewModel.setFormulas(o);
- // viewModel.set(statusCodeField, "UNAUDITED");
- viewModel.set(statusCodeField, auditTexts.unAuditCode);
- } else {
- // viewModel.set('auditBtnText', "审核");
- viewModel.set('auditBtnText', auditTexts.auditBtnText);
- }
- },
- initComponent: function () {
- var me = this;
- me.defaultBtns = [{
- cls: 'x-formpanel-btn-blue',
- xtype: 'button',
- text: '新增',
- hidden: true,
- bind: {
- hidden: '{!showAddBtn || !id}'
- },
- handler: 'add'
- }, {
- hidden: true,
- xtype: 'button',
- text: '复制',
- handler: 'onCopy',
- bind: {
- hidden: '{!showCopyBtn || !'+ me._idField + '}',
- }
- }, {
- hidden: true,
- xtype: 'button',
- text: '保存',
- handler: 'onSave',
- cls:'save-btn',
- bind: {
- hidden: '{!showSaveBtn || '+ me._statusCodeField + ' == "AUDITED" || '+ me._statusCodeField + ' == "END"}',
- disabled: '{!base.valid || '+ me._statusCodeField + ' == "AUDITED" || '+ me._statusCodeField + ' == "END"}',
- tooltip:'{formBlank}'
- }
- }, {
- hidden: true,
- xtype: 'button',
- text: '删除',
- bind: {
- hidden: '{!showDeleteBtn || deleteHidden || ' + me._statusCodeField + ' == "AUDITED" || '+ me._statusCodeField + ' == "END" || '+me._statusCodeField+'=="' + me.submitConfig.submittedCode + '"}'
- },
- handler: 'delete'
- }, {
- hidden: true,
- xtype: 'button',
- bind: {
- text: `{${me._statusCodeField}=="${me.submitConfig.submittedCode}"?"${me.submitConfig.unSubmitBtnText}":"${me.submitConfig.submitBtnText}"}`,
- disabled: '{!base.valid}',
- hidden:`{!showSubmitBtn || !id || ${me._statusCodeField}=="AUDITED" || ${me._statusCodeField}=="END"}`
- },
- handler: "onSubmitBtnClick",
- }, {
- hidden: true,
- xtype: 'button',
- bind: {
- text: '{auditBtnText}',
- disabled: '{!base.valid}',
- hidden:'{!showAuditBtn}'
- },
- handler: "auditBtnClick",
- }];
- Ext.apply(this, {
- toolBtns: [{
- xtype: 'button',
- text: '用料计算',
- hidden: true,
- bind: {
- hidden: '{ !(id && ma_statuscode =="UNAUDITED") }'
- },
- handler: 'calMaterial'
- },{
- text: '转领料',
- xtype: 'button',
- handler: 'turnPick',
- bind:{
- hidden: '{turnHidden}',
- },
- menu: {
- cls:'x-query-menu',
- anchor: '100%',
- items:[{
- text:'转退料',
- handler:'turnBack'
- },{
- text:'转报废',
- handler:'turnScrap'
- }]
- }
- },{
- xtype: 'button',
- text: '转验收',
- hidden: true,
- bind: {
- hidden: '{turnHidden}'
- },
- handler: 'turnIn'
- },{
- xtype: 'button',
- text: '结案',
- hidden: true,
- bind: {
- hidden: '{turnHidden}'
- },
- handler: 'end'
- },{
- xtype: 'button',
- text: '反结案',
- hidden: true,
- bind: {
- hidden: '{!(ma_statuscode=="END")}'
- },
- handler: 'resEnd'
- },{
- xtype: 'button',
- text: '用料修改',
- hidden: true,
- bind: {
- hidden: '{turnHidden}'
- },
- handler: 'modifyMaterial'
- },{
- xtype: 'button',
- text: '更新外协信息',
- hidden: true,
- bind: {
- hidden: '{turnHidden}'
- },
- handler: 'modifyVendInfo'
- },{
- xtype: 'button',
- text: '工单变更',
- hidden: true,
- bind: {
- hidden: '{turnHidden}'
- },
- handler: 'modifyMake'
- }],
- defaultItems: [{
- xtype: 'hidden',
- name: 'id',
- fieldLabel: 'id',
- allowBlank: true,
- columnWidth: 0
- },{
- xtype: 'productMDbfindTrigger',
- name: 'ma_prodcode',
- fieldLabel: '产品编号',
- allowBlank: false,
- },{
- xtype: 'textfield',
- name: "pr_detail",
- fieldLabel: "产品名称",
- readOnly: "true",
- ignore: true
- },{
- xtype: 'textfield',
- name: "pr_spec",
- fieldLabel: "产品规格",
- readOnly: "true",
- maxLength: 200,
- hidden: true,
- ignore: true
- },{
- xtype: 'tipTextfield',
- name: "pr_orispeccode",
- fieldLabel: "产品型号",
- editable: false,
- ignore: true,
- bind:{
- otherInfoTip:'厂家/品牌:{pr_brand}<br>产品规格:{pr_spec}'
- }
- },{
- xtype: 'hidden',
- name: "pr_brand",
- fieldLabel: "厂家/品牌",
- ignore: true,
- },{
- xtype: 'hidden',
- name: "ma_prodid",
- fieldLabel: "产品ID",
- },{
- xtype: "remotecombo",
- name: "ma_kind",
- fieldLabel: "外协类型",
- storeUrl:'/api/make/kind/list/osmake',
- valueField:'mk_name',
- displayField: 'mk_name',
- allowBlank: false,
- columnWidth: 0.25,
- addHandler: function (b) {
- var form = this.ownerCmp.ownerCt;
- this.dialog = form.add({
- xtype: 'make-makekind-window',
- bind: {
- title: '新增外协类型'
- },
- dataKind: 'makekind',
- _parent: form,
- _combo: this.ownerCmp,
- record: null,
- session: true,
- viewModel: {
- data: {
- theKind: {
- id:0,
- mk_name: null,
- mk_makind: 'OSMAKE',
- mk_allowover: null,
- mk_unsetfinish:null,
- mk_zeroprice:null,
- mk_autoend:null,
- mk_reminddays:null,
- mk_ifmrpkind:null,
- mk_makind_h:true
- },
- zeropricehide:false,
- }
- }
- });
- this.dialog.show();
- },
- editHandler:function(btn,type){
- saas.util.BaseUtil.openTab('make-makekind-makekindlist', '外协类型设置','maintab--make-makekind-makekindlist');
- var combo = btn.ownerCt.up('remotecombo');
- if(combo){
- combo.collapse();
- }
- },
- listeners:{
- change:function(f, newValue, oldValue, eOpts){
- var me=this;
- let form = f.ownerCt
- if(newValue !=''){
- saas.util.BaseUtil.request({
- url: '/api/make/kind/list/osmake',
- method: 'GET'
- }).then(function(res) {
- if(res.success){
- if(res.data){
- var flag=false;
- Ext.Array.each(res.data,function(d,index){
- if(d.mk_name == newValue){
- form.down('[name=ma_kindid]').setValue(d.id);
- flag = true;
- }
- if(flag){
- return false;
- }
- });
- }
- }
- }).catch(function(res) {
- saas.util.BaseUtil.showErrorToast('选择的制造类型有误: ' + res.message);
- });
- }
- }
- }
- },{
- xtype: 'hidden',
- name: "ma_kindid",
- fieldLabel: "外协类型ID",
- },{
- xtype: 'numberfield',
- name: 'ma_qty',
- fieldLabel: '数量',
- allowBlank: false,
- }, {
- xtype: 'numberfield',
- name: 'ma_madeqty',
- fieldLabel: '已完工数',
- readOnly:true,
- thousandSeparator: ',',
- renderer: function (v){
- if(!v){
- v=0;
- }
- return '<p class="money-rtl"><B>'+saas.util.BaseUtil.numberFixFormat(v, 6, true)+''
- },
- ignore:true,
- },{
- xtype: 'datefield',
- name: 'ma_planbegindate',
- fieldLabel: '计划开工日期',
- allowBlank: false,
- labelWidth:110,
- labelAlign : 'right',
- format: 'Y-m-d',
- },{
- xtype: 'datefield',
- name: 'ma_planenddate',
- fieldLabel: '计划完工日期',
- allowBlank: false,
- labelWidth:110,
- labelAlign : 'right',
- format: 'Y-m-d',
- },{
- xtype: "saledetailDbfindTrigger",
- name: "ma_salecode",
- fieldLabel: "订单编号",
- columnWidth: 0.25,
- defaultCondition:"sa_statuscode='AUDITED' and pr_manutype IN('MAKE','OSMAKE')"
- },{
- xtype: 'hidden',
- name: "ma_saleid",
- fieldLabel: "订单ID",
- },{
- xtype: 'hidden',
- name: "ma_sfcode",
- fieldLabel: "备货编号",
- }, {
- xtype: "customerDbfindTrigger",
- name: "ma_custname",
- fieldLabel: "客户名称",
- hidden: true,
- },{
- xtype: 'hidden',
- name: "ma_custcode",
- fieldLabel: "客户编号",
- hidden: true,
- },{
- xtype: 'hidden',
- name: "ma_custid",
- fieldLabel: "客户ID",
- },{
- xtype: "datefield",
- name: "ma_delivery",
- fieldLabel: "交货日期"
- },{
- xtype: 'hidden',
- name: "ma_kindid",
- fieldLabel: "制造类型ID",
- },{
- xtype: 'hidden',
- name:'ma_tasktype',
- fieldLabel: '单据类型',
- allowBlank: false,
- defaultValue:'OS'
- },{
- xtype: 'remotecombo',
- storeUrl: '/api/document/workcenter/getCombo',
- name: "ma_wcname",
- fieldLabel: "工作中心",
- hidden: true,
- addHandler: function (b) {
- var form = this.ownerCmp.ownerCt;
- this.dialog = form.add({
- xtype: 'document-workcenter-window',
- bind: {
- title: '新增工作中心'
- },
- dataKind: 'workcenter',
- _parent: form,
- _combo: this.ownerCmp,
- record: null,
- session: true
- });
- this.dialog.show();
- },
- editHandler:function(btn,type){
- saas.util.BaseUtil.openTab('document-workcenter-datalist', '工作中心','maintab--document-workcenter-datalist');
- var combo = btn.ownerCt.up('remotecombo');
- if(combo){
- combo.collapse();
- }
- }
- }, {
- xtype: "hidden",
- name: "ma_vendid",
- fieldLabel: "外协厂商ID"
- }, {
- xtype: "hidden",
- name: "ma_vendcode",
- fieldLabel: "外协厂商编号"
- }, {
- xtype: "vendorDbfindTrigger",
- name: "ma_vendname",
- fieldLabel: "外协厂商",
- columnWidth:0.25,
- // allowBlank: false,
- }, {
- xtype: "textfield",
- name: "ma_contact",
- fieldLabel: "联系人",
- hidden: true,
- }, {
- name: "ma_shipaddresscode",
- xtype: "remotecombo",
- fieldLabel: "交货地址",
- editable: false,
- allowBlank: true,
- columnWidth: 0.25,
- storeUrl: '/api/document/address/getCombo',
- hiddenBtn: false, //true 则会关闭新增按钮功能
- addHandler: function (b) {
- var form = this.ownerCmp.ownerCt;
- this.dialog = form.add({
- xtype: 'document-address-window',
- bind: {
- title: '新增交货地址'
- },
- _parent: form,
- _combo: this.ownerCmp,
- record: null,
- session: true
- });
- this.dialog.show();
- },
- editHandler: function(btn){
- saas.util.BaseUtil.openTab('document-address-datalist', '交货地址','maintab--other-address');
- var combo = btn.ownerCt.up('remotecombo');
- if(combo){
- combo.collapse();
- }
- }
- },{
- xtype: "textfield",
- name: "ma_tel",
- fieldLabel: "联系电话",
- hidden: true,
- }, {
- xtype: 'hidden',
- name: 'ma_paymentscode',
- fieldLabel: '付款方式编号'
- }, {
- xtype: 'hidden',
- fieldLabel: '付款方式ID',
- name: "ma_paymentsid",
- },{
- xtype: 'currencyCombo',
- name:'ma_currency',
- fieldLabel: '币种',
- // allowBlank: false,
- rateField:'ma_rate',
- },{
- xtype: 'hidden',
- fieldLabel: '汇率',
- name:'ma_rate',
- allowBlank: false,
- },{
- xtype: 'numberfield',
- fieldLabel: '税率',
- name:'ma_taxrate',
- allowBlank: true,
- defaultValue: saas.util.BaseUtil.getDefualtTaxRate()
- },{
- xtype: "hidden",
- name: "ma_ipdid",
- fieldLabel: "取价ID"
- },{
- xtype: 'numberfield',
- fieldLabel: '含税加工单价',
- name:'ma_taxprice',
- fixDecimal:false,
- decimalPrecision:8,
- thousandSeparator: ',',
- renderer: function (v){
- if(!v){
- v=0;
- }
- return '<p class="money-rtl"><B>'+saas.util.BaseUtil.numberFormat(v, 8, true)+''
- }
- },{
- xtype: "remotecombo",
- name: "ma_payments",
- fieldLabel: "付款方式",
- storeUrl:'/api/document/paymentspay/list/enable',
- valueField:'pa_name',
- displayField: 'pa_name',
- // allowBlank: false,
- addHandler: function (b) {
- var document = Ext.create('saas.view.document.paymentspay.DataList', {});
- var form = this.ownerCmp.ownerCt;
- this.dialog = form.getController().getView().add({
- xtype: 'document-paymentspay-window',
- bind: {
- title: '新增付款方式'
- },
- dataKind: 'paymentspay',
- belong: document.etc['paymentspay'],
- _parent: form,
- _combo: this.ownerCmp,
- record: null,
- session: true
- });
- this.dialog.show();
- },
- editHandler:function(btn,type){
- saas.util.BaseUtil.openTab('document-paymentspay-datalist', '付款方式设置','maintab--document-paymentspay-datalist');
- var combo = btn.ownerCt.up('remotecombo');
- if(combo){
- combo.collapse();
- }
- },
- listeners:{
- select: function ( combo, record, eOpts ) {
- let form = combo.ownerCt;
- let paymentsid = form.down('[name=ma_paymentsid]'),
- paymentscode = form.down('[name=ma_paymentscode]');
- paymentsid.setValue(record.data['id']);
- paymentscode.setValue(record.data['pa_code']);
- }
- }
- }, {
- xtype: 'hidden',
- name:'ma_tasktype',
- fieldLabel: '单据类型',
- allowBlank: false,
- defaultValue:'OS'
- },{
- name: "detailGridField",
- xtype: "detailGridField",
- storeModel: 'make.model.make.MakeMaterial',
- deleteDetailUrl: '/api/make/make/deleteDetail',
- allowEmpty: true,
- detnoColumn: 'mm_detno',
- columns: [{
- text: "id",
- dataIndex: "id",
- xtype: "numbercolumn",
- hidden: true
- }, {
- text: "物料id",
- dataIndex: "mm_prodid",
- xtype: "numbercolumn",
- hidden: true
- },{
- text: "物料编号",
- width: 150,
- dataIndex: "mm_prodcode",
- items: null,
- editor: {
- displayField: "display",
- editable: true,
- format: "",
- hideTrigger: false,
- maxLength: 100,
- minValue: null,
- positiveNum: false,
- queryMode: "local",
- store: null,
- valueField: "value",
- xtype: "productMultiDbfindTrigger"
- }
- },{
- text: "厂家/品牌",
- hidden:true,
- width: 100.0,
- dataIndex: "pr_brand",
- ignore: true,
- renderer: function (v, m, r) {
- if (!v) {
- return r.data["productDTO"] ? r.data["productDTO"][m.column.dataIndex] : null;
- }
- return v;
- }
- },{
- text: "物料名称",
- width: 150.0,
- dataIndex: "pr_detail",
- ignore: true,
- renderer: function (v, m, r) {
- if (!v) {
- return r.data["productDTO"] ? r.data["productDTO"][m.column.dataIndex] : null;
- }
- return v;
- }
- }, {
- text: "型号",
- width: 200.0,
- dataIndex: "pr_orispeccode",
- ignore: true,
- renderer: function (v, m, r) {
- var str = '';
- if(r.data["productDTO"] ){
- if(r.data["productDTO"]['pr_brand']){
- str += '厂家/品牌:'+ r.data["productDTO"]['pr_brand'] + '<br>';
- }
- if(r.data["productDTO"]['pr_spec']){
- str += '规格:' + r.data["productDTO"]['pr_spec'];
- }
- if(str) m.tdAttr = 'data-qtip="'+ str +'"';
- if (!v) {
- return r.data["productDTO"] ? r.data["productDTO"][m.column.dataIndex] : null;
- }
- }
- return v;
- }
- }, {
- text: "单位",
- width: 65.0,
- dataIndex: "pr_unit",
- ignore: true,
- renderer: function (v, m, r) {
- if (!v) {
- return r.data["productDTO"] ? r.data["productDTO"][m.column.dataIndex] : null;
- }
- return v;
- }
- },{
- text: "数量小数位数",
- hidden:true,
- dataIndex: "pu_decimal",
- ignore: true,
- renderer: function (v, m, r) {
- if (!v) {
- return r.data["productDTO"] ? r.data["productDTO"][m.column.dataIndex] : null;
- }
- return v;
- }
- },{
- text: "单位用量",
- dataIndex: "mm_oneuseqty",
- xtype: 'numbercolumn',
- width: 110.0,
- editor: {
- xtype: "numberfield",
- decimalPrecision: 6,
- minValue: 0,
- listeners:{
- change:'onOneUseChange'
- }
- },
- renderer: function(v, m, r) {
- return saas.util.BaseUtil.numberFormat(v, 6, true);
- }
- },{
- text: "需求数",
- dataIndex: "mm_qty",
- xtype: 'numbercolumn',
- width: 110,
- editor: {
- xtype: "numberfield",
- decimalPrecision: 6,
- minValue: 0
- },
- renderer: function(v, m, r) {
- return saas.util.BaseUtil.numberFormat(v, 6, true);
- }
- }, {
- text: 'model映射需要',
- dataIndex: 'productDTO',
- hidden: true,
- },{
- text: "已领数",
- xtype: 'numbercolumn',
- dataIndex: "mm_havegetqty",
- width: 110,
- renderer: function(v, m, r) {
- return saas.util.BaseUtil.numberFormat(v, 6, true);
- },
- ignore:true,
- }, {
- text: "已转领料数",
- xtype: 'numbercolumn',
- dataIndex: "mm_turngetqty",
- width: 110,
- renderer: function(v, m, r) {
- return saas.util.BaseUtil.numberFormat(v, 6, true);
- },
- ignore:true,
- }, {
- text: "未领数",
- xtype: 'numbercolumn',
- dataIndex: "mm_restgetqty",
- width: 110,
- ignore: true,
- renderer : function(v, m, r) {
- v = r.get('mm_qty') + (r.get('mm_scrapqty')||0) - (r.get('mm_havegetqty')||0)-(r.get('mm_turngetqty')||0);
- return saas.util.BaseUtil.numberFormat(v, 6, true);
- },
- },{
- text: "已转退料数",
- xtype: 'numbercolumn',
- dataIndex: "mm_turnbackqty",
- width: 110,
- renderer: function(v, m, r) {
- return saas.util.BaseUtil.numberFormat(v, 6, true);
- },
- ignore:true,
- },{
- text: "制程不良数",
- xtype: 'numbercolumn',
- dataIndex: "mm_returnmqty",
- width: 110,
- renderer: function(v, m, r) {
- return saas.util.BaseUtil.numberFormat(v, 6, true);
- },
- ignore:true,
- }, {
- text: "报废数",
- xtype: 'numbercolumn',
- dataIndex: "mm_scrapqty",
- width: 110,
- renderer: function(v, m, r) {
- return saas.util.BaseUtil.numberFormat(v, 6, true);
- },
- ignore:true,
- }, {
- text: "已转报废数",
- xtype: 'numbercolumn',
- dataIndex: "mm_turnscrapqty",
- width: 110,
- renderer: function(v, m, r) {
- return saas.util.BaseUtil.numberFormat(v, 6, true);
- },
- ignore:true,
- }, {
- text: "备注",
- dataIndex: "mm_remark",
- editor: {
- xtype: "textfield"
- },
- width: 250,
- },{
- text: "规格",
- hidden:true,
- width: 200,
- dataIndex: "pr_spec",
- ignore: true,
- renderer: function (v, m, r) {
- if (!v) {
- return r.data["productDTO"] ? r.data["productDTO"][m.column.dataIndex] : null;
- }
- return v;
- }
- }, ]
- }, {
- xtype: "textfield",
- name: "ma_remark",
- fieldLabel: "备注",
- columnWidth: 0.6
- },{
- xtype: 'displayfield',
- fieldLabel: '不含税金额(元)',
- name:'ma_nettotal',
- readOnly: true,
- labelWidth:200,
- labelAlign : 'right',
- columnWidth: 0.4,
- thousandSeparator: ',',
- renderer: function (v){
- if(!v){
- v=0;
- }
- return '<p class="money-rtl"><B>'+saas.util.BaseUtil.numberFixFormat(v, 2, true)+''
- },
- }, {
- xtype: "datefield",
- name: "createTime",
- fieldLabel: "单据日期",
- readOnly: true,
- defaultValue: new Date(),
- columnWidth: 0.3,
- }, {
- xtype: "displayfield",
- name: "ma_getstatus",
- fieldLabel: "领料状态",
- columnWidth: 0.3,
- ignore:true,
- },{
- xtype: 'displayfield',
- fieldLabel: '税额(元)',
- name:'ma_taxamount',
- readOnly: true,
- labelWidth:200,
- labelAlign : 'right',
- columnWidth: 0.4,
- thousandSeparator: ',',
- renderer: function (v){
- if(!v){
- v=0;
- }
- return '<p class="money-rtl"><B>'+saas.util.BaseUtil.numberFixFormat(v, 2, true)+''
- },
- },{
- xtype: "hidden",
- name: "creatorId",
- fieldLabel: "录入人ID",
- readOnly: true
- }, {
- xtype: "textfield",
- name: "creatorName",
- fieldLabel: "录入人",
- readOnly: true,
- columnWidth: 0.3
- }, {
- xtype: "hidden",
- name: "updaterId",
- fieldLabel: "更新人ID",
- readOnly: true
- }, {
- xtype: "hidden",
- name: "updaterName",
- fieldLabel: "更新人",
- readOnly: true
- }, {
- xtype: "hidden",
- name: "updateTime",
- fieldLabel: "更新日期",
- readOnly: true,
- defaultValue: new Date()
- }, {
- xtype: "textfield",
- name: "ma_auditman",
- fieldLabel: "审核人",
- columnWidth: 0.3,
- readOnly: true
- }, {
- xtype: "hidden",
- name: "ma_auditdate",
- fieldLabel: "审核日期",
- readOnly: true
- },{
- xtype: 'displayfield',
- fieldLabel: '价税合计(元)',
- name:'ma_total',
- readOnly: true,
- labelWidth:200,
- labelAlign : 'right',
- columnWidth: 0.4,
- thousandSeparator: ',',
- renderer: function (v){
- if(!v){
- v=0;
- }
- return '<p class="money-rtl"><B>'+saas.util.BaseUtil.numberFixFormat(v, 2, true)+''
- },
- }],
- });
- this.callParent(arguments);
- },
- beforeAudit: function () {
- var me = this,
- controller = me.getController(),
- viewModel = me.getViewModel(),
- store = viewModel.get('detail0').detailStore,
- items = store.getData().items,
- controller = me.getController(),
- str = '';
-
- //工单数量为0
- if(!viewModel.get('ma_qty')){
- saas.util.BaseUtil.showErrorToast("工单数量不允许为0");
- return false;
- }
- var begin = Ext.isDate(viewModel.get("ma_planbegindate")) ? Ext.Date.format(viewModel.get("ma_planbegindate"), 'Y-m-d H:i:s') : viewModel.get("ma_planbegindate");
- var end = Ext.isDate(viewModel.get("ma_planenddate")) ? Ext.Date.format(viewModel.get("ma_planenddate"), 'Y-m-d H:i:s') : viewModel.get("ma_planenddate");
- //计划完工日期小于计划开工日期时限制保存并提示
- if(begin > end ){
- saas.util.BaseUtil.showErrorToast("计划完工日期不允许小于计划开工日期");
- return false;
- }
-
-
- Ext.Array.each(items, function (item, i) {
- if (!item.get('mm_oneuseqty') && item.get('mm_prodcode')) {
- str = str + item.get('mm_detno') + ','
- }
- });
- if (str != '') {
- saas.util.BaseUtil.showConfirm('提示', '行: ' + str + '物料单位用量为0,是否继续审核?')
- .then(function (y) {
- if (y == 'yes') {
- controller.audit();
- }
- });
- } else {
- controller.audit();
- }
- return false;
- },
- beforeSave: function () {
- var me = this,
- controller = me.getController(),
- viewModel = me.getViewModel(),
- store = viewModel.get('detail0').detailStore,
- items = store.getData().items,
- controller = me.getController(),
- str = '';
-
- //工单数量为0
- if(!viewModel.get('ma_qty')){
- saas.util.BaseUtil.showErrorToast("工单数量不允许为0");
- return false;
- }
- var begin = Ext.isDate(viewModel.get("ma_planbegindate")) ? Ext.Date.format(viewModel.get("ma_planbegindate"), 'Y-m-d H:i:s') : viewModel.get("ma_planbegindate");
- var end = Ext.isDate(viewModel.get("ma_planenddate")) ? Ext.Date.format(viewModel.get("ma_planenddate"), 'Y-m-d H:i:s') : viewModel.get("ma_planenddate");
- //计划完工日期小于计划开工日期时限制保存并提示
- if(begin > end ){
- saas.util.BaseUtil.showErrorToast("计划完工日期不允许小于计划开工日期");
- return false;
- }
-
-
- Ext.Array.each(items, function (item, i) {
- if (!item.get('mm_oneuseqty') && item.get('mm_prodcode')) {
- str = str + item.get('mm_detno') + ','
- }
- });
- if (str != '') {
- saas.util.BaseUtil.showConfirm('提示', '行: ' + str + '物料单位用量为0,是否继续保存?')
- .then(function (y) {
- if (y == 'yes') {
- controller.save();
- }
- });
- } else {
- controller.save();
- }
- return false;
- },
- setInquiry: function () {
- var form = this;
- var ma_kind = form.down('[name=ma_kind]');
- if(!ma_kind.getValue()){
- saas.util.BaseUtil.request({
- url: '/api/make/kind/list/osmake',
- method: 'GET'
- }).then(function(res) {
- if(res.success){
- if(res.data){
- var flag=false;
- Ext.Array.each(res.data,function(d,index){
- if(d.mk_ifmrpkind){
- form.down('[name=ma_kind]').setValue(d.mk_name);
- flag = true;
- }
- if(flag){
- return false;
- }
- });
- }
- }
- }).catch(function(res) {
- saas.util.BaseUtil.showErrorToast(res.message);
- });
- }
- //有预测来源无订单编号的工单 展示预测来源编号
- var ma_salecode = form.down('[name=ma_salecode]');
- var ma_sfcode = form.down('[name=ma_sfcode]');
- if(!ma_salecode.getValue()&&ma_sfcode.getValue()){
- ma_salecode.setValue(ma_sfcode.getValue());
- }
- return true;
- }
- });
|